MOS管子参数计算

 

  对于一个MOS电路来说,计算的话,有两个参数是比较重要的。一个是vth,一个是UnCox。不考虑其他效应。

 那有一个工艺库,就要知道工艺库的这两个参数。一种方法直接看工艺库参数,但是现在的工艺库是基于BSIM,参数超级多,有考虑到很多二级效应。如果直接用工艺库的参数vth0UnCox来计算的话,会发现计算的值和仿真的值相差比较大(我觉得可能是因为仿真用的公式不是我们学的平方率公式)。因此就需要找出我们用于手算的这两个参数的值。

对于MOS饱和情况:

其电流方程 

image

 

两边开根号,可以得到IdVgs是线性的。因为s端接低电平(对于N管),接高电平(对于P管)。所以就得到IdVg是线性的。

image

 

搭电路(以下的方法是在艾伦的CMOS模拟集成电路设计上介绍的)

所用的库是st02 下载地址http://bbs.eetop.cn/thread-411185-1-1.html,这库也是模拟集成电路设计与仿真所用的库。

clip_image010

管子的宽长比都是10u/5u

V1电压源为5V,提供电源。V0电压源提供给管子的栅极输入。

V0进行DC电压扫描。得到N管和P管关于电压V0的曲线。利用计算器得到扫描数据。

DC设置和得到的输出曲线。

image
   


N管和P管的电流对于输入电压扫描的值。左是N管电流,右是P管电流。

clip_image016

得到数据后,就用matlab来处理。利用数据,得到拟合的线性曲线,得到斜率和截距,就可以得到参数的值了。

Matlab的代码如下:

 

%N  1.7V,以0.2步进递增到3.3V

%电流的值要开根号,所以后面要有.^0.5

%n1delta_n是用来检查线性度的,线性度差的数据要舍弃。

x = 1.7:0.2:3.3;

n = [69.7 99.2 133.4 172 215 262.5 313.3 368.4 427.2].^0.5;

n1= [ 0 69.7 99.2 133.4 172 215 262.5 313.3 368.4 ].^0.5;

delta_n = (n-n1)./0.2;

 

%P  3.3V,以0.2步进递减到1.5V

%电流的值要开根号,所以后面要有.^0.5

%p1delta_p是用来检查线性度的,线性度差的数据要舍弃。

 

y=1.7:0.2:3.3;

p = [139.9 119.8 100.8 83.19 66.92 52.12 38.87 27.3 17.52].^0.5;

p1 = [0 139.9 119.8 100.8 83.19 66.92 52.12 38.87 27.3].^0.5;

delta_p = (p-p1)./0.2;

 

%拟合函数ployfit()

po1 = polyfit(x,n,1);

po2 = polyfit(y,p,1);

 

运行,可得

p01 = [7.6975     -4.6436]

p02 = [-4.7702    20.0343]

前一个值是斜率,后一个值是截距。

带入到

clip_image018

即可得到

        UnCox = 59.3uA/v2                   Vthn  = 0.6v

        UpCox = 22.8 uA/v2                  Vthp  = -0.8v

 

这样就得到了参数了。

下面进行去验证一下:

clip_image020

将宽长比改成 N8.5u/5u  P 7.3u/5u

利用电流公式 得到

            N管电流           181.96uA

            P管电流           48.1uA

  从图中仿真出来的电流比较,会发现,误差比较小。。

  可图中还可以看出,N管的Vth0.75vP管的Vth-0.98V。与我们计算出来的值不一样。相差0.1V左右。(我认为仿真的时候,考虑了对Vth影响的二阶效应,所以造成Vth有变化)。

  以上的数据在长沟道的时候,计算比较有效。在短沟道情况下,计算误差就比较大了,因为在短沟道下,平方率公式已经不适用了,此时二阶效应的影响比较大了。不过模拟电路,沟道都不会太短,可以按照长沟道公式计算。

 查过书,书上说,沟道小于0.8um,就算短沟道了,此时计算就不适用平方率公式计算了。有个gm/id的方法是在短沟道情况下用的,不过还没有研究。

此条目发表在IC分类目录,贴了标签。将固定链接加入收藏夹。

发表评论

电子邮件地址不会被公开。