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

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

相关阅读

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


目录

        指定扇出负载值

        指定端口列表/集合

        简单使用


        set_fanout_load命令用于设置扇出负载(设置了输出端口对象的fanout_load属性),这是一种设计规则约束(Design Rule Constraint),Design Compiler进行综合时会尝试确保每个输入端口/输出引脚驱动的扇出负载总和不超过设置的最大扇出负载(优先级高于优化约束(Optimization Constraint)),默认情况下输出端口的扇出负载为0。如果想要移除扇出负载,使用remove_attribute命令。

        本文针对Design Compiler,但该命令同样存在于PrimeTime、IC Compiler等工具中,它们大致相同,略有差别。set_fanout_load命令的BNF范式(有关BNF范式,可以参考以往文章)为:

set_fanout_loadvalueports//注:该命令的ports参数一定要放在value参数后    

指定扇出负载值

        value是一个非负的扇出负载值,它是一个无量纲数值,不是电容也不是真实的扇出数量,它是一种对有效扇出的表示。

指定端口列表/集合

        指定一个列表/集合,包含输出端口对象,对于列表而言,如果有多于一个对象,需要使用引号或大括号包围(对使用集合无效),关于列表和集合的区别,可以参考下面的博客。

SDC命令详解:使用集合(Collection)而不是字符串(String)/列表(List)作为命令参数https://chenzhang.blog.csdn.net/article/details/147144571

简单使用

        以图1所示的电路图为例。

图1 简单的例子

        首先使用set_max_fanout命令设置输入端口a的最大扇出负载(默认为无穷大) 。

dc_shell> set_max_fanout 0.6 [get_ports a]

        下面使用set_fanout_load命令设置输出端口的扇出负载为0.5,可以使用report_constraint -max_fanout命令查看此时设计的整体约束情况,如图2所示。 

dc_shell> set_fanout_load 0.5 [get_ports b]

图2 最大扇出负载(满足)

        下面使用set_fanout_load命令改变输出端口的扇出负载为0.7,此时的整体约束情况,如图3所示,可以看出此时出现设计规则违例,代价函数的值此时恰好为0.7-0.6=0.1。

dc_shell> set_fanout_load 0.7 [get_ports b]

图3 最大扇出负载(违例)

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

相关文章:

  • AI Agent 项目 SUNA 部署环境搭建 - 基于 MSYS2 的 Poetry+Python3.11 虚拟环境
  • 鸿蒙jsonToArkTS_工具exe版本来了
  • 上门服务小程序会员系统框架设计
  • 鸿蒙UI(ArkUI-方舟UI框架)- 使用弹框
  • 【react+antd+vite】优雅的引入svg和阿里巴巴图标
  • 八、Python模块、包
  • 华为OD最新机试真题-数组组成的最小数字-OD统一考试(B卷)
  • linux systemd 服务配置
  • 基础线性代数
  • Android协程学习
  • GPU加速与非加速的深度学习张量计算对比Demo,使用PyTorch展示关键差异
  • 面试总结一
  • 微服务架构下的服务注册与发现:Eureka 深度解析
  • Dify源码教程:账户和密码传递分析
  • 十六进制数字接收的方式
  • Linux程序运行日志总结
  • 面试题:SQL 中如何将 多行合并为一行(合并行数据为列)?
  • 第46节:多模态分类(图像+文本)
  • 学习路之PHP--webman安装及使用
  • 11.MySQL事务管理详解
  • 十八、【用户认证篇】安全第一步:基于 JWT 的前后端分离认证方案
  • 物流瘫痪预警:亚马逊多仓爆仓,卖家如何抢占夏季性价比市场?
  • 【Android基础回顾】五:AMS(Activity Manager Service)
  • 【Java Web】9.Maven高级
  • AI编程助手入门指南:GitHub Copilot、Cursor与Claude的安装与基础使用
  • [ Qt ] | 与系统相关的操作(三):QFile介绍和使用
  • 零碳园区:多维构建绿色标杆,开启美丽中国新纪元
  • 抑郁症患者数据分析
  • Redis大量key集中过期怎么办
  • 环境变量深度解析:从配置到内核的全链路指南