PT静态时序分析 第三课 第四课

第三课 Timing Exceptions

即时序例外

Using Timing Exceptions

上一节课所讲到的时钟约束都是针对常规的单周期时钟,默认施加在所有path上。若有些path并不是常规路径,不需要PT分析,则需要额外的约束来对其进行设置。

  • Related Commands:
    在这里插入图片描述

  • Start and end points
    这类时序例外需要有合法的路径起点和终点,对起点和终点的规定如下:
    起点:输入端口,寄存器的时钟端口
    终点:输出端口,寄存器的信号端口
    皆可:Clock objects(跨时钟域中的时钟信号本身)

  • reduce the number of timing esceptions
    尽量用最少的语句覆盖全面的例外路径。
    示例:
    在这里插入图片描述
    第一种:从Q2的32位输出端口至任意终点的所有路径
    第二种:Q2的32位输出端口至Q3的32位输入端口,虽然覆盖了所有路径,但是PT要额外分析Q2_reg[1]至Q3_reg[2~32]是否存在连线,会消耗额外的资源
    第三种:限制在了32条路径上,但是命令条数过多。
    第四种:所有Clk2和Clk3时钟域之间的路径。

  • through
    可以用-through命令来对经过某一个端口的所有路径施加约束,但是不推荐这种写法。因为没有明确的起点终点的情况下,PT的计算量会大大增加,影响延时的计算。
    如果实在无法用-from-to解决,只能指定经过某一端口的路径,则可以用set_disable_timing命令来替换set_false_path
    示例:
    在这里插入图片描述

set_false_path -through U12/A1 -through U12/Y   #优化前
set_disable_timing [get_pins U12/A1]   #优化后

最后用以下命令输出查看已经添加的例外约束:

report_exceptions -ignored
check_timing

当多条约束施加在同一条路径上时,不同的约束有不同的优先级

Multicycle Paths

在这里插入图片描述

create_clock -period 10 [get_ports CLK]
set_multicycle_path -setup 6 -to [get_pins "C_reg[*]/D"]

在多周期时钟的setup和hold当中,hold检查的时钟周期默认要比setup提前一个时钟周期。
在这里插入图片描述
因此这时setup time的命令已经涵盖了hold time的要求,示例中setup检查设置在第6个时钟周期,因此hold检查默认在第5个时钟周期。
在这里插入图片描述
-hold选项的数字会影响hold判定边沿和setup判定边沿之间的周期差。

第四课 Timing analysis techiniques

学会在发现时序违例之后,如何分析电路

path groups

查看时序违例的命令:

report_constraint -all_violators -max_delay

大型的电路当中有几万几十万条路径,因此为了方便分析需要将路径按照一定的性质、功能、位置进行分类,

  • group_path
group_path -name INPUTS -from [all_inputs]  #将所有从输入端口触发的路径归纳到INPUTS当中
group_path -name OUTPUTS -to [all_outputs]  
report_timing -max_paths 5 -path short   #列出5条时序违例最严重的路径
report_timing -group CLK   #查看CLK路径组当中的时序
min-max analysis

一种用最差的环境条件同时分析setup/hold的方法,因此同时需要包含min max值的.sdf文件

set link_path "* cba_core_max.db"
set_min_library cba_core_max.db -min_version cba_core_min.db
link_design 

使用了set_min_library之后PT会自动寻找两个.db文件之中同名的电路单元、管脚和时序弧,并使用最小时序分析holdtime,最大时序分析setuptime

pre-layout导入的是事先定义的文件(需要自己写),post-layout导入的是.sdf文件,不能同时导入两个格式不同的SPEF文件。

set_operating_conditions -analysis_type bc_wc -min MIN_OC -max MAX_OC  #pre-layout的导入方法
read_sdf -analysis_type bc_wc ba_design.sdf  #post-layout的导入方法
Case anaysis

case analysis可以使用逻辑常数(logic constants)或者逻辑转换(logic transition)来进行时序分析,指定只在某个电平/边沿进行时序分析,一般用在测试电路当中。
***功能类似于set_false_path

#logic constants
set_case_analysis 0 [get_ports test_scan_enable]   #设置为0表示告诉PT这一条path不需要分析
#logic transition
set_case_analysis rising [get_pin U2/EN]
Additional reports

有下列可用的报告命令:

report_timing [-verbose]  #输出简单的时序报告
report_analysis_coverage #对时序报告做一个总结,可以加上-statur_details来获取更多细节

在这里插入图片描述

  • Bottleneck analysis
    瓶颈分析可以查看涉及许多个violation共有的cell或者路径。
    在这里插入图片描述
    可以输出查看导致多少个时序路径违例/多少ns的时序违例/fanout为多少的cell
    示例:
bottleneck 
	- cost_type path_count   #以涉及的路径数量作为排序
	-max_cells 20    #列出20个违例最严重的cell
	-nworst_paths 100   #最严重的路径数为100

在这里插入图片描述
解决的顺序途径:
先查看是否是电容、线长等是否合理,可以通过size_cell(增强驱动强度), 插入/去掉buffer等途径解决;
如果参数都合理,那么需要对(bottleneck) cell进行调整。
在这里插入图片描述
也可用report_delay_calculation对某个路径做非常详细的报告:

report_delay_calculation -from U1/A -to U1/Z
report_delay_calculation -from U1/Z -to U21/B
Efficient STA methodology

不同的命令对系统资源占用程度不同
在这里插入图片描述

  • 1
    点赞
  • 52
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
PT 使用指南是指物理治疗师(PT)给患者提供的使用指导手册,用于帮助患者正确使用和从中获益。以下是PT使用指南的一些重要内容和步骤。 首先,PT使用指南会详细说明特定治疗方法或设备的正确使用方法。这些指南通常会列出步骤和注意事项,确保患者能够正确、安全地使用它们。例如,如果是关节牵引装置,使用指南会详细说明如何正确佩戴和调整装置,并提醒患者注意力度和时间。 其次,PT使用指南还会提供患者在治疗过程中应注意的事项。这可能包括如何正确进行锻炼、保持正确姿势或如何使用辅助器具等方面的指导。这些指南旨在阐明正确的运动方式和减轻伤害的方法,使患者在自我治疗过程中时刻保持警觉和遵循正确的建议。 第三,PT使用指南还会对患者进行相关疾病或症状的教育。它会明确患者在治疗期间应注意的事项,以及如何处理可能出现的不适或并发症。例如,在康复期间,教育患者了解不同症状的正常反应以及如何采取适当的措施。 最后,PT使用指南其实更像是一本个人健康管理手册,它可以提供患者维持康复及预防复发的建议。患者可以在遵循指南的同时,了解如何保持良好的姿势、坚持适量的锻炼和保持身体健康的良好习惯。 总而言之,PT使用指南是一本个人康复和健康管理的手册,可帮助患者正确使用治疗方法、设备,预防并发症,并提供在治疗期间需要遵循的注意事项和康复建议。这对患者的康复和长期健康至关重要。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值