RCA 1802

Versiunea actuală a paginii nu a fost încă examinată de colaboratori experimentați și poate diferi semnificativ de versiunea revizuită la 14 martie 2015; verificările necesită 6 modificări .

RCA (CDP) 1802 (cunoscut și ca RCA COSMAC , COSMAC 1802 ) este un microprocesor pe 8 biți introdus de Radio Corporation of America (RCA) în primăvara anului 1976 . În prezent continuă să fie produs de Intersil Corporation . Arhitectura procesorului este destul de diferită de majoritatea celorlalte procesoare pe 8 biți.

Deseori menționate în denumire, literele RCA din nume sunt o abreviere a numelui producătorului și nu fac parte din denumirea actuală CDP 1802. De asemenea, se găsește abrevierea COSMAC ( CO mplementary S ilicon M et a l-oxide C onductor ), pe care RCA a folosit-o ca denumire tehnologie de fabricare a cipurilor , cunoscută mai târziu sub numele de CMOS . Procesorul 1802 este unul dintre primii care a folosit această tehnologie.

Designerul principal de procesor a fost Joe Weisbecker, iar echipa de dezvoltare a fost condusă de Jerry Herzog.

Descriere

Procesorul este o implementare cu un singur cip a procesorului dual-cip RCA 1801 anterior (introdus în 1975), cu o serie de completări, dar păstrează compatibilitatea cu versiunea anterioară . Designul static CMOS , care nu are o viteză minimă de ceas , permite procesorului să funcţioneze la frecvenţe foarte joase cu un consum de energie foarte scăzut . Magistrala de adrese externă este de 8 biți, se folosește multiplexarea (octeții de înaltă și de jos ai adresei sunt dați pe rând magistralei externe).

În comparație cu majoritatea celorlalte procesoare dintr-o clasă similară, RCA 1802 a avut o performanță scăzută. Un ciclu de mașină este executat în opt cicluri. Majoritatea instrucțiunilor constau în două cicluri de mașină. La o viteză de ceas de 1,7 MHz (1.700.000 Hz), viteza medie va fi de aproximativ 106.000 de instrucțiuni pe secundă.

Aplicații

De la lansarea CDP 1802, a fost produsă și o versiune de silicon pe safir (SOS), care este foarte rezistentă la radiații și descărcări electrostatice . Împreună cu consumul redus de energie, aceste proprietăți au făcut ca procesorul să fie foarte potrivit pentru utilizarea în nave spațiale . În acest moment, existau foarte puține procesoare rezistente la radiații .

Procesorul 1802 a fost folosit în sonda spațială Galileo [1] și a fost, de asemenea, utilizat pe scară largă în sateliții de pământ artificial . Se crede în mod eronat că procesorul 1802 a fost folosit în navele spațiale Voyager 1 și Viking . De fapt, la momentul dezvoltării acestor nave spațiale (1970-1974), acest procesor nu era disponibil, iar computerele erau realizate pe microcircuite CMOS de grad mic și mediu de integrare [2] . Toate procesoarele folosite în spațiu au fost lansate cu acceptare militară și au funcționat în intervalul de temperatură de la -55 la +125 ° C.

Mai multe microcalculatoare timpurii au fost dezvoltate pe baza procesorului 1802 , inclusiv Comx-35 , COSMAC ELF , COSMAC VIP , ELF II , SuperELF , finlandezul Telmac 1800 și Oscom Nano , Iugoslav Pecom 32 și 64 și consola de jocuri RCA Studio II . .

Primul limbaj de programare de nivel înalt disponibil în 1802 a fost Forth , Inc. în 1976.

Dispozitiv

O caracteristică importantă a procesorului este fișierul de registru , care constă din șaisprezece registre pe 16 biți . Oricare dintre ele poate fi folosit ca indicator al instrucțiunii curente (selectat de instrucțiunea SEP) sau ca registru de index (selectat de instrucțiunea SEX). Registrul R0 are un scop special și stochează adresa utilizată de controlerul de acces direct la memorie simplu încorporat .

Procesorul nu are instrucțiunile obișnuite de apel și returnare dintr-o subrutină (CALL și RET) și suport pentru stiva . Abilitatea de a plasa indicatorul de instrucțiune curent în orice registru permite modalități neobișnuite de a apela subrutine, totuși, cele mai multe potrivite pentru programe mici. Câteva dintre cele mai frecvent utilizate subrutine pot fi localizate în mai multe registre, iar subrutinele pot fi apelate și returnate folosind instrucțiunea SEP. La executarea instrucțiunii SEP, adresa din registrul utilizat curent este incrementată înainte de a selecta un nou registru, ceea ce facilitează implementarea unei întoarceri la locația dorită. De asemenea, poate fi aranjat să apeleze două sau mai multe subrutine într-un mod ciclic. Acesta a fost adesea folosit la computerele amatoare atunci când afișau grafică, pentru a duplica linii de patru ori. Apelarea subrutinelor la adresele calculate nu este dificilă, deoarece toate instrucțiunile CALL folosesc un model de adresare indexat.

Pe lângă comenzile de sărituri condiționate , există și comenzi de sărituri condiționate pentru următoarea comandă.

Procesorul are cinci linii I/O dedicate. Una dintre linii, Q, este un port de ieșire, starea acestuia este setată de comenzile SEQ și REQ. Restul de patru linii sunt porturi de intrare. Starea lor este afișată de steaguri EF1, EF2, EF3, EF4, care pot fi interogați prin opt instrucțiuni speciale de salt condiționat. Aceste linii I/O au fost utilizate intens în sistemele bazate pe procesoare. În special, la computerele amatoare, linia Q ar putea controla simultan indicatorul de stare LED , ieșirea interfeței casetofonului , interfața RS-232 și difuzorul (în timp ce, în acest caz, difuzorul redă sunet în timpul transferului de date).

Modificări

Au fost lansate două modificări ale procesorului, care aveau viteze maxime de ceas diferite - 1802A (3,2 MHz) și 1802B (5 MHz). A fost folosit un pachet DIP40 .

RCA a lansat, de asemenea, microcontrolerele CDP1804, CDP1805 și CDP1806 bazate pe nucleul 1802. Au 64 de octeți de RAM la bord , un generator de ceas , un temporizator de 8 biți și 32 de instrucțiuni suplimentare, inclusiv comenzi de apel și returnare din subrutine. CDP1804 are, de asemenea, un ROM de 2 KB pe cip .

Intersil a lansat un număr de modificări 1802A și 1802B în pachetele DIP din plastic și ceramică, precum și într-un pachet PLCC .

Surse

  1. Ch6-3 . Consultat la 23 ianuarie 2009. Arhivat din original la 23 august 2014.
  2. Calcularea distribuită la bordul Voyager și Galileo . Consultat la 16 octombrie 2012. Arhivat din original pe 17 octombrie 2012.

Vezi și

Link -uri