下面哪种异步处理的方法完全正确 ()。
选项:
A、在对数据总线进行异步处理前转化成Gray Code,然后打拍处理,同步后再转换成原码
B、在模块A,有两个控制信号通过正确的同步方法把两个信号进行同步到B时钟域,但是在B时钟域,对这两个同步过来的信号进行了逻辑运算,得到另外一个信号
C、实现异步FIFO时,在地址穿越时钟域前转化成Gray Code
D、单比特信号在跨越时钟域前不需要寄存器输出
答案:
C
解析:
在对数据总线进行异步处理时不能转化成格雷码然后打拍处理,例如,先后两个时钟周期分别传过来4’0001,4’0100,转化为格雷码分别为4’b0001,4’b0110,这两个数据有3位不同,不能进行打拍处理(只有当相邻两个时钟周期最多变化1位的情况下才可以进行打拍处理)所以A错误;B选项,应该先进行逻辑运算,然后将结果通过正确的同步方法同步到B时钟域;C选项正确;D选项,在跨越时钟域之前应该先寄存一拍。