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

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命令进行面积优化。

http://www.xdnf.cn/news/12931.html

相关文章:

  • DiMTAIC 2024 数字医学技术及应用创新大赛-甲状腺B超静态及动态影像算法赛-参赛项目
  • 一文掌握 Tombola 抽象基类的自动化子类测试策略
  • LMDeploy 课程
  • ubuntu下编译osg3.6.5源码
  • CSP信奥赛C++常用系统函数汇总
  • 异或和之差-字典树
  • 二分查找 -P1102 A-B 数对
  • 风力发电机领域的声纹监测产品
  • 循环神经网络(RNN):从理论到翻译
  • 【Elasticsearch】映射:详解 _source store 字段
  • 基于机器学习的智能故障预测系统:构建与优化
  • 基于算法竞赛的c++编程(22)二进制,十进制,16进制
  • 面向对象之 继承中的成员访问特点
  • split方法
  • mybatis执行insert如何返回id
  • 开疆智能Ethernet/IP转Modbus网关连接斯巴拓压力传感器配置案例
  • LeetCode 高频 SQL 50 题(基础版)之 【高级字符串函数 / 正则表达式 / 子句】· 上
  • MCP(Model Context Protocol)与提示词撰写
  • unipp---HarmonyOS 应用开发实战
  • 并发和并行
  • 相机Camera日志分析之三十一:高通Camx HAL十种流程基础分析关键字汇总(后续持续更新中)
  • 例说局部性原理给程序带来的提升
  • 2480: 2020年06月2级T1:计算矩阵边缘元素之和
  • 计数思想-众数
  • vmware 设置 dns
  • 存储的基本原理
  • 哈希map中不能将数组作为键的原因 leetcode49
  • 第二十八章 字符串与数字
  • 5G-A通感融合对监控监督体系的核心作用
  • 下一代设备健康管理解决方案:基于多源异构数据融合的智能运维架构