Wahrheitstabellen und KV-Diagramme

Jede logische Schaltung lässt sich vollständig durch eine Tabelle beschreiben: für jede Eingangskombination steht da, was am Ausgang herauskommen soll. Diese Wahrheitstabelle ist der Ausgangspunkt fast jeder digitalen Entwicklung. Daraus wird im nächsten Schritt eine logische Funktion abgeleitet — und mit dem KV-Diagramm lässt sich diese Funktion so weit wie möglich vereinfachen, ohne sie zu verändern. Weniger Terme bedeuten weniger Gatter, kürzere Programmzeilen, weniger Fehlerquellen.

Vorwissen

  • Boolesche Algebra
  • Logikgatter: AND, OR, NOT, NAND, NOR, XOR
  • Dualsystem (Binärzahlen)

Lernziele

Nach diesem Beitrag kannst du:

  • Wahrheitstabellen für logische Funktionen aufstellen und richtig lesen
  • aus einer Wahrheitstabelle die disjunktive Normalform ableiten
  • KV-Diagramme mit Gray-Code-Anordnung korrekt befüllen
  • logische Funktionen mit dem KV-Diagramm minimieren
  • Don’t-Care-Belegungen nutzen, um die minimierte Funktion weiter zu vereinfachen

1. Wahrheitstabellen – Aufbau und Lesen

Eine Wahrheitstabelle listet für eine logische Funktion alle möglichen Eingangskombinationen auf — und gibt zu jeder den zugehörigen Ausgangszustand an. Sie ist die einfachste und vollständigste Art, eine digitale Schaltung zu beschreiben.

Aufbau:

  • Links die Eingangsspalten, üblicherweise A, B, C, …
  • Rechts die Ausgangsspalten, üblicherweise Y, Z, …
  • Eine Zeile pro Kombination

Bei n Eingängen hat die Tabelle 2^n Zeilen. Zwei Eingänge ergeben 4 Zeilen, drei Eingänge 8, vier Eingänge 16. Die Zeilenzahl wächst exponentiell — ab fünf Eingängen wird die Tabelle unübersichtlich, ab sechs ist sie kaum noch zu überblicken.

Die Reihenfolge folgt der binären Zählung: die Eingangsspalten werden wie die Ziffern einer Dualzahl gelesen, beginnend mit 0 und aufsteigend bis zum Maximum. Bei drei Eingängen also 000, 001, 010, 011, 100, 101, 110, 111.

Ein Beispiel mit zwei Eingängen A und B und drei häufigen Grundfunktionen:

A B A UND B A ODER B A XOR B
0 0 0 0 0
0 1 0 1 1
1 0 0 1 1
1 1 1 1 0

Mehrere Ausgangsspalten in derselben Tabelle sind problemlos möglich. Ein Volladdierer — ein digitales Rechenwerk, das zwei Bits und einen Übertrag addiert — hat etwa drei Eingänge (zwei Summanden-Bits plus Übertrag-Eingang) und zwei Ausgänge: Summe und Übertrag-Ausgang.

Jede Wahrheitstabelle beschreibt genau eine logische Funktion vollständig. Zwei Schaltungen mit identischer Wahrheitstabelle sind logisch gleichwertig — egal wie sie intern aufgebaut sind.

Eine Wahrheitstabelle hat pfünf Eingänge. Wie viele Zeilen umfasst sie?

  • a) 32
  • b) 25
  • c) 10
  • d) 20

Richtig: a)

Bei n Eingängen gibt es 2^n Kombinationen, also 2^5 = 32 Zeilen. Die Antworten 25 und 10 (5·5 bzw. 5·2) wären lineares Rechnen — die Verdopplung pro zusätzlichem Eingang ist aber exponentiell. 20 passt zu keinem sinnvollen Schema.

In welcher Reihenfolge werden die Eingangskombinationen üblicherweise notiert?

  • a) Beliebig, Hauptsache vollständig
  • b) Mit der kleinsten Anzahl Einsen zuerst
  • c) Aufsteigend als Dualzahl gelesen
  • d) Nach dem Gray-Code

Richtig: c)

Standard ist die Dualzählung von 0 aufsteigend. Das ist eindeutig und reproduzierbar. Der Gray-Code wird im KV-Diagramm verwendet, aber nicht in der Wahrheitstabelle. „Beliebig“ wäre unleserlich, „kleinste Anzahl Einsen zuerst“ entspricht keinem üblichen Schema.

Eine Tabelle hat drei Eingänge A, B, C und zwei Ausgänge Y1, Y2. Beide Ausgänge sind durch die Tabelle vollständig definiert. Wie viele Zeilen hat sie?

  • a) 16
  • b) 8
  • c) 24
  • d) 32

Richtig: b)

Die Zeilenzahl hängt nur von den Eingängen ab, nicht von der Anzahl der Ausgänge. Drei Eingänge ergeben 2^3 = 8 Zeilen. Die Ausgangsspalten werden lediglich rechts angehängt.

2. Von der Wahrheitstabelle zur Schaltfunktion

Eine Wahrheitstabelle lässt sich direkt in eine boolesche Funktion übersetzen — und damit in eine Schaltung aus Gattern. Es gibt zwei systematische Verfahren, die immer funktionieren: die disjunktive Normalform (DNF) und die konjunktive Normalform (KNF).

Disjunktive Normalform. Man sieht sich alle Zeilen an, in denen der Ausgang Y = 1 ist. Jede solche Zeile liefert einen Minterm: ein UND-Produkt aller Eingangsvariablen, wobei jede Variable in negierter oder nicht-negierter Form vorkommt — abhängig davon, ob sie in dieser Zeile 0 oder 1 ist. Eine 1 → Variable normal, eine 0 → Variable negiert. Alle Minterme werden dann mit ODER verknüpft.

Schreibweise:

  • UND: A · B oder einfach AB
  • ODER: A + B
  • NOT: /A (Schrägstrich vor der Variable)

Beispiel mit drei Eingängen:

ABC Y
000 0
001 1
010 0
011 1
100 0
101 0
110 1
111 1

