抛砖引玉,同步器(三)
时间:10-02
整理:3721RD
点击:
多个信号跨时钟域
多个控制信号跨时钟域仅仅通过简单的同步器同步有可能是不安全的。
简单举例,b_load和b_en同步至a_clk时钟域,如果这两个信号有一个小的skew,将导致在a_clk时钟域中两个信号并不是在同一时刻起作用,与在b_clk中的逻辑关系不同。

解决的方法应该比较简单,就是将b_load和b_en信号在b_clk时钟域中合并成一个信号,然后同步至a_clk中。
如果遇到不能合并的情况,如译码信号。如下图

如果Bdec[0]、bdec[1]间存在skew将导致同步至a_clk中后译码错误,出现误码。在这种情况下,建议加入另一个控制信号,确保bdec[0]、bec[1]稳定时采。例如在bdec[0]、bec[1]稳定输出后一到两个周期b_clk域输出一个en信号,通知a_clk域此时可以采bdec[0]、bec[1]信号。这样可确保正确采样。
请问LZ,同步之后,在aclk时钟域中打一拍可以吗?
这个要看你的设计了,如果这个信号要与别的信号对齐或者怎么样的话,就需要在a_clk时钟域里做点事情了
请问小编,bclk的两个信号合并为一个是用and门合并吗?有些不太理解,谢谢
写的挺好的
写的不错
很棒!
