Das NAND-Gatter: Der einzige Baustein der gesamten Digitaltechnik

Das NAND-Gatter ist funktional vollständig: AND, OR, NOT, XOR und Speicherzellen lassen sich alle allein aus NAND aufbauen. CMOS-Ökonomie macht es zur dominierenden Standardzelle.

TL;DR: Ein NAND-Gatter gibt 1 aus, außer wenn alle Eingänge 1 sind (Y=ABY = \overline{A \cdot B}). Es ist funktional vollständig – jede andere boolesche Funktion lässt sich allein mit NAND-Gattern realisieren. In CMOS-Silizium nutzt NAND weniger Transistoren und schaltet schneller als NOR, weshalb es moderne Standardzellbibliotheken dominiert und „NAND-Flash” seinen Namen trägt.

Ein 74HC00 IC von beliebigen Elektronikdistributoren enthält vier NAND-Gatter in einem 14-Pin-DIP-Gehäuse und kostet wenige Cent. Doch dieser unscheinbare Chip – und die Milliarden NAND-Gatter, die in jeden modernen Prozessor geätzt sind – steht für die meistgefertigte Logikstruktur der Ingenieurgeschichte.

Dieser Beitrag betrachtet das NAND-Gatter als praktisches, physisches Bauteil: wie es in CMOS-Silizium aufgebaut ist, welche realen ICs es umsetzen, was deren Datenblätter aussagen und warum die Halbleiterökonomie das NAND-Gatter zum dominierenden Baustein kommerzieller Digitalsysteme gemacht hat.

Bauteildiagramm NAND-Gatter

Das NAND-Gatter: Kurze Wiederholung

Im Kern ist ein NAND-Gatter ein AND-Gatter gefolgt von einem NOT-Gatter. Es nimmt zwei oder mehr Eingänge entgegen und erzeugt einen HIGH-Ausgang (1), es sei denn, alle Eingänge sind gleichzeitig HIGH, in welchem Fall der Ausgang LOW (0) ist.

Wahrheitstabelle

Eingang AEingang BAusgang Y
001
011
101
110

Boolescher Ausdruck

Y=ABY = \overline{A \cdot B}

Nach dem Satz von De Morgan ist dies äquivalent zu Y=Aˉ+BˉY = \bar{A} + \bar{B}, was die duale Natur des NAND-Gatters als OR-Gatter mit invertierten Eingängen offenbart.

Verhalten des NAND-Gatters ausprobieren

CMOS-Realisierung: Warum NAND das natürliche Gatter des Siliziums ist

Um zu verstehen, warum NAND den kommerziellen IC-Entwurf dominiert, muss man auf die Transistorebene blicken. In CMOS-Technologie besteht jedes Logikgatter aus zwei komplementären Netzwerken:

  • Pull-Down-Netzwerk (PDN): NMOS-Transistoren, die den Ausgang mit Masse (VSSV_{SS}) verbinden.
  • Pull-Up-Netzwerk (PUN): PMOS-Transistoren, die den Ausgang mit der Versorgungsspannung (VDDV_{DD}) verbinden.

Bei einem 2-Eingang-NAND-Gatter besitzt das PDN zwei NMOS-Transistoren in Reihe und das PUN zwei PMOS-Transistoren parallel. Diese Anordnung hat einen entscheidenden Vorteil: NMOS-Transistoren (die Elektronen als Ladungsträger nutzen) sind von Natur aus schneller als PMOS-Transistoren (die Löcher nutzen). Indem man die schnelleren NMOS in Reihe und die langsameren PMOS parallel anordnet, erreicht das NAND-Gatter ausgewogene Anstiegs- und Abfallzeiten bei minimaler Transistorgröße.

Vergleichen Sie das mit einem NOR-Gatter, bei dem die PMOS-Transistoren in Reihe liegen. PMOS in Reihe addiert Widerstand, verlangsamt den Pull-Up-Übergang und erfordert breitere (größere) Transistoren zum Ausgleich. Deshalb benötigt ein 2-Eingang-NAND-Gatter in CMOS nur 4 Transistoren und beansprucht weniger Siliziumfläche als ein vergleichbares NOR-Gatter.

Ein AND-Gatter hingegen benötigt ein NAND-Gatter, gefolgt von einem Inverter – insgesamt 6 Transistoren. Dieser Mehraufwand von 50 % Transistoren ist der Grund, weshalb Synthesewerkzeuge im ASIC-Entwurfsfluss NAND-basierte Implementierungen bevorzugen, wo immer möglich.

Reale ICs: Der 74HC00 und der CD4011

Das NAND-Gatter ist seit den frühesten Tagen der TTL-Familie (Transistor-Transistor-Logik) als diskretes IC verfügbar. Zwei der meistgenutzten NAND-Gatter-ICs stehen für unterschiedliche Technologiegenerationen:

Der 74HC00: Hochgeschwindigkeits-CMOS

Der 74HC00 ist ein Quad-2-Eingang-NAND-Gatter im 14-Pin-DIP- (oder SOIC-)Gehäuse. Er gehört zur 74HC-Familie (High-Speed-CMOS) und ist vermutlich das in Lehre und Prototyping am häufigsten eingesetzte Logik-IC.

Wichtige Datenblattparameter (typisch bei VCCV_{CC} = 5 V, 25 °C):

ParameterSymbolTypischer Wert
VersorgungsspannungVCCV_{CC}2 V bis 6 V
Laufzeitverzögerung (L-nach-H)tPLHt_{PLH}9 ns
Laufzeitverzögerung (H-nach-L)tPHLt_{PHL}9 ns
Ausgangsstrom (Quelle)IOHI_{OH}-4 mA
Ausgangsstrom (Senke)IOLI_{OL}4 mA
RuhestromICCI_{CC}1 µA
Fan-out (an 74HC-Eingänge)~10

Pinbelegung (14-Pin-DIP):

  • Pins 1, 2 -> Eingänge Gatter 1; Pin 3 -> Ausgang Gatter 1
  • Pins 4, 5 -> Eingänge Gatter 2; Pin 6 -> Ausgang Gatter 2
  • Pins 9, 10 -> Eingänge Gatter 3; Pin 8 -> Ausgang Gatter 3
  • Pins 12, 13 -> Eingänge Gatter 4; Pin 11 -> Ausgang Gatter 4
  • Pin 7 -> GND; Pin 14 -> VCCV_{CC}

Der CD4011: Klassisches CMOS

Der CD4011 ist das CMOS-Pendant aus der 4000er-Familie. Er hat einen größeren Versorgungsspannungsbereich (3 V bis 18 V), aber eine langsamere Laufzeitverzögerung (typisch 50–125 ns bei 5 V). Seine Stärken sind extrem niedrige Leistungsaufnahme und Toleranz gegenüber einem breiten Spannungsbereich, was ihn in batteriebetriebenen und industriellen Anwendungen beliebt macht.

Wann was einsetzen:

  • Verwenden Sie den 74HC00 für Steckbrett-Projekte und alles, was an einen Takt oberhalb 1 MHz synchronisiert ist.
  • Verwenden Sie den CD4011 für Anwendungen mit niedriger Leistung und großem Spannungsbereich, in denen Geschwindigkeit nicht entscheidend ist.

Timing-Spezifikationen: Das Datenblatt lesen

Für jede ernsthafte Entwurfsarbeit sind die Laufzeitwerte aus dem Datenblatt Ihre Randbedingungen. Schauen wir, was diese Zahlen in der Praxis bedeuten.

Ein 74HC00-Gatter hat ein typisches tpdt_{pd} von 9 ns. Verketten Sie drei NAND-Gatter (zum Beispiel, um ein OR-Gatter in der NAND-only-Konstruktion zu bauen), beträgt die Gesamtverzögerung für den kritischen Pfad ungefähr 2×9=182 \times 9 = 18 ns (das Signal passiert den Eingangsinverter und das abschließende NAND, nicht alle drei Gatter seriell für jeden Eingang).

Bei 50 MHz (Taktperiode 20 ns) bleiben nur 2 ns Timing-Reserve. Bei 100 MHz überschreitet die Verzögerung die Taktperiode komplett. Deshalb nutzen Hochgeschwindigkeitsentwürfe dedizierte OR-Zellen aus Standardzellbibliotheken statt sie aus diskreten NAND-Gattern aufzubauen.

Häufige Falle: Aufstapeln von Laufzeitverzögerungen

Baut man alles aus NAND-Gattern, akkumulieren sich die Verzögerungen mit jeder Stufe. Ein NAND-basiertes OR-Gatter hat einen kritischen Pfad von 2×tpd\approx 2 \times t_{pd}. Ein NAND-basiertes XOR hat einen kritischen Pfad von 3×tpd\approx 3 \times t_{pd} (drei Gatterstufen). In komplexen Schaltungen begrenzen diese gestapelten Verzögerungen die maximal mögliche Taktfrequenz und können Timing-Hazards verursachen – kurzzeitig falsche Ausgangswerte, sogenannte Glitches, die entstehen, wenn Signale auf verschiedenen Pfaden zu unterschiedlichen Zeitpunkten eintreffen.

Verifikation mit dem OSZILLOSKOP

Um das Aufstapeln von Laufzeitverzögerungen in digisim.io zu beobachten, bauen Sie ein NAND-basiertes OR-Gatter (drei NAND-Gatter) und ein natives OR-Gatter nebeneinander. Speisen Sie dasselbe TAKTSIGNAL in beide Schaltungen. Verbinden Sie drei OSZILLOSKOP-Kanäle: einen mit dem TAKT-Eingang, einen mit dem nativen OR-Ausgang und einen mit dem NAND-basierten OR-Ausgang.

Sie werden sehen, dass beide Ausgänge dem Takt folgen, doch die NAND-basierte Version ist weiter nach rechts verschoben. Dieser zusätzliche horizontale Versatz ist die Verzögerungssteuer, die Sie für eine reine NAND-Konstruktion zahlen.

Vorlage Universelle NAND-Logik

Vorlage Universelle NAND-Logik öffnen

Fertigungsvorteile: Warum NAND den Siliziumkrieg gewonnen hat

Die Dominanz des NAND-Gatters in der IC-Fertigung ist kein Zufall. Sie ergibt sich aus drei miteinander verbundenen Vorteilen:

1. Transistorzahl

Ein 2-Eingang-NAND-Gatter benötigt 4 Transistoren. Ein AND-Gatter braucht 6 (NAND + Inverter). Ein OR-Gatter braucht 6 (zwei Inverter + NAND). Wenn Sie 10 Milliarden Transistoren auf einem Die unterbringen, übersetzt sich eine Reduktion der Transistorzahl auf Gatterebene um 33 % unmittelbar in kleinere Diefläche, höhere Ausbeute und niedrigere Kosten pro Chip.

2. Geschwindigkeit

Da das NMOS-Pull-Down-Netzwerk (der geschwindigkeitskritische Pfad für NAND) Transistoren in Reihe mit nur moderatem Widerstand aufweist und das PMOS-Pull-Up-Netzwerk Transistoren parallel (geringer Widerstand) hat, schaltet das NAND-Gatter schneller als das gleichwertige NOR-Gatter. In fortgeschrittenen Prozessknoten (7 nm, 5 nm, 3 nm) potenziert sich dieser Geschwindigkeitsvorteil über Milliarden von Gattern.

3. Standardzellbibliotheken

Modernes Chipdesign stützt sich auf Standardzellbibliotheken – vom Foundry-Hersteller vorab charakterisierte Gatter-Layouts. Diese Bibliotheken sind stark NAND-lastig. Eine typische Bibliothek bietet NAND2-, NAND3-, NAND4- und sogar NAND2X2-Zellen (NAND mit doppelter Treiberstärke), jeweils auf Fläche, Geschwindigkeit und Leistung optimiert. Das EDA-Synthesewerkzeug bildet Ihren RTL-Entwurf (Register-Transfer-Level) auf diese Zellen ab, und der Optimierer gravitiert natürlicherweise zu NAND-basierten Implementierungen, weil sie das beste Verhältnis aus Fläche, Verzögerung und Leistung liefern.

Anwendungen in der Praxis

NAND-Flash-Speicher

Die berühmteste Anwendung trägt den Namen selbst: NAND-Flash. In NAND-Flash-Speichern werden Floating-Gate-Transistoren in Reihe verschaltet – dieselbe Topologie wie das NMOS-Pull-Down-Netzwerk eines NAND-Gatters. Diese Reihenschaltung macht NAND-Flash dichter als NOR-Flash (wo die Transistoren parallel liegen) und ermöglicht die riesigen Speicherkapazitäten moderner SSDs, USB-Sticks und Smartphones.

ASIC-Adressdecoder

Innerhalb eines Prozessors entscheiden Adressdecoder, welcher Speicherort oder welche Peripherie angesprochen wird. Ein NAND-Gatter mit vielen Eingängen implementiert ganz natürlich die Funktion „dieses exakte Bitmuster erkennen”. Für eine 4-Bit-Adresse 1101 invertiert der Decoder das dritte Bit (die 0) und speist alle vier Leitungen in ein 4-Eingang-NAND. Der Ausgang geht nur dann auf LOW, wenn die Adresse exakt passt – eine kompakte, schnelle Implementierung, die in CMOS gut skaliert.

Vorlage XOR-Differenzdetektor

Praktisch: Einen HALBADDIERER aus NAND-Gattern bauen

Der HALBADDIERER mit 5 NAND-Gattern ist eine klassische Übung, die Universalität und praktische Gatterökonomie zusammenführt.

Ein HALBADDIERER braucht zwei Ausgänge: Summe (ABA \oplus B) und Übertrag (ABA \cdot B). Die XOR-Funktion allein benötigt 4 NAND-Gatter, die AND-Funktion 2. Naiv wären das 6 Gatter. Durch gemeinsame Nutzung eines Zwischensignals kommen Sie mit 5 aus:

  1. Gatter 1: Eingänge A und B. Ausgang ist W1=ABW_1 = \overline{A \cdot B}.
  2. Gatter 2: Eingänge A und W1W_1. Ausgang ist W2W_2.
  3. Gatter 3: Eingänge B und W1W_1. Ausgang ist W3W_3.
  4. Gatter 4: Eingänge W2W_2 und W3W_3. Ausgang ist die Summe (ABA \oplus B).
  5. Gatter 5: Eingänge W1W_1 und W1W_1 (zusammengelegt). Ausgang ist der Übertrag (ABA \cdot B).

Gatter 5 ist schlicht ein Inverter, der auf W1W_1 angewandt wird, also auf AB\overline{A \cdot B}. Invertiert man dies, ergibt sich ABA \cdot B – der Übertrag. Der Ausgang von Gatter 1 (W1W_1) wird zwischen der XOR-Konstruktion und dem Übertragspfad geteilt und spart so ein Gatter.

Bauen Sie dies in digisim.io auf und prüfen Sie beide Ausgänge gegen die Wahrheitstabelle des Halbaddierers. Verwenden Sie das OSZILLOSKOP, um zu bestätigen, dass der Summen-Ausgang eine geringfügig längere Verzögerung als der Übertrag aufweist (drei Gatterstufen gegenüber zwei).

Die XOR-NAND-Schaltung erkunden

Bezug zum Curriculum

Dieser Beitrag verbindet sich mit:

Ihre Herausforderung

Bauen Sie einen 2-zu-1-Multiplexer ausschließlich aus NAND-Gattern. Der boolesche Ausdruck lautet Y=(SˉA)+(SB)Y = (\bar{S} \cdot A) + (S \cdot B). Mit den De-Morgan-Transformationen lässt sich das vollständig in NAND umsetzen. Zählen Sie Ihre Gatter und messen Sie die Verzögerung im kritischen Pfad mit dem OSZILLOSKOP.

Die NAND-Bauteilreferenz öffnen oder eine neue Schaltung starten.