Einsen liegen in den Zeilen mit ABC = 001, 011, 110, 111. Daraus ergeben sich die Minterme:

  • Zeile ABC=001 → /A · /B · C
  • Zeile ABC=011 → /A · B · C
  • Zeile ABC=110 → A · B · /C
  • Zeile ABC=111 → A · B · C

Die DNF lautet:

Y = /A·/B·C + /A·B·C + A·B·/C + A·B·C

Konjunktive Normalform. Man geht spiegelbildlich vor: alle Zeilen mit Y = 0 betrachten. Jede liefert einen Maxterm — eine ODER-Summe aller Variablen, diesmal genau umgekehrt: 0 → Variable normal, 1 → Variable negiert. Alle Maxterme werden mit UND verknüpft.

Im obigen Beispiel sind die Zeilen mit Y = 0 die Zeilen 000, 010, 100, 101. Daraus ergeben sich die Maxterme:

  • Zeile ABC=000 → (A + B + C)
  • Zeile ABC=010 → (A + /B + C)
  • Zeile ABC=100 → (/A + B + C)
  • Zeile ABC=101 → (/A + B + /C)

Die KNF lautet:

Y = (A + B + C) · (A + /B + C) · (/A + B + C) · (/A + B + /C)

Welche Form wählen? DNF und KNF beschreiben dieselbe Funktion und liefern dasselbe Ergebnis. Welche kompakter ist, hängt vom Anteil der Einsen ab:

  • Wenige Einsen → DNF kürzer
  • Wenige Nullen → KNF kürzer
  • Etwa gleichviele → beide ähnlich lang

In der Praxis arbeitet man weit überwiegend mit der DNF, weil sie sich direkter in Gatter-Logik übersetzen lässt (Produkte unten, Summe oben — entsprechend AND-Gatter mit nachgeschaltetem OR-Gatter).

Wichtig: DNF und KNF sind systematische Verfahren, aber meist nicht die kürzeste mögliche Funktion. Genau dort setzt das KV-Diagramm an.

Gelöstes Beispiel

Stelle die DNF zur folgenden Wahrheitstabelle auf.

AB Y
00 1
01 0
10 1
11 1

Gegeben: Wahrheitstabelle mit 2 Eingängen und 4 Zeilen, Y = 1 in Zeilen AB = 00, 10, 11

Gesucht: DNF der Funktion Y

Lösungsweg:

  1. Schritt 1 — Minterme aus den Einsen-Zeilen: Zeile AB=00 (A=0, B=0): /A · /B; Zeile AB=10 (A=1, B=0): A · /B; Zeile AB=11 (A=1, B=1): A · B
  2. Schritt 2 — Minterme per ODER verknüpfen: Y = /A·/B + A·/B + A·B

Ergebnis: Y = /A·/B + A·/B + A·B

Übungen

Stelle die DNF auf für eine Funktion mit zwei Eingängen, die nur dann 1 wird, wenn A = B.

Y = /A·/B + A·B

Stelle die DNF auf:

ABC Y
000 0
001 1
010 1
011 0
100 1
101 0
110 0
111 1

Y = /A·/B·C + /A·B·/C + A·/B·/C + A·B·C (das ist die XOR-Funktion über drei Variablen — Y = 1 bei ungerader Anzahl Einsen am Eingang)

Stelle die KNF auf für eine Funktion mit zwei Eingängen, die nur dann 0 wird, wenn beide Eingänge gleich sind.

Y = (A + B) · (/A + /B). Bei der KNF gilt für Nullen-Zeilen: 0 → Variable normal, 1 → Variable negiert. Nullen liegen in den Zeilen AB=00 und AB=11. Zeile 00 ergibt den Maxterm (A + B), Zeile 11 ergibt (/A + /B). Diese beiden mit UND verknüpft liefern Y = 0 genau bei gleichen Eingängen — das ist die XOR-Funktion.

Ein Schaltkreis hat drei Eingänge und liefert am Ausgang 1, wenn mindestens zwei Eingänge 1 sind (Mehrheitsentscheid). Stelle Wahrheitstabelle und DNF auf.

DNF: Y = /A·B·C + A·/B·C + A·B·/C + A·B·C

Eine Anlage hat vier Endschalter S1 bis S4. Der Freigabe-Ausgang wird 1, wenn genau zwei der Schalter geschlossen sind. Stelle die DNF auf.

6 Minterme aus den Kombinationen mit genau zwei Einsen: Y = /S1·/S2·S3·S4 + /S1·S2·/S3·S4 + /S1·S2·S3·/S4 + S1·/S2·/S3·S4 + S1·/S2·S3·/S4 + S1·S2·/S3·/S4

Bei der DNF werden die Minterme miteinander verknüpft mit …

  • a) … UND, und die Variablen innerhalb der Minterme mit ODER
  • b) … UND, und die Variablen innerhalb der Minterme mit UND
  • c) … ODER, und die Variablen innerhalb der Minterme mit ODER
  • d) … ODER, und die Variablen innerhalb der Minterme mit UND

Richtig: d)

Innerhalb eines Minterms werden alle Variablen mit UND verknüpft (Produkt), die Minterme untereinander mit ODER (Summe). Das ergibt die typische Summe-von-Produkten-Form. Bei der KNF ist es umgekehrt.

Eine Variable A erscheint in einem Minterm einer DNF als /A (negiert). Was bedeutet das für die Eingangszeile, aus der dieser Minterm stammt?

  • a) A war in dieser Zeile 0
  • b) A war in dieser Zeile 1
  • c) A wurde aus der Tabelle gestrichen
  • d) A ist ein Don’t-Care

Richtig: a)

In der DNF gilt: 1 → Variable normal, 0 → Variable negiert. Wenn /A im Minterm steht, war A in der zugehörigen Zeile 0. Das Negieren stellt sicher, dass der Minterm in dieser Zeile als Produkt den Wert 1 ergibt.

Wann ist die KNF in der Regel kompakter als die DNF?

  • a) Wenn die Funktion deutlich mehr Einsen als Nullen hat
  • b) Wenn die Funktion deutlich mehr Nullen als Einsen hat
  • c) Wenn die Funktion genau gleich viele Einsen und Nullen hat
  • d) Wenn die Funktion keine Einsen hat

Richtig: a)

