Signetics 8X300 - Signetics 8X300

SMS 300 - 1976 Başı
Ayrı güç regülatörünü gösteren SMS 300 Arka Tarafı
8X300 pin çıkışı

8X300 bir olan mikroişlemci üretilip tarafından pazarlanan Signetics Bilimsel Mikro Systems tarafından SMS 300 için ikinci kaynak olarak 1976 başlayan, Inc rağmen SMS SMS 300 geliştirdi, Signetics bu ürün hattı tek üretici oldu. 1978'de Signetics, SMS 300 serisinin haklarını satın aldı ve adını 8X300 olarak değiştirdi.

Hızlı bir mikrodenetleyici ve sinyal işlemcisi olarak tasarlanmıştır ve bu nedenle zamanın geleneksel NMOS mantık mikroişlemcilerinden önemli ölçüde farklıdır . Belki de en büyük fark, bipolar Schottky transistör teknolojisi ile uygulanmış olması ve sadece 250 ns'de bir komutu getirebilmesi, kodunu çözebilmesi ve yürütebilmesiydi. Veriler, bir komut döngüsü sırasında bir cihazdan girilebilir, değiştirilebilir ve başka bir cihaza verilebilir.

1982'de Signetics, geliştirilmiş ve daha hızlı bir sürüm olan 8X305'i piyasaya sürdü. Bu işlemci askeri uygulamalarda çok popüler hale geldi ve Advanced Micro Devices tarafından AM29X305 olarak ikinci kez tedarik edildi . Sonunda, üretim hakları 2017 itibariyle hala 8X305'i sunan Lansdale Semiconductor Inc.'e satıldı. 8X300'ün bir klonu Sovyetler Birliği'nde KM1818VM01 ( Rusça : КМ1818ВМ01 ) adı altında üretildi .

Mimari

Cihaz, 50 pinli DIL seramik bir pakette sağlandı ve tek bir 5V besleme rayından çalıştı. Çipin seçilen alanlarına 3V sağlayan bir çip üstü voltaj regülatörünü tamamlamak için harici bir geçiş transistörü gerekliydi. Bu, çipin toplam akım tahliyesinin 450mA'dan daha az olmasına yardımcı oldu.

Saat gereksinimleri, 8 MHz'lik bir kristali doğrudan iki pime bağlayarak karşılandı. Alternatif olarak, harici bir saat üretecinden gelen faz dışı sinyaller kullanılabilir.

İkinci bir benzersiz özellik, program belleğine erişmek için ayrılmış 13 bitlik bir adres ve 16 bitlik veri yolu olup, 8192 16 bit program kelimesinin doğrudan adreslenmesine izin verir. Bu, ROM / PROM program belleklerinin başka bir donanım olmadan doğrudan bağlanmasına izin verdi. İkinci bir birleşik 8-bit adres/veri yolu-arayüz vektörü (IV) yolu, veri ve G/Ç için kullanıldı. İki kontrol sinyali - WC (komut yaz) ve SC (seç komutu), IV veri yolunun durumunu şu şekilde belirledi:

  • SC=1, WC=0 I/O adresi IV bus'ta çıkıyor
  • SC=0, WC=1 I/O verileri IV veriyolunda çıktılanıyor
  • SC=0, WC=0 I/O giriş verileri IV veriyolunda bekleniyor

Diğer iki sinyal; LB (sol sıra seçimi) ve RB (sağ sıra seçimi), IV veri yolu adres alanını etkin bir şekilde ikiye katladı ve çoğunlukla bir sıradaki RAM belleği ile diğerindeki G/Ç bağlantı noktaları arasında geçiş yapmak için kullanıldı.

Diğer bir alışılmadık özellik ise, çoğu mikroişlemcide olduğu gibi aritmetik mantık biriminde (ALU) maskeleme, döndürme, kaydırma ve birleştirme komutlarını yürütmek yerine 8X300'ün ayrı maske, döndürme, kaydırma ve birleştirme birimlerine sahip olmasıydı. Bu nedenle veriler döndürülebilir, maskelenebilir, değiştirilebilir, kaydırılabilir ve birleştirilebilir (bu sırayla), hepsi tek bir talimat döngüsünde.

Komut seti

