Routing Congestion
转载出处: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相关推荐
- Congestion解决办法
Congestion问题怎么解决? 目录 1.RTL阶段 2.PR阶段 1.宏单元与宏单元之间 2.宏单元与标准单元之间 3.标准单元与标准单元之间 参考文章:http://www.52-ic.com ...
- ASIC设计-终极指南
ASIC设计-终极指南 ASIC Design – The Ultimate Guide ASIC设计-终极指南 ASICs代表特定于应用的集成电路,指的是针对特定应用而设计的半导体解决方案,与其他解 ...
- ICC 图文学习——LAB2:Design Planning 设计规划
这一步也可以叫floorplan(布局规划),对设计进行布局规划.floorplan的合理性直接关系到芯片的时序收敛.布线畅通.电源稳定以及良品率等.这部分内容非常重要,只有这一步做好了,后面成功 ...
- EETOP版主后端面试问题 每日一题
转载地址:版主个人空间 转载的csdn地址:csdn地址 后端面试–每日一题(084) Design 4-bit asynchronous counter? how to set timing con ...
- 数字后端面试100问(校招版)
上次发布面试100问以后,应读者强烈要求,抽空写了一篇校招版的后端100问,希望对各位应届生面试有用.题目难度类型更偏向基础概念的理解.对于校招,由于在校学生缺乏实际项目经验,考官通常会更加注重学生对 ...
- FloorPlan相关
FloorPlan相关 现在的综合一般都是physical synthesis了,所以我们需要先做floorplan,下面是一些和floorplan相关的知识点! Types of Floorplan ...
- Lockup latch的用法,看这个就够了
Lockup latch的用法,看这个就够了! 文章右侧广告为官方硬广告,与吾爱IC社区无关,用户勿点.点击进去后出现任何损失与社区无关. 本公众号秉承 "越分享越有价值,越分享越幸运&qu ...
- 【VPR】 Graphics - vpr的图形界面
目录 一.Graphics 图形界面 二.Enabling Graphics 启用图形界面功能 2.1.Compiling with Graphics Support 编译时启用图形界面支持 2.2. ...
- 静态时序分析 第六章 串扰和噪声
串扰和噪声 第六章 串扰和噪声 6.1概述 6.2串扰毛刺分析( Crosstalk Glitch Analysis) 6.2.1基础( Basics) 6.2.2毛刺的类型(Types of Gli ...
- 数字IC后端实现的一些基本概念
1.1 EETOP版主面试问题 001) Why power stripes routed in the top metal layers? 为什么电源走线选用最上面的金属层? 因为顶层金属通常比较厚 ...
最新文章
- 正则表达的式的基本功能
- 【Groovy】使用 Groovy 语言开发服务器 Server 和客户端 Client 套接字程序 ( 服务器客户端完整代码示例 | 运行服务器端与客户端效果及过程分析 )
- LeNet试验(五)观察“彩票假说”现象
- linux查找influx的安装位置,InfluxDB学习之InfluxDB的安装和简介 | Linux大学
- Android 4.0 SDK下载安装
- 第 8 章:管理模式对象
- nuc972的ramfs的配置yaffs2,ubi文件系统
- flex item的width VS flex-basis
- 个人开发者福利:没有注册公司,如何发布自己的小程序
- 【JEECG技术文档】JEECG 组织机构导入V3.7
- Atitit 基于dom的游戏引擎
- python之解决Cannot uninstall ‘certifi‘问题
- Maven打包时报Failed to execute goal org.apache.maven.plugins:maven-war-plugin:2.2:war解决方案
- C51单片机,点亮小灯的入门级教程
- 怎样在电脑上面简单的记账,了解账户收支
- 组建BXP无盘网络 (一)
- [Android][Kernel]基于crash工具搭建分析ramdump的平台
- 在线手机WAP模拟器或软件,用电脑IE浏览器在线浏览手机wap网站
- Origin源码阅读笔记——RPC
- ZBLOG即时聊天(客服)插件v1.3.2版本下载,强大的在线客服系统源码
热门文章
- 时间同步服务器,保障您的计算机系统时钟精准
- 25岁从零开始学习平面设计会不会晚
- (二)Jointly Optimizing Diversity and Relevance in Neural Response Generation
- 《国际贸易术语解释通则》概述中关于2000年通则的主要内容
- MSP430F149程序——RS485
- 如何在Word项目符号列表中将图片用作项目符号
- word中“项目符号”和后面的文字间隔太远
- android定时器课设报告,数显定时器课程设计报告.doc
- 认真过好你的二十几岁
- Android 函数响应式编程(RxJava3)