Die KNF wird aus den Nullen-Zeilen gebildet. Wenige Nullen bedeuten wenige Maxterme — die KNF ist dann kurz. Bei wenig Einsen ist umgekehrt die DNF kürzer. Eine Funktion ohne Einsen wäre konstant 0 und braucht keine Form.

3. Das KV-Diagramm – Aufbau und Gray-Code

Eine Wahrheitstabelle enthält alle Informationen, aber sie verrät auf den ersten Blick nichts darüber, welche Minterme sich vereinfachen lassen. Das KV-Diagramm (Karnaugh-Veitch-Diagramm) ordnet dieselben Daten räumlich neu — und macht Vereinfachungspotenzial direkt sichtbar.

Die Idee: gleiche Information wie in der Wahrheitstabelle, aber so angeordnet, dass benachbarte Felder sich genau in einer Variable unterscheiden. Dadurch erkennt man auf einen Blick, welche Variablen für die Funktion „egal“ sind und sich kürzen lassen.

Größen je nach Variablenzahl:

Variablen KV-Größe Felder
2 2 × 2 4
3 2 × 4 8
4 4 × 4 16

Bei 5 Variablen werden zwei 4×4-Diagramme übereinander gelegt — möglich, aber unhandlich. Bei mehr Variablen verwendet man andere Verfahren.

Gray-Code-Anordnung. Die Beschriftung der Spalten und Zeilen folgt nicht der normalen Dualzählung, sondern dem Gray-Code:

Reihenfolge: 00, 01, 11, 10

Statt der gewohnten Folge 00, 01, 10, 11. Der Unterschied: zwischen jedem Paar benachbarter Werte ändert sich genau ein Bit. Bei 00 → 01 ändert sich das rechte Bit. Bei 01 → 11 ändert sich das left Bit. Bei 11 → 10 ändert sich wieder das rechte. Diese Eigenschaft ist der eigentliche Trick des KV-Diagramms.

Layout eines 4-Variablen-KV-Diagramms:

CD AB 00 01 11 10 00 01 11 10 0 1 3 2 4 5 7 6 12 13 15 14 8 9 11 10

Die kleinen Zahlen in den Feldecken sind der Zeilenindex der Wahrheitstabelle — etwa Index 7 für die Zeile ABCD = 0111. Sie helfen beim Übertragen aus der Tabelle ins Diagramm.

Befüllen. Für jede Zeile der Wahrheitstabelle wird der zugehörige Y-Wert in das passende Feld eingetragen. Feld in Zeile AB=01, Spalte CD=11 entspricht der Wahrheitstabellen-Zeile ABCD = 0111 (Index 7).

Randwicklung. Das KV-Diagramm muss man sich rollenförmig vorstellen — wie einen aufgeschnittenen Donut. Die linke und die rechte Spalte sind logische Nachbarn, ebenso die oberste und die unterste Zeile. Zwischen ihnen ändert sich auch nur eine Variable: von Spalte CD=00 links zu Spalte CD=10 rechts kippt nur das linke Bit von 0 auf 1. Das Gleiche gilt für die Zeilen AB=00 oben und AB=10 unten. Diese Randwicklung ist ein häufig übersehenes Merkmal.

In welcher Reihenfolge werden die Spalten oder Zeilen eines KV-Diagramms beschriftet?

  • a) 00, 01, 10, 11
  • b) 00, 01, 11, 10
  • c) 00, 10, 01, 11
  • d) 00, 11, 01, 10

Richtig: b)

Gray-Code-Reihenfolge. Zwischen benachbarten Werten ändert sich exakt ein Bit: 00→01 (rechtes Bit), 01→11 (linkes Bit), 11→10 (rechtes Bit). Variante a wäre Dualzählung — dort ändern sich zwischen 01 und 10 zwei Bits gleichzeitig, und das KV-Diagramm würde seinen Sinn verlieren.

Welcher Effekt entsteht durch die Randwicklung im KV-Diagramm?

  • a) Die Eckfelder werden doppelt gewertet
  • b) Das Diagramm wird kleiner darstellbar
  • c) Die Variablenanzahl erhöht sich um eins
  • d) Linke und rechte Spalte sind logisch benachbart, ebenso obere und untere Zeile

Richtig: d)

Die Randwicklung sorgt dafür, dass das Diagramm in beiden Richtungen geschlossen ist. Eine Eins ganz oben links und eine Eins ganz oben rechts können zusammen einen 2er-Block bilden — auch wenn sie auf dem Papier weit auseinander liegen. Die Eckfelder werden nicht doppelt gewertet, sondern haben pro Achse zwei Nachbarn statt einem.

Ein 4-Variablen-KV-Diagramm enthält wie viele Felder?

  • a) 16
  • b) 4
  • c) 32
  • d) 8

Richtig: a)

Vier Variablen ergeben 2^4 = 16 Eingangskombinationen, also 16 Felder. Das KV-Diagramm hat genauso viele Felder wie die Wahrheitstabelle Zeilen.

4. Blöcke bilden und Funktion minimieren

Im befüllten KV-Diagramm fasst man die Einsen zu Blöcken zusammen. Jeder Block entspricht einem vereinfachten Term in der minimierten Funktion — und je größer der Block, desto kürzer der Term.

Regeln für Blöcke:

  • Die Blockgröße ist eine Potenz von 2: 1, 2, 4, 8 oder 16 Felder
  • Der Block ist rechteckig — keine L-, T- oder Treppenformen
  • Blöcke werden so groß wie möglich gewählt
  • Ränder dürfen überlaufen (Randwicklung nutzen)
  • Blöcke dürfen sich überlappen
  • Jede Eins muss in mindestens einem Block enthalten sein
  • So wenige Blöcke wie möglich verwenden

Was bedeutet ein Block für den Term? Innerhalb eines Blocks bleiben einige Variablen konstant, andere wechseln zwischen 0 und 1. Die Regel lautet:

  • Variable bleibt konstant → kommt in den Term
  • Variable wechselt → fällt weg
  • Konstanter Wert 1 → Variable normal
  • Konstanter Wert 0 → Variable negiert

