时,根据实际设计的规模选用相应的连线负载即可。下文所示的是对tcb773stc运行report_lib而生成报告的一部分,他描述了该库中可供选择的连线负载大小的种类以及各自对应的设计规模,例如:设计面积在360000μm2到810000μm2之间则对赢得连线负载为TSMC16K。此外,相同的设计规模所对应的连线负载还有保守的(Conservative)和激进的(Aggressive)之分。 Wire Loading Model Selection Group: Name : WireAreaCon Selection Wire load name min area max area
------------------------------------------- 0.00 360000.00 TSMC8K_Conservative 360000.00 810000.00 TSMC16K_Conservative 810000.00 1690000.00 TSMC32K_Conservative 1690000.00 3240000.00 TSMC64K_Conservative 3240000.00 5760000.00 TSMC128K_Conservative Wire Loading Model Selection Group: Name : WireAreaAgr Selection Wire load name min area max area
------------------------------------------- 0.00 360000.00 TSMC8K_Aggresive
360000.00 810000.00 TSMC16K_Aggresive 810000.00 1690000.00 TSMC32K_Aggresive 1690000.00 3240000.00 TSMC64K_Aggresive 3240000.00 5760000.00 TSMC128K_Aggresive Wire Loading Model Mode: segmented.
使用set_wire_load_model命令来设置连线负载,其语法为: set_wire_load_model -name <连线负载名> -library <库名称> <对象列表>
-name? <连线负载名>:设定的连线负载
-library? <库名称> :定义工作环境的库,若当前尽读入唯一的目标库,则改选项可省略
? <对象列表>:设定连线负载的对象
例 3-3(将ddfs的连线负载设为TSMC8K_Conservative): set_wire_load_model –name TSMC8K_Conservative -library tcb773stc ddfs
在图形界面中,选中ddfs设计,选择Attributes -> Operating Environment -> Wire Load菜单,即弹出连线负载设置对话框。在此对话框中即可选择所需的连线负载(此例中选择TSMC8K_Conservative)。这一过程如图3-2所示。
3.2.2 设置连线负载模式
连线负载模式规定了跨越多个模块层次的连线其连线负载的计算方式,DC供支持三种连线负载模式:
? top:某一模块的连线负载设为top模式意味着该模块及其子模块中所有连线的连线负载大小均取该模块的值
? enclosed:某一模块的连线负载设为enclosed模式意味着该模块及其子模块中所有连线的连线负载大小的取值与恰好能完全包含该连线的最底层模块的连线负载大小一致。
segmented:这是一种分段模式,意味着一根连线上不同段的连线负载不同,某一段地连线负载与恰好包含该段的最底层模块的连线负载大小一致。?
set_wire_load_mode命令用来设置连线负载模式(该命令对当前设计有效),该命令的格式如下: set_wire_load_mode <模式名>
? <模式名>:连线负载模式的名称,为 “top”、“enclosed”、
“segmented”中的一项
例 3-4(将ddfs的连线负载模式设为top): current_design ddfs set_wire_load_mode top
注意:该功能无法通过图形界面实现 3.3 设置输出负载
为了更精确地计算电路的延时,DC需要知道设计的输出端驱动的负载大小(主要是电容)。用户可以通过set_load命令来为输出端设置负载(该命令对当前设计有效),其语法为: set_load <负载电容值> <对象列表>
? <负载电容值>:设定的负载电容值,必须为非负数,其单位在库文件中定义
? <对象列表>:设定负载电容的对象,可以是输出口、输出管脚、互连线等
例 3-5(将ddfs的所有输出口的输出负载设为0.1pF) current_design ddfs set_load 0.1 all_ouputs()
在图形界面中,进入ddfs设计的符号描述,选中一组输出端口,选择Attributes -> Operating Environment -> Load菜单。在弹出
的Load对话框的Capacitive load域中填入1.00即可(如图3-3所示)。
3.4 设置输入驱动
为了精确计算电路的延时,DC还需知道设计输入端的驱动能力的情况。用户可以利用set_driving_cell命令来指定一个驱动设计输入端的外部单元(该命令对当前设计有效),该命令的格式如下: set_driving_cell -lib_cell <库单元名> -library <库名称> -pin <管脚名> -no_design_rule <端口名列表>
-lib_cell? <库单元名>:用于驱动设计输入端的外部单元名称 -library? <库名称>:上述单元所在库的名称,若当前仅读入唯一的目标库且驱动单元就在该库中,则改选项可省略