Elektrische Logiksysteme

Transcription

Elektrische Logiksysteme
Fortgeschrittenenpraktikum I
Universität Rostock - Physikalisches Institut
10. Elektrische Logiksysteme mit
Rückführung
Name:
Betreuer:
Versuch ausgeführt:
Protokoll erstellt:
Daniel Schick
Dipl. Ing. D. Bojarski
22. Juni 2006
25. Juni 2006
2
Inhaltsverzeichnis
1 Versuchsbeschreibung
1.1 Ziel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.2 Aufgaben . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4
4
4
2 Trigger
2.1 RS-Trigger . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.2 D-Trigger . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.3 JK-Master-Slave-Trigger . . . . . . . . . . . . . . . . . . . . . . . . .
5
5
6
6
3 Register
7
4 Zähler
4.1 asynchroner BCD-Zähler . . .
4.2 asynchroner Modulo-m-Zähler
4.3 synchroner Modulo-m-Zähler .
4.4 3-stelliger Dezimalzähler . . .
.
.
.
.
.
.
.
.
3
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
8
8
8
9
10
1 Versuchsbeschreibung
1.1 Ziel
Kennenlernen der Wirkungsweise von elementaren Logikschaltungen mit Rückführung
(Trigger, Flip-Flop) und ihrer Anwendungen als Register, Zähler und Frequenzteiler.
1.2 Aufgaben
1. Trigger
a) Realisieren Sie aus NAND-Gattern einen RS- und einen getakteten RSTrigger. Für den Takt ist ein prellfreier Schalter zu verwenden.
Geben Sie die Übertragungsfunktion an.
b) Untersuchen Sie das Schaltverhalten eines JK-Master-Slave-Triggers und
eines D-Triggers. Geben Sie die Ausgangsbelegung nach den Taktsignal
in Abhängigkeit von dem Zustand vor den Takt und der Belegung der
Vorbereitungseingänge (Zustandstabelle) an.
Hinweis: Nutzen Sie die vorhandenen Trigger.
2. Register
a) Bauen Sie mit den JK-Master-Slave-Triggern ein Schieberegister auf und
kontrollieren Sie die Funktionsfähigkeit.
b) Ergänzen Sie das Schieberegister mit NAND-Gattern zu einem Schieberegister mit Datenkreislauf und überprüfen Sie die Funktion.
(fakultativ)
3. Zähler
a) Bauen Sie aus JK-Triggern einen BCD-Zähler (asynchron oder synchron)
auf.
b) Bauen Sie einen asynchronen Modulo-m-Zähler auf, indem Sie die J- und
K-Eingänge entsprechend beschalten. (m wird vom Betreuer vorgegeben)
c) Entwickeln Sie einen synchronen Modulo-m-Zähler durch entsprechende
Beschaltung der Vorbereitungseingänge. Nehmen Sie das Taktdiagramm
auf. (m wird vom Betreuer vorgegeben)
d) Überprüfen Sie die Funktion des 3-stelligen Dezimalzählers (Zähler, Decoder und Anzeige). Erklären Sie die Funktionsweise anhand eines Taktdiagramms der Steuereingänge.
Schalten Sie die Zähler zu einem programmierbaren Teiler mit einem Teilerverhältnis von 1 bis 99 zusammen. Überprüfen Sie die Funktion und
erklären Sie die Funktionsweise.
4
2 Trigger
2.1 RS-Trigger
Mit den, aus dem letzten Versuch bekannten, NAND-Gattern, lassen sich sehr einfach so genannte Trigger realisieren. Der wichtigste Unterschied zu einfachen Logikschaltungen, ist die Rückführung der Ausgänge der NAND-Gattern an ihre eigenen
Eingänge.
In Abb. 1 ist ein RS-Trigger dargestellt. Seine beiden Eingänge werden mit S für Set
und R für Reset bezeichnet. Die beiden Ausgänge Q und Q sind jeweils konjugiert
zu einander. Der RS-Trigger besitzt zwei stabile Zustände, die durch unterschiedliche Belegung von R und S erreicht werden können. Das Schaltverhalten ist in der
untenstehenden Tabelle dargestellt. Die Abfolge H, L, H bedeutet, dass die zugehörige Variable die entsprechende Zustandsfolge durchlaufen muss, damit der Trigger in
einen der beiden stabilen Zustände gelangt.
Wichtig ist, dass nach dem Erreichen eines stabilen Zustandes, diejenige Eingangsvariable, die diesen Zustand herbeigeführt hat, nicht mehr aus diesem herausführen
kann. Der RS-Trigger kann sich also merken welche Eingangsvariable die Zustandsfolge H, L, H durchlaufen hat. Da der Zustand R = L und S = L einen undefinierten
Zustand erzeugt, ist dieser Verboten.
&
S
Q
x1
x2
R
Setzlage
Rücksetzlage
&
S
H, L, H
H
R
H
H, L, H
Q
H
L
Q
Abbildung 1: Schaltplan RS-Trigger
Der RS-Trigger wurde realisiert und seine Funktionsweise kontrolliert. Als Erweiterung kann der getaktete RS-Trigger angesehen werden, s. Abb. 2. Seine beiden
Eingänge werden durch einen Takt C gesteuert und sind zusätzlich negiert. Dadurch
schaltet dieser Trigger nur bei fallender Flanke des Taktsignals C, welches durch eine
Rechteckspannung realisiert wird. Die untenstehende Zustandstabelle entspricht der
negierten Zustandstabelle des normalen RS-Triggers.
Auch dieser Trigger wurde aufgebaut und seine Zustände wurden erfolgreich mit
der theoretischen Zustandstabelle verglichen.
5
S
&
&
Q
C
Setzlage
Rücksetzlage
&
&
Q
S
R
Q
L, H, L
L
H
L
L, H, L L
R
Abbildung 2: Schaltplan getakteter RSTrigger
2.2 D-Trigger
Ein D-Trigger erhält man aus einem getaketen RS-Trigger dessen Eingänge nicht mehr
unabhängig voneinander sind, sondern negiert zueinander geschaltet werden, s. Abb.
3. Der D-Trigger schaltet bei dem gezeigten Aufbau jedoch nicht bei fallender Flanke,
sondern immer bei einem High des Taktsignals. Bei einem Low wird der Zustand gehalten. Der D-Trigger wurde aufgebaut und die untenstehende Zustandstabelle konnte
dabei bestätigt werden.
&
D
&
Q
C
&
&
Q
&
D
H
L
Q
H
L
Abbildung 3: Schaltplan D-Trigger
2.3 JK-Master-Slave-Trigger
Ein JK-Master-Slave-Trigger besteht aus zwei getakteten RS-Triggern die hintereinander geschaltet sind, einem Master und einem Slave. Er besitzt die Eingänge J und
K sowie einen Takteingang C. Die Ausgänge werden wie schon bekannt mit Q und
Q bezeichnet. Auch der JK-Trigger schaltet nur bei abfallender Flanke wobei sein
Schaltverhalten von seiner Anfangsbelegung Qn−1 abhängig ist, s. Tab. 1. Auch dieses
Schaltverhalten konnte experimentell mit Hilfe eines fertigen JK-Triggers bestätigt
6
werden. Es bietet sich nun bei diesem Trigger an, die zugehörige Zustandstabelle zu
vereinfachen, s. Tab. 2. Wobei ∅ bedeutet, dass die Belegung in diesem Fall egal ist.
J
L
L
L
L
H
H
H
H
K
L
L
H
H
L
L
H
H
Qn−1
L
H
L
H
L
H
L
H
Qn
L
H
L
L
H
H
H
L
Verhalten
halten
halten
zurücksetzen
zurücksetzen
setzen
setzen
tauschen
tauschen
Schaltvorgang
L→L
L→H
H→L
H→H
J
L
H
∅
∅
K
∅
∅
H
L
Tabelle 2: vereinfachte Zustandstabelle JK-Trigger
Tabelle 1: Zustandstabelle JK-Trigger
3 Register
Ein Register, s. Abb. 4, dient zur kurzzeitigen Speicherung eines Eingangssignals.
Ein Register besteht aus einer beliebigen Anzahl von hintereinander geschalteten
JK-Triggern, die alle synchron getaktet sind. Je nach Eingangsbelegung kann das
Ausgangssignal des ersten JK-Triggers gesteuert werden. Nach jedem Takt wird dieses dann an den nächsten Trigger weitergegeben. Somit entspricht die Länge der
speicherbaren Signalfolge, der Anzahl der hintereinander geschalteten RS-Trigger. Damit der Register fehlerfrei arbeiten kann, wurden seine Eingänge jeweils mit prellfreien
Schaltern in Form von RS-Triggern belegt. Die Funktionsfähigkeit wurde anhand von
Leuchtdioden an den Ausgängen der JK-Trigger mit insgesamt 12 JK-Triggern überprüft.
Abbildung 4: Schaltplan Register
7
4 Zähler
4.1 asynchroner BCD-Zähler
Zu Beginn dieses Versuchsabschnittes wurde ein schon bekannter BCD-Zähler aufgebaut, diesmal jedoch in asynchroner Form mit JK-Triggern anstelle von D-Triggern,
s. Abb 5. Das Taktdiagramm, s. Abb. 6, zeigt von Oben nach Unten das Taktsignal
sowie die Ausgänge der Trigger X1 bis X4 .
Abbildung 5: Schaltplan asynchron BCD-Zähler
Abbildung 6: Taktdiagramm asynchroner BCD-Zähler
4.2 asynchroner Modulo-m-Zähler
i
1
2
3
4
Ci
T
T
X2
X2
Ji
X2 X4
X1
X4
X3
Ki
H
X1 ∨ X4
H
H
Tabelle 3: Beschaltung des asynchronen Modulo-m-Zählers
8
Es bestand nun die Aufgabe einen Modulo-m-Trigger mit m = 10 zu entwickeln
und zu realisieren. Mit einem vorgegeben Taktdiagramm wurde zuerst die Beschaltung der JK-Trigger entwickelt, s. Tab. 3. Anschließend wurde eine entsprechende
Schaltung, s. Abb. 7, aufgebaut und das Taktdiagramm, s. Abb. 8, aufgenommen und
mit der Vorgabe verglichen. Das Taktdiagramm zeigt wieder von Oben nach Unten
das Taktsignal T sowie die Ausgänge der Trigger X1 bis X4 .
X1
X2
X3
X4
&
J
SET
Q
J
Q
K
SET
J
Q
SET
J
Q
SET
Q
T
H
K
CLR
CLR
Q
H
K
CLR
Q
H
K
CLR
Q
=1
Abbildung 7: Schaltplan asynchroner Modulo-m-Zähler
Abbildung 8: Taktdiagramm asynchroner Modulo-m-Zähler
4.3 synchroner Modulo-m-Zähler
Anschließend sollte ein synchroner Modulo-m-Zähler entwickelt und realisiert werden,
der die Zahlenfolge 0,4,3,5,6 abzählt. Dafür ergibt sich die in Tab. 4 enthaltene Beschaltung der drei benötigten JK-Trigger. Die in Abb. 9 dargestellte Schaltung lieferte
dann das gewünschte Ergebnis, welches in Abb. 10 nochmals als Taktdiagramm dargestellt ist. Das Taktdiagramm zeigt wieder von Oben nach Unten das Taktsignal T
sowie die Ausgänge der Trigger X1 bis X3 .
9
i
1
2
3
Ji
X2 X3
X3
X3
Ki
X2
X2
X1
Tabelle 4: Beschaltung des synchronen Modulo-m-Zählers
X1
X2
X3
&
J
SET
Q
J
Q
K
SET
Q
J
Q
K
SET
Q
T
K
CLR
CLR
CLR
Q
Abbildung 9: Schaltplan synchroner Modulo-m-Zähler
Abbildung 10: Taktdiagramm synchroner Modulo-m-Zähler
4.4 3-stelliger Dezimalzähler
Der 3-stelliger Dezimalzähler wurde am Ende des Versuches nur noch aufgebaut, um
sich mit dem Aufbau und der Funktionsweise grundlegend vertraut zu machen.
10