Latch vs. Flip-Flop: Unterschiede im Überblick

Beide speichern ein Bit, werden aber unterschiedlich getriggert. Ein Latch ist pegelgesteuert: Solange sein Enable-Signal aktiv ist, ist es transparent und reicht den Eingang direkt an den Ausgang durch; wird das Enable inaktiv, hält es den Wert. Ein Flip-Flop ist flankengesteuert: Es übernimmt den Eingang nur an der Taktflanke und ignoriert Änderungen dazwischen. Ein Flip-Flop besteht aus zwei Latches, die in entgegengesetzten Phasen arbeiten.

AspektLatchFlip-Flop
TriggerungPegelgesteuert: wirkt, solange das Enable aktiv istFlankengesteuert: wirkt nur an der steigenden oder fallenden Taktflanke
AusgangsverhaltenFolgt dem Eingang, solange es transparent ist, und hält ihn dannÄndert sich nur an der Taktflanke, sonst stabil
AufbauEine einzelne SpeicherstufeZwei in Reihe geschaltete Latches mit entgegengesetzten Phasen (Master-Slave)
Größe und LeistungsaufnahmeKleiner, mit geringerer LeistungsaufnahmeGrößer, etwa doppelt so viele Transistoren
Timing-AnalyseAufwendiger: Time Borrowing über die transparente PhaseEinfach: Setup- und Hold-Zeiten um die Taktflanke
Empfindlichkeit gegenüber GlitchesGlitches und Races laufen im transparenten Zustand durchUnempfindlich gegenüber Eingangsänderungen zwischen den Taktflanken
Typische EinsatzgebieteCustom-Designs mit hoher Geschwindigkeit und Time Borrowing, Clock-Gating-ZellenRegister, Zähler und Zustandsautomaten im synchronen Design

Die Zahlenangaben sind typische Größenordnungen und variieren je nach Prozessgeneration und Produkt.

Wann welches einsetzen

Latch
Wenn Fläche, Leistungsaufnahme oder Geschwindigkeit die aufwendigere Timing-Analyse rechtfertigen, typischerweise in Custom- oder Hochleistungsschaltungen.
Flip-Flop
Der Standardbaustein im synchronen Design, weil das Timing einfach und robust ist.
HDL-Tipp
In Verilog oder VHDL erzeugt eine unvollständige if- oder case-Anweisung in kombinatorischer Logik ungewollt ein Latch. Weisen Sie in jedem Zweig einen Wert zu, um das zu vermeiden.

FAQ

Was ist der Unterschied zwischen Latch und Flip-Flop in einem Satz?

Ein Latch ist pegelgesteuert und transparent, solange sein Enable aktiv ist, während ein Flip-Flop flankengesteuert ist und seinen Eingang nur an der Taktflanke übernimmt.

Besteht ein Flip-Flop aus Latches?

Ja. Ein Master-Slave-Flip-Flop besteht aus zwei in Reihe geschalteten Latches, die in entgegengesetzten Phasen arbeiten.

Warum bevorzugen Entwickler Flip-Flops?

Die Timing-Analyse ist einfach, mit Setup- und Hold-Zeiten um eine Taktflanke, und Glitches zwischen den Flanken spielen keine Rolle.

Wie entsteht ein ungewolltes Latch im HDL-Code?

Wenn ein kombinatorischer always-Block oder Process nicht in jedem Zweig einen Ausgang zuweist (unvollständiges if oder case), behält die Synthese den alten Wert bei und erzeugt ein Latch.

Wichtige Begriffe erklärt

Flipflop
Das Grundelement sequenzieller Schaltungen, das ein Bit speichert. Ein D-Flipflop übernimmt seinen Eingang bei einer Taktflanke.
Ungewolltes Latch
Ein bei der Synthese entstehendes Latch, wenn eine als kombinatorische Logik gedachte Beschreibung unter einer Bedingung keinen Ausgang zuweist und der Wert daher gehalten werden muss.

Weitere Vergleiche