P &R 12
Posted lelin
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了P &R 12相关的知识,希望对你有一定的参考价值。
Floorplan包含:
-
IO floorplan: 涉及板级设计、封装设计的交互,接口协议(timing相关),对一些高速接口需要做特殊考虑(如信号完整性等)。
-
Power plan:芯片的电源和低功耗设计方案、功耗及IR仿真。
-
Block floorplan:涉及设计结构,总线结构,时钟结构,数据流和timing。
-
Pin assignment:涉及data flow,timing,工艺。
Floorplan的问题主要有:
-
Large displacement相关的模块被摆放过远或逻辑detour,从而引入大量的buffering,进而导致area,routing和timing的问题。需要工程师对设计的数据流有一定的了解,将相关联的模块放在一起。
-
Congestion在局部区域有大量的走线经过,通常由于large displacement、local high density等原因导致。tool通常采用把集中的cell推开和绕线detour等方法解congestion。这样会对timing造成一定的影响。解决办法有:控制local density,给多扇入的cell加额外pading, reorder scan chain等。
个人认为floorplan的QA不是很好量化,通常通过timing, area, power和routing侧面反应出来。而且也是一个需要反复迭代,不断优化,折中的过程。
Placement:
要做好placement需要掌握哪些知识跟技能?
通常,遇到placement问题,大致的debug步骤跟方法有哪些?
如何衡量placement的QA?
Placement和floorplan关系比较紧密,floorplan确定后,placement基本也定型了,后端能做的就是加一些 physical / timing constraint或一些option来指导工具布局。
在新工艺中,placement需要考虑base layer drc的问题,因此需要对工艺,desig rule有了解。还需要对EDA工具的行为有深入的了解,明白什么样的行为会导致怎样的结果。
Placement的QA通常通过PPA (Performance,Power和Area)来衡量:
-
看timing是否满足,是否有综合工具考虑不到的情况出现。
-
看绕线资源,是否有较大的overflow,评估往下走是否会有布线拥塞的风险并进行调整。
-
看利用率变化情况,是否有density过高的情况,local density过高会导致后续步骤的设计存在不收敛的风险。
-
看功耗,各种vt单元之间的比例,评估是否满足设计指标,后续步骤是否还有优化空间。
CTS:
要做好CTS需要掌握哪些知识跟技能?
通常,遇到CTS问题,大致的debug步骤跟方法有哪些?
如何衡量CTS的QA?
做CTS需要了解芯片的时钟结构,STA,DFT,功耗分析等方面的知识。通常,时钟功耗在芯片功耗中占比很大,所以要尽量控制时钟树的功耗;clock skew 对 setup / hold 收敛至关重要,所以要利用并控制好clock skew。
CTS Debug:
-
检查CTS sdc的正确性,是否存在漏做时钟、过约束设计;
-
检查每个时钟的latency和级数是否在正常范围内,从物理上最远的时钟路径来看latency和级数是否合理,走线是否有detour,是否有大量的balance delay cell。通常在CTS之前,需要检查时钟单元的布局,及早发现detour的问题。
-
检查每个corner下的clock skew是否符合预期,是否存在不同corner下,由于RC / std cell variation引起的不符合预期的skew变化。
-
检查时钟单元是否有扎堆现象,较大的时钟单元容易引起IR问题。
-
检查时钟绕线是否符合预期,新工艺下通常采用Non defaul routing rule来做时钟绕线。
通常通过clock latency, clock skew, clock inst count, total clock net cap, clock power和timing(setup是否能满足,hold timing TNS是否合理) 来衡量CTS的QA。
Route:
要做好Route需要掌握哪些知识跟技能?
通常,遇到Route问题,大致的debug步骤跟方法有哪些?
如何衡量Route的QA?
要对EDA进行route有基本的了解,熟悉route的一些基本的步骤以及现阶段route的一些主流的算法,最好还要对所用工艺比较熟悉。熟悉DRC的check。
Route Debug:
-
DRC问题:看是否满足Design Rule Check,是否存在short 和metal layer drc,这方面需要对所用的工艺比较熟悉,要了解每一代工艺会出现哪些新的DRC,router需要对于新的工艺做哪些新的设置。
-
Timing问题:如果timing degrade 很多的话,需要看是否有detour,是否有很大的SI,也要检查trial route engine和real rc engine之间的correlation。
-
检查DFM相关信息,比如wire spread,NDR route,DFM via 比例等。
Route QA:
-
DRC数目是否足够小,是否在可控制的范围之内。
-
post route 和 pre route的timing correlation。
多说一句:Innovus nanoroute对于advanced node的routing有很强的handle能力,nanoroute route出来的design DRC会比较少,而且nanoroute是timing Driven的routing。
DRC:
要做好DRC需要掌握哪些知识跟技能?
通常,遇到DRC问题,大致的debug步骤跟方法有哪些?
如何衡量DRC的QA?
DRC与工艺、电器设计规则,版图知识密切相关,要对EDA tool、rule deck有深入了解,要清楚design 中用到的特殊器件,清楚设计中的供电情况。
DRC问题可以分为前段和后段:
-
前段主要是base layer的检查,在floorplan和powerplan完成后,尽快做一版粗略的placement,供baselayer DRC检查。
-
后段主要是metal layer的检查,通常EDA Tool 在routing时,所用的tech file能cover大部分metal layer的drc,存在的问题主要是density,还有和顶层模块拼接时出现的mis-match的问题。
一般简单的DRC问题可以根据design rule的描述进行修复,在debug复杂问题时:
-
先从rule deck入手,保证rule 版本和配置的正确性,电源,PAD指定正确。
-
确认input data是干净的,db在pr database里是clean的,IP中的特殊标识层是完备且正确的。
-
先清PG short, text问题;再解latch up,esd的问题
-
结合design rule说明文档,ERC报告等,具体分析。
衡量DRC QA:
-
LVS clean
-
Antenna clean
-
DRC/ERC不clean的地方经IP vender和foundry确认可以waive
以上是关于P &R 12的主要内容,如果未能解决你的问题,请参考以下文章