赞
踩
处理跨时钟域的数据可以分为单bit数据和多bit数据,而打拍的方法主要常见于处理单bit数据的跨时钟域问题。
打拍的本质是通过添加寄存器,对输入的数据进行延拍。其主要目标是消除亚稳态的影响。常见的是打2拍,也就是添加2级寄存器。
现实中,假设我们存在2个时钟域,一个是工作在50mhz时钟(一个时钟周期是20ns),一个工作在125mhz时钟(一个时钟周期是8ns)。现在50mhz时钟下需要读数据,产生了一个读使能信号rd_en,持续2个时钟(也就是40ns)。那么我们的打拍时序是什么样的呢?
从图中可以看成,rd_d1是打一拍,rd_d2是打二拍,rd_d3是打三拍,rd_d4是打4拍。而我们通过rd_d3 & ~rd_d4,在第三拍的时候,产生一个内部使用的读请求脉冲信号rd_pl。
如果我们在时钟沿边沿进行相应数据的采集,由于数据的跳变不是瞬时发生的,我们采集到的数据是不确定的。通过打拍,我们在第二拍采集时,数据已经处在一个稳定的状态。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。