Probleme bei FlipFlop-Analyse

Neue Frage »

Auf diesen Beitrag antworten »
Aoitsuki Probleme bei FlipFlop-Analyse

Meine Frage:
Heyho Boarder,
zurzeit stelle ich mich (gelegentlich) ziemlich blöd bei der Analyse von Flipflops an, da ich (öfters mal) die falschen Zustände einlese.
Daher wollte ich fragen, ob ich bei diesem Szenario (s. Bild) richtig liege.

Meine Ideen:
Also wir haben hier 2 T-FlipFlops vorliegen, die asynchron geschaltet sind.

- Wenn ein T-FlipFlop als Eingangswert (x) den Wert 0 erhält, behält er seinen Zustand Q bei.
- Wenn er als Eingangswert (x) den Wert 1 erhält, wird das aktuelle Q zu "nicht-Q" (also quasi invertiert)
- beide vorliegende FlipFlops sind negativ-taktflanken-gesteuert (also, wenn c von 1 zu 0 übergeht, kann der jeweillige FlipFlop seinen Zustand Q (und nicht-Q) ändern
- wir nehmen hier mal an, dass x permanent x = 1 bleibt

Wenn wir nun bei der vorliegenden Schaltung annehmen, dass x=1 ist und FlipFlop-1 (das Linke) Q = 0, aber c noch nicht das Signal zum schalten gibt (also c = 0).
So sehen die Werte folgendermaßen aus:

FlipFlop_1 (links):
x = 1, c = 0, Q = 0, nicht-Q = 1

FlipFlop_0 (rechts):
x = 0, c = 1, Q = 0, nicht-Q = 1


Wenn wir bei FlipFlop_1 c auf 1 schalten, dann sieht das ganze folgendermaßen aus:
(da die FlipFlops negativ-taktflanken-gesteuert sind: passiert mit den Zuständen nichts)

FlipFlop_1 (links):
x = 1, c = 1, Q = 0, nicht-Q = 1

FlipFlop_0 (rechts):
x = 0, c = 1, Q = 0, nicht-Q = 1


Wenn wir nun bei FliFlop_1 c wieder auf 0 schalten, dann ändern sich die die FlipFlop-Zustände folgendermaßen:

FlipFlop_1 (links):
x = 1, c = 1, Q = 1, nicht-Q = 0

FlipFlop_0 (rechts):
x = 0, c = 0, Q = 1, nicht-Q = 0


Also unterm Strich würde ich bei dieser Schaltung sagen, dass bei FlipFlop_1 der aktuelle Zustand Q immmer dann invertiert wird, sobald c von 1 auf 0 schaltet.

Bei FlipFlop_0 hingegen bleibt der Zustand Q dauerhaft unverändert (wenn mit 0 angefangen wurde so bleibt er z. B. dauerhaft 0). Denn sobald FlipFlop_0 beim Steuereingang c von 1 auf 0 switcht, so erhält er als Input x eine 0 (in dem Moment) => daher findet nie eine Zustandsänderung bei FlipFlop_0 statt.

Soweit meine Vorarbeit. Wäre cool, wenn das jmd. bestätigen oder korrigieren könnte.

Viele Grüße

Aoitsuki
 
Auf diesen Beitrag antworten »
eulerscheZahl

Ein T-Flipflop an einer Clock angeschlossen wirkt als Frequenzteiler.

und du widersprichst dir selbst:
Zitat:
FlipFlop_0 (rechts):
x = 0, c = 0, Q = 1, nicht-Q = 0

das ist richtig
Zitat:
Bei FlipFlop_0 hingegen bleibt der Zustand Q dauerhaft unverändert (wenn mit 0 angefangen wurde so bleibt er z. B. dauerhaft 0).

das ist falsch
Auf diesen Beitrag antworten »
Aoitsuki

Ah, ja beim erneutem Durchlesen fällts mir auch auf, dass ich mir selbst widerspreche. traurig

Also hier nochmal zusammenfassend:

Sobald der Zustand nicht-Q bei FlipFlop_1, von 1 auf 0 schaltet, gibt er dem Eingang c_0 beim FlipFlop_0 sozusagen die Anweisung, den Wert in seinem Eingang x_0 (der in dem Moment zu x_0 = 1 wird) zu verarbeiten.

Daraus folgt: Der Zustand Q_0 wird jedes mal invertiert, sobald nicht-Q_1 von 1 zu 0 runterschaltet.

So dürfte es gehen oder?

Und hab vielen vielen Dank für deine Hilfe. smile
Auf diesen Beitrag antworten »
eulerscheZahl

Entschuldigung, ich hatte mir das Bild wohl nicht richtig angeschaut, ich war davon ausgegangen, dass das Flipflop 0 dauerhaft eine 1 als Dateneingang kriegt unglücklich

Das Problem ist, dass sich Dateneingang und clock gleichzeitig ändern. Während die clock eine negative Flanke hat, springt der Dateneingang von 0 auf 1. Gilt jetzt die 0 oder die 1?
Eigentlich muss das Signal schon eine gewisse Zeit vorher (setup-time) und noch danach (hold-time) anliegen, um ein definiertes Verhalten zu bekommen.
Nach meinem Verständnis ist es daher nicht zu beantworten, was Flipflop 0 macht, da t-setup und t-hold nicht eingehalten werden.
 
 
Neue Frage »
Antworten »


Verwandte Themen

Die Beliebtesten »
Die Größten »
Die Neuesten »