0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

数字IC设计中的建立时间和保持时间

CHANBAEK 来源:新芯设计 作者:新芯设计 2023-06-21 14:38 次阅读

引言

  本文主要介绍了建立时间和保持时间。

一、建立时间(Setup Time)

  建立时间是指 D 触发器的时钟信号上升沿到来之前,数据保持稳定不变的时间。

  输入信号应该提前时钟上升沿(如上升沿有效)Tsu 时间到达芯片,这个 Tsu 就是建立时间。如果不满足建立时间要求,这个数据就不能被这一时钟打入触发器,只有在下一个时钟上升沿,数据才能被打入触发器,或者说,该数据就会被永久 “跳过” 而未被 “采样”。举个例子,坐火车时需要提前到站检票安检,而不是一到火车站就可以乘坐,必须的提前到站的时间就是建立时间。

  如果数据信号在时钟沿触发前的持续时间超过了建立时间 Tsu,那么这个时间间隔就叫做建立时间裕量。

  SDC 约束命令为 set_max_delay。

二、保持时间(Hold Time)

  保持时间是指 D 触发器的时钟信号上升沿到来之后,数据保持稳定不变的时间。

  数据保持不变以便能够稳定读取,如果保持时间不满足的话,那么数据便不能被有效读取并转换为输出。

  如果数据信号在时钟沿触发后的持续时间超过了保持时间 Th,那么这个时间间隔就叫做保持时间裕量。

  SDC 约束命令为 set_min_delay。

总结(Summary)

  建立时间和保持时间这两个时序参数是测试芯片对输入信号和时钟信号之间的时间要求,也就是它们表征了时钟边沿触发前后数据需要在触发器的输入持续时间,是芯片本身的特性;其实,这期间其实还涉及到竞争 - 冒险的问题,也就是毛刺,建立保持时间的存在既是触发器内部的特性又在屏蔽毛刺方面起到了一定的作用;

延伸(Extend)

  • 恢复时间(Recovery Time)是指 D 触发器的时钟信号上升沿到来之前,低电平复位信号或者高电平清零信号保持稳定不变的时间。
  • 移除时间(Removal Time)是指 D 触发器的时钟信号上升沿到来之后,低电平复位信号或者高电平清零信号保持稳定不变的时间。
  • 传播延时(Propagation Delay)是指一个数字信号从器件(一般是 DFF,符号表示为 Tcq)的输入端到输出端所需的时间。通常在 FPGA 中是指时钟上升沿之后延时 Tcq 的时间,数据才到达寄存器 Q 端。区别于门传播延时,表示为信号通过该门所经历的时间,定义为输入信号和输出信号波形在 50% 翻转点之间的时间;
  • 组合逻辑延时(Combinational Logic Delay)是指两级寄存器之间的输出端 Q 到输入端 D 之间的组合逻辑延时,符号表示为 Tlogic。
  • 传播延时是同一个寄存器的输入到输出的延时,组合逻辑延时是不同寄存器的输出到输入的延时。

  主从式上升沿触发寄存器的案例分析(Case Analysis),如下:

  • 电路分析可知,在时钟上升沿到来之前数据必须要被送到第一级电路的锁存器里面,即 M 端。
  • 为什么呢?因为如果时钟上升沿到来时,数据没有被送到 M 端,而当时钟上升沿一来,此时 T2 右端与 M 端的信号就会不一致,M 端为旧数据,T2 右端为新数据,那么旧数据可能会将新数据冲刷替代掉(这种情况是不确定的,处于亚稳态)。

图片

主从式上升沿触发寄存器

  • 对于建立时间 Tsu,在 clk 上升沿到来时,数据要被传到 M 端,需经过 I1,T1,I3,I2。故在时钟上升沿到来前 Tsu = TI1 + TT1 + TI3 + TI2 时间数据 D 就必须送到寄存器输入端,这个时间就是三个反相器加一个传输门的延时;
  • 对于保持时间 Th,从电路可以看到,当时钟上升沿一来,T1 就关闭了,就算关闭具有延迟,上升沿一到,数据立即就变化了,还是要经过一个反相器 I1 才能传到 T1,故不担心数据会被送进去,因此保持时间可以为零,Th = 0;当然这是对于这个主从式结构的寄存器而言,其他的寄存器的保持时间不一定为零;
  • 对于传输延时 Tcq,从电路分析,当时钟上升沿来了之后,数据还需要经过 T3,I6 才能传到 Q 端,故这个寄存器的传输延时 Tcq = TI6 + TT3。
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • IC设计
    +关注

    关注

    37

    文章

    1264

    浏览量

    102958
  • 数字信号
    +关注

    关注

    2

    文章

    796

    浏览量

    47221
  • 触发器
    +关注

    关注

    14

    文章

    1680

    浏览量

    60404
  • 建立时间
    +关注

    关注

    0

    文章

    9

    浏览量

    6582
  • 保持时间
    +关注

    关注

    0

    文章

    9

    浏览量

    5628
