任何学fpga的人都跑不掉的一个问题就是进行静态时序分析。静态时序分析的公式,老实说很晦涩,而且总能看到不同的版本,内容又不那么一致,为了彻底解决这个问题,我研究了一天,终于找到了一种很简单的解读办法,可以看透它的本质,而且不需要再记复杂的公式了。
我们的分析从下图开始,下图是常用的静态分析结构图,一开始看不懂公式不要紧,因为我会在后面给以非常简单的解释:
这两个公式是一个非常全面的,准确的关于建立时间和保持时间的公式。其中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)
简单多了吧!但是你能看出这两个公式的含义吗?其实(3)式比较好理解,意思是数据从第一个触发器采样时刻传到第二个触发器采样时刻,不能超过一个时钟周期啊!假如数据传输超过一个时钟周期,那么就会导致第二个触发器开始采样的时候,想要的数据还没有传过来呢!那么(4)式又如何理解呢?老实说,一般人一眼看不出来。
我们对于(4)式两边同时加上tsetup,得到(5):
tcko+tlogic+tsetup>thold+tsetup (5)
结合(3)式和(5)式,我们得到如下的式子:
thold+tsetup
这个式子就是那个可以让我们看出规律的式子。也是可以看出静态时序分析本质的式子。
tcko+tlogic+tsetup是指数据从第一级触发器采样瞬间开始,传输到第二级触发器并被采样的传输延时。我们简称为数据传输延时。下面讲述(6)式两端的含义。
tcko+tlogic+tsetup< tperiod :约定数据传输延时不能太大,如果太大(超过一个时钟周期),那么第二级触发器就会在采样的时刻发现数据还没有到来。
thold+tsetup 综上,我们就可以知道,数据传输延时既不能太大以至于超过一个时钟周期,也不能太小以至于小于触发器采样窗口的宽度。这就是静态时序分析的终极内涵。有了这个,就不需要再记任何公式了。
美国、德国加速产业和工业互联网融合,为工业发展奠定标准规则
贸泽备货Molex Contrinex工业4.0感应和光电传感器
一款可以清洗高层建筑外墙的无人清洗机
说说51单片机的多功能按键程序怎么写
贸泽开售Laird Antennas的Trigger系列下置式远程通信天线
FPGA静态时序分析简单解读
2018年底我国12寸晶圆产能将为现有的1.8倍
索尼正式推出了2020年电视新品全矩阵
奥迪在高速公路测试L4级自动驾驶
OPPOR17Pro评测 凭什么获得行业与用户的一致认可
高通骁龙870发布:7nm工艺
电脑芯片为什么短缺
GSMA正积极联系高通推动物联网发展
缺芯,真的只是源于一次误判吗?
自动关机电路,自动关机原理分析
人工智能与量子计算将碰撞出无限火花
销量突破千万!新配色助力华为P20系列取得更高销量
老司机讲解初识热敏 FFC(FPC)焊接方法和注意事项
黑科技石墨烯电池助你远离“里程焦虑症”石墨负极在充放电过程中的相变机
西部数据Black™NVMe™M.2固态硬盘评测 凭借超高性能亦会有惊艳的表现