Daraus folgt direkt:

  • 1er-Block: keine Variable fällt weg → alle 4 Variablen im Term (Minterm)
  • 2er-Block: 1 Variable fällt weg → 3 Variablen im Term
  • 4er-Block: 2 Variablen fallen weg → 2 Variablen im Term
  • 8er-Block: 3 Variablen fallen weg → 1 Variable im Term
  • 16er-Block: alle Variablen fallen weg → konstant 1

Beispiel mit der Funktion Y = A · B + C · D:

CD AB 00 01 11 10 00 01 11 10 0 0 1 0 0 0 1 0 1 1 1 1 0 0 1 0 A·B C·D

Im Beispiel:

  • Roter Block (4 Einsen in der Zeile AB=11): A und B bleiben konstant 1, C und D wechseln durch alle Werte. Der Term lautet A · B.
  • Blauer Block (4 Einsen in der Spalte CD=11): C und D bleiben konstant 1, A und B wechseln durch alle Werte. Der Term lautet C · D.

Die minimierte Funktion ist die ODER-Verknüpfung der Blockterme:

Y = A·B + C·D

Zum Vergleich: Die DNF derselben Funktion hätte 7 Minterme mit jeweils 4 Variablen. Die minimierte Form hat 2 Terme mit jeweils 2 Variablen — deutlich kompakter.

Gelöstes Beispiel

Minimiere die folgende Funktion mit Hilfe eines KV-Diagramms.

ABC Y
000 0
001 1
010 0
011 1
100 0
101 1
110 1
111 1

Gegeben: 3 Variablen, 8 Zeilen, Einsen in den Zeilen ABC = 001, 011, 101, 110, 111

Gesucht: Minimierte Funktion Y

Lösungsweg:

  1. Schritt 1 — 3-Variablen-KV (2 Zeilen × 4 Spalten) befüllen. Zeilen: A = 0 oben, A = 1 unten. Spalten BC im Gray-Code 00, 01, 11, 10.
    A=0: 0, 1, 1, 0
    A=1: 0, 1, 1, 1
  2. Schritt 2 — Blöcke einzeichnen: Großer 4er-Block über die mittleren beiden Spalten (BC=01 und BC=11), beide Zeilen umfasst. A wechselt, B wechselt, C bleibt konstant 1 → Term C. 2er-Block in der unteren Zeile, Spalten BC=11 and BC=10. A bleibt 1, B bleibt 1, C wechselt → Term A · B.
  3. Schritt 3 — Blockterme mit ODER verknüpfen: Y = C + A·B

Ergebnis: Y = C + A·B

Übungen

Minimiere mit dem KV-Diagramm:

AB Y
00 1
01 1
10 0
11 1

Ein 2er-Block in der Zeile A=0 (links und mittlere Spalten) und ein 2er-Block in der Spalte B=1. Y = /A + B.

Minimiere:

ABC Y
000 1
001 1
010 0
011 0
100 1
101 1
110 0
111 0

Großer 4er-Block in der Spalte B=0 (beide Zeilen, beide C-Werte). Y = /B.

Minimiere:

ABC Y
000 1
001 0
010 1
011 0
100 0
101 0
110 1
111 0

Y = /C · /A + B · /C. Genauere Analyse zeigt: 2er-Block in Zeile A=0, Spalten BC=00 und BC=10 (B wechselt, A=0, C=0) → /A · /C. 2er-Block in Spalte BC=10, beide Zeilen (B=1, C=0, A wechselt) → B · /C. Minimiert: Y = /C·(/A + B) = /A·/C + B·/C.

Eine Funktion mit 4 Variablen hat Einsen in den Zeilen mit Index 0, 2, 8, 10. Minimiere.

Y = /B · /D. Die vier Einsen liegen alle in den Spalten CD=00 und CD=10, also bei C beliebig und D=0. In den Zeilen AB=00 und AB=10, also bei A beliebig und B=0. 4er-Block in den Eckfeldern (Randwicklung) → Y = /B · /D.

Eine Funktion mit 4 Variablen hat Einsen genau dann, wenn die Eingänge eine ungerade Anzahl Einsen darstellen (XOR über 4 Variablen). Versuche zu minimieren — was fällt auf?

Es entstehen 8 Einsen, die jeweils einzeln stehen — keine zwei Einsen sind direkt benachbart. Es lässt sich kein Block größer als 1 bilden. Die minimierte Funktion entspricht der DNF mit 8 Mintermen. Erkenntnis: Manche Funktionen lassen sich mit dem KV-Diagramm nicht weiter vereinfachen.

Ein Block in einem 4-Variablen-KV umfasst 4 Felder. Aus wie vielen Variablen besteht der zugehörige Term in der minimierten Funktion?

  • a) 2
  • b) 4
  • c) 1
  • d) 3

Richtig: a)

Bei einem Block der Größe 2^k fallen k Variablen weg. 4 Felder = 2^2, also fallen 2 Variablen weg. Von 4 Variablen bleiben also 2 im Term übrig. Größere Blöcke bedeuten kürzere Terme.

In einem 4-Variablen-KV liegt eine Eins in der oberen linken Ecke (Index 0) und eine Eins in der unteren rechten Ecke (Index 10). Beide sind die einzigen Einsen. Ist hier ein 2er-Block möglich?

  • a) Ja, sie sind benachbart durch die Randwicklung über beide Ränder hinweg
  • b) Nein, sie liegen diagonal und sind nicht benachbart
  • c) Ja, alle Eckfelder eines KV sind benachbart
  • d) Nein, weil sie sich in der Zeile und der Spalte unterscheiden

Richtig: b)

Die Randwicklung verbindet linke und rechte Spalte, sowie obere und untere Zeile — aber nur entlang einer Achse. Diagonale Eckfelder unterscheiden sich in zwei Variablen (A und C oder B und D) und sind keine direkten Nachbarn. Ein 2er-Block setzt voraus, dass sich die Felder in genau einer Variable unterscheiden.

Welche der folgenden Blockgrößen ist in einem KV-Diagramm nicht zulässig?

  • a) 4
  • b) 8
  • c) 6
  • d) 16

Richtig: c)

Nur Potenzen von 2 sind zulässig: 1, 2, 4, 8, 16. Die Zahl 6 ist keine Potenz von 2. Wer einen 6-Felder-Bereich erkennt, muss ihn als 4er-Block pfus überlappenden 2er-Block darstellen — oder als zwei 4er-Blöcke mit Überlappung.