İşlemci normalde 8 bitlik veri baytlarını işler, ancak maske birimi tekli veya çoklu bitleri işlemeyi mümkün kılar, bu da bunu değişken bir veri uzunluklu işlemci haline getirir. Dahili veriler 8 bitlik okuma/yazma kayıtlarında depolanır—R1 ila R6,R9 ve bir yardımcı kayıt (R0). Yardımcı kayıt, ADD veya AND gibi iki işlenenli komutlarda kullanılan işlenenlerden birini tutar ve tek bitlik (salt okunur) bir taşma kaydı (R8), toplama işlemlerinden elde edilen biti depolar. İki sanal yalnızca yazma kaydı IVL (R7) ve IVR (R15) IV veriyoluna bir adres koymak için kullanılır ve iki adet sekiz sanal kayıt seti (R16-R23 ve R24-R31) veri aktarımı için kullanılır. IV otobüs. İkinci durumda, kayıt numarasının üstteki iki biti sol veya sağ bankayı seçer ve alttaki üç bit, verilerin döndürüleceği yerlerin sayısını tanımlar. 8 bitlik bir IV-veri yolu arabelleği, IV-veriyoluna veya IV-veri yolundan aktarılacak olan son verinin bir kopyasını tutar. Bu veriler Birleştirme işlemlerinde kullanılır.

Talimatın en önemli üç biti opcode'u tanımlar ve talimatları 8 sınıfa böler:

  • MOVE komutu, seçilen kayıtların içeriğinin kopyalanmasına, IV veriyoluna yerleştirilmesine veya tam tersinin yapılmasına izin verir.
  • ADD, AND ve XOR sınıfları benzerdir, ancak bu komutlarla yardımcı kaydın içeriği, komutun MOVE kısmı yürütülmeden önce kaynak kayıtla birleştirilir.
  • XEC talimatı, program sayacını artırmadan farklı bir adreste seçilen bir talimatın yürütülmesine izin verir.
  • NZT talimatı, koşullu bir dalın uygulanmasına izin verir.
  • XMIT talimatı, talimatta belirtilen 8 bitlik bir ikili modelin belirli bir kayıt veya IV veriyoluna yerleştirilmesine izin verir. Yükleme anında talimata benzer.
  • JMP komutu, 8192 kelime program belleği içinde herhangi bir yere koşulsuz bir dallanma gerçekleştirir.

Talimatın kalan 13 bitinin kullanımı işlem koduna bağlıdır:

  • MOVE, AND, ADD ve XOR komutları: 5 bit kaynak kaydı tanımlamak için kullanılır, 3 bit herhangi bir döndürme veya maskeleme işlemini (R/L alanı) tanımlamak için kullanılır ve kalan 5 bit hedef kaydı tanımlar.
  • XEC ve NZT: Kaynak kaydını tanımlamak için 5 bit kullanılır, kalan 8 bit adres alanını tanımlar.
    • XEC: kaynak kaydının içeriği önce adres alanına eklenir, bu daha sonra program adresinin alt 8 biti olarak kullanılır.
    • NZT: kaynak kaydı sıfır değilse atlama yapılır. Atlama yapılırsa adres alanı program adresinin alt 8 biti olarak kullanılır.
  • XMIT: Hedef kaydı tanımlamak için 5 bit kullanılır, kalan 8 bit verileri tanımlar.
  • JMP: 13 bitin tamamı program belleğinde mutlak adres olarak kullanılır.

Kaydırma, döndürme, maskeleme ve birleştirme

Döndürme ve maskeleme birimleri, kayıt bankası ile ALU arasında bulunur. Bu nedenle, prensipte tüm veriler ALU'ya girmeden önce döndürülebilir ve maskelenebilir.

  • Döndürme Birimi: Bu birim, verileri işlem kodunda belirtilen yer sayısı kadar SAĞA döndürür.
  • Maske Birimi: Bu birim, işlem kodunda belirtilen alt bit sayısını korumak için verilerin üst bitlerini maskeler (sıfıra ayarlanır).

Shift ve Merge birimleri, ALU ve IV-bus arasında yer alır ve IV-bus'a gönderilen herhangi bir veri, bu nedenle, çıkış yapılmadan önce kaydırılabilir ve birleştirilebilir.

  • Kaydırma Birimi: Bu birim, verileri opcode'da belirtilen yer sayısı kadar SOL'a kaydırır.
  • Birimi Birleştirme: Bu birim, IV-veriyolu arabelleğindeki opcode tarafından belirtilen bit sayısını, arabellek içeriğini IV-veri yoluna yerleştirmeden önce verilerle Birleştirir (değiştirir).

Not: Birleştirilecek bit sayısı için sıfır sayısı, 8 bitin tamamının değiştirilmesiyle sonuçlanacaktır.

