模拟CMOS设计这行,很多人刚开始啃器件物理的时候都容易犯一个毛病:拿它当半导体物理的压缩版去背,背完一堆能带图、载流子浓度公式,到了画电路的时候还是不知道宽长比该取多少。我当年也是这样,直到后来回头重新把MOS器件的物理特性跟电路设计需求一条条对应上,才真正觉得这章没白学。这篇就把我在模拟CMOS设计中最常用的那部分MOS器件物理基础,按设计的视角重新捋一遍。
1. 模拟电路设计师眼里的MOS管:一只压控电流源
先说一个认知上的转变:在数字电路里,MOS管是开关——导通或者截止,中间状态基本不关心。但在模拟电路里,MOS管几乎永远工作在"半开半关"的中间区域,它的作用是把栅极电压的变化转成漏极电流的变化,本质上就是一只压控电流源。这个视角一旦建立,整个第2章的知识点就有了主线:栅极怎么控制电流、控制关系受哪些因素影响、这些影响在电路上会造成什么后果。
MOS管的标准结构是四端器件:栅极(G)、漏极(D)、源极(S)、衬底(B)。栅极和衬底之间隔着一层很薄的二氧化硅绝缘层,所以栅极理论上不取电流,它靠电场控制下方半导体表面的载流子浓度。这在模拟设计里是个非常珍贵的性质:输入阻抗极高,前级电路几乎不用为驱动MOS栅极付出直流代价。
衬底这个端子,很多初学者容易忽略,但它恰恰是模拟设计里一堆"坑"的源头。衬底和源漏之间会形成PN结,反向偏置时有结电容,正偏时会出现漏电甚至闩锁效应。更麻烦的是,衬底电压会通过体效应改变阈值电压,从而改变管子的导通特性。后面我会单独讲体效应对电路设计的影响,这里先记住一个结论:设计版图和电路时,衬底电位永远是必须认真对待的变量。
对模拟设计师来说,MOS管最核心的电气行为可以归结为一句话:漏极电流I_D是栅源电压V_GS、漏源电压V_DS、衬底源极电压V_BS以及管子尺寸(W/L)和工艺参数(μC_ox、V_TH)的函数。整个器件物理章节,本质上就是在解构这个函数。
2. 阈值电压与强反型:决定电路"开关点"的物理根源
大家最熟悉的MOS管参数大概就是阈值电压V_TH。中学物理版的解释是"让管子开始导通的栅压",但在模拟设计里,这个"开始导通"到底指什么,值得较真一下。
2.1 反型、耗尽、积累:栅压改变的是半导体表面的状态
先看衬底的物理状态。以NMOS为例,P型衬底里多数载流子是空穴。栅极施加正电压,电场会把衬底表面的空穴推开,形成耗尽区;栅压继续升高,电子被吸引到表面,当表面电子浓度超过空穴浓度时,表面就从P型反转为N型——这个状态叫"反型"。
这里有个概念要区分清楚:弱反型和强反型。弱反型时表面电子浓度很低,只是刚刚有反型趋势,电流以扩散为主,这就是亚阈值区的工作基础。强反型时表面电子浓度远高于衬底空穴浓度,反型层接近一个导体层,电流以漂移为主。门槛在哪?工程上通常定义表面势达到2Φ_F(Φ_F是衬底的费米势)时进入强反型。对应的栅压就是V_TH。
这个"2Φ_F"对设计师的意义在于:它和温度有关系。Φ_F随温度变化,所以V_TH是有温度系数的。典型值大约-1mV/°C到-4mV/°C,NMOS和PMOS还不一样。做基准电压源、偏置电路和温度补偿设计时,这个温度系数会直接反映到电路输出上。如果你在仿真里发现某个基准电压随温度漂移的方向和幅度不对劲,先回头查一下阈值电压的温度特性,往往能对上号。
2.2 体效应:衬底电位凭什么能改阈值电压
V_TH的表达式在教科书里一般写成:
V_TH = V_TH0 + γ(√(2Φ_F + V_SB) - √(2Φ_F))
其中V_TH0是V_SB=0时的阈值电压,γ是体效应系数,V_SB是源衬电压,2Φ_F是表面强反型所需的表面势。
体效应的物理本质是:衬底电压变化会改变耗尽区宽度,而栅压需要先把表面势抬高到强反型门槛,耗尽区越宽,需要抬高的距离越大,V_TH就越高。这在电路中的直接后果是:如果MOS管的源极和衬底不接在同一个电位上,这个管子的阈值电压就是"可变的"。
模拟电路里最容易踩坑的就是源极不接地的差分对或电流镜。比如共源共栅结构里,上方管子的源极电位比下方管子高,它的V_SB不为零,V_TH就会偏大。做电流镜匹配设计时,如果两支管子的源极电位不同,即使版图画得一模一样,电流也会有系统性的失配。这些细节不是"理论太较真",而是流片回来实测能看到的差异。
对设计者来说,最常用的缓解手段就是"源衬相连"——把NMOS的源极和衬底都接到最低电位,PMOS的源极和衬底都接到最高电位。实在不能相连的时候(比如衬底电位受限于芯片总电位布局),就要意识到这个管子的V_TH被抬高了,偏置点需要用仿真重新校准,不能直接套用理想值。
2.3 阈值电压的温度与工艺漂移
V_TH在工艺上不是固定值,同一批晶圆上不同芯片之间也会有偏差,同一芯片上不同位置的管子也有微小的差异。对模拟设计来说,V_TH的绝对偏差并不可怕,可怕的是它对匹配和偏置点的影响。
举个例子:一个简单五管OTA的尾电流源,I_D由( V_GS - V_TH)²决定。如果V_TH偏差了30mV,而(V_GS - V_TH)本身只有150mV,电流偏差可达40%。这就是为什么正经模拟设计几乎不会直接用固定栅压偏置管子,而是要引入负反馈(比如源极退化电阻)或者自偏置结构来压制V_TH变化的影响。
仿真时如果用的是TT工艺角,参考意义有限。至少要跑FF、SS角,看看V_TH变化后电路的偏置点和增益是否还能接受。很多工程师喜欢把"设计余量"压在管子过驱动电压(V_GS - V_TH)的大小上,过驱动电压取得越大,V_TH绝对偏差的影响就越小,但电源电压和电压摆幅的限制又决定你不能无限放大。这里面的权衡,就是模拟设计的日常。
3. I-V特性的三个工作区:线性、饱和、亚阈值背后的载流子逻辑
MOS管的I-V曲线是整个器件物理章节的重头戏。学的时候很容易被一堆公式淹没,但退一步看,三个工作区对应的是沟道里载流子的不同状态,理解了这个物理图景,公式就好记了,也更知道什么场合该用什么区。
3.1 线性区:沟道还没被夹断,管子像压控电阻
当V_GS大于V_TH、V_DS很小时,沟道完整地连接源和漏,这时的MOS管行为类似一个由V_GS控制的电阻。I_D的表达式:
I_D = μC_ox(W/L)·[(V_GS - V_TH)·V_DS - V_DS²/2]
V_DS很小时,V_DS²/2项可以忽略,I_D近似正比于V_DS,呈现电阻特性。线性区的"电阻"为:
R_ON = 1/[μC_ox(W/L)(V_GS - V_TH)]
这在模拟设计里有两个直接应用。一是做开关和传输门,R_ON越小越好,所以要加大W/L、抬高栅压;但栅压抬高带来的沟道电荷注入和时钟馈通又会恶化采样精度,开关设计要在这两者之间找平衡。二是做压控电阻,比如某些滤波器里的电阻仿真结构,利用线性区的电阻特性去模拟大电阻。
线性区里那个V_DS²/2的项,是沟道中栅压沿沟道方向变化的直接结果。从源到漏,横向电场让沟道电势逐步变化,栅极与沟道之间的有效电压就越靠近漏端越小——因为V_GS相对于漏端更低了,反型程度变弱。这为进入饱和区埋下了伏笔。
3.2 饱和区:夹断点之后,电流基本不再随V_DS变化
当V_DS增大到等于V_GS - V_TH,即V_GD = V_TH时,漏端的沟道刚好"夹断"——表面不再有反型层,导电沟道在靠近漏端处断开。你以为电流就断了?不,实际情况是电子被漏端电场扫过夹断区,电流照样流,只是不再由沟道电阻决定,而由源端到夹断点之间的沟道控制。这就是饱和区的物理本质。
饱和区的电流公式是教科书里的明星公式:
I_D = (1/2)μC_ox(W/L)(V_GS - V_TH)²(1 + λV_DS)
这个公式有几个要点值得单独说。
首先,I_D对V_DS的依赖只剩λ项——沟道长度调制效应。λ大致反比于沟道长度L,所以长沟道器件更接近理想电流源。模拟设计里做高输出阻抗的电流源,几乎都会尽量取长的L,就是这个原因。
其次,μC_ox是工艺参数。模拟设计者拿到一个新工艺节点,第一件事就是看这个值,以及它随电压和温度的变化。不同工艺、不同器件类型的μC_ox差很多,而且迁移率μ本身随垂直电场下降,意味着实际的I-V特性并不完全遵循平方律公式,短沟道器件尤其如此。
第三,这个公式的平方律关系是"长沟道理想模型"。到了深亚微米以下,因为速度饱和,I_D对(V_GS - V_TH)的依赖往往更接近线性规律。
3.3 亚阈值区:弱反型下的指数电流,低功耗设计的本命
在V_GS低于V_TH时,管子并非完全截止,而是处于弱反型状态,电流以载流子扩散为主。I_D与V_GS的关系呈指数形式:
I_D ≈ I_S·exp((V_GS - V_TH)/(nV_T))·(1 - exp(-V_DS/V_T))
其中n是亚阈值斜率因子,典型值在1.2到1.8之间;V_T是热电压,室温下约26mV。V_DS超过几个V_T后,第二项趋近1,电流基本不随V_DS变化。
亚阈值区的跨导gm比饱和区小,因为指数电流对V_GS的响应本质上是靠热激发扩散,效率有限。但亚阈值区有个不可替代的优势:在极低电流应用里(几纳安到几百纳安),管子可以在很低的过驱动电压下工作,这对低功耗设计意义重大。另外,亚阈值区的gm/I_D比值最大,也就是说在功耗预算内能获得最高的跨导效率。做超低功耗运算放大器、能量收集电路、生物电信号前端时,大量管子都工作在亚阈值区。
这带来一个很有意思的后果:如果你用教科书里平方律公式去设计亚阈值电路,仿真结果会和手算完全对不上,因为器件模型里亚阈值导电机制跟强反型完全不同。正确的做法是用gm/ID方法论做设计——以gm/I_D为轴来选工作点、定尺寸,这在现代低电压低功耗设计里是常用的思路。
3.4 从I-V曲线读出设计信息
拿到一组MOS管的I-V曲线,模拟设计师应该能快速读出几件事:阈值电压大概多少、饱和电压V_DSAT是多少、输出电阻rds有多大、亚阈值摆幅怎么样。这些直接决定了偏置点选取和电路拓扑选择。比如你要设计一个高增益共源放大级,就要确认管子工作在饱和区且V_DS留出足够余量,避免进入到线性区导致增益崩塌。
V_DSAT = V_GS - V_TH在长沟道模型里等于√(2I_D/(μC_ox(W/L)))。但在短沟道器件里,实际V_DSAT可能远低于这个值。如果你在设计时错误估算V_DSAT,可能导致管子实际已经进入线性区但仿真看起来还挺正常——等到做完版图后仿才发现性能彻底变形。
4. 体效应、沟道长度调制与速度饱和:让仿真曲线"偏离教科书"的三大推手
做过几次实际设计之后你会发现,理想公式和仿真结果之间总有偏差。偏差的来源就藏在这些二阶效应里。它们不是什么可以忽略的"修正项",而是决定电路真实性能的主要因素。
4.1 沟道长度调制效应:为什么长沟道管子的输出阻抗更高
前面提过,饱和区电流公式里的(1 + λV_DS)项来自沟道长度调制。V_DS增大时,夹断点向源端移动,实际有效沟道长度变短,电流相应变大。λ近似正比于1/L,所以沟道越短,电流对V_DS的敏感度越高。
从电路角度来说,λ直接决定MOS管的输出电阻rds:
rds = (∂I_D/∂V_DS)^(-1) ≈ 1/(λI_D)
共源放大器的增益大约等于gm·rds,因此想提高增益,就得提高rds。增大L是提高rds最直接的办法,但代价是面积和寄生电容变大。很多高性能模拟电路用共源共栅结构来"假装"得到很长的有效沟道——让上方管子感知到的V_DS变化被下方管子吸收,从而整体输出电阻大幅提高。理解了这个物理机制,就理解为什么共源共栅结构在模拟设计里如此普遍。
4.2 速度饱和:深亚微米时代的第一修正项
长沟道模型假设载流子迁移率恒定,漂移速度正比于电场。但实际上,当沟道横向电场超过某个临界值后,载流子速度逐渐饱和——硅中电子速度饱和值约为10⁷ cm/s。短沟道器件源漏间距小,横向电场强,很容易达到速度饱和。
速度饱和的直接后果是:在同样的V_GS条件下,短沟道管子的饱和电流比平方律模型预测的小;而且I_D对V_GS的依赖更接近线性而不是平方。这就是为什么很多现代设计方法不靠平方律公式,而是直接用仿真器或者查找表数据来定尺寸。
速度饱和还导致V_DSAT变小——管子更早进入饱和区。这在模拟设计里是一把双刃剑:一方面,较小的V_DSAT意味着可以在较低的电源电压下留出更多电压摆幅;另一方面,V_DSAT变小让电流源更容易意外进入线性区,对共源共栅结构的"自上而下"电压分配需要更仔细地检查。
4.3 迁移率退化、DIBL和短沟道效应:进阶设计者的必修课
除了速度饱和,短沟道器件还有一系列效应:DIBL(漏致势垒降低)、亚阈值摆幅退化、阈值电压随沟道长度变化等。DIBL的本质是漏端电场穿透降低源端势垒,让V_TH随V_DS升高而下降。在数字电路里这可能导致关断漏电增大;在模拟电路里,它会让输出电阻进一步下降,而且让亚阈值区的电流对V_DS更加敏感。
模拟设计者不需要把每一条短沟道效应的公式都背下来,但需要有两点意识:第一,L越小,各种非理想效应越严重;第二,需要精确电流镜或高增益输出时,适当加L比盲目依赖电路技巧更有效。我见过有人在90nm工艺下做镜像精度要求0.1%的电流镜,结果效果怎么也调不好,后来把L从最小尺寸加到接近1μm,镜像精度一下就达标了——这不是玄学,是物理。
迁移率退化也是不能忽视的因素。栅压越高,垂直电场越强,载流子被压向栅氧化层界面,界面散射加剧,有效迁移率下降。在设计中这意味着:把过驱动电压取得很高并不能等比例地换到电流,gm的增长会明显低于平方律公式的预期。做高线性度电路时,这个效应会带来失真,需要在使用大过驱动电压和接受更大的失真之间做取舍。
5. 小信号参数:模拟设计真正使用的"器件语言"
教科书里花了大量篇幅讲大信号I-V特性,但到了实际电路设计,用的最多的反而是小信号参数。小信号模型是模拟IC设计师的日常语言——增益计算、带宽估算、噪声分析、反馈稳定性判断,全都建立在小信号参数之上。
5.1 gm、rds、本征增益:三个绕不开的数字
跨导gm是衡量栅压对漏极电流控制能力的参数。强反型饱和区里:
gm = 2I_D/(V_GS - V_TH) = √(2μC_ox(W/L)I_D)
亚阈值区里:
gm = I_D/(nV_T)
注意两种模式的差别:强反型下gm正比于√I_D,亚阈值下gm正比于I_D。也就是说,在低电流区域,亚阈值管子的gm/I_D反而更高,这就是为什么追求功耗效率的设计会让管子工作在弱反型。但代价是什么?速度慢、匹配差、对温度更敏感。
rds我们已经说过,约等于1/(λI_D)。把gm和rds乘起来,就是单管本征增益:
gm·rds ≈ (2/λ)(1/(V_GS - V_TH))
这个公式有意思的地方在于,本征增益跟I_D没有直接关系,而主要由过驱动电压和沟道长度决定。工艺节点越先进,本征增益越低——这是模拟设计在新工艺下面临的根本困境。65nm以下工艺的单管本征增益往往只有20到40倍,想做高增益放大级,只能靠共源共栅、增益增强、多级放大等拓扑手段从架构上找补。
5.2 电容:决定带宽和馈通的关键
小信号模型里第二组重要参数是寄生电容:栅源电容C_GS、栅漏电容C_GD、栅衬电容C_GB、源衬结电容C_SB、漏衬结电容C_DB。它们的大小跟工作区有关系——反型层存在时,C_GS和C_GD在饱和区大约各占C_ox的2/3和1/3左右;线性区里C_GS和C_GD更接近各半。
在模拟电路设计里,电容直接影响三件事:
- 带宽:共源放大器的输入极点由C_GS决定,输出极点由C_DB和负载电容决定。要推高速度,就要减小寄生电容,这就是为什么高速电路里的管子尺寸不能随意放大。
- 馈通:C_GD会把输出端的大信号变化耦合回输入端,这是米勒效应的物理来源。补偿密勒电容本身是故意利用这个效应,但寄生C_GD带来的意外馈通(比如采样保持电路里的时钟馈通)就得靠dummy管和互补开关来消除。
- 噪声和匹配:电容大小还影响kT/C噪声和失配特性,这在开关电容电路里尤其明显。
这里有一个实操经验:拿到一个新工艺库,不要急着看网表,先把PSP模型或BSIM模型的参数里C_ox、V_TH0、μ0等关键参数用仿真提取一遍,确认你手算用的参数和模型实际值差多少,尤其是C_ox——很多人的手算和仿真对不上,一半的原因在于C_ox取值就不对。
5.3 背栅跨导与衬底噪声耦合
衬底电压V_BS不仅影响V_TH,也提供了一个额外的信号通路——背栅跨导gmb:
gmb = gm·η ≈ gm·(γ/(2√(2Φ_F + V_SB)))
η典型值在0.1到0.3之间。在差分电路里,衬底噪声会通过gmb通路耦合到输出,降低共模抑制比。版图上做保护环把敏感电路围起来、用深N阱隔离开衬底耦合,本质上都是在堵这条物理通路。
有些电路会故意利用gmb做"伪差分"输入,节省一个输入对管的过驱动电压开销,让输入共模范围更接近电源轨。但gmb的跨导效率和线性度都不如真正的gm,属于偏方,实用场景有限。
6. 温度、失配与噪声:器件物理在现实工艺中的表现
前面讨论的器件行为都是单独管子的理想情况。真正流片回来面对的参数浮动来自三个维度:温度变化、工艺失配、随机噪声。这三样东西的物理根源都在器件物理里,懂的人可以通过设计把它们的影响压到最低,不懂的人只能等流片结果再看。
6.1 温度特性:迁移率下降 vs 阈值电压下降
温度的升高对MOS管电流有两个方向完全相反的影响。一方面,迁移率μ随温度升高而下降(晶格散射增强),电流变小;另一方面,阈值电压V_TH随温度升高而下降(费米势变化),电流变大。两者互相竞争,器件的电流温度系数取决于哪个占主导。
长沟道器件里,迁移率的影响通常占主导,所以高温下电流下降。但这不是绝对的。当你把器件推到速度饱和区或者亚阈值区,温度特性会完全不一样。亚阈值区电流对V_TH极其敏感,所以温度特性主要由V_TH的温度系数主导,而V_TH随温度下降意味着亚阈值电流随温度上升而增大——这对低功耗电路的漏电估算很致命。
设计了带隙基准之后,你会对这段话有更深的体会。传统带隙基准就是用PTAT和CTAT两种电压或者电流的叠加来抵消温度系数。CTAT部分本质来自PN结或MOS管V_TH的温度特性,PTAT部分来自热电压V_T。不理解器件物理层面的温度机制,就不知道基准电路里每一路电流为什么要那样配比。
6.2 失配:随机涨落的物理根源
即使版图上两个管子画得完全对称、距离只有几微米,流片出来后它们的V_TH和电流还是有偏差。失配的来源主要是两个:掺杂原子数的随机涨落(RDF)和栅氧化层厚度与界面电荷的局部不均匀性。
Pelgrom定律把失配量化得很简洁:
σ(V_TH) = A_VTH/√(WL) σ(ΔI_D/I_D) ∝ 1/√(WL)
也就是说,失配的标准差跟器件面积成反比。面积越大,平均效应越强,相对偏差越小。这就是为什么精密电流镜和差分输入对的管子尺寸不能太小——不是不好看,而是一个额外标称的失配指标你没给到面积,工艺就给你"随机的惊喜"。
在实际设计里,两个方向的失配要分开看:V_TH失配和β失配(β = μC_ox(W/L))。前者影响的是(V_GS - V_TH)的大小,进而影响电流;后者直接改变跨导的比例。做高精度电流镜时,如果V_TH失配是主导,那么增大过驱动电压可以有效压制失配的影响;如果β失配是主导,加过驱动电压没有用,只能增大面积。仿真时用蒙特卡洛跑一下,看失配分布是偏V_TH主导还是β主导,再做针对性的设计调整。
6.3 噪声:热噪声、闪烁噪声与管子尺寸的博弈
MOS管的噪声主要有两个来源。热噪声来自沟道载流子的随机热运动,其功率谱密度正比于4kTγgm,γ在长沟道里约2/3,短沟道里可能到1以上。闪烁噪声(1/f噪声)来自栅氧化层界面的陷阱随机俘获和释放载流子,其功率谱密度近似为K/(C_oxWLf),和管子面积成反比。
从噪声公式能直接读出设计策略:热噪声大就想办法提高gm(加大偏置电流或增大W/L),闪烁噪声大就加大管子的面积。但这又会引入更大的寄生电容,跟带宽需求打架。所以低噪声放大器设计本质上是一场"在面积、电流、带宽、噪声之间找平衡"的游戏。
对于PMOS和NMOS,闪烁噪声一般PMOS更小,因为PMOS的载流子在埋沟里离氧化层界面稍远,被陷阱俘获的概率低。低噪声领域的很多经典设计都会让输入对用PMOS,这是有明确物理依据的。
7. 建立"从物理到电路"的设计直觉
学完MOS器件物理基础,最该带走的东西不是那一堆公式,而是一种"预判"能力:看到一个电路拓扑,能大概判断出哪些管子在什么工作区,受什么效应影响最大,温度、工艺、噪声上会有什么表现。这种直觉不是天生的,是在反复对照物理模型、仿真结果和实测数据中养成的。
我自己的经验是,每做一个新的模拟电路,都先做一个"物理预判表":
- 每个管子的工作区域是什么?V_DS留了多少余量?
- 哪些管子的V_SB不为零?体效应会不会影响匹配?
- 哪些管子对λ敏感?输出阻抗够不够?
- 温度范围变化时,哪个支路的电流漂移最严重?
- 噪声指标要求是多少?输入管面积和电流够不够?
把这五条想清楚再动手画原理图,比盲目调参靠谱得多。仿真发现问题时,也要回头用物理原因去解释现象,而不是随便改个W/L碰运气。
最后分享一个排查套路,我自己用了很多年:当仿真结果和手算偏差超过20%时,先别急着怀疑公式记错了,查三件事——第一,C_ox取值是否和工艺库一致;第二,器件是否工作在预期区域,尤其检查V_DS和V_DSAT的实际值;第三,模型里有没有开启我们不希望的三阶效应开关(比如某些模型参数在不同模式下的选择)。百分之八十的"手算和仿真对不上"都出在这三个地方,而不是理论问题。
MOS器件物理不是一门需要你"信仰"的理论,它只是对真实硅器件行为的工程化描述。模型总在更新,参数总在变化,但载流子运动的物理规律、各种效应对电路行为的影响方向,这些东西几十年来并没有本质改变。把这一章学扎实了,后面学放大器、基准源、锁相环都会顺很多。