常用时序分析SDC 命令参考
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
· balanced_tree,所有负载均匀分摊线电阻
当工艺因素,控制温度和控制电压与标称值有偏差,compile使用线性模型补偿偏差的带来的影响,模拟为单元延迟,输入负载,输出驱动等值。包含控制条件定义的库中有标称值设计的定义。
以下例子设定控制条件为WCIND,如果link_library是my_lib.db,并且设计没有local_link_library设定。my_lib.db的库为my_lib_core。
set_wire_load_model
为设计、端口、当前设计中层次化单元设定wire_load_attach_name属性,选择一个连线模型用于连线电容的计算。
语法:
status set_wire_load_model
-name model_name
[-library lib]
[-min][-max]
连线电阻及面积也会遵照规则考虑进连线电容的计算。
使用-min选项,你可以使用set_wire_load_model指定一个不同的连线模型用于最小延迟分析。除非明确的指定,最大最小延迟分析使用相同的连线模型。你可以设定不同的连线模型指定给设计或端口。你不可以指定不同的连线模型或模块尺寸仅用于最小延迟分析。对于这种情况,最大最小分析使用相同的值。
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 fixSDCfile:
2.1. Set_clock_uncertainty,
可以对当前设计中的层次化单元设定特定的连线模型,引用层次化单元的其他设计,其连线模型不会被改变。如果对子设计设定连线模型,你需要确保顶层设计连线模型不是top,否则下层模块的连线模型的选择会被忽略。如果为设计指定连线模式,工具在compile时,会搜索首个满足条件的连线模式作为初始设定。如果初始设定没有被指定,会假设top作为初始值。你可以使用set_wire_load_mode重新指定。对于set_wire_load_mode属性的top, enclosed和segmented值的定义,可参考set_wire_load_mode命令。
指定工艺资源名称搜索相匹配的电阻和电容值,用于最大延迟分析。该选项必须与-min_phys一起使用。
-library lib
指定包含控制条件定义的库,用于最小和最大延迟分析。可以是一个库的名称或集合。如果是集合,工具将选择集合中首个包含控制条件的库。
-object_list objects
指定要设置控制条件的单元或端口。如果没有指定,默认为整个设计。该选项支持子单元或子模块。
2.2. set_max_transition
2.3. set_propagated_clock
############################################################################
set_operating_conditions:定义当前设计的控制条件
如果没有为设计指定连线模型,首个满足条件的连线模型将默认设定给设计。当auto_wire_load_selection属性被打开,如果库有wire_load_selection表,当前设计的单元部分将自动搜索与wire_load_selection表相匹配的连线模型。如果库有不只一个表,将设置default_wire_selecting_group属性将其中一个表设定为初始表。你也可以通过set_wrie_load_selection_group进行手工设定。如果你没有使用set_wire_load_min_block_size设定模块大小,当合适的连线被选用,设计单元面积被假设为至少与这个值一样大。如果没有wire_load_selection表,库中的default_wire_load会被使用。如果上述情况都没有,将没有连线会被使用。
process
浮点数代表半导体工艺特征
temperature
浮点数代表环境设定的温度
voltage
浮点数定义环境设定中电压范围的上限,下限为0.0
tree_type
环境互连模型。compile命令使用互连模式选择互连延迟的计算公式。三个有效模型:
· best_case_tree,假设连线延迟为0
· worst_case_tree,使用集中(总)RC模型
[-min_phys min_proc]
[-max_phys max_proc]
[-library lib]
[-object_list objects]
[condition]
数据类型:
min_condition列表
max_conditon列表
objects列表
condition列表
参数:
-analysis_type bc_wc | on_chip_variation
设定分析的类型。两个选项只能选择其中一个。使用bc_wc或on_chip_variation切换设计到min_max模式。bc_wc值设定最小(快)最大(慢)控制条件是两个极端的控制条件。在bc_wc分析,用最大的控制条件分析SETUP,用最小控制条件分析HOLD。on_chip_variation分析分别有最小和最大控制条件表示片上最大偏差的上下限。对所有最大延迟的路径运用最大控制条件,对所有最小延迟的路径运用最小控制条件。
多条件多模式支持:该命令仅使用当前方案的信息
范例:
operating_conditions(“BCCOM”) { process : 0.6 ;
temperature : 20 ;
voltage : 5.25 ;
tree_type : “best_case_tree” ;
}
控制条件的名称是BCCOM,参数定义为:
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
删除当前控制条件设定
set_operating_conditions
更多:
compile, report_lib, reset_design, set_local_link_library, link_library
############################################################################
当auto_wire_load_selection属性被设为false,并且没有指定model_name,也同样没有连线模型会被使用。
report_design命令显示当前设计的连线模型和模式,以及相关联的库。report_wire_load命令可提供更多连线模型信息。
report_lib命令显示指定库中定义的连线模型及选择表。你可以使用report_port显示设计端口连线模型。
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:
set_operating_conditions WCIND
控制条件’WCIND’在库”my_lib_core”中查找。
使用other_lib_core.db库中BCIND值用于最小延迟分析,WCIND用于最大延迟分析。other_lib_core.db的库名称为other_lib_core
set_operating_conditions –min BCIND –max WCIND –library other_lib_core
[object_list]
数据类型:
model_name字符
object_list集合
参数:
-name model_name
指定连线负载模型的名称。该模型必须是已定义的。这个选项必须使用。
-library lib
指定包含模型的库。可以是一个库的名称或集合。如果是集合,工具将选择集合中首个满足条件的库。
描述:
该命令设置wire_load_attach_name属性给特定的端口,设计或对象列表中单元或当前设计,用于连线电容的计算。如果没有任何选项,模型将作用于顶层设计。-name选项是必须的。
如果指定的是一个设计,将作用于整个设计中的所有连线。如果指定的是一个单元,存在在当前设计中。设定给单元的连线模型会取代设计赋值给单元的连线模型。可以使用该命令设定端口外部连线负载模型,并且不受设计连线模型的影响。
-min
指定仅用于最小延迟分析的模型。你不能用-min选项设定一个不同的模型或最小模块尺寸。因为对于这些参数,无论最大最小延迟分析都使用相同的值。
-max
指定仅用于最大延迟分析的模型。任何用于最小延迟分析的模型集都没有影响。
object_list
指定将被设定连线负载模型的端口、设计或单元的列表。连线负载模型默认设定给当前设计。
-min min_condition
指定用于最小延迟分析的控制条件。如果没有指定,工具默认使用最大控制条件。-min必须与-max同时使用。
-max max_condition
指定用于最大延迟分析的控制条件。
-min_library min_lib
指定用于最短延迟分析,并包含有控制条件定义的库。可以是一个库的名称或集合。如果是集合,工具将选择集合中首个满足条件的库。
常用时序分析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
-max_library max_lib
指定用于最大延迟分析,并包含控制条件定义的库。可以是一个库的名称或集合。如果是集合,工具将选择集合中首个满足条件的库。
-min_phys min_proc
指定工艺资源名称搜索相匹配的电阻和电容值,用于最小延迟分析。该选项必须与-max_phys一起使用。
-max_phys max_proc
如果没有为设计设定控制条件,compile命令寻找链接库中首个库的控制条件作为初始值。如果库中没有控制条件定义,控制条件将不会被使用。
使用-object_list选项将取代来自于设计或更高层次设计上的设定。
使用report_design命令可以查看当前设计控制条件设定和链接库信息。使用report_lib命令可以查看指定库控制条件设定。
语法:
Int set_operating_conditions
[-analysis_type bc_wc | on_chip_variation]
[-min min_condition]
[-max max_condition]
[-min_library 源自文库in_lib]
[-max_library max_lib]
Condition
指定有环境特征定义的条件,在最小最大延迟分析时使用。
描述:
该命令设定控制条件或环境特征,据此对当前设计进行时序或布局的优化。控制条件必须定义在.lib或link_library包含的任一库中。当前设计的local_link_library会被加到link_library的开头,查找时优先于link_library。库搜索顺序依次为:1. lib2. local_link_library3. link_library
当工艺因素,控制温度和控制电压与标称值有偏差,compile使用线性模型补偿偏差的带来的影响,模拟为单元延迟,输入负载,输出驱动等值。包含控制条件定义的库中有标称值设计的定义。
以下例子设定控制条件为WCIND,如果link_library是my_lib.db,并且设计没有local_link_library设定。my_lib.db的库为my_lib_core。
set_wire_load_model
为设计、端口、当前设计中层次化单元设定wire_load_attach_name属性,选择一个连线模型用于连线电容的计算。
语法:
status set_wire_load_model
-name model_name
[-library lib]
[-min][-max]
连线电阻及面积也会遵照规则考虑进连线电容的计算。
使用-min选项,你可以使用set_wire_load_model指定一个不同的连线模型用于最小延迟分析。除非明确的指定,最大最小延迟分析使用相同的连线模型。你可以设定不同的连线模型指定给设计或端口。你不可以指定不同的连线模型或模块尺寸仅用于最小延迟分析。对于这种情况,最大最小分析使用相同的值。
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 fixSDCfile:
2.1. Set_clock_uncertainty,
可以对当前设计中的层次化单元设定特定的连线模型,引用层次化单元的其他设计,其连线模型不会被改变。如果对子设计设定连线模型,你需要确保顶层设计连线模型不是top,否则下层模块的连线模型的选择会被忽略。如果为设计指定连线模式,工具在compile时,会搜索首个满足条件的连线模式作为初始设定。如果初始设定没有被指定,会假设top作为初始值。你可以使用set_wire_load_mode重新指定。对于set_wire_load_mode属性的top, enclosed和segmented值的定义,可参考set_wire_load_mode命令。
指定工艺资源名称搜索相匹配的电阻和电容值,用于最大延迟分析。该选项必须与-min_phys一起使用。
-library lib
指定包含控制条件定义的库,用于最小和最大延迟分析。可以是一个库的名称或集合。如果是集合,工具将选择集合中首个包含控制条件的库。
-object_list objects
指定要设置控制条件的单元或端口。如果没有指定,默认为整个设计。该选项支持子单元或子模块。
2.2. set_max_transition
2.3. set_propagated_clock
############################################################################
set_operating_conditions:定义当前设计的控制条件
如果没有为设计指定连线模型,首个满足条件的连线模型将默认设定给设计。当auto_wire_load_selection属性被打开,如果库有wire_load_selection表,当前设计的单元部分将自动搜索与wire_load_selection表相匹配的连线模型。如果库有不只一个表,将设置default_wire_selecting_group属性将其中一个表设定为初始表。你也可以通过set_wrie_load_selection_group进行手工设定。如果你没有使用set_wire_load_min_block_size设定模块大小,当合适的连线被选用,设计单元面积被假设为至少与这个值一样大。如果没有wire_load_selection表,库中的default_wire_load会被使用。如果上述情况都没有,将没有连线会被使用。
process
浮点数代表半导体工艺特征
temperature
浮点数代表环境设定的温度
voltage
浮点数定义环境设定中电压范围的上限,下限为0.0
tree_type
环境互连模型。compile命令使用互连模式选择互连延迟的计算公式。三个有效模型:
· best_case_tree,假设连线延迟为0
· worst_case_tree,使用集中(总)RC模型
[-min_phys min_proc]
[-max_phys max_proc]
[-library lib]
[-object_list objects]
[condition]
数据类型:
min_condition列表
max_conditon列表
objects列表
condition列表
参数:
-analysis_type bc_wc | on_chip_variation
设定分析的类型。两个选项只能选择其中一个。使用bc_wc或on_chip_variation切换设计到min_max模式。bc_wc值设定最小(快)最大(慢)控制条件是两个极端的控制条件。在bc_wc分析,用最大的控制条件分析SETUP,用最小控制条件分析HOLD。on_chip_variation分析分别有最小和最大控制条件表示片上最大偏差的上下限。对所有最大延迟的路径运用最大控制条件,对所有最小延迟的路径运用最小控制条件。
多条件多模式支持:该命令仅使用当前方案的信息
范例:
operating_conditions(“BCCOM”) { process : 0.6 ;
temperature : 20 ;
voltage : 5.25 ;
tree_type : “best_case_tree” ;
}
控制条件的名称是BCCOM,参数定义为:
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
删除当前控制条件设定
set_operating_conditions
更多:
compile, report_lib, reset_design, set_local_link_library, link_library
############################################################################
当auto_wire_load_selection属性被设为false,并且没有指定model_name,也同样没有连线模型会被使用。
report_design命令显示当前设计的连线模型和模式,以及相关联的库。report_wire_load命令可提供更多连线模型信息。
report_lib命令显示指定库中定义的连线模型及选择表。你可以使用report_port显示设计端口连线模型。
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:
set_operating_conditions WCIND
控制条件’WCIND’在库”my_lib_core”中查找。
使用other_lib_core.db库中BCIND值用于最小延迟分析,WCIND用于最大延迟分析。other_lib_core.db的库名称为other_lib_core
set_operating_conditions –min BCIND –max WCIND –library other_lib_core
[object_list]
数据类型:
model_name字符
object_list集合
参数:
-name model_name
指定连线负载模型的名称。该模型必须是已定义的。这个选项必须使用。
-library lib
指定包含模型的库。可以是一个库的名称或集合。如果是集合,工具将选择集合中首个满足条件的库。
描述:
该命令设置wire_load_attach_name属性给特定的端口,设计或对象列表中单元或当前设计,用于连线电容的计算。如果没有任何选项,模型将作用于顶层设计。-name选项是必须的。
如果指定的是一个设计,将作用于整个设计中的所有连线。如果指定的是一个单元,存在在当前设计中。设定给单元的连线模型会取代设计赋值给单元的连线模型。可以使用该命令设定端口外部连线负载模型,并且不受设计连线模型的影响。
-min
指定仅用于最小延迟分析的模型。你不能用-min选项设定一个不同的模型或最小模块尺寸。因为对于这些参数,无论最大最小延迟分析都使用相同的值。
-max
指定仅用于最大延迟分析的模型。任何用于最小延迟分析的模型集都没有影响。
object_list
指定将被设定连线负载模型的端口、设计或单元的列表。连线负载模型默认设定给当前设计。
-min min_condition
指定用于最小延迟分析的控制条件。如果没有指定,工具默认使用最大控制条件。-min必须与-max同时使用。
-max max_condition
指定用于最大延迟分析的控制条件。
-min_library min_lib
指定用于最短延迟分析,并包含有控制条件定义的库。可以是一个库的名称或集合。如果是集合,工具将选择集合中首个满足条件的库。
常用时序分析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
-max_library max_lib
指定用于最大延迟分析,并包含控制条件定义的库。可以是一个库的名称或集合。如果是集合,工具将选择集合中首个满足条件的库。
-min_phys min_proc
指定工艺资源名称搜索相匹配的电阻和电容值,用于最小延迟分析。该选项必须与-max_phys一起使用。
-max_phys max_proc
如果没有为设计设定控制条件,compile命令寻找链接库中首个库的控制条件作为初始值。如果库中没有控制条件定义,控制条件将不会被使用。
使用-object_list选项将取代来自于设计或更高层次设计上的设定。
使用report_design命令可以查看当前设计控制条件设定和链接库信息。使用report_lib命令可以查看指定库控制条件设定。
语法:
Int set_operating_conditions
[-analysis_type bc_wc | on_chip_variation]
[-min min_condition]
[-max max_condition]
[-min_library 源自文库in_lib]
[-max_library max_lib]
Condition
指定有环境特征定义的条件,在最小最大延迟分析时使用。
描述:
该命令设定控制条件或环境特征,据此对当前设计进行时序或布局的优化。控制条件必须定义在.lib或link_library包含的任一库中。当前设计的local_link_library会被加到link_library的开头,查找时优先于link_library。库搜索顺序依次为:1. lib2. local_link_library3. link_library