微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > FPGA,CPLD和ASIC > D触发器级联能否解决亚稳态的 逻辑问题

D触发器级联能否解决亚稳态的 逻辑问题

时间:10-02 整理:3721RD 点击:
数字电路设计时,不同时钟域数据传输,通过级联D触发器,怎样解决亚稳态的问题?
     Tc>=Tcomb_max+Tco_max+Tsetup+skew  最小的时钟周期;
      假设skew=0;当时钟触法沿结束后,第一级触发器D端的数据至少要经过Tcomb_max+Tco_max,才能到达第二级触发器的D端,然后还要等待Tsetup的时间才能允许第二个时钟沿到来;
     Thold<=Tcomb_min+Tco_min-skew
      假设skew=0;
      当前时钟触发沿结束后,第一级触发器的D端数据最短需要经过Tcomb_min+Tco_min 时间到达第二级触发器的D端,这也是第一级触发器的D端旧数据能够保持的时间,所以Tcomb_min+Tco_min一定要大于Thold才可以;

   Tsetup:触发器要求的建立时间
    Thold:触发器要求的保持时间
       Tc:系统时钟周期
Tcomb_max:组合电路最大延迟
Tcomb_min:组合电路最小延迟
  Tco_max:触发器最大传播延迟,也就是从时钟触发沿开始到数据稳定的出现在输出端的最大延迟。
  Tco_min:触发器最小传播延迟,也就是从时钟触发沿开始到数据稳定的出现在输出端的最小延迟。
         skew
:时钟偏斜,这里定义skew = t2 – t1,t2和t1如图2.15中所示,它们的含义分别是时钟沿到达两个触发器的时刻。
  输入信号通过第一个D触发器后能够通过足够的等待时间得到稳定的值,但是这个稳定的值逻辑上能保证正确么?
  级联D触发器能不能保证 逻辑正确?

在亚稳态情况下,通过足够的等待时间,能得到稳定的值,但是这个值的逻辑不一定正确;级联D触发器不能保证逻辑正确,只能说可以在输出端得到一个稳定的值,摆脱亚稳态状态。



    谢谢您的指教 对您的回答我非常的满意
    今天用quartue 出现了一个问题 我用quartus 烧写程序的时候  双击quartus_pgmw.exe 竟然打不开 这个是什么原因啊 您能帮我解答么

这种触发器结构是对于非敏感电路使用的。
触发器延迟的的根本目的是“防止亚稳态的传播”,并非“阻止亚稳态的产生”.

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top