找回密码
 注册
关于网站域名变更的通知
查看: 134|回复: 1
打印 上一主题 下一主题

13条FPGA基础知识,构建你的“逻辑观”10

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2020-3-10 14:48 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
10、FPGA的时序基础理论
. {/ ~8 W  H$ e6 e7 j
我们的分析从下图开始,下图是常用的静态分析结构图,一开始看不懂公式不要紧,因为我会在后面给以非常简单的解释:
这两个公式是一个非常全面的,准确的关于建立时间和保持时间的公式。其中Tperiod为时钟周期;Tcko为D触发器开始采样瞬间到D触发器采样的数据开始输出的时间;Tlogic为中间的组合逻辑的延时;Tnet为走线的延时;Tsetup为D触发器的建立时间;Tclk_skew为时钟偏移,偏移的原因是因为时钟到达前后两个D触发器的路线不是一样长。
这里我们来做如下转化:
因为对于有意义的时序约束,建立时间余量Tslack,setup和保持时间余量Thold都要大于0才行,所以对于时序约束的要求其实等价于:
Tperiod>Tcko+Tlogic+Tnet+Tsetup-Tclk_skew             (1)
Tcko+Tlogic+Tnet>Thold+Tclk_skew                             (2)
之前说了,这两个公式是最全面的,而实际上,大部分教材没讲这么深,他们对于一些不那么重要的延时没有考虑,所以就导致不同的教材说法不一。这里,为了得到更加简单的理解,我们按照常规,忽略两项Tnet和Tclk_skew。原因在于Tnet通常太小,而Tclk_skew比较不那么初级。简化后如下:
Tperiod>Tcko+Tlogic+Tsetup                                         (3)
Tcko+Tlogic>Thold                                                         (4)' M( E9 }) k- _  R6 K: A" t+ _0 ^; H
简单多了吧!但是你能看出这两个公式的含义吗?其实(3)式比较好理解,意思是数据从第一个触发器采样时刻传到第二个触发器采样时刻,不能超过一个时钟周期啊!假如数据传输超过一个时钟周期,那么就会导致第二个触发器开始采样的时候,想要的数据还没有传过来呢!那么(4)式又如何理解呢?老实说,一般人一眼看不出来。
我们对于(4)式两边同时加上Tsetup,得到(5):
Tcko+Tlogic+Tsetup>Thold+Tsetup                               (5)
结合(3)式和(5)式,我们得到如下的式子:
Thold+Tsetup  <Tcko+Tlogic+Tsetup<  Tperiod                   (6)
这个式子就是那个可以让我们看出规律的式子。也是可以看出静态时序分析本质的式子。
Tcko+Tlogic+Tsetup是指数据从第一级触发器采样瞬间开始,传输到第二级触发器并被采样的传输延时。我们简称为数据传输延时。下面讲述(6)式两端的含义。
Tcko+Tlogic+Tsetup<  Tperiod :约定数据传输延时不能太大,如果太大(超过一个时钟周期),那么第二级触发器就会在采样的时刻发现数据还没有到来。
Thold+Tsetup  <Tcko+Tlogic+Tsetup:约定数据传输延时不能太小。这就奇怪了,数据传得太慢大家都知道不好,难道传得太快也不行吗?是的,不行!Thold+Tsetup是一个触发器的采样窗口时间,我们知道,D触发器并不是绝对的瞬间采样,它不可能那么理想。在D触发器采样的瞬间,在这瞬间之前Tsetup时间之内,或者这瞬间之后Thold时间之内,如果输入端口发生变化,那么D触发器就会处于亚稳态。所以采样是有窗口的,我们把Thold+Tsetup的时间宽度叫做触发器的采样窗口,在窗口期内,D触发器是脆弱的,对毛刺没有免疫力的。假如数据传输延时特别小,那么就会发现,当第二级触发器开始采样的时候,第一级触发器的窗口期还没有结束!也就是说,如果这个时候输入端数据有变化,那么不仅第一级触发器处于亚稳态,第二级触发器也将处于亚稳态!
综上,我们就可以知道,数据传输延时既不能太大以至于超过一个时钟周期,也不能太小以至于小于触发器采样窗口的宽度。这就是静态时序分析的终极内涵。有了这个,就不需要再记任何公式了。
: U; v7 [3 Y3 x. F7 X8 d2 r" [( ^
, g% U5 B& W8 Z6 t5 d0 r! l3 \

该用户从未签到

2#
发表于 2020-3-10 17:16 | 只看该作者
在D触发器采样的瞬间,在这瞬间之前Tsetup时间之内,或者这瞬间之后Thold时间之内,如果输入端口发生变化,那么D触发器就会处于亚稳态。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-8-21 11:59 , Processed in 0.109375 second(s), 23 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表