74181 (integrált áramkör)

Texas Instruments gyártmányú 74S181 4 bites ALU IC saját adatlapja egyik oldalán

A 74181 egy 4 bites bitszelet-technikájú aritmetikai-logikai egység (ALU), amely 7400-as sorozatú TTL integrált áramkörként van megvalósítva. A Texas Instruments mutatta be 1970 februárjában.[1] Ez volt az első teljes, egyetlen csipen megvalósított ALU.[2] Sok történetileg jelentős miniszámítógép és egyéb eszköz CPU-jában használták aritmetikai/logikai magként.

A 74181 evolúciós lépést jelentett az 1960-as évek diszkrét logikai kapuk segítségével épített CPU-i és a mai egycsipes mikroprocesszorok CPU-i között. Kereskedelmi termékekben már nem használják, de a 74181-esre még mindig hivatkoznak a számítógéptervezési tankönyvekben és műszaki cikkekben. Időnként főiskolai gyakorlatokon is használják a jövőbeli számítógéptervezők képzésére.

Műszaki adatok

A 74181 integrált áramkör kombinációs logikai hálózata

A 74181 egy 7400-as sorozatú közepes integráltságú (MSI), TTL integrált áramkör, amely 75 logikai kapu megfelelőjét tartalmazza,[3] és leggyakrabban 24 tűs DIP tokozásba van szerelve. A 4 bites szóméretű ALU képes végrehajtani az összes hagyományos összeadás / kivonás / csökkentés műveletet átvitellel vagy anélkül, valamint az AND/NAND (NEM-ÉS), OR (VAGY)/NOR, XOR (kizáró VAGY), és eltolás (léptetés, shift) műveleteket. Ezeknek az alapvető műveleteknek számos változata áll rendelkezésre, összesen 16 aritmetikai és 16 logikai művelet, két négybites szón. A szorzás és osztás műveletek nincsenek megvalósítva, de végrehajthatók több lépésben az eltolás és összeadás vagy kivonás műveletek segítségével. Az eltolás/léptetés nem explicit művelet, hanem több rendelkezésre álló egyéb műveletből származtatható; például az "A plusz A" funkció kiválasztása átvitellel (M=0) az A bemenet egy lépéses aritmetikai balra tolásának felel meg.

A 74181 a fenti műveleteket két négybites operanduson végzi el, 22 nanoszekundumos végrehajtási idővel, négy bites eredményt generálva átvitellel (ez 45 MHz-es órajelnek felel meg). A 74S181 ugyanezeket a műveleteket 11 nanoszekundum alatt hajtja végre (90 MHz), míg a 74F181 jellemzően 7 nanoszekundum alatt végzi ezeket (143 MHz).

Több „szelet” kombinálható tetszőlegesen nagy szómérethez. Például tizenhat 74S181-es és öt 74S182-es gyors átvitelgenerátor kombinálható, hogy ugyanezeket a műveleteket hajtsák végre 64 bites operandusokon 28 nanoszekundum alatt (36 MHz). Bár a teljesítménye messze elmarad a mai több gigahertzes, 64 bites mikroprocesszorok teljesítményétől, saját környezetében mégis magasan kiemelkedő volt, a korai négy- és nyolcbites mikroprocesszorok megahertz alatti órajeléhez képest.

Megvalósított műveletek

A 74181 megvalósítja mind a 16 lehetséges kétváltozós logikai függvényt. Aritmetikai műveletei közé tartozik az összeadás és kivonás, átvitellel és anélkül. Aktív-magas (a magas szint 1-nek felel meg) és aktív-alacsony (alacsony szint 1-nek felel meg) logikai szintű adatokkal használható.[4]

Bemenetek és kimenetek

A művelet kiválasztásához négy vezérlő bemenet áll rendelkezésre, ezek jelölése S0S3. Az M bemenet a logikai és az aritmetikai műveletek közötti választásra szolgál, Cn pedig a bemenő átvitel (carry-in). Az A és B a feldolgozandó adat (mindkettő négy bites). Az eredmény az F kimeneten jelenik meg. A P és a G kimenetek gyors átvitelképzésű összeadó használatához szükségesek, amely egy vagy több 74182-es áramkör segítségével megvalósítható.

Az F kimeneten megjelenő funkciók

Az alábbi táblázatban az AND (ÉS) műveletet a szorzás jelöli, a OR (VAGY) műveletet a + {\displaystyle +} jel, a XOR jele {\displaystyle \oplus } , a logikai NOT (tagadás) művelet jelölése a felülvonás, a számtani összeadást és kivonást a „plusz” és „mínusz” szavak jelölik.

