6.15. Arithmetic-Logic-Units - ALU's history menue Letztmalig dran rumgefummelt: 12.10.11 18:20:16
Die Arithmetik-Logik-Einheit (arithmetic logic unit = ALU) ist ein Zuordner, der wahlweise arithmetische oder logische Verknüpfungen zwischen zwei Operanden realisieren kann. Sie ist eine universelle Baugruppe, bei der durch ein Auswahlbitmuster entschieden wird, welche der möglichen Teilfunktionen im gerade laufenden Zeitabschnitt zur Wirkung kommen.
1. ALU-Steuerlogik (Funktionsgenerator)
2. die Arithmetic Logic Unit - kurz ALU
3. die Modell-ALU
4. Bauelementelisten
5. Verwandte Themen
6. Weblinks zum Thema ALUs

die Elektronikseiten

Logo einer allgemeinen ALU

inhaltlich auf korrektem Stand - evtl. partiell unvollständig ;-)

Wissen für Fortgeschrittene der Informatik

ALUS's sind Kernbestandteile jedes Mikroprozessors und in der technischen Ausführung bis heute unverändert, nur die Anzahl der verfügbaren Bitstellen sowie der jeweiligen Einzelfunktionen ist vergrößert worden.
,,, wie rechnen eigentlich Computer???
Binäre Arithmetik ... die kleine Welt des "Computer-Rechnens" Algorithmen zum Problemlösen Taylor'sche Reihen

Binärarithmeitk

mathematischen Ansätze der Informatik

Problemlösung

Taylor'schen Reihen


1. ALU und Steuerlogik history menue scroll up

 

Funktionsgenerator ALU - 74181

Technisches Realisierung eines Addierwerkes


2. Die Arithmetic Logic Unit - kurz ALU history menue scroll up

Eine Arithmetik-Logik-Einheit (ALU arithmetic logic unit) ist ein digitales Subsystem (Kombinationsschaltung), das eine Anzahl verschiedener arithmetischer und logischer Operationen mit zwei digitalen Eingangsworten (d. h. mit zwei Operanden) ausführen kann. In Abhängigkeit von einem Steuerwort führt die ALU jeweils eine von mehreren arithmetischen (bei M = H im Bild 12.10) bzw. eine von mehreren logischen (bei M = L) Operationen aus.
Arithmetik-Logik-Einheiten haben sowohl in Form getrennter Schaltkreise als auch für die Mikroprozessortechnik große Bedeutung. Jeder Mikroprozessor enthält als Kernstück eine ALU.
Zur Ausführung arithmetischer Operationen mit hoher Geschwindigkeit enthalten Arithmetik-Logik-Schaltkreise in der Regel einen Paralleladdierer nach dem Look-ahead-carry-Prinzip.
Bild unten zeigt das Blockschaltbild, das Logikdiagramm und die Funktionstabelle der ALU (4-bit-ALU/Funktionsgenerator). Je nach dem Bitmuster des 5-bit-Steuerwortes führt diese ALU 16 arithmetische Operationen einschließlich der Addition, Subtraktion, Verdopplung, des Vergleiches usw., sowie 16 logische Funktionen aus.
Der Übertragseingang lässt sich als fünfte Steuervariable verwenden (Verdopplung der Anzahl arithmetischer Operationen). Er hat nur bei arithmetischen Operationen Bedeutung.

Bild 1 4-Bit Arithmetik-Logikschaltkreis ALU - 74181

Wirkungsweise der ALU 74181

