SR-Latch
Überblick
- Zweck: Das SR-Latch (Set-Reset-Latch) ist eine grundlegende Speicherschaltung, die ein einzelnes Informationsbit speichert. Es verfügt über zwei Eingänge, die seinen Zustand steuern: Set (S) zum Speichern einer 1 und Reset (R) zum Speichern einer 0, wobei der gespeicherte Wert auch nach dem Entfernen der Eingangssignale erhalten bleibt.
- Symbol: Das SR-Latch wird durch einen Rechteckblock mit S- und R-Eingängen sowie komplementären Q- und Q̅-Ausgängen dargestellt.
- Rolle in DigiSim.io: Dient als grundlegendstes Speicherelement in digitalen Schaltungen, demonstriert das Grundkonzept der rückkopplungsbasierten Speicherung und bildet den Baustein für komplexere sequentielle Komponenten.

Funktionale Beschreibung
Logikverhalten
Das SR-Latch ändert seinen Zustand basierend auf den S- und R-Eingängen und behält seinen Zustand bei, wenn beide Eingänge inaktiv sind.
Wahrheitstabelle:
| Set (S) | Reset (R) | Q (nächster) | Operation |
|---|---|---|---|
| 0 | 0 | Q (vorher) | Zustand halten |
| 0 | 1 | 0 | Rücksetzen |
| 1 | 0 | 1 | Setzen |
| 1 | 1 | ? | Ungültig/Race |
Hinweis: „vorher" bedeutet vorheriger Zustand, „?" bezeichnet einen ungültigen oder unbestimmten Zustand, der zu vermeiden ist
Eingänge und Ausgänge
Eingänge:
- S (Set): 1-Bit-Eingang, der bei Aktivierung den Latch-Ausgang Q auf 1 setzt.
- R (Reset): 1-Bit-Eingang, der bei Aktivierung den Latch-Ausgang Q auf 0 zurücksetzt.
Ausgänge:
- Q: 1-Bit-Ausgang, der den gespeicherten Wert darstellt.
- Q̅: 1-Bit-Komplementärausgang, der die Inverse des gespeicherten Werts darstellt.
Konfigurierbare Parameter
- Aktiver Pegel: Ob die Eingänge aktiv-HIGH (NOR-Implementierung) oder aktiv-LOW (NAND-Implementierung) sind.
- Laufzeitverzögerung: Die Zeit, bis sich Ausgänge nach Eingangsänderungen ändern.
Visuelle Darstellung in DigiSim.io
Das SR-Latch wird als Rechteckblock mit beschrifteten Eingängen auf der linken Seite (S und R) und Ausgängen (Q und Q̅) auf der rechten Seite angezeigt. Wenn die Komponente in einer Schaltung verbunden ist, zeigt sie ihren aktuellen Zustand visuell durch die an ihren Ausgängen angezeigten Werte und Farbänderungen auf den verbindenden Leitungen an. Die Reaktion auf Set- und Reset-Eingänge ist sofort sichtbar und demonstriert das asynchrone Verhalten dieses grundlegenden Speicherelements.
Pädagogischer Wert
Schlüsselkonzepte
- Bistabile Speicherung: Demonstriert, wie digitale Schaltungen den Zustand mittels Rückkopplung aufrechterhalten können.
- Asynchroner Betrieb: Veranschaulicht Zustandsänderungen, die unmittelbar als Reaktion auf Eingaben ohne Taktsteuerung erfolgen.
- Kreuzgekoppelte Logik: Zeigt, wie zwei in einer Rückkopplungsschleife verbundene Gatter Speicher erzeugen.
- Ungültige Zustände: Führt das Konzept verbotener Eingangskombinationen im Digitaldesign ein.
- Schaltungsrückkopplung: Demonstriert, wie Ausgänge als Eingänge zurückgeführt werden können, um stabile Zustände zu erzeugen.
Lernziele
- Das grundlegende Konzept der digitalen Speicherung mittels Rückkopplung verstehen.
- Lernen, wie die Set- und Reset-Eingänge den Zustand des Latches steuern.
- Die Bedeutung der Vermeidung ungültiger Eingangskombinationen erkennen.
- SR-Latches in der Entwicklung grundlegender Speicherschaltungen und asynchroner Controller anwenden.
- Begreifen, wie komplexere Speicherelemente auf dem SR-Latch-Konzept aufbauen.
Anwendungsbeispiele/Szenarien
- Schalter-Entprellung: Bereinigung verrauschter Signale von mechanischen Schaltern.
- Alarmsysteme: Erstellung verriegelnder Alarme, die ein explizites Zurücksetzen erfordern.
- Grundlegende Speicherzellen: Speicherung einzelner Informationsbits.
- Asynchrone Zustandsautomaten: Aufbau von Steuerungen, die auf Ereignisse statt auf Takte reagieren.
- Arbitrierungsschaltungen: Auflösung von Konflikten zwischen konkurrierenden Signalen.
- Pegel-zu-Puls-Umwandlung: Erkennung von Flanken in digitalen Signalen.
Technische Hinweise
- Das SR-Latch hat eine grundlegende Einschränkung: Wenn S und R gleichzeitig aktiv sind, ist der resultierende Zustand unbestimmt (ein ungültiger Zustand), was im Design vermieden werden sollte.
- Es existieren zwei gängige Implementierungen: NOR-basiert (aktiv-HIGH-Eingänge) und NAND-basiert (aktiv-LOW-Eingänge).
- Im Gegensatz zu getakteten Flipflops reagieren SR-Latches sofort auf Eingangsänderungen, was sie für asynchrone Designs nützlich macht, aber in synchronen Systemen problematisch sein kann.
- Wenn beide Eingänge nach einem unbestimmten Zustand gleichzeitig in den inaktiven Zustand zurückkehren, ist der Endzustand unvorhersehbar und hängt von kleinen Timing-Unterschieden und physikalischen Eigenschaften der Schaltung ab.
- In DigiSim.io bietet das SR-Latch eine ausgezeichnete Einführung in das Konzept des Zustandsspeichers, das für alle digitalen sequentiellen Schaltungen grundlegend ist.
Eigenschaften
- Speichereigenschaft:
- Behält den letzten gültigen Zustand bei, wenn beide Eingänge 0 sind
- Bietet grundlegenden bistabilen Betrieb
- Laufzeitverzögerung:
- Set-zu-Q-Verzögerung: Typisch 5–15 ns (technologieabhängig)
- Reset-zu-Q-Verzögerung: Typisch 5–15 ns (technologieabhängig)
- Stromverbrauch:
- Statisch: Niedrig (hauptsächlich Leckstrom)
- Dynamisch: Mäßig während Zustandsänderungen
- Fan-out:
- Typisch 10–50 Gatter (technologieabhängig)
- Schaltungskomplexität:
- Niedrig (erfordert nur 2 NOR- oder 2 NAND-Gatter)
- Geschwindigkeit:
- Schneller als getaktete Flipflops aufgrund asynchronen Betriebs
- Rauschabstand:
- Mäßig (abhängig von der Gattertechnologie)
- Ungültiger Zustand:
- Bedingung S=1, R=1 sollte vermieden werden (erzeugt unbestimmten Ausgang)
Implementierungsmethoden
- Mit NOR-Gattern (Grundlegendes SR-Latch)
graph LR
S[S Input] --> NOR1[NOR Gate 1]
R[R Input] --> NOR2[NOR Gate 2]
NOR1 --> Q[Q Output]
NOR2 --> QB[Q̅ Output]
Q --> NOR2
QB --> NOR1
Funktionsweise: Kreuzgekoppelte NOR-Gatter erzeugen eine Rückkopplungsschleife für bistabilen Betrieb.
- Mit NAND-Gattern (Aktiv-LOW SR-Latch)
graph LR
S[S̅ Input] --> NAND1[NAND Gate 1]
R[R̅ Input] --> NAND2[NAND Gate 2]
NAND1 --> Q[Q Output]
NAND2 --> QB[Q̅ Output]
Q --> NAND2
QB --> NAND1
Funktionsweise: Aktiv-LOW-Implementierung mit NAND-Gattern und kreuzgekoppelter Rückkopplung.
Implementierung auf Transistorebene
- CMOS: Mit komplementären MOSFETs
- TTL: Mit Bipolartransistoren
- Kann auf Stromverbrauch, Geschwindigkeit oder Fläche optimiert werden
Integrierte Schaltkreise
- Erhältlich in 74xx-Logikfamilien
- Oft Teil größerer Speicher- oder sequentieller Logikchips
Anwendungen
Speicherelemente
- Grundlegende Speicherzelle in digitalen Schaltungen
- Grundlage für komplexere Speicherstrukturen
Pulseliminierung
- Entprellen mechanischer Schalter und Druckknöpfe
- Eliminierung von Rauschspitzen in digitalen Eingängen
Arbitrierungsschaltungen
- Auflösung von Konflikten zwischen mehreren Signalen
- First-Come-First-Served-Entscheidungsfindung
Asynchrone sequentielle Schaltungen
- Zustandsautomaten ohne globalen Takt
- Ereignisgesteuerte Logik-Controller
Pegel-zu-Puls-Umwandlung
- Umwandlung einer Pegeländerung in einen Puls
- Flankenerkennung in digitalen Systemen
Alarm- und Statusanzeige
- Verriegelnde Alarme, die manuell zurückgesetzt werden müssen
- Statusanzeigen, die den Zustand halten
Einschränkungen
Race Condition
- Die Eingangskombination S=1, R=1 führt zu einem unbestimmten Zustand
- Wenn beide Eingänge gleichzeitig auf 0 zurückkehren, ist der Endzustand unvorhersehbar
Keine Taktsteuerung
- Änderungen erfolgen unmittelbar bei Eingangsänderungen
- Schwierig mit anderen Systemkomponenten zu synchronisieren
Metastabilitätsprobleme
- Kann instabile Zustände eingehen, wenn Eingänge zu nahe beieinander wechseln
- Kann oszillieren oder sich auf einen falschen Zustand einstellen
Eingangs-Timing-Beschränkungen
- Mindestpulsbreitenanforderungen
- Möglichkeit verpasster Pulse, wenn zu schmal
Begrenzte Funktionalität
- Nur grundlegende Speicherfähigkeit
- Keine Flankensteuerung
- Keine Enable-Steuerung
Detail der Schaltungsimplementierung
NOR-Gatter SR-Latch
In dieser Implementierung verwendet das Latch zwei kreuzgekoppelte NOR-Gatter, um Rückkopplung zu erzeugen:
Q = !(R + Q̅)
Q̅ = !(S + Q)
Wenn S=1 und R=0, wird Q zu 1. Wenn S=0 und R=1, wird Q zu 0. Wenn sowohl S als auch R 0 sind, behält das Latch aufgrund der Rückkopplungsschleife seinen vorherigen Zustand bei.
NAND-Gatter SR-Latch
In der NAND-Implementierung sind die Eingänge aktiv-LOW, was bedeutet, dass das Latch gesetzt wird, wenn S 0 ist, und zurückgesetzt wird, wenn R 0 ist:
Q = !(!S · Q̅)
Q̅ = !(!R · Q)
Verwandte Komponenten
- Gegattertes SR-Latch: Fügt einen Enable-Eingang hinzu, um zu steuern, wann das Latch seinen Zustand ändern kann
- D-Latch: Eine Modifikation des SR-Latches, die den ungültigen Zustand verhindert
- JK-Flipflop: Fortgeschrittenes Speicherelement mit Toggle-Funktionalität
- D-Flipflop: Flankengesteuerte Version des D-Latches für synchrone Systeme
- T-Flipflop: Toggle-Flipflop, das seinen Zustand bei Taktflanken ändert
- Register: Mehrere Flipflops, die zur Speicherung von Mehrbitwerten angeordnet sind
- SRAM-Zelle: Komplexere Speicherzelle, die auf Latching-Prinzipien basiert