P&R 3
Floorplan:
要做好floorplan需要掌握哪些知识跟技能?
通常,遇到floorplan问题,大致的debug步骤跟方法有哪些?
如何衡量floorplan的QA?
Floorplan是后端实现的起始步骤,是P&R的先决条件,通常Trial Run的目的也是为了把FP固定。因此,在做FP的时需要从以下几个方面准备,第一方面收集Physical“规则”,这其中包括Design Rule,Package Rule,IP Guide,IO Guides等等,只有优先知道了限制条件,在限制条件内做FP才是有意义的。第二个方面是关于Design的需求,Data Flow决定module的位置,低功耗设计要求决定FP时要考虑的Power Domain以及相应的低功耗设计的诉求。
如何衡量FP的QA,通常我们会把P&R的结果作为相应的标准,其中Feasibility是很重要的一项,另外就是PPA的体现。另外,FP是后端流程中,特别体现个人风格的点,因此需要具有“美感”,具有让人一眼下去所能看到的“用心”程度,这个可能也是FP QA的一方面。
FP的Debug方向,倒是通常由于后续问题来修改FP。
Placement:
要做好placement需要掌握哪些知识跟技能?
通常,遇到placement问题,大致的debug步骤跟方法有哪些?
如何衡量placement的QA?
在数字后端实现中,有个原则,问题越早解决越好。FP是起点,Placement是接下来的重要一步。知识跟技能,所有的Tool的user guide上面都有大致介绍,概括来讲,需要综合考虑timing和physical两个方面。因此,Placement Guide,Placement的策略选择(Two pass flow,In-design OPT,甚至和前端综合工具的Physical Aware的配合等),是否需要带入CTS之后的一些问题的解决方案(比如clock gating timing部分,比如考虑CTS的routing资源的预估)等等决定Placement的结果。
通常做完Placement,单纯从这一步需要关注的是congestion map,timing QoR等。再详细的便是Module的位置,是否有被拉开的模块,为什么被拉开。是否有Tool无法修复的Timing, DRC,是否和FP相关,等等。现在深微纳米的工艺,单纯的从一步的结果已经很难综合评定此步的QoR,所以还是建议整个flow run完后再作相应的调整。当然如果CongestionMap或者timing QoR 在PL Stage已经暴差了,需要停下来分析。
Place的问题分为几类:
Congestion问题,这个问题要分析是否是FP造成的,还是因为Placement的Guide, Region之类的问题造成的。一些Channel的位置可能会有congestion的问题,需要Check是否正确使用了相应的Blockage。
Timing问题。主要看看Block的分布位置是否合理。Timing Path的走向是否合理等。
Check Area Increasement,看看新增的面积是否合理。是否由于过约等引入不必要的问题。
Check关键Module的位置和分布比如Clock Gen的cell等。
另外Placement阶段要为CTS做一定的准备,需要提前考虑Clock Gating不够balance可能引入的timing问题
CTS:
要做好CTS需要掌握哪些知识跟技能?
通常,遇到CTS问题,大致的debug步骤跟方法有哪些?
如何衡量CTS的QA?
CTS是PR flow中涉及design知识最多的步骤。做好的CTS是为了更好地收敛Timing,减低功耗等等,其前期准备,需要了解clock structure,需要了解DFT的 clock structure,需要知道Design CTS的Spec需求(比如使用什么CTS cell,CTS的timing DRC constraints如何设置,NDR如何设定,是否需要Shielding,Block/IP内部的tree的处理方式,等等)。当然,也需要对工具feature有相应的理解,才能在知道你要长成什么样的tree的前提下,去用Tool完成相应的工作。
CTS的QA,涉及两个方面,一是单纯的Tree,一个是基于这个Tree 的timing和Physical。单纯从Tree的角度,需要考虑Clock的latency,skew,甚至power等等。从统筹的后端实现来看时,需要考量Tree对Design的影响,是否有比较大的hold,是否有useful skew可以借来解决Setup,是否因为CTS的问题引入Physical的risk,比如为了balance tree而引入的局部集中的delay cell所带来的congestion问题。再比如跨corner间的balance情况。
Route:
要做好Route需要掌握哪些知识跟技能?
通常,遇到Route问题,大致的debug步骤跟方法有哪些?
如何衡量Route的QA?
Routing的Flow相对比较独立固定,基本原则是先绕什么,后绕什么,如何设置CrossTalk option等,另外还有些DFM的VIA处理,Cross Talk Reduction等。
通常的Routing问题,第一可能是大量的DRC出现,这个或许和FP,以及Placement, CTS相关,分析原因之后,可能要回溯到前面的步骤来完成。
另外可能的是SI的问题,引入SI可能有很多种情况,局部的SI以及通篇的SI,data path的SI或者clockPath的SI,这些都要分开来看。同样可能需要回到FP和PL及CTS来解这些问题。
Route的QA,就看Timing和Physical的结果吧。
DRC:
要做好Route需要掌握哪些知识跟技能?
通常,遇到Route问题,大致的debug步骤跟方法有哪些?
至于知识技能,我能说会看lef doc就可以了么,不要懒有啥问题就问。另外,在route时候工具的每一步行为都要清楚。
Debug drc就一点,分得清是谁的问题,是工具问题还是DB或者flow的问题,还是signoff工具的问题; 工具问题的话是place的问题,还是route的问题,然后看有没有work around;如果是其它问题需要找designer或者foundry确认。
P&R 3的更多相关文章
- [原]CentOS7安装Rancher2.1并部署kubernetes (二)---部署kubernetes
################## Rancher v2.1.7 + Kubernetes 1.13.4 ################ ##################### ...
- 利用python进行数据分析2_数据采集与操作
txt_filename = './files/python_baidu.txt' # 打开文件 file_obj = open(txt_filename, 'r', encoding='utf-8' ...
- Django项目:CRM(客户关系管理系统)--81--71PerfectCRM实现CRM项目首页
{#portal.html#} {## ————————46PerfectCRM实现登陆后页面才能访问————————#} {#{% extends 'king_admin/table_index.h ...
- 【翻译】Awesome R资源大全中文版来了,全球最火的R工具包一网打尽,超过300+工具,还在等什么?
0.前言 虽然很早就知道R被微软收购,也很早知道R在统计分析处理方面很强大,开始一直没有行动过...直到 直到12月初在微软技术大会,看到我软的工程师演示R的使用,我就震惊了,然后最近在网上到处了解和 ...
- 应用r.js来优化你的前端
r.js是requireJS的优化(Optimizer)工具,可以实现前端文件的压缩与合并,在requireJS异步按需加载的基础上进一步提供前端优化,减小前端文件大小.减少对服务器的文件请求.要使用 ...
- 使用R画地图数据
用R画地图数据 首先,从这里下载中国地图的GIS数据,这是一个压缩包,完全解压后包含三个文件(bou2_4p.dbf.bou2_4p.shp和bou2_4p.shx),将这三个文件解压到同一个目录下. ...
- c#使用Split分割换行符 \r\n
c# 使用Split分割 换行符,方法如下(其余方法有空再添加): string str = "aa" + "\r\n" + "bb"; ...
- JAVA调用R
JAVA很适合开发应用系统,但是数学建模和计算能力非其所长,如果该系统需要进行大量的统计或者优化的计算,调用R是一种很好的方式.JAVA负责系统的构建,R用来做运算引擎,从而实现应用型和分析性相结合的 ...
- Windows Form调用R进行绘图并显示
R软件功能非常强大,可以很好的进行各类统计,并能输出图形.下面介绍一种R语言和C#进行通信的方法,并将R绘图结果显示到WinForm UI界面上. 1 前提准备 安装R软件,需要安装32位的R软件,6 ...
- react-native Simulator com+r不能刷新模拟器
这个问题是我按了com + shift + K 调出Simulatior 的时候出现的, 然后虚拟机就刷新不了了, 怎么按com+r都不好使. 在Simulatior的菜单栏选择Hardware -- ...
随机推荐
- Appium+python自动化-元素定位uiautomatorviewer的使用
前言 环境搭建好了,下一步元素定位,元素定位本篇主要介绍如何使用uiautomatorviewer,通过定位到页面上的元素,然后进行相应的点击等操作. uiautomatorviewer是androi ...
- ECMAScript基本语法——⑤运算符 一元运算符
++自增 在前先自增,再运算 在后先运算,再自增 --自减 在前先自减,再运算 在后先运算,再自减 +正号,-负号.表示数字的正负 注意:在JavaScript中,如果运算数不是运算符要求的类型, 那 ...
- 简单的Spring1.0小配置
开始Spring AOP的小理解 拿一个小例子来说吧! 老师上课 这样的例子! 老师上课--就是一个核心的业务! 那么上课之前需要点名,天气太热,需要开空调! 这个时候,一个老 ...
- 理解Login函数
_LoginPartial.cshtml文件 其中 <li>@Html.ActionLink("Log in", "Login", "Ac ...
- python3 读取串口数据
python3 读取串口数据 demo import serial import time ser = serial.Serial("COM3",115200,timeout = ...
- 《Java程序设计》第十一周学习总结
20175334 <Java程序设计>第十一周学习总结 教材学习内容总结 第十三章 URL类 一个URL对象通常包含最基本的三部分信息:协议.地址.资源. URL对象调用 InputStr ...
- SaltStack常用的模块
目录 1. SaltStack模块介绍 2. SaltStack常用模块 2.1 SaltStack常用模块之network 2.1.1 network.active_tcp 2.1.2 networ ...
- 题解【2.23考试T1】div
1. div[题目描述] 这是一道传统题,源代码的文件名为 div.cpp/c/pas. 给定一棵树,你要判断是否存在一条边,使得割掉这条边后,这棵树被分成了点数相等的两部分,并且如果存在,请你找到这 ...
- scrapy 框架基本使用
scrapy简介: Scrapy是一个为了爬取网站数据,提取结构性数据而编写的应用框架. 其可以应用在数据挖掘,信息处理或存储历史数据等一系列的程序中.其最初是为了页面抓取 (更确切来说, 网络抓取 ...
- Win10 系统运行VsCode出现白屏的问题(亲测有效)
Win10 系统运行VsCode出现白屏的问题(亲测有效) 新买的本本,昨天VScode运行还正常,今天打开一直白屏,什么都没有,只有几个小格格,也不是卡死的那种,可以轻松关闭, 刚开始以为版本问题, ...