A számítógépes rendszerben az ALU a központi feldolgozó egység fő összetevője, amely az aritmetikai logikai egység rövidítése, és aritmetikai és logikai műveleteket hajt végre. Integer unit (IU) néven is ismert, amely egy CPU-n vagy GPU-n belüli integrált áramkör, amely az utolsó komponens, amely számításokat végez a processzorban. Képes minden olyan aritmetikai és logikai művelethez kapcsolódó folyamatot végrehajtani, mint az összeadás, kivonás és eltolás, beleértve a logikai összehasonlításokat (XOR, VAGY, ÉS és NEM műveletek). A bináris számok matematikai és bitenkénti műveleteket is végrehajthatnak. Az aritmetikai logikai egység AU-ra (aritmetikai egység) és LU-ra (logikai egységre) van felosztva. Az ALU által használt operandusok és kódok megmondják, hogy mely műveleteket kell végrehajtani a bemeneti adatok szerint. Amikor az ALU befejezi a bemenet feldolgozását, az információ a számítógép memóriájába kerül.
Az összeadáshoz és kivonáshoz kapcsolódó számítások elvégzése kivételével az ALU-k két egész szám szorzását kezelik, mivel egész számok számítását hajtják végre; ezért az eredménye is egész szám. Az osztási műveleteket azonban általában nem hajthatja végre az ALU, mivel az osztási műveletek lebegőpontos számot eredményezhetnek. Ehelyett általában a lebegőpontos egység (FPU) kezeli az osztási műveleteket; egyéb nem egész számításokat is végrehajthat az FPU.
Ezenkívül a mérnökök megtervezhetik az ALU-t bármilyen típusú művelet végrehajtására. Az ALU azonban költségesebbé válik, ahogy a műveletek bonyolultabbá válnak, mivel az ALU több hőt pusztít el, és több helyet foglal el a CPU-ban. Ez az oka annak, hogy erős ALU-t készítsenek a mérnökök, ami garantálja, hogy a CPU gyors és erős is.
A CPU által szükséges számításokat az aritmetikai logikai egység (ALU) kezeli; a legtöbb művelet közöttük logikai jellegű. Ha a CPU-t erősebbé teszik, akkor az ALU alapján készül. Ezután több hőt termel, és több energiát vagy energiát vesz fel. Ezért mérsékeltnek kell lennie az ALU összetettsége és teljesítménye között, és nem lehet költségesebb. Ez a fő oka annak, hogy a gyorsabb CPU-k drágábbak; ezért sok energiát vesznek fel és több hőt pusztítanak el. Az ALU által végrehajtott fő műveletek az aritmetikai és logikai műveletek; biteltolási műveleteket is végez.
Bár az ALU a processzor egyik fő összetevője, az ALU kialakítása és funkciója eltérő lehet a különböző processzorokban. Egyes ALU-kat úgy tervezték, hogy csak egész számokat végezzenek, mások pedig lebegőpontos műveleteket. Egyes processzorok egyetlen aritmetikai logikai egységet tartalmaznak a műveletek végrehajtásához, mások pedig számos ALU-t tartalmazhatnak a számítások elvégzéséhez. Az ALU által végzett műveletek a következők:
Aritmetikai logikai egység (ALU) jelei
Az ALU számos bemeneti és kimeneti elektromos csatlakozást tartalmaz, amelyek a digitális jelek a külső elektronika és az ALU között történő öntéséhez vezettek.
Az ALU bemenet jeleket kap a külső áramköröktől, válaszul pedig a külső elektronika kap jeleket az ALU-tól.
részleges differenciálódás a latexben
Adat: Az ALU három párhuzamos buszt tartalmaz, amelyek két bemeneti és kimeneti operandust tartalmaznak. Ez a három busz kezeli a jelek számát, amelyek azonosak.
Opcode: Amikor az ALU végrehajtja a műveletet, a műveletválasztó kód leírja, hogy egy ALU milyen típusú műveletet fog végrehajtani aritmetikai vagy logikai művelettel.
Állapot
Az ALU konfigurációi
Az alábbiakban az ALU és a processzor közötti interakció leírása olvasható. Minden aritmetikai logikai egység a következő konfigurációkat tartalmazza:
- Instruction Set Architecture
- Akkumulátor
- Kazal
- Regisztráljon a regisztrációhoz
- Regisztráció Stack
- Regisztrálja a memóriát
Akkumulátor
Minden művelet közbenső eredményét az akkumulátor tartalmazza, ami azt jelenti, hogy az utasításkészlet architektúra (ISA) nem bonyolultabb, mert csak egy bitet kell tartani.
Általában sokkal gyorsak és kevésbé bonyolultak, de azért, hogy az Akkumulátort stabilabbá tegyék; a további kódokat meg kell írni, hogy megfelelő értékekkel töltsük fel. Sajnos egyetlen processzorral nagyon nehéz olyan akkumulátorokat találni, amelyek párhuzamosságot hajtanak végre. Akkumulátorra példa az asztali számológép.
Kazal
A legfrissebb műveletek végrehajtása során a programokat felülről lefelé tartó veremben tárolják, amely egy kis regiszter. Amikor az új programokat hozzáadják a végrehajtáshoz, akkor lenyomják a régi programokat.
Regisztráció-Regisztráció Architecture
Tartalmaz egy helyet 1 célutasításnak és 2 forrásutasításnak, más néven 3 regiszteres műveleti gépnek. Ennek az utasításkészlet-architektúrának hosszabbnak kell lennie három operandus, 1 cél és 2 forrás tárolására. A műveletek befejezése után az eredmények visszaírása a regiszterekbe nehéz lesz, és a szó hosszának is hosszabbnak kell lennie. Ez azonban több szinkronizálási problémát okozhat, ha ezen a helyen követik a visszaírási szabályt.
A MIPS komponens egy példa a regiszter-regiszter architektúrára. A bemenethez két operandust, a kimenethez pedig egy harmadik különálló komponenst használ. A tárhelyet nehéz fenntartani, mivel mindegyiknek külön memóriára van szüksége; ezért mindenkor prémiumnak kell lennie. Ezenkívül egyes műveletek végrehajtása nehézségekbe ütközhet.
Regisztráció - Stack Architecture
Általában a regiszter és az akkumulátor műveletek kombinációja a Register - Stack Architecture néven ismert. A regiszter-verem architektúrában végrehajtandó műveletek a verem tetejére kerülnek. Az eredményeket pedig a verem tetején tartják. A fordított polírozási módszer segítségével bonyolultabb matematikai műveletek is bonthatók. Egyes programozók az operandusok ábrázolására a bináris fa fogalmát használják. Ez azt jelenti, hogy a fordított polírozás módszertana egyszerű lehet ezeknek a programozóknak, míg más programozóknak nehéz lehet. A Push és Pop műveletek végrehajtásához új hardvert kell létrehozni.
Regisztráció és memória
Ebben az architektúrában az egyik operandus a regiszterből, a másik pedig a külső memóriából származik, mivel ez az egyik legbonyolultabb architektúra. Ennek az az oka, hogy minden program nagyon hosszú lehet, mivel a teljes memóriaterületen kell tartani. Általában ez a technológia integrálva van a Register-Register Register technológiával, és gyakorlatilag nem használható külön.
java listadoboz
Az ALU előnyei
Az ALU-nak számos előnye van, amelyek a következők:
- Támogatja a párhuzamos architektúrát és a nagy teljesítményű alkalmazásokat.
- Képes egyszerre elérni a kívánt kimenetet, és kombinálni egész és lebegőpontos változókat.
- Képes nagyon nagy készleten végrehajtani az utasításokat, és nagy a pontossága.
- Két aritmetikai művelet ugyanabban a kódban, például összeadás és szorzás vagy összeadás és kivonás, vagy bármely két operandus kombinálható az ALU-val. Esetben A+B*C.
- Az egész program során egységesek maradnak, és úgy vannak elhelyezve, hogy közben ne szakítsák meg a részt.
- Általában nagyon gyors; így gyorsan eredményt ad.
- Az ALU-val nincsenek érzékenységi problémák és memóriapazarlás.
- Olcsóbbak és minimálisra csökkentik a logikai kapura vonatkozó követelményeket.
Az ALU hátrányai
Az ALU hátrányait az alábbiakban tárgyaljuk:
- Az ALU-val a lebegő változóknak több késleltetésük van, és a tervezett vezérlőt nem könnyű megérteni.
- A hibák akkor fordulnának elő az eredményünkben, ha a memóriaterület határozott lenne.
- Nehéz megérteni az amatőröket, mivel körük összetett; a csővezeték fogalmát is bonyolult megérteni.
- Az ALU bizonyított hátránya, hogy a késleltetésekben szabálytalanságok vannak.
- Egy másik hátrány a kerekítés, ami befolyásolja a pontosságot.