Kiválasztás Aktív-alacsony adat Aktív-magas adat
Logika
M = H
Aritmetika
M = L
Logika
M = H
Aritmetika
M = L
S3 S2 S1 S0 Cn = L (nincs átvitel) Cn = H (átvitel) Cn = H (nincs átvitel) Cn = L (átvitel)
L L L L A ¯ {\displaystyle {\overline {A}}} A {\displaystyle A} mínusz 1 {\displaystyle 1} A {\displaystyle {A}} A ¯ {\displaystyle {\overline {A}}} A {\displaystyle A} A {\displaystyle A} plusz 1 {\displaystyle 1}
L L L H A B ¯ {\displaystyle {\overline {AB}}} A B {\displaystyle AB} mínusz 1 {\displaystyle 1} A B {\displaystyle {AB}} A + B ¯ {\displaystyle {\overline {A+B}}} A + B {\displaystyle A+B} ( A + B ) {\displaystyle {(A+B)}} plusz 1 {\displaystyle 1}
L L H L A ¯ + B {\displaystyle {\overline {A}}+B} A B ¯ {\displaystyle A{\overline {B}}} mínusz 1 {\displaystyle 1} A B ¯ {\displaystyle A{\overline {B}}} A ¯ B {\displaystyle {\overline {A}}B} A + B ¯ {\displaystyle A+{\overline {B}}} ( A + B ¯ ) {\displaystyle (A+{\overline {B}})} plusz 1 {\displaystyle 1}
L L H H Logikai 1 1 {\displaystyle -1}
(kettes komplemens)
0 {\displaystyle 0} (nulla) Logikai 0 1 {\displaystyle -1}
(kettes komplemens)
0 {\displaystyle 0} (nulla)
L H L L A + B ¯ {\displaystyle {\overline {A+B}}} A {\displaystyle A} plusz ( A + B ¯ ) {\displaystyle (A+{\overline {B}})} A {\displaystyle A} plusz ( A + B ¯ ) {\displaystyle (A+{\overline {B}})} plusz 1 {\displaystyle 1} A B ¯ {\displaystyle {\overline {AB}}} A {\displaystyle A} plusz A B ¯ {\displaystyle A{\overline {B}}} A {\displaystyle A} plusz ( A B ¯ ) {\displaystyle (A{\overline {B}})} plusz 1 {\displaystyle 1}
L H L H B ¯ {\displaystyle {\overline {B}}} A B {\displaystyle AB} plusz ( A + B ¯ ) {\displaystyle (A+{\overline {B}})} A B {\displaystyle AB} plusz ( A + B ¯ ) {\displaystyle (A+{\overline {B}})} plusz 1 {\displaystyle 1} B ¯ {\displaystyle {\overline {B}}} ( A + B ) {\displaystyle (A+B)} plusz A B ¯ {\displaystyle A{\overline {B}}} ( A + B ) {\displaystyle (A+B)} plusz A B ¯ {\displaystyle A{\overline {B}}} plusz 1 {\displaystyle 1}
L H H L A B ¯ {\displaystyle {\overline {A\oplus B}}} A {\displaystyle A} mínusz B {\displaystyle B} mínusz 1 {\displaystyle 1} A {\displaystyle A} mínusz B {\displaystyle B} A B {\displaystyle A\oplus B} A {\displaystyle A} mínusz B {\displaystyle B} mínusz 1 {\displaystyle 1} A {\displaystyle A} mínusz B {\displaystyle B}
L H H H A + B ¯ {\displaystyle A+{\overline {B}}} A + B ¯ {\displaystyle A+{\overline {B}}} A + B ¯ {\displaystyle A+{\overline {B}}} plusz 1 {\displaystyle 1} A B ¯ {\displaystyle A{\overline {B}}} A B ¯ {\displaystyle A{\overline {B}}} mínusz 1 {\displaystyle 1} A B ¯ {\displaystyle A{\overline {B}}}
H L L L A ¯ B {\displaystyle {\overline {A}}B} A {\displaystyle A} plusz ( A + B ) {\displaystyle (A+B)} A {\displaystyle A} plusz ( A + B ) {\displaystyle (A+B)} plusz 1 {\displaystyle 1} A ¯ + B {\displaystyle {\overline {A}}+B} A {\displaystyle A} plusz A B {\displaystyle AB} A {\displaystyle A} plusz A B {\displaystyle AB} plusz 1 {\displaystyle 1}
H L L H A B {\displaystyle A\oplus B} A {\displaystyle A} plusz B {\displaystyle B} A {\displaystyle A} plusz B {\displaystyle B} plusz 1 {\displaystyle 1} A B ¯ {\displaystyle {\overline {A\oplus B}}} A {\displaystyle A} plusz B {\displaystyle B} A {\displaystyle A} plusz B {\displaystyle B} plusz 1 {\displaystyle 1}
H L H L B {\displaystyle B} A B ¯ {\displaystyle A{\overline {B}}} plusz ( A + B ) {\displaystyle (A+B)} A B ¯ {\displaystyle A{\overline {B}}} plusz ( A + B ) {\displaystyle (A+B)} plusz 1 {\displaystyle 1} B {\displaystyle B} ( A + B ¯ ) {\displaystyle (A+{\overline {B}})} plusz A B {\displaystyle AB} ( A + B ¯ ) {\displaystyle (A+{\overline {B}})} plusz A B {\displaystyle AB} plusz 1 {\displaystyle 1}
H L H H A + B {\displaystyle A+B} A + B {\displaystyle A+B} A B {\displaystyle AB} plusz 1 {\displaystyle 1} A B {\displaystyle AB} A B {\displaystyle AB} mínusz 1 {\displaystyle 1} A B {\displaystyle AB}
H H L L Logikai 0 A {\displaystyle A} plusz A {\displaystyle A} A {\displaystyle A} plusz A {\displaystyle A} plusz 1 {\displaystyle 1} Logikai 1 A {\displaystyle A} plusz A {\displaystyle A} A {\displaystyle A} plusz A {\displaystyle A} plusz 1 {\displaystyle 1}
H H L H A B ¯ {\displaystyle A{\overline {B}}} A B {\displaystyle AB} plusz A {\displaystyle A} A B {\displaystyle AB} plusz A {\displaystyle A} plusz 1 {\displaystyle 1} A + B ¯ {\displaystyle A+{\overline {B}}} ( A + B ) {\displaystyle (A+B)} plusz A {\displaystyle A} ( A + B ) {\displaystyle (A+B)} plusz A {\displaystyle A} plusz 1 {\displaystyle 1}
H H H L A B {\displaystyle AB} A B ¯ {\displaystyle A{\overline {B}}} plusz A {\displaystyle A} A B ¯ {\displaystyle A{\overline {B}}} plusz A {\displaystyle A} plusz 1 {\displaystyle 1} A + B {\displaystyle A+B} ( A + B ¯ ) {\displaystyle (A+{\overline {B}})} plusz A {\displaystyle A} ( A + B ¯ ) {\displaystyle (A+{\overline {B}})} plusz A {\displaystyle A} plusz 1 {\displaystyle 1}
H H H H A {\displaystyle A} A {\displaystyle A} A {\displaystyle A} plusz 1 {\displaystyle 1} A {\displaystyle A} A {\displaystyle A} mínusz 1 {\displaystyle 1} A {\displaystyle A}

