Lernen › Thema 1
Logikgatter: NOT, AND, OR, NAND, NOR, XOR und XNOR
7 Min. Lesezeit · bitGateLab-Team
Die gesamte Digitaltechnik, von der Ampel bis zum Prozessor, besteht aus wenigen Bausteinen, die mit Nullen und Einsen Entscheidungen treffen: den Logikgattern. Hier lernst du die sieben Grundgatter kennen: wie man sie zeichnet, wie man sie in boolescher Algebra schreibt und wie ihre Wahrheitstabelle aussieht. Am Ende siehst du, warum sich mit einem einzigen Gattertyp, NAND oder NOR, alle anderen aufbauen lassen.
Logikpegel: was 0 und 1 bedeuten
In einer digitalen Schaltung kann jedes Signal nur einen von zwei Zuständen annehmen. Die niedrige Spannung (nahe 0 V) nennen wir logische 0 oder falsch, die hohe Spannung (nahe der Versorgungsspannung, zum Beispiel 5 V oder 3.3 V) nennen wir logische 1 oder wahr. Ein Gatter hat einen oder mehrere Eingänge und liefert einen Ausgang, der ausschließlich vom aktuellen Wert seiner Eingänge abhängt: Es merkt sich nichts. Deshalb sagt man, dass Gatter kombinatorische Logik bilden.
Am vollständigsten beschreibt man ein Gatter mit seiner Wahrheitstabelle: einer Liste aller möglichen Eingangskombinationen mit dem jeweils zugehörigen Ausgangswert. Bei n Eingängen gibt es 2n Kombinationen; ein Gatter mit zwei Eingängen hat also 4 Zeilen und eines mit drei Eingängen 8.
Die drei Grundgatter
NOT (Inverter)
Es hat nur einen Eingang und liefert das Gegenteil: Liegt 0 an, kommt 1 heraus, liegt 1 an, kommt 0 heraus. Man schreibt Y = A (du wirst auch A' oder ¬A sehen). Sein Symbol ist ein Dreieck mit einem kleinen Kreis an der Spitze; dieser Negationskreis ist das allgemein übliche Zeichen für „hier wird invertiert“.
| A | Y = A |
|---|---|
| 0 | 1 |
| 1 | 0 |
AND (UND)
Der Ausgang ist nur dann 1, wenn alle Eingänge 1 sind. Man schreibt es als Produkt: Y = A·B oder einfach Y = AB. Stell dir zwei Schalter in Reihe vor: Die Lampe leuchtet nur, wenn beide geschlossen sind.
OR (ODER)
Der Ausgang ist 1, wenn mindestens ein Eingang 1 ist. Man schreibt es als Summe: Y = A + B. Das entspricht zwei parallel geschalteten Schaltern. Achtung: In der booleschen Algebra gilt 1 + 1 = 1, nicht 2.
Abgeleitete Gatter: NAND, NOR, XOR und XNOR
NAND ist ein AND mit nachgeschaltetem Inverter: Y = AB. Sein Ausgang ist nur dann 0, wenn alle Eingänge 1 sind. NOR ist ein invertiertes OR: Y = A + B; es ist nur dann 1, wenn alle Eingänge 0 sind. Im Schaltsymbol tragen beide den Negationskreis am Ausgang.
XOR (exklusives ODER) ist 1, wenn die Eingänge verschieden sind: Y = A ⊕ B = AB + AB. Bei mehr als zwei Eingängen ist das XOR 1, wenn eine ungerade Anzahl von Einsen anliegt; deshalb berechnet man damit Paritätsbits. XNOR ist sein Komplement, Y = A ⊕ B = AB + A B, und ist 1, wenn die Eingänge gleich sind: ein Gleichheitsvergleicher für ein Bit.
Das ist die gemeinsame Wahrheitstabelle der sechs Gatter mit zwei Eingängen:
| A | B | AND | OR | NAND | NOR | XOR | XNOR |
|---|---|---|---|---|---|---|---|
| 0 | 0 | 0 | 0 | 1 | 1 | 0 | 1 |
| 0 | 1 | 0 | 1 | 1 | 0 | 1 | 0 |
| 1 | 0 | 0 | 1 | 1 | 0 | 1 | 0 |
| 1 | 1 | 1 | 1 | 0 | 0 | 0 | 1 |
Beispiel: eine kleine Schaltung auswerten. Berechne Y = (A + B) · C für A = 0, B = 1, C = 1.
- OR: A + B = 0 + 1 = 1.
- Invertierung: 1 = 0.
- AND mit C: 0 · 1 = 0.
Ergebnis: Y = 0. Mit A = 0, B = 0, C = 1 liefert das OR 0, der Inverter 1 und das AND 1, also ist Y = 1.
NAND und NOR: universelle Gatter
Ein Gatter ist universell, wenn sich allein aus Kopien davon NOT, AND und OR aufbauen lassen und damit jede beliebige logische Funktion. NAND und NOR haben diese Eigenschaft. Das hat eine praktische Folge: Ein Hersteller kann einen einzigen Zellentyp fertigen und daraus den gesamten Entwurf aufbauen, und du kannst eine komplette Schaltung mit einem einzigen IC der 74HC-Familie lösen (der 74HC00 enthält zum Beispiel vier NAND-Gatter mit zwei Eingängen).
Alles mit NAND
- NOT: Verbinde die beiden Eingänge eines NAND. Liegt A an beiden an, gilt A·A = A.
- AND: ein NAND, gefolgt von einem als Inverter beschalteten NAND: AB = AB.
- OR: Invertiere jeden Eingang mit einem NAND und führe beide in einem dritten NAND zusammen: A·B = A + B (nach De Morgan).
Alles mit NOR
- NOT: Verbinde die Eingänge eines NOR: A + A = A.
- OR: ein NOR, gefolgt von einem NOR als Inverter.
- AND: Invertiere jeden Eingang mit einem NOR und führe beide in einem weiteren NOR zusammen: A + B = AB.
Beispiel: XOR aus vier NAND. Sei N1 = AB, N2 = A·N1, N3 = B·N1 und Y = N2·N3. Prüfe die vier Fälle:
| A | B | N1 | N2 | N3 | Y |
|---|---|---|---|---|---|
| 0 | 0 | 1 | 1 | 1 | 0 |
| 0 | 1 | 1 | 1 | 0 | 1 |
| 1 | 0 | 1 | 0 | 1 | 1 |
| 1 | 1 | 0 | 1 | 1 | 0 |
Die Spalte Y stimmt mit der des XOR überein. Vier Gatter, ein einziger IC.
Häufige Fehler
- Zu glauben, dass bei einem OR 1 + 1 = 2 gilt. In der booleschen Logik geht die Summe in die Sättigung: 1 + 1 = 1.
- Die Schreibweisen AB (NAND, ein Strich über allem) und A B (zwei getrennte Striche, entspricht NOR) zu verwechseln. Die Länge des Strichs ändert das Ergebnis.
- Zu glauben, ein XOR mit drei Eingängen sei 1, „wenn genau ein Eingang 1 ist“. Tatsächlich ist es bei einer ungeraden Anzahl von Einsen 1, und dazu gehört auch der Fall 1, 1, 1.
- Eingänge eines echten CMOS-ICs unbeschaltet zu lassen. Ein offener Eingang kann zufällig als 0 oder als 1 gelesen werden; lege ihn auf Masse oder an die Versorgungsspannung.
Probiere es im Simulator aus
Am besten prägst du dir diese Tabellen ein, indem du sie selbst erzeugst. Im Schaltungseditor kannst du ein Gatter platzieren, seine Eingänge umschalten und den Ausgang sofort sehen; vergleiche anschließend mit der Wahrheitstabelle, die das Werkzeug berechnet.
- Platziere zwei Eingänge, ein NAND-Gatter und einen Ausgang und verbinde sie.
- Schalte die Eingänge durch alle vier Kombinationen und notiere jeweils den Ausgang.
- Erzeuge die Wahrheitstabelle der Schaltung und vergleiche sie mit der Tabelle in diesem Artikel.
- Baue das XOR aus vier NAND aus dem Beispiel auf und prüfe, ob seine Tabelle mit der eines einzelnen XOR übereinstimmt.
- Wenn du die Schaltung auf das virtuelle Steckbrett bringen möchtest, setze einen NAND-IC der 74HC-Familie ein, schließe die Versorgung an und beobachte die LED am Ausgang.
Übungen
- Stelle die Wahrheitstabelle von Y = A + B auf.
Lösung
Für AB = 00, 01, 10, 11 ist der Ausgang 1, 0, 1, 1. Er ist nur dann 0, wenn A = 0 und B = 1.
- Wie viele Zeilen hat die Wahrheitstabelle eines AND mit 4 Eingängen, und in wie vielen davon ist der Ausgang 1?
Lösung
24 = 16 Zeilen; der Ausgang ist nur in einer davon 1 (1111).
- Bestimme den Ausgang eines XOR mit drei Eingängen für A = 1, B = 1, C = 1.
Lösung
1 ⊕ 1 = 0 und 0 ⊕ 1 = 1. Der Ausgang ist 1, weil drei Einsen anliegen (ungerade Anzahl).
- Wie viele NOR-Gatter brauchst du mit dieser Methode mindestens, um ein AND mit zwei Eingängen zu bilden?
Lösung
Drei: zwei NOR als Inverter (eines für A, eines für B) und ein drittes NOR, an dem A und B anliegen und dessen Ausgang A + B = AB ist.
Wie du Ausdrücke mit diesen Gattern umformst und vereinfachst, erfährst du im nächsten Thema: boolesche Algebra.