转载出处:https://www.cnblogs.com/lelin/p/12613030.html

文章目录

  • Routing congestion
    • Channel Congestion:
    • PG(Power Ground)Congestion:
    • High Cell Density Congestion:
    • High Pin Density Congestion:
    • Logic Congestion:

Routing congestion

Channel Congestion:

此种现象比较常见,也比较简单,多发生于hard macro之间。如下图所示:


上图中,每一个灰色多边形代表一个macro。之所以用这种形状是因为实际设计中的某些memory会做成这种外形。黄色部分代表macro的pin,在此每个macro都只有一个方向有pin。图中也展示了两种典型的macro摆放方式:普通的毗连和背靠背。无论何种摆放方式,当macro之间的空隙不足以满足需要穿过的net所需要的资源的时候,就会发生channel congestion。因此,在floorplan阶段,考虑每个channel中可能穿过的net数量,配合metal layer层数和routing rule估算绕线资源是通常需要后端设计者考虑的事。遇到channel congestion时最简单的想法当然是增大macro距离,但这并不是总是有用,尤其是channel中有逻辑cell穿过的时候,设计者需要根据design的逻辑规划数据走向,控制channel内的逻辑数量。

PG(Power Ground)Congestion:

此种情况多由于power/ground的结构不合理或者过剩导致的。如下图所示:

上图红色方框中的均为PG via,我们可以看到,金属接触的部分全部打满了via。在实际设计中,电源网络的密度和via的数量其实是需要比较精确的估算的,因为过于密集的PG会占用过多的绕线资源,从而降低整体的绕通性。常用的手段是,如果在芯片局部出现绕线紧张的现象,会通过删除部分pg via/shape来释放一部分绕线资源。当然,这样做的前提是电源网络足够稳固(robust),IR-drop和power EM不会发生很大恶化。

High Cell Density Congestion:

此种congestion主要是由于局部或整体的cell过于密集导致的。下图展示了一种比较极端的情况:

上图中左图为cell density map,右图为routing congestion map。density map颜色越深意味着density越高,同理congestion map颜色越深意味着绕线资源越紧张。可以看出density越高的地方基本上congestion也越严重。在实际设计中,局部出现这种congestion的情况比较常见,我们可以通过很多手段来控制局部的density:placement blockage(soft hard partial), keepout margin(cell spacing constraint), cut row等。与此同时,工具也会提供一些功能来控制局部density,比如icc2的place.coarse.max_density。

High Pin Density Congestion:

此种congestion多发生于多pin cell集中的区域。下图展示了两种常见的多pin cell:AOI(and/or/inverter)和多位选择器(selector)。

在某些design中,如果不加控制,逻辑综合的结果可能是几百上千个此类cell聚集在一起从而造成某个区域的net十分密集。在place阶段,尽管工具会尝试把这些cell尽量推开,但是由于逻辑本身的限制优化空间有限。因此需要综合阶段配合,选择合适的cell来综合网表。例如可以禁用此类cell,使综合工具将其逻辑进行拆分。但是这样做的后果是可能导致design的逻辑数量增加,面积增大,功耗上升。因此需要对各方面的影响进行评估。

Logic Congestion:

此类congestion可以说是最棘手的问题之一。因为在后端结果看来,可能这类congestion的区域中cell density很低,也没有或者很少有多pin cell,周围也没有marco阻挡,但是congestion却一塌糊涂。原因可能在于前端工程师为了节省面积而将某一个模块复用多次,连接了过多的input或者output;也可能是design中存在大量的同级选择逻辑(如几百位的选择器)。原因不一而足,需要后端工程师去深入分析design才能得出结论。这类问题需要向前端工程师反馈,与他们沟通能否修改RTL,而且常常以牺牲面积或者性能为代价。
除了在prects和preroute阶段尽量解决congestion,在routing之后可能仍然会出现剩余大量short/drc的情况,但对此类问题的解决方法又是另外一个话题了