Jelentősége

A 74181-es nagy mértékben leegyszerűsítette a számítógépek és más, nagy sebességű számításokat igénylő eszközök fejlesztését és gyártását az 1970-es évektől az 1980-as évek elejéig, és még mindig „klasszikus” ALU konstrukcióként hivatkoznak rá.[5]

A 74181-es bevezetése előtt a számítógépek CPU-i több áramköri lapot foglaltak el, és még a nagyon egyszerű számítógépek is több szekrényt töltöttek meg. A 74181 lehetővé tette, hogy egyetlen nagy nyomtatott áramköri lapon egy teljes CPU-t és bizonyos esetekben teljes számítógépet építsenek fel. A 74181 történelmileg jelentős szintet foglal el a régebbi, több áramköri kártyán elosztott diszkrét logikai funkciókon alapuló CPU-k és a modern mikroprocesszorok között, amelyek az összes CPU-funkciót egyetlen csipben integrálják. A 74181-est az 1970-es évektől kezdve különféle miniszámítógépekben és egyéb eszközökben használták, de ahogy a mikroprocesszorok teljesítménye nőtt, a CPU diszkrét komponensekből történő felépítésének gyakorlata háttérbe szorult, és a 74181-est az újabb konstrukciókban már nem alkalmazták.

Napjainkban