收藏 人收藏

    评论

    相关推荐

    静态时序之建立时间保持时间分析

    静态时序分析包括建立时间分析和保持时间分析。建立时间设置不正确可以通过降低芯片工作频率解决,保持时间
    的头像 发表于 08-22 10:38 3407次阅读

    芯片设计进阶之路—从CMOS到建立时间保持时间

    建立时间(setup time)和保持时间(hold time)是时序分析中最重要的概念之一,深入理解建立时间保持
    发表于 06-21 10:44 998次阅读
    芯片设计进阶之路—从CMOS到<b class='flag-5'>建立时间</b>和<b class='flag-5'>保持</b><b class='flag-5'>时间</b>

    FPGA时序分析-建立时间保持时间裕量都是inf怎么解决呢?

    今天有个小伙伴遇到一个问题,就是在vivado里面综合后看到的建立时间保持时间裕量都是inf,我们来看看怎么解决这个问题。
    发表于 07-30 10:26 745次阅读
    FPGA时序分析-<b class='flag-5'>建立时间</b>和<b class='flag-5'>保持</b><b class='flag-5'>时间</b>裕量都是inf怎么解决呢?

    浅析D触发器的建立时间保持时间物理含义

    我理解这个D触发正常运转要满足四个约束,第一个是建立时间,第二个是保持时间,第三个是对于最后一个传输门的关断时间的控制,第四个是[时钟周期]() 约束。
    的头像 发表于 12-04 15:44 454次阅读
    浅析D触发器的<b class='flag-5'>建立时间</b>和<b class='flag-5'>保持</b><b class='flag-5'>时间</b>物理含义

    建立时间保持时间讨论

    本帖最后由 虎子哥 于 2015-3-12 21:24 编辑 建立时间(Setup Time):是指在触发器的时钟信号上升沿到来以前,数据稳定不变的时间,如果建立时间不够,数据将不能在这个时钟
    发表于 03-10 23:19

    FPGA实战演练逻辑篇51:建立时间保持时间

    建立时间保持时间本文节选自特权同学的图书《FPGA设计实战演练(逻辑篇)》配套例程下载链接:http://pan.baidu.com/s/1pJ5bCtt 在这个波形,我们看到cl
    发表于 07-17 12:02

    什么叫建立时间,保持时间,和恢复时间

    什么叫建立时间,保持时间,和恢复时间
    发表于 04-08 16:52

    保持时间建立时间

    如图,建立时间保持时间都是针对的时钟沿,如图所示,时钟沿有一个上升的过程,图中虚线与clk上升沿的交点是什么?幅值的50%?还是低电平(低于2.5V)往高电平(高于2.5V)跳转的那个点?
    发表于 11-29 00:20

    数字 IC 笔试面试必考点(9)建立时间以及保持时间 精选资料分享

    建立时间(Setup Time)是指触发器的时钟信号上升沿到来之前,数据保持稳定不变的时间。  输入信号应该提前时钟上升沿(如上升沿有效)Tsu时间到达芯片,这个 Tsu就是
    发表于 07-26 07:36

    为什么触发器要满足建立时间保持时间

    什么是同步逻辑和异步逻辑?同步电路和异步电路的区别在哪?为什么触发器要满足建立时间保持时间?什么是亚稳态?为什么两级触发器可以防止亚稳态传播?
    发表于 08-09 06:14

    关于数字IC建立时间以及保持时间你想知道的都在这

    关于数字IC建立时间以及保持时间你想知道的都在这
    发表于 09-18 07:24

    为什么触发器要满足建立时间保持时间

    什么是同步逻辑和异步逻辑?同步电路和异步电路的区别在哪?为什么触发器要满足建立时间保持时间
    发表于 09-28 08:51

    到底什么是建立时间/保持时间

    在时序电路设计中,建立时间/保持时间可以说是出现频率最高的几个词之一了,人们对其定义已经耳熟能详,对涉及其的计算(比如检查时序是否正确,计算最大频率等)网上也有很多。
    的头像 发表于 06-27 15:43 5888次阅读
    到底什么是<b class='flag-5'>建立时间</b>/<b class='flag-5'>保持</b><b class='flag-5'>时间</b>?

    SOC设计中的建立时间保持时间

    建立时间保持时间是SOC设计中的两个重要概念。它们都与时序分析有关,是确保芯片正常工作的关键因素。
    的头像 发表于 08-23 09:44 443次阅读

    PCB传输线建立时间保持时间建立时间裕量和保持时间裕量

     信号经过传输线到达接收端之后,就牵涉到建立时间保持时间这两个时序参数,它们表征了时钟边沿触发前后数据需要在锁存器的输入持续时间,是接收器本身的特性。简而言之,时钟边沿触发前,要求数
    发表于 09-04 15:16 421次阅读
    PCB传输线<b class='flag-5'>建立时间</b>、<b class='flag-5'>保持</b><b class='flag-5'>时间</b>、<b class='flag-5'>建立时间</b>裕量和<b class='flag-5'>保持</b><b class='flag-5'>时间</b>裕量