Routing Congestion相关推荐

  1. Congestion解决办法

    Congestion问题怎么解决? 目录 1.RTL阶段 2.PR阶段 1.宏单元与宏单元之间 2.宏单元与标准单元之间 3.标准单元与标准单元之间 参考文章:http://www.52-ic.com ...

  2. ASIC设计-终极指南

    ASIC设计-终极指南 ASIC Design – The Ultimate Guide ASIC设计-终极指南 ASICs代表特定于应用的集成电路,指的是针对特定应用而设计的半导体解决方案,与其他解 ...

  3. ICC 图文学习——LAB2:Design Planning 设计规划

      这一步也可以叫floorplan(布局规划),对设计进行布局规划.floorplan的合理性直接关系到芯片的时序收敛.布线畅通.电源稳定以及良品率等.这部分内容非常重要,只有这一步做好了,后面成功 ...

  4. EETOP版主后端面试问题 每日一题

    转载地址:版主个人空间 转载的csdn地址:csdn地址 后端面试–每日一题(084) Design 4-bit asynchronous counter? how to set timing con ...

  5. 数字后端面试100问(校招版)

    上次发布面试100问以后,应读者强烈要求,抽空写了一篇校招版的后端100问,希望对各位应届生面试有用.题目难度类型更偏向基础概念的理解.对于校招,由于在校学生缺乏实际项目经验,考官通常会更加注重学生对 ...

  6. FloorPlan相关

    FloorPlan相关 现在的综合一般都是physical synthesis了,所以我们需要先做floorplan,下面是一些和floorplan相关的知识点! Types of Floorplan ...

  7. Lockup latch的用法,看这个就够了

    Lockup latch的用法,看这个就够了! 文章右侧广告为官方硬广告,与吾爱IC社区无关,用户勿点.点击进去后出现任何损失与社区无关. 本公众号秉承 "越分享越有价值,越分享越幸运&qu ...

  8. 【VPR】 Graphics - vpr的图形界面

    目录 一.Graphics 图形界面 二.Enabling Graphics 启用图形界面功能 2.1.Compiling with Graphics Support 编译时启用图形界面支持 2.2. ...

  9. 静态时序分析 第六章 串扰和噪声

    串扰和噪声 第六章 串扰和噪声 6.1概述 6.2串扰毛刺分析( Crosstalk Glitch Analysis) 6.2.1基础( Basics) 6.2.2毛刺的类型(Types of Gli ...

  10. 数字IC后端实现的一些基本概念

    1.1 EETOP版主面试问题 001) Why power stripes routed in the top metal layers? 为什么电源走线选用最上面的金属层? 因为顶层金属通常比较厚 ...

最新文章

  1. 正则表达的式的基本功能
  2. 【Groovy】使用 Groovy 语言开发服务器 Server 和客户端 Client 套接字程序 ( 服务器客户端完整代码示例 | 运行服务器端与客户端效果及过程分析 )
  3. LeNet试验(五)观察“彩票假说”现象
  4. linux查找influx的安装位置,InfluxDB学习之InfluxDB的安装和简介 | Linux大学
  5. Android 4.0 SDK下载安装
  6. 第 8 章:管理模式对象
  7. nuc972的ramfs的配置yaffs2,ubi文件系统
  8. flex item的width VS flex-basis
  9. 个人开发者福利:没有注册公司,如何发布自己的小程序
  10. 【JEECG技术文档】JEECG 组织机构导入V3.7
  11. Atitit 基于dom的游戏引擎
  12. python之解决Cannot uninstall ‘certifi‘问题
  13. Maven打包时报Failed to execute goal org.apache.maven.plugins:maven-war-plugin:2.2:war解决方案
  14. C51单片机,点亮小灯的入门级教程
  15. 怎样在电脑上面简单的记账,了解账户收支
  16. 组建BXP无盘网络 (一)
  17. [Android][Kernel]基于crash工具搭建分析ramdump的平台
  18. 在线手机WAP模拟器或软件,用电脑IE浏览器在线浏览手机wap网站
  19. Origin源码阅读笔记——RPC
  20. ZBLOG即时聊天(客服)插件v1.3.2版本下载,强大的在线客服系统源码

热门文章

  1. 时间同步服务器,保障您的计算机系统时钟精准
  2. 25岁从零开始学习平面设计会不会晚
  3. (二)Jointly Optimizing Diversity and Relevance in Neural Response Generation
  4. 《国际贸易术语解释通则》概述中关于2000年通则的主要内容
  5. MSP430F149程序——RS485
  6. 如何在Word项目符号列表中将图片用作项目符号
  7. word中“项目符号”和后面的文字间隔太远
  8. android定时器课设报告,数显定时器课程设计报告.doc
  9. 认真过好你的二十几岁
  10. Android 函数响应式编程(RxJava3)