logo

Ce este ALU (Unitate logică aritmetică)?

În sistemul informatic, ALU este o componentă principală a unității centrale de procesare, care reprezintă unitatea logică aritmetică și efectuează operații aritmetice și logice. Este, de asemenea, cunoscută ca o unitate întreagă (IU) care este un circuit integrat într-un CPU sau GPU, care este ultima componentă care efectuează calcule în procesor. Are capacitatea de a efectua toate procesele legate de operații aritmetice și logice, cum ar fi operațiuni de adunare, scădere și deplasare, inclusiv comparații booleene (operații XOR, OR, AND și NOT). De asemenea, numerele binare pot realiza operații matematice și pe biți. Unitatea logică aritmetică este împărțită în AU (unitate aritmetică) și LU (unitate logică). Operanzii și codul folosit de ALU îi indică operațiunile care trebuie efectuate în funcție de datele de intrare. Când ALU finalizează procesarea intrării, informațiile sunt trimise în memoria computerului.

frații kylie jenner
Ce este ALU

Cu excepția efectuării calculelor legate de adunare și scădere, ALU se ocupă de înmulțirea a două numere întregi, deoarece sunt concepute pentru a executa calcule de numere întregi; prin urmare, rezultatul său este, de asemenea, un număr întreg. Cu toate acestea, operațiunile de divizare pot să nu fie efectuate de ALU, deoarece operațiunile de divizare pot produce un rezultat în virgulă mobilă. În schimb, unitatea în virgulă mobilă (FPU) se ocupă de obicei de operațiunile de divizare; alte calcule non-întregi pot fi, de asemenea, efectuate de FPU.

În plus, inginerii pot proiecta ALU pentru a efectua orice tip de operație. Cu toate acestea, ALU devine mai costisitoare pe măsură ce operațiunile devin mai complexe, deoarece ALU distruge mai multă căldură și ocupă mai mult spațiu în procesor. Acesta este motivul pentru a face ALU puternic de către ingineri, care oferă garanția că procesorul este rapid și puternic.

Calculele necesare CPU sunt gestionate de unitatea logică aritmetică (ALU); majoritatea operațiunilor dintre ele sunt de natură logică. Dacă CPU este mai puternic, care este realizat pe baza ALU este proiectat. Apoi creează mai multă căldură și necesită mai multă putere sau energie. Prin urmare, trebuie să fie o moderație între cât de complex și puternic este ALU și să nu fie mai costisitoare. Acesta este principalul motiv pentru care procesoarele mai rapide sunt mai costisitoare; prin urmare, ele iau multă putere și distrug mai multă căldură. Operațiile aritmetice și logice sunt principalele operații care sunt efectuate de ALU; efectuează și operații de deplasare a biților.

Deși ALU este o componentă majoră a procesorului, designul și funcția ALU-ului pot fi diferite în funcție de diferitele procesoare. Pentru caz, unele ALU sunt proiectate pentru a efectua numai calcule cu numere întregi, iar unele sunt pentru operații în virgulă mobilă. Unele procesoare includ o singură unitate logică aritmetică pentru a efectua operații, iar altele pot conține numeroase ALU pentru a finaliza calculele. Operațiunile efectuate de ALU sunt:

    Operatii logice:Operațiile logice constau din NOR, NOT, AND, NAND, OR, XOR și altele.Operații de schimbare a biților:Este responsabil pentru deplasarea în locațiile biților la dreapta sau la stânga de un anumit număr de locuri care sunt cunoscute ca operație de multiplicare.Operatii aritmetice:Deși efectuează înmulțirea și împărțirea, aceasta se referă la adunarea și scăderea de biți. Dar operațiunile de înmulțire și împărțire sunt mai costisitoare de făcut. În locul înmulțirii, adunarea poate fi folosită ca înlocuitor și scădere pentru împărțire.

Semnale de unitate aritmetică logică (ALU).

O varietate de conexiuni electrice de intrare și ieșire sunt conținute de ALU, ceea ce a condus la difuzarea semnalelor digitale între electronicele externe și ALU.

Intrarea ALU primește semnale de la circuitele externe și, ca răspuns, electronicele externe primesc semnale de ieșire de la ALU.

Date: Trei magistrale paralele sunt conținute de ALU, care includ doi operanzi de intrare și de ieșire. Aceste trei autobuze gestionează numărul de semnale, care sunt aceleași.

Opcode: Când ALU urmează să efectueze operația, este descris prin codul de selecție a operațiunii ce tip de operație va efectua un ALU operație aritmetică sau logică.

stare

font gimp
    Ieșire:Rezultatele operațiunilor ALU sunt furnizate de ieșirile de stare sub formă de date suplimentare, deoarece sunt semnale multiple. De obicei, semnalele de stare precum overflow, zero, execute, negative și altele sunt conținute de ALU-uri generale. Când ALU finalizează fiecare operație, registrele externe au conținut semnalele de ieșire de stare. Aceste semnale sunt stocate în registrele externe care au condus la punerea lor la dispoziție pentru viitoare operațiuni ALU.Intrare:Când ALU efectuează odată operația, intrările de stare permit ALU să acceseze informații suplimentare pentru a finaliza operația cu succes. Mai mult, transferul stocat dintr-o operațiune anterioară ALU este cunoscut ca un singur bit de „carry-in”.