1994-re a 74181-en alapuló CPU-tervek üzletileg már nem voltak versenyképesek a mikroprocesszorok viszonylag alacsony ára és nagy teljesítménye miatt. A 74181-es azonban továbbra is jelen van a számítógépek felépítése és a CPU-tervezés oktatásában, mert olyan gyakorlati tervezési és kísérletezési lehetőségeket kínál, amelyek ritkán állnak a hallgatók rendelkezésére.[6]

  • Digital Electronics with VHDL (Quartus II Version) áttekintés : Journal of Modern Engineering, 7. kötet, 2. szám, 2007 tavasz.
  • A Minimal TTL Processor for Architecture Exploration (Minimális TTL processzor az architektúra felfedezéséhez) – tanulmány, amely leírja, hogyan használható a 74181 a CPU architektúra tanítására
  • A Hardware Lab for the Computer Organization Course at Small Colleges – egy másik példa arra, hogyan használják ma a 74181-et oktatási környezetben
  • 74181 + 74182 demonstráció Java alapú szimulátor
  • APOLLO181 (Gianluca.G, Olaszország, 2012): TTL logikából és bipoláris memóriákból épített, házi készítésű oktatási processzor, amely a Bugbook® I és II csipeken, különösen a 74181-en alapul
  • Build Your Computer using LOGIC & MEMORY, before the advent of microprocessor (Építs számítógépet LOGIKA és MEMÓRIA segítségével, a mikroprocesszor megjelenése előtt) – videó, amely bemutatja a 74181 ALU történetét és használatát az oktatásban

Számítógépek

Sok számítógépes CPU és alrendszer alapult a 74181-en, közöttük számos történetileg jelentős modell.

  • NOVA – Az első széles körben elérhető 16 bites miniszámítógép, amelyet a Data General gyártott. A NOVA 1200 volt az első kereskedelmi célú miniszámítógép 1970-ben, amely a 74181-et használta.[7]
  • A PDP–11 számos modellje[8] – minden idők legnépszerűbb miniszámítógépe,[9] a Digital Equipment Corporation gyártotta
  • Xerox Alto – az első számítógép, amely az asztal-metafórát és a grafikus felhasználói felületet (GUI) használja[10][11]
  • VAX-11/780 – az első VAX, az 1980-as évek legnépszerűbb 32 bites számítógépe,[9] szintén a Digital Equipment Corp. gyártmánya[12]
  • Three Rivers PERQ – kereskedelmi célú számítógépes munkaállomás a Xerox Alto hatása alatt, először 1979-ben adták ki[13][14]
  • Computer Automation Naked Mini LSI – az LSI IC tesztberendezésekben és folyamatirányításban használt számítógép
  • KMC11 – perifériaprocesszor a Digital Equipment Corporation PDP–11 számára[15]
  • FPP-12 – lebegőpontos egység a Digital Equipment Corporation (DEC) PDP–12 számára[16]
  • Wang 2200 CPU (CPU-nként egy 74181)[17] és lemezvezérlő (vezérlőnként két 74181)[18]
  • TI-990 – a Texas Instruments 16 bites miniszámítógép-sorozata
  • Honeywell 1100 opció – az úgynevezett „tudományos egység” kiegészítő a Honeywell H200/H2000 sorozatú nagyszámítógépekhez
  • Datapoint 2200 Version II[19] és az ezt követő változatok: Datapoint 5500, 6600, és 1800/3800 – az Intel 8008 architektúráját alapvetően meghatározó számítógép
  • Cogar System 4 / Singer 1501 / ICL 1501 intelligens terminál[20]
  • Varian Data Machines – V70 sorozat, 16 bites miniszámítógépek

Egyéb felhasználás

  • Vectorbeam – a Cinematronics által különféle játéktermi játékokhoz, köztük a Space Wars, Starhawk, Warrior, Star Castle és mások által használt (arcade) játékplatform három 25LS181 csipet használ 12 bites processzorában.[21]


