Ich verstehe, was Metastabilität ist, verstehe aber nicht, wie das Verbinden von Flip-Flops dies verringert?
Wenn der Ausgang des ersten Flipflops metastabil ist, wird dieser als Eingang für das zweite verwendet. Aber ich sehe nicht, wie das 2. Flip-Flop mit diesem Eingang etwas anfangen und es stabil machen kann.
Danke im Voraus!
Metastabilität kann nicht „geheilt“ werden, aber wenn man lange genug wartet , kann die Wahrscheinlichkeit ihres Auftretens beliebig klein gemacht werden. Sobald Sie es einmal im Zeitalter des Universums erreicht haben, ist es wahrscheinlich unwahrscheinlich, dass es Ihnen Probleme bereitet.
Es ist, als würde man einen Bleistift auf seiner Spitze balancieren. Es ist wahrscheinlich, dass es umfällt, und je länger Sie warten, desto unwahrscheinlicher ist es, dass es stehen bleibt.
Es gibt zwei Probleme mit dem langen Warten, und eines davon ist grundlegend.
Das grundlegende Problem besteht darin, dass Sie, wenn Sie ein einzelnes Speicherelement (Latch oder Flip-Flop, beide leiden unter Metastabilität) in einem getakteten System haben, das die Ausgabe von einem asynchronen externen System empfängt, physikalisch keine Untergrenze für die Wartezeit definieren können , macht das externe Signal manchmal einen Übergang in der Nähe der selbsthaltenden Steuerflanke. Sie müssen das Signal zu einem anderen Flip-Flop leiten, damit es dort warten kann. Dies gibt Ihnen eine garantierte minimale Wartezeit von einem Taktzyklus.
Das zweite Problem besteht darin, dass Sie oft versuchen, ein System so schnell wie möglich zu betreiben, und die Systemtaktrate nicht verlangsamt werden kann, um dem zweiten Flip-Flop genügend Zeit zu geben. Die einzige Möglichkeit, die Signallatenz auf das notwendige Maß zu erhöhen, ohne den Durchsatz zu verringern, besteht darin, das Warten auf mehr Stufen zu verlegen.
Manche Leute haben Schwierigkeiten, sich vorzustellen, was zwischen den Flip-Flops passiert. Es gibt zwei Möglichkeiten, Metastabilität zu induzieren, und beide beinhalten die Verletzung der Flip-Flop-Regeln. Eine Möglichkeit besteht darin, die Setup- und Haltezeiten des Eingangs zu verletzen, um einen Übergang vorzunehmen, wenn das Flip-Flop erwartet, dass der Eingang stabil ist. Die andere besteht darin, die Eingangslogikpegel zu verletzen, um den Flip-Flop-Dateneingang auf einen Zwischenspannungspegel setzen zu lassen. Ein metastabiles Flip-Flop kann beide Arten von Verletzungen an seinem Ausgang erzeugen, um auf das nächste Flip-Flop zu kaskadieren.
Es verringert die Wahrscheinlichkeit einer Metastabilität, die die Schaltung beeinträchtigt, indem mehr Zeit gelassen wird, bis das Signal tatsächlich verwendet wird. Mit zwei Flip-Flops ermöglicht es einen ganzen zusätzlichen Taktzyklus, damit sich das Signal einpendeln kann. Mit drei erlaubt es zwei zusätzliche Taktzyklen.
Sie verhindern nicht, dass sich die Metastabilität auf die Ausgabe auswirkt, aber sie können die mittlere Zeit zwischen Ereignissen stark verlängern, da die Metastabilität von relativ langer Dauer sein müsste.
Die Kaskadierung von drei (oder mehr) gut gestalteten Flip-Flops kann die Zeit zwischen Zwischenfällen auf etwa das Alter der Erde verlängern.
Weil das erste Flip-Flop, selbst wenn es metastabil ist, die gesamte Periode des Takts hat, um sich zu stabilisieren. Bis das zweite Flip-Flop das erste Flip-Flop abtastet, könnte sein Ausgang bereits stabil sein.
Wenn Sie die Aufregung der Metastabilität wollen, implementieren Sie ZWEI SEHR LANGSAME INVERTER, verbinden Sie sie Rücken an Rücken und spannen Sie sie (in einer Simulation) auf VDD/2 vor. Entfernen Sie dann die Vorspannung und beobachten Sie die Geschwindigkeit der Auflösung auf logische 1- und logische 0-Pegel. Möglicherweise müssen Sie eine andere anfängliche Vorspannung als VDD/2 auswählen.
Wenn Ihre 2 oder 3 Flipflops im Vergleich zur Taktperiode LANGSAM sind, kann das Leben voller Probleme sein.
Metastabilität bedeutet einfach, dass sich der Ausgang für einen bestimmten Zeitraum nach der Taktflanke schlecht verhält, wenn Sie einen Datenübergang innerhalb eines bestimmten Zeitfensters bezogen auf die Uhr haben. Das Fenster ist jedoch kein festes Intervall. Vielmehr nimmt die Wahrscheinlichkeit eines schlechten Werts (Schwingung oder Zwischenspannungspegel) exponentiell mit der Zeit ab. Wenn Sie also das Signal mit einem Takt abtasten und dann etwas warten, bevor Sie den Takt an das zweite Flip-Flop anlegen, können Sie die Wahrscheinlichkeit eines schlechten Bits auf jede gewünschte (aber nicht null) Wahrscheinlichkeit reduzieren. Wenn die erforderliche Zeit zu lang ist, können Sie 3 oder mehr Flip-Flops in Reihe verwenden.
kupfer.hut