Az Intel 4040 a 4004-es utódja, az MCS-4 családba tartozik illetve az MCS-40 lapkakészlet tagja. 1974-ben mutatták be. Az elődjéhez hasonlóan 4 bites és 10μm-es szilíciumkapus PMOS technológiával készült. Elődjével összehasonlítva 14 új utasítást, nagyobb (8 szintes) vermet, 8 új regisztert és megszakítási rendszert kapott, a programtár méretét 4 KiB-ről 8 KiB-ra növelték benne. Több mint 3000 tranzisztorból[2] áll és körülbelül 60 000 utasítás végrehajtására képes másodpercenként, 92 000 utasítás végrehajtására egyszavas (nyolcbites) utasítások esetén.[3] Utasításkészlete főleg a BCD aritmetikát támogatja.

Intel 4040
Egy Intel D4040 mikroprocesszor
Egy Intel D4040 mikroprocesszor

Gyártás1974–1981[1]
GyártóIntel
Max CPU órajel500 kHz – 740 kHz
Gyártás technológia méret10μm
Mikroarchitektúra4 bites
Magok száma1
Tokozás24-lábú DIP
ElődIntel 4004
UtódIntel 8080
A Wikimédia Commons tartalmaz Intel 4040 témájú médiaállományokat.

Főleg játékokban alkalmazták, valamint beágyazott alkalmazásokban: műszerekbe, POS-terminálokba, fejlesztő- és felügyelőberendezésekbe került beépítésre. Az 1970-es évek elején forgalmazott Intellec 4/Mod 40 (Intellec 4/40) fejlesztőrendszer processzora is Intel 4040-es volt.[4]

Gyártását egészen 1981-ig[1] folytatták, főleg a Fülöp-szigeteken készült.

Tervezők szerkesztés

A projektet Federico Faggin javaslatára indították, az architektúrát az ő elvei alapján tervezték és ő volt a projekt vezetője is. A részletes terveket Tom Innes dolgozta ki.

Újítások szerkesztés

  • megszakítások kezelése (interrupt)
  • kibővített utasításkészlet (60 utasításra)
  • lépésenkénti végrehajtás üzemmód (single step)
  • 8 KiB-ra bővített programmemória
  • 24 regiszter
  • 7 szint mélységű szubrutin kezelés

Kialakítás, technikai részletek szerkesztés

 
A 4040 belső felépítésének vázlata

A processzor lényegesebb jellemzői:

  • adatbusz: 4 bites
  • címbusz: 4 bites
  • órajel: 740 KHz
  • üzemi feszültség: +15V
  • adatmemória mérete: 640 byte

A processzor egy négybites párhuzamos kialakítású CPU.

A processzor egy négybites kétirányú busszal rendelkezik, ezek a D0-D3 kivezetések. Az adatok és a címek is ezen a buszon közlekednek. A címek 8 bitesek, az adatok 4 bitesek. A 4040 processzorra épülő rendszerekben megkülönböztetik a ROM és RAM memóriákat; a címzést még a 2 "CM ROM" és 4 "CM RAM" memóriabank-kiválasztó vonal segíti.

A processzor az adatmemóriát a programmemóriától eltérően kezeli. Az adatmemória mérete 640 byte, az adathozzáférés az I/O portokhoz hasonlóan történik; egy utasítás beírja a processzorba a memóriarekesz címét, és a rákövetkező író vagy olvasó utasítás az akkumulátorba, vagy abból a memóriába írja az adatot.[5]

A processzor ALU-ja 4 bites, ennek bemenete egy akkumulátor és egy ideiglenes regiszter. A műveleteknél kezeli a decimális kiigazítást, és az átvitelbit (carry) ki van vezetve a processzor "CY" lábára.

A processzor 16 4 bites bemeneti portot, és ugyancsak 16 4 bites kimeneti portot tartalmaz.

A CPU utasításszava 8 bites, az utasítások egy- vagy kétszavasak (8 vagy 16 bitesek) lehetnek. A kétszavas utasításoknál a második szó általában egy cím. A processzor 4 KiB utasításszót (4×1024 bájtot) tud megcímezni egy memóriabankon belül, és 8 KiB utasításszót – két 4 KiB-os bankot – bankváltással.

A processzor programszámlálója (program counter) 12 bites. A programszámláló mellett a processzor tartalmaz egy belső 7 elemű veremtárat; ez a kiépítés max. 7 mélységű egymásba ágyazott szubrutinhívást enged meg.

A processzor 24 db. 4 bites regisztert tartalmaz, amelyek 12 8 bites regiszterként is használhatók; a regiszterek indexként használhatók.

A processzor képes egy kívülről jövő programmegszakítási kérelmet kezelni (INT, INT ACK lábak), amely után a programok szabályosan folytatódnak.

Utasításszinten és elektromos jellemzőiben is kompatibilis elődjével, a 4004-es processzorral. A processzor disszipációja 1 watt, kétfázisú külső órajelet igényel.[6]

Támogató áramkörök szerkesztés

  • 4201 – órajelgenerátor, 500-tól 740 kHz-ig, 4—5,185 MHz-es kristályokkal
  • 4308 – 1 KiB ROM
  • 4207 – általános célú bájtos kimeneti port
  • 4209 – általános célú bájtos bemeneti port
  • 4211 – általános célú bájtos ki/bemeneti port (I/O port)
  • 4289 – szabványos memória-interfész (a 4008/4009 felváltására)
  • 4702 – 256 bájt UVEPROM
  • 4316 – 2 KiB ROM
  • 4101 – 256 × 4 bites RAM

Jegyzetek szerkesztés

  1. a b The Life Cycle of a CPU (angol nyelven). CPUShack.Net, 2005. (Hozzáférés: 2012)
  2. Intel 4040 (angol nyelven). Intel chip classes. cpu-collection.de, 2003–2012. (Hozzáférés: 2012)
  3. Gennadiy Shvets: Intel 4040 (i4040) microprocessor family (angol nyelven). cpu-world.com, 2003–2010. (Hozzáférés: 2012)
  4. Intel Intellec Series (angol nyelven). old-computers.com. [2012. október 10-i dátummal az eredetiből archiválva]. (Hozzáférés: 2012)
  5. Gennadiy Shvets: Intel 4040 microprocessor architecture (angol nyelven). cpu-world.com, 2003–2010. (Hozzáférés: 2012)
  6. Intel: 4040 - Single Chip 4-bit P-channel Microprocessor (angol nyelven) (pdf) pp. 11-13. Intel. (Hozzáférés: 2012)

Források szerkesztés

A Wikimédia Commons tartalmaz Intel 4040 témájú médiaállományokat.

További információk szerkesztés

Kapcsolódó szócikkek szerkesztés