当前位置: 首页 > news >正文

SDC命令详解:使用set_max_area命令进行约束

相关阅读

SDC命令详解https://blog.csdn.net/weixin_45791458/category_12931432.html?spm=1001.2014.3001.5482


        set_max_area命令用于设置当前设计的最大面积(设置了输入端口的max_area属性),这是一种优化约束(Optimization Constraint),Design Compiler在综合的门级优化阶段的最后会尝试确保设计的总面积不超过设置的最大面积(优先级小于设计规则约束(Design Rule Constraint)和时序约束等其他优化约束,即不能以设计规则违例、时序违例为代价修复面积违例),如果不设置该约束,Design Compiler只会执行有限的单元尺寸下调和面积清理步骤。如果想要移除最大面积,使用remove_attribute命令。

        需要注意的是,最大面积的设置只对于DC Expert即使用compile综合命令有效,对于使用compile_ultra综合命令的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)的违例)。

简单使用

        以图1所示的电路图为例,单元CLKINVX12的面积为6.35。

图1 简单的例子

        下面使用set_max_fanout命令设置设计的最大扇出负载为1.4,使用report_constraint -max_area命令查看此时设计的整体约束情况,如图2所示,可以看出此时出现面积违例,代价函数的值此时恰好为6.35-1.4=4.95。

dc_shell> set_max_area 1.4

图2 最大面积(违例)

写在最后

        由于工具的更新,该命令现在很少使用了,目前一般使用compile_ultra命令配合optimize_netlist -area命令进行面积优化。

相关文章:

  • Linux 环境配置
  • Java后端检查空条件查询
  • linux库(AI回答)
  • 算法打卡第18天
  • Java求职者面试指南:计算机基础与源码原理深度解析
  • 2000-2020年各省第三产业增加值占GDP比重数据
  • ffmpeg(四):滤镜命令
  • VS Code扩展安装后如何管理
  • 循环变量捕获问题​​
  • Java网络编程:构建现代分布式应用的核心技术
  • OPENCV图形计算面积、弧长API讲解(2)
  • 论文MR-SVD
  • 从菜鸟到骑士:TypeScript 基础修炼手册
  • 网盘变硬盘挂载软件:百度 / 阿里 / OneDrive 秒变本地磁盘
  • 做题笔记(ctfshow)
  • MCP Resource模块详解
  • 2480: 2020年06月2级T1:计算矩阵边缘元素之和
  • Prefix Caching 详解:实现 KV Cache 的跨请求高效复用
  • 推理式奖励模型:使用自然语言反馈改进强化学习效果
  • Jmeter(四) - 如何在jmeter中创建网络测试计划
  • 泰和网站制作/seo提升排名
  • 没人愿意干的68个暴利行业/郑州网站seo顾问
  • 制作网站 太原/百度宣传广告要多少钱
  • 做动车哪个网站查/seo网络优化是什么意思
  • 兰州网站建设q.479185700棒/自动发帖软件
  • seo诊断书/最优化方法