Unterrichts- und Lernmaterial für Mikrocontroller
Unterrichts- und Lernmaterial fürMikrocontroller

Digitaltechnik – 1

1 - Schaltalgebra

Im Kapitel Digitaltechnik - 0 wurden die Schaltzeichen und Wahrheitstabellen des AND-, NAND-, OR-, NOR-, XOR- und NON-Gatters vorgestellt. In diesem Abschnitt geht es um die Erfassung der Gesetze der Schaltalgebra mit Hilfe eines Bitmustergenerators und Logikanalysators auf Software-Basis (ProfiLab Expert).

 

Alternativ lassen sich die Wahrheitstafeln auch mit Hilfe eines Propeller Controllers P2 aufnehmen. Wie das geht, wird hier an Hand verschiedener Gatter exemplarisch gezeigt -> Übung 2.

 

Für die sechs Grundgatter gilt:

NAND- und AND-Gatter

Abb. 1 - Zustandsdiagramm von AND- und NAND-Gatter.

 

 

 

 

 

Tabelle 1: Wahrheitstafel von AND- und NAND-Gatter

Die boolesche Gleichung für ein AND-Gatter lautet: Q = A * B

Die boolesche Gleichung für ein NAND-Gatter lautet: Q = (A * B)´

OR- und NOR-Gatter

Abb. 2 - Zustandsdiagramm von OR- und NOR-Gatter.

 

 

 

 

 

Tabelle 2: Wahrheitstafel von OR- und NOR-Gatter

Die boolesche Gleichung für ein OR-Gatter lautet: Q = A + B

Die boolesche Gleichung für ein NOR-Gatter lautet: Q = (A + B)´

XOR- und INV-Gatter

Abb. 3 - Zustandsdiagramm von XOR- und INV-Gatter.

 

 

 

 

Tabelle 3: Wahrheitstafel von XOR- und INV-Gatter

Die boolesche Gleichung für ein XOR-Gatter lautet: Q = (A´ * B) + (A * B´).

Die boolesche Gleichung für ein INV-Gatter lautet: Q = A´.

 

Das Apostroph bezeichnet das Inverse von A, auch als /A geschrieben. Die Multiplikation deutet auf AND-Gatter, die Addition auf OR-Gatter hin.

2 - Gesetze der Schaltalgebra

Kommutativgesetz (Vertauschungsgesetz)

Die Schaltvariablen einer AND- oder OR-Verknüpfung sind kommutativ; d.h., ihre Anschlüsse sind vertauschbar.

  • AB = BA und A + B = B + A

Assoziativgesetz (Verbindungsgesetz)

Bei einer AND- oder OR-Verknüpfung mit mehr als zwei Eingängen pro Gatter ist die Reihenfolge, in der die Schaltvariablen verknüpft werden, beliebig.

  • A(BC) = (AB)C = (AC)B = ABC   (der Malpunkt zwischen den Buchstabentermen wurde hier weggelassen)
  • A + (B + C) = (A  + B) + C = (A + C) + B = A + B + C

Distributivgesetz (Verteilungsgesetz)

Wie in der Algebra gilt auch in der boolschen Algebra das Verteilungsgesetz.

  • (AB) + (AC) = A(B + C)

Dies lässt sich mit einer entsprechenden Schaltung sofort überprüfen.

 

Für die linke Seite der Gleichung gilt: die Anschlüsse A und B sowie A und C sind UND-verknüpft (Multiplikation) und werden anschließend ODER-verbunden (Addition).

Für die rechte Seite der Gleichung gilt: B und C sind ODER-verknüpft; das Ergebnis davon wird mit A UND-verknüpft. Wenn die Gleichung stimmt, müssen die Zustandsdiagramme beider Schaltungen identisch sein (s. Abb. 4).

Abb. 4 – Die Zustandsdiagramme beider Schaltungen (grün: linke Seite, rot: rechte Seite des Schaltungsaufbaus) sind identisch. Damit ist das Distributivgesetz bestätigt.

Weitere Gesetze der boolschen Algebra, die sich ebenfalls mit Hilfe von Zustandsdiagrammen überprüfen lassen, sind:

 

Komplementgesetz

 

  1. A + A´ = 1
  2. A * A´ = 0

 

Idempotenzgesetz

 

  1. A + A = A
  2. A * A = A
  3. A´´ = A

 

Gesetz vom kleinsten und größten Element

 

  1. A + 0 = A
  2. A + 1 = 1
  3. A * 0 = 0
  4. A * 1 = A

Mit Hilfe von Zustandsdiagrammen lassen sich De Morgansche Identitäten schnell überprüfen. Zwei Beispiele sollen das zeigen.

