如何看懂congestion map
最近有一些同学问congestion map怎么看。这里详细介绍一下。
congestion map可以非常直观的看到,绕线有问题的区域。
另外congestion map对于及早发现floorplan的问题有非常重要的意义,有经验的工程师都是在place阶段发现floorplan存在的问题。可以说90%的问题,是在place阶段解决的。到绕线阶段,在解决剩下的10%的问题。为什么还有10%的绕线问题?这是因为congestion map和最终的绕线有一定的偏差。
以ICCII为例,工具在进行global route时,会将floorplan划分为多个矩形区域(矩形区域叫GRC,Global route cell的缩写)。你可以把这些GRC想象成你家里的瓷砖。
对于ICCII来说,GRC是边长等于row的高度的正方形。
global route是做什么呢? 其实就是为每一根绕线分配好所要走的GRC。比如你想从卧室走到客厅,global route就是给你指定要走哪几块瓷砖。
如图,Global Route相当于指定了一个由GRC组成的通道,而detail route就在这个通道中的详细的路线。
以下图中的congestion map为例:
这里把右下角区域放大:
图中,左侧数字表示的是overflow,右侧的数字表示GRC的个数。
关于overflow的计算有两种方式可选:
图中第一种要比第二种悲观。比如,可能对于某一个GRC的M5,overflow为1,但是在M4层,可能还有空余的track。如果按照第一种的计算方法,overflow为1,但是按照第二种,overflow则为0或者是负值. 比如,对于同样的design,采用第二种方法,overflow就会变成这样
结果看起来要比第一种好很多。
我们把congestion map放大
我们会看到长度等于row高度的短线,并且上面标有一些数字。其实,这些短线是GRC的一个边。GRC是个正方形,由于我们只显示了overflow大于1的边,所以,这里我们只能看到一条。
我们可以把所有的边都显示出来。
这样我们就能清楚的看到GRC的所有的边了。
而里面所有的数字是个分数,分子表示的是对于这条GRC的边,overflow是多少,分母表示的是这条边总共能通过的net的条数。
因此,对于分子来说,依据这两种不同的算法,值会有所不同。但是分母不会变。
如何看懂congestion map相关推荐
- python进阶(小白也能看懂)——Map、Filter、Reduce
python进阶(小白也能看懂)--Map.Filter.Reduce 第三篇 Map.Filter.Reduce是python中常用的函数,使用这些函数能够给我们带来很多便捷. Map map(fu ...
- 一文看懂 webpack 的所有 source map !
一直以来对source map 都懵懵懂懂, 被webpack 所提供的多样的source 给乱花了眼. 这次就决定来一一尝试一下各种source map的区别 什么是source map 现代的前端 ...
- 大话卷积神经网络CNN,小白也能看懂的深度学习算法教程,全程干货建议收藏!...
来源 | 程序员管小亮 本文创作的主要目的,是对时下最火最流行的深度学习算法的基础知识做一个简介,作者看过许多教程,感觉对小白不是特别友好,尤其是在踩过好多坑之后,于是便有了写这篇文章的想法. 由于文 ...
- c语言写贪吃蛇什么水平_学了一些C语言,也不知道自己学到什么程度,自己想写个贪吃蛇但是写不出来,想看懂下面这个程序,求解释...
已结贴√ 问题点数:20 回复次数:3 学了一些C语言,也不知道自己学到什么程度,自己想写个贪吃蛇但是写不出来,想看懂下面这个程序,求解释 #include//基本库 #include//系统库 #i ...
- 追源索骥:透过源码看懂Flink核心框架的执行流程
https://www.cnblogs.com/bethunebtj/p/9168274.html 追源索骥:透过源码看懂Flink核心框架的执行流程 前言 1.从 Hello,World WordC ...
- 一文看懂:互联网产品分析,该如何做?
总有同学们在抱怨:"说的是做产品分析,可实际上每天都在埋点,建表,写SQL,对口径,找bug,我分析啥了?到底啥是产品分析?"今天简单分享一下. 所谓产品分析,特指对互联网产品:A ...
- 初学者也能看懂的 Vue2 源码中那些实用的基础工具函数
1. 前言 大家好,我是若川.最近组织了源码共读活动,感兴趣的可以加我微信 ruochuan12 想学源码,极力推荐之前我写的<学习源码整体架构系列>jQuery.underscore.l ...
- 初学者也能看懂的 Vue3 源码中那些实用的基础工具函数
1. 前言 大家好,我是若川.最近组织了源码共读活动.每周读 200 行左右的源码.很多第一次读源码的小伙伴都感觉很有收获,感兴趣可以加我微信ruochuan12,拉你进群学习. 写相对很难的源码,耗 ...
- 看懂Oracle执行计划(转载)
转载自 写的很好,屯一波 最近一直在跟Oracle打交道,从最初的一脸懵逼到现在的略有所知,也来总结一下自己最近所学,不定时更新ing- 一:什么是Oracle执行计划? 执行计划是一条查询语句在Or ...
- c++ socket线程池原理_一篇文章看懂 ThreadLocal 原理,内存泄露,缺点以及线程池复用的值传递问题...
编辑:业余草来源:https://www.xttblog.com/?p=4946 一篇文章看懂 ThreadLocal 原理,内存泄露,缺点以及线程池复用的值传递问题. ThreadLocal 相信不 ...
最新文章
- [20180914]oracle 12c 表 full_hash_value如何计算.txt
- C语言之获取类型存储空间
- Meteor框架创建示例项目todos的问题
- WinAPI: SetTimer、KillTimer - 创建与移除高性能定时器
- poj 1251 Jungle Roads prim最小生成树基础
- ## 2018-2019-1 《信息安全系统设计基础》 20165232 20165231 20165235 实验五 通信协议设计...
- Java正则表达式语法规则(具体)
- 【SSM项目实战】航班订票系统SpringMVC+MyBatis+LayUI
- 矩阵L2,1范数及矩阵L2,p范数的求导
- 数字电子钟—VHDL 设计
- WMB Commands
- 用scratch编写游戏-数字华容道(不移动块法)
- 电视盒子做文件共享服务器,【当贝市场】智能电视盒子和PC电脑文件共享教程...
- 高并发,我把握不住啊!
- Mac下php-fpm重启方式
- IDEA中实现自动导包
- 申论中关于人物“精神”、“品质”的总结
- c语言写的一个恶意程序
- Linux下配置Samba服务器使用SMBv1或SMBv2协议
- F - Nastya and Door
热门文章
- flutter中的常见色值设置
- c lua语言教程,Lua教程(三):C语言、C++中调用Lua的Table示例
- 一个例子说明贝叶斯定理
- ESXi创建的虚机只能ping通自己IP无法ping通网关的问题排查
- 8月第1周基金排行榜 | TokenInsight
- 我的世界 Java1.12.2联机下载_我的世界1.12.2
- 用python简单的判断闰年,输出当前月份是多少天
- 前端程序员《HTML》学习笔记(3)之标签学习
- 茶叶文化网站设计与实现 HTML+CSS学生网页设计作业源码
- shadowgun的飘扬旗帜shader