Eine minimierte Funktion ergibt Y = A · C + /B. Im KV-Diagramm muss dafür mindestens ein …

  • a) … 4er-Block für A · C und ein 8er-Block für /B vorhanden sein
  • b) … 2er-Block für A · C und ein 4er-Block für /B vorhanden sein
  • c) … 1er-Block für A · C und ein 2er-Block für /B vorhanden sein
  • d) … 8er-Block für A · C und ein 16er-Block für /B vorhanden sein

Richtig: a)

Bei 4 Variablen bleibt im Term A · C zwei Variablen übrig (B und D fallen weg) → Block der Größe 2^2 = 4. Im Term /B bleibt eine Variable übrig → Block der Größe 2^3 = 8. Generell: Anzahl der wegfallenden Variablen ist k, Blockgröße 2^k.

5. Praktisches Vorgehen und Don’t-Care-Belegungen

Bis hierher liegt das Werkzeug vollständig auf dem Tisch. Der typische Arbeitsablauf in der Praxis besteht aus sechs Schritten:

  1. Anforderung formulieren — wann genau soll der Ausgang 1 werden?
  2. Wahrheitstabelle aufstellen
  3. KV-Diagramm aus der Tabelle befüllen
  4. Blöcke einzeichnen, möglichst groß, möglichst wenige
  5. Minimierten Ausdruck ablesen
  6. Als Schaltung oder Programmcode umsetzen

Don’t-Care-Belegungen. In vielen praktischen Fällen gibt es Eingangskombinationen, die nie auftreten oder deren Ausgangszustand egal ist. Solche Felder bekommen im KV-Diagramm ein X (für „don’t care“, auch „d“ oder „—“ geschrieben).

Bei der Minimierung darf jedes X frei als 0 oder 1 interpretiert werden — abhängig davon, ob es die Blockbildung größer macht. Hilft das X einem Block, größer zu werden, wird es als 1 gewertet und in den Block aufgenommen. Bringt es nichts, lässt man es weg (wertet es als 0).

Typisches Beispiel: Ein Decoder für BCD-Ziffern verarbeitet vier Eingangsbits und gibt Steuerinformationen für die Ziffern 0 bis 9 aus. Die Bitkombinationen 1010 bis 1111 (entspricht 10 bis 15) treten bei korrekter BCD-Codierung nie auf. Diese sechs Felder im KV-Diagramm sind don’t care und können zur Vergrößerung von Blöcken benutzt werden.

Grenzen der KV-Methode. Das Verfahren funktioniert gut bis 4 Variablen. Mit 5 Variablen wird mit zwei übereinandergelegten 4×4-Diagrammen gearbeitet — das geht noch, ist aber unübersichtlich. Ab 6 Variablen wird das KV-Diagramm so umfangreich, dass es kaum noch hilft. Für solche Fälle gibt es das Quine-McCluskey-Verfahren (tabellarisch, systematisch, gut programmierbar) oder Software-Tools, die die Minimierung automatisch durchführen.

Gelöstes Beispiel

Ein Steuersignal Y für eine Anlage hängt von vier Sensoren A, B, C, D ab. Die Wahrheitstabelle ist:

Index 0 (0000): Y=0; Index 1 (0001): Y=1; Index 2 (0010): Y=0; Index 3 (0011): Y=1; Index 4 (0100): Y=0; Index 5 (0101): Y=1; Index 6 (0110): Y=0; Index 7 (0111): Y=1; Index 8 (1000): Y=0; Index 9 (1001): Y=0; Index 10 (1010): Y=0; Index 11 (1011): Y=0; Index 12 (1100): Y=1; Index 13 (1101): Y=1; Index 14 (1110): Y=1; Index 15 (1111): Y=1;

Gegeben: 4 Variablen, 16 Zeilen, Einsen bei Index 1, 3, 5, 7, 12, 13, 14, 15

Gesucht: Minimierte Funktion Y

Lösungsweg:

  1. Schritt 1 — KV-Diagramm befüllen:
    AB=00: 0, 1, 1, 0
    AB=01: 0, 1, 1, 0
    AB=11: 1, 1, 1, 1
    AB=10: 0, 0, 0, 0
  2. Schritt 2 — Blöcke einzeichnen: 4er-Block in den Spalten CD=01 und CD=11, Zeilen AB=00 und AB=01: A bleibt 0, B wechselt, C wechselt, D bleibt 1 → /A · D. 4er-Block in der gesamten Zeile AB=11: A bleibt 1, B bleibt 1, C und D wechseln → A · B.
  3. Schritt 3 — Blockterme verknüpfen: Y = /A·D + A·B

Ergebnis: Y = /A·D + A·B

Übungen

Stelle die Wahrheitstabelle für eine Funktion mit drei Eingängen auf, die genau dann 1 wird, wenn mindestens zwei Eingänge 1 sind (Mehrheit). Minimiere mit dem KV-Diagramm.

Einsen bei ABC = 011, 101, 110, 111. Im KV drei 2er-Blöcke: A·B (Zeile A=1, Spalten BC=11 und BC=10), A·C (über die Randwicklung in Zeile A=1, Spalten BC=11 und BC=01) und B·C (Spalte BC=11, beide Zeilen). Minimiert: Y = A·B + A·C + B·C.

Eine Funktion hat 4 Variablen. Die Einsen liegen bei den Indizes 0, 1, 2, 3, 8, 9, 10, 11. Minimiere.

Im KV liegen die 8 Einsen in den Zeilen AB=00 und AB=10. Diese beiden Zeilen sind durch die Randwicklung benachbart und bilden zusammen einen 8er-Block. A wechselt, B bleibt 0, C und D wechseln. Minimiert: Y = /B.

Eine Funktion hat 4 Variablen. Einsen bei Indizes 5, 7, 13, 15. Don’t-Cares bei Indizes 4, 6, 12, 14. Minimiere unter Ausnutzung der Don’t-Cares.

Im KV liegen die Einsen alle in der Spalte CD=11 and CD=01, jeweils in den Zeilen AB=01 und AB=11. Mit den Don’t-Cares in den Zeilen AB=01 und AB=11, Spalten CD=00 und CD=10, lässt sich ein 8er-Block bilden, der die beiden Zeilen vollständig abdeckt. B bleibt 1, A wechselt, C und D wechseln. Minimiert: Y = B.

