SDC设计约束(3)——时序异常约束
作者:夏风喃喃
参考:综合与时序分析的设计约束 —— Synopsys设计约束(SDC)实用指南
文章目录
一. 虚假路径
不需要满足任何时序要求的路径。实现工具在受约束时忽略此种路径上的时序。
如输出与输入无关的组合逻辑或时序逻辑,异步复位信号路径,输出为恒定值的时序逻辑时钟路径,两个无法直接通信的从机间的路径,虚拟时钟(用于指定输入输出延迟)和真实时钟(触发捕获触发器)间的虚假路径。
set_false_path(无需时序约束的路径)
set_false_path
#设置为建立或保持路径的虚假路径
[-setup]
[-hold]
#定义虚假路径的起始,终点与途径的元器件或时钟
[-from from_list]
[-to to_list]
[-through through_list] #-through{P1,P2}无顺序,分开写则有途经顺序
#定义虚假路径上的过渡过程提供虚假规格
#如负边沿异步复位可建模为set_false_path -fall_from reset_n
[-rise][-fall]
[-rise_from rise_from_list]
[-rise_to rise_to_list]
[-rise_throuhg rise_through_list]
[-fall_from fall_from_list]
[-fall_to fall_to_list]
[-fall_throuhg fall_through_list]
#命令的注释
[-comment comment_string]
二. 多周期路径
set_multicycle_path(触发器间传播需要多周期的路径)
set_multicycle_path
#设置为建立或保持分析的多周期路径
#例如-setup N将建立分析用的捕获沿向右移动N个周期,
#此时保持分析的捕获沿在此基础上需往前推一个周期,即右移了N-1个周期,
#这时-hold N-1将保持分析的捕获沿左移N-1个周期,实现多周期路径的建立保持分析
[-setup]
[-hold]
#多周期数的参考,当启动触发器与捕获触发器时钟频率不同时,
#-start参考了启动触发器的时钟,-end参考了捕获触发器的时钟
[-start][-end]
#定义多周期路径的起始,终点与途径的元器件或时钟
[-from from_list]
[-to to_list]
[-through through_list] #-through{P1,P2}无顺序,分开写则有途经顺序
#定义多周期路径上的过渡过程提供规格
[-rise][-fall]
[-rise_from rise_from_list]
[-rise_to rise_to_list]
[-rise_throuhg rise_through_list]
[-fall_from fall_from_list]
[-fall_to fall_to_list]
[-fall_throuhg fall_through_list]
#周期的倍数,用于确定多周期的周期数
path_multiplier
#命令的注释
[-comment comment_string]
三. 组合电路路径
组合电路的时序约束中,若是纯组合逻辑,没有任何路径分支入时序部分,则可以用set_max_delay/set_min_delay
约束;若组合逻辑的中途有分支进入时序部分,并从时序部分分支出来,建议使用set_input_delay/set_output_delay
约束。
3.1 set_max_delay(组合路径最大延迟)
set_max_delay
#定义组合路径的起始,终点与途径的元器件或时钟
[-from from_list]
[-to to_list]
[-through through_list] #-through{P1,P2}无顺序,分开写则有途经顺序
#定义组合路径上的过渡过程提供规格
[-rise][-fall]
[-rise_from rise_from_list]
[-rise_to rise_to_list]
[-rise_throuhg rise_through_list]
[-fall_from fall_from_list]
[-fall_to fall_to_list]
[-fall_throuhg fall_through_list]
#延迟的值
delay_value
#命令的注释
[-comment comment_string]
3.2 set_min_delay(组合路径最小延迟)
set_min_delay
#定义组合路径的起始,终点与途径的元器件或时钟
[-from from_list]
[-to to_list]
[-through through_list] #-through{P1,P2}无顺序,分开写则有途经顺序
#定义组合路径上的过渡过程提供规格
[-rise][-fall]
[-rise_from rise_from_list]
[-rise_to rise_to_list]
[-rise_throuhg rise_through_list]
[-fall_from fall_from_list]
[-fall_to fall_to_list]
[-fall_throuhg fall_through_list]
#延迟的值
delay_value
#命令的注释
[-comment comment_string]