Versuch 3: Sequenzielle Logik Versuchsvorbereitung 1. (2 Punkte) Unterschied zwischen Flipflop und Latch: Ein Latch ist transparent für einen bestimmten Zustand des Taktsignals: Jeder Datensignalwechsel kann direkt am Ausgang sichtbar werden, wenn das Taktsignal T = 1 ist. Wechselt das Taktsignal auf 0, so wird der letzte Datensignalzustand gehalten. Dieses Verhalten wird als zustandsgesteuert bezeichnet. Ein Flipflop schaltet bei einem bestimmten Taktereignis (z.b. ansteigende Taktflanke) und übernimmt an dieser Stelle den Zustand des Datensignals, es ist also flankengesteuert. 2. (2 Punkte) Verhalten eines rückgekoppelten D-Latches und D-Flipflops: Das rückgekoppelte D-Latch wechselt während der aktiven Phase (T=1) seinen Zustand immer wieder mit hoher Frequenz. Diese Frequenz ist abhängig von der Durchlaufzeit des Latch. Das D-Flipflop hingegen wechselt seinen Zustand lediglich bei jeder steigenden Taktflanke. Die Frequenz des Ausgangssignals eines rückgekoppelten D-Flipflops ist damit nur noch halb so groß, wie die des anliegenden Takts. 3. (2 Punkte) Anzahl der T-Flipflops: Jedes T-Flipflop reduziert den Takt um einen Faktor 2. Für n hintereinander geschaltete T-Flipflops gilt daher für die neue Frequenz f neu folgender Zusammenhang (mit f clk als Eingangs-Taktfrequenz): f neu = f clk 2 n 1.5Hz Auflösen dieser Gleichung ergibt: ( ) fclk n log 2 24.99 1.5Hz Da n nur ganzzahlige Werte annehmen kann, benötigt man folglich 25 T-Flipflops, um die Taktfrequenz entsprechend zu reduzieren. Teilversuch 1: Latches 5. Schaltung sr latch : Abbildung 0.1: Schaltungsdarstellung der Datei sr latch 6. Schaltung sr latch test :
Abbildung 0.2: Schaltungsdarstellung der Datei sr latch test 7. (1 Punkt) Wahrheitstabelle des SR-Latch: S R Q n+1 0 0 Q n 0 1 0 1 0 1 1 1 X 8. (2 Punkte) Verhalten bei gleichzeitigem Loslassen der Drucktasten und Erklärung: Bei gleichzeitigem Loslassen der Drucktasten wird man feststellen, dass das Latch nicht vorhersagbar in entweder dem High-Zustand (Q=1) oder dem Low-Zustand (Q=0) landet. Dies liegt daran, dass, selbst wenn man die Drucktasten gleichzeitig loslässt, ein kleiner zeitlicher Versatz im Loslassen im Bereich von wenigen ms besteht. Dies führt dazu, dass, je nachdem welcher Taster zuerst seinen Zustand wechselt, das Latch im High- oder Low-Zustand landet. Darstellung des gleichzeitigen Loslassens am Oszilloskop: Abbildung 0.3: Darstellung der Signale bei gleichzeitigem Loslassen auf dem Oszilloskop
9. (2 Punkte) Visum des Betreuers 10. Schaltung srt latch : Abbildung 0.4: Schaltungsdarstellung der Datei srt latch 11. Schaltung d latch : Abbildung 0.5: Schaltungsdarstellung der Datei d latch 12. Schaltung d latch test : Abbildung 0.6: Schaltungsdarstellung der Datei d latch test (1 Punkt) Wahrheitstabelle des D-Latch: T D Q n+1 0 0 Q n 0 1 Q n 1 0 0 1 1 1 13. Schaltung d latch back, es müssen die Pins GPIO 0[1] und GPIO 1[0] verbunden werden:
Abbildung 0.7: Schaltungsdarstellung der Datei d latch back (2 Punkte) Beschreibung des Verhaltens und Quantifizierung: Wenn der Taster gedrückt ist, d.h. der Takt T auf High liegt, dann wechselt das D-Latch mit hoher Frequenz seinen Zustand. Mit dem Oszilloskop lässt sich diese Frequenz zu etwa 53 MHz bestimmen. 14. (3 Punkte) Visum des Betreuers Teilversuch 2: Flipflops, Asynchronzähler 15. Schaltung d flipflop : Abbildung 0.8: Schaltungsdarstellung der Datei d flipflop Schaltung d flipflop test : Abbildung 0.9: Schaltungsdarstellung der Datei d flipflop test (2 Punkte) Das D-FF übernimmt den Wert am Eingang T immer bei der steigenden Taktflanke. Der Grund hierfür liegt im Verhalten der beiden D-latches. Das erste D-Latch gibt den Eingang nur während C = 0 an den Ausgang Q 0 weiter. Das zweite D-Latch übernimmt diesen Wert jedoch erst wenn C = 1 ist. Damit wird der letzmögliche Eingangswert solange C gerade noch 0 ist gespeichert. Wenn C im nächsten Augenblich zu 1 wird, wird der zwischengespeicherte Wert an den Ausgang übernommen. Daher erscheint am Ausgang immer bei einer steigenden Taktflanke der Wert vom Eingang zu diesem Zeitpunkt. Verhalten des Flipflops:
GPIO_0[3]: Q GPIO_0[2]: Q GPIO_0[1]: T GPIO_0[0]: C 1 0 t t t t Abbildung 0.10: Verhalten des D-FlipFlops 16. Schaltung t flipflop : Abbildung 0.11: Schaltungsdarstellung der Datei t flipflop Schaltung t flipflop test : Abbildung 0.12: Schaltungsdarstellung der Datei t flipflop test (2 Punkte) Taktflanke des Zustandswechsels: Das T-Flipflop wechselt seinen Zustand immer bei der steigenden Taktflanke. 17. Es werden insgesamt 25 hintereinander geschaltete T-Flipflops benötigt. Schaltung clk div test :
Abbildung 0.13: Schaltungsdarstellung der Datei clk div test (2 Punkte) Neue Ausgangsfrequenz: Die Ausgangsfrequenz beträgt 1, 49 Hz. Dies stimmt mit der Theorie überein, die eine Frequenz von 50/2 25 MHz = 1.49 Hz vorhersagt. 18. Schaltung automat test und automat test mit warnleuchte : Abbildung 0.14: Schaltungsdarstellung der Datei automat test und automat test mit warnleuchte : (2 Punkte) Wartezeit zwischen dem Drücken zweier Taster: Damit der Automat die Eingaben als 2 getrennte Eingaben wahrnimmt, muss man mindestens 1/1.49 Sekunden warten - der Periode des Taktes. Dies ist nötig, da die FlipFlops im Automaten immer nur bei steigender Taktflanke die Eingänge übernehmen. Nur zu diesem Zeitpunkt werden die Eingaben vom Automaten beachtet. Startzustand nach dem Reset:
Die FlipFlops geben nach dem Programmieren den Zustand 0 aus - den Ruhezustand. 19. (2 Punkte) Visum des Betreuers 20. (1 Punkt) 01/00 11/01 10/00 00/00 00/00 10/00 A R E 01/00 00/00 10/00 11/10 01/00 00/00 11/00 10/00 01/00 dc 21. (1 Punkt) KV-Diagramm: 11/11 22. (1 Punkt) Gleichung: Q a Q b 23. (2 Punkte) Visum des Betreuers. X 1 X 2 Q a Q b 00 01 11 10 01 0 0 1 0 11 0 0 1 0 00 0 0 1 0 10 0 0 1 0 Teilversuch 4: Vergleich von Flipflop und Latch (optional) 24. Schaltung diff latch ff : Abbildung 0.15: Schaltungsdarstellung der Datei diff latch ff 25. (1 Punkt) Taktfrequenz des Ausgangssignals CLK OUT: Das Ausgangssignal besitzt eine Frequenz von 500 khz. (1 Punkt) Periode des Bitmusters: Die Periode des Bitmusters beträgt 12µs.
26. (3 Punkte) Skizze des Bitmusters inkl. Markierung von kritischen Stellen: CLK_OUT 1 0 BIT 1 0 Abbildung 0.16: Darstellung des Bitmusters mit kritischen Stellen 27. Schaltung diff latch ff, die Pins müssen nach der Tabelle verbunden werden: Ausgang Eingang GPIO 0[1] GPIO 1[0] GPIO 0[3] GPIO 1[1] Abbildung 0.17: Schaltungsdarstellung der Datei diff latch ff 28. Darstellung am Oszilloskop:
Abbildung 0.18: Darstellung des Bitmusters und der Schaltungsausgänge am Oszilloskop 29. (3 Punkte) Visum des Betreuers