Die zentrale Baugruppe einer ALU ist der Paralleladdierer. Durch Steuern seiner Dateneingänge lassen sich unterschiedliche Operationen ausführen (Bild unten). Der Eingangsübertrag Cn gelangt auf die niederwertige Stelle des Addierers (lsb). Der Übertragsausgang ist mit der höchstwertigen Stelle (msb) des Addierers verbunden. Die einfache Addition zweier 4-bit-Zahlen A und B wird ausgeführt, wenn der Eingangsübertrag Cn = 0 ist. Für Cn = 1 wird 1 zum Ergebnis A + B addiert (Bild unten).
Führt man dem Kanal B das komplementäre Datenwort zu, so ergibt sich für Cn = 0 F = A + B und für C„ = 1 F = A + B + 1 (d. h. die Summe aus A und dem Zweierkomplement von B). Die letztgenannte Operation entspricht einer Subtraktion, falls der Ausgangsübertrag weggelassen wird. Führt man dem Kanal B die Zahl 0000 zu, so wird bei Cn = 0 das Eingangswort A zum Ausgang transportiert. Bei Cn = 1 wird das Eingangswort inkrementiert. Führt man dem Kanal B die Dualzahl 1111 (-24 - 1 dezimal) zu, realisiert die ALU die Dekrement-Operation: F = A - 1, wie folgende Überlegung zeigt:
Mit 1111 B = 24 - 1 gilt A + B = A + 24 - 1 = 24 + A - 1. Lässt man den Ausgangsübertrag 24 weg, so erhält man F = A - 1. Die Eingangszahl A wird also dekrementiert.
Das vereinfachte Blockschaltbild 12.12 verdeutlicht, wie mit Hilfe eines vierstelligen Paralleladdierers unter Anwendung des vorstehend erläuterten Prinzips eine ALU verwirklicht werden kann, die einige der im Bild 12.11 enthaltenen arithmetischen Operationen ausführt. Im Interesse eines leichteren Verständnisses haben wir uns auf zwei Steuereingänge beschränkt. Unter Hinzunahme des Übertragseingangs Cn lassen sich acht unterschiedliche arithmetische Operationen spezifizieren.
Dem Kanal A wird das 4-bit-Datenwort A3 A2 A1 A0, dem Kanal B wird wahlweise das 4-bit-Datenwort B3 B2 B2 B0, das zugehörige Komplement, die Dualzahl 1111 u. a. zugeleitet. Die Schaltung führt die im Bild 3 erläuterten Operationen aus.

Bild 2 ALU - 74181

Wenn der Übertragseingang Cn jeder Volladdiererstufe Null ist, realisiert der Volladdierer die Exklusiv-ODER-Funktion Fi = Xi Q+ Yi.
Die Schaltung besteht aus den drei Funktionsgruppen

  • Funktionswahl
  • Übertragsbildung
  • Verknüpfung

Die Logikfunktionen werden bitweise verknüpft.

Bild 3 Funktionsgenerator ALU - 74181

Die Komparatorfunktion ist am Ausgang A = B abnehmbar. Dieser Ausgang ist ein „offener Kollektor"-Ausgang, so dass mehrere Schaltkreise ausgangsseitig parallelgeschaltet werden dürfen ("verdrahtetes Oder" zum Signalisieren der Gleichheit längerer Wörter).
Mehrere Schaltkreise 74181 lassen sich entweder nach dem Ripple-carry-Prinzip (Bild 5) oder- (falls sehr kurze Additionszeiten benötigt werden) unter Verwendung der beiden Signale P* und G nach dem Look-ahead-carry-Prinzip zusammenschalten (zweckmäßigerweise unter Verwendung des Schaltkreises 74182, an den vier ALUs 74181 anschließbar sind).
Die Rechenzeit für das im Schaltkreis 74181 enthaltene Rechenwerk beträgt ungefähr 22 ns. Die Übertragszeit von der niederwertigen zur höchstwertigen Stelle dieser 4-bit-ALU beträgt 13 ns. Zwei 8-stellige Dualzahlen werden daher in 22 ns + 13 ns = 35 ns addiert (Serienübertrag). Wie aus Bild unten ersichtlich ist, gelten für die Schaltungsstruktur der ALU 74181 die folgenden logischen Zusammenhänge:

Bild 4 Funktionsauswahl ALU - 74181
Funktionsauswahl Y Ausgang Funktion
s1 S0 C      
0 0 0 0 F = A  
0 0 1 0 F = A + 1  
0 1 0 B F = A + B  
0 1 1 B F = A + B + 1  
1 0 0 B    
1 0 1      
1 1 0      
1 1 1      

Bild 5 Zusammenschaltung zur 12-Bit- ALU mit 2 mal 74181

 
Quelle Seite 291 ff.

