當暫存器 A 敲入非同步的輸入時, 在 set-up time 或 hold time 不滿足的情況下, 有可能在輸出端 QA 得到短暫的不穩定的輸出, 稱之為 metastable



 

這一小段不穩定, 拿來作任何邏輯運算都有問題, 所以最好什麼事都不作, 直接再進入下一級的暫存器 B。在暫存器 B 之後再作其他邏輯運算才比較可靠。這種慣用的技巧即是 two-flip-flop synchronizer。

關於避免 metastable 的技巧, 以下的論文是很好的參考。

Clifford E. Cummings: Synthesis and scripting techniques for designing multi-asynchronous clock designs

http://www.sunburst-design.com/papers/CummingsSNUG2001SJ_AsyncClk.pdf

 

 


094

 

創作者介紹
創作者 數位之牆 的頭像
louis99

數位之牆

louis99 發表在 痞客邦 留言(0) 人氣( 8081 )