Ce este ALU

Configurații ale ALU

Descrierea modului în care ALU interacționează cu procesorul este dată mai jos. Fiecare unitate logică aritmetică include următoarele configurații:

  • Arhitectura set de instrucțiuni
  • Acumulator
  • Grămadă
  • Înregistrează-te pentru a te înregistra
  • Înregistrați stiva
  • Înregistrați memoria

Acumulator

Rezultatul intermediar al fiecărei operații este conținut de acumulator, ceea ce înseamnă că Arhitectura setului de instrucțiuni (ISA) nu este mai complexă, deoarece este necesar să păstrați doar un bit.

În general, acestea sunt mult rapide și mai puțin complexe, dar pentru a face Accumulator mai stabil; codurile suplimentare trebuie scrise pentru a le umple cu valori adecvate. Din păcate, cu un singur procesor, este foarte greu să găsești Acumulatoare care să execute paralelismul. Un exemplu de acumulator este calculatorul desktop.

boolean la șir java

Grămadă

Ori de câte ori sunt efectuate cele mai recente operațiuni, acestea sunt stocate pe stiva care deține programele în ordine de sus în jos, care este un registru mic. Când noile programe sunt adăugate pentru a fi executate, ele împing pentru a pune programele vechi.

Register-Registrare Arhitectura

Include un loc pentru 1 instrucțiune de destinație și 2 instrucțiuni sursă, cunoscute și ca o mașină de operare cu 3 registre. Această arhitectură de set de instrucțiuni trebuie să aibă o lungime mai mare pentru stocarea a trei operanzi, 1 destinație și 2 surse. După încheierea operațiunilor, scrierea rezultatelor înapoi în Registre ar fi dificilă și, de asemenea, lungimea cuvântului ar trebui să fie mai mare. Cu toate acestea, poate fi cauzat mai multe probleme cu sincronizarea dacă regula de rescriere ar fi respectată în acest loc.

Componenta MIPS este un exemplu de arhitectură de la registru la registru. Pentru intrare, folosește doi operanzi, iar pentru ieșire, folosește o a treia componentă distinctă. Spațiul de stocare este greu de întreținut deoarece fiecare are nevoie de o memorie distinctă; prin urmare, trebuie să fie premium în orice moment. Mai mult, poate fi dificil de efectuat unele operații.

Register - Stack Architecture

În general, combinația de operațiuni Register și Acumulator este cunoscută ca Register - Stack Architecture. Operațiile care trebuie efectuate în Arhitectura stivei de registre sunt împinse în partea de sus a stivei. Iar rezultatele sale sunt menținute în partea de sus a stivei. Cu ajutorul metodei de lustruire inversă, pot fi defalcate operații matematice mai complexe. Unii programatori, pentru a reprezenta operanzi, folosesc conceptul de arbore binar. Înseamnă că metodologia de lustruire inversă poate fi ușoară pentru acești programatori, în timp ce poate fi dificilă pentru alți programatori. Pentru a efectua operațiuni Push și Pop, este necesar să fie creat un nou hardware.

Registru și memorie

În această arhitectură, un operand provine din registru, iar celălalt provine din memoria externă deoarece este una dintre cele mai complicate arhitecturi. Motivul din spatele acestuia este că fiecare program poate fi foarte lung, deoarece necesită să fie păstrat în spațiul de memorie complet. În general, această tehnologie este integrată cu tehnologia Register-Register Register și practic nu poate fi utilizată separat.

Avantajele ALU

ALU are diverse avantaje, care sunt următoarele:

  • Suportă arhitectură paralelă și aplicații cu performanță ridicată.
  • Are capacitatea de a obține simultan rezultatul dorit și de a combina variabile întregi și în virgulă mobilă.
  • Are capacitatea de a executa instrucțiuni pe un set foarte mare și are o gamă mare de precizie.
  • Două operații aritmetice în același cod, cum ar fi adunarea și înmulțirea sau adunarea și scăderea, sau oricare doi operanzi pot fi combinate de ALU. Pentru caz, A+B*C.
  • Pe parcursul întregului program, ele rămân uniforme și sunt distanțate astfel încât să nu poată întrerupe o parte între ele.
  • În general, este foarte rapid; prin urmare, oferă rezultate rapid.
  • Nu există probleme de sensibilitate și nicio pierdere de memorie cu ALU.
  • Sunt mai puțin costisitoare și minimizează cerințele porții logice.

Dezavantajele ALU

Dezavantajele ALU sunt discutate mai jos:

  • Cu ALU, variabilele plutitoare au mai multe întârzieri, iar controlerul proiectat nu este ușor de înțeles.
  • Erorile ar apărea în rezultatul nostru dacă spațiul de memorie ar fi definit.
  • Este greu de înțeles amatori, deoarece circuitul lor este complex; de asemenea, conceptul de conducte este complex de înțeles.
  • Un dezavantaj dovedit al ALU este că există nereguli în latențe.
  • Un alt demerit este rotunjirea, care afectează precizia.