3. Die 4-Bit Modell-ALU history menue scroll up
Diese Logik stellt in etwa das höchste der Arithmetik im Bitbereich dar. Sie stellt ein Vielzahl von möglichen Rechenoperationen und logischen Vorgängen zur Verfügung. Somit in entsprechender Anzahl realisiert bildet sie das Herzstück jedes noch so komplexen Mikroprozessors.

hier geht's zur Modell-ALU für das Schuljahr 2005/06

Sicht auf die 4-Bit-ALU der Z1

 
Quelle

Die Funktionswahl basiert auf 6 Schaltern. Diese bestimmen den Operationsmodus der Logik. Der Schalter, der mit "M" überschrieben ist, legt fest, ob eine logische, oder eine arithmetische Operation ausgeführt wird. Wenn dieser auf H steht wird eine logische Funktion ausgeführt und wenn dieser auf L steht, dann logischerweise eine arithmetische.
Der Schalter mit der Überschrift "Cn" bestimmt, ob ein Carry in die Berechnung der ALU mit einbezogen wird. Ist dieser Schalter auf H gelegt, so wird kein Carry berücksichtigt. Logischerweise wird bei L des Schalters ein H auf den Übertrag der Rechnung gelegt und somit bei arithmetischen Operationen plus 1 gerechnet. Bei logischen Operationen kann der Carry nicht berücksichtigt werden, denn dieser spielt ja keine Rolle.
Die anderen vier Schalter sind die Funktionsauswahlschalter. Mit ihnen wird die auszuführende Operation lt. Tabelle festgelegt.
Man kann sich nun ganz einfach die Anzahl der Möglichkeiten errechnen, die der Benutzer zur Auswahl hat: 4-Bit Kombination der Funktionswahl macht 16 Möglichkeiten

                                                                                                                                                                 → Logik/Arithmetik-Auswahl macht 2 Möglichkeiten

Bis jetzt also schon 32 verschiedene Funktionen und dann kann man ja immer noch den Carry mit einbeziehen. Also kann sich jeder leicht denken, dass diese ALU eine Vielzahl von Operationen bietet, die vorerst für unsere Zwecke ausreichen.
Bei der ALU, die ich hier gebaut habe, hat man nun die Möglichkeit zwei 4-Bit-Zahlen einzugeben, die dann für sämtliche Operationen zur Verfügung stehen. Ganz treffend nennt man sie einfach Zahl A und Zahl B.
Die interne Logik führt nun alle Operationen aus, die man selektiert hat und gibt an der Ausgangsseite ein 4-Bit-Ergebnis aus, sowie weitere Signale, die dann zur Auswertung für weitere Prozesse zur Verfügung stünden, wenn man es wollte.
Zum Einen ist da der Komparatorausgang, an dem ein H anliegt, wenn A=B erfüllt ist.  Die Ausgänge G und P* sind von Nöten, wenn man die Absicht hat, mehrere ALUs miteinander zu verkoppeln um z.B. eine 12-Bit-ALU zu erhalten. Der Ausgang, der mit Cn+4 beschrieben ist, stellt den Carry-Ausgang dar. Wenn also bei der Rechnung ein Übertrag aufgetreten ist, dann wird dieser Ausgang mit einem H belegt.

Frank Kietzschs in NAND-Gates aufgelöste 4-Bit ALU aus dem Jahr 2007

in NAND-aufgelöste 4-Bit ALU

Befehlssatz der 4-Bit ALU

in NAND-aufgelöste 4-Bit ALU als ProfiLab 3.0-Datei

Frank Kietzschs in NAND-Gates aufgelöste 4-Bit ALU aus dem Jahr 2007

4-Bit Versuchs-ALU

Befehlssatz der 4-Bit ALU

4-Bit Versuchs ALU als ProfiLab 3.0-Datei

Rico Bergers komplette 4-Bit-ALU mit vollständiger Komparator-Logik aus dem Jahr 2010 (das entspricht nicht mehr ganz dem 74181!!! - Es ist mehr geworden!!!)