De Morgansche Identitäten

  1. (A * B)´ = A´ + B´       
  2. (A + B)´ = A´ * B´  

In Gleichung 1 sind auf der linken Seite A und B UND-verknüpft und das Ergebnis wird anschließend negiert. Auf der rechten Seite sind die negierten Anschlüsse A und B ODER-verknüpft.

Die folgende Abbildung zeigt sowohl den diskreten Schaltungsaufbau als auch die Zustandsdiagramme der schaltungstechnischen Umsetzung der beiden De Morgan-Identitäten.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Abb. 5 – Die Zustandsdiagramme beider Schaltungen (linke Seite NAND1: Eingänge D0, D1 und Ausgang D2, rechte Seite OR1: Eingänge D5, D6 und Ausgang D4) sind identisch.

Ergebnis: Ein am Ausgang negiertes AND-Gatter verhält sich so wie ein an den Eingängen negiertes OR-Gatter.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Abb. 6 – Die Zustandsdiagramme beider Schaltungen (linke Seite NOR1: Eingänge D0, D1, Ausgang D2, rechte Seite AND1: Eingänge D5, D6 und Ausgang D4) sind identisch.

Ergebnis: Ein am Ausgang negiertes OR-Gatter verhält sich wie ein an allen Eingängen negiertes AND-Gatter.

Schauen wir uns eine letzte Identität an und überprüfen sie anschließend mit dem Logikanalysator:

  • (A + B) * (A + C) = A + (B * C)

Enthalten über eine AND-Verknüpfung verbunden OR-Verknüpfungen eine gleiche Schaltungsvariable (in diesem Beispiel ist es die Größe A), dann lässt sie sich ausklammern.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Abb. 6a – Die Zustandsdiagramme beider Schaltungen (linke Seite grün: Eingänge D0=A, D1=B, D2=C, Ausgang D3=Q, rechte Seite rot: Eingänge D4=A, D5=B, D6=C und Ausgang D7=Q) sind identisch.

Mit diesem Rüstzeug sollten wir jetzt in der Lage sein,

  • einfache digitale Schaltnetze sowohl umfassend zu untersuchen (Analyse oder Reengineering), was so viel heißt wie, die logischen Funktionen und Strukturen einer Schaltung umfassend offenzulegen und die Wahrheitstafel bzw. Funktionstabelle der Schaltung aufzustellen, als auch
  • eine digitale Schaltung, die eine bestimmte Aufgabe genau erfüllen soll, zu entwickeln (Synthese).

3 - Analyse von Schaltnetzen

Hat eine Schaltung n Eingangsgrößen, dann gibt es 2n Ausgangsgrößen. Es liegt deshalb nahe, dass wir uns nur mit "kleinen" Schaltnetzen beschäftigen werden.

Logische Gatter mit zwei Eingangskanälen A und B haben immer 22= 4 Ausgangsgrößen. Die Wahrheitstafel wird dabei immer so aufgestellt, dass man von 0 beginnend dual hochzählt, das vereinfacht später die Vergleichbarkeit.

Übung 1

Es wird eine unbekannte Schaltung analysiert; als Hilfe dazu dient das Zustandsdiagramm (s. Abb. 7).

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Abb. 7 – Digitale Schaltung mit zugehörigem Zustandsdiagramm. Das ROM wurde mit dem Bitmuster 0 0, 0 1, 1 0 und 1 1 belegt, den vier möglichen logischen Zuständen an den beiden Eingängen.

Lösung

Aus dem Schaltungsaufbau lässt sich die folgende boolesche Gleichung aufstellen:

  • Q = (A´ * B) + (A * B´)

Die Auswertung des Zustandsdiagramms ergibt folgende Wahrheitstafel:

Tabelle 4: Wahrheitstafel für die Schaltung aus Übung 1

Die vorliegende Wahrheitstafel entspricht der eines XOR-Gatter (vergleiche dazu Abschnitt 1 - Schaltalgebra - XOR- und INV-Gatter auf dieser Seite). Das Schaltnetz lässt sich – bei gleicher Funktionalität – durch ein XOR-Gatter ersetzen.

Übung 2

Die Schaltung in dieser Übung besteht aus drei XOR-Gattern (s. Abb. 8) und verfügt über vier Eingänge. Damit ergeben sich 16 mögliche Ausgangszustände. Das Verhalten des Schaltnetzes soll analysiert werden.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Abb. 8 – Unbekannt digitale Schaltung mit zugehörigem Zustandsdiagramm. Das ROM wurde mit insgesamt 16 verschiedenen Bitmustern belegt. Die zugehörige Wahrheitstafel lässt sich aus dem Zustandsdiagramm erstellen.

Wahrheitstafel aufstellen

#

  Eingang

A  B  C  D

