Tietokonejärjestelmässä ALU on keskusyksikön pääkomponentti, joka tarkoittaa aritmeettista logiikkaa ja suorittaa aritmeettisia ja loogisia operaatioita. Se tunnetaan myös kokonaislukuyksikkönä (IU), joka on integroitu piiri CPU:ssa tai GPU:ssa, joka on viimeinen komponentti, joka suorittaa laskelmia prosessorissa. Se pystyy suorittamaan kaikki prosessit, jotka liittyvät aritmeettisiin ja loogisiin operaatioihin, kuten yhteen-, vähennys- ja siirtotoimintoihin, mukaan lukien Boolen vertailut (XOR-, OR-, AND- ja NOT-operaatiot). Myös binääriluvut voivat suorittaa matemaattisia ja bittikohtaisia operaatioita. Aritmeettinen logiikkayksikkö on jaettu AU:ksi (aritmeettinen yksikkö) ja LU (looginen yksikkö). ALU:n käyttämät operandit ja koodi kertovat sille, mitkä toiminnot on suoritettava syötetietojen mukaan. Kun ALU on suorittanut syötteen käsittelyn, tiedot lähetetään tietokoneen muistiin.
poikkeus heittää java
Lukuun ottamatta yhteen- ja vähennyslaskutoimituksia, ALU:t käsittelevät kahden kokonaisluvun kertomista, koska ne on suunniteltu suorittamaan kokonaislukulaskelmia. siksi sen tulos on myös kokonaisluku. ALU ei kuitenkaan yleensä suorita jakooperaatioita, koska jakooperaatiot voivat tuottaa tuloksen liukulukussa. Sen sijaan liukulukuyksikkö (FPU) yleensä hoitaa jakotoiminnot; FPU voi suorittaa myös muita ei-kokonaislukulaskelmia.
Lisäksi insinöörit voivat suunnitella ALU:n suorittamaan minkä tahansa toiminnan. ALU tulee kuitenkin kalliimmaksi, kun toiminnot monimutkaistuvat, koska ALU tuhoaa enemmän lämpöä ja vie enemmän tilaa CPU:ssa. Tästä syystä insinöörit tekevät tehokkaan ALU:n, mikä takaa, että CPU on myös nopea ja tehokas.
CPU:n tarvitsemat laskutoimitukset hoitaa aritmeettinen logiikkayksikkö (ALU); useimmat niistä ovat luonteeltaan loogisia. Jos suorittimesta tehdään tehokkaampi, se on tehty ALU: n perusteella. Sitten se tuottaa enemmän lämpöä ja vie enemmän tehoa tai energiaa. Siksi ALU:n monimutkaisuuden ja tehokkuuden välillä on oltava maltillista, eikä se saa olla kalliimpaa. Tämä on tärkein syy siihen, että nopeammat prosessorit ovat kalliimpia; siksi ne vievät paljon tehoa ja tuhoavat enemmän lämpöä. Aritmeettiset ja logiikkaoperaatiot ovat tärkeimmät ALU:n suorittamat operaatiot; se suorittaa myös bitinsiirtotoimintoja.
Vaikka ALU on pääkomponentti prosessorissa, ALU:n rakenne ja toiminta voivat olla erilaisia eri prosessoreissa. Jotkin ALU:t on suunniteltu suorittamaan vain kokonaislukulaskelmia, ja jotkut ovat liukulukuoperaatioita varten. Jotkut prosessorit sisältävät yhden aritmeettisen logiikkayksikön toimintojen suorittamista varten, ja toiset voivat sisältää useita ALU:ita laskelmien suorittamista varten. ALU:n suorittamat toiminnot ovat:
Aritmeettisen logiikkayksikön (ALU) signaalit
ALU sisältää useita sähköisiä tulo- ja lähtöliitäntöjä, jotka johtivat digitaalisten signaalien välittämiseen ulkoisen elektroniikan ja ALU:n välillä.
ALU-tulo vastaanottaa signaalit ulkoisista piireistä ja ulkoinen elektroniikka vastaanottaa signaalit ALU:sta.
Tiedot: ALU sisältää kolme rinnakkaista väylää, jotka sisältävät kaksi tulo- ja lähtöoperandia. Nämä kolme väylää käsittelevät signaalien määrän, jotka ovat samat.
Opcode: Kun ALU aikoo suorittaa toiminnon, operaatiovalintakoodilla kuvataan, minkä tyyppisen toiminnon ALU aikoo suorittaa aritmeettisen tai loogisen operaation.
Tila
ALU:n kokoonpanot
Alla on kuvaus siitä, kuinka ALU toimii prosessorin kanssa. Jokainen aritmeettinen logiikkayksikkö sisältää seuraavat kokoonpanot:
- Ohjesarjan arkkitehtuuri
- Akku
- Pino
- Rekisteröidy rekisteröityäksesi
- Rekisteröi pino
- Rekisteröi muisti
Akku
Jokaisen operaation välituloksen sisältää akku, mikä tarkoittaa, että Instruction Set Architecture (ISA) ei ole monimutkaisempi, koska siinä vaaditaan vain yksi bitti.
Yleensä ne ovat paljon nopeita ja vähemmän monimutkaisia, mutta ne tekevät akusta vakaamman; lisäkoodit on kirjoitettava täyttääksesi sen oikeilla arvoilla. Valitettavasti yhdellä prosessorilla on erittäin vaikea löytää akkuja rinnakkaisuuden suorittamiseksi. Esimerkki akusta on pöytälaskin.
Pino
Aina kun viimeisimmät toiminnot suoritetaan, ne tallennetaan pinoon, joka pitää ohjelmat ylhäältä alas -järjestyksessä, mikä on pieni rekisteri. Kun uudet ohjelmat lisätään suoritettaviksi, ne työntävät laittaakseen vanhat ohjelmat.
Rekisteröidy - Rekisteröi arkkitehtuuri
Se sisältää paikan 1 kohdekäskylle ja 2 lähdekäskylle, jotka tunnetaan myös 3-rekisterin käyttökoneena. Tämän käskysarjaarkkitehtuurin on oltava pitempi kolmen operandin, 1 kohteen ja 2 lähteen tallentamiseksi. Operaatioiden päätyttyä tulosten kirjoittaminen takaisin Rekisteriin olisi vaikeaa, ja myös sanan pituuden tulisi olla pidempi. Se voi kuitenkin aiheuttaa enemmän ongelmia synkronoinnin kanssa, jos tässä paikassa noudatetaan takaisinkirjoitussääntöä.
MIPS-komponentti on esimerkki rekisteristä rekisteriin -arkkitehtuurista. Syöttössä se käyttää kahta operandia ja ulostulossa kolmatta erillistä komponenttia. Tallennustilaa on vaikea ylläpitää, koska jokainen tarvitsee erillisen muistin; siksi sen on oltava aina premium-luokkaa. Lisäksi joidenkin toimintojen suorittaminen voi olla vaikeaa.
Rekisteröidy - Pinoarkkitehtuuri
Yleensä rekisteri- ja akkutoimintojen yhdistelmä tunnetaan nimellä Register - Stack Architecture. Rekisteripinoarkkitehtuurissa suoritettavat toiminnot työnnetään pinon yläosaan. Ja sen tulokset pidetään pinon yläosassa. Käänteisen kiillotusmenetelmän avulla voidaan pilkkoa monimutkaisempia matemaattisia operaatioita. Jotkut ohjelmoijat käyttävät operandia edustamaan binääripuun käsitettä. Se tarkoittaa, että käänteinen kiillotusmenetelmä voi olla helppoa näille ohjelmoijille, kun taas se voi olla vaikeaa muille ohjelmoijille. Push- ja Pop-toimintojen suorittamiseksi on luotava uusi laitteisto.
Rekisteröinti ja muisti
Tässä arkkitehtuurissa yksi operandi tulee rekisteristä ja toinen ulkoisesta muistista, koska se on yksi monimutkaisimmista arkkitehtuureista. Syynä tähän on, että jokainen ohjelma voi olla hyvin pitkä, koska ne vaativat, että ne pysyvät täydessä muistitilassa. Yleensä tämä tekniikka on integroitu rekisteri-rekisterirekisteritekniikkaan, eikä sitä käytännössä voida käyttää erikseen.
ALU:n edut
ALU:lla on useita etuja, jotka ovat seuraavat:
- Se tukee rinnakkaista arkkitehtuuria ja korkean suorituskyvyn sovelluksia.
- Sillä on kyky saada haluttu tulos samanaikaisesti ja yhdistää kokonaisluku- ja liukulukumuuttujia.
- Se pystyy suorittamaan ohjeita erittäin suurelle sarjalle ja sillä on suuri tarkkuusalue.
- ALU voi yhdistää kaksi aritmeettista operaatiota samassa koodissa, kuten yhteen- ja kertolasku tai yhteen- ja vähennyslasku, tai mitkä tahansa kaksi operandia. Tapauksessa A+B*C.
- Ne pysyvät yhtenäisinä koko ohjelman ajan, ja ne on sijoitettu siten, että ne eivät voi keskeyttää osaa välillä.
- Yleensä se on erittäin nopea; joten se tuottaa tuloksia nopeasti.
- ALU ei aiheuta herkkyysongelmia eikä muistin tuhlausta.
- Ne ovat halvempia ja minimoivat logiikkaportin vaatimukset.
ALU:n haitat
ALU:n haittoja käsitellään alla:
- ALU:ssa kelluvilla muuttujilla on enemmän viiveitä, eikä suunniteltua säädintä ole helppo ymmärtää.
- Vikoja esiintyisi tuloksessamme, jos muistitila olisi selvä.
- Amatöörejä on vaikea ymmärtää, koska heidän piirinsä on monimutkainen; myös liukuhihnan käsite on monimutkainen ymmärtää.
- ALU:n todistettu haittapuoli on, että latenssissa on epäsäännöllisyyksiä.
- Toinen huono puoli on pyöristäminen, joka vaikuttaa tarkkuuteen.