数字IC设计学习笔记_静态时序分析STA_多周期路径 Multicycle Paths

数字IC设计学习笔记

多周期路径 Multicycle Paths

1. 多周期路径 Multicycle Paths
2. Setup time 检查
3. Hold time 检查
4. 总结

1. 多周期路径 Multicycle Paths

  • 多周期路径Multicycle Paths:在一些特殊情况,组合逻辑的传输延迟超过了一个时钟周期,则这条组合逻辑路径被视为多周期路径,Multicycle Paths。对于多周期路径,进行时序分析时,需要在脚本文件中对这部分设计设置多周期路径约束。
    在这里插入图片描述

2. Setup time检查
在这里插入图片描述 脚本约束

  • Create_clock -name CLKM -period 10 [get_ports CLKM]
  • Set_multicycle_path 3 -setup \ -from [get_pins UFF0/Q]\ -to [get_pins UFF1/D]

时序报告
在这里插入图片描述
在这里插入图片描述

注意:setup检查时,capture edge在3个时钟周期后,所以,capture path的clock上升沿应该在30ns。

3. Hold time检查

通常情况下,hold检查默认在setup检查的前一个时钟周期的上升沿。但是对于多周期路径而言,如果在此处检查,则对数据要求特别严苛,且不符合常理要求。因为hold检查的是延迟的最小时间,所以,在进行多周期hold检查时,需要在默认的hold检查边沿再向前移动两个是时钟边沿。
在这里插入图片描述

脚本约束

  • Set_multicycle_path 2 -hold -from [get_pins UFF0/Q]\ -to [get_pins UFF1/D]

时序报告
在这里插入图片描述
在这里插入图片描述

注意:从时序报告中可以看出,时钟网络不是理想的值,所以可知,这个静态时序报告,不是来源于逻辑综合,而是来源于后面的工具,此时时钟网络为确定值,而不是理想值。

如果setup设置为N,但是hold没有被设置为N-1?
在这里插入图片描述
答:此时hlod的检查边沿将为setup的前一个时钟边沿。时序将非常严苛且不合理,非常容易出现timing violation。

时序报告 在这里插入图片描述
在这里插入图片描述
从时序报告可以看出,在这种情况下,hold检查时,capture edge在setup的前一个时钟周期的上升沿,此时时钟为20ns,结果违反了时序要求。

4. 总结

  • 在多周期路径,对于setup time,一定要自己检查设定的周期数N,然后一定要给hold
    time检查设置为N-1个周期。这样才能证setup和hold时比较合理的。

[参考资料]

  1. 邸志雄老师的课件
  2. 集成电路静态时序分析与建模

【注】:个人学习笔记,如有错误,望不吝赐教,这厢有礼了~~~


  • 2
    点赞
  • 40
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
STAStatic Timing Analysis)静态时序分析设计验证中非常重要的一部分,它能够保证设计的时序满足要求,并且对于设计中存在的时序问题进行诊断和修复。PT(PrimeTime)是业界较为常用的 STA 工具之一。下面是一个 PT 做 STA 静态时序分析的教程。 1. 确定时序约束 时序约束文件是进行静态时序分析的基础,它描述了设计中的时序要求。时序约束应该包括时钟频率、时钟时序、输入输出延迟等信息。在 PT 中,时序约束文件格式为 SDC(Synopsys Design Constraints)。 2. 进行时钟分析 时钟分析是静态时序分析的第一步,它能够检查时钟网络中存在的时序问题。在 PT 中,我们可以使用 clock report 命令生成时钟分析报告。时钟分析报告能够帮助我们确定时钟路径、时钟树等信息。 3. 进行时序分析 在进行时序分析之前,我们需要将设计进行综合,并产生时序数据库(.db 文件)。时序分析主要包括前端分析和后端分析,前端分析主要是对时序路径进行分析,后端分析主要是对时序路径进行优化。 在 PT 中,我们可以使用 timing report 命令生成时序分析报告,报告中包括了时序路径、时序偏差等信息。我们可以根据报告中的信息进行时序优化,例如添加时钟缓冲、调整时钟路径等操作。 4. 进行时序约束修复 在进行时序分析时,PT 会给出一些违反时序约束的警告和错误信息。我们需要根据这些信息进行时序约束修复,以保证设计满足时序要求。在 PT 中,我们可以使用 constraint report 命令生成时序约束修复报告,报告中包括了需要修复的时序约束信息。 5. 进行时序分析验证 在进行时序分析之后,我们需要进行时序分析验证,以保证时序分析结果的准确性。在 PT 中,我们可以使用 report checks 命令生成时序分析验证报告,报告中包括了时序分析结果的正确性信息。 以上就是 PT 做 STA 静态时序分析的教程,希望能够对你有所帮助。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值