数字IC后端物理验证PV | TSMC 12nm Calibre Base Layer DRC案例解析

基于TSMC 12nm ARM A55 upf flow后端设计实现训练营将于6月中旬正式开班!小班教学!目前还有3个名额,招满为止!有需要可以私信小编 ic-backend2018报名。吾爱IC社区所有训练营课程均为直播课!

这个课程支持升级成双核A55 Top后端训练营!

T12 A55后端训练营简介:

主时钟频率:>= 2.5GHz tt1v85c +rcworst85c

设计规模:140万instance

Power Domain数量:2个

实现方式:低功耗模块级UPF Flatten实现 (UPF Flow)

项目成果:Timing Signoff Timing Clean,DRC,Antenna,LVS clean

涉及EDA工具:Innovus,Starrc,PrimeTime,Calibre

授课形式:直播课+每日问题解答+远程协助。每周直播2次,每次近2小时。

课程费用:原价7900元(现价6900元)


今天给大家分享TSMC 12nm高频遇到的几个base layer drc violation及其解决方法。这些DRC Violation均来自训练营学员做项目遇到的问题。

1)PP.S.1/NP.S.1

在传统28nm工艺实现中,两个tapcell或endcap 贴在一起并不会引起drc violation。但在这个12nm先进工艺中,tapcell是不允许出现abutment的情况。

由于PR工具Innovus中看不到base layer的层次,所以我们通过calibre查看gds可以看到如下所示的PP layer间距不满足设计规则要求。

解决这类Calibre DRC Violation主要有两种方法:

  • 在PR Flow的floorplan阶段添加tapcell添加avoidAbutment即可自动解决这类drc violation

addWellTap -cell TAPCELLBWP6T16P96CPD -cellInterval 48 -checkerBoard -check_channel -prefix WELLTAP -avoidAbutment

  • 手工挪tapcell

这种适用于DRC Violation数量不多的场景,比如这个案例就可以使用这种方法。

2)VTL_N_W.1.1/VTL_P_W.1.1

在 TSMC12nm 实现中,当相同VT cell 之间间距小于 4 个 site 的时候,这个时候中间位置就只能加相同阈值的 stdcell 进去,比如下图所说的,ULVT 和 ULVT 之间的间距如果小于 4 个 site 的宽度,也就是 4 个 poly pitch 间距,这个时候中间就必须插 ulvt,不能插其他阈值的 standard cell,否则就会有VT的间距问题。当间距大于 4 个 site 宽度,这个时候就没有限制了。

这个在咱们12nm A72后端训练营直播课也是反复强调过这点。我们需要在placement阶段加入对应的cell edge spacing约束。

我们把Calibre DRC结果导入Innovus后,可以看到的确有两颗RVT之间存在一个较小的LVT Filler Cell。

所以,这个DRC Violation出现的原因有两个。第一个是工具能力有限,最后会残留几个filler vt插错的情况,这个类似DRC无法完全修干净一样。第二个是placemnet阶段没有加好placeMode导致大规模这类drc violation的情况。

3)PO.S.22.6

这类DRC Violation是因为在floorplan阶段没有指定好一个合理的core2die值。core2die和memory 的 halo 宽度都需要设置为 0.048 的整数倍。这样做之后,我们就可以从源头上解决这类floorplan带来的base layer drc。

4)PB.L.1

通过Calibre DRC Violation的描述,我们知道这是关于M2_P48和M3_P48 Layer length不够的问题。

如果一开始看不太懂这类drc violation,我们可以查阅T12 design manual中对应drc violation的文字描述和图形示意图。

出现这类DRC Violation主要原因有两个。

第一个是报P48 Layer没有盖好!

解决方案如下:

createSpecialDrcRegion -layer M2_P48 -extendOuterY 0.2 -extendOuterX 0.2 -insts [dbGet [dbGet -p2 top.insts.cell.baseClass block].name]

createSpecialDrcRegion -layer M3_P48 -extendOuterY 0.2 -extendOuterX 0.2 -insts [dbGet [dbGet -p2 top.insts.cell.baseClass block].name]

第二种是设计中存在未摆放的TCD 或memory!本案例就是学员在添加TCD Cell时存在一颗未摆放到core区域的TCD cell。

相关推荐
IC拓荒者12 天前
英伟达NVIDIA数字IC后端笔试真题(ASIC Physical Design Engineer)
nvidia·数字ic后端·ic后端实现·ic秋招笔试·ic秋招·ic笔试真题·physical design
IC拓荒者5 个月前
低功耗数字IC后端设计实现典型案例| UPF Flow如何避免工具乱用Always On Buffer?
芯片设计·数字ic后端·数字后端培训·innovus·低功耗设计·ic培训·upf flow
IC拓荒者9 个月前
数字后端设计实现之自动化useful skew技术(Concurrent Clock &Data)
芯片设计·数字ic后端·innovus·ic培训·useful skew·ccd·时序优化
IC拓荒者9 个月前
数字后端设计实现 | 数字后端PR工具Innovus中如何创建不同高度的row?
芯片设计·数字ic后端·ic后端实现·芯片设计实现·innovus·低功耗设计·low power
IC拓荒者9 个月前
数字IC后端实现之Innovus TA-152错误解析(分频generated clock定义错误)
数字ic后端·innovus·时钟产生电路·分频电路·分频时钟·generated clock
IC拓荒者9 个月前
数字IC后端实现之快速获取innovus中drv violation的所有net list
数字ic后端·max_transition·数字后端培训·innovus·drv violation
IC拓荒者9 个月前
数模混合SoC芯片中LEF2Milkyway的golden flow
数字ic后端·数模混合芯片·lef转milkyway·数字后端设计导入
IC拓荒者1 年前
数字IC后端实现 |TSMC 12nm 与TSMC 28nm Metal Stack的区别
芯片设计·soc设计·数字ic后端·ic后端实现·芯片设计实现·模拟版图