发布时间 : 星期三 文章常用时序分析SDC更新完毕开始阅读a70221d543323968001c92dc
常用时序分析SDC 命令参考 (一) 1. Define design environment
1.1. Set_operating_conditions 1.2. Set_wire_load_model 1.3. Set_driving_cell 1.4. Set_load 1.5. Set_fanout_load 1.6. Set_min_library
2. Set design constraints
2.1. Design rule constraints
2.1.1. Set_max_transition 2.1.2. Set_max_fanout 2.1.3. Set_max_capacitance 2.2. Design optimization constraints
2.2.1. Create_clock
2.2.2. create_generated_clock 2.2.3. Set_clock_latency 2.2.4. Set_propagated_clock 2.2.5. Set_clock_uncertainty 2.2.6. Set_input_delay 2.2.7. Set_output_delay 2.2.8. Set_max_area
3. Other commands
3.1. set_clock_groups 3.2. set_false_path 3.3. set_case_analysis 3.4. set_max_delay
1. Do not exist in timing fix sdc file:
1.1. Set_max_area
1.2. set_operation_conditions 1.3. set_wire_load_model 1.4. set_ideal_*
2. Must be placed in timing fix sdc file:
2.1. Set_clock_uncertainty, 2.2. set_max_transition 2.3. set_propagated_clock
set_operating_conditions定义当前设计的控制条件
语法:
Int set_operating_conditions
[-analysis_type bc_wc | on_chip_variation] [-min min_condition] [-max max_condition] [-min_library min_lib] [-max_library max_lib] [-min_phys min_proc] [-max_phys max_proc] [-library lib] [-object_list objects] [condition]
数据类型:
min_condition 列表 max_conditon 列表 objects 列表 condition 列表
参数:
设定分析的类型。两个选项只能选择其中一个。使用bc_wc或on_chip_variation切换设计到min_max模式。bc_wc值设定最小(快)最大(慢)控制条件是两个极端的控制条件。在bc_wc分析,用最大的控制条件分析SETUP,用最小控制条件分析HOLD。 on_chip_variation 分析分别有最小和最大控制条件表示片上最大偏差的上下限。对所有最大延迟的路径运用最大控制条件,对所有最小延迟的路径运用最小控制条件。
-analysis_type bc_wc | on_chip_variation
-min min_condition
指定用于最小延迟分析的控制条件。如果没有指定,工具默认使用最大控制条件。-min必须与-max 同时使用。
-max max_condition
指定用于最大延迟分析的控制条件。
-min_library min_lib
指定用于最短延迟分析,并包含有控制条件定义的库。可以是一个库的名称或集合。如果是集合,工具将选择集合中首个满足条件的库。
-max_library max_lib
指定用于最大延迟分析,并包含控制条件定义的库。可以是一个库的名称或集合。如果是集合,工具将选择集合中首个满足条件的库。
-min_phys min_proc
指定工艺资源名称搜索相匹配的电阻和电容值,用于最小延迟分析。该选项必须与-max_phys一起使用。
-max_phys max_proc
指定工艺资源名称搜索相匹配的电阻和电容值,用于最大延迟分析。该选项必须与-min_phys一起使用。
-library lib
指定包含控制条件定义的库,用于最小和最大延迟分析。可以是一个库的名称或集合。如果是集合,工具将选择集合中首个包含控制条件的库。
-object_list objects
指定要设置控制条件的单元或端口。如果没有指定,默认为整个设计。该选项支持子单元或子模块。
Condition
指定有环境特征定义的条件,在最小最大延迟分析时使用。
描述:
该命令设定控制条件或环境特征,据此对当前设计进行时序或布局的优化。控制条件必须定义在.lib或link_library包含的任一库中。当前设计的local_link_library 会被加到link_library的开头,查找时优先于link_library。库搜索顺序依次为: 1. lib
2. local_link_library 3. link_library
如果没有为设计设定控制条件,compile命令寻找链接库中首个库的控制条件作为初始值。如果库中没有控制条件定义,控制条件将不会被使用。
使用-object_list 选项将取代来自于设计或更高层次设计上的设定。
使用report_design命令可以查看当前设计控制条件设定和链接库信息。使用report_lib命令可以查看指定库控制条件设定。
多条件多模式支持:
该命令仅使用当前方案的信息
范例:
temperature : 20 ; voltage : 5.25 ;
tree_type : “best_case_tree” ;
operating_conditions(“BCCOM”) { process : 0.6 ;
}
控制条件的名称是BCCOM,参数定义为: process
浮点数代表半导体工艺特征
temperature
浮点数代表环境设定的温度
voltage
浮点数定义环境设定中电压范围的上限,下限为0.0
tree_type
环境互连模型。compile命令使用互连模式选择互连延迟的计算公式。三个有效模型: ? best_case_tree, 假设连线延迟为0 ? worst_case_tree, 使用集中(总)RC模型 ? balanced_tree, 所有负载均匀分摊线电阻
当工艺因素,控制温度和控制电压与标称值有偏差,compile使用线性模型补偿偏差的带来的影响,模拟为单元延迟,输入负载,输出驱动等值。包含有控制条件定义的库中有标称值设计的定义。
以下例子设定控制条件为WCIND,如果link_library是my_lib.db,并且设计没有local_link_library设定。my_lib.db的库为my_lib_core。 set_operating_conditions WCIND
控制条件’WCIND’在库”my_lib_core”中查找。
使用other_lib_core.db库中BCIND值 用于最小延迟分析,WCIND用于最大延迟分析。other_lib_core.db的库名称为other_lib_core