65nm工艺下MOM电容详解与蒙特卡洛仿真及calibre xRC

article/2025/4/22 1:32:53

提纲

1、SMIC65LL工艺MOM电容工艺详解

2、电容失配模型(蒙特卡洛模型及其仿真方法概述)

3、Calibre SVRF介绍

  3.0 xRC和xL

  3.1 xcell和hcell

  3.2 extraction type

  3.3 PEX option

4、MOM电容阵列寄生提取策略

 

正文

一、MOM电容

 如图,一般三端MOM是做在N阱里,这样能有效的隔离衬底噪声。周围一圈蓝色用来做N阱接触,通过SN注入+AA有源区,形成一个可以做欧姆接触的环形区,顶层用M1和CT将该N阱接地。

在中间区域,M3,M4,M5在每一层都做成叉指形式,这样形成了三层金属的寄生电容CC(coupled capacitor)。

图左可以看到除了mask用到的层(drawing),还有一些标识层(mk3,mk4),图上的×符号即是此层,用于在版图中标识电容器件。

一般认为,在深亚微米下MOM是更安全的(随着工艺的演进,金属层之间距离越来越小,氧化物击穿的可能性增加),而且由于多条金属finger的叉指结构,工艺准确性也更好。

二、蒙特卡洛模型及仿真(IC6+ADE XL)

电容制造产生的工艺偏差被抽象为一个正态分布,且其标准差和电容面积的平方根成反比。在此工艺中,1个最小电容29f的标准差为0.005,也就是说对于一个290f的电容,其标准差为0.005/sqrt(10)。MATLAB中可用normrand函数建模。

一般地,整个ADC进行蒙特卡洛仿真是不太现实的,可以对局部模块如比较器,运放进行仿真。进而可验证比较器的失调是否满足要求,运放的增益、失调电压是否具有工艺稳定性。具体步骤简要描述:

①搭建仿真电路并启动ADE XL:

 ②初次打开ADE XL会让创建一个new view,点击确定后在如下界面中单击“click to add test”指定仿真电路图,点击确定,如下图。

 ③配置输出:蒙特卡洛仿真本质上是一种参数扫描,因此需要设置输出为一种标量。例如,在AC结果里,“频率为10hz时的输出增益”是标量,“增益”不是。在tran仿真中,“VOP点在500ns时的电压值”是标量,“VOP电压值”不是。这样,假如经过500run,将得到一个柱状图。

④开始仿真,需要做如下配置 :

⑤开始仿真/一些可能遇到的问题/如何恢复

 点击绿色按钮即可仿真,如果仿真失败,去②中打开的ADE XL里设置mc模型。

下次仿真时,打开之前的ADEXL view,单击左侧箭头位置,即可调出ADE XL界面以重新设置仿真精度和观测值。

 

三、Calibre xRC介绍

以下内容来源于 svrf manual(standard verification rule format)

3.0 常用的是xRC,主要提取RC参数,还有xL,用于射频中提取电感。

3.1 hcell意为hierarchy cell,定义hcell之后,提取寄生之后会把被定义的cell提取成一个模块,而其他的模块则被提成了散乱的寄生网表。

xcell类似于LVS BOX,意为屏蔽掉寄生提取,定义为xcell的模块将不会被提取寄生。xcell规则文件的写法很简单,例如:

mom35 mom53,这句话即说明,电路里mom35和版图里mom53是对应的,不要提取寄生参数。

另外,需要在PEX规则文件里加入PEX IDEAL CELL YES语句并选择以gate level提取,以使能xcell文件。同时,xcell使用时要同时打开hcell。

3.2 extraction type

常用的类型有,R+C,R+C+CC,C+CC。首先强调,对于MOM的提取寄生,这些都是不靠谱的!具体后面会描述。

R+C+CC将所有的寄生电容,寄生电阻,耦合电容都提取一遍,R+C将耦合电容折算到寄生电容里,怎么折算的呢?将两个端口的寄生直接折算到两个端口分别的对地电容上,这样做问题不大,但是对于一个100f的mom,耦合电容就是100f,折算之后,电容两端凭空多出两个100f的对地电容!C+CC只提取电容,不考虑电阻。MOM的具体提法见第四节。

3.3 PEX option

常用的一些option可以帮助减小网表规模,加速仿真。介绍如下:

reduction ticer:根据手册的描述,该处理对分布式电容进行缩减合并。当然,如果电路的工作频率要求越高,可以缩减的RC就越少。

reduction CC:CC耦合电容的缩减有两种模式,absolute和ratio,前者定义xx fF以下的耦合电容被折算到两端,后者定义为:如果A,B之间电容50f,那么小于50f*ratio的耦合电容将被折算到两端。继续强调,MOM提取时不可用!

reduction analog/digital:指定造成的延迟和噪声小于设定值的RC器件可以被折算。

reduction minCap/minRes:对于电阻,设定小于xx ohm的电阻被合并combine(串并联到集中电阻上),小于xx ohm的电阻被短路short,前者对总体的延迟影响较小;对于电容,不同点在于,小于xx fF的电容将被移出而不是短路,这符合电容容抗的定义,电容越小,越近似于开路。

四、MOM电容阵列的寄生提取

这是一个很失败的二进制电容阵列,单位电容为1f的M3-M5,为了减小走线带来的寄生,采用了M2和M6走线。然而,最大的问题是单位电容之间距离太近,其不可忽视的耦合效果对电容的二进制比例造成了很大影响。

这种结构下,本征电容是不可靠的,R+C也是不可靠的,必须用R+C+CC提取全部的电容,包括电容内部的耦合电容,电容之间的耦合电容。R+C+CC提出的网表格式如下:

两个include部分是寄生参数,然而本征电容还在...比较靠谱的做法是删掉本征即可。

另外,R+C+CC会提取出一个大规模的网表,为了减小电路规模,可以采用3中介绍的减小RES的策略。

在整体电路的仿真中,可以分别提取整体电路和电容阵列的寄生,提取前者时将电容阵列用xcell屏蔽掉并采用R+C提取,提取后者时采用R+C+CC+res reduction,这样能在保证准确度的情况下最大限度的减小仿真规模。

 


http://chatgpt.dhexx.cn/article/jBEuG79Y.shtml

相关文章

时延估计器的蒙特卡洛仿真分析

摘要 针对时延未知的带噪信号,使用广义相关算法计算时延估计。为提高估计精度,采用蒙特卡洛方法估计时延值。首先模拟建立两个带噪且互不相关的接收信号,通过广义相关算法多次实验计算时延,接着利用蒙特卡洛方法对多次实验计算得…

蒙特卡洛仿真的基于Python实例

文章原作者:新缸中之脑文章链接:https://www.toutiao.com/i7028498316396839432/?tt_fromweixin&utm_campaignclient_share&wxshare_count1&timestamp1638613017&appnews_article&utm_sourceweixin&utm_mediumtoutiao_ios&…

检测性能的蒙特卡洛仿真-检测部分

一、 实验目的 使用matlab编程,利用蒙特卡洛方法,对一个简单的二元假设检验问题进行仿真,分析不同信噪比下检测器的性能。 二、 实验步骤 通过蒙特卡洛仿真实验,检测性能在不同信噪比下的表现,以验证信噪比对于检测…

5G仿真-蒙特卡洛仿真方法

5G仿真-蒙特卡洛仿真方法 #蒙特卡洛仿真法 蒙特卡洛方法也称为统计试验方法,它是采用统计的抽样理论来近似求解数学问题或物 理问题,它即可以求解概率问题,也可以求解非概率问题,蒙特卡洛方法是系统模拟的重要方法。下面举例说明…

talemu---蒙特卡洛仿真软件产品介绍

一 简介 talemu是拥有独立知识产权的国产软件,核心功能是进行蒙特卡洛仿真。通过应用多项自研成果,能够对主流开发语言编写的模型自动创建蒙特卡洛仿真模型,还能够对依赖特定软硬件环境的模型创建仿真模型。依据模型自动生成仿真数据并完成蒙…

蒙特卡罗仿真(1):入门求生指南(Python实例)

目录 1. 前言 1.1 两个要点 1.2 Simulation pros and con’s[2] 2. 随机数生成 3. 几个简单的应用 3.1 抛硬币实验 3.2 扔骰子实验 3.3 用蒙特卡罗仿真求pi值 3.4 估计定积分的值​​​​​​​ 4. 小结 1. 前言 仿真(Simulation):…

武器系统仿真技术(二):末端制导系统蒙特卡洛仿真法

1.蒙特卡洛仿真方法的统计特性 假设一个 m m m个系统输出数据 { y i } i 1 m \{y_i\}_{i1}^m {yi​}i1m​, N N N次循环得到 N N N组数据 { { y i } i 1 m } j 1 N \{\{y_i\}_{i1}^m\}_{j1}^N {{yi​}i1m​}j1N​。那么实际上会有以下两组统计特性指标: 1.2数值…

检测性能的蒙特卡洛仿真-估计部分

一、 实验目的 使用matlab编程,利用蒙特卡洛方法,对一个简单的二元假设检验问题进行仿真,分析不同信噪比下检测器的性能,分析SNR、MSE对估计的影响。 二、 实验步骤 通过蒙特卡洛仿真实验,检测性能在不同信噪比下的…

cadence的工艺角仿真、蒙特卡洛仿真、PSRR

cadence的工艺角仿真、蒙特卡洛仿真、PSRR 工艺角仿真打开ADE XL选择工艺角为ff设置工艺角 蒙特卡洛仿真PSRR温度扫描 学习来源:https://www.bilibili.com/video/BV1gX4y1g7JJ?spm_id_from333.337.search-card.all.click 工艺角仿真 打开ADE XL 当你在ADEL完成仿…

雅可比迭代法法

雅可比迭代法法 在图形图像中很多地方用到求矩阵的特征值和特征向量,比如主成分分析、OBB包围盒等。编程时一般都是用数值分析的方法来计算,这里介绍一下雅可比迭代法求解特征值和特征向量。雅可比迭代法的原理,网上资料很多,详细…

雅可比迭代法和高斯赛德尔迭代法

刚学 Jacobi算法和Gauss_Siedel算法不久&#xff0c;觉的对以后学习会有帮助&#xff0c;所以记下来&#xff0c;希望感兴趣的朋友共勉&#xff01; 雅克比迭代 #include < iostream > #include " math.h " using namespace std; #define n 3 double a[n][n] …

数值计算——雅可比迭代法解线性方程组

1.雅克比迭代法的计算过程: (1).取初始向量: &#xff08;1&#xff09; (2).迭代过程 &#xff08;2&#xff09; 2.求解实例&#xff1a; &#xff08;3&#xff09; 用 Jacobi 方法求解&#xff0c;精确到小数点后 6 位, 给出所需步数及残差; 3.求解结果&#xff1a; 当n1…

雅可比迭代法、高斯-赛德尔迭代法、超松弛迭代法 matlab 实现

雅可比迭代法、高斯-赛德尔迭代法、超松弛迭代法 matlab 实现 一、雅可比迭代法 程序代码&#xff1a; function y Jacobi(A,b,e,M) % input: A 的对角线元素均不为 0 e: 精度 M: 最大计算次数 % output: y: 方程的解n length(A); x0 zeros(n,1); y zeros(n,1);[l,w] si…

数值计算——雅可比迭代法解线性方程组(附代码)

1.雅克比迭代法的计算过程: (1).取初始向量: &#xff08;1&#xff09; (2).迭代过程 &#xff08;2&#xff09; 2.求解实例&#xff1a; &#xff08;3&#xff09; 用 Jacobi 方法求解&#xff0c;精确到小数点后 6 位, 给出所需步数及残差; 3.求解结果&#xff1a; 当n1…

雅可比迭代法程序c语言,求雅可比迭代法解方程组的C\C++程序

满意答案 singleycf 2013.07.05 采纳率&#xff1a;54% 等级&#xff1a;13 已帮助&#xff1a;7908人 #include #include Jacobidiedai(int n, double *a, double *b,double *x) { int i,j; double *x0,m0,eps; x0 (double *) malloc(n*sizeof(double)); for(i0;i x0[i]x…

雅可比迭代法解线性方程组。

L U分解在我之前写的文章里。 定义的变量有点多&#xff0c;但挺容易看的。 #include<stdio.h> #include<math.h> #define N 3 int main (void) {double A[N][N] {0};double D[N][N] {0};double L[N][N] {0};double U[N][N] {0};double C[N][N] {0};double…

线性方程组迭代法—雅克比迭代法C++

此例子使用三个变量、三个方程的情况&#xff0c;如需讨论多个的情况&#xff0c;使用vector稍加修改即可。 使用的方程组如下&#xff1a; 每次迭代的值如下&#xff1a; 程序流程图&#xff1a; 程序代码&#xff1a; /********雅克比迭代法********* *1.Xi为每一步迭代…

《数值分析》-- 雅可比迭代法、高斯—塞德尔迭代法

文章目录 一、基本迭代法的格式及收敛性1.1 迭代法思想1.2 向量序列收敛的定义 二、迭代法的收敛与发散三、雅可比迭代法和高斯赛德尔迭代法3.1 雅可比迭代法3.2 高斯――赛得尔(Gauss-Seidel)迭代法 四、迭代法的收敛性4.1 严格对角占优矩阵与对角占优矩阵4.2 Jacobi迭代法和G…

雅克比迭代法,高斯赛德尔迭代法,sor迭代法(python)

计算方法实验&#xff0c;在已给matlab的程序基础上进行修改得到的python程序&#xff0c;原理不再赘述。实际使用时&#xff0c;只需修改以下程序中的A,b矩阵&#xff08;注意只适用与A为n*n的情况&#xff09; 1.雅克比迭代法 import numpy as npA np.array([[10,-1,-2],[…

C语言实现雅克比迭代法求根

C语言实现雅克比迭代法求根 雅克比迭代法求根 C语言实现雅克比迭代法求根问题描述算法思想C语言程序实验结果 问题描述 设方程组 A x b Ax b Axb的系数矩阵 A A A非奇异 &#xff0c;且 a i i ≠ 0 {a_{ii}} \ne 0 aii​​0将 A A A分裂为&#xff1a; A D L U A D L…