Cadence-617-系列-蒙特卡洛仿真

前言

Monte Carlo (蒙特卡洛)分析是一种器件参数变化分析,使用随机抽样统计来估算数学函数的计算方法。

Monte Carlo 分析需要一个良好的随机数源。这种方法往往包含一些误差,但是随着随机抽取样本数量的增加,结果也会越来越精确。


Monte Carlo 的意义

问题: 已经跑了 TT\FF\SS\FS\SF 完整工艺角,为啥还需要跑 Monte Carlo ?

以下图为例说明:

  1. TT\FF\SS\FS\SF 完整工艺角分别占据五个端角对应的位置,但并不是完备的全覆盖实际的工艺变化范围。

  2. 灰色的覆盖位置是 Monte Carlo 分析覆盖的工艺角范围,可完备分析到所有的工艺偏差,因此可得到电路的良率。

Monte Carlo 分析前准备

工艺库

Monte Carlo 分析是基于统计分析,需要 Foundry 提供关于工艺变化分布概率,因此首先需要检查工艺文件是否支持Monte Carlo分析。

仿真前,更改对应的器件模型section:

SMIC 工艺的 MOS 管的 section 为 mos_mc。

GF 工艺的 MOS 管的 section 为 fet_statistical。

……

Monte Carlo 仿真流程

仿真环境设置

step1:

Launch ADE XL

Click to add test 中添加一个仿真环境 ADE L 并设置好基本的 Model file 和 section, 如图中所示

step2:

在 adexl 环境中设置:

1
2
3
设置为 No Parasitics/LDE

必须勾选 Corners 中的 Nominal 选项,以标准工艺作为参考

step3:

在 adexl 环境中设置 Monte Carlo Sampling

1
2
3
4
5
Statistical Variation 选择 ALL, 就是两种偏差同时考虑

Number of points :填写要仿真的次数

其余的勾选参考下图:

结果分析

1
2
3
4
5
打开 adexl 的 Results 一栏

红色三角下选择 Detail, 可看到具体的仿真结果与波形,需要看波形点 plot 按钮

只有计算结果才能生成柱状图分析:如图右所示,图中会给出相应概率区间内的结果分布,另外给出拟合函数的参数,如最大离散数值等

以上,就是 Monte-Carlo 的关键仿真步骤,有些及其基础的操作没放图~

如有疑问,可留言交流~

feifei wechat
欢迎扫描微信公众号交流哟~~