- 博客(575)
- 收藏
- 关注
原创 formality: set_dont_verify_points用法
Formality中如何对一些cell设dont verify points?cell 比较多,是get_cells 抓出来的。我正在「拾陆楼」和朋友们讨论有趣的话题,你⼀起来吧?
2026-10-20 11:10:45
33
原创 redhawk: 影响vcd based dynamic analysis结果的设置分析
我正在「拾陆楼」和朋友们讨论有趣的话题,你⼀起来吧?vcd based与vectorless dynamic分析在gsr文件设置上仅有VCD_FILES上的区别,这里探讨一下部分设置与vcd based结果的关系。
2026-10-15 15:17:06
68
原创 加shield和ndr rule有什么区别?
我正在「拾陆楼」和朋友们讨论有趣的话题,你⼀起来吧?加shield和ndr rule都起到降低干扰线和受扰线之间耦合电容的作用,从而降低crosstalk,那么优先用哪一个,什么情况下可以加shield,什么情况下用ndr rule呢?我们做个试验,取一条用2w2s ndr rule绕线的clock net,报告加shield前后crosstalk以及net delay并分析,clock net走势如图。
2026-08-10 13:58:11
79
原创 PT:读spef反标失败特殊情况分析
我正在「拾陆楼」和朋友们讨论有趣的话题,你⼀起来吧?拾陆楼知识星球入口常见的spef反标失败,通常是spef和verilog netlist版本不匹配造成的,一些特殊情况如下:以icc2为例,icc2 write_def时会给unconnect port赋予一个名为_dummynet*的net,这个net在def中存在,所以在spef中也存在,但是于网表中不存在,导致pt read_parasitic时会报错:Error: Cannot find net '_dummynet*' in design (PA
2026-08-04 17:05:01
89
原创 PT:remote_execute用法介绍
2.""双引号与{}花括号的区别,双引号能调用dmsa下定义的变量,花括号只能调用remote_execute下定义的变量,这里$start 和$end是dmsa下定义的变量没法直接给get_timing_path用,需要在remote_execute""里转成$s ,$e才行,所以用的是双引号。1.这里用到了-pre_command命令,意思是在主体{puts [get_attr [get_timing_path .. ... }执行前先去执行的命令,同理还有后执行的-post_command。
2026-08-03 16:02:09
83
原创 innovus:Specify Floorplan指定floorplan size
然后在Advanced中取消勾选Snap Die/Core Box to Grid。我正在「拾陆楼」和朋友们讨论有趣的话题,你⼀起来吧?
2026-07-27 15:51:51
108
原创 innovus:用飞线显示module之间的连接关系
我正在「拾陆楼」和朋友们讨论有趣的话题,你⼀起来吧?来自星球提问:星主, 想请问innovus中如何在place阶段显示出某个module跟其他module间的关係供调整floorplan参考?是否有相关指令或是script参考?
2026-07-27 15:41:49
232
原创 innovus:如何获取ideal net
我正在「拾陆楼」和朋友们讨论有趣的话题,你⼀起来吧?INVS如何抓出 ideal net?这个方法在icc2里也适用。
2026-07-16 15:51:25
94
原创 redhawk:加不加decap的影响分析
decap的功耗为0,总的平均功耗反而略有提升,静态压降4.07%,从36.61升到了36.63mV,几乎没有变化,所以加不加decap对静态ir drop分析影响很小。在后端设计中,我们通过添加decap来降低动态ir drop,那么加不加decap对静态ir分析有多少影响,笔者做了一个试验。下面是不加decap的结果,压降会升高到9.63%,可见加不加decap对动态ir drop得分析影响更大。可以看到decap只带来漏电功耗,总计9.654e-7W,静态压降4.07%
2026-07-16 14:39:03
116
原创 什么情况下signal net会被当成clock net?
当clock source能trace到output port时,工具会对到output port的路径用clock ndr进行绕线,就出现了signal被认成clock的情况。打开Analysis Clock,右键选中clock,使用Clock Tree Levelized Group -> Beyond Exception。以ICC2为例,图形界面选中被clock route的port,切换mode查看clock net属于哪些clock。我正在「拾陆楼」和朋友们讨论有趣的话题,你⼀起来吧?
2026-07-13 19:09:03
209
原创 如何确保starrc的数据是准确的?
partition设计中,会涉及到top提取rc用flat还是hier的原则,前者精度更高,速度慢,适用于signoff阶段,后者速度快,适用于timing收敛过程中的快速迭代,如下图,用到的命令就是SKIP_CELLS,用法参照往期文章。提高starrc数据的准确性的方法是多角度的,首先要确保pr数据不能有干扰rc计算的drc违例比如short和open,其次要检查starrc与pr工具的版本,最后要检查starrc的设置。我正在「拾陆楼」和朋友们讨论有趣的话题,你⼀起来吧?
2026-06-15 11:36:53
129
原创 innovus: ccopt_design如何给不同clock设置max_transition
sdc命令的max_trans约束,对应spec里的set_ccopt_property target_max_trans_sdc -delay_corner ss -early/-late -clock_tree xx 0.2。其他的就用set_max_transition 0.5 -clock_path [all_clocks]或者set_ccopt_property target_max_trans 0.5。我正在「拾陆楼」和朋友们讨论有趣的话题,你⼀起来吧?
2026-06-01 16:02:15
177
原创 PT: PTECO_015 / PTECO-028如何解决
我正在「拾陆楼」和朋友们讨论有趣的话题,你⼀起来吧?拾陆楼知识星球入口关于进程与资源分配的设置参考往期文章:DMSA(Distributed multi-scenario analysis)Error: The number of hosts is different from the number of scenarios(PTECO-015)dmsa进行fix_eco_timing/fix_eco_power时要求host大于等于scenario的数量,所以当host小于scenario数量时就会报错。
2026-05-19 15:34:00
179
原创 ICC2/innovus: 使用auto NDR优化时序
EWI (enable wireopt improvement) mode可以在优化和绕线阶段使用auto NDR或via ladder方式来改善时序,命令为enable_wireopt_improvement -mode default/andr/vlo/all其中default与andr等效,即不指定mode时默认使用andr mode,工具将使用auto ndr进行优化,vlo指的是via ladder,all即auto ndr+via ladder。
2026-05-19 13:56:53
328
原创 usefulSkewCcopt不同选项用法
单独使用命令optDesign -postCTS也会因为这个命令而选择是否使用useful skew修timing,log中有"skewClock size 0 and inserted 4 inst"此类信息。setOptDesign -usefulSkewCcopt有三个选项none /standard(default) /extreme。设置none的时候,工具在长tree和postcts优化时序的时候,都不使用usefulskew。我正在「拾陆楼」和朋友们讨论有趣的话题,你⼀起来吧?
2026-03-24 16:03:38
175
原创 innovus: 给不规则floorplan加route blockage ring
在innovus,怎样给一个不规则的floorplan打一个紧贴die的1um的routing blockage环呢?假如出pin的位置不打routing bockage,该怎样弄呢?给所有pin都扩大1,然后让准备加的一圈rbk polygon跟它ANDNOT,输出box再加rbk。我正在「拾陆楼」和朋友们讨论有趣的话题,你⼀起来吧?
2026-03-09 13:37:14
224
原创 StarRC: incremental ECO flow(ECO_MODE用法)
需要注意的是GPD和STAR_DIR,以及StarRC运行的目录要在同一级,不然就会收到"invalid command change"的报错,另外,输入数据不局限于NDM,使用def+lef的flow也可以,输出数据也可用NETLIST_FORMAT:SPEF以及NETLIST_FILE设置为spef输出。2.运行StarRC,第一轮运行ECO_MODE会报告warnning,提示用户因为没找到前一轮的原始gpd数据,所以这一轮执行full chip extraction,既全局RC抽取。
2026-03-05 14:31:56
173
原创 ICC2: place阶段的clock network delay
设置了set_clock_latency之后,即便没长tree,也会有反标值,显示为clock network delay(ideal)和设置的clock latency值,需要注意的是同时设置set_clock_latency和set_clock_latency -source,clock network delay(ideal)值是二者叠加的。我正在「拾陆楼」和朋友们讨论有趣的话题,你⼀起来吧?
2026-01-21 14:30:58
316
原创 Calibre如何将两个gds拼到一起
2.图形界面Object-Create Cell,设置block的名字,选择From Selection和Replace selection with cell instance,操作两次,创建对应的block1和block2的空的子模块。1.calibredrv打开图形界面,File-New Layout,创建一个空版图,设置好unit和grid,不然后面merge会出错。5.最后filemerge,把参考库,空top和两个block gds都添加进去。4.使用脚本给其中以后block改坐标原点位置。
2026-01-12 14:40:53
300
原创 提高ICC2与Starrc的correlation方法
做correlation检查需要保证ICC2的database处于post route阶段,且没有过多的min spacing和min width问题,open和short也需要清掉。2.确保tluplus跟nxtgrd是用同一个itf文件产生的,且使用相同版本的grdgenxo工具,starrc版本要保持与ICC2一致或略早版本。4.Starrc需要设置REDUCTION: NO_EXTRA_LOOPS。我正在「拾陆楼」和朋友们讨论有趣的话题,你⼀起来吧?
2026-01-06 11:15:41
271
原创 innovus: 给power domain加placement gap以及route gap
rbk在pd外面就让$box放后面,rbk在pd里面就让$box在前面。我正在「拾陆楼」和朋友们讨论有趣的话题,你⼀起来吧?
2025-12-25 15:12:24
406
原创 静态时序分析: create_generated_clock用法详解
我正在「拾陆楼」和朋友们讨论有趣的话题,你⼀起来吧?生成时钟是基于主时钟(master clock)派生出来的,主时钟是create_clock来定义的,我们常用的分频时钟就是在分频电路后定义一个生成时钟,eda工具不会根据分频电路来计算它是几分频,所以需要create_generated_clock约束告诉工具。
2025-12-17 17:13:28
472
原创 用innovus write_lef_abstract写出不规则形状lef
试验下来,只要tech lef中添加overlap层定义即可,不需要write_lef_abstract -add_obs_layers OVERLAP,因为这个option同样需要lef中有OVERLAP定义。往期文章中我们介绍过如果切割不规则形状floorplan。我正在「拾陆楼」和朋友们讨论有趣的话题,你⼀起来吧?
2025-10-24 17:52:46
318
原创 t12 low power design: power plan脚本分享(7) tap cell & route guide
我正在「拾陆楼」和朋友们讨论有趣的话题,你⼀起来吧?
2025-10-22 11:24:32
276
原创 t12 low power design: power plan脚本分享(6) power via
我正在「拾陆楼」和朋友们讨论有趣的话题,你⼀起来吧?
2025-10-22 10:51:23
221
原创 如何在verilog网表里搜索instance?
PR工具通过current_design过得top cell name,在网表中搜索module top_cell_name,然后向下搜索指定port,举例来说,我们要找到spi_clk_dig[8]这个port接的instance pin name。由此可知,spi_clk_dig[8]接的是一个与门的输入pin,对应的instance pin为,isolate_latch/and_isolation/my_and/A。举例来说,一个instance name为a/b/c。
2025-10-20 10:43:57
339
原创 t12 low power design: power plan脚本分享(5) power switch
我正在「拾陆楼」和朋友们讨论有趣的话题,你⼀起来吧?拾陆楼知识星球入口set_app_options -name plan.mtmos.snap_to_via0_grid -value truederive_placement_blockages ;#给channel产生blockage,方便抓取channel,这里需要删除不必要的blkset upf "xx/block.upf"set in [open $upf r+]while {[gets $in line] >= 0} {if {[regexp c
2025-10-16 15:24:38
328
原创 innovus: createRegion
floating的作用是,当我们需要把指定module集中摆放,相对位置还是在指定box大小的矩形框里,但摆放位置需要工具自行判断时就可以加-floating。工具会把u_top/u_dsp_top/u_sub 下的inst放到{0 0 10 10}这个box里。请教下星主createRegion的命令-floating这个命令有什么作用呢。我正在「拾陆楼」和朋友们讨论有趣的话题,你⼀起来吧?下图为设置floating前后对比。
2025-10-15 16:50:01
495
原创 ICC2: 如何均匀撒spare cell
另外,add_spare_cell默认是不能加到任何类型的placement blockage内部的,如需加到channel内的soft blockage内可以设置add_spare_cell -ignore_blockage_types {soft}要想均匀撒就得place前撒进去,撒的方式有两种,一种是随机撒进去,一种是一堆一堆的,每种cell type spare cell聚在一堆,区别是用-random_distribution还是-respective_window。
2025-09-19 13:40:41
326
原创 ICC2: Performing Multibit Banking
我正在「拾陆楼」和朋友们讨论有趣的话题,你⼀起来吧?ICC2可以把single bit的寄存器和小的multibit的寄存器替换成更大的multibit的寄存器,比如可以把8个1-bit的寄存器或者4个2-bit的寄存器换成一个8-bit的寄存器或者2个4-bit的寄存器。同样的工具也可以把level shifter和isolation cell的single bit换成等效的multibit。这种方法可以减少cell的面积,clock tree net的长度,以及clcok buffer的数量及功耗。
2025-09-18 14:46:54
1052
原创 PR工具timing report中setup time的计算过程
然后去pr工具里报告report_delay_calculation/reportDelayCalculation -from related_pin -to constraint_pin。这里constraint pin就是D pin (D0 D1 D2 D3),related pin就是 CK pin。我正在「拾陆楼」和朋友们讨论有趣的话题,你⼀起来吧?
2025-09-18 14:20:32
455
原创 innovus: add_via_definition相关
我正在「拾陆楼」和朋友们讨论有趣的话题,你⼀起来吧?拾陆楼知识星球入口用户自定义的via_def往往基于lef中VIARULE,在此基础上做调整,比如cut_spacing,如下实际:VIARULE VIAGEN12 GENERATE; LAYER M1 ; DIRECTION HORIZONTAL ; OVERHANG 0.05 ; METALOVERHANG 0 ; LAYER M2 ; DIRECTION VERTICAL ; OVERHANG 0.05 ; M
2025-09-16 16:25:50
340
原创 ICC2: stripe下不放cell的方法
ICC2有两个option,place.legalize.avoid_pins_under_preroute_libpins 和place.legalize.avoid_pins_under_prroute_layers仅适用于legalize阶段,要实现place时stripe下不放cell还是要用上述脚本。ICC2不像innovus那样有直接的命令控制这个功能:setPlaceMode -place_detail_prroute_as_obs。我正在「拾陆楼」和朋友们讨论有趣的话题,你⼀起来吧?
2025-09-15 14:53:51
327
ICC2中ICV signoff DRC检查与自动修复:解决PR与PV工具间DRC不匹配问题
2025-04-20
【数字后端设计】Innovus源延迟更新机制:时钟树综合前后时序一致性维护方法详解
2025-04-20
【集成电路设计】ICCompiler与StarRC工具间寄生参数提取相关性检查清单:确保版图后仿真准确性
2025-04-20
基于reportCongestion与Congestion GUI的拥塞分析:统计与可视化方法在IC布局布线中的应用
2025-04-20
【集成电路设计】基于Innovus的混合宏单元与标准单元协同布局流程:mixed placer flow
2025-04-20
【集成电路设计】Totem 2021R1.4版本用户指南user guide
2025-04-20
Innovus 时钟树综合(CTS)技术详解:集成电路设计流程中的关键优化与配置指南
2025-04-20
Regular Multisource Clock Tree Synthesis
2024-08-12
Innovus CCOpt Concepts Update Training
2024-08-12
Buffer insertion using ecoAddRepeater In Innovus
2024-08-12
Innovus - source latency update
2024-08-12
LPDDR54-PHY.pdf
2024-08-10
霍华德 约翰逊 高速数字设计
2024-08-10
先进工艺带来的挑战与问题
2024-08-10
ESD Protection and I/O Design
2023-11-22
ESD经典教材 ESD Protection in CMOS Integrated Circuits
2023-11-22
Flexible H-tree and Multi-Tap Clock Flow in Innovus (Legacy)
2023-11-20
Clock Mesh Synthesis
2023-11-20
Innovus-naming-convention.docx
2023-10-30
基于TSMC12nm的GPU低功耗设计与物理实现.pdf基于TSMC12nm的GPU低功耗设计与物理实现.pdf
2023-10-27
Low Power Methodology Manual For System-on-Chip Design.pdf
2022-10-25
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