我们是否使用灰色计数器来避免Asynch FIFO中的亚稳态?

时间:2017-08-05 05:08:52

标签: system-verilog fifo digital-logic

当格​​雷码计数器中的1位变为亚稳态时会发生什么?为什么它不是异步FIFO中的问题?

2 个答案:

答案 0 :(得分:0)

我认为异步FIFO实际上在内部使用格雷码计数器来传递两个时钟域的写/读地址指针。

如果在一个时钟域中切换超过1位,则会出现亚稳态问题,但是没有其他时钟域捕获所有位。一个1位可以在灰色代码计数器中切换,值保持不变。当第二个时钟从第一个时钟采样切换位时无关紧要,它可能会延迟一个周期,但它并不重要。

答案 1 :(得分:0)

你可能想看看Cliff Cummings关于Asynchronous FIFO Design的着名论文。