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

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

3天内不再提示

通过解剖一个边沿触发器简要说明setup和hold产生原因

sanyue7758 来源:硅芯思见 2023-07-04 09:32 次阅读

在后仿真过程中经常会遇到关于setup和hold violation的问题,但是关于setup和hold time的产生原因和由来很多人还比较朦胧,为此本文通过解剖一个边沿触发器简要说明setup和hold产生原因。

解剖示例

9a667234-19a9-11ee-962d-dac502259ad0.png

上图为触发器的简要示意图(clk和’clk为反向时钟)。T1和T4同时导通,T2和T3同时导通,且T1、T4和T2、T3导通状况互反。其中T1、T2、T3、T4均为传输门,均为电平敏感,所以所谓的时钟跳变可以理解为高低电平的相互跳变所致。而电路中实际的延时信息主要由于电信号导通时通过电子器件时耗费的时间。

【注】传输门的开关状态如下图所示。

9a9c7ad2-19a9-11ee-962d-dac502259ad0.png

工作过程

clk和’clk互为相反的信号,clk为低电平(’clk为高电平)时,T1和T4导通,此时数据进入到`D和``D,因为此时T4导通,图中绿色箭头线中的数据保持上一拍的数据结果。 当clk高电平(’clk为低电平)到来时,T1和T4关断,T2和T3导通,②中的数据维持稳定,通过T3输出至Q端,同时B点、’Q和’’Q点的数据保持一致稳定;当低电平到来时,T2和T3关断,T1和T4导通,此时B点、’Q(Q)和’’Q点数据一直稳定,因此可以保证绿色箭头线部分有稳定一致的数据通过Q端发送出去。

所以,可以看到在上跳沿采样的数据可以保持一个时钟周期。通过上述分析,我们可以看到一个边沿触发器实际上可以解剖为两个锁存器,后续分析时也会用到这种结构特点。 一般触发器setup和hold的产生,就跟上述触发器的工作过程密切相关,下面一块来看看两者之间的联系。

setup和hold踪迹

下图为阴影区域为timing violation区。

9ab4b336-19a9-11ee-962d-dac502259ad0.png

clk上跳沿之前

setup时间(tsu:输入数据D在时钟上升沿之前必须保持不变的时间。为了得到有效的数据,必须保证A点、`D和``D点的数据保持一致稳定,否则在T2导通时将会形成振荡电路。当T1打开时,输入信号经过T1后分别到达A点、`D和``D点,并且保持一致,耗费的时间为Ts,时钟从低电平跳变到高电平需要耗费时间为Tc,因此,为了保持数据的有效和电路的稳定,输入数据需要保持的时间至少应该为Ts,如果不满足将会在T2导通时,A点、`D和``D点的值不同,从而可能会产生亚稳态。因此,可以这样理解,所谓的建立时间是指输入数据D经过多长时间才能使`D的数据稳定可靠。所以setup指的是数据从D到达``D的时间。

clk上跳沿之后

hold时间(thold:在时钟上升沿到达后,输入数据需要保持稳定的时间。在clk上跳沿发生之后,T1和T4关闭,T2和T3打开,数据从Q端输出。但是需要注意,因为T1关闭需要时间,所以在T1和T4关闭到T2和T3打开输入数据必须保持稳定,如果A点的数据受到D点的影响,从而导致A点和D点数据不一致,也就是在上跳沿发生后,即T2、T3导通时,②中循环的数据不能保持稳定一致,从而导致Q端数据不稳定。因此,thold可以理解为D端数据通过T1,再经过②到达A点,保证A和`D点数据一致稳定的时间。 上面是对setup和hold产生原因的一些简单介绍,有些朋友可能会问,上文中setup和hold感觉都是正值,为什么我在仿真的时候遇到过setup或者hold为负值的情况呢?为了探讨方便,此处以常用到的一种触发器(由两个锁存器组成)为例进行简单的说明。

9ad41a6e-19a9-11ee-962d-dac502259ad0.png

hold time为负值

当data从pin到锁存数据的锁存器的delay时间大于clock从pin到达锁存器CK端的delay时,那么当D结束于CLK上升沿之前,此时从REGISTER层面观测到的hold为负值,而实际上在锁存数据的锁存器端,由于之前data延迟大于clock延迟,CLK'对D'进行控制时,D'相对于CLK'一直保持到CLK'为高电平之后,也就是此时hold为正值,出现在上升沿右侧。

9aeab77e-19a9-11ee-962d-dac502259ad0.png

setup time为负值

当data从pin到锁存数据的锁存器的delay时间小于clock从pin到达锁存器CK端的delay时,那么当D开始于CLK上升沿之后,此时从REGISTER层面观测到的setup为负值,而实际上在锁存数据的锁存器端,由于之前data延迟小于clock延迟,CLK'对D'进行控制时,D'出现在了CLK'之前,也就是此时setup为正值,出现在上升沿左侧。

9b2123d6-19a9-11ee-962d-dac502259ad0.png





审核编辑:刘清

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 锁存器
    +关注

    关注

    8

    文章

    752

    浏览量

    41042
  • 触发器
    +关注

    关注

    14

    文章

    1694

    浏览量

    60424
  • CLK
    CLK
    +关注

    关注

    0

    文章

    122

    浏览量

    16912
  • 边沿触发器
    +关注

    关注

    0

    文章

    15

    浏览量

    3894

原文标题:说说setup和hold violation

文章出处:【微信号:处芯积律,微信公众号:处芯积律】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    解释下setuphold time

    本帖最后由 gk320830 于 2015-3-5 18:27 编辑 setup/hold time 是测试芯片对输入信号和时钟信号之间的时间要求。建立时间是指触发器的时钟信号上升沿到来以前,数据稳定不变的时间。保持时间是
    发表于 04-12 16:40

    请问电平触发器边沿触发器符号是什么?

    电平触发器边沿触发器符号
    发表于 10-18 09:01

    什么是SetupHold时间

    保持稳定不变的时间。输入数据信号应提前时钟上升沿(如上升沿有效)T 时间到达芯片,这个 T就是建立时间通常所说的 SetupTime。如不满足 Setup Time,这个数据就不能被这时钟打入触发器,只有在下
    发表于 12-21 07:39

    CMOS触发器在CP边沿的工作特性研究

    CMOS触发器在CP边沿的工作特性研究  对时钟脉冲(简称CP)边沿时间的要求,是触发器品质评价的重要指标之一。触发器只有在CP
    发表于 10-17 08:52 1669次阅读
    CMOS<b class='flag-5'>触发器</b>在CP<b class='flag-5'>边沿</b>的工作特性研究

    边沿触发SR触发器

    可以将电平触发器转换成更为灵活的边沿触发器(采用时间控制方法)。边沿触发器只在上升沿或下降沿处对输入采样。这种转换可以这样来实现:将原来的时
    发表于 08-10 11:10 5700次阅读
    <b class='flag-5'>边沿</b><b class='flag-5'>触发</b>SR<b class='flag-5'>触发器</b>

    一种单锁存器CMOS三值D型边沿触发器设计

    一种单锁存器CMOS三值D型边沿触发器设计
    发表于 01-17 19:54 25次下载

    jk边沿触发器工作原理

    本文开始介绍了JK触发器工作特性与边沿JK触发器的特点,其次介绍了边沿JK触发器工作原理与特点,最后介绍了集成
    发表于 01-30 17:17 3.6w次阅读
    jk<b class='flag-5'>边沿</b><b class='flag-5'>触发器</b>工作原理

    什么是边沿触发器_边沿D触发器介绍

    边沿触发器,指的是接收时钟脉冲CP 的某一约定跳变(正跳变或负跳变)来到时的输入数据。在CP=l 及CP=0 期间以及CP非约定跳变到来时,触发器不接收数据的触发器。具有下列特点的
    发表于 01-31 09:02 7w次阅读
    什么是<b class='flag-5'>边沿</b><b class='flag-5'>触发器</b>_<b class='flag-5'>边沿</b>D<b class='flag-5'>触发器</b>介绍

    常用边沿触发器电路结构和工作原理

    边沿触发器只在时钟脉冲CP上升沿或下降沿时刻接收输入信号,电路状态才发生翻转,从而提高了触发器工作的可靠性和抗干扰能力,它没有空翻现象。边沿触发器
    发表于 01-31 09:17 2.9w次阅读
    常用<b class='flag-5'>边沿</b><b class='flag-5'>触发器</b>电路结构和工作原理

    边沿触发器怎么看

    触发器分为电平触发边沿触发两类。电平触发触发器原理较简单,学习
    发表于 01-31 10:26 5904次阅读
    <b class='flag-5'>边沿</b><b class='flag-5'>触发器</b>怎么看

    D触发器原理:钟控D触发器边沿D触发器

    在分析维持-阻塞边沿D触发器的工作原理之前,让我们先来看看 R0的复位功能 、S0的置位功能是如何实现的吧。
    的头像 发表于 10-18 11:26 2.2w次阅读
    D<b class='flag-5'>触发器</b>原理:钟控D<b class='flag-5'>触发器</b>和<b class='flag-5'>边沿</b>D<b class='flag-5'>触发器</b>

    八路D型触发器;正边沿触发;三态-74ALVC574

    八路D型触发器;正边沿触发;三态-74ALVC574
    发表于 02-16 20:36 0次下载
    八路D型<b class='flag-5'>触发器</b>;正<b class='flag-5'>边沿</b><b class='flag-5'>触发</b>;三态-74ALVC574

    一文详解边沿触发器

    在时钟为稳定的0或1期间,输入信号都不能进入触发器,触发器的新状态仅决定于时钟脉冲有效边沿到达前一瞬间以及到达后极短一段时间内的输入信号. 边沿触发
    的头像 发表于 03-16 15:35 7552次阅读
    一文详解<b class='flag-5'>边沿</b><b class='flag-5'>触发器</b>

    解析触发器setuphold、skew属性

    每个触发器在有效时钟边沿都有一个时序范围,在该范围内数据不应该变化。如果数据在期间变化,输出就是**不可预测**的,这对数字电路来说非常可怕。
    的头像 发表于 03-21 11:19 668次阅读

    脉冲触发器边沿触发器的区别在于什么

    触发器边沿触发器的区别。 首先,我们来看脉冲触发器。脉冲触发器是一种异步触发器,它能够
    的头像 发表于 02-06 13:45 1283次阅读