相关阅读SDC命令详解https://blog.csdn.net/weixin_45791458/category_12931432.html?spm1001.2014.3001.5482目录指定最大面积值指定忽略总负时序裕量Multicorner-Multimode支持简单使用写在最后set_max_area命令用于设置当前设计的最大面积设置了当前设计的max_area属性这是一种优化约束(Optimization Constraint)Design Compiler在综合的门级优化阶段的最后会尝试确保设计的总面积不超过设置的最大面积优先级小于设计规则约束(Design Rule Constraint)和时序约束等其他优化约束即不能以设计规则违例、时序违例为代价修复面积违例如果不设置该约束Design Compiler只会执行有限的单元尺寸下调和面积清理步骤。如果想要移除最大面积使用remove_attribute命令。需要注意的是最大面积的设置只对于DC Expert有效对于DC Ultra、Design Compiler Graphical和Design Compiler NXT最大面积会被视为0即持续进行面积优化直到无法得到收益为止。本文针对Design Compiler但该命令同样存在于PrimeTime、IC Compiler等工具中它们大致相同略有差别。set_max_area命令的BNF范式有关BNF范式可以参考以往文章为set_max_area area_value [-ignore_tns] //注该命令的选项和参数顺序任意指定最大面积值area_value是一个非负的面积值代表了需要设置在当前设计上的最大面积它的单位要与工艺库中的面积单位一致。指定忽略总负时序裕量-ignore_tns选项用于指定在综合过程中优先考虑面积而非总负时序裕量(Total Negative Slack, TNS)即可能会增加设计的时序违例以换取更小面积前提是新的违例小于同一时序组中最关键路径(Worst Negative Slack)的违例。Multicorner-Multimode支持该命令对所有活跃场景生效关于场景的更多介绍可以参考下面的博客。Design Compiler多工艺角和多工作模式(Multicorner-Multimode, MCMM)https://blog.csdn.net/weixin_45791458/article/details/149578771?ops_request_misc%257B%2522request%255Fid%2522%253A%2522e3267dcc7cc26380435f53994dc8b9b8%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fblog.%2522%257Drequest_ide3267dcc7cc26380435f53994dc8b9b8biz_id0utm_mediumdistribute.pc_search_result.none-task-blog-2~blog~first_rank_ecpm_v1~rank_v31_ecpm-1-149578771-null-null.nonecaseutm_termMCMMspm1018.2226.3001.4450简单使用以图1所示的电路图为例单元CLKINVX12的面积为6.35。图1 简单的例子下面使用set_max_fanout命令设置设计的最大扇出负载为1.4使用report_constraint -max_area命令查看此时设计的整体约束情况如图2所示可以看出此时出现面积违例代价函数的值此时恰好为6.35-1.44.95。dc_shell set_max_area 1.4图2 最大面积违例写在最后由于工具的更新该命令现在很少使用了目前一般使用compile_ultra命令配合optimize_netlist -area命令在Design Compiler 2013版本引入进行面积优化。尽管set_max_area命令不存在set_size_only命令中多实例化设计(MIM)的问题但不可以通过使用current_design命令切换当前设计到多实例化设计设置相应属性后再切换回顶层设计来进行多个对象的max_area属性设置即使设置上了综合时也不会生效。另外还有下面有几点需要注意1、当设置设计对象的max_area属性时 其所有实例单元都会被设置max_area属性需要注意的是此时的max_area属性是显式继承设置的如Synopsys设计对象一文所说但最大面积约束在顶层设计并不生效即只有顶层设计的最大面积约束生效。2、propagate_constraints命令对该约束无效即无法将子设计的最大面积约束传播到顶层设计。
阅读完成 · 觉得有帮助?