Eine logische Verknüpfung soll wahr werden, wenn genau einer der zwei Schalter S1 oder S2 betätigt ist. Erstelle Wahrheitstabelle, DNF und prüfe mit dem KV-Diagramm, ob sich die Funktion weiter minimieren lässt.

Das ist XOR. DNF: Y = /S1·S2 + S1·/S2. Im KV liegen die zwei Einsen diagonal und sind nicht benachbart — keine weitere Minimierung möglich. Die DNF ist bereits die minimierte Form.

Vier Endschalter S1 bis S4 überwachen eine Schiebetür. Der Freigabe-Ausgang Y soll 1 werden, wenn S1 und S2 betätigt sind, oder wenn S3 und S4 betätigt sind. Erstelle die Wahrheitstabelle, fülle das KV und prüfe die minimierte Form.

Aus der Beschreibung folgt direkt Y = S1·S2 + S3·S4. Die Wahrheitstabelle bestätigt: Einsen bei allen Kombinationen, in denen S1=S2=1 oder S3=S4=1 ist. Das KV zeigt zwei 4er-Blöcke (Zeile S1S2=11 komplett und Spalte S3S4=11 komplett, vgl. Beispiel aus Kapitel 4). Y = S1·S2 + S3·S4 ist bereits minimal.

Wie behandelt man ein Don’t-Care-Feld bei der Blockbildung?

  • a) Es muss zwingend in einem Block enthalten sein
  • b) Es darf wie eine 1 in einen Block aufgenommen werden, wenn das einen größeren Block ermöglicht
  • c) Es muss zwingend als 0 gewertet werden
  • d) Es wird als doppelte 1 gezählt

Richtig: b)

Don’t-Cares dürfen frei verwendet werden — werden sie in einem Block mit Einsen aufgenommen, gelten sie als 1; werden sie nicht gebraucht, gelten sie implizit als 0. Sie sind ein „Wahlrecht“ für die Minimierung. Eine Pflicht zur Abdeckung gibt es nicht.

Ab welcher Variablenzahl wird das KV-Diagramm in der Praxis unhandlich?

  • a) Ab 3 Variablen
  • b) Ab 4 Variablen
  • c) Ab 2 Variablen
  • d) Ab 5–6 Variablen

Richtig: d)

Bis 4 Variablen ist das KV gut beherrschbar. Mit 5 Variablen wird es schon umständlich (zwei übereinandergelegte 4×4-Felder), ab 6 unübersichtlich. Dann verwendet man Quine-McCluskey oder Software-Tools.

Bei einem BCD-Decoder treten die Eingangskombinationen 1010 bis 1111 nie auf. Wie werden diese Felder im KV-Diagramm üblicherweise markiert?

  • a) Mit 0
  • b) Mit X (Don’t-Care)
  • c) Mit 1
  • d) Sie werden weggelassen

Richtig: b)

Solche unmöglichen Kombinationen sind klassische Don’t-Cares. Sie werden mit X markiert und können bei der Blockbildung frei verwendet werden. Als 0 oder 1 fest zu setzen würde die Minimierung künstlich einschränken. Weglassen ist keine Option, da das KV-Diagramm immer 2^n Felder hat.

Abschlusstest

Aufgabe 1: Stelle die DNF zur folgenden Wahrheitstabelle auf.
AB=00: Y=0; AB=01: Y=1; AB=10: Y=1; AB=11: Y=0;

Gegeben: Wahrheitstabelle einer XOR-Funktion

Gesucht: DNF

Lösungsweg:

  1. Einsen in Zeilen AB=01 und AB=10. Minterme: /A·B und A·/B.

Ergebnis: Y = /A·B + A·/B

Aufgabe 2: Stelle die Wahrheitstabelle und die DNF für eine Funktion mit drei Eingängen A, B, C auf, die genau dann 1 wird, wenn A = 1 und mindestens einer der anderen Eingänge ebenfalls 1 ist.

Gegeben: A muss 1 sein, und mindestens einer von B oder C zusätzlich

Gesucht: Wahrheitstabelle und DNF

Lösungsweg:

  1. Einsen bei ABC = 101, 110, 111. Minterme: A·/B·C, A·B·/C, A·B·C.

Ergebnis: Y = A·/B·C + A·B·/C + A·B·C. Minimiert (per KV): Y = A·(B + C).

Aufgabe 3: Minimiere die folgende Funktion mit Hilfe eines KV-Diagramms.
ABC=000: Y=1; ABC=001: Y=0; ABC=010: Y=1; ABC=011: Y=0; ABC=100: Y=0; ABC=101: Y=1; ABC=110: Y=0; ABC=111: Y=1;

Gegeben: 3 Variablen, Einsen in Zeilen 0, 2, 5, 7

Gesucht: minimierte Funktion

Lösungsweg:

  1. Im 3-Variablen-KV (A in Zeilen, BC in Spalten Gray-Code 00 01 11 10) liegen die Einsen in Zeile A=0, Spalten BC=00 und BC=10 (2er-Block über Randwicklung) und in Zeile A=1, Spalten BC=01 und BC=11 (2er-Block).
  2. Block A=0, BC=00 und BC=10: B wechselt, A=0, C=0 → /A · /C
  3. Block A=1, BC=01 und BC=11: B wechselt, A=1, C=1 → A · C

Ergebnis: Y = /A·/C + A·C (das ist die XNOR-Funktion zwischen A und C)

Aufgabe 4: Eine Funktion mit 4 Variablen A, B, C, D hat Einsen bei den Indizes 1, 3, 5, 7, 9, 11, 13, 15. Erstelle das KV-Diagramm und minimiere.

Gegeben: Einsen in allen Zeilen, in denen D = 1 ist

Gesucht: minimierte Funktion

Lösungsweg:

  1. KV befüllen. Es zeigt sich, dass alle Einsen in den Spalten CD=01 und CD=11 liegen (also überall dort, wo D=1). Diese beiden Spalten zusammen ergeben einen 8er-Block: A wechselt, B wechselt, C wechselt, D bleibt 1.

