没有合适的资源?快使用搜索试试~ 我知道了~
首页常用时序分析SDC 命令参考
常用时序分析SDC 命令参考
5星 · 超过95%的资源 需积分: 45 103 下载量 34 浏览量
更新于2023-03-16
评论 3
收藏 251KB DOC 举报
文档详细叙述了常用时序分析SDC的命令参考.是Design Compiler使用中很好的参考资料。几乎囊括了DC始终的全部的常用指令!
资源详情
资源评论
资源推荐
常用时序分析 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 列表
参数:
-analysis_type bc_wc | on_chip_variation
设定分析的类型。两个选项只能选择其中一个。使用 bc_wc 或 on_chip_variation 切换设计到
min_max 模式。bc_wc 值设定最小(快)最大(慢)控制条件是两个极端的控制条件。在 bc_wc
分析,用最大的控制条件分析 SETUP,用最小控制条件分析 HOLD。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 命令可以
查看指定库控制条件设定。
多条件多模式支持:该命令仅使用当前方案的信息
范例:
operating_conditions(“BCCOM”) { process : 0.6 ;
temperature : 20 ;
voltage : 5.25 ;
tree_type : “best_case_tree” ;
}
控制条件的名称是 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
set_operating_conditions –min BCIND –max WCIND –library other_lib_core
删除当前控制条件设定
set_operating_conditions
更多:
compile, report_lib, reset_design, set_local_link_library, link_library
############################################################################
set_wire_load_model
为设计、端口、当前设计中层次化单元设定 wire_load_attach_name 属性,选择一个连线模型用
于连线电容的计算。
语法:
status set_wire_load_model
-name model_name
[-library lib]
[-min][-max]
[object_list]
数据类型:
model_name 字符
object_list 集合
参数:
-name model_name
指定连线负载模型的名称。该模型必须是已定义的。这个选项必须使用。
-library lib
指定包含模型的库。可以是一个库的名称或集合。如果是集合,工具将选择集合中首个满足
条件的库。
-min
指定仅用于最小延迟分析的模型。你不能用-min 选项设定一个不同的模型或最小模块尺寸。
因为对于这些参数,无论最大最小延迟分析都使用相同的值。
-max
指定仅用于最大延迟分析的模型。任何用于最小延迟分析的模型集都没有影响。
object_list
指定将被设定连线负载模型的端口、设计或单元的列表。连线负载模型默认设定给当前设计。
描述:
该命令设置 wire_load_attach_name 属性给特定的端口,设计或对象列表中单元或当前设计
用于连线电容的计算。如果没有任何选项,模型将作用于顶层设计。-name 选项是必须的。
如果指定的是一个设计,将作用于整个设计中的所有连线。如果指定的是一个单元,存在在
当前设计中。设定给单元的连线模型会取代设计赋值给单元的连线模型。可以使用该命令设定端
口外部连线负载模型,并且不受设计连线模型的影响。
如 果 没 有 为 设 计 指 定 连 线 模 型 , 首 个 满 足 条 件 的 连 线 模 型 将 默 认 设 定 给 设 计 。 当
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 会被使用。如果上述情况都没有,将没有连线
会被使用。
当 auto_wire_load_selection 属性被设为 false,并且没有指定 model_name,也同样没有连
线模型会被使用。
report_design 命令显示当前设计的连线模型和模式,以及相关联的库。report_wire_load 命
令可提供更多连线模型信息。
report_lib 命令显示指定库中定义的连线模型及选择表。你可以使用 report_port 显示设计端口
连线模型。
可以对当前设计中的层次化单元设定特定的连线模型,引用层次化单元的其他设计,其连线
模型不会被改变。如果对子设计设定连线模型,你需要确保顶层设计连线模型不是 top,否则下
层模块的连线模型的选择会被忽略。如果为设计指定连线模式,工具在 compile 时,会搜索首个
满足条件的连线模式作为初始设定。如果初始设定没有被指定,会假设 top 作为初始值。你可以
使 用 set_wire_load_mode 重 新 指 定 。 对 于 set_wire_load_mode 属 性 的 top, enclosed 和
segmented 值的定义,可参考 set_wire_load_mode 命令。
连线电阻及面积也会遵照规则考虑进连线电容的计算。
使用-min 选项,你可以使用 set_wire_load_model 指定一个不同的连线模型用于最小延迟分析 。
除非明确的指定,最大最小延迟分析使用相同的连线模型。你可以设定不同的连线模型指定给设
计或端口。你不可以指定不同的连线模型或模块尺寸仅用于最小延迟分析。对于这种情况,最大
最小分析使用相同的值。
布线面积总是使用与最大延迟分析的相同连线负载来计算。连线负载模型包含 compile 估计
连线延迟所需要的所有信息。下面是一个连线负载模型的例子。
wire_load(“90x90”) { resistance : 0;
capacitance : 1 ;
area : 0 ;
slope : 1.64 ;
fanout_length(1 , 1.9 );
fanout_length(2, 2.8 );
fanout_length(3, 4.7 );
}
模型名称 90x90,模型字段定义为:
resistance
互连线单位长度电阻
capacitance
互连线单位长度电容
area
互连线单位长度连线面积
fanout_length (fanout1, length1)
这些数组描述一个查找表,工具可以据此用给定的扇出估算出被驱动单元的互连线长度。你必须
指定至少一组数据,可以更多附加数据表达期望的扇出长度行为特征。在邻近的两组数据之间使
用线性插值方法来估算查找表中不存在的点。
slope
该值用来表征线性超出查找表的扇出或长度行为。
删除连线负载模式使用 remove_wire_load_model 命令或 reset_design 命令。
范例:
在顶层设计设定布线负载模型,没有 local_link_library 设定前提下:
report_lib tech_lib
…
Wire Loading Model:
NameLibrary ResCap Area Slope Fanout Length
------------------------------------------------------
05x05tech_lib0.00001.00000.00000.1860100.3900
10x10tech_lib0.00001.00000.00000.3110 10.5300
…
link_library = {tech_lib.db}
set_wire_load_model –name “10x10”
以下范例使用-library 选项指定库 my_lib.db 中的连线负载模型 10x10
set_wire_load_model –name “10x10” –library my_lib.db
剩余40页未读,继续阅读
zhu1199
- 粉丝: 1
- 资源: 2
上传资源 快速赚钱
- 我的内容管理 收起
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
会员权益专享
最新资源
- stc12c5a60s2 例程
- Android通过全局变量传递数据
- c++校园超市商品信息管理系统课程设计说明书(含源代码) (2).pdf
- 建筑供配电系统相关课件.pptx
- 企业管理规章制度及管理模式.doc
- vb打开摄像头.doc
- 云计算-可信计算中认证协议改进方案.pdf
- [详细完整版]单片机编程4.ppt
- c语言常用算法.pdf
- c++经典程序代码大全.pdf
- 单片机数字时钟资料.doc
- 11项目管理前沿1.0.pptx
- 基于ssm的“魅力”繁峙宣传网站的设计与实现论文.doc
- 智慧交通综合解决方案.pptx
- 建筑防潮设计-PowerPointPresentati.pptx
- SPC统计过程控制程序.pptx
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论5