V računalniškem sistemu je ALU glavna komponenta centralne procesne enote, ki je kratica za aritmetično logično enoto in izvaja aritmetične in logične operacije. Znana je tudi kot celoštevilska enota (IU), ki je integrirano vezje znotraj CPE ali GPE, ki je zadnja komponenta za izvajanje izračunov v procesorju. Ima možnost izvajanja vseh procesov, povezanih z aritmetičnimi in logičnimi operacijami, kot so operacije seštevanja, odštevanja in premikanja, vključno z logičnimi primerjavami (operacije XOR, OR, IN in NE). Poleg tega lahko binarna števila izvajajo matematične in bitne operacije. Aritmetično logična enota je razdeljena na AU (aritmetična enota) in LU (logična enota). Operandi in koda, ki jo uporablja ALU, povedo, katere operacije mora izvesti glede na vhodne podatke. Ko ALU zaključi obdelavo vnosa, se informacije pošljejo v pomnilnik računalnika.
java array sort
Razen izvajanja izračunov, povezanih s seštevanjem in odštevanjem, ALU obravnavajo množenje dveh celih števil, saj so zasnovani za izvajanje celoštevilskih izračunov; zato je tudi njegov rezultat celo število. Vendar operacij deljenja običajno morda ne izvaja ALU, saj lahko operacije deljenja dajo rezultat v številu s plavajočo vejico. Namesto tega enota s plavajočo vejico (FPU) običajno obravnava operacije deljenja; FPU lahko izvede tudi druge neceloštevilske izračune.
Poleg tega lahko inženirji oblikujejo ALU za izvajanje katere koli vrste operacije. Vendar postane ALU dražji, ko postanejo operacije bolj zapletene, ker ALU uniči več toplote in zavzame več prostora v CPE. To je razlog, da so inženirji izdelali zmogljivo ALU, ki zagotavlja, da je tudi CPE hiter in zmogljiv.
Izračune, ki jih potrebuje CPE, upravlja aritmetično logična enota (ALU); večina operacij med njimi je logične narave. Če je CPU izdelan močnejši, je izdelan na osnovi ALU. Nato ustvari več toplote in porabi več moči ali energije. Zato je treba biti zmeren med tem, kako zapleten in zmogljiv je ALU, in ne sme biti dražji. To je glavni razlog, da so hitrejši procesorji dražji; zato vzamejo veliko energije in uničijo več toplote. Aritmetične in logične operacije so glavne operacije, ki jih izvaja ALU; izvaja tudi bitne operacije.
Čeprav je ALU glavna komponenta v procesorju, se lahko zasnova in funkcija ALU razlikujeta v različnih procesorjih. Na primer, nekatere ALU so zasnovane za izvajanje samo celoštevilskih izračunov, nekatere pa za operacije s plavajočo vejico. Nekateri procesorji vključujejo eno samo aritmetično logično enoto za izvajanje operacij, drugi pa lahko vsebujejo številne ALU za dokončanje izračunov. Operacije, ki jih izvaja ALU, so:
Signali aritmetične logične enote (ALU).
ALU vsebuje različne vhodne in izhodne električne povezave, kar je privedlo do prenosa digitalnih signalov med zunanjo elektroniko in ALU.
Vhod ALU prejema signale iz zunanjih vezij, v odgovor pa zunanja elektronika oddaja signale iz ALU.
podatki: ALU vsebuje tri vzporedna vodila, ki vključujejo dva vhodna in izhodna operanda. Ta tri vodila obravnavajo število signalov, ki so enaki.
Opcode: Ko bo ALU izvedel operacijo, je s kodo za izbiro operacije opisano, katero vrsto operacije bo ALU izvedel aritmetično ali logično operacijo.
Stanje
Konfiguracije ALU
Opis interakcije ALU s procesorjem je podan spodaj. Vsaka aritmetično logična enota vključuje naslednje konfiguracije:
- Arhitektura nabora navodil
- Akumulator
- Stack
- Registrirajte se za registracijo
- Register Stack
- Registrirajte pomnilnik
Akumulator
Vmesni rezultat vsake operacije vsebuje akumulator, kar pomeni, da arhitektura nabora ukazov (ISA) ni bolj zapletena, ker je potreben le en bit.
Na splošno so veliko hitrejši in manj zapleteni, vendar zato, da je akumulator bolj stabilen; za zapolnitev z ustreznimi vrednostmi je treba napisati dodatne kode. Na žalost je z enim samim procesorjem zelo težko najti akumulatorje za izvajanje paralelizma. Primer akumulatorja je namizni kalkulator.
Stack
Kadarkoli se izvedejo zadnje operacije, se te shranijo v sklad, ki vsebuje programe v vrstnem redu od zgoraj navzdol, kar je majhen register. Ko so novi programi dodani za izvajanje, pritisnejo na namestitev starih programov.
Register-Register Architecture
Vključuje prostor za 1 ciljno navodilo in 2 izvorna navodila, znan tudi kot operacijski stroj s 3 registri. Ta arhitektura nabora ukazov mora biti daljša za shranjevanje treh operandov, 1 cilja in 2 vira. Po koncu operacij bi bil vpis rezultatov nazaj v Evidence otežen, pa tudi dolžina besede bi morala biti daljša. Vendar pa lahko pride do več težav s sinhronizacijo, če se na tem mestu upošteva pravilo povratnega pisanja.
Komponenta MIPS je primer arhitekture register-register. Za vnos uporablja dva operanda, za izhod pa tretjo ločeno komponento. Prostor za shranjevanje je težko vzdrževati, saj vsak potrebuje poseben pomnilnik; zato mora biti ves čas premium. Poleg tega bo morda težko izvesti nekatere operacije.
Register - Stack Architecture
Na splošno je kombinacija operacij Register in Accumulator znana kot arhitektura Register - Stack. Operacije, ki jih je treba izvesti v arhitekturi sklada registrov, so potisnjene na vrh sklada. Njegovi rezultati so na vrhu sklada. S pomočjo metode Reverse polish je mogoče razčleniti bolj zapletene matematične operacije. Nekateri programerji za predstavitev operandov uporabljajo koncept binarnega drevesa. To pomeni, da je lahko metodologija obratnega poliranja enostavna za te programerje, medtem ko je lahko za druge programerje težka. Za izvajanje operacij Push in Pop je treba ustvariti novo strojno opremo.
Register in pomnilnik
Pri tej arhitekturi en operand prihaja iz registra, drugi pa iz zunanjega pomnilnika, saj je to ena najbolj zapletenih arhitektur. Razlog za to je, da je lahko vsak program zelo dolg, saj zahteva, da ostane v polnem pomnilniškem prostoru. Na splošno je ta tehnologija integrirana s tehnologijo Register-Register Register in je praktično ni mogoče uporabljati ločeno.
Prednosti ALU
ALU ima različne prednosti, ki so naslednje:
- Podpira vzporedno arhitekturo in aplikacije z visoko zmogljivostjo.
- Ima zmožnost istočasnega pridobivanja želenega izhoda in kombiniranja celih števil in spremenljivk s plavajočo vejico.
- Ima zmožnost izvajanja navodil na zelo velikem nizu in ima visoko natančnost.
- ALU lahko združi dve aritmetični operaciji v isti kodi, kot sta seštevanje in množenje ali seštevanje in odštevanje, ali katera koli dva operanda. Za primer A+B*C.
- Skozi celoten program ostajajo enotni, razporejeni pa so tako, da ne morejo prekiniti vmesnega dela.
- Na splošno je zelo hiter; zato hitro zagotavlja rezultate.
- Z ALU ni težav z občutljivostjo in izgube pomnilnika.
- So cenejši in zmanjšujejo zahteve glede logičnih vrat.
Slabosti ALU
Slabosti ALU so obravnavane spodaj:
- Pri ALU imajo plavajoče spremenljivke več zakasnitev, oblikovanega krmilnika pa ni lahko razumeti.
- Napake bi se pojavile v našem rezultatu, če bi bil pomnilniški prostor določen.
- Težko je razumeti amaterje, saj je njihov krog zapleten; prav tako je koncept cevovoda zapleten za razumevanje.
- Dokazana pomanjkljivost ALU je, da obstajajo nepravilnosti v zakasnitvah.
- Druga pomanjkljivost je zaokroževanje, ki vpliva na natančnost.