T11-FlipFlops-und-Speichernde-Elemente
FlipFlops & Speichernde Elemente
Zusammenfassung
Speichernde Elemente (Flipflops) sind die Grundbausteine sequentieller Schaltkreise. Ein Schaltwerk besteht aus einem Register (Flipflops) und einem kombinatorischen Kern. Ohne Flipflops kein Register, ohne Register kein sequentieller Schaltkreis. Dieses Topic ist foundational für A6 (Mealy-Automat): die D-Flipflops im Register speichern den Zustand.
Exam-Relevanz
Flipflops erscheinen nicht direkt als Klausuraufgabe. Sie sind jedoch foundational für das Verständnis von A6 (Mealy-Automat / Schaltwerk): Das Register des Schaltwerks besteht aus D-Flipflops, die den Zustand
Schaltpläne mit Zyklen
Kombinatorische Schaltkreise sind azyklisch: jeder Ausgang ist eindeutig durch die Eingänge bestimmt. Es gibt genau eine stabile Belegung pro Eingangsbelegung.
Sequentielle Schaltkreise (Schaltwerke) enthalten Zyklen (Rückkopplungen). Diese Zyklen müssen aber durch Flipflops gehen — der kombinatorische Kern selbst bleibt azyklisch.
Ein Schaltplan
- Es kann zu einer Eingangsbelegung keine stabile Signalbelegung geben.
- Es kann zu einer Eingangsbelegung mehrere stabile Signalbelegungen geben.
Beispiel: Ein NAND-Gatter mit Rückkopplung seines Ausgangs auf einen Eingang:
x₁ ──→ G₁ ──→ ? ──→ (zurück zu G₁)
Für
Erkenntnis: Zyklen in Schaltplänen ermöglichen Speichern (mehrere stabile Zustände), erfordern aber Flipflops für deterministisches Verhalten.
RS-Flipflop
Das RS-Flipflop (RS-FF) ist der einfachste speichernde Baustein. Es besteht aus zwei rückgekoppelten NAND-Gattern:
┌───────┐
/S ──→│ NAND │──→ Q ──┐
│ (G₁) │ │
└───┬───┘ │
│ │
┌───┴───┐ │
│ NAND │──→ /Q ─┘
│ (G₂) │
/R ──→│ │
└───────┘
Eigenschaften:
und sind active low (aktiviert durch 0, inaktiv bei 1) = Set-Signal (setzt ) = Reset- oder Clear-Signal (setzt )
Wahrheitstabelle:
| Bedeutung | ||||
|---|---|---|---|---|
| 1 | 1 | Speichern (Zustand bleibt) | ||
| 0 | 1 | 1 | 0 | Setzen ( |
| 1 | 0 | 0 | 1 | Zurücksetzen ( |
| 0 | 0 | 1 | 1 | Verboten ( |
Bei
Charakteristische Gleichung:
(Active-high Notation:
Metastabilität
Wenn
- Beide Gatter schalten gleichzeitig um
Ausgang oszilliert. - In der Praxis settle sich das FF nach einer zufälligen Zeit auf einen der beiden stabilen Zustände (wegen leicht unterschiedlicher Gatterverzögerungen).
Dahum:
Umschalten
Von
kurzzeitig auf 0 absenken (Puls), dann wieder auf 1.- Nach Verzögerung
ist . - Nach Verzögerung
ist .
Reale Gatter haben Verzögerungszeiten — der Wechsel ist nicht instantan.
D-Latch & D-Flipflop
D-Latch (taktniveaugesteuert)
Nachteil des RS-FF: Man muss den zu speichernden Wert kennen, um
Das D-Latch löst dies: Eingang
| 0 | 0 | 1 | 1 | ||
| 0 | 1 | 1 | 1 | ||
| 1 | 0 | 1 | 0 | 0 | 1 |
| 1 | 1 | 0 | 1 | 1 | 0 |
: transparenter Modus gesperrt — behält alten Wert. : transparenter Modus — (Ausgang folgt Eingang direkt).
┌──────────┐
D ──→│ D-Latch │──→ Q
W ──→│ │──→ /Q
└──────────┘
D-Flipflop (taktflankengesteuert)
Das D-Flipflop (D-FF) übernimmt Daten nur bei der steigenden Taktflanke (
| ck | |||
|---|---|---|---|
| 0 | 0 | 1 | |
| 1 | 1 | 0 | |
| X | 0 | ||
| X | 1 |
┌──────┐
D ──→│ D-FF │──→ Q
ck ──→│ │──→ /Q
└──────┘
Vorteil gegenüber D-Latch: Daten müssen nur kurz bei der Taktflanke stabil sein, nicht während der gesamten Pulsweite.
Realisierung: Komplexer als D-Latch — benötigt mehrere RS-FFs (Master-Slave-Prinzip):
- RS-FF₂: Aufnahme der Eingangsdaten bei
- RS-FF₁: Gewährleistet, dass Daten während
gespeichert bleiben - Ausgangs-FF
Setup- und Hold-Zeit
Damit das D-FF die Daten korrekt übernimmt:
- Setup-Zeit
( ): Daten müssen vor der Taktflanke für diese Zeit stabil anliegen. - Hold-Zeit
( ): Daten müssen nach der Taktflanke für diese Zeit stabil bleiben. - Pulsweite
(bei D-Latch): Zeit, während der sein muss.
┌── y ──┐
W ──────┘ └────
← tsetup →← thold →
D ══════════════════════
┌───┐
Q ──────┘ └──────────
Weitere Bausteine
T-Flipflop
Toggle-FF: Wechselt bei jeder Taktflanke den Ausgang, wenn
JK-Flipflop
Verallgemeinertes RS-FF ohne verbotenen Zustand:
= Set (wie ) = Reset (wie ) : Toggle (wie T-FF)
n-Bit Register
D₀ ──→[D-FF]──→ Q₀
D₁ ──→[D-FF]──→ Q₁
⋮ ⋮
Dₙ₋₁ ──→[D-FF]──→ Qₙ₋₁
← ck →
Analog: n-Bit Latch =
Schieberegister
Kaskade von D-FFs: Ausgang jedes FFs ist Eingang des nächsten. Bei jedem Takt werden alle Werte um eine Position verschoben.
D₀ ──→[D-FF]──→ Q₀ ──→[D-FF]──→ Q₁ ──→[D-FF]──→ Q₂ ──→[D-FF]──→ Q₃
ck ck ck ck
Zähler
Aufbau: kombinatorischer Inkrementierer (
┌─────────┐ ┌───────┐
/C ──→│ │──→│ │──→ Y
ck ──→│ n-INC │ │ n-Reg │
Cin ──→│ │──→│ │──→ Cₒᵤₜ
/L ──→│ │ │ │
X ──→│ │ │ │
└─────────┘ └───────┘
ck ─────────→
Timing
Die Taktfrequenz ist durch die Gatterlaufzeiten begrenzt:
Dabei ist:
: Taktperiode (Abstand zwischen zwei steigenden Flanken) : Propagation Delay (Laufzeit durch den kombinatorischen Kern) : Setup-Zeit des Ziel-Flipflops : Hold-Zeit des Ziel-Flipflops
Zusammenhang:
- Wenn der Takt zu schnell ist (
zu klein), kann das Signal das nächste FF nicht rechtzeitig erreichen Setup-Verletzung. - Wenn sich das Signal zu schnell ändert, kann das nächste FF die Daten nicht rechtzeitig "einfrieren"
Hold-Verletzung. - Die maximale Taktfrequenz ist
.
Für A6 relevant: Das Register im Schaltwerk besteht aus D-FFs. Der kombinatorische Kern berechnet
Quellen
- k411-Speichernde_Elemente_Schaltplaene_RS-FF — Schaltpläne mit Zyklen, RS-FF, stabile Belegungen, Metastabilität
- k412-Speichernde_Elemente_D-FF_weitere_Bausteine — D-Latch, D-FF, Setup/Hold, Register, Schieberegister, Zähler
- k420-Sequentielle_Schaltkreise — Schaltwerk = Register + kombinatorischer Kern
- k430-Entwurf_sequentieller_Schaltkreise — Synthese (Register aus D-FFs im resultierenden Schaltkreis)
- Blatt10 — Übungen zu Mealy-Automaten (Anwendung von D-FFs im Schaltwerk)
Priorität
MEDIUM — Nicht direkt klausurrelevant, aber foundational für das Verständnis von A6 (Mealy-Automat). Das Schaltwerk in A6d besteht aus D-Flipflops (Register) und kombinatorischer Logik. Wer D-FFs, Setup-/Hold-Zeiten und das Taktprinzip nicht versteht, kann den Schaltkreis nicht korrekt zeichnen oder verstehen.
Empfehlung:
- RS-FF als einfachstes speicherndes Element verstehen (zwei stabile Zustände, active low, Metastabilität)
- D-FF als taktflankengesteuertes Standard-Element für Register verstehen
- Den Zusammenhang: Schaltwerk = D-FFs (Register) + kombinatorischer Kern (δ, λ)
- Setup-/Hold-Zeit als Timing-Constraint kennen