2、LTspice噪声分析入门:.noise 仿真语句语法、输出噪声与输入噪声的概念

好,咱们正式开始聊噪声仿真。说实话,我刚接触LTspice那会儿,看到.noise这个命令也是一头雾水。总觉得「噪声」这东西玄乎得很,不像直流工作点那样直观。但干了几年的模拟电路设计后,我越来越觉得——不会做噪声分析,你根本不敢把芯片拿去流片。

这一章,咱们就踏踏实实地把.noise仿真语句的语法搞明白。再搞清楚两个最基础的概念:输出噪声和输入噪声。别急,我会用我踩过的坑帮你避开弯路。

2.1 .noise 仿真语句的基本语法

LTspice里做噪声分析,靠的就是一条点语句:.noise。它的语法其实不复杂,但参数的含义你得吃透。

标准写法是这样的:

.noise V(<输出节点>) <输入源> <扫描方式>

我来拆开解释一下:

  • V(<输出节点>):你想看哪个节点的噪声?比如V(out)就是看输出端的噪声电压谱密度。
  • <输入源>:你定义的输入信号源。注意,这里不是噪声源,而是你电路里的激励源。LTspice会把它当作参考点来计算输入噪声。
  • <扫描方式>:频率怎么扫?比如从10Hz扫到100kHz。

举个例子,我经常用的一个语句:

.noise V(out) V1 dec 100 10 100k

这句的意思是:以V1作为输入参考源,对输出节点out做噪声分析。频率从10Hz到100kHz,每十倍频取100个点。

重要提醒:输入源必须是独立电压源或电流源。不能是受控源,也不能是端口。我刚开始就犯过这个错,仿真报错半天没找到原因。

2.2 输出噪声(Output Noise)—— 你到底听到了多少杂音?

输出噪声,说白了就是你在电路输出端测量到的总噪声。单位是V/√Hz(电压噪声谱密度)。

你想想看,一个放大器,输入端接地,输出端却还有信号在跳。那就是输出噪声在作怪。它包含了电路里所有器件贡献的噪声——电阻的热噪声、MOS管的闪烁噪声和沟道热噪声,等等。

LTspice仿真完成后,你可以在波形窗口里直接看V(onoise)这个量。这就是输出噪声谱密度。

我记得有一次,我设计一个低噪声前置放大器。仿真出来的输出噪声曲线在低频段翘得老高。我一开始以为是电源纹波的问题,查了半天才发现——原来是输入级的MOS管尺寸选得太小,1/f噪声太大了。嗯,这就是输出噪声分析的价值。

小技巧:输出噪声的单位是nV/√Hz或者μV/√Hz。如果你看到的是V/√Hz,数值会非常小,别慌。右键点击波形标签,可以改成更直观的单位。

2.3 输入噪声(Input Noise)—— 把噪声折算到输入端看

输入噪声这个概念,很多新手容易搞混。它其实是一个等效的概念:把输出端测到的总噪声,除以电路的增益,折算回输入端。

公式很简单:

输入噪声 = 输出噪声 / 电路增益

为什么要有这个折算?因为不同电路的增益不一样。你直接比较两个放大器的输出噪声,没有意义。但比较它们的输入噪声,就能公平地评价谁的噪声性能更好。

LTspice里,输入噪声的波形叫V(inoise)。单位也是V/√Hz。

我举个例子你就明白了:

一个放大器增益是100倍,输出噪声是10μV/√Hz。那它的输入噪声就是0.1μV/√Hz。另一个放大器增益只有10倍,输出噪声是5μV/√Hz。看起来第二个输出噪声更小,但折算到输入端——0.5μV/√Hz,反而比第一个差。这就是输入噪声的价值所在。

避坑指南:我曾经在一个项目中,直接拿输出噪声来比较两个不同增益的运放,结果选错了方案。后来重新算输入噪声才发现问题。记住:比较噪声性能,永远看输入噪声。

2.4 输出噪声与输入噪声的关系

这两者的关系,其实就一句话:

输入噪声 = 输出噪声 / 增益

但这里有个细节要注意:增益是频率的函数。低频增益和高频增益不一样。所以输入噪声和输出噪声的曲线形状,可能完全不同。

比如,一个运放的开环增益在低频时很大,到了高频就滚降。那它的输出噪声谱密度可能在高频段看起来不大,但折算到输入端——因为增益变小了,输入噪声反而会变大。这个现象在宽带放大器里特别明显。

我建议你每次做噪声仿真,都同时看V(onoise)和V(inoise)两条曲线。对比着看,能帮你快速定位噪声瓶颈。

参数 符号 含义 单位
输出噪声 V(onoise) 输出端的总噪声谱密度 V/√Hz
输入噪声 V(inoise) 等效到输入端的噪声谱密度 V/√Hz
增益 从输入到输出的传输函数 无量纲

2.5 一个完整的仿真示例

光说不练假把式。咱们搭一个最简单的共源放大器,跑一下噪声仿真看看。

电路很简单:一个NMOS管,一个电阻做负载,输入接直流偏置加小信号源。

网表如下:

V1 Vdd 0 5
V2 Vin 0 0.8 ac 1
R1 Vdd Vout 10k
M1 Vout Vin 0 0 NMOS W=10u L=0.18u
.model NMOS NMOS VTO=0.7 KP=200u
.noise V(Vout) V2 dec 100 10 100k
.backanno
.end

仿真跑完后,打开波形窗口。添加V(onoise)和V(inoise)。你会看到:

  • 低频段,噪声主要来自MOS管的1/f噪声,曲线往下掉。
  • 中频段,热噪声占主导,曲线比较平坦。
  • 高频段,增益下降,输入噪声开始翘起来。

这个趋势,你在实际项目中会反复看到。记住它,以后分析复杂电路时心里就有底了。

我的习惯:每次仿真完,我都会把V(inoise)的曲线导出成文本文件。方便跟数据手册里的噪声曲线做对比。LTspice里右键点击波形,选Export就可以。

2.6 常见错误与调试方法

最后,我总结几个新手容易犯的错:

  1. 输入源没加AC幅值:.noise语句里指定的输入源,必须设置AC幅值。比如ac 1。否则仿真会报错。
  2. 输出节点选错了:如果你看的是差分输出,要写V(outp, outn)这种形式。
  3. 忘记看总噪声:.noise仿真默认只给谱密度。想看总噪声(RMS值),需要手动积分。LTspice里可以用.meas语句算。

嗯,这一章的内容就到这儿。噪声分析入门其实不难,关键是理解输出噪声和输入噪声的区别。下一章,咱们会深入聊噪声的各个分量——热噪声、闪烁噪声、散粒噪声,看看它们是怎么来的,怎么在仿真里识别它们。

记住:噪声是模拟电路的天敌,但也是你展现功力的舞台。