Der Gray-Code bei der Übertragung von Daten

S

sun_ray

Guest
Was sind all die Gründe, die Gray-Code zur Erzeugung von voll und leer für asynchrone FIFO zur Übertragung von Daten verwendet wird?
 
Übertragung von Multi-Bit über asynchrone Taktdomäne empfindlich sein können, um Daten Inkohärenz, wenn diese Bits Veränderungen der Nähe der Taktflanke des Aufnahme Taktbereich. Die klassische zweistufige Flip-Flop Synchronizer wird das Problem nicht lösen von Daten Inkohärenz. Wenn zum Beispiel "B0000 -> 'b0110 aus Taktdomäne A zu B Taktdomäne (sie sind asynchron), und der Bit-Übergangs passieren nahe dem Taktflanke auftritt, der Ausgang des Flops Einfangen kann gehen metastabil. Das führt dazu, Metastabilität das Bit in einem der "B0000" B0100 ", B0010 und 'b0110 Zuständen befinden. Hier werden die Daten durch Taktdomäne senden A ist inkohärent mit Datenerfassung durch Taktdomäne B, auch wenn sie durch zwei staatliche Flip-Flop Synchronizer synchronisiert werden. Was passiert nun, wenn man nur ein Bit nur ändern ('B0000 ->' B0010) beim Senden mult etwas über Taktdomäne den Fang Wert wird entweder alt value 'B0000 oder neue Wert' B0010 sein. Es gibt keine andere mögliche falsche Werte wie in multi_bit Veränderungen. Hier mit einzelnen Bit-Änderung (das ist, was Kodierung grau ist) löst das Problem der Daten Inkohärenz im asynchronen FIFO.
 

Welcome to EDABoard.com

Sponsor

Back
Top