Ergebnis: Y = D

Aufgabe 5: Minimiere die Funktion mit Don’t-Cares.
Einsen in den vier Feldern der Zeile AB=01, alle vier Felder der Zeile AB=11 sind X. Restliche Felder sind 0.

Gegeben: Einsen in den vier Feldern der Zeile AB=01, alle vier Felder der Zeile AB=11 sind X.

Gesucht: minimierte Funktion mit Don’t-Cares

Lösungsweg:

  1. Die vier Einsen in Zeile AB=01 lassen sich zu einem 4er-Block (gesamte Zeile) zusammenfassen: A=0, B=1, C und D wechseln → /A·B. Mit den Don’t-Cares in Zeile AB=11 kann ein 8er-Block über beide Zeilen gebildet werden: A wechselt, B bleibt 1, C und D wechseln → B.

Ergebnis: Y = B (mit Nutzung der Don’t-Cares)

Aufgabe 6: Eine Funktion soll überprüfen, ob eine 4-Bit-Eingabe (A, B, C, D als 8-4-2-1) eine gerade Zahl im Bereich 0 bis 9 darstellt. Erstelle die Wahrheitstabelle, kennzeichne die Don’t-Cares für Werte über 9 und minimiere mit dem KV.

Gegeben: BCD-Code, gerade Ziffern 0, 2, 4, 6, 8 → Y=1

Gesucht: minimierte Funktion

Lösungsweg:

  1. Einsen bei Indizes 0, 2, 4, 6, 8. Don’t-Cares bei Indizes 10 bis 15. Im KV bilden sich Blöcke: alle vier Felder in Spalten CD=00 und CD=10 ergeben einen 8er-Block (D=0, C wechselt, A wechselt, B wechselt) — D=0. Allerdings sind nicht alle Felder in diesen Spalten Einsen; Indizes 0, 2, 4, 6 sind 1, Index 8 ist 1, Indizes 10 und 14 sind X. Index 12 ist X. Damit lässt sich ein 8er-Block über die Spalten CD=00 und CD=10 (also D=0) ohne Verletzung der Spezifikation bilden.

Ergebnis: Y = /D (eine Zahl ist gerade, wenn ihr niederwertigstes Bit 0 ist)

Wie viele Felder hat ein 4-Variablen-KV-Diagramm?

  • a) 16
  • b) 8
  • c) 4
  • d) 32

Richtig: a)

2^4 = 16 Eingangskombinationen ergeben 16 Felder im KV. Genauso viele wie Zeilen in der zugehörigen Wahrheitstabelle.

Welche Aussage zum Gray-Code im KV-Diagramm ist richtig?

  • a) Die Felder werden zufällig angeordnet
  • b) Es ist eine optische Verzierung, ohne logische Bedeutung
  • c) Zwischen Nachbarfeldern ändert sich genau eine Variable
  • d) Die Anordnung erlaubt nur 2-Variablen-Diagramme

Richtig: c)

Genau das ist der Sinn des Gray-Codes: zwischen jedem Paar benachbarter Felder unterscheidet sich der Eingangswert in nur einer Variable. Diese Eigenschaft ist die Grundlage für die Blockbildung — denn benachbarte Einsen können nur dann zu einem Block werden, wenn sich genau eine Variable ändert, die dann wegfällt.

Bei einem 8er-Block in einem 4-Variablen-KV bleiben wie viele Variablen im Term übrig?

  • a) 4
  • b) 1
  • c) 2
  • d) 3

Richtig: b)

Bei einem Block der Größe 2^k fallen k Variablen weg. Ein 8er-Block hat 2^3 Felder → 3 Variablen fallen weg → 4 – 3 = 1 Variable bleibt. Je größer der Block, desto kürzer der Term.

Eine Eingangskombination, die in einer Anwendung nie auftreten kann, wird im KV-Diagramm üblicherweise markiert mit …

  • a) … 1
  • b) … gar nichts (leeres Feld)
  • c) … 0
  • d) … X

Richtig: d)

Das X kennzeichnet eine Don’t-Care-Belegung. Sie darf zur Vergrößerung von Blöcken als 1 verwendet werden oder als 0 ignoriert werden. Eine 0 oder 1 fest zu setzen würde die Minimierung künstlich einschränken; ein leeres Feld wäre nicht eindeutig, da das KV-Diagramm immer alle 2^n Kombinationen enthält.

Welche der folgenden Aussagen zur Randwicklung im KV-Diagramm ist falsch?

  • a) Die obere und die untere Zeile sind logisch benachbart
  • b) Die linke und die rechte Spalte sind logisch benachbart
  • c) Diagonal gegenüberliegende Eckfelder sind durch die Randwicklung benachbart
  • d) Die Randwicklung kann zur Bildung größerer Blöcke genutzt werden

Richtig: c)

Diagonal gegenüberliegende Eckfelder unterscheiden sich in zwei Variablen — sie sind nicht benachbart, auch nicht durch die Randwicklung. Die Randwicklung gilt achsenweise: links↔rechts und oben↔unten, jeweils einzeln.

Ein 4er-Block in einem 4-Variablen-KV überdeckt vier Felder, in denen A=0 ist, B wechselt, C wechselt und D=1 ist. Wie lautet der zugehörige Term?

  • a) A · B · D
  • b) /A · /D
  • c) /A · D
  • d) B · C · /D

Richtig: c)

Konstante Variablen kommen in den Term: A=0 → /A, D=1 → D. Wechselnde Variablen fallen weg: B und C. Der Term lautet /A · D.

Eine Funktion mit drei Eingängen hat ihre Einsen in den Wahrheitstabellen-Zeilen 1, 2 und 4. Welche der folgenden Aussagen trifft zu?

  • a) Die DNF dieser Funktion hat genau zwei Minterme
  • b) Die Funktion lässt sich mit dem KV-Diagramm nicht weiter minimieren
  • c) Die minimierte Funktion lautet Y = A + B + C
  • d) Die Funktion lässt sich auf einen einzigen Term reduzieren

Richtig: b)

