Protokoll zu Grundelemente der Digitaltechnik

Werbung
Protokoll zu
Grundelemente der
Digitaltechnik
Ronny Harbich
22. Juli 2005
Ronny Harbich
Protokoll zu Grundelemente der Digitaltechnik
2
Vorwort
Das hier vorliegende Protokoll wurde natürlich mit größter Sorgfalt angefertigt. Trotzdem sind mit an
Sicherheit grenzender Wahrscheinlichkeit Fehler in dieser Aufzeichnung enthalten. Falls der Leser ein
Fehler erkennt, möge er mir bitte diesen unter [email protected] mitteilen.
Ronny Harbich
Protokoll zu Grundelemente der Digitaltechnik
3
Inhaltsverzeichnis
1.
VORBEREITUNGSAUFGABEN
4
1.1.
Logische Basisgatter
4
1.2. D-Flip-Flop und JK-Master-Slave-Flip-Flop
1.2.1.
Das D-Flip-Flop
Das JK-Master-Slave-Flip-Flop
1.2.2.
5
5
5
1.3.
Von der Wahrheitstabelle zur kombinatorischen Schaltung
5
1.4.
4-Bit parallel-in/-out Register
6
1.5.
4-Bit seriell-in/parallel-out Register
6
1.6. Synchroner und asynchroner 4-Bit-Binärzähler
1.6.1.
Synchroner Zähler
Asynchroner Zähler
1.6.2.
1.6.3.
Impuls-Diagramm zum 4-Bit-Binärzähler
7
7
7
8
1.7.
Kenngrößen digitaler Gatter
8
2.
VERSUCHSAUFGABEN
9
2.1.
Basisgatter
9
2.2.
Code-Wandler
9
2.3.
Kombinatorische Schaltung
10
2.4. Flip-Flops
2.4.1.
D-Flip-Flop
2.4.2.
JK-Flip-Flop
11
11
12
2.5. Register
2.5.1.
4-Bit parallel-in/-out Register
2.5.2.
4-Bit seriell-in/parallel-out Register
12
12
13
2.6. Zähler
2.6.1.
Asynchroner 4-Bit-Binärzähler
2.6.2.
Synchroner 4-Bit-Binärzähler
13
13
16
2.7.
16
Dynamisches Verhalten
Ronny Harbich
Protokoll zu Grundelemente der Digitaltechnik
4
1. Vorbereitungsaufgaben
1.1. Logische Basisgatter
Gatter
NOT
(nicht)
algebraisches
Symbol
¬ oder
Schaltnetz-Symbol
x
¬x
x
¬x
x
AND
(und)
oder
1
x
y
x
y
&
x
y
x
y
NAND
(nicht
und)
oder
+
&
1
x
y
oder
>= 1
>= 1
x
y
x
y
x
y
x
y
¬x
0
1
1
0
x
y
0
0
1
1
0
1
0
1
x
y
0
0
0
1
x
y
x y
0
0
1
1
0
1
0
1
1
1
1
0
y
x
y
y
0
0
1
1
x y
x y
x y
x
x
y
NOR
(nicht
oder)
EXOR
(exklusives
oder)
x
y
¬x
x
x
x
=1
x
Beschreibung
Das NOT-Gatter (auch Negator)
dient zum Invertieren der beiden
logischen Wahrheitswerte Null
und Eins. Dies bedeutet, dass am
Ausgang des Gatters genau dann
die logische Eins anliegt, wenn
der Eingang mit der logischen
Null belegt ist und dann und nur
dann eine Null am Ausgang anliegt, wenn der Eingang mit Eins
belegt ist.
x y
x
y
OR
(oder)
Wahrheitstabelle
x
Am Ausgang des AND-Gatters
liegt dann und nur dann eine logische Eins an, wenn die beiden
Eingänge jeweils den Wert logisch Eins haben.
Am Ausgang des NAND-Gatters
liegt im Gegensatz zum ANDGatter immer nur dann eine logische Eins an, wenn an beiden
Eingängen nicht jeweils der Wert
Eins anliegt. Mit Hilfe des NANDGatters lassen sich alle anderen
Gatter realisieren, was dieses
Gatter aufgrund einfacher technischer Bauweise geradezu für den
technischen Einsatz prädestiniert.
y
0
1
0
1
0
1
1
1
Bei dem OR-Gatter hat der Ausgang den Wert logisch Eins genau dann, wenn an beiden Eingängen nicht jeweils eine logische Null anliegt.
x
y
x y
0
0
1
1
0
1
0
1
1
0
0
0
Am Ausgang des NOR-Gatters
liegt im Gegensatz zum ORGatter immer nur dann eine logische Eins an, wenn an beiden
Eingängen jeweils der Wert Null
anliegt.
y
x
y
y
0
0
1
1
0
1
0
1
x
y
0
1
1
0
Bei dem EXOR-Gatter wird der
Ausgang nur dann den Wert Eins
annehmen, wenn beide Eingänge
zueinander
unterschiedliche
Wahrheitswerte haben. EXOR
1
wird daher auch als Antivalenz
bezeichnet.
Antivalenz (Wertungleichheit) ist das Gegenteil von Äquivalenz (Wertgleichheit)
Ronny Harbich
Protokoll zu Grundelemente der Digitaltechnik
5
1.2. D-Flip-Flop und JK-Master-Slave-Flip-Flop
1.2.1. Das D-Flip-Flop
Reset
Q
Data
Q
Set
Clock
RS-Flip-Flop
Abbildung 1: D-Flip-Flop
Das D(elay)-Flip-Flop (Abbildung 1) ist ein besonderes Flip-Flop, welches aus den beiden Eingänge
Data und Clock besteht. An dem Data-Eingang liegt zu jeder Zeit entweder das Datum Null oder Eins
an. Sobald am Clock-Eingang eine logische Eins an liegt, wird das zu diesem Zeitpunkt am DataEingang befindliche Datum an den Ausgang Q weiter geleitet, anderen Falls behält dieser Ausgang
seinen ursprünglichen Zustand bei. Die nun folgende Zustandstabelle fasst die genannten Sachverhalte zusammen:
Clock
Data
Q n +1
Q n +1
0
0
Qn
Qn
0
1
Qn
Qn
1
1
0
1
0
1
1
0
1.2.2. Das JK-Master-Slave-Flip-Flop
J
K
R
Q
R
Q
QJK
S
Q
S
Q
QJK
Clock
Abbildung 2: JK-Master-Slave-Flip-Flop
Wie sich in Abbildung 2 erkennen lässt besteht das JK-Master-Slave-Flip-Flop aus zwei hintereinander geschalteten JK-Flip-Flops.
1.3. Von der Wahrheitstabelle zur kombinatorischen Schaltung
x1
x2
xn
f1,n ( x1 , x 2 ,
, xn )
x1,1
x1,2
x1,n
y1,1
y1,m
x 2n ,1
x 2n ,2
x 2n ,n
y 2n ,1
y 2n ,m
Abbildung 3: Wahrheitstabelle W
f m,n ( x1 , x 2 ,
, xn )
Ronny Harbich
Protokoll zu Grundelemente der Digitaltechnik
Es sei die durch die n-stelligen boole’schen Funktionen
fi,n :
6
{0;1}
{0;1}
n
mit
i = 1,
,m;
; m < 2 induzierte Wahrheitstabelle W (Abbildung 3) gegeben. Um nun eine kombinatorische Schaltung zu Erzeugen, ist es zunächst notwendig die so genannten disjunktiven Normalformen (DNF) der einzelnen boole’schen Funktionen f i,n aus dieser Wahrheitstabelle zu erzeugen. Dies
2n
n, m
geschieht mit Hilfe des folgenden Algorithmus, der die Normalform zur Funktion
fi,n liefert:
function getDNF ( W,i )
for ( j = 1; j 2n ; j + + )
if ( y j,i == 1)
for ( k = 1; k n; k + + )
konj := konj ( x j,k == 1) ? "x k " : " ¬x k "
end for
DNF := DNF konj
konj := ""
end if
end for
return DNF
end function
(
)
Als nächstes können die einzelnen Normalformen noch mittels Karnaugh-Veitch-Diagramm oder algebraischer Gesetze vereinfacht werden. Schlussendlich muss nur noch entsprechend der vereinfachten
disjunktiven Normalformen die kombinatorische Schaltung mittels der Basis-Gatter aufgebaut werden.
1.4. 4-Bit parallel-in/-out Register
Die folgende Abbildung 4 zeigt ein 4-Bit parallel-in/-out Register, welches aus D-Flip-Flops aufgebaut
ist:
Q1
Q2
Q3
Q4
D Q
D Q
D Q
D Q
>C Q
>C Q
>C Q
>C Q
Clock
D1
D2
D3
D4
Abbildung 4: 4-Bit parallel-in/-out Register
1.5. 4-Bit seriell-in/parallel-out Register
Abbildung 5 veranschaulicht ein 4-Bit seriell-in/parallel-out Register, das mit D-Flip-Flops realisiert
wurde:
Q1
Data
Q2
Q3
Q4
D Q
D Q
D Q
D Q
>C Q
>C Q
>C Q
>C Q
Clock
Abbildung 5: 4-Bit seriell-in/parallel-out Register
Ronny Harbich
Protokoll zu Grundelemente der Digitaltechnik
7
1.6. Synchroner und asynchroner 4-Bit-Binärzähler
1.6.1. Synchroner Zähler
Die nachstehende Abbildung 6 zeigt einen mittels JK-Flip-Flops realisierten synchronen 4-Bit-Binärzähler:
Q1
Q2
Q4
Q
J
>C
1
Q3
J
K Q
Q
>C
J
K Q
>C
>C
K Q
K Q
Q
J
Q
Clock
Abbildung 6: Synchroner 4-Bit-Zähler
1.6.2. Asynchroner Zähler
Die Abbildung 7 stellt einen asynchronen 4-Bit-Binärzähler dar:
Q1
J
Clock
1
Q
Q2
J
Q
Q3
J
Q
Q4
J
Q
>C
>C
>C
>C
K Q
K Q
K Q
K Q
Abbildung 7: Asynchroner 4-Bit-Binärzähler
Ronny Harbich
Protokoll zu Grundelemente der Digitaltechnik
8
1.6.3. Impuls-Diagramm zum 4-Bit-Binärzähler
Abbildung 8 veranschaulicht das Impuls-Diagramm (9 Impulse) zum 4-Bit-Binärzähler (positiv flankengesteuert):
Clock
Q1
Q2
Q3
Q4
Abbildung 8: Impuls-Diagramm zum 4-Bit-Binärzähler
1.7. Kenngrößen digitaler Gatter
Gatter-Kenngrößen:
• Pegelspannungen
• Schaltzeit
• Störabstand
• Signalverzögerungszeiten
• Störsicherheit
• Signalübergangszeiten (Impulsflankendauer)
Ronny Harbich
Protokoll zu Grundelemente der Digitaltechnik
9
2. Versuchsaufgaben
2.1. Basisgatter
• 74HC00 (NAND-Gatter) A = x y = ¬ ( x
• 74HC10 (NAND-Gatter) A =
y) :
x
y
A
0
0
1
1
0
1
0
1
1
1
1
0
(( x y ) ( x y))
• 74H02 (NOR-Gatter) A = x y = ¬ ( x
• 74H86 (EXOR-Gatter) A = x
(
z = ¬ ¬(¬( x
x
y
z
A
0
0
0
0
1
1
1
1
0
0
1
1
0
0
1
1
0
1
0
1
0
1
0
1
1
1
1
1
1
1
1
0
)
y )) z :
y) :
x
y
A
0
0
1
1
0
1
0
1
1
0
0
0
x
y
A
0
0
1
1
0
1
0
1
0
1
1
0
y:
2.2. Code-Wandler
Die folgende Wahrheitstabelle repräsentiert einen 1-aus-4-Decoder:
Eingang
Ausgang
S5
S6
Y1
Y2
Y3
Y4
0
0
1
1
0
1
0
1
1
0
0
0
0
1
0
0
0
0
1
0
0
0
0
1
Eine Realisierung des Code-Wandlers mittels NAND-Gatters soll an dieser Stelle erfolgen. Zunächst
einmal werden die disjunktiven Normalformen der einzelnen Ausgänge gebildet und anschließend zu
Gleichungen mit nur NAND-Gattern umgeformt:
Ronny Harbich
Protokoll zu Grundelemente der Digitaltechnik
Y1 = ¬S5
Y2 = ¬S5
Y3 = S5
Y4 = S5
10
(
¬S6 = ¬ ( ¬ ( ¬S5
¬S6 ) ) = ¬ ¬S5 ¬S6
(
)
¬S ) ) = ¬ ( S ¬S )
S ) ) = ¬ (S S )
S6 = ¬ ( ¬ ( ¬S5 S6 ) ) = ¬ ¬S5 S6
¬S6 = ¬ ( ¬ ( S5
S6 = ¬ ( ¬ ( S5
6
5
6
5
)
6
6
Als nächstes wird das Schaltnetz mit NAND-Gattern erstellt:
Y1
Y2
Y3
S5
S6
Y4
Abbildung 9: 1-aus-4-Decoder mit NAND-Gattern
Im weiteren Verlauf soll nun der gleiche Code-Wandler mit NOR-Gattern realisiert werden:
Y1 = ¬S5 ¬S6 = ¬ ( S5 S6 ) = S5 S6
Y2 = ¬S5 S6 = ¬ ( ¬ ( ¬S5 S6 ) ) = ¬ ( S5 ¬S6 ) = S5 ¬S6
Y3 = S5 ¬S6 = ¬ ( ¬ ( S5 S6 ) ) = ¬ ( ¬S5 S6 ) = ¬S5 S6
Y4 = S5 S6 = ¬ ( ¬ ( S5 S6 ) ) = ¬ ( ¬S5 ¬S6 ) = ¬S5 ¬S6
Y4
Y3
Y2
S5
S6
Y1
Abbildung 10: 1-aus-4-Decoder mit NOR-Gattern
2.3. Kombinatorische Schaltung
Die nachstehende Tabelle stellt die Schaltbelegungen einer zu entwerfenden kombinatorischen Schaltung dar:
Eingang
Ausgang
S1
S2
S3
S4
Y2
Y1
Y0
0
0
0
0
0
0
0
1
0
0
1
1
0
1
1
1
0
0
0
0
0
0
1
1
0
1
0
1
Ronny Harbich
Protokoll zu Grundelemente der Digitaltechnik
1
1
1
1
1
11
0
0
Anhand der Schaltbelegungstabelle lassen sich leicht die disjunktiven Normalformen der einzelnen
Ausgänge bilden und mit Vereinfachung und mit Umwandlung in NAND-NOR-Gleichungen entstehen
kommende Gleichungen für die Ausgänge Y0 , Y1 und Y2 :
Y0 = ( ¬S1 S2 ) ( ¬S3 S4 )
= ¬ ¬ ( ( ¬S1 S2 ) ( ¬S3 S4 ) )
(
= ¬ ( ¬S1 S2 ) ¬ ( ¬S3 S4 )
= ¬S1 S2
¬S3 S4
(
) (
)
)
(
Y1 = ( ¬S1 S3 ) = ¬ ( ¬ ( ¬S1 S3 ) ) = S1 ¬S3
Y2 = S1
)
Im nächsten Schritt werden die Gleichungen mittels Basis-Gatter zu einer kombinatorischen Schaltung
realisiert:
S1
S2
Y0
S3
S4
BCD
7-Seg.
Y1
0
Y2
Abbildung 11: kombinatorische Schaltung
Schlussendlich soll noch eine Betrachtung der Ausgangswerte bei nicht definierten Eingangswerten
unternommen werden:
Eingang
Ausgang
S1
S2
S3
S4
Y2
Y1
Y0
7-Seg.
0
0
0
0
1
1
1
1
1
1
1
0
1
1
1
0
0
0
0
1
1
1
1
0
0
1
0
0
1
1
0
0
1
0
0
1
0
0
1
0
1
0
1
0
0
1
1
1
0
1
0
0
0
1
0
1
0
0
1
0
0
0
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
2
1
1
3
4
5
4
4
4
5
4
2.4. Flip-Flops
2.4.1. D-Flip-Flop
Zustandstabellen eines D-Flip-Flops im 74HC74 Schaltkreis:
Clock
Data
Qn
Q n +1
0
0
0
0
1
0
0
1
1
0
0
1
0
1
0
0
1
0
1
0
Ronny Harbich
Protokoll zu Grundelemente der Digitaltechnik
1
1
1
0
1
1
1
0
1
12
0
1
1
Clock
Data
Q n +1
0
0
Qn
0
1
Qn
1
1
0
1
0
1
Das D-Flip-Flop ist positiv flankengesteuert.
2.4.2. JK-Flip-Flop
Zustandstabellen eines JK-Flip-Flops im 74HC76Schaltkreis:
J
K
Qn
Q n +1
0
0
0
0
1
1
1
1
0
0
1
1
0
0
1
1
0
1
0
1
0
1
0
1
0
1
0
0
1
1
1
0
speichern
rücksetzten
setzen
wechseln
J
K
Q n +1
0
0
Qn
speichern
0
1
1
0
0
1
rücksetzten
setzen
1
1
Qn
wechseln
Das JK-Flip-Flop ist negativ flankengesteuert.
2.5. Register
2.5.1. 4-Bit parallel-in/-out Register
Das 4-Bit parallel-in/-out Register wurde nach dem in Abschnitt 1.4 angefertigten Schaltnetz aufgebaut
und folgend die Bits 0, 0, 1 und 1 an den Eingängen D1 , D 2 , D3 und D 4 angelegt. Wie zu erwarten
lagen dann an den Ausgängen
Q1 bis Q4 die gleichen Bits an.
Ronny Harbich
Protokoll zu Grundelemente der Digitaltechnik
13
2.5.2. 4-Bit seriell-in/parallel-out Register
Analog wurde auch hier das Register nach dem Schaltnetz in Abschnitt 1.5 aufgebaut. Das Verhalten
der Ausgänge Q1 bis Q 4 bei der Eingabe des Wortes 0011 zeigt das nachstehende ImpulsDiagramm:
T1
T2
T3
T4
T5
T6
T7
Clock
Data
Q1
Q2
Q3
Q4
Abbildung 12: Impuls-Diagramm des 4-Bit seriell-in/parallel-out Registers
Ab dem 7. Takt wird das Wort 0011 aus dem Register heraus geschoben.
2.6. Zähler
2.6.1. Asynchroner 4-Bit-Binärzähler
Ein im Versuch realisierter asynchroner Zähler mit Impuls-Diagramm:
1
J
Clock
Q
J
Q
J
Q
J
Q
>C
>C
>C
>C
K Q
K Q
K Q
K Q
Q1
BCD
Q2
7-Seg.
Q3
Q4
Abbildung 13: Asynchroner 4-Bit-Binärzähler
T8
Ronny Harbich
Protokoll zu Grundelemente der Digitaltechnik
0
1
2
3
4
5
6
14
7
8
Clock
Q1
Q2
Q3
Q4
Abbildung 14: Impuls-Diagramm des asynchronen Binärzählers
Im Folgenden wurden die einzelnen Ausgänge
Q1 bis Q4 über dem Taktsignal (Clock) oszil-
lographiert (negativ flankengesteuert):
• Der Ausgang Q1 invertiert mit jedem Takt seinen logischen Zustand:
Abbildung 15: Taktsignal (gelb) und Ausgang Q1 (blau)
Ronny Harbich
Protokoll zu Grundelemente der Digitaltechnik
• Der Ausgang Q2 invertiert mit jedem zweiten Takt seinen logischen Zustand:
Abbildung 16: Taktsignal (gelb) und Ausgang Q 2 (blau)
• Der Ausgang Q3 invertiert mit jedem viertem Takt seinen logischen Zustand:
Abbildung 17: Taktsignal (gelb) und Ausgang Q 3 (blau)
15
Ronny Harbich
Protokoll zu Grundelemente der Digitaltechnik
16
• Der Ausgang Q4 invertiert mit jedem achtem Takt seinen logischen Zustand:
Abbildung 18: Taktsignal (gelb) und Ausgang Q 4 (blau)
Allgemein invertiert der
Q n -te Ausgang seinen logischen Wert mit jedem 2n 1 -ten Takt.
2.6.2. Synchroner 4-Bit-Binärzähler
Ein synchroner Zähler, der aber im Versuch nicht aufgebaut und weiter untersucht wurde:
BCD
7-Seg.
Q1
J
1
Q2
Q3
Q4
Q
>C
K Q
J
Q
>C
J
K Q
>C
>C
K Q
K Q
Q
J
Q
Clock
Abbildung 19: Synchroner 4-Bit-Binärzähler
2.7. Dynamisches Verhalten
Im weiteren Verlauf wurde ein reales NAND-Gatter mittels Digital-Oszilloskop untersucht. Hierzu wurde ein Taktsignal, das in den folgenden Abbildungen gelb dargestellt ist, an den beiden Eingängen
angelegt. Der blau gekennzeichnete Verlauf in den Oszillogrammen veranschaulicht den Ausgang des
NAND-Gatters. Das Oszilloskop zeigt interessante Eigenschaften des Gatters:
Ronny Harbich
Protokoll zu Grundelemente der Digitaltechnik
17
• Die nachstehende Abbildung 20 veranschaulicht den Verlauf der Eingangsspannung (gelb) und
den der Ausgangsspannung (blau). Leicht lässt sich erkennen, dass das Eingangssignal, wie gewünscht, invertiert wird und, dass die Signale zu den Flanken hin nicht wirklich rechteckförmig sind:
Abbildung 20: Eingang (gelb) und Ausgang (blau) eines NAND-Gatters
Ronny Harbich
Protokoll zu Grundelemente der Digitaltechnik
18
• Abbildung 21 verdeutlicht besonders gut die Verzögerung mit der das Gatter den Ausgangswert
setzt. So beginnt das Gatter den Ausgangswert erst ab einer bestimmten Spannung, der so genannten Pegelspannung (hier high), auf low zu setzen. Dieses Verfahren ist unbedingt notwendig,
um sicher zu gehen, dass das Gatter nicht Aufgrund von Störeinflüssen sein Ausgangswert ändert.
Die sich daraufhin ergebene Gatterlaufzeit beträgt bei dem betrachtetem NAND-Gatter etwa 60ns:
Abbildung 21: Detaillierte Betrachtung der Signale bei steigender Flanke des Taktsignals
Ronny Harbich
Protokoll zu Grundelemente der Digitaltechnik
19
• Ein analoges Verhalten des Gatters zeigt sich bei der Betrachtung des Eingangssignals an der fallenden Flanke:
Abbildung 22: Detaillierte Betrachtung der Signale bei fallender Flanke des Taktsignals
Herunterladen