关于设计对象的内容(比如上面是设计对象等),请查看前面的章节,这里我们只进行说对设计对象操作的一些命令(这些命令可以在dc_shell 中执行,或者写在tcl文件中)。 -->获取设计对象 get_ports 、get_pins 、get_designs 、get_cells 、get_nets 、get_clocks 、get_nets -of_objects [get_pins FF1_reg/Q] 、...
filter_collection [get_cells *] "name != *"remove_from_collection移除输入端口中的CLKremove_from_collection [all_inputs] [get_ports CLK]current_design;list_designs查看顶层,查看所有设计current_design;list_designscreate_clock创建时钟create_clock -name [get_ports Clk]index...
Disables the specified library cells so that they are not added to a design duringcompile. Set withset_dont_use. alias命令:为一个可执行程序定义别名 "dc_shell-ftcl/dc.tcl |teedc.log" dc_shell -f 文件名表明启动dc_shell后自动执行可执行文件; "|"是管道机制符号,命令1 |命令2|…|命令n 管...
retime [get_cells I_MIDDLE/I_DONT_PIPELINE] true然后检查是不是约束成功,或者约束对了:get_...
2. 在命令行中用man+ DC命令 3. 在命令行中用info+ DC命令 1.6 如何找到SOLD文档? SOLD文档可以在teminal中输入sold&执行。 $》 sold& 或者用命令 which dc_shell找到dc的安装目录。找到online目录。 1.7 如何配置DC? 综合设置提供必要的参数给DC,使工具能够知道进行综合时所需要的必要的信息,即重要参数:工艺...
2)set_dont_touch_network命令可以覆盖命令set_dont_touch object false的作用效果; 3) dont_touch属性会对扫描插入有影响。 4)如果对unmapped单元使用该命令,会造成compile_ultra运行失败。仍以图1举例来说明dont_touch属性的传递规则set...
上面是INPUT模块中被retiming移动的寄存器,我们可以查看该模块是否有不被移动的寄存器:get_cells I_IN/*_reg*有返回值,说明是存在有不被移动的寄存器的。 通过下面的命令:report_timing -from I_MIDDLE/I_PIPELINE/z_reg*/*可以知道PIPELINE模块是寄存输出的(因为有返回报告值)...
常用synopsys _dc命令详解
设计规则修整的介绍如下:工艺库中包括厂商为每个单元指定的设计规则。设计规则有:max_capacitance,max_transition和max_fanout。映射过程中,DC会检查电路是否满足设计规则的约束,如有违反之处.DC会通过插入缓冲器( buffers)和修改单元的驱动能力(resizes cells)进行设计规则的修整。修正设计规则的步骤如下所示: ...
使用compile_ultra命令时,使用下面的变量设置,如果设计中有一些模块的规模小于或等于变量的值,模块层次被自动取消:set compile_auto_ungroup_delay_num_cells 100(默认值=500)也就是说,假设你有一个模块A是一个小的乘法器,并且调用了模块B,一个模块B是一个小的加法器,使用没有设置这条命令的情况综合,那么我们可...