专栏首页陌上风骑驴看IC物理综合 | congestion 报告解读

物理综合 | congestion 报告解读

粽子节快乐,长胖了吗?热晕了吗?加班了吗?

物理综合的一大目标是优化congestion, 衡量congestion 的指标有:

  • Overflow
  • Hotspots

Overflow 跟Hotspots 是如何计算的,是用什么来表征的?Congestion 分析基于一个基本『单元』称为GCELL: Routing Grid cell. Gcell 是工具自己定义的一个单位格子,通常是一个ROW 的高度的小正方形,用户可以根据自己的需求在工具里设置Gcell 的大小。当Gcell 定义好之后,每个Gcell 包含固定的绕线资源,如一个Gcell 有5 个track, 如果有7 条线要经过该Gcell 那该Gcell 的overflow 就是2.

在Ispatial flow 或Innovus 中分析Congestion 时常会看到以下两个关键词,其具体含义是:

eGR: Early Global Router - It is the router used by the timing and optimization engine at pre-route stages.

NR-GR: NanoRoute Global Router - It is a global router which does global routing before the detail routing engine of NanoRoute kicks in.

Ispaital flow 使用同Innovus 相同的Early Global Routing 引擎,所以Overflow 的计算方式也一样。Innovus 在Early Global Route 跟Global Route 时Overflow的计算公式有所差别。

  • Early Global Route Congestion Formula:
  • Global Route Congestion Formula:

计算公式中 “unblocked GCells ” 指未被完全blocked 住的Gcell, 比如hardmacro 占住的routing 资源,routing blockage 占住的routing 资源。

在分析Congestion 时,对于面积大density 低的设计,只看overflow 并不能确定congestion 是否有问题,此时Hotspot 更能反应真实情况。

  • Hotspot: Adjacent G-Cells which have overflow.

在Innovus 的log 中有两张重要的表,可以得到routing 资源信息:

该表中每一项的意义:

  • Avail Track = Number of routing tracks in the design for each layer.
  • Track Blocked = Number of routing tracks blocked by a large blockage. A large blockage is a blockage that is greater than 2x2 Gcells. Small objects, such as pins or wires on a track, do not count here. The reason is that even if a pin is on a track, the track is still usable by the net to the pin.
  • Total Gcell = Total number of Gcells in the design for each layer.
  • %Gcell Blocked = Percentage of Gcells in which all the routing tracks inside the Gcell are blocked by a large or small blockage. When all the tracks are blocked, a wire cannot pass through that Gcell for the specific layer.

该表中每一项的意义:

  • Max overcon = The highest difference between the needed number of routing tracks for a Gcell and the number of available tracks.
  • Total overcon = Percentage of Gcells whose needed number of tracks exceeds the number of tracks available.
  • Worst layer Gcell overcon rate = Percentage for the layer with the highest percentage of overcongested Gcells.
  • The worst congested Gcell overcon = the Gcell with the highest difference between the number of tracks needed and the number of tracks available. In the above example, the worst congested Gcell requires six more routing tracks than it has available.

除此之外, 最直接明了的方式是打开congestion map, 黄红白的区域就是congestion 严重的区域,通常如果congestion 在macro 周围多是floorplan 不合理造成的,如果congestion 在逻辑中间多是设计本身或综合没做好造成的。

加班使我快乐!

本文分享自微信公众号 - 陌上风骑驴看IC(MoShangFengQiLv),作者:陌上风骑驴

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2020-06-26

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • P&R | 如何在实现全流程中考虑IR-Drop

    随着工艺进步,芯片上的线宽越来越窄,单位电阻也越来越大,而同时设计的复杂度也越来越高,芯片尺寸非但没有减小还长得更大了,以至于绕线越来密集,这对电源完整性提出了...

    老秃胖驴
  • 论综合 | 是什么让一个数字前端实现硅农开始学习Floorplan 的?

    如题,是什么让一个数字前端实现硅农开始学习Floorplan 的?是制造工艺的进步,是实现方法学的被迫更新,是养家糊口生的本能,正可谓:头发落完终不悔,为伊消得...

    老秃胖驴
  • combinational clock gating Vs sequential clock gating

    关于clock gating 已经写过:《clock gating | 从ICG cell 在 library 中的定义说起》《clock gating | G...

    老秃胖驴
  • webstorm 模板变量

    ${PROJECT_NAME} - the name of the current project.

    onety码生
  • JMeter: org.apache.http.NoHttpResponseException

    https://stackoverflow.com/questions/25132655/the-target-server-failed-to-respond...

    Jerry Wang
  • 求解大气声学中正常模式的两种Chebyshev光谱方法(CS)

    正常模式模型在计算大气声学方面很重要。它通常用于计算谐波点源下的大气声场。它的解决方案包括一组辐射到高层大气的离散模式,通常与连续光谱有关。在本文中,我们提出了...

    YH
  • hdu---1506(Largest Rectangle in a Histogram/dp最大子矩阵)

    Largest Rectangle in a Histogram Time Limit: 2000/1000 MS (Java/Others)    Memor...

    Gxjun
  • 控制大坝-水库系统的区域切换约束粘性解方法(CS SC)

    本文从数学和数值两方面分析了在河流中设置大坝-水库系统的一个新的随机控制问题。水库水量平衡动态是分段确定性的,受随机的区域切换流入驱动。控制系统在运行目的和内部...

    非过度曝光
  • CISSP考试指南笔记:3.19 应用加密技术

    The cryptographic life cycle is the ongoing process of identifying your cryptogr...

    血狼
  • HDUOJ---------(1045)Fire Net

    Fire Net Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (...

    Gxjun

扫码关注云+社区

领取腾讯云代金券