PREVIEW
D Latch

D Latch

Memory signal_cellular_alt_2_bar Intermediate schedule 18 min

Interactive Circuit

D-Latch

Überblick

  • Zweck: Das D-Latch (Daten-Latch) ist eine pegelgesteuerte Speicherschaltung, die ein einzelnes Informationsbit speichert. Es verbessert das SR-Latch, indem es einen einzelnen Dateneingang (D) verwendet, um ungültige Zustände zu eliminieren, während ein Enable-Eingang steuert, wann das Latch neue Daten akzeptiert.
  • Symbol: Das D-Latch wird durch einen Rechteckblock mit Eingängen für D (Daten) und EN (Enable) sowie komplementären Ausgängen Q und Q̅ dargestellt.
  • Rolle in DigiSim.io: Dient als grundlegender Baustein für die Speicherung in digitalen Schaltungen, ermöglicht temporäres Halten von Daten und demonstriert pegelgesteuertes Verhalten im Gegensatz zu flankengesteuertem Betrieb.

D-Latch-Komponente

Funktionale Beschreibung

Logikverhalten

Das D-Latch ist transparent, wenn es aktiviert ist, und gibt den D-Eingangswert an den Q-Ausgang weiter. Wenn es deaktiviert ist, behält (verriegelt) es seinen letzten Zustand unabhängig von Änderungen am D-Eingang bei.

Wahrheitstabelle:

Enable (EN) Daten (D) Q (nächster) Operation
0 X Q (vorher) Zustand halten
1 0 0 Reset (Lade 0)
1 1 1 Set (Lade 1)

Hinweis: X bezeichnet eine „Don't-care"-Bedingung, „vorher" bedeutet vorheriger Zustand

Eingänge und Ausgänge

  • Eingänge:

    • D (Daten): 1-Bit-Eingang, der den zu speichernden Wert liefert, wenn das Latch aktiviert ist.
    • EN (Enable): 1-Bit-Steuereingang, der bestimmt, wann das Latch transparent (EN=1) oder haltend (EN=0) ist.
  • Ausgänge:

    • Q: 1-Bit-Ausgang, der den gespeicherten Wert darstellt.
    • : 1-Bit-Komplementärausgang, der die Inverse des gespeicherten Werts darstellt.

Konfigurierbare Parameter

  • Aktiver Pegel: Ob der Enable-Eingang aktiv-HIGH oder aktiv-LOW ist.
  • Laufzeitverzögerung: Die Zeit, bis sich Ausgänge nach Eingangs- oder Enable-Änderungen ändern.

Visuelle Darstellung in DigiSim.io

Das D-Latch wird als Rechteckblock mit beschrifteten Eingängen auf der linken Seite (D und EN) 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. Das transparente oder haltende Verhalten wird ebenfalls visuell angezeigt, wenn der Enable-Eingang seinen Zustand ändert.

Pädagogischer Wert

Schlüsselkonzepte

  • Pegelsensitivität: Demonstriert, wie Schaltungen auf Signalpegel statt auf Flanken reagieren.
  • Transparenz und Verriegelung: Veranschaulicht die Konzepte des transparenten (Pass-Through-) und Speicher-(Halte-)Modus.
  • Speicherung: Zeigt, wie digitale Schaltungen Informationen vorübergehend speichern können.
  • Signal-Timing: Führt die Bedeutung von Setup- und Haltezeiten in digitalen Speicherelementen ein.
  • Datensynchronisierung: Demonstriert, wie Daten zu bestimmten Zeiten zur Synchronisation erfasst werden können.

Lernziele

  • Den Unterschied zwischen pegelgesteuerten Latches und flankengesteuerten Flipflops verstehen.
  • Lernen, wie der Enable-Eingang steuert, wann Daten erfasst oder gehalten werden.
  • Die Timing-Überlegungen für eine zuverlässige Datenerfassung in Latches erkennen.
  • D-Latches in der Entwicklung einfacher Speicherschaltungen und Datenhalteregister anwenden.
  • Begreifen, wie Latches in zweiphasigen Taktschemata und transparenten Registern verwendet werden können.

Anwendungsbeispiele/Szenarien

  • Datenregister: Temporäre Speicherung von Mehrbit-Datenwerten, wenn Enable aktiviert ist.
  • Eingabeerfassung: Abtasten von Eingangsdaten zu bestimmten Zeiten durch Steuerung des Enable-Signals.
  • Bus-Schnittstellen: Stabiles Halten von Adress- oder Datenwerten während Bustransfers.
  • Zweiphasige Taktung: Erstellung von Pipeline-Stufen in alternierenden Latch-Systemen.
  • Time Borrowing: Ermöglicht die Erweiterung von Operationen über Taktgrenzen hinweg in Pipeline-Systemen.
  • Pegelsensitives Scan-Design: Unterstützung von Schaltungstests durch Erstellung steuerbarer Scan-Ketten.

