数字后端知识点扫盲——Floorplan
本文转载自:数字后端物理设计(一):Floorplan - 知乎 (zhihu.com)https://zhuanlan.zhihu.com/p/264899580
Floorplan,中文翻译:布局规划,位于数字后端的最前部。
Floorplan一般分为Full Chip level FP和Block Level FP
FCFP一般都是对一些大的芯片。BLFP主要对小芯片,或者大芯片的一个Block。
FP的重要性主要体现在对后续place/routing/drc/power的影响。一个良好的FP,或者说有经验的engineer做出来的FP。会对之后的流程特别有帮助,Floorplan就像是在建房子的时候打地基,地基打的不好不稳,后面的房子也有风险,严重情况甚至会推倒重来。
Block level Floorplan:
先说相对简单的BLFP,BLFP主要有一下几个部分组成
A:Block size/ pin location defination
顾名思义,harden block的大小,一般会以cell count的数量来限制harden的大小,比如 有的公司会限制harden的cell数量不能大于300w。pin脚的摆放位置。
B:ram & macro placement
C:physical cell insertion
物理单元的插入
D:Build PG network
注意事项:
1:关于A,大部分block owner不需要懂这个,了解即可,会有其他人帮你定义好
2:关于B,按照优先级,先放那些macro,后放那些macro,每个公司(甚至每个工程师),都有自己的一套摆放ram/macro的规则,但是需要严格的遵守摆放规则。
3:关于 C,物理单元一般指ENDCAP和TAPCELL这两种,EDA工具可以处理这一步,偶尔需要人工参与,关于这些物理单元的功能,有兴趣的可以查一查。
4:关于D,芯片供电的规划,绝大部分在这一步完成了。
5:一般需要注意的是,ram之间不一定需要等间距,这些值需要根据pin/port/feedthrough/pg template等的情况具体分析而定。
6:最新版的innovrus mixplacement,已经支持tool直接布局了。
FullChip Floorplan:
FCFP一般大型的芯片才会使用FCFP,由于大型芯片逻辑复杂,不能实现扁平化的后端设计,必须要通过分层设计(Hierachical Design)来实现,原则上FCFP中没有复杂的逻辑存在,把工作内容聚焦到FCFP上,其余绝大部分的芯片逻辑都划分到各block内部。
FCFP一般包含:
A:Block划分(split)
B:Block之间走线以及pin位置定义
C:Timing Budgeting and flops insertion(时间预算和触发器插入)
D:Other analog macro placement
注意事项:
1:以上只是简单示例,真实情况要复杂=很多很多。
2:如果存在Multi powerdomain,每个block只能放置在各自power domain内
3:flop insertion要按照Budgeting去做(触发器插入要有预算)
4:block划分完,还需要block owner feedback是否可行,一般会进行很多轮的迭代才能确定合适的block size和pin location。
5:keep an eye on reuse block(关注重用block)
好的,到这里简单介绍了Floorplan,FP是一个需要多次迭代才能做好的步骤,多多尝试,总能调出一个不错的FP。
实际工作中所遇到的问题远远比博客所涉及到的复杂。
我的工作是前端设计,学习一些后端知识,欢迎从事后端工作的前辈评论区点评。
数字后端知识点扫盲——Floorplan相关推荐
- 数字后端知识点扫盲——NDM
今天在和后端讨论一个问题的时候听到一个新名词,NDM,我不懂,于是查阅了一些博主的blog,同时记录一下我的理解. 1:什么是NDM呢? 后端的物理设计需要读取的信息除了逻辑信息以外,还有floorp ...
- 数字后端知识点扫盲——芯片harden block的划分
后端在floorplan阶段,如何摆放macro是一个很重要的问题,如果采用层次化设计,对于每一个block来说都需要在block内部把锁分配的macro摆好,如果某一个block里的macro很多, ...
- 数字后端知识点扫盲——芯片行业中wafer,die,cell的概念
芯片的生产制造以客户为中心,下图是芯片生产制造简化流程. 今天,我来介绍一下芯片行业中几个关键的术语:wafer,die,cell的概念与区别. wafer:就是大家说的晶圆,晶圆的成分是硅,硅是由石 ...
- 数字后端知识点扫盲——HVT/SVT/LVT cell
知乎上有位大佬,领导要求做一个实验,在design进行综合的时候,只允许使用SVT cell,不允许使用LVT cell,实验结果出乎意料. 先介绍一下背景,现在的design对功耗的要求很高,代工厂 ...
- 数字IC后端设计实现floorplan及powerplan规划
数字IC后端设计实现floorplan及powerplan规划 文章右侧广告为官方硬广告,与吾爱IC社区无关,用户勿点.点击进去后出现任何损失与社区无关. 今天是一年一度的 "双十一&quo ...
- 数字IC后端实现TOP Floorplan专家秘籍
数字IC后端实现TOP Floorplan专家秘籍 文章右侧广告为官方硬广告,与吾爱IC社区无关,用户勿点.点击进去后出现任何损失与社区无关. 2020 年是不平凡的一年,新冠疫情战役也还未结束.目前 ...
- 秒杀数字后端实现中clock gating使能端setup violation问题
秒杀数字后端实现中clock gating使能端setup violation问题 文章右侧广告为官方硬广告,与吾爱IC社区无关,用户勿点.点击进去后出现任何损失与社区无关. 点击标题下「蓝色微信名」 ...
- 项目后期踩到这些坑,原来可以这么简单处理(数字后端实现救火篇)
项目后期踩到这些坑,原来可以这么简单处理!(数字后端实现救火篇) 文章右侧广告为官方硬广告,与吾爱IC社区无关,用户勿点.点击进去后出现任何损失与社区无关. 最近一直在帮同事解决各种问题.由于临近项目 ...
- 教你彻底搞懂ARM Cortex-A75 CPU的数字后端实现报告
教你彻底搞懂ARM Cortex-A75 CPU的数字后端实现报告 文章右侧广告为官方硬广告,与吾爱IC社区无关,用户勿点.点击进去后出现任何损失与社区无关. 下图为 ARM 公司 release 的 ...
最新文章
- pandas高级处理-合并
- 在Centos8 中使用Stratis管理本地存储(一)
- ormlite android studio,OrmLite-android入门体验
- Cocos2d-x 3.2 Lua演示样例FontTest(字体測试)
- 023_jdbc-mysql的CRUD操作
- Linux 下gedit编辑器的使用
- java数组是否包含某字符串_js判断数组是否包含某个字符串变量的实例
- 在mysql数据库中,多表查询,事务,DCL,
- zabbix-2.0.8日常巡检-检测项目状态
- 人际沟通最忌讳一脸死相【转】
- php 按位左移,PHP位运算符
- 贵州:2018经济增速继续领先 2019“九字真言”主攻高质量
- RabbitMQ-Java实现Publish/Subscribe订阅模式
- 转载:ReferenceEquals, == , Equals 区别
- 什么是运行时Runtime、运行时库Runtime Library、运行时环境Runtime environment
- crontab播放音乐没声音
- AlertManager配置参数解析
- 网站打开速度的查询 测试
- 机器学习--SVM支持向量机
- js获取当前时间的前几天时间