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

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

相关阅读

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


目录

        指定外部扇出数量

        指定端口列表

        简单使用


        set_port_fanout_number命令用于设置端口的外部扇出数量(设置了端口的fanout_number属性),正如下面关于set_load命令的博客所说,线网的互连电容总量由与其连接的端口、引脚和线网三者的互连电容组成。线网的互连电容如果没有使用set_load命令人为设置,则由线负载模型(非拓扑模式)得到,即根据扇出数量估算连线长度并得到RC参数。

SDC命令详解:使用set_load命令进行约束https://blog.csdn.net/weixin_45791458/article/details/136276165?sharetype=blogdetail&sharerId=136276165&sharerefer=PC&sharesource=weixin_45791458&spm=1011.2480.3001.8118        而set_port_fanout_number命令可以设置端口的外部扇出数量,默认情况下,输出端口只会被当作一个扇出进行计算,输入端口被当作没有外部扇出。如果想要移除端口的外部扇出数量,使用remove_attribute命令。

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

set_port_fanout_numberfanout_numberport_list//注:该命令的port_list参数一定要放在fanout_number参数后

指定外部扇出数量

        指定一个值作为端口所驱动的外部扇出数量(如果非整数则会向下取整)。

指定端口列表

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

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

简单使用

        下面以图1所示的电路图为例对set_port_fanout_number命令的使用进行说明。

图1 简单的例子

        使用下面的命令为设计指定线负载模型,本例中使用的线负载模型如图2所示。

dc_shell> set_wire_load_model -name tsmc090_wl50 -library fast

图2 一个简单的线负载模型

        使用report_net -connections -verbose [get_nets a]命令可以报告线网a相关的信息,如图3所示。

图3 线网a信息报告

        从图3中可以看出,由于线网a只有一个扇出(单元输入引脚),互联电容(wire capacitance)被计算为1*333.35*1.5e-4=0.05。

        下面使用set_port_fanout_number命令在输入端口a明确指定外部扇出数量为一。

dc_shell> set_port_fanout_number 1 [get_ports a]

        此时的线网a的信息报告如图4所示。

图4 线网a信息报告

        从图4中可以看出,由于线网a此时被认为有两个扇出(单元输入引脚和一个外部扇出),互联电容(wire capacitance)被计算为2*333.35*1.5e-4=0.1。 

        需要注意的是,如果不使用-connections -verbose选项,则报告的扇出数会出现错误(还是认为线网扇出为一),如图5所示。

图5 线网a信息报告(错误)

        使用report_net -connections -verbose [get_nets b]命令可以报告线网b相关的信息,如图6所示。

图6 线网b信息报告

        从图6中可以看出,由于线网b此时被认为有两个扇出(单元输入引脚和输出端口,输出端口默认被当作一个扇出),互联电容(wire capacitance)被计算为2*333.35*1.5e-4=0.1。 

        下面使用set_port_fanout_number命令在输入端口b明确指定外部扇出数量为二。

dc_shell> set_port_fanout_number 2 [get_ports b]

        此时的线网b的信息报告如图7所示。 

图7 线网b信息报告

        从图4中可以看出,由于线网a此时被认为有三个扇出(单元输入引脚和输出端口,输出端口此时被当作两个扇出),互联电容(wire capacitance)被计算为3*333.35*1.5e-4=0.15。 

相关文章:

  • Swift 协议扩展精进之路:解决 CoreData 托管实体子类的类型不匹配问题(上)
  • pycharm 中文字体报错
  • PyCharm集成Conda环境
  • Doris 与 Elasticsearch:谁更适合你的数据分析需求?
  • 【Java学习笔记】String类(重点)
  • 从零开始搭建 Pytest 测试框架(Python 3.8 + PyCharm 版)
  • Android Studio 解决首次安装时下载 Gradle 慢问题
  • 【数据分析】探索婴儿年龄变化对微生物群落(呼吸道病毒和细菌病原体)结构的影响
  • 使用 C/C++ 和 OpenCV 提取图像的感兴趣区域 (ROI)
  • 游戏(game)
  • Mybatis-Plus的LambdaWrapper
  • Python_day47
  • 华为云Flexus+DeepSeek征文 | 从零到一:用Flexus云服务打造低延迟联网搜索Agent
  • Python入门手册:异常处理
  • 微前端 - Native Federation使用完整示例
  • JavaWeb的一些基础技术
  • Jenkins持续集成CI,持续部署CD,Allure报告集成以及发送电子 邮件
  • 前沿论文汇总(机器学习/深度学习/大模型/搜广推/自然语言处理)
  • EPPLUS——CAD c#读写EXCEL的第三方库
  • wpf ListBox 去除item 单击样式
  • 网站建设网上售票系统/福建seo顾问
  • 用html5做的网站的原代码/青岛网站关键词优化公司
  • 中山网站建设公司/定制网站建设
  • 百度网站前三名权重一般在多少/自己建网站需要钱吗
  • 做网站需要准备什么东西/济南竞价托管公司
  • 买一款app要多少钱/seo及网络推广招聘