第3章 1dB压缩点仿真原理:输入功率扫描,增益压缩曲线提取,1dB压缩点判读方法

各位同学,今天我们来聊聊LNA线性度仿真里最基础、也最核心的一个指标——1dB压缩点。

说实话,我刚入行那会儿,觉得1dB压缩点不就是找个功率点嘛,扫一下增益掉1dB就完事了。结果第一次做项目,仿真出来的P1dB跟实测差了3个dB,被老大叫去办公室聊了半小时人生。从那以后,我才真正沉下心去抠这个仿真原理。

这一章,我就把当年踩过的坑和总结出来的方法,掰开了讲给你们听。

3.1 什么是1dB压缩点?

先看一个最直观的现象。

你给LNA输入一个小信号,比如-30dBm,放大器老老实实放大,输出功率线性增长。但当你把输入功率往上推,推到某个点,放大器开始“累了”——增益开始下降。

为什么会这样?

说白了,晶体管是非线性的。小信号时,我们可以用跨导gm的一阶项近似;大信号时,高阶项(尤其是三阶项)开始起作用,导致基波增益被压缩。

1dB压缩点的定义:

  • 输入1dB压缩点(IP1dB):增益比线性增益下降1dB时对应的输入功率。
  • 输出1dB压缩点(OP1dB):同一状态下对应的输出功率。

两者关系很简单:

OP1dB (dBm) = IP1dB (dBm) + (Gain_linear - 1) (dB)

注意,这里的Gain_linear是小信号线性增益,单位是dB。

关键概念:1dB压缩点本质上是放大器线性工作区的“上边界”。超过这个点,增益压缩会加速恶化,谐波和互调产物急剧增加。

3.2 仿真原理:输入功率扫描

仿真1dB压缩点的方法,听起来很简单——扫功率。

但怎么扫、扫多密、从哪开始扫,这里面有讲究。

3.2.1 基本流程

  1. 设置输入功率扫描:从远低于P1dB的功率点开始(比如-30dBm),逐步增加到超过P1dB约10dB。
  2. 在每个功率点做谐波平衡仿真:提取基波输出功率和增益。
  3. 绘制增益 vs. 输入功率曲线。
  4. 找到增益下降1dB的点:读取对应的输入/输出功率。

我习惯在ADS里用P1dB控件直接跑,但如果你想深入理解原理,建议手动搭一个扫描模板。

3.2.2 扫描步长的选择

这里有个常见的坑:步长太大,P1dB点找不准;步长太小,仿真时间翻倍。

我个人建议:

  • 粗扫阶段:5dB步长,快速定位P1dB大致范围。
  • 精扫阶段:在P1dB附近±5dB范围内,用0.5dB或0.2dB步长。

小技巧:在ADS里可以用sweep plan做自适应步长——在增益变化快的区域自动加密扫描点。我一般设两个plan:一个粗扫,一个精扫,然后合并结果。

3.3 增益压缩曲线提取

扫完功率,我们得到一堆数据点。接下来要做的,就是从这些点里提取出增益压缩曲线。

3.3.1 增益的计算方式

增益有两种定义:

增益类型 计算公式 说明
transducer gain (G_T) P_load / P_avs 最常用,考虑源和负载匹配
power gain (G_P) P_load / P_in 不考虑源匹配,仅放大器自身

在P1dB仿真中,我通常用transducer gain,因为它更贴近实际测试环境——信号源内阻50Ω,负载50Ω。

3.3.2 提取步骤

假设你已经跑完功率扫描,得到以下数据:

  • Pin:输入功率数组(dBm)
  • Pout:基波输出功率数组(dBm)

增益计算:

Gain(dB) = Pout(dBm) - Pin(dBm)

然后找到线性区的增益平均值:

Gain_linear = mean(Gain[Pin < -20])  // 取小信号区的增益平均

最后,找到满足下式的功率点:

Gain(Pin) = Gain_linear - 1 (dB)

这个Pin就是IP1dB。

注意:有些仿真器会直接输出GainCompression曲线,但不同工具对“压缩量”的定义可能不同。我遇到过ADS和Spectre对同一电路给出的P1dB差了0.3dB,原因就是增益参考点的选取方式不同。建议自己写脚本算一遍,心里有底。

3.4 1dB压缩点判读方法

数据算出来了,但怎么判读?这里我总结了几种方法。

3.4.1 直接读取法

最直观的方法:在增益曲线上画一条水平线(线性增益),再画一条向下偏移1dB的平行线,两条线与增益曲线的交点就是P1dB。

在ADS里,可以用Marker工具直接拖拽读取。但我建议你用Equation控件写个自动判读脚本,避免人为误差。

3.4.2 插值法

如果扫描步长不够密,P1dB可能落在两个扫描点之间。这时需要用插值。

我常用的插值方法:

  • 线性插值:简单快速,但精度一般。
  • 三次样条插值:精度高,适合增益曲线平滑的情况。
  • 多项式拟合:用二阶或三阶多项式拟合增益曲线,然后求解方程。

我个人偏好三次样条插值,在Python里用scipy.interpolate几行代码就搞定。

3.4.3 判读注意事项

这里有几个坑,我曾经都踩过:

  • 增益波动:如果电路在低频段有增益波动(比如多级LNA级间匹配不好),线性增益的平均值要取准,别把波动点算进去。
  • 多级压缩:多级LNA中,后级可能先压缩。这时增益曲线会出现“拐点”,P1dB判读要小心。
  • 温度影响:P1dB随温度变化明显。我一般会在-40°C、+27°C、+85°C三个温度点分别仿真。

实战经验:有一次我仿真一个三级级联LNA,P1dB仿真结果比预期低了2dB。排查了半天,发现是第二级偏置电路在大信号下电压被拉低了,导致增益提前压缩。从那以后,我每次仿真P1dB都会同时监控各级的偏置电压和电流。

3.5 知识体系流程图

下面这张图总结了1dB压缩点仿真的完整知识体系,从原理到判读,一目了然。

1dB压缩点仿真知识体系 1dB压缩点仿真知识体系 1dB压缩点核心概念 仿真原理 输入功率扫描 谐波平衡仿真 扫描步长策略 增益压缩曲线提取 增益类型选择 线性增益平均值 增益压缩量计算 1dB压缩点判读 直接读取法 插值法 多项式拟合 实战注意事项 增益波动处理 多级压缩判断 温度特性仿真 偏置监控

3.6 本章小结

1dB压缩点仿真,说白了就是三步:扫功率、提曲线、判读点。每一步都有细节,每一步都可能踩坑。

我个人觉得,初学者最容易忽略的是两点:一是扫描步长的选择,二是增益参考点的定义。这两点搞清楚了,P1dB仿真基本不会出大问题。