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

数字IC后端设计实现 | 如何自动删除Innovus 中冗余的hold buffer?

我们都知道在postCTS阶段做optDesign时序优化时需要进行hold violation的fixing。所以这个过程势必要通过插hold buffer来解决hold violation。这类hold buffer的名字带有"PHC"的关键词。

select_obj [dbGet top.insts.name PHC]

llength [dbGet top.insts.name PHC]

在后续的postRoute阶段做时序优化阶段,工具默认也有一个area reclaim的步骤。这个步骤主要的目的是在设计critical path上进一步把path上的cell面积做小。

工具会把setup critical path上冗余的hold buffer删掉,来进一步优化setup。

但是工具默认不会删除non-critical path上冗余的hold buffer。

这就会出现很多timing path的hold timing margin偏大的情况。一个设计要做出一个合理的结果,必须确保IC实现各个环节各个步骤的结果都是合理的。

在这里插入图片描述

下面分享解决这个问题的几个方法。

方法一: 报告timing并做基于hold的面积优化

Legacy UI:

timeDesign -postRoute
reclaimArea -maintainHold
Common UI:

time_design -post_route
opt_area -hold_aware

方法二: 设置opt优化mode

Legacy UI:

setOptMode -postRouteAreaReclaim {none | setupAware | holdAndSetupAware}
optDesign -postRoute
Common UI:

set_db opt_post_route_area_reclaim {none | setup_aware | hold_and_setup_aware}
opt_design -post_route

使用这个方法工具删除多余的hold buffer后不会引起setup和drv violation。

听说Latch可以高效修hold违例(Timing borrowing及其应用)

所以,当PT signoff需要插入很多hold buffer,返回PR工具插不进去时,我们可以使用今天的这个方法来删掉部分冗余的hold buffer来释放更多的空间。

当然,这个提前是PT和PR之间的timing correlation比较好的情况。

另外,我们还可以自己针对绕线或空间比较紧张的区域,人工删掉部分带PHC的hold buffer来释放点空间。

在这里插入图片描述
【思考题】如下所示timing path的removal存在600ps+的violation。请问这个hold violation存在的主要原因是什么?这么大的hold violation应该如何修复呢?

在这里插入图片描述

相关文章:

  • NAT/代理服务器/内网穿透
  • SpringBoot整合MQTT实战:基于EMQX构建高可靠物联网通信,从零到一实现设备云端双向对话
  • K8S Ingress 实现金丝雀(灰度)发布
  • NVMe简介1
  • FFMPEG 与 mp4
  • FunASR:语音识别与合成一体化,企业级开发实战详解
  • Turborepo + Vite + Next.js + Shadcn Monorepo 项目构建
  • MoonBit正式入驻GitCode!AI时代的编程语言新星,开启高性能开发新纪元
  • 【面试 · 五】CSS个别重点总结
  • 【内网渗透】——S4u2扩展协议提权以及KDC欺骗提权
  • Xcode报错:“Set `maskView` to `nil` before adding it as a subview of ZFMaskView
  • 嵌入式培训之数据结构学习(三)gdb调试
  • 深入解析京东 item_sku 接口:获取商品SKU信息的详细指南
  • libarchive.so.19丢失
  • 使用libUSB-win32的简单读写例程参考
  • 基于SpringBoot+Vue的房屋租赁管理系统源码包(完整版)开发实战
  • 现代垃圾收集器
  • 【springcloud学习(dalston.sr1)】Ribbon负载均衡(七)
  • svn status . 命令返回分析
  • npm 报错 gyp verb `which` failed Error: not found: python2 解决方案
  • 西班牙政府排除因国家电网遭攻击导致大停电的可能
  • 陕西宁强县委书记李宽任汉中市副市长
  • 足球少年郎7月试锋芒,明日之星冠军杯构建顶级青少年赛事
  • 今天北京白天气温超30℃,晚间为何下冰雹?
  • 为惩戒“工贼”,美国编剧工会“痛下杀手”
  • 中美发布日内瓦经贸会谈联合声明达成关税共识,外交部回应