Bei einer Arithmetisch-logischen Einheit (aus dem englischen: arithmetic logic unit, daher auch kurz ALU genannt) handelt es sich um eine wesentlichen Bestandteil des Prozessors. Sie ist das elektronische Rechen- und Steuerwerk der CPU.
Die ALU übernimmt dabei das wahlweise arithmetische (Addition, Multiplikation, etc.) oder logische (Negation, Konjunktion, etc. ) Verknüpfung zweier Operanden. Dabei wir über ein Bitmuster entschieden welche der Teilfunktionen gerade ausgeführt werden soll.
Manche Rechner besitzen auch mehr als eine ALU, beispielsweise eine ALU für Festkommaoperationen und eine zweite für Fließkommaoperationen. Manchmal werden diese Fließkommaoperationen aber auch von einem Coprozessor ausgeführt. Seit der Intel Pentium Serie ist dies allerdings nicht mehr üblich.
Im Jahre 1946 arbeitete von Neumann an einem Computer für das Institute for Advanced Study (IAS) in Princeton, New Jersey. Der IAS-Computer wurde zum Prototype für viele später Computer, dabei erläuterte Neumann auch was er glaubte was ein Computer alles benötigt, darunter auch die ALU. Er hielt es für nötig das ein Computer ein eigenes Organ für arithmetische und logische Funktionen besitzt.

die ALU des Honeywell's Datamatic 1000 aus dem Jahr 1957.

... die ALU des intel-Prozessors aus dem Jahr 1957.

     
... theoretische mathemmatisch-logische Funktionen der der 4-Bit ALU    
Eine Arithmetisch-logische Einheit berechnet arithmetische und logische Funktionen. Arithmetische Funktionen wären:
  • Addition (ADD)
  • Subtraktion (SUB)
  • Multiplikation (MUL)
  • Division (DIV)

Logische Funktionen wären:

  • Negation (NOT)
  • Konjunktion (AND)
  • Disjunktion (OR)
  • Kontravalenz (XOR)
  • Vergleichen (CMP)
   
   
4. Bauelementelisten von ALUs
  Bauelemente-Typ Funktion

74 - ; 74 LS; 47 HCT

74181 4-Bit-ALU

elektrische Bauelemente-Übersicht von ALUs in verschiedenen Technologien


5. Verwandte Themen history menue scroll up
Wenn wir nunmehr daran gehen, den gesamten Logikbereich evtl. noch durchmischt mit den Sequentiellen Schaltungen, dann sollte uns bewusst sein, dass wir versuchen, die Krönung der digitalen Logik mit derzeitigem Erkenntnisstand nach zu vollziehen.

Mikroelektronik

Halbleiter-Vorgänge

Logikfunktionen und technologische Fertigungsverfahren

Beschreibung des Eingangssignalverhaltens für die Party-Aufgabe

Karnaugh-Veitch-Tafel für 4-Eingangs-Logiken

1 aus n-Decoder

logische Arrays

EPROM-Logik

Multiplexer-Logo

Bool'sches Aussagenkalkül

   

Binäre Addierer

Binäre Subtraktion

4 Bit × 4 Bit-Multiplizier

Komparatoren

TTL-Liste

... und so funktioniert ein Computer

Z80-CPU

der LC-80

POLYCOMPUTER

die beliebte alphabetisch sortierte Schnell-Liste

Der LC-80 Simulator

Microcontroller

   

6. Weblinks zum Thema ALUs history menue scroll up
Komplexe Aussagen zu Addierer, Subtrahierer, Multiplizierer und ALU
Wikipedia
 
 
Quelle


zur Hauptseite
© Samuel-von-Pufendorf-Gymnasium Flöha © Frank Rost im Mai 2004

... dieser Text wurde nach den Regeln irgendeiner Rechtschreibreform verfasst - ich hab' irgendwann einmal beschlossen, an diesem Zirkus nicht mehr teilzunehemn ;-)

„Dieses Land braucht eine Steuerreform, dieses Land braucht eine Rentenreform - wir schreiben Schiffahrt mit drei „f“!“

Diddi Hallervorden, dt. Komiker und Kabarettist

Diese Seite wurde ohne Zusatz irgendwelcher Konversationsstoffe erstellt ;-)