591954064的个人空间 https://blog.eetop.cn/864347 [收藏] [复制] [分享] [RSS]

空间首页 动态 记录 日志 相册 主题 分享 留言板 个人资料

日志

RCX Runset(来源网上)

热度 10已有 231 次阅读| 2025-7-22 14:11 |个人分类:资料收集|系统分类:芯片设计

RCX Runset1

Q1:准三维方法是啥?

o就是把整个三维结构拆成一层层的二维平面来处理(像是2.5D那种)。

o竖着看呢,用现成的公式套(比如平行板电容模型),横着看就用场求解器去算。

o最后把好几层二维的结果堆起来,假装是三维的。这样速度是快了,但精度嘛,就得牺牲点儿。

Q2:为啥准三维方法精度有误差?

·模型太简单了:有些复杂结构的电场耦合被忽略了(比如边边角角不是方方正正的,或者曲面效果)。

·层和层之间是近似处理的:竖着用的那些公式,没法儿完全模拟真实的电场分布(比如高度有变化或者结构是斜的)。

·网格划分跟不上:二维网格很难对付三维那些不规则形状。

Q3:工艺截面图(Cross-Section)咋描述?

·里面都有啥:

1.每层是啥得标清楚:像Metal1Via1Poly这些材料是啥,多厚,介电常数多少。

2.形状得画出来:导线多宽、离多远,绝缘层多厚,过孔在哪儿。

3.关键尺寸得标上:那些重要的尺寸(CD)和设计规则要求的值。

·工具咋输入:通常是把GDSII图层对应到工艺文件(Techfile)里,或者用PDK(工艺设计套件)来定义堆叠结构。

Q4:主流工具咋描述工艺?

|工具|格式|关键内容|

|----------------|-----------------------------|------------------------------------------|

|Synopsys StarRC| NXTGRD/ITF/Techfile | 说清楚每层是啥材料、多厚、导电好不好、介电常数多少,还有规则(比如最小间距) |

|Cadence Quantus| LEF/DEF + Techfile | 根据图层对应电阻电容模型,支持QRC规则文件 |

|Siemens Calibre| xRC Rule File (RULES) | SVRF语法来定义提取规则和工艺参数 |

Q5:主流工具咋运行?

·Calibre xACT`calibre -xrc -hier -3d -input runset.rules -gds layout.gds`

·StarRC`read_itf tech.itf`

          `read_parasitic_tech tech.tch`

          `extract -pattern_map layer.map`

·Quantus QRC`set_tech -tech_file tech.tf`

              `extract -config qrc_config`

RCX Runset2

Q1:咋验证Runset准不准?

·跟黄金数据比:跟场求解器(比如Raphael)的结果对一下。

·做测试结构实测:在测试芯片(Test Chip)上实际量电容电阻值。

·查寄生一致性:把提取出来的网表跟原理图仿真结果(比如SPICE LVS + 仿真)比比看。

Q2BEOL测试结构(Test Pattern)长啥样?测啥?

·典型结构:

o蛇形线(Meander):测导线电阻和旁边的电容。

o叉指结构(Comb):测同一层里面导线之间的耦合电容(C_c)。

o金属平行板:测不同层之间的电容(C_via)。

·组合参数:用不同的线宽、间距、层组合,专门覆盖设计规则允许的极限情况。

·精度咋比:

o看相对误差。

o做相关性分析:线性拟合的斜率最好接近1.0

Q3MEOL测试结构(Test Pattern)分析啥?

·包含的器件:跟晶体管直接连的那些层(比如ContactLocal Interconnect)。

·PCell自动生成:

oSKILL或者Python脚本,生成不同大小、不同间距的Contact(接触孔)和Via(通孔)阵列。

·内部电容分析:

o分别提取包含晶体管内部寄生电容(比如栅极电容)和不包含的网表。

o对比仿真结果(如果延迟差超过5%,模型就得改)。

Q4:自动化精度分析软件咋用?

·工具流程:`import rcx_analyzer`

          `analyzer.compare_data(golden_data, extracted_data)`

          `analyzer.plot_error_distribution()`

          `analyzer.generate_report()`

·看啥指标:平均绝对相对误差(AARD)、95%分位的误差值。

RCX Runset3

Q130%误差咋分析?

1.结构拆开看:把电路分成小块结构(比如单根线、交叉的线、环栅结构)。

2.参数分开提:用3D工具当黄金标准,单独提取这些关键结构的电容。

3.找误差在哪儿:

o如果交叉结构误差大 耦合电容模型有问题。

o如果长线电阻误差大 电阻分段算法不行。

o如果器件边上误差大 → MEOL提取规则搞错了。

Q2LVS图层重叠问题咋避免?

·图层定义优化:

o用逻辑运算(比如ANDNOT)保证图层之间不重叠。

o例子:`METAL1_clean = METAL1 NOT VIA1`

·Runset检查:LVS报告报“SHORT”错误得先修好。

Q3Conformal结构描述错了啥样?

·错法:把对称结构标成了不同层(比如M1_topM1_bottom没合并)。

·结果:电容提取漏掉了相邻层的耦合(比如忽略了上下两层M1之间的耦合)。

