get_cells直接得到的东西是dc内部的collection集合,用起来比较麻烦,要用dc提供的一些关于collection相关的api,所以一个好的方法是用get_object_name把得到的collection变成数组 就像这样: 4.获取design中所有使用到的库中的cell get_lib_cells -of_objects [get_cells *] 如果只是做完analyze 和 elaborate(或者read_f...
DC约束笔记 关于get_pins get_cells get_ports等的定义 关于建立保持与max/min的关系 2、setup time和hold time 建立时间(setup time)是指在触发器的时钟信号上升沿到来以前,数据稳定不变的时间,如果建立时间不够,数据将不能在这个时钟上升沿打入触发器。 保持时间(hold time)是指在触发器的时钟信号上升沿到来以...
get_ports 、get_pins 、get_designs 、get_cells 、get_nets 、get_clocks 、get_nets -of_objects [get_pins FF1_reg/Q] 、get_libs 、get_lib_cells 、get_lib_pins -->设计对象(的集合): 设计对象的物集,总之就是多个设计对象(组成一个集合) all_inputs 、all_outputs 、all_clocks 、all_regis...
使用命令set_dont_touch [get_pins U_A/C4/A],此时,不用对pin脚U_A/C4/B使用该命令,就已经将dont_touch_network属性传递到了线f、线 g、线h和线DOUT。 3)使用set_dont_touch对 objects设置 dont_touch属性,该属性的传递规则...
set Instance_Number [sizeof_collection [get_cells -hier -filter "is_hierarchical==false"]] set a 0.0 set Instance_Number [expr {$a + $Instance_Number}] set cell_list [get_attr -quiet [get_cells -hi -filter "is_hierarchical==false"] ref_name] ...
1. 用report_cell [get_cells -hier *]可以看所有的cells面积 2. 用list_design列出所有的design, 然后改变current_design到你所想要看的那一级的cell, 然后直接用report_cell. 4.4 如何看设计环境和线载模型? report_design 4.5 若设计规则和时序违反约束,如何查看? 使用report_constraint -all_violators 4.6 ...
get_cells I_IN/*_reg* 有返回值,说明是存在有不被移动的寄存器的。 -->通过下面的命令: report_timing -from I_MIDDLE/I_PIPELINE/z_reg*/* 可以知道PIPELINE模块是寄存输出的(因为有返回报告值) 优化的实战部分都这里就结束了,最后,DC的优化命令有很多,不懂的可以通过man命令查看。最后感叹一下,总共码了...
set_dont_touch不会穿过logic,可以用于cells, nets, references, 和 designs。你不希望DC碰的地方,都可以用它。set_dont_touch_network可以穿过logic,可以用于clocks, pins, 或 ports,比上面的范围小。当你对设计不十分熟悉时,这个属性可能会传到你不希望的地方去。ideal_net 顾名思义就是把这条...
set_dont_retime [get_cells I_MIDDLE/I_DONT_PIPELINE] true 1. 然后检查是不是约束成功,或者约束对了: get_attribute [get_cells I_MIDDLE/I_DONT_PIPELINE] dont_retime 1. 如下图所示,返回应为true: -->根据要求4,需要进行pipelined,于是我们可以启用register_timing,约束如下所示: ...
set_dont_retime [get_cells I_MIDDLE/I_PIPELINE/z_reg*] true 然后检查一下是否正确: -->保存在综合之前保存一下我们的设计: write -f ddc -hier -out unmapped/STOTO.ddc ·进行综合: 根据要求8:设计是时序关键的,因此我们要在综合的时候加上-timing选项;根据要求10:要执行扫描插入,因此要加上-scan选...