Technische Hinweise

  • Im Gegensatz zu flankengesteuerten Flipflops sind D-Latches transparent, wann immer der Enable-Eingang aktiv ist, was die Timing-Steuerung kritischer macht.
  • Mehrere Übergänge am D-Eingang, während Enable aktiv ist, verursachen mehrere Übergänge am Ausgang, was in bestimmten Designs zu Race Conditions führen kann.
  • Das „Transparenzfenster" eines Latches kann für Time Borrowing in Pipeline-Designs vorteilhaft sein, erfordert jedoch sorgfältige Timing-Analyse.
  • D-Latches benötigen typischerweise weniger Logik als flankengesteuerte Flipflops und bieten möglicherweise schnelleren Betrieb, allerdings mit mehr Timing-Beschränkungen.
  • In DigiSim.io demonstriert das D-Latch deutlich den Unterschied zwischen pegelgesteuertem und flankengesteuertem Verhalten, ein wichtiges Konzept im Digitaldesign.

Eigenschaften

  • Speichereigenschaft:
    • Speichert den Wert am D-Eingang, wenn Enable von HIGH auf LOW wechselt
    • Transparent, wenn Enable HIGH ist (pegelgesteuert)
  • Laufzeitverzögerung:
    • Daten-zu-Q-Verzögerung (wenn aktiviert): Typisch 5–15 ns (technologieabhängig)
    • Enable-zu-Ausgangs-Verzögerung: Typisch 5–15 ns (technologieabhängig)
  • Setup- und Haltezeiten:
    • Setup-Zeit: Zeit, in der D vor dem Übergang von Enable auf LOW stabil sein muss
    • Haltezeit: Zeit, in der D nach dem Übergang von Enable auf LOW stabil sein muss
  • Stromverbrauch:
    • Statisch: Niedrig (hauptsächlich Leckstrom)
    • Dynamisch: Mäßig während Zustandsänderungen
  • Fan-out:
    • Typisch 10–50 Gatter (technologieabhängig)
  • Schaltungskomplexität:
    • Mittel (erfordert ein SR-Latch plus Eingangs-Gating-Logik)
  • Geschwindigkeit:
    • Schneller als flankengesteuerte Flipflops, erfordert aber längere Setup- und Haltezeiten
  • Rauschabstand:
    • Mäßig (abhängig von der Gattertechnologie)
  • Betriebsmodi:
    • Transparenter Modus (wenn Enable HIGH ist)
    • Speichermodus (wenn Enable LOW ist)

Implementierungsmethoden

  1. Mit einem SR-Latch und Eingangs-Gating
graph TB
    D[D Input] --> AND1[AND Gate]
    EN[Enable] --> AND1
    EN --> AND2[AND Gate]
    
    D --> NOT[NOT Gate]
    NOT --> AND2
    
    AND1 -->|S| SR[SR Latch]
    AND2 -->|R| SR
    
    SR --> Q[Q Output]
    SR --> QB[Q̅ Output]

Funktionsweise: Wenn Enable=1, gelangt D zu Set (wenn D=1) oder Reset (wenn D=0). Wenn Enable=0, hält das Latch seinen Zustand.

  1. Mit NAND-Gattern
graph TB
    D[D Input] --> NAND1[NAND Gate]
    EN[Enable] --> NAND1
    EN --> NAND2[NAND Gate]
    
    D --> NOT[NOT Gate]
    NOT --> NAND2
    
    NAND1 --> NAND3[NAND Latch]
    NAND2 --> NAND4[NAND Latch]
    
    NAND3 --> Q[Q Output]
    NAND3 --> NAND4
    NAND4 --> QB[Q̅ Output]
    NAND4 --> NAND3

Funktionsweise: NAND-basierte Implementierung mit kreuzgekoppelter Rückkopplung für die Speicherung.

  1. Implementierung auf Transistorebene

    • CMOS: Mit Transmission Gates und Invertern
    • TTL: Mit Bipolartransistoren
    • Kann auf Stromverbrauch, Geschwindigkeit oder Fläche optimiert werden
  2. Integrierte Schaltkreise

    • Erhältlich in 74xx-Logikfamilien (z. B. 74HC75, 74LS373)
    • Häufig als Quad- oder Octal-Latches in einem einzigen Gehäuse organisiert