Ausgang

     Q

Gleichung bei einer "1" am Ausgang
0  0   0  0   0 0  
1  0   0  0   1 1 A´ B´ C´ D
2  0   0  1   0 1 A´ B´ C D´
3  0   0  1   1 0  
4  0   1  0   0 1 A´ B C´ D´
5  0   1  0   1 0  
6  0   1  1   0 0  
7  0   1  1   1 1 A´ B C D
8  1   0  0   0 1 A B´ C´ D´
9  1   0  0   1 0  
10  1   0  1   0 0  
11  1   0  1   1 1 A B´ C D
12  1   1  0   0 0  
13  1   1  0   1 1 A B C´ D
14  1   1  1   0 1 A B C D´
15  1   1  1   1 0  

Jedem HIGH- oder "1"-Signal am Ausgang lässt sich eine boolsche Gleichung zuordnen. Dies kann man in der Spalte "Gleichung bei einer ..." ablesen.

Wie man sofort erkennen kann, ist der Ausgang immer dann HIGH oder 1, wenn die Anzahl der Einsen, die an den Eingängen anliegen, ungerade ist (Odd-Parity-Check oder ungerade Prüfbit-Erzeugung).

Übung 3

Mit einem Taktgeber, einem 4-Bit-Zählerbaustein, einer 7-Segment-Anzeige und einem ROM soll ein einstelliger Zähler (0 - 9) aufgebaut werden.

Übung 3 - Aufbau eines Dezimalzählers von 0 - 9
Aufgabe
  • Mit einem Taktgeber, einem 4-Bit-Zählerbaustein, einer 7-Segment-Anzeige und einem ROM soll ein Zähler (0 - 9) nach Abb. 9 aufgebaut werden.
  • Gib die Bitmusterfolge für ein 7-Segment-Display in das ROM ein; insgesamt 10 verschiedene Bitmuster.
  • Überprüfe die Schaltung nach dem Zusammenbau auf Funktionstüchtigkeit und korrigiere ggf. Fehler. Fällt etwas auf?
  • Ergänze die Schaltung durch eine Zusatzschaltung so, dass der Zählerbaustein nach der Zahl 9 sofort wieder bei 0 anfängt zu zählen und nicht weiterzählt bis 16 und dann erst wieder bei 0 anfängt.
Material
  • 1x  Programm ProfiLab-Expert 4.0 mit den Bausteinen
  • 1x  Taktgeber
  • 1x  4-Bit Zählerbaustein
  • 1x  7-Segment-Anzeige
  • 1x  ROM-Baustein
  • diverse Gatter

 

Schaltungsaufbau

Bitmusterfolge im ROM

Die Einsen und Nullen im ROM orientieren sich an den sieben Segmenten der Anzeige und ihrer Verbindung zum ROM. D0 oder bit 0 ist mit dem Segment a, D1 oder bit 1 ist mit dem Segment b usw. verbunden.

Verhalten der Zählschaltung

 

Es fällt auf, dass die Zählschaltung immer bis 16 hochzählt; das hat zur Folge, dass die Ziffernanzeige nach der 9 eine gewisse Zeit dunkel bleibt, bis der Zähler wieder bei 0 beginnt und die entsprechende Ziffer auf seinem Display darstellt.

Um das Dunkelschalten zu vermeiden, muss die Schaltung so abgewandelt werden, dass der Zähler mit Erreichen der Zahl 10 (0b1010) ein RESET durchführt.

RESET-Schaltung entwerfen

Gesucht ist eine Schaltung, die, sobald die Bitfolge 0b1010 erreicht ist, auf den Ausgang eine 0 oder 1 gibt (je nach Vorgabe, welcher Pegel am Zählerbaustein ein Reset auslöst; Datenblatt lesen) und damit ein Reset des Zählers auslöst.

Der Bitfolge 0b1010 entspricht der boolesche Term

  • Q = AB´CD´

Benötigt wird ein AND-Gatter mit vier Eingängen; die Eingänge B und D werden invertiert.

Die folgende Schaltskizze zeigt den modifizierten Versuchsaufbau.

Abb. 9 - Zählerschaltung mit RESET; der Ausgang des AND-Gatters muss negiert werden, da ein Reset des Zählers mit einer 0 oder LOW ausgelöst wird.

Die Zählerschaltung funktioniert jetzt einwandfrei; sobald die Zahl 0b1010 erreicht ist, wird der Ausgang von AND1 auf 0 gesetzt und löst damit ein RESET des Zählers aus. Die binären Pseudotetraden (Dualzahlen > 0b1010) werden vom Zähler mit Hilfe des Resets übersprungen.

Druckversion | Sitemap
© Reinhard Rahner - Gettorf