Die Indizes 1, 2, 4 entsprechen den Zeilen ABC = 001, 010, 100. Im 3-Variablen-KV liegen diese drei Einsen isoliert voneinander, keine zwei sind benachbart. Es lassen sich nur 1er-Blöcke bilden. Die DNF mit drei Mintermen ist bereits die minimale Form: Y = /A·/B·C + /A·B·/C + A·/B·/C.

Wann ist es sinnvoll, statt der DNF mit der KNF zu arbeiten?

  • a) Immer, weil sie kürzer ist
  • b) Nie, weil sie schwerer zu lesen ist
  • c) Wenn die Schaltung nur ODER-Gatter verwendet
  • d) Wenn die Funktion deutlich mehr Einsen als Nullen hat

Richtig: d)

Die KNF wird aus den Nullen-Zeilen aufgebaut. Wenige Nullen ergeben wenige Maxterme — die KNF wird kompakt. DNF und KNF sind logisch gleichwertig; welche kürzer ist, hängt vom Verhältnis von Einsen zu Nullen ab.

Eine Funktion Y wurde aus einer Wahrheitstabelle als DNF mit acht Mintermen abgeleitet. Nach der Minimierung mit dem KV-Diagramm enthält sie einen einzigen Term aus einer Variable. Was lässt sich daraus schließen?

  • a) Die Funktion hat acht Einsen, die im KV alle in einem 8er-Block liegen
  • b) Die Minimierung war fehlerhaft
  • c) Die Funktion hat 16 Einsen
  • d) Die DNF war falsch aufgestellt

Richtig: a)

Acht Minterme bedeuten acht Einsen. Ein Term aus einer Variable in der minimierten Form bedeutet einen Block der Größe 2^(n-1), also bei vier Variablen einen 8er-Block. Alle acht Einsen liegen genau in diesem Block. Das ist eine konsistente Situation — keine Fehlüberlegung.

Welche der folgenden Aussagen zur Minimierung mit dem KV-Diagramm ist falsch?

  • a) Größere Blöcke ergeben kürzere Terme
  • b) Don’t-Cares dürfen frei zur Vergrößerung von Blöcken genutzt werden
  • c) Blöcke dürfen sich überlappen
  • d) Ein 6er-Block ist erlaubt, wenn er sechs Einsen in einem Rechteck überdeckt

Richtig: d)

Falsch ist Option d. Nur Blockgrößen, die Potenzen von 2 sind, sind erlaubt: 1, 2, 4, 8, 16. Sechs Einsen in einem Rechteck müssen als 4er-Block plus überlappenden 2er-Block dargestellt werden. Die anderen drei Aussagen treffen zu.

Was beschreibt ein Minterm in der DNF?

  • a) Ein einzelnes Feld im KV-Diagramm, das einer Wahrheitstabellen-Zeile mit Y=1 entspricht
  • b) Den größten möglichen Block im KV-Diagramm
  • c) Eine ODER-Verknüpfung aller Variablen
  • d) Den minimierten Endausdruck

Richtig: a)

Ein Minterm ist die UND-Verknüpfung aller Eingangsvariablen in ihrer normalen oder negierten Form, abhängig von der Wahrheitstabellen-Zeile. Er entspricht genau einem Feld (Eingangskombination) und einem 1er-Block im KV-Diagramm. Mehrere Minterme werden per ODER zur DNF verknüpft.

Eine Funktion soll als Schützsteuerung mit möglichst wenigen Schaltkontakten realisiert werden. Welche Vorgehensweise ist sinnvoll?

  • a) Direkt aus der Anforderung den Schaltplan zeichnen
  • b) Die KNF verwenden, weil sie kompakter ist
  • c) Die DNF verwenden, weil sie systematisch ist
  • d) Aus der Wahrheitstabelle ein KV-Diagramm aufstellen und die Funktion minimieren

Richtig: d)

Weniger Kontakte bedeuten weniger Material, weniger Verdrahtungsaufwand und weniger Fehlerquellen. Die minimierte Funktion liefert genau das. Die DNF wäre systematisch, aber meist zu lang. KNF kann passend sein, ist aber kein Allheilmittel. Direkt zeichnen ohne formale Minimierung führt selten zur kürzesten Lösung.

Glossar

Wahrheitstabelle
Tabelle, die für eine logische Funktion alle Eingangskombinationen und die zugehörigen Ausgangszustände auflistet. Bei n Eingängen hat sie 2^n Zeilen.
Minterm
UND-Produkt aller Eingangsvariablen einer Funktion, bei dem jede Variable normal oder negiert vorkommt. Ein Minterm entspricht genau einer Wahrheitstabellen-Zeile mit Y = 1.
Maxterm
ODER-Summe aller Eingangsvariablen, bei der jede Variable normal oder negiert vorkommt. Ein Maxterm entspricht genau einer Wahrheitstabellen-Zeile mit Y = 0.
Disjunktive Normalform (DNF)
Standardform einer logischen Funktion als ODER-Verknüpfung mehrerer Minterme. Wird systematisch aus den Einsen-Zeilen der Wahrheitstabelle gebildet.
Konjunktive Normalform (KNF)
Standardform einer logischen Funktion als UND-Verknüpfung mehrerer Maxterme. Wird systematisch aus den Nullen-Zeilen der Wahrheitstabelle gebildet.
KV-Diagramm
Karnaugh-Veitch-Diagramm. Räumliche Anordnung der Wahrheitstabellen-Werte nach Gray-Code, mit der sich logische Funktionen grafisch minimieren lassen.
Gray-Code
Codierung der Eingangskombinationen in der Reihenfolge 00, 01, 11, 10, sodass sich zwischen benachbarten Werten genau ein Bit ändert.
Block
Gruppe benachbarter Einsen im KV-Diagramm, die zu einem vereinfachten Term zusammengefasst werden. Die Blockgröße muss eine Potenz von 2 sein, der Block muss rechteckig sein.
Randwicklung
Eigenschaft des KV-Diagramms, bei der die linke und die rechte Spalte sowie die obere und die untere Zeile logisch benachbart sind. Blöcke dürfen über den Rand hinweg gebildet werden.
Don’t-Care-Belegung
Eingangskombination, die in der Anwendung nie auftritt oder deren Ausgangszustand gleichgültig ist. Wird im KV mit X markiert und kann frei zur Vergrößerung von Blöcken verwendet werden.
Scroll to Top