Anwendungen

  1. Datenspeicherung

    • Temporäre Speicherregister in Datenpfaden
    • I/O-Port-Latches in Mikroprozessoren
    • Adresslatches in Speichersystemen
  2. Datensynchronisierung

    • Stabiles Halten von Daten zwischen asynchronen Domänen
    • Eingabeerfassung in Datenerfassungssystemen
  3. Level-Sensitive Scan Design (LSSD)

    • Design für Testbarkeit in digitalen Systemen
    • Scan-Ketten zur Fehlererkennung
  4. Pipeline-Register

    • Transparente Latches in zweiphasigen Taktsystemen
    • Time Borrowing über Pipeline-Stufen hinweg
  5. Datendemultiplexing

    • Halten von demultiplexten Daten in Zeitmultiplexsystemen
    • Sample-and-Hold-Schaltungen in digitalen Systemen
  6. Bus-Schnittstellenschaltungen

    • Datenbus-Latches
    • Adresslatches in Speicherschnittstellen

Einschränkungen

  1. Transparenzfenster

    • Anfällig für mehrere Übergänge während der Enable-HIGH-Periode
    • Kann kurze Pulse nicht zuverlässig erfassen
  2. Pegelsensitivität

    • Änderungen am Eingang während der Enable-HIGH-Periode gelangen zum Ausgang
    • Möglichkeit unerwünschter Rückkopplung und Oszillation
  3. Timing-Beschränkungen

    • Setup- und Haltezeitanforderungen können anspruchsvoll sein
    • Risiko von Metastabilität, wenn Daten nahe am Enable-Übergang wechseln
  4. Empfindlichkeit gegenüber Taktversatz

    • In Mehrfach-Latch-Systemen kann Enable-Versatz Race Conditions verursachen
    • Schwieriger zu verwalten in komplexen Systemen als flankengesteuerte Schaltungen
  5. Begrenzter Schutz vor Rauschen

    • Datenglitches während der Enable-HIGH-Periode propagieren zum Ausgang
    • Anfälliger für Rauschen als flankengesteuerte Flipflops

Detail der Schaltungsimplementierung

D-Latch aus SR-Latch

Das D-Latch kann aus einem SR-Latch aufgebaut werden, indem sichergestellt wird, dass die S- und R-Eingänge nie gleichzeitig HIGH sind:

S = D · EN
R = (¬D) · EN

Wenn EN HIGH ist, ist entweder S oder R HIGH (aber nie beide), abhängig von D. Wenn EN LOW ist, sind sowohl S als auch R LOW, und das SR-Latch befindet sich im Haltezustand.

Verhalten des gegatterten D-Latches

  1. Wenn EN = 0:

    • Sowohl S- als auch R-Eingang des internen SR-Latches sind 0
    • Das Latch behält seinen vorherigen Zustand bei
  2. Wenn EN = 1:

    • Wenn D = 1: S = 1, R = 0, und das Latch setzt Q auf 1
    • Wenn D = 0: S = 0, R = 1, und das Latch setzt Q auf 0 zurück
    • Der Ausgang folgt dem D-Eingang (transparenter Modus)

Verwandte Komponenten

  • SR-Latch: Das grundlegende Latch, auf dem das D-Latch aufbaut
  • D-Flipflop: Flankengesteuerte Version des D-Latches für synchrone Systeme
  • JK-Flipflop: Vielseitigeres Flipflop mit Set-, Reset- und Toggle-Fähigkeiten
  • T-Flipflop: Toggle-Flipflop, das seinen Zustand bei Taktflanken ändert
  • Transparentes Latch: Eine andere Bezeichnung für das D-Latch, die sein Verhalten betont
  • Register: Mehrere Latches, organisiert zur Speicherung von Mehrbitwerten
  • Master-Slave-Flipflop: Zwei Latches in Serie, die flankengesteuertes Verhalten erzeugen

school Lernpfad

arrow_back Voraussetzungen

arrow_forward Nächste Schritte

help_outline Häufig gestellte Fragen

Was ist ein D-Latch?

Ein D-Latch erfasst den D-Eingabewert, wenn Enable HIGH ist (transparent), und hält den letzten Wert, wenn Enable LOW ist (opak).

Warum bevorzugt man D-Flip-Flop gegenüber D-Latch?

D-Flip-Flops sind flankengetriggert und erfassen Daten nur bei Taktflanken. Dies vermeidet die Timing-Gefahren pegelempfindlicher Latches in synchronen Designs.

play_arrow Live-Schaltung ausführen

Weitere Komponenten ansehen