Q4:器件内部电容忘了忽略啥后果?

·案例:没把MOS管栅极内部电容(C_gg)排除掉。

·影响:总电容算大了,仿真出来的延迟也偏大(比如反相器链延迟误差超过15%)。

Q55Corner啥意思?

|Corner|意思|参数方向|

|------------|------------------|------------------|

| RCbest | 互连速度最快 | R↓ + C↓ |

| RCworst | 互连速度最慢 | R↑ + C↑ |

Q611Corner里的CCbest/CCworst啥意思?

·CCbest:耦合电容最小(C_c↓),串扰噪声最乐观(最小)。

·CCworst:耦合电容最大(C_c↑),串扰噪声最悲观(最大)。

·啥时候用:分析对噪声特别敏感的电路(比如SRAM、模拟模块)。

RCX Runset4

Q1:咋在版图上直接看寄生参数?

·工具方法:

oCadence virtuoso + Quantus Visualization:高亮想看的线网,会显示寄生R/C的值。

oSynopsys Custom Designer:用“Net Annotation”显示节点电容值。

Q2:寄生参数跟图形咋关联?

·操作步骤:

1.选中目标线网(比如Metal2的线)。

2.运行`show_parasitics -net NET_NAME`命令。

3.图形界面上就会叠加上显示R/C标签(比如C=0.12fF, R=3.5Ω)。

Q3:耦合电容预估值咋手动验证?

·手动算:

o公式:`C_coupling = ε * A / d`A是相邻面积,d是间距)。

·工具验证:

o在版图上量间距(d)和重叠长度(L)。

o对比提取值跟公式算的值(误差最好小于10%)。

Q4VGDS工具自动干啥?

·自动功能:

o自动找附近的线网,生成耦合报告(比如:NetA vs NetB: Cc=0.08fF)。

o3D视图显示电场分布(需要OpenGL支持)。

·咋用:`vgds -tech_file tech.tf -layout layout.gds`

       `vgds::analyze_coupling -range 2.0 -report coupling.rpt`

RCX Runset5

Q13D ICTSV是啥?

·3D IC:把好几层晶圆竖着堆起来(比如cpuMemory),用硅通孔(TSV)连起来。

·TSV:就是穿过硅片的金属柱子(直径1~10μm),负责层和层之间的电连接。

·堆叠应用:

Q2TSV提取工具有啥弱点?咋克服?

|弱点|解决方法|

|------------------------|----------------------------------|

|忘了算耗尽层电容| 集成半导体方程求解器(比如Sentaurus|

|没考虑温度分布影响| 跟热分析工具(比如ANSYS RedHawk)一起用 |

|高频效应算得太简单| 用全波电磁场求解器(比如HFSS+SIwave|

Q3TSV电压相关的电容模型咋建?

·公式:`C_{tsv}(V) = \frac{C_{ox} \cdot C_{dep}(V)}{C_{ox} + C_{dep}(V)}`

o其中`C_dep(V) ∝ √(V)`(耗尽层电容会跟着电压变大)。

Q4:多个TSV快速场求解咋加速?

·加速方法:

o用等效边界法(BEM)压缩矩阵求解(比如FastCap)。

o用机器学习拟合(比如训练个生成模型来代替仿真)。

Q5:多个晶圆的网表咋合并?

·按线网名合并:

o要求:每一层的线网名字必须全局唯一(比如加个层级前缀)。

o适用:数字电路(标准单元自动布局)。

·按坐标合并:

o提取晶体管坐标,按位置匹配连接点(需要精度对准)。

o适用:模拟电路/自定义版图。

RCX Runset6

Q1:为啥要RC Simplify(简化)?

·目的:减少仿真节点,避免SPICE算不动(比如从十亿+节点简化到百万节点)。

·原理:把小电阻短路、弱电容开路,在保持电路效果的前提下简化连接关系。

Q2Simplify咋做?

·电阻短路:如果R < R_thresh(比如),就把节点合并(可以设个电压容忍范围)。

·电容开路:如果C < C_thresh(比如0.01fF)或者RC延迟影响很小(小于总延迟的百分之多少),就把电容删掉。

·流程例子:`simplify_rc -res_threshold 0.5 -cap_threshold 0.02`

Q3Plumb工具咋用?

·运行:`plumb -netlist input.sp -report report.txt`

       `plumb::set_simplify -res 0.2 -cap 0.01`

·结果看啥:

o报告节点合并了多少(比如Nodes Reduced: 85%)。

o检查关键路径延时变了多少(要求ΔDelay < 1%)。



点赞

评论 (0 个评论)

facelist

您需要登录后才可以评论 登录 | 注册

  • 关注TA
  • 加好友
  • 联系TA
  • 0

    周排名
  • 1

    月排名
  • 0

    总排名
  • 1

    关注
  • 4

    粉丝
  • 2

    好友
  • 12

    获赞
  • 2

    评论
  • 150

    访问数
关闭

站长推荐 上一条 /1 下一条


小黑屋| 手机版| 关于我们| 联系我们| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2025-8-2 20:00 , Processed in 0.011046 second(s), 9 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
返回顶部