MOS管失调电压分析

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

蒙特卡洛(MC)仿真(2012-11-0319:02:19)转载▼标签:杂谈分类:IC设计关于spectre下蒙特卡洛(MC)仿真的资料有一些,但大都侧重讲如何在ade里设置,前提是foundry提供MC的相关模型。据我所知,t是有的,下面的一些信息还是从t的模型中分析知道的。但是也有些foundry没有,或者即使有,也没有具体讲自己的模型如何使用。所以这里准备从模型的角度讲解这个问题。理解了模型,也就可以自己编写或者看懂foundry的模型文件了。我们自己先猜测一下MC仿真的过程。从文档上看,MC分为process和mismatch两种,spectreuser的文档具体给了一个示意流程图。在每次MC分析时,(如果选择process)先根据process相关信息,将每个器件的参数统一改变,(如果选择mismatch)再将每个器件的参数单独改变。所以在模型中,就需要提供相关的内容:器件的哪些参数要变,如何变。正常的仿真,器件参数也会变,只不过那时是调用不同的corner。因此哪些参数要变,完全可以仿照corner仿真时各个section的写法。具体的说,就是在每个模型里都有一些参数,parameter,这其实是变量。在每个corner里都给这些parameter赋值。MC时也是这样,需要在模型里有参数,在最前面有参数赋值。只是这里的参数赋值有专门的语句:statistics。具体语法可以参考手册。在statistics里分了process和mismatch两种情况,然后在每种情况下可以用专门语句描述变量的分布情况。这就回答了前面所说的器件哪些参数要变和如何变的两个问题。当运行MC时,spectre会自动根据statistics里的描述,产生相应的模型变化。而当正常的仿真时,spectre会去别的parameter赋值部分寻找变量值,所以互相可以不冲突。但是上面描述的只是基本用法。在许多mismatch模型中,变化量的参数是和器件的w,l相关的。如何把这两者关系描述出来,上面的方法就不适合了,因为w和l并不能传递到statistics中去。spectre对此的解决方法是引入了inlinesubckt。可以参考spectreusr中对这个的描述,基本就是为了解决上述问题而提出的。在inlinesubckt中,w和l可以作为参数传到下一层中,在此同时,模型参数也被向下传递,因此可以在中间定义模型参数与w,l的关系,这时各个参数是可以相互看到的。这也就是为什么MC分析时,管子的模型一般都要换掉。因此在最后,出现的情况就比较多了,电路中的模型可以用普通模型,也可以用MC模型,分析可以用普通仿真,也可以用MC分析。有人的blog里就总结了tsmc中几种排列组合能实现的结果。我想只要了解了底层机制,记忆这些就容易多了,而且即使工艺厂下次改变了模型写法,也能很快知道如何使用模型。最后,说一个问题。当器件存在m参数时,按照m参数的传统意义,等于是完全相同的器件并联,因此MC分析似乎也是这个思路。但实际中理论上各个器件应该是有差别的。所以如果m大,理论上应该是失配减小,但仿真结果却是不变。我不知道是哪里还可以继续改进对m的处理,使其更加合理。根据Sensan的《精粹》上的第15章,MOS的随机失配中阈值电压失配的计算Avt是MOS管的阈值失配的平均值(或期望),sigma是失配的标准差Avt=tox*(Nb)^(1/4),反正就是和工艺相关,tox≈L/50,所以工艺尺寸越大的,阈值的失配均值Avt越大,使用更小线宽的工艺可以减小Avt,但是0.13um以下工艺,Avt基本稳定在3mV左右。sigma=Avt/sqrt(W*L),sigma描述的是Avt的波动型,sigma越大说明各个管子阈值偏差离散型较高,也就是匹配不好问题是,在考虑MOS管的阈值失配时,这个失配说的是Avt还是sigma???,比如说,只考虑一个运放的差分对管的阈值失配,要使得差分输入对的输入失调电压Vin,offset小于1mV,是不是说的是sigma1mV???在一个0.18um工艺中给出的mismatch特性中,Avt=5.0mV,要使得sigma1mV,就是要使得W*L25um^2??如果L=1um,就是说要W25um???如果L=0.5um,W要大于50um??如果要sigma0.1mV那么照此类推,W*L50^2um^2??如果L=1um那么要W2500um??那如果失配只和sigma相关,那么Avt的意义何在??更小的Avt可以使得更小的W*L就可以满足失调的要求??嗯,可能我表述的有问题吧。Avt=tox*(掺杂浓度Nb)^(1/4),tox≈L/50,所以只和工艺相关,选定工艺Avt也会相应给出这个确实是这样的,比如0.13um工艺Avt=3mV。我想问的是单单考虑输入管的阈值失配,(beta失配指的是跨导失配),这个失配就是指的sigma吧?比如单单考虑输入管的阈值失配,那输入管的失配就是simga(VT)=Avt/sqrt(W*L)吧??回复1#lishiliang先把单位搞清楚。Avt=amV.um,Vt=bmV你的差分对每个管子阈值分别为Vt0=Vtz+delta_Vt0,Vt1=Vtz+delta_Vt1。比如分别为0.51V=0.5V+0.01V,0.53V=0.5V+0.03V.你是不可能得到完全一样的Vt0和Vt1的,这是绝对值。但是我们可以通过增加面积来使两者足够接近,比如说都趋近于0.5V,当然那批工艺也可能是趋近于0.51V,这都是绝对值。根据前人大牛们的数学推倒及测试数据验证,一批次的工艺,有这样的关系,sigma(Vt0-Vt1)=sigma(delta_Vt)=Avt/sqrt(WL)。Avt就是做出来的一个拟合系数而已,不同工艺,不同值。这里的sigma是标准差,就是说测了一堆Vt的值,发现Vt值得波动,在两两差值上存在这么一个统计的关系。此时的sigma单位也为mV。所以说,谁要是说让你做一个两个阈值绝对值都是0.5V的匹配,你让他哪凉快哪玩去。你只能保证说,我可以把两个管子的阈值的绝对值都做到趋向于0.5V,或是都趋向于0.51V,这个具体的数值当然跟你的工艺相关了。然后你又说,怎么有些设计指标对失配有要求呢?这个。。。你把这个指标看做是Vt的函数,那这个函数值是不是就也有统计规律了?那这个统计规律通过函数关系是不是就最终推到跟最基本的Vt,beta等等变量的统计规律有关系了?

1 / 3
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功