结绳法:文章详细解读(异步时钟设计的同步策略)(五)

.典型方法(双锁存器法


   典型方法即双锁存器法,第一个锁存器可能出现亚稳态,但是第二个锁存器出现亚稳态的几率已经降到非常小,双锁存器虽然不能完全根除亚稳态的出现(事实上所有电路都无法根除,只能尽可能降低亚稳态的出现),但是基本能够在很大程度上减小这种几率。最后的一个D触发器和逻辑电路组成的是一个采沿(上升沿,修改一下就能采集下降沿)电路,即当第二个锁存器的输出中出现1个上升沿,那么最后的逻辑输出就会产生1个clock的高电平脉冲。             

  优点:结构简单、易实现。 

  缺点:(1) 增加了两级触发器延时;

        (2)当快时钟域转到慢时钟域时,易造成慢时钟采样丢失(还未来得及采样,数据就变化了);

        故常用于慢时钟域转到快时钟域。(Clk_slow to Clk_fast) 

 适用条件:[1] {(Clk_slow的周期)} > {(Clk_fast的周期) + (路径延时)}    ,确保信号可以被Clk_fast采样到(假设Clk_fast和Clk_slow起始时刻相同求得)。

           [2] {(data数据变化间隔,即脉冲)} > {(Clk_slow的周期) + 2*(Clk_fast的周期) + (路径延时)}    ,确保所有的数据变化均能采集到。

.结绳法

 1、结绳法1:利用数据的边沿作时钟(例子中上升沿)。(可以将脉冲无限延长,直到可以采集到数据,然后复位,要考虑产生数据的频率)。

  实例1:



说明:这种结绳法的原理是,数据作为Din_clkA,即当数据有上升沿(0->1)时,寄存器1的输出将会稳定在高电平,此时等待ClkB采样;当ClkB完成采样后,寄存器4会输出高电平,若此时Din_clkA为低电平,那么即可完成复位,开始下一次采样等待。

  这里需要注意的是当数据来临(即上升沿)时,ClkB域需要等待3个ClkB才会在寄存器4输出并完成输入端的复位,所以Din_ClkA如果变化较快,即持续时间短于3个ClkB,也就是Din_ClkA频率大于ClkB的1/3,那么这时Din_ClkA的变化将无法被采样到,因为ClkB域需要3个ClkB才能完成采样,并且此时Din_ClkA必须是低电平才能复位,采用异步复位。

你可能感兴趣的:(数字电路:异步时钟设计,结绳法,异步设计,数字电路,亚稳态,同步策略)