Alu

Als het metaforische brein van een computer voert een rekenkundige logische eenheid (ALU) alle reken- en vergelijkingsbewerkingen uit. De ALU dient als de basis van centrale verwerkingseenheden (CPU’s), grafische verwerkingseenheden (GPU’s) en floating point units (FPU’s). Een eenvoudige ALU heeft drie databussen: twee enkelbits operanden (A en B) die resulteren in één uitgang (Y).

Geschiedenis van de ALU

De ALU werd in 1945 ontwikkeld door wiskundige John von Neumann, vooral bekend om zijn ontwikkeling van de Von Neumann-architectuur. De machines van Neumann introduceerden opgeslagen programma’s en voerden opeenvolgende instructies uit, wat resulteerde in een beperkte doorvoer en prestaties.

In de jaren 1970 maakte de Intel 74181 plaats voor de huidige single-chip microprocessors. De 4-bits ALU bevatte het equivalent van 75 logische poorten en was de allereerste die in één pakket bestond. De huidige ALU’s zijn complexer en hebben extra functies zoals barrel shifters en binaire multipliers, waardoor ze in staat zijn om een ​​groter volume aan complexere bewerkingen in een kortere tijd uit te voeren.

Soorten ALU-bewerkingen

Er zijn vier soorten combinaties van binaire invoer, waarbij 1 staat voor true en 0 voor false:

  • 0 + = 0 0
  • 1 + = 0 1
  • 0 + = 1 1
  • 1 + = 1 0

De vierde invoercombinatie resulteert in een carry-in, waarvoor een soort bewerking moet plaatsvinden. Er zijn acht soorten rekenkundige basisbewerkingen die alle ALU’s ondersteunen:

  • ADD
  • TOEVOEGEN met CARRY
  • AFTREKKEN
  • SUBTRACT met BORROW
  • INCREMENT
  • VERLAGING
  • NEGEREN
  • DOORGAAN

Complexere ALU’s met meer logische poorten (zoals die in smartphones en laptops) kunnen ook vermenigvuldigings- en deelbewerkingen uitvoeren.

Op de andere helft van de eenheid worden logische bewerkingen gebruikt om de uitgangen van deze circuits te valideren of te wijzigen. Bitsgewijze logische bewerkingen omvatten:

  • NIET
  • EN
  • OR
  • XOR (exclusief-OF)