时序分析基本公式

更新时间:2023-06-02 15:22:40 阅读: 评论:0

以下内容译自Quartus II Version 7.0 Handbook Volume 3Verification6-28Clock Analysis部分。 
TimeQuest静态时序分析的对象包括:寄存器和寄存器之间的路径、I/O之间、I/O和寄存器之间的路径、异步复位和寄存器之间的路径。TimeQuest根据Data Arrival TimeData Required Time糖醋虾的简单家常做法计算出时序余量(Slack)。当时序余量为负值时,就发生了时序违规(Timing Violation)。 
需要特别指出的一点是:由于时序分析是针对时钟驱动的电路进行的,所以分析的对象一定是“寄存器-寄存器”对。在分析涉及到I/O的时序关系对时,看似缺少一个寄存器分析对象,构不成“寄存器-寄存器”对,其实是穿过FPGA的I/O引脚,在FPGA外部虚拟了一个寄存器作为分析对象。 
 
一、 建立时间(Setup Time)检查: 
遵循的原则是信号从Launch edge开始计时,经过一系列的时序路径,到达后级寄存器的数
据输入Pin的速度不能太慢,时间不能太长,否则会侵占后级寄存器数据输入Pin相对于Latch edge的建立时间。刚好满足后级寄存器建立时间的数据到达时间是Data Required Time(相对于Latch edge计算),实际的数据到达时间是Data Arrival Time(相对于Launch edge计算)。显然,在建立时间检查中,Data Arrival Time要小于Data Required Time,否则就会造成建立时间违规。也就是说,Data Required TimeData Arrival Time的最大值。二者之差就是建立时间的时序余量。 
1)寄存器-寄存器(Register-to-Register)路径检查: 
Clock Setup Slack = Data Required Time – Data Arrival Time
Data Arrival Time = Launch Edge + Clock Network Delay Source Register +μtco + Register-to-Register Delay
Data Required Time = Clock Arrival Time – μtsu – Setup Uncertainty
Clock Arrival Time = Latch Edge + Clock Network Delay to Destination Register
2)输入引脚-寄存器(Pin-to-Register)路径检查: 
Clock Setup Slack Time = Data Required Time – Data Arrival Time
Data Arrival Time = Launch Edge + Clock Network Delay to Source Register + Input Maximum Delay of Pin + Pin-to-Register Delay
Data Required Time = Clock Arrival Time – μtsu
Clock Arrival Time = Latch Edge + Clock Network Delay to Destination Register
3) 寄存器-输出引脚(Register-to-Pin)路径检查: 
Clock Setup Slack Time = Data Required Time – Data Arrival Time
Data Arrival Time = Launch Edge + Clock Network Delay to Source Register + μtco + Register-to-Pin Delay
Data Required Time = Clock Arrival Time – Output Maximum Delay of Pin
Clock Arrival Time = Latch Edge + Clock Network Delay to Destination Register
从上面三组公式可以看出:Data Arrival Time的前两项是相同的;Data Required Time的第一项是相同的;Clock Arrival Time的公式是相同的。  客厅装修效果图欣赏
所以,第一组公式可以归纳如下: 
Clock Setup Slack Time = Data Required Time – Data Arrival Time
Data Arrival Time = 时钟到达前级寄存器的时刻 + 前级寄存器时钟到后级寄存器数据输入的延迟 幼儿园春季开学
Data Required Time = 时钟到达后级寄存器的时刻win10如何进入安全模式后级寄存器的建立时间 
速干衣裤
其中,后两个公式的第二项在其他情况下适当修改即可。 
这就和一些书中讲到时序分析时采用的公式一致了。 
 
report_timing -from [get_registers reg1] -to [get_registers reg2] -tup -npaths 1 -panel_name "Report Timing"
 
二、 保持时间(Hold Time)检查: 
遵循的原则是信号从Launch edge开始计时,经过一系列的时序路径,到达后级寄存器的数据输入Pin的速度不能太快,时间不能太短,否则会侵占后级寄存器数据输入Pin相对于上一个Latch edge的保持时间。刚好满足后级寄存器保持时间的数据到达时间是天堂天堂Data Required Time(相对于Latch edge计算)植物的四字词语,实际的数据到达时间是Data Arrival Time(相对于Launch edge计算)。显然,在保持时间检查中,Data Arrival Time要大于Data Required Time,否则就会造成保持时间违规。也就是说,马背情歌Data Required TimeData Arrival Time的最小值。二者之差就是保持时间的时序余量。 
相对于建立时间检查,保持时间检查稍微难懂一些。二者都是同步逻辑设计中对同一个规则的不同解释:当前时钟沿发出的数据要在下一个时钟沿被正确捕获,不能晚,也不能早。晚了,会造成下一个时钟沿的建立时间违规,当前时钟沿发送的数据不能被下一个时钟沿捕获;早了,会造成上一个时钟沿发送的数据保持时间违规,上一个时钟沿发送的数据不能被当前时钟沿正确捕获。 
二者在计算公式上的区别在于Slack计算公式中减数与被减数关系。 
1)寄存器-寄存器(Register-to-Register)路径检查: 
Clock Hold Slack = Data Arrival Time – Data Required Time
Data Arrival Time = Launch Edge + Clock Network Delay to Source Register +μtCO + Register to Register Delay
Data Required Time = Clock Arrival Time + μtH + Hold Uncertainty
Clock Arrival Time = Latch Edge + Clock Network Delay to Destination Register
2)输入引脚-寄存器(Pin-to-Register)路径检查: 
Clock Setup Slack Time = Data Arrival Time – Data Required Time
Data Arrival Time = Launch Edge + Clock Network Delay to Source Register + Input Minimum Delay of Pin + Pin to Register Delay
Data Required Time = Clock Arrival Time + μtH
Clock Arrival Time = Latch Edge + Clock Network Delay to Destination Register
3) 寄存器-输出引脚(Register-to-Pin)路径检查: 
Clock Setup Slack Time = Data Arrival Time – Data Required Time
Data Arrival Time = Launch Edge + Clock Network Delay to Source Register + μtCO + Register to Pin Delay

本文发布于:2023-06-02 15:22:40,感谢您对本站的认可!

本文链接:https://www.wtabcd.cn/fanwen/fan/82/834102.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:寄存器   时间   数据   时钟   时序   分析   后级   到达
相关文章
留言与评论(共有 0 条评论)
   
验证码:
推荐文章
排行榜
Copyright ©2019-2022 Comsenz Inc.Powered by © 专利检索| 网站地图