Kaynağa ve hedefe bağlı olarak aşağıdaki kombinasyonlar mümkündür:

  • MOVE, ADD, AND ve XOR komutları:
    • kaydolmak için kaydolun (IVL ve IVR kayıtları dahil): Döndür
    • IV-bus'a kayıt olun (veri çıkışı): kaydırma ve birleştirme
    • Kayıt için IV-bus girişi: döndür ve maskele
    • IV-bus girişi ile IV-bus çıkışı: döndürme, maskeleme, kaydırma ve birleştirme
    • IVL veya IVR kaydına IV-bus girişi (IV-bus adres çıkışı): döndür ve maskele
  • XEC ve NZT:
    • IV-bus girişi: döndür ve maskele
  • XMIT
    • IV-bus (veri çıkışı): kaydırma ve birleştirme

G/Ç

8X300'e ve 8X300'den veri aktarımı iki adımlı bir işlemdir:

  • 1 MOVE, ADD, AND, XOR veya XMT komutlarından birini kullanarak ve hedef olarak IVL (sol banka) veya IVR (sağ banka) sanal kayıtlarından birini belirterek, Select Command ile birlikte IV veriyolunda bir adres çıktısı alınır. ve Bank Select sinyalleri.

G/Ç adresi ayrı olarak çıkarıldığından, G/Ç bağlantı noktalarının seçimi tutması (mandallaması) gerekir. Bu, ayrı adres kod çözücüler ve mandallarla veya 8X32 gibi entegre adres kod çözme ve mandallama özelliğine sahip bir G/Ç bağlantı noktasıyla yapılabilir. Kilitleme nedeniyle, I/O portları adreslendikten sonra farklı bir adres çıkana kadar aktif kalır ve tekrar adreslemeye gerek kalmadan birçok kez erişilebilir. İki G/Ç bağlantı noktası (veya RAM adresi), daha fazla adresleme yapmadan aralarında hızlı geçiş yapmak için sıra seçme sinyallerini kullanarak aynı anda etkin olabilir.

  • 2 Veri, MOVE, ADD, AND veya XOR komutlarından biri kullanılarak ve kaynak ve/veya hedef olarak R16-R31 kayıtlarından biri belirtilerek 8X300'e veya 8X300'den aktarılır. Seçilen kayıt, transfere hangi banka seçim sinyalinin eşlik edeceğini tanımlar.

Uygulamalar

Kapsamlı bir uygulama notunda Signetics, 8X300'ün disket denetleyicisi olarak nasıl kullanılacağını gösterdi . Gözden geçirilmiş bir uygulama notu, 8X300'ün 8X330 ile birlikte kullanımını gösterdi. Açıklanan diğer uygulama notları:

  • Bir teletip çoklayıcı
  • Bir veri toplayıcı
  • Bir uzak terminal denetleyicisi
  • Bir bilgisayar G/Ç veri yolu öykünücüsü
  • Arayüz RAM belleği

Bir gösteri sistemi (bir evrak çantasında bulunur) ve uygulama notu, 8X300'ün bir trafik ışığı kontrol cihazında kullanıldığını gösterdi.

Olivetti , M20 kişisel bilgisayar serisindeki ST506 sabit diski için kontrolör olarak 8X300 ve daha sonra 8X305'i kullandı .

Convergent Technologies , 1981'de AWS sabit disk denetleyicilerinde 8X300I'yi kullandı.

Western Digital , WD1000 ST506 sabit disk denetleyicilerinde 8X300'ü ve WD1001 ECC sabit disk denetleyicilerinde 8X305'i kullandı.

Destek cihazları

  • 8X01 Döngüsel artıklık denetleyicisi
  • 8X31 / 8T31 8-bit mandallı çift yönlü G/Ç bağlantı noktası
  • 8X32/8X36/8X42 8-bit mandallı adreslenebilir çift yönlü G/Ç bağlantı noktası
  • 8T39 Adreslenebilir veri yolu genişletici
  • 8X41 Asenkron çift yönlü veri yolu genişletici ve tekrarlayıcı (SABER)
  • 8T58 Şeffaf veri yolu genişletici
  • 8X320 Bus arabirimi kayıt dizisi
  • 8X330 disket biçimlendirici/kontrolör
  • 8X350 2048-bit bipolar RAM (256*8) 35nS erişim süresi
  • SMS360/8X360 Arayüz vektör baytı

Referanslar

Dış bağlantılar