Jegyzetek

  1. Logik, Informationstheorie (német nyelven). De Gruyter, 115. o. (2017. május 27.). ISBN 9783110477504 
  2. Chapter 6: Structure, Computer Structures: Principles and Examples, 63. o. „The earliest and most famous chip, the 74181 arithmetic logic unit (ALU), provided up to 32 functions of two 4-bit variables. / (A legkorábbi és leghíresebb csip, a 74181-es aritmetikai logikai egység (ALU) két 4 bites változó 32 függvényét biztosította.)” 
  3. (1991. október 1.) „Novel Optical Computer Architecture Utilizing Reconfigurable Interconnects”, 23. o. „Logika diagram/ábra/rajz/görbe/grafikon a 74181 számára... Van 63 logikai gates.” 
  4. SN54LS181, SN54S181 SN74LS181, SN 74S181 ARITHMETIC LOGIC UNITS/FUNCTION GENERATORS. Texas Instruments , 1988. március 1.
  5. (1997. szeptember 15.) „Kestrel: Design of an 8-bit SIMD parallel processor”. Proc. 17th Conf. on Advanced Research in VLSI. „date=September 15–17, 1997” 
  6. Bradford J. Rodriguez. „A Minimal TTL Processor for Architecture Exploration”. Proceedings of the 1994 ACM Symposium on Applied Computing. „The study of computer architecture is often an abstract, paper exercise. Students cannot probe the inner workings of a single-chip microprocessor, and few discrete-logic machines are open to student inspection. / (A számítógép-architektúra tanulmányozása gyakran absztrakt, papíralapú feladat. A hallgatók nem tudják megvizsgálni egy egycsipes mikroprocesszor belső működését, és kevés diszkrét logikai gép áll a hallgatók rendelkezésére.)” 
  7. History of the 74181 in commercial minicomputers. [2019. november 2-i dátummal az eredetiből archiválva].
  8. Computer Engineering: A DEC View of Hardware Systems Design. Digital Press, 335,336. o. (1979. augusztus 1.). ISBN 0-932376-00-2 
  9. a b Bob Supnik (2004. augusztus 31.). „Simulators: Virtual Machines of the Past (and Future)”. ACM Queue 2 (5).  
  10. The final demonstration of the Xerox 'Star' Computer. Computer History Museum. [2007. november 15-i dátummal az eredetiből archiválva]. (Hozzáférés: 2007. október 28.)
  11. Del Rosso, Tom (October–December 1994). „IC Corner: Early IC ALU'S In The Xerox Alto”. The Analytical Engine 2 (2), 17. o, Kiadó: Computer History Association of California.  
  12. VAX-11/780, in Digital Computing Timeline, 1977. Digital Information Research Services, via Microsoft Research (research.microsoft.com), 1998. április 30. (Hozzáférés: 2007. november 2.)
  13. Duell (1995. május 1.). „More On The Peripatetic 74x181”. The Analytical Engine 2 (3), 27. o, Kiadó: Computer History Association of California.  
  14. Böszörményi László, Kovács László, Martos Balázs, Szabó Miklós: Liliputh / Tanulmányok (MTA SZTAKI) (168) (magyar nyelven) (pdf). SZTAKI Tanulmányok pp. 23/88. MTA SZTAKI, 1985. (Hozzáférés: 2024. március 1.) ISBN 963-311-206-0, ISSN: 0324-2951, 2.2.3 PERQ – rövid leírás
  15. Early PDP-11 peripherals. [2011. július 25-i dátummal az eredetiből archiválva]. (Hozzáférés: 2007. október 28.)
  16. FPP12A floating-point processor user's manual. Digital Equipment Corporation, 5-24. o.. DEC-12-HFPPA-A-D (1973. december 1.) 
  17. Wang 2200 Microarchitecture Description
  18. Wang 2200 Disk Channel Description
  19. Datapoint 2200 Version I and II Drawing Package, 36. o. 
  20. ICL 1501 Intelligent Terminal. Allard's Computer Museum Groningen . [2015. április 23-i dátummal az eredetiből archiválva]. (Hozzáférés: 2015. április 23.)
  21. [Op%20&%20Maintenance%20[English]_djvu.txt Star Castle Op and Maintenance]. Cinematronics, Inc. (1980. május 27.) 

Fordítás

Ez a szócikk részben vagy egészben a(z) 74181 című angol Wikipédia-szócikk ezen változatának fordításán alapul. Az eredeti cikk szerkesztőit annak laptörténete sorolja fel. Ez a jelzés csupán a megfogalmazás eredetét és a szerzői jogokat jelzi, nem szolgál a cikkben szereplő információk forrásmegjelöléseként.

Források

További információk

Gyártói adatlapok:

  • Texas Instruments (és 74182 look-ahead carry generator)
  • Signetics
  • Philips
  • Fairchild.

A csip működése és egyéb részletek

  • Shirriff, Ken: Inside the vintage 74181 ALU chip: how it works and why it's so strange (angol nyelven). Ken Shirriff, 2017. március. (Hozzáférés: 2024. március 1.) (A jó öreg 74181 ALU csip belsejében: hogy működik és miért olyan furcsa)


Kapcsolódó szócikkek

  • Aritmetikai-logikai egység
  • Mikroütemező
  • 7400-as sorozatú integrált áramkörök
  • A 7400-as sorozatú integrált áramkörök listája
  • Informatika Informatikai portál • összefoglaló, színes tartalomajánló lap