Zilog Z80
| Zilog Z80 | ||
|---|---|---|
|
Z80 valmistettu kesäkuussa 1976 | ||
| Tiedot | ||
| Kaveri | käyttöohjeet | |
| Luomispäivä | 1974 | |
| kehittäjä | Zilog | |
| Luoja | ||
| Julkaisupäivä | Maaliskuu 1976 | |
| Tekniset tiedot | ||
| CPU:n kellotaajuus | 2,5, 4, 6, 8MHz – 10MHz | |
| Käyttöohjeet | 8080 | |
| Leveys bitteinä | 8-bittinen | |
| pakattu | ||
| ||
| yhdistää | ||
| pistorasia(t) |
| |
| Kronologia | ||
Zilog Z80 | Zilog Z180 | |
Zilog Z80 ( Z80 ) on 8 - bittinen mikroprosessori , jonka arkkitehtuuri on akun ja yleisen rekisteriorganisaation puolivälissä . Jos tarkastelemme Z80:tä yleisenä rekisteriarkkitehtuurin prosessorina, se kuuluu rekisterimuistityypin alle .
Zilog -yhtiö toi sen markkinoille maaliskuussa 1976 , ja siitä tuli suosittu 1980-luvulla tietokoneiden, kuten Sinclair ZX Spectrum , Amstrad CPC tai MSX - järjestelmätietokoneiden, kautta . Se on yksi markkinoiden menestyneimmistä prosessoreista, josta on valmistettu lukemattomia klooniversioita, ja sitä käytetään edelleen laajasti monissa sulautetuissa järjestelmissä .
Historia
Esittely
Z80:n suunnitteli pääasiassa Federico Faggin , joka työskenteli Intelillä Intel 4004 :n ja Intel 8080 :n pääsuunnittelijana . Kun se valmistui, vuonna 1974 Federico Faggin jätti Intelin, perusti Zilogin ja alkoi työskennellä Z80:n suunnittelun parissa Intel 4004:n, 8080:n luomisesta saatujen kokemusten sekä jälkimmäisen ja joidenkin muiden integroitujen piirien rakenteen perusteella. Masatoshi Shima , 4004- ja 8080-mallien päätransistori- ja logiikkatason suunnittelija Fagginin valvonnassa, liittyi Zilog-tiimiin. Kaksi vuotta myöhemmin Z80 tuli myyntiin.
Z80 suunniteltiin kooditasolla yhteensopivaksi Intel 8080 :n kanssa , jotta useimmat 8080:n ohjelmat voisivat toimia sillä, erityisesti CP/M - käyttöjärjestelmä .
Z80:ssä oli kahdeksan perustavanlaatuista parannusta Intel 8080:een verrattuna:
- Parannettu käskysarja , joka sisältää uudet IX- ja IY-indeksirekisterit ja niiden käsittelyyn tarvittavat ohjeet.
- Kaksi rekisteripankkia, jotka voidaan nopeasti vaihtaa keskeytyksiä nopeuttamaan .
- Block Move-, Block I/O- ja Byte Seek -ohjeet .
- Bittien käsittelyohjeet .
- Transistorien määrä alkaen 6500.
- Integroitu DRAM-päivitysosoitelaskuri , joka 8080:ssa piti tarjota tukipiirin kautta .
- Yksittäinen 5 voltin syöttö .
- Tarvitaan vähemmän apupiirejä sekä kellosignaalin generointiin että muistiin ja I/O :iin linkittämistä varten .
- Halvempi kuin Intel 8080.
- Erityinen nollaus, joka nollaa vain ohjelmalaskurin, jotta Z80:tä voidaan käyttää ICE (In-Circuit Emulator) -kehitysjärjestelmässä. [ 1 ]
Z80 työnsi nopeasti Intel 8080:n pois markkinoilta ja siitä tuli yksi suosituimmista 8-bittisistä prosessoreista. Ensimmäiset versiot toimivat 2,5 MHz taajuudella , mutta sen nopeus on noussut 20 MHz:iin, joten eniten käytetty versio oli 3,58 MHz (neljännes PAL- tai NTSC-taajuudesta) toimiva Z80A tehdasnopeudella 4 MHz. [ 2 ]
Tällä hetkellä Zilog jatkaa versioiden valmistamista alkuperäisestä Z80:sta ja muista sen kanssa yhteensopivista malleista, jotka parantavat suorituskykyä.
Merkittäviä käyttötapoja
Cromemco oli yksi Zilogin ensimmäisistä asiakkaista ja julkaisi Z80-mikroprosessoriin perustuvan keskusyksikön lokakuussa 1976. [ 3 ] [ 4 ] 1980- luvun alussa Z80 tai sen klooniversiot käytettiin monissa kotitietokoneissa, kuten MSX -sarja , Radio Shack TRS-80 , Sinclair ZX80 , ZX81 ja ZX Spectrum . Sitä käytettiin myös Osborne 1 :ssä, Kayprossa ja monissa muissa yritystietokoneissa, jotka hallitsivat markkinoita tuolloin ja käyttivät CP/M - käyttöjärjestelmää .
1980 - luvun puolivälissä Z80 käytettiin Tatung Einsteinin ja Amstrad CPC - ja Amstrad PCW - perheen koti - ja yritystietokoneissa . Z80:tä käytettiin myös Tiki 100 -tietokoneissa , joita käytettiin tuolloin Norjan kouluissa.
Z80:n ja CP/M:n suosio oli sellainen, että muita jo markkinoilla olevia MOS Technology 6502- tai 6510 -pohjaisia tietokoneita , kuten BBC Micro , Apple II ja Commodore 64 , voitiin päivittää käyttämällä korttia tai patruunaa, joka se sisälsi Z80-prosessorin. Myös Commodore 128 sisälsi toissijaisen Z80:n MOS Technology 8502 :n viereen, jotta se voisi käyttää CP/M:tä.
Jo 1990 - luvulla Z80 on ollut käytössä Sega Master System - ja Sega Game Gear - videopelikonsoleissa . Lisäksi SNK Neo-Geo- ja Sega Mega Drive -pelikonsolit ja monet pelihallikoneet käyttävät Z80:tä erikoistuneena ääniprosessorina.
Nintendon Game Boy ja Game Boy Color käyttävät Sharpin valmistamaa 4,19 / 8,38 MHz Sharp LR35902 :ta (perustuu Zilog-Z80:een ja Intel 8080 :een ) .
Nyt osa Texas Instrumentsin ohjelmoitavien graafisten laskimien sarjaa , kuten TI-73 (1998), TI-73 Explorer (2003), TI-82 (vain vuoden 1999 malli), TI-83 Plus (vain 1999 ja uudemmat mallit ). 2001), [ 5 ] ja sen seuraajat käyttävät NEC:n valmistamaa Z80:n klooniversiota pääprosessorina.
Lisäksi Z80 on myös suosittu mikroprosessori käytettäväksi sulautetuissa järjestelmissä , alalla, jolla sitä käytetään laajasti.
Toiset lähteet ja kloonit
Mostek ja SGS Microelettronica olivat Z80:n (Mostek MK3880 ja SGS Z8400) toisia lähteitä . GoldStar valmistaa GoldStar Z8400A PS (4 MHz) ja Goldstar Z8400B PS (6 MHz). [ 6 ] Sharp Corporation ja NEC valmistavat Z80:n klooneja ( Sharp LH-0080 ja NEC µPD780C ). National Semiconductor teki klooniprosessorin, NSC800 :n , jossa oli CMOS -tekniikka, mutta joka ei ollut pin-for-pin-yhteensopiva. Hitachi teki version parannetulla CMOS-tekniikalla, jonka toinen lähde oli omituisesti Zilog itse.
Z80: n klooniversio, nimeltään U880 , valmistettiin Saksan demokraattisessa tasavallassa , ja sitä käytettiin Robotronin ja VEB Mikroelektronik Mühlhausenin tietokonejärjestelmissä , kuten KC85 -sarjassa, sekä monissa kotona rakennetuissa tietokoneissa.
Z80:n klooniversio , MMN80 , valmistettiin Romaniassa , ja joidenkin lähteiden mukaan sitä valmistettiin myös Neuvostoliitossa , jossa Z80:stä tehtiin useita kopioita, joista tunnetuin on T34. Tätä mikroprosessoria käytettiin useimmissa tässä maassa valmistetuissa tietokoneissa, lähes kaikissa Sinclair ZX Spectrumin klooneissa : Ice Felix HC85 , HC90 , HC91 , HC2000 , Datatim / Technical University of Timisoara TIM-S , MicroTIM ja MicroTIM+ tai Electronic Intre. CIP , CIP-02 , CIP-03 , CIP-04 .
Nykyään on olemassa kaksi prosessoriydintä, T80 ja TV80, jotka vastaavat toiminnallisesti Zilog Z80:tä ja ovat saatavilla BSD :n kaltaisella lisenssillä . Näiden ytimien lähdekoodi on saatavilla sekä Verilogissa että VHDL :ssä . Kun tämä uusin versio on syntetisoitu, se voi toimia jopa 35 MHz :n taajuudella Xilinx Spartan II FPGA :lla .
Zilog itse valmistaa tällä hetkellä parannettua versiota Z80:sta nimeltä eZ80 , jonka 50 MHz:n taajuudella toimivan Z80:n suorituskyky on samanlainen kuin 150 MHz:n taajuudella ja joka voi myös käsitellä jopa 16 Mt RAM- muistia , mikä laajentaa rekisterien kokoa. Z80 :n 64 kilotavuun .
Nykyään on olemassa laitteistomalleja, jotka toteuttavat Z80:n ohjelmoitavalle sirulle ohjelmoimalla osan sirusta suorittamaan Z80:n toimintoja.
- Kaikissa tämän mikroprosessorin klooneissa ei ole NMI-nastaa kytkettynä, joten yritettäessä käyttää sitä joissakin malleissa se jättää sen huomiotta.
T34BM1 , Z80: n Neuvostoliiton klooni.
NEC µPD780C , Z80:n klooni ZX Spectrum -emolevyllä .
Evoluutio
Z180
Z180 on Z80 :n seuraaja. Se on yhteensopiva suuren sille kirjoitetun ohjelmistokokoelman kanssa. [ 7 ] Z180-tuoteperhe lisää ominaisuuksia ja integroituja oheistoimintoja, kuten kellogeneraattori, 16-bittiset laskurit/kellot, keskeytysohjain , odotusgeneraattorit, sarjaportit ja DMA -ohjain . [ 8 ] Se käyttää erillisiä luku- ja kirjoitussyklejä käyttäen kelloja, jotka ovat samanlaisia kuin Z80- ja Intel-prosessoreissa. [ 9 ] Integroitu MMU pystyy käsittelemään jopa 1 megatavua muistia. Z180 on mahdollista määrittää toimimaan Hitachi HD64180 :na .
| Siru | Nopeus (MHz) | kellot | I/O | ctrl. viestintää | muut |
|---|---|---|---|---|---|
| Z80180 | 6, 8, 10 | kaksi | N/S | prosessorit | 1MB MMU, 2xDMA, 2xUART |
| Z80181 | 10 | 1 | 16 | prosessorit | 1MB MMU, 2xDMA, 2xUART |
| Z80182 | 16, 33, 20 | 0 | Katso sarja, 24 | ESCC, CSIO, UART | S180 Megacell, 2xESCC-kanavaa, 16550 MIMIC |
| Z80195 | 20, 33 | 4 | 24.7 | SCC, CSIO, UART | |
| Z8L180 | kaksikymmentä | kaksi | katsella sarjoja | CSIO, UART | 1 Mt MMU, 2 x DMA, 2 x UART, 3,3 V Toiminta |
| Z8L182 | kaksikymmentä | 0 | katsella sarjoja | ESCC, CSIO, UART | S180 Megacell, 2xESCC-kanavaa, 16550 MIMIC, 3,3 V toiminta |
| Z8S180 | 10, 20, 33 | kaksi | katsella sarjoja | UART, DMA, I2C, SPI | 1MB MMU, 2xDMA, 2xUART |
Z80182
Z80182 on päivitetty versio Z80: sta ja kuuluu Z180-perheeseen. Se on lempinimeltään Zilog Intelligent Peripheral Controller (ZIP: Zilog Intelligent Peripheral Controller). Se on myös täysin staattinen (kello voidaan pysäyttää eikä rekisteritietoja häviä) [ lainaus tarvitaan ] ja siinä on alhainen sähkömagneettinen häiriövaihtoehto , joka vähentää lähtöjen kiertonopeutta . [ lainaus tarvitaan ] .
Hitachi HD64180
HD64180 on Hitachin kehittämä Z80-pohjainen mikroprosessori, joka sisältää MMU:n. HD64180 Super Z80 lisensoitiin myöhemmin Zilogille ja myi sen nimellä Z64180 sisältäen joitain Z180:n kaltaisia parannuksia.
Z280
Z280 oli parannus Z80-arkkitehtuuriin, joka esiteltiin heinäkuussa 1987. Se on pohjimmiltaan hieman paranneltu CMOS-versio aikaisemmasta Z800:sta. Molemmat versiot, Z280 ja Z800, olivat kaupallisia epäonnistumisia. [ 11 ]
Rakenne
Vaikka Z80 on 8-bittinen mikroprosessori, se pystyy käsittelemään 16-bittisiä käskyjä ja käsittelemään jopa 64 KiB RAM-muistia. Yksi merkittävimmistä ominaisuuksista on, että siinä on Intel 8080 -ohjeet osajoukona, joten jotkut Z80-pohjaiset tietokoneet voisivat suorittaa ohjelmia, jotka on suunniteltu 8080-luvun CP /M :lle . Tämä on tehnyt Z80:n käskymuodoista melko monimutkaisia, koska niiden on säilytettävä yhteensopivuus 8080:n kanssa. Z80 on kuitenkin onnistunut parantamaan Intelin mikroprosessorin nopeutta, lisännyt uusia osoitetiloja ja sisältää joukon laajempia ohjeita.
Records
Z80:n rekisterirakenne koostuu pääpankista, vaihtoehtopankista ja lopuksi erikoisrekistereistä muodostuvasta pankista. [ 12 ] Vaihtoehtoisen pankin olemassaolo parantaa nopeutta katkosten yhteydessä, koska se mahdollistaa siirtymisen pääpankista vaihtoehtoiseen pankkiin. Tietueet ovat:
- A, B, C, D, E, H ja L (pääpankki)
- A', B', C', D', E', H' ja L' (vaihtoehtoinen pankki)
- I, R, IX, IY, SP ja PC (erikoisrekisterit)
Pääpankkirekisterit ovat yleisiä ja 8-bittisiä. Ne voidaan ottaa pareittain, jolloin IX ja IY ovat indeksirekisterit. Rekisteri A toimii akkuna. R tallentaa muistilohkon, jonka päivitys jatkuu. SP on pinon yläosan osoitin. PC on ohjelmalaskuri. F sisältää liput tai joita kutsutaan myös ehtobitteiksi.
Ensisijaiset rekisterit Vaihtoehtoiset rekisterit +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+ -+-+-+-+-+-+-+-+ | A |SZ - A - PNC| F | A' |SZ - A - PNC| F' +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+ -+-+-+-+-+-+-+-+ | B | C | | B' | C' | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+ -+-+-+-+-+-+-+-+ | D | minä | | D' | E' | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+ -+-+-+-+-+-+-+-+ | H | L | | H' | L' | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+ -+-+-+-+-+-+-+-+
hakemistotietueita +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | IX | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | I-Y | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Pinoosoitin ja ohjelmalaskuri +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | SP | pinoosoitin +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | PC | ohjelmalaskuri +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Tallennus keskeytyksistä ja muistin päivitysrekisteri +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | minä | R | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Akku
Rekisteröity, jota käytetään tallentamaan käytössä olevat tiedot. Se on tärkein rekisteri yhdessä F-rekisterin kanssa (jonka kanssa se muodostaa AF-rekisterien parin). Useimmat 8- bittiset matemaattiset ja logiikkatoiminnot suoritetaan tämän rekisterin kautta, joten se on tärkeää.
HL pari
Se on monipuolisin rekisteripari, jota käytetään ensisijaisesti muistiosoitteiden säilyttämiseen. Yksinkertaiseen rekisteriin L sijoitetaan muistiosoitteen alin tavu (LOW) ja H:een muistiosoitteen korkein tavu (HIGH). Samoin sitä käytetään laajalti kutsuissa BIOS-alirutiineihin (CALL) kutsutun aliohjelman syöttö-/lähtödatalle. Jotkut Assembler-lauseet ovat erityisiä tälle rekisteriparille.
BC- ja DE-parit
Niitä käytetään HL:n apupareina käskyissä, jotka käsittelevät lohkoja, kuten LDI, LDIR jne.
Indeksoidut tietueet IX ja IY
Ne ovat 2 16 bitin rekisteriä. Niitä käytetään perusrekistereinä osoittamaan muistiosoite, josta tiedot on otettava. Lisätavu ilmaistaan, mikä tarkoittaa siirtymää.
- Vaikka niitä ei ole virallisesti dokumentoitu, niitä voidaan käyttää kahtena itsenäisenä 8-bittisenä rekisterinä, jolloin saadaan yhteensä 4 ylimääräistä 8-bittistä rekisteriä.
SP-pinoosoitin
Mahdollistaa rutiinien sisäkkäisyyden. Se osoittaa muistialueelle nimeltä STACK, joka on pinorakenne tai LIFO.
Erikoisrekisterit
- Lippu F: Osoittaa erityisolosuhteet matemaattisia tai loogisia operaatioita suoritettaessa.
Se toimii joukkona lippuja, jotka osoittavat tiedot suoritettavista toiminnoista. [ 13 ] [ 14 ] [ 15 ] [ 16 ]
- Keskeytysrekisteri I: Käytetään minkä tahansa aliohjelman suorittamiseen vastauksena laitteistokeskeytykseen, käyttämällä I:tä osoittimena osoitteen yläosana ja dataväylällä olevaa dataa alaosana, jolloin voidaan käsitellä 128 erilaista keskeytystä. .
- Refresh register R: Rekisterin R arvo sijoitetaan osoiteväylään, kun CPU:n antama virkistyssignaali on aktivoitu. Tämä tapahtuu, kun CPU purkaa käskyä tai käskyetuliitettä.
Z80 ehtobitit ( liput )
- 0-C: Kanna.
- 1-N: Vähennä BCD DAA:lla korjausta varten.
- 2-P/V: Pariteetti/ylivuoto.
- 4-H: Half carry, BCD-korjaukseen DAA:lla.
- 6-Z: nolla.
- 7-S: Merkki.
Bittejä 3 ja 5 ei käytetä, mutta niitä muokataan tietyillä ohjeilla, vaikka niitä ei ole virallisesti dokumentoitu.
Kiinnitetään
Z80 nastat. Osoiteväylälinjat näkyvät punaisina, dataväylälinjat sinisinä ja ohjausväylälinjat vihreinä .
+--\/--+ <-- A11 1| |40 A10 --> <-- A12 2| |39 A9 --> <-- A13 3| |38 A8 --> <-- A14 4| |37 A7 --> <-- A15 5| |36 A6 --> --> CLK 6| |35 A5 --> <-> D4 7| |34 A4 --> <-> D3 8| |33 A3 --> <-> D5 9| Z80 |32 A2 --> <-> D6 10| |31 A1 --> +5V Vdc 11| |30 A0 --> <-> D2 12| |29 GND <-> D7 13| |28 !RFSH --> <-> D0 14| |27 !M1 --> <-> D1 15| |26 !RESET <-- --> !INT 16| |25 !BUSRQ <-- --> !NMI 17| |24 !ODOTA <-- <-- !PYSÄYTÄ 18| |23 !BUSAK --> <-- !MREQ 19| |22 !WR --> <-- !IORQ 20| |21 !RD --> +------+
Katso myös
Viitteet
- ↑ http://www.primrosebank.net/computers/z80/z80_special_reset.htm
- ^ "Z80180-mikroprosessoriyksikön tuotetiedot" (pdf) . San Jose (Kalifornia) : Zilog . marraskuuta 2006 . Haettu 15. heinäkuuta 2009 .
- ↑ Slater, Michael (27. huhtikuuta 2007). "Zilogin suullisen historian paneeli yrityksen perustamisesta ja Z80-mikroprosessorin kehittämisestä" . Tietokonehistorian museo . Haettu 30. marraskuuta 2021 . «Federico Faggin: Yksi ensimmäisistä asiakkaistamme oli Cromemco. Itse asiassa Roger Melen tuli toimistoon ja muistan henkilökohtaisesti myyneeni hänelle yhden Z80:n 200 dollarilla. »
- ^ "Uusi Z-80 CPU-kortti" . DealerNews . Cromeco. lokakuuta 1976 . Haettu 30. marraskuuta 2021 .
- ^ "Data Math Calculator Museum" . Haettu 29. heinäkuuta 2016 .
- ^ "Goldstar Z80 mikroprosessoriperhe" . CPU-World (englanniksi) . Haettu 27. kesäkuuta 2021 .
- ^ Ganssle, Jack (1992). "Z80 elää!" . "Suunnittelijat valitsivat Z80:n kanssa yhteensopivan arkkitehtuurin, mikä antoi Z80:n käyttäjille täysin yhteensopivan ohjelmiston päivityspolun."
- ↑ Jack G. Ganssle. (1992). Sulautettujen järjestelmien ohjelmoinnin taito . San Diego: Academic Press. s. 13 . ISBN 9780122748806 .
- ↑ Stuart R. Ball. (2002). Sulautetut mikroprosessorijärjestelmät todellisen maailman suunnittelussa . Amsterdam: Newnes. s. 34 . ISBN 9780750675345 .
- ^ "CPU-ohjausrekisteri". Z80182/Z8L182 Zilog Intelligent Peripheral Controller Tuotetiedot . San Jose (Kalifornia) : Zilog . 1997. s. 3–48.
- ^ "Z80S180/Z80L180 tuotteen tekniset tiedot" (pdf) . San Jose (Kalifornia) : Zilog . 2000 . Haettu 15. heinäkuuta 2009 .
- ^ Harston, JG (9. syyskuuta 1997). "Z180 Opcode Map" . Haettu 15. heinäkuuta 2009 .
- ^ "Z8S180 SL1960 -tuotteen tekniset tiedot" (pdf) . San Jose (Kalifornia) : Zilog . 1998 . Haettu 15. heinäkuuta 2009 .
- ^ "Z8018x MPU Family User Manual" (pdf) . San Jose (Kalifornia) : Zilog . 2003 . Haettu 15. heinäkuuta 2009 .
- ↑ Harston, JG (15. huhtikuuta 1998). "Full HD64180/Z180 Opcode List" . Haettu 15. heinäkuuta 2009 .
- ↑ Harston, JG (15. huhtikuuta 1998). "Täysi Z280 Opcode List" . Haettu 15. heinäkuuta 2009 .
Bibliografia
- Z280 MPU -mikroprosessoriyksikkö Alustava tekninen käsikirja . San Jose (Kalifornia) : Zilog . 1989 . Haettu 15. heinäkuuta 2009 . (Huom: 20 Mt PDF-tiedosto)
- Z80 Family DataBook . San Jose (Kalifornia) : Zilog . tammikuuta 1989.
- Reh, Tilmann (16. syyskuuta 1991). "CPU280 ja Z280" . TCJ . Haettu 15. heinäkuuta 2009 .