In diesem Bild:
Abbildung 1: Metastabilität in 2- oder 3-Flop-Synchronisierern
Wenn die Metastabilität des ersten Flops im 4. Takt nicht aufgelöst wird, ist es möglich, dass sie im 5. Takt auf '0' aufgelöst wird? Oder zwingt der Eingang den Ausgang des Flops, im fünften Takt auf '1' zu gehen? Gibt es einen anderen schlimmsten Fall, der passieren kann?
Ihre Latenz scheint knapp unter 1/4 Zyklus zu liegen und verfehlt den Zustand „main_in_full“ um 1 Taktzyklus. Ich vermute, wenn Sie die invertierte Uhr für die Synchronisation wählen (1/2 Latenz), wird sie möglicherweise in der 4. Uhr erfasst und unwahrscheinlicher in der 5. und niemals in der 6. Uhr.
Ich denke, Sie haben ein großes Missverständnis darüber, wie Metastabilität funktioniert.
Die Metastabilität für irgendein gegebenes FF kann nicht über die nächste Taktflanke hinaus andauern. Jede Taktflanke startet ein neues "Fenster" für Metastabilität und nur dann, wenn sich der Eingang gleichzeitig mit der Taktflanke ändert.
Aus diesem Grund verwenden wir zwei oder mehr FFs, um Metastabilität zu eliminieren. Das zweite FF kann nur dann metastabil werden, wenn das erste FF zufällig seine Metastabilität in diesem schmalen Fenster um die nächste Taktflanke herum auflöst. Aber dieselbe Taktflanke zwingt das erste FF in jedem Fall in einen guten Zustand.
Mitu Raj
Elliot Alderson
Anurag
Mitu Raj