ic基础|时序篇01:从触发器到建立时间和保持时间

目录

  • 1.D触发器
  • 2.亚稳态
  • 3.建立时间和保持时间
    • 3.1 建立时间
    • 3.2保持时间
    • 3.3 时钟切换到q端输出时间
  • 4.总结

大家好,我是数字小熊饼干,一个练习时长两年半的ic打工人。我在两年前通过自学跨行社招加入了IC行业。现在的话,我打算将这两年的工作经验和当初面试时最常问的一些问题进行总结,并通过汇总成文章的形式进行输出,相信无论你是在职的还是已经还准备入行,看过之后都会有有一些收获,如果看完后喜欢的话就请关注我吧~谢谢~

作为一名ic设计工程师,除了最为基本的硬件设计语言——verilog外,还需要掌握许多各种硬件、协议的知识,从这篇文章开始,我会分享我在工作学习中积累的ic干货,一是为了学习总结,二是为了分享知识。
第一篇文章就从建立时间和保持时间开始,这两个概念是进行时序分析的基础,也是从verilog到真实电路的一道桥梁。

1.D触发器

在我们学习了数电后,会了解到在数字电路中,电路可分为组合逻辑电路以及时序逻辑电路,而时序逻辑电路的核心是触发器,以下是一个D触发器结构:
在这里插入图片描述

上图是一种由两个锁存器级联构成的主从式D触发器,主锁存器以及从锁存器中的传输门(TG),会随着时钟极性的改变,在打开/关闭的状态中切换,从而实现对数据的锁存,举个例子:
当时钟从低电平切换到高电平时,传输门TG1从打开切换到关闭状态,TG2从关闭切换到打开状态,此时两个反相器G1和G2构成了双稳态器件,从而实现了在时钟的上升沿时将D端输入的数据锁在了触发器中。
但是,在现实生活中,无论是时钟的切换还是传输门的切换都需要时间,因此如果在时钟切换时,如果D端输入的数据不稳定,就会导致触发器所锁住的值不稳定,当触发器最终稳定下来后,所产生的稳定值也可能不是D端输入的值,也就是产生了所谓的亚稳态

2.亚稳态

亚稳态是指触发器无法在某个规定的时间段内达到可以确认的状态。一旦触发器进入亚稳态,则既无法预测触发器的输出电平,也无法预测什么时候稳定在某个确认的电平上。

当发生亚稳态时,触发器输出端Q在较长时间内处于震荡状态,当然,这个震荡状态最终会结束,输出端Q的值也会最终稳定下来,但是这个稳定值并不是确定的,也就是说Q端输出值很可能不是我们期望锁住的D端输入值,并且这种错误的输出可以沿信号通道上的各个触发器级联式传播下去,从而造成整条电路出现无法预期的问题!

在我们经常使用的同步电路中,电路中的各个触发器都是使用相同的时钟,因此,当出现违反时序的情况时,很容易被我们使用的EDA工具所检查到,进而通过相应的办法解决,这些违例的解决方法会在下一篇文章来说明。

而在异步电路中,由于各个电路所使用的时钟不一样,一个时钟域a下的信号adata,相对于另一个时钟域b来说,可能在任何一个时刻发生变化,因此这种跨时钟域信号传输也就更容易出现亚稳态。

3.建立时间和保持时间

在第一节中我们提到了,输入信号D需要在时钟跳变时保持一端时间的稳定,这段时间可分为时钟跳变前和时钟跳变后,分别通过建立时间,和保持时间来定义。
在这里插入图片描述

3.1 建立时间

建立时间(Tsu): 在敏感时钟边沿到来之前,输入信号D需要保持稳定的最小时间。
带入到第一节的D触发器的结构示意图中,我们可以理解为:在时钟上升沿到来之前,输入信号D必须满足大于等于Tsu的稳定时间,以便满足输入信号从D端传输到TG2的所需时间,用公式描述建立时间Tsu则是:
Tsu=Ttg1+Tg1+Tg2
其中,Ttg1是信号经过传输门TG1的延迟,Tg1与Tg2则是信号经过反相器G1与G2的延迟。

3.2保持时间

保持时间(Thd):在敏感时钟沿到来后,输入信号D需要保持稳定的最小时间。
同样带入D触发器中:在时钟上升沿到来之后,输入信号D必须满足大于等于Thd的稳定时间,以满足传输门TG1关闭所需要的时间,如果在传输门关闭期间输入信号发生了变化,则无法锁住正确的值,同样用公式描述则是:
Thd=Ttg1_off
其中的Ttg1_off自然就是传输门1关闭所需要的时间了。
只有当建立时间和保持时间都满足时,数据才能被正确地锁在触发器当中,否则,就会导致亚稳态的产生。

3.3 时钟切换到q端输出时间

最后,我们再次观察一下D触发器的结构,D触发器的输出端口为Q,当时钟极性发生变化,到输出端Q稳定输出,这个过程同样不是瞬间就能够完成的,同样需要时间,这段时间为我们称为触发器的clk端到q端延迟(Tco),用公式描述则是:
Tco=Ttg1_off+Tg1+Ttg3+Tg3
其中,Ttg3与Tg3则是从锁存器中的传输门与反相器延迟。

4.总结

在本篇文章中,我们对建立时间和保持时间进行了介绍,他们是静态时序分析的基础,也是笔试面试的常见考点。在下篇文章中,将结合时序路径对建立时间和保持时间的计算进行介绍。

  • 22
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

数字ic小熊饼干

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值