Az aritmetikai logikai egység ( ALU ; angolul aritmetic logic unit, ALU ) egy olyan processzor egység , amely a vezérlőeszköz vezérlése alatt aritmetikai és logikai transzformációkat (az elemiektől kezdve ) hajt végre adatokon, amelyeket ebben az esetben operandusoknak nevezünk . Az operandusok bitességét általában a gépszó méretének vagy hosszának nevezik .
Az aritmetikai logikai egység fogalmát 1945-ben John von Neumann javasolta az EDVAC -ról szóló publikációjában ; a mára klasszikussá vált Neumann-féle számítógépes architektúra egyik alkotóeleme lett .
A bináris (kétjegyű) kimenettel rendelkező egybites bináris bináris (kétoperandusos) ALU legfeljebb bináris (kétoperandusos) funkciókat (műveleteket) tud végrehajtani bináris (kétjegyű) kimenettel.
Az aritmetikai-logikai egység a függvények teljesítményétől függően két részre osztható:
Az aritmetikai logikai egység felépítése feltételesen tartalmazza az Rg1 - Rg7 regisztereket, amelyek az N1, N2, ... NS operatív vagy passzív memóriából érkező információk feldolgozására szolgálnak, valamint logikai áramkörök, amelyek a vezérlőtől érkező mikroutasítások alapján szavak feldolgozására szolgálnak. eszköz.
A mikroparancsoknak két típusa van: a külső - olyan mikroparancsok, amelyek külső forrásból lépnek be az ALU-ba, és abban információtranszformációt okoznak, illetve belső - azok, amelyek az ALU-ban generálódnak és a mikroprogram eszközére hatnak, így megváltoztatják a parancsok normál sorrendjét.
Az aritmetikai logikai egységben szereplő regiszterek jellemző funkciói:
A műveleti regiszterek egy része a tartalmukkal kapcsolatos műveletek végrehajtására vonatkozó utasításban megcímezhető, és ezeket program-elérhetőnek nevezzük. Ezek a regiszterek a következőket tartalmazzák: összeadó, indexregiszterek és néhány segédregiszter. A fennmaradó regisztereket nem lehet megcímezni a programban, vagyis program által elérhetetlenek.
A működtető eszközök a feldolgozott információ típusa, feldolgozási módja és logikai felépítése szerint osztályozhatók.
Az ALU ilyen összetett logikai struktúrája az egymástól eltérő mikroműveletek számával jellemezhető, amelyek szükségesek az aritmetikai logikai egységhez rendelt teljes feladat-együttes elvégzéséhez. Az egyes regiszterek bemenetén a megfelelő logikai áramkörök összeállításra kerülnek, olyan kapcsolatokat biztosítva a regiszterek között, amelyek lehetővé teszik a megadott mikroműveletek végrehajtását. A szavakkal kapcsolatos műveletek végrehajtása bizonyos mikroműveletek végrehajtására korlátozódik, amelyek szabályozzák a szavak átvitelét az ALU-ba, és a szavak átalakítását célzó műveleteket. A mikroparancsok végrehajtási sorrendjét a műveletek végrehajtására szolgáló algoritmus határozza meg. Vagyis az ALU regiszterek és funkcióik közötti kapcsolatok főként a logikai műveletek végrehajtásának elfogadott módszertanától függenek, beleértve az aritmetikát vagy a speciális aritmetikát.
Funkcionálisan az ALU két regiszterből (Register1, Register 2), egy vezérlő áramkörből és egy összeadóból áll [1] . Az aritmetikai művelet ciklusokban történik:
Példa ALU műveletre egy kivonási műveleten:
Az aritmetikai logikai egységben végrehajtott összes művelet logikai művelet (függvény), amelyek a következő csoportokra oszthatók:
A modern általános célú számítógépek általában a fenti csoportok mindegyikének műveleteit megvalósítják, és a kis- és mikroszámítógépek , mikroprocesszorok és speciális számítógépek gyakran nem rendelkeznek lebegőpontos aritmetikai, decimális aritmetikai és alfanumerikus mezők műveleteihez szükséges berendezéssel. Ebben az esetben ezeket a műveleteket speciális szubrutinok hajtják végre.
Az aritmetikai műveletek közé tartozik az összeadás , a kivonás , a modulo kivonás ("rövid műveletek"), valamint a szorzás és osztás ("hosszú műveletek"). A logikai műveletek csoportja a diszjunkció (logikai VAGY) és a konjunkció (logikai ÉS) műveletekből áll többbites bináris szavakon, az egyenlőség kódjainak összehasonlítása. A speciális aritmetikai műveletek közé tartozik a normalizálás, az aritmetikai eltolás (csak a digitális bitek tolódnak el, az előjelbit a helyén marad), a logikai eltolás (az előjelbit a digitális bitekkel együtt tolódik el). Az alfanumerikus információk szerkesztésére szolgáló műveletek csoportja kiterjedt. Az ALU-ban minden egyes művelet egy logikai függvény vagy logikai függvénysorozat, amelyet bináris logika ír le bináris számítógépeknél, hármas logikát hármas számítógépeknél , kvaterner logikát kvaterner számítógépeknél, decimális logikát decimális számítógépeknél stb.
Az aritmetikai logikai egységeket az operandusokra gyakorolt hatásuk szerint soros és párhuzamos egységekre osztjuk. A soros eszközökben az operandusokat soros kódban ábrázolják, és a műveleteket időben egymás után hajtják végre az egyes bitjeiken; párhuzamosan - párhuzamos kóddal, és a műveleteket időben párhuzamosan hajtják végre az operandusok összes bitjein.
A számok ábrázolásának módja szerint aritmetikai-logikai eszközöket különböztetünk meg:
Az elemek és csomópontok használatának jellege szerint az ALU-kat blokkokra és többfunkciósra osztják. A blokkkészülékben a fix és lebegőpontos számokkal, decimális számokkal, alfanumerikus mezőkkel végzett műveletek külön blokkokban történnek, miközben a műveleti sebességet növelik, mivel a blokkok párhuzamosan is képesek elvégezni a megfelelő műveleteket, de a berendezés költségei jelentősen megnőnek. A többfunkciós ALU-kban a számábrázolás minden formájához tartozó műveleteket ugyanazok az áramkörök hajtják végre, amelyeket a kívánt működési módtól függően a megfelelő módon kapcsolnak.
Az aritmetikai logikai egység funkcióit tekintve olyan mikroműveleteket végrehajtó egység, amely biztosítja az operandusok vételét más eszközökről (például memóriából), azok transzformációját, valamint a transzformációs eredmények más eszközöknek történő kiadását. Az aritmetikai-logikai egységet egy vezérlőegység vezérli, amely vezérlőjeleket generál, amelyek bizonyos mikroműveletek végrehajtását kezdeményezik az ALU-ban. A vezérlőblokk által generált jelek sorrendjét a parancs műveleti kódja és a riasztási jelek határozzák meg.
processzortechnológiák | Digitális|||||||||
---|---|---|---|---|---|---|---|---|---|
Építészet | |||||||||
Instruction Set Architecture | |||||||||
gépszó | |||||||||
Párhuzamosság |
| ||||||||
Megvalósítások | |||||||||
Alkatrészek | |||||||||
Energiagazdálkodás |