vivado 时序分析(寄存器与寄存器)

总体延时分为两部分 :1时钟的延时 tclk2- tclk1,也被称为时钟偏斜。

2 在两个寄存器之间 Tdata 既包括路径上的延时也可能包括做组合逻辑运算的延时。

所以我们要做时序分析就是要比对 上述两种延时的差值。

首先我们看数据到达时间 data arrival time如图红线所示

 data arrival time = tclk1 +tco +tdata

接着看时钟的延时

Tsu 上升沿(采样沿)到来之前 数据建立保持时间,

clock arrival time (时钟到达时间)

data arrival time=  t cycle(一个时钟周期) +tclk 2- tsu

将两种到达时间的时序放在同一张图中

把两种到达时间的差值 称为 建立时间余量 setup slack

 setup slack = tcycle + tclk2 -tsu -(tclk1 +tco +tdata)

理论知识简单如上所述  接着用vivado 打开一个采用了两级寄存器的例子

首先根据上述 setup slack公式 tcycle ,对于时序分析软件来说 他就是一个未知量,所以我们建立一个约束文件 将clk 绑到相应的晶振管脚上,

添加约束文件后生成bit文件 ,完成后打开布局布线完成好的映射文件,(open inplemented design)在里面可以添加时钟约束文件,编辑时序约束。

 

之后回到源文件 cotrol+s保存 来保存自己对时钟的约束 可以看到下面会生成

create_clock -period 8.000 -name rx_clk -waveform {0.000 4.000} [get_ports rx_clk]

就是自己对时钟的约束。
 


之后 在run inplementeation 后可以看到 timing reporting 在setup中可以看到最糟糕的建立时间余量 是 6.044ns 

  • report_timing_summary 主要用于实现后的timing sigh-off
  • report_timing 主要用于交互式的约束验证以及更细致具体的时序报告与分析

    report_timing_summary

之后右键下面的 timing summary 关闭窗口 在新生成的窗口类 report timing 

Timing Summary报告把路径按照时钟域分类,每个组别下缺省会报告Setup、Hold以及Pulse Width检查最差的各10条路径,还可以看到每条路径的具体延时报告,并支持与Device View、Schematic View等窗口之间的交互。

每条路径具体的报告会分为Summary、Source Clock Path、Data Path和Destination Clock Path几部分,详细报告每部分的逻辑延时与连线延时。用户首先要关注的就是Summary中的几部分内容,发现问题后再根据具体情况来检查详细的延时数据。其中,Slack显示路径是否有时序违例,Source和Destination显示源驱动时钟和目的驱动时钟及其时钟频率, Requirement显示这条路径的时序要求是多少,Data Path显示数据路径上的延时,Logic Level显示这条路径的逻辑级数,而Clock Path Skew和 Clock Uncertainty则显示时钟路径上的不确定性。

当想要查看某一路径时 右键该路径 选择高亮 可以回到主菜单看到 布局布线之后的 device 中看到该路线 如下图所示

然后也可以双击其中一路径 然后查看具体的delay类型和时间 

我们可以按照setup slack = tcycle + tclk2 -tsu -(tclk1 +tco +tdata)这个公式 来验证 set up slack的计算结果 是否一致  期间 有 clock pessimism 时钟悲观度 和 clock uncertainly 时钟不确定度  时钟悲观度 即为 共同路径 最大延时 -最小延时 而时钟不确定度由芯片决定。仔细观察时序报告便可以发现在报告路径的Slack之前有一行显示clock pessimism已经被考虑在内,在进行Setup Check时会加上一定的clock pessimism,而Hold Check时则会减去一定的clock pessimism。

CPPR(CRPR)。全称Clock Path Pessimism Removal(Clock Reconvergence Pessimism Removal),中文名“共同路径悲观去除”。它的作用是去除clock path上的相同路径上的悲观计算量。

  • 5
    点赞
  • 29
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

旭旭宝宝和车友车行

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

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

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

打赏作者

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

抵扣说明:

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

余额充值