../../icons/Logo.pngPraktische Elektronik


Wir lernen neue logische Funktionen kennen und wie diese mit NAND-Gattern realisiert werden.


list.png

Alles NAND, ODER?

Bisher haben wir uns nur mit NAND-Gattern beschäftigt. Sie sind eine technische Realisierung der logischen Funktion Und. Nicht ganz, sonst hieße es ja AND und nicht NAND ( NOT AND ).

Wir rekapitulieren die Wahrheitstabelle eines NAND-Gatters mit zwei Eingängen E1 und E2 und dem Ausgang A.

E1 E2 A
0 0 1
0 1 1
1 0 1
1 1 0

Tabelle 1: NAND

Alltägliche Logik

Mit Logik können wir alle umgehen. Wir benutzen sie täglich, ohne viel darüber nachzudenken. Natürlich beherrschen wir sie auch. In den folgenden Abschnitten machen wir uns unser Wissen bewusst und wenden es an. Wir werden es auch technisch umsetzen. In einem weiteren Praktikum werden wir lernen, wie wir komplizierte logische Zusammenhänge beschreiben und technisch realisieren können. Eines können wir jetzt schon vorwegnehmen:

  • Wir brauchen nur NAND-Gatter!

Logik in der Sprache

Wenn wir etwas mitteilen wollen, ist eines der am häufigsten verwendeten Wörter das und.

Wenn wir sagen:

Kurt und Liesel stehen auf der Brücke.

Dann ist uns klar, was damit gemeint ist. Wenn diese Aussage nicht der Fall ist, sagen wir:

Du irrst dich. Das ist falsch. Das ist nicht wahr.

Das kennen wir schon: wahr, falsch, nicht wahr:

   wahr   = 1
   falsch = 0

Als Techniker wenden wir unser Wissen an und schreiben eine Wahrheitstabelle:

Kurt Liesel UND stehen auf der Brücke
0 0 0
0 1 0
1 0 0
1 1 1

Tabelle 2: UND

Das ist natürlich kein NAND. Es ist NICHT NAND. Es ist NOT NAND, genauer gesagt NAND NOT. Wir nennen diese logische Funktion AND.

Wir erinnern: NOT erhalten wir, wenn wir alle Eingänge eines NAND-Gatters miteinander verbinden. Unsere Schaltung ist also:

AndNandNot.png
Bild 1: AND aus NAND

Wenn Kurt auf der Brücke ist, betätigen wir den Taster T1, für Liesel T2. Das Ergebnis wird mit LED2 angezeigt.

Wir haben ein AND mit NAND-Gattern gebaut.

Oder in der Sprache

Eine andere einfache Aussage ist

Kurt oder Liesel stehen auf der Brücke.

Eine gute Übung: Jeder erstellt die Wahrheitstabelle für oder

Kurt Liesel ODER stehen auf der Brücke
0 0 ?
0 1 ?
1 0 ?
1 1 ?

Tabelle 3: ODER?

Ist doch klar:

  1. Wenn beide nicht auf der Brücke sind, ist die Aussage falsch.
  1. Wenn Kurt allein auf der Brücke ist, ist die Aussage wahr.
  1. Wenn Liesel allein auf der Brücke ist, ist die Aussage wahr.
  1. Wenn Kurt und Liesel beide auf der Brücke sind, ist die Aussage falsch.
    Stimmt das? Einige sind der Meinung, dass die Aussage wahr ist.

Wir sind uns nicht ganz sicher, ob die Aussage 4 wahr oder falsch ist. Die meisten von uns haben noch nie darüber nachgedacht. Wir müssen hier eine Lösung finden. Sie ist einfach. Es gibt zwei Arten von ODER:

  • Beim inklusiven ODER ist das Ergebnis auch wahr, wenn beide auf der Brücke sind.
    Für das inklusive ODER schreiben wir OR.
  • Beim exklusiven ODER ist das Ergebnis falsch, wenn beide auf der Brücke sind.
    Für das exklusive ODER schreiben wir EXOR. Damit meinen wir: entweder - oder.

Nun zu den Wahrheitstabellen:

K L OR
0 0 0
0 1 1
1 0 1
1 1 1

Tabelle 4: OR

K L EXOR
0 0 0
0 1 1
1 0 1
1 1 0

Tabelle 5: EXOR

Oder Logik

Wir stellen uns die Frage: Wie bauen wir eine Schaltung für OR?

Attention >

Überspringen

  • Die folgende Bestimmung der Schaltung für OR ist nichts für Einsteiger. Sie wird viele eher abschrecken.
  • Am besten überspringt man diesen Abschnitt zunächst und betrachtet einfach das Ergebnis bei OR aus NAND.

Danach sind die Überlegungen etwas leichter nachvollziehbar.

  • Die gute Nachricht ist, dass wir später ein Programm benutzen werden, um eine logische Schaltung zu bestimmen.

Stellen wir OR und NAND in einer gemeinsamen Tabelle dar.

K L K NAND L OR
0 0 1 0
0 1 1 1
1 0 1 1
1 1 0 1

Tabelle 6: NAND und OR

Versuchen wir zunächst einige Überlegungen anzustellen.

  • Betrachten wir die Ausgänge, so sind die erste und die vierte Zeile vertauscht.
  • Betrachten wir die Eingänge, so sind die Werte der ersten und der vierten Zeile negiert.
  • Versuchen wir, die Eingänge zu negieren.
    Das bedeutet, vor jeden Eingang ein NOT zu setzen, also Nullen in Einsen zu verwandeln.

Logiker sind schreibfaul und setzen statt NOT ein Dach ^ vor den Namen für den logischen Zustand, also statt NOT K, wird ^K geschrieben.

Wir kennen noch eine andere Darstellung für einen negierten Wert: NOT W = W

Leider werden immer wieder beide Darstellungen verwendet.

Entsprechend den obigen Überlegungen werden die Tabelle 6 zwei neue Spalten für ^K und ^L eingefügt. Das ist einfach.

Außerdem ersetzen wir K NAND L durch ^K NAND ^L. Um ^K AND ^L zu berechnen, nehmen wir die Werte aus den Spalten ^K und ^L und tragen die Werte aus der NAND-Tabelle (1) ein.

K L ^K ^L ^K NAND ^L OR
0 0 1 1 1 0
0 1 1 0 0 1
1 0 0 1 0 1
1 1 0 0 0 1

Tabelle 7: OR aus NAND und NOT

Das passt schon ganz gut, außer, dass die Werte von ^K NAND ^L gegenüber OR negiert sind. Wir müssen nur noch ein Not hinzufügen.

K L ^K ^L ^K NAND ^L ^( ^K NAND ^L ) OR
0 0 1 1 1 0 0
0 1 1 0 0 1 1
1 0 0 1 0 1 1
1 1 0 0 0 1 1

Tabelle 8: OR aus NAND und NOT

Die Spalte ^( ^K NAND ^L ) ist wieder einfach.

Und das Ergebnis ist, dass ^( ^K NAND ^L ) mit K OR L übereinstimmt. Also

K OR L = NOT ( (NOT K) AND (NOT L) )

Verwirrend?

Das finden die Logiker auch, das kann man gar nicht richtig lesen. Deshalb schreiben sie als Schreibfaule:

K + L = ^( ^K * ^L )

Sieht aus wie eine Formel mit Addition und Multiplikation. Es gilt

Bezeichnung Symbol Beispiel
NOT ^ ^A
AND * A * B
OR + A + B
NAND ^( A * B )

Tabelle 9: Logische Symbole

Die obigen Überlegungen sind zwar nicht einfach, aber mit Wahrheitstabellen war es zu bewältigen.

Keine Angst, wir müssen nicht immer solche Klimmzüge zu machen. Im nächsten Praktikum werden wir lernen, wie mithilfe eines Programms beliebige logische Funktionen in NAND-Logiken umgewandelt werden können.

Unsere Erkenntnis

K + L = ^( ^K * ^L )

beziehungsweise

K OR L = NOT ( (NOT K) AND (NOT L) )

ist dabei entscheidend.

Aus einem NAND-Gatter machen wir ein OR-Gatter, indem wir vor jeden Eingang des NAND ein NOT setzen und hinter den Ausgang ein weiteres NOT.

OR aus NAND

Wir wollen Elektronik bauen. Also bauen wir ein OR aus NAND-Gattern auf.

ORNAND.png
Bild 2: OR aus NAND

Wir brauchen alle vier Gatter des 74HC00, um ein OR zu bauen.

Wir sollten die Schaltung auf dem Steckboard aufbauen und überprüfen, ob das Ergebnis mit der Wahrheitstabelle für OR übereinstimmt. Wer möchte, kann noch LEDs an die Ausgänge der Zwischenergebnisse ( 3, 6, 11 ) anschließen und mithilfe der Tabelle 8 überprüfen.

NOR

Wenn es NAND gibt, muss es auch NOR geben. Ein NAND ist AND mit einem NOT dahinter. Ein NOR ist dann ein OR mit einem NOT dahinter.

NORNAND.png
Bild 3: NOR aus NAND

Für diese Schaltung benötigen wir einen zweiten Chip. Am Ausgang der Schaltung haben wir zwei NOT hintereinander.

In Bild 3 wurden die Stromversorgungen der Chips nicht eingezeichnet. Ebenso wurden die nicht benutzten Eingänge von U2 nicht dargestellt.

Konvention:
Die Stromversorgung von Bauelementen muss nicht dargestellt werden. Alle nicht verwendeten Anschlüsse werden an 0V oder an 5V gelegt.

Wir erstellen eine Wahrheitstabelle:

K ^K ^^K
0 1 0
1 0 1

Tabelle 10: NOT NOT

Der Tabelle entnehmen wir

^^K       = K
NOT NOT K = K

Wir können logisch denken: Kurt steht nicht nicht auf der Brücke, also: Kurt steht auf der Brücke.

Aha! NOT hinter NOT hebt sich auf. Die beiden NOT in Bild 3 können weggelassen werden.

NORNAND2.png
Bild 4: NOR aus NAND

Wir überprüfen die Schaltungen anhand der Wahrheitstabelle für NOR

K L NOR
0 0 1
0 1 0
1 0 0
1 1 0

Tabelle 11: NOR

Symbole

Für die bisher behandelten logischen Funktionen gibt es IC's mit diesen Funktionen. Natürlich gibt es auch entsprechende Symbole.

Logische-Symbole.png
Bild 5: Grundlegende logische Symbole

In Bild 5 werden die wichtigsten logischen Symbole dargestellt. Außerdem sind die Bezeichnungen der ICs angegeben, die wir verwenden werden.

Da NAND-Gatter wichtig sind, sind auch die verfügbaren Versionen mit drei, vier und acht Eingängen aufgeführt.

Für OR bzw. NOR-Gatter gibt es zwei Symbole mit der gleicher Bedeutung.

Es gibt auch noch NOT. Hier sind die beiden interessanten CMOS-Bausteine 74HC04 und 4049 dargestellt. Wir werden wohl meistens den 4049 verwenden, weil er robuster und universeller ist. Die logische Funktion ist NOT. Der Begriff Inverter bedeutet das Gleiche.

Der 4050 klingt wie ein Witz. Logisch ist das auch der Fall: Er hat keine Wirkung. Elektrisch ist das anders. Wir können ihn z.B. verwenden, wenn wir einen logischen Ausgang für höhere Lasten brauchen. Ein 74HC00 geht längst in die Knie, während der 4050 noch gut funktioniert. Der 4049 hat ähnliche elektrische Eigenschaften.

Interessant ist der Unterschied zwischen den Symbolen von AND und NAND sowie OR und NOR. Das NOT wird durch einen kleinen Kreis am Ausgang beschrieben.

Regeln

  • Logische Funktionen werden durch Wahrheitstabellen beschrieben.
  • Es gibt ein inklusives oder OR und ein exklusives EXOR.
  • In der Logik wird meistens das inklusive OR verwendet.
  • Für ein NOT werden alle Anschlüsse eines NAND-Gatters zusammengeschlossen und als Eingang verwendet.
  • NOT hinter NOT ergibt die Identität. NOT hinter NOT kann weggelassen werden.
  • Ein AND ist ein NAND-Gatter hinter dem ein NOT liegt.
  • Ein OR wird aus NAND-Gattern gebildet, indem vor jeden Eingang des NAND ein NOT geschaltet wird und hinter den Ausgang ein weiteres NOT.
  • Ein NOR, also NOT OR kann wie ein OR aus NAND-Gattern aufgebaut werden. Vor jeden jeden Eingang des NAND wird ein NOT geschaltet. Ein NOT am Ausgang ist nicht erforderlich.
  • Es gibt Symbole für AND, OR und NOT.
  • NOT wird durch einen kleinen Kreis beschrieben.
    Damit wird AND zu NAND und OR zu NOR.

Fazit

Bisher konnten wir alle Logiken mit NAND-Gattern aufbauen.

Wirklich? Und was ist mit EXOR? Das sehen wir uns im nächsten Praktikum an.