打开 ADS 软件,执行【File】→【New】→【System Project】命令,创建新的系统项目;
在项目中新建原理图文件(Schematic),进入原理图编辑界面,为后续搭建 RF 接收系统做准备。
1. 添加 Butterworth 带通滤波器
在元件模型列表窗口中,展开【Filters】→【Bandpass】分类,选择并插入 Butterworth 滤波器(Btrwrth)。
参数设置如下:
中心频率 Fcenter = 1.9GHz;
通带带宽 BWpass = 200MHz;
阻带带宽 BWstop = 1.0GHz;
通带波纹 Apass = 3.0103dB;
阻带衰减 Astop = 40dB。
2. 添加放大器
在元件模型列表窗口中,展开【System】→【Amps&Mixers】分类,选择并插入放大器(Amplifier),命名为 AMP1。
参数设置如下:
正向传输系数 S21 = dbpolar (20, 0)(表示 20dB 增益,相位 0°);
输入反射系数 S11 = polar (0, 0);
输出反射系数 S22 = polar (0, 180);
反向传输系数 S12 = 0(忽略反向信号);
噪声系数 NF = 7dB。
3. 添加 S 参数分析模型
执行【Insert】→【Template】命令,在弹出的 “Schematic Design Templates” 对话框中,选择【ads_templates:S_Params】模板,插入 S 参数分析模型,用于后续 S 参数仿真。
注意事项
Butterworth 滤波器的行为模型为理想模型,通带内无波纹;若替换为滤波器与放大器的实际电路模型,系统通带内会出现波纹。若需设计带波纹的系统滤波器,可选用【Bandpass】分类下的椭圆滤波器(Elliptic)行为模型。
4. 添加混频器(Mixer)与本振(LO)相关设置
a) 插入混频器
在元件模型列表窗口【System】→【Amps&Mixers】分类中,插入混频器(Mixer,非 Mixer2),命名为 MIX1。
⚠️ 注意:Mixer2 用于非线性分析,此处需选择基础版 Mixer。
b) 配置混频器参数
转换增益 ConvGain = dbpolar (3, 0)(3dB 增益,相位 0°);
边带选择 SideBand = LOWER(取混频器输出的低端边带);
输入反射系数 S11 = polar (0, 0);
输出反射系数 S22 = polar (0, 180);
本振端口反射系数 S33 = 0。
c) 调整组件文字位置
可按下 F5 键,鼠标点击原理图上组件的文字标签(如参数名称、组件编号),拖动至合适位置,避免文字重叠影响可读性。
5. 添加本振信号源与阻抗匹配
在元件模型列表窗口中,展开【Sources】→【Freq Domain】分类,插入 V_1Tone 信号源(命名为 SRC1)、50Ω 电阻(R1)及接地符号,构成本振信号回路,提供 100MHz 中频输出。
V_1Tone 信号源参数:
信号幅度 V = polar (1, 0) V;
信号频率 Freq = 1.8GHz(作为本振频率);
电阻 R1 阻值 = 50Ω(匹配系统阻抗)。
6. 添加 Bessel 低通滤波器
在元件模型列表窗口【Filters】→【Lowpass】分类中,插入 Bessel 低通滤波器(LPF_Bessel),命名为 LPF1,连接至混频器输出端,用于滤除中频以外的高频成分。
参数设置:通带频率 Fpass = 200MHz,通带波纹 Apass = 3dB。
7. 添加端口终端(Term)
在原理图的信号输入端(port1)和低通滤波器输出端(port2)分别插入端口终端(Term),命名为 Term1 和 Term2,设置阻抗 Z = 50Ω,匹配系统特征阻抗。
1. 插入 S 参数仿真控制器
在元件模型列表窗口【Simulation】→【S_Params】分类中,插入 S 参数仿真控制器(图标为 “控制齿轮”),命名为 SP1。
2. 配置仿真频率参数
双击 SP1 打开参数设置窗口,在【Frequency】标签页中
设定频率范围:Start = 1.0GHz,Stop = 3.0GHz;
频率步长 Step = 100MHz;
勾选 “Enable AC frequency conversion”(启用 AC 频率转换)。
3. 设置参数显示选项
切换至【Display】标签页,勾选 “FreqConversion” 和 “FreqConversionPort” 两项,使该参数在原理图上显示,便于后续检查配置。
4. 配置仿真数据集与运行仿真
a) 打开仿真设置界面
点击菜单栏【Simulate】→【Simulation Setup】,弹出 “Simulation Setup” 对话框。
b) 命名数据集
在【Dataset】栏中,将默认数据集名称修改为 “rf_sys_10dB”(表示该仿真对应放大器增益为 10dB 的系统)。
c) 运行仿真
点击【Apply】保存设置,再点击【Simulate】启动 S 参数仿真,等待仿真完成。
1. 插入 S21 图形
仿真完成后,自动弹出数据显示窗口(Data Display),执行【Insert】→【Plot】→【Rectangular Plot】命令,插入矩形图。
2. 配置 S21 数据显示
在 “Plot Traces & Attributes” 对话框中:
选择数据集 “rf_sys_10dB”;
选择待显示参数:S [2,1](即 S21,端口 2 到端口 1 的正向传输系数);
设置单位为 “dB”,点击【Add】添加轨迹。
点击工具栏【Marker】→【New Marker】,在频率 1.9GHz 处添加三角标记(m1),读取该频率下的 S21 值(约 12.313dB,为混频器转换增益减去失配损耗后的结果)。
1. 修改放大器增益参数
返回原理图,双击放大器 AMP1,将 S21 修改为 dbpolar (20, 180)(增益提升至 20dB)。
2. 重新配置仿真数据集
再次执行【Simulate】→【Simulation Setup】,将数据集名称修改为 “rf_sys_20dB”,点击【Apply】→【Simulate】启动仿真。
3. 处理数据集提示
仿真完成后,弹出 “Default Dataset” 提示框(询问是否将默认数据集从 “rf_sys_10dB” 改为 “rf_sys_20dB”),点击【No】
4. 叠加显示 20dB 增益的 S21 曲线
在数据显示窗口中,双击原 10dB 增益的 S21 曲线,打开 “Plot Traces & Attributes” 对话框:
选择数据集 “rf_sys_20dB”;
再次添加 S [2,1] 参数(单位 dB),点击【OK】。
5. 分析增益差值
在 20dB 增益的 S21 曲线上添加标记点 m2(1.9GHz 处),执行【Marker】→【Delta Mode On】启用差值模式,可观察到两曲线在 1.9GHz 处的差值约为 10dB(与放大器增益调整量一致),验证仿真结果的合理性。
6. 保存数据
点击菜单栏【File】→【Save】,保存数据显示窗口的配置与仿真结果。
1. 保存新设计
执行【File】→【Save Design As】,将当前原理图另存为 “rf_sys_phnoise”(用于后续相位噪声相关仿真,避免覆盖原设计)。
2. 删除冗余组件
在新原理图中,删除以下组件:
S 参数仿真控制器(SP1);
本振信号源(V_1Tone)、50Ω 电阻(R1)及接地符号。
3. 替换输入端口为 P_1Tone 源
在元件模型列表窗口【Simulation】→【LSSP】分类中,插入 P_1Tone 信号源(替代原 Term1),命名为 “RF_source”,作为 RF 输入信号源。
参数设置:
信号频率 Freq = 1.9GHz;
信号功率 P = polar (dbmtow (-40), 0)(将 - 40dBm 转换为线性功率值);
端口编号 Num = 1;
阻抗 Z = 50Ω。
4. 添加输出节点标记
使用快捷键(如 “N” 键),在低通滤波器(LPF1)的输出端插入导线标记,命名为 “Vout”(用于后续监测该节点的电压信号)。
5. 插入带相位噪声的振荡器
在元件模型列表窗口【Sources】→【Freq Domain】分类中,插入带相位噪声的振荡器(OSCwPhNoise),命名为 OSC1,连接至混频器的本振端口。
参数设置:
振荡频率 Freq = 1.8GHz(与原 LO 频率一致);
输出功率 P = dbmtow (0)(0dBm);
输出阻抗 Rout = 50Ω;
相位噪声 Phase Noise = list (10Hz, -10dB, 100Hz, -20dB, 1kHz, -30dB, 10kHz, -40dB)(表示不同频偏下的相位噪声值)。
⚠️ 注意:OSCwPhNoise 自带 50Ω 电阻,无需额外添加,功能与 “V_1Tone+50Ω 电阻” 一致,但增加了相位噪声特性。
1. 插入 NoiseCon 组件
在元件模型列表窗口【Simulation】→【HB】分类中,插入噪声控制器(NoiseCon),命名为 NC1。
⚠️ 注意:NoiseCon 需与 HB(谐波平衡)仿真配合使用,可将仿真控制与噪声测量分离,支持多组噪声测量配置。
2. 配置噪声频率参数
双击 NC1 打开参数设置窗口,在【Freq】标签页中:
扫类型 Sweep Type = Log(对数扫频);
频率范围:Start = 10Hz,Stop = 10.0kHz;
每十倍频点数 Pts./decade = 5(总点数 16)。
3. 关联噪声测量节点
切换至【Nodes】标签页:
点击 “Pos Node” 下拉框,选择之前添加的 “Vout” 节点;
点击【Add】将 Vout 添加为噪声测量节点。
4. 配置相位噪声参数
切换至【PhaseNoise】标签页:
相位噪声类型 Phase Noise Type = Phase noise spectrum(相位噪声谱);
载波频率 Carrier Frequency = 100MHz(即系统中频频率,带 LO 引入的相位噪声)。
5. 设置参数显示选项
切换至【Display】标签页,勾选 “CarrierFreq”“PhaseNoise”“NoiseNode” 三项,使该参数在原理图上显示,便于检查配置。
(对应噪声控制器最终配置截图,展示原理图上显示的参数:NLNoise Start=10Hz、NLNoise Stop=10.0kHz、CarrierFreq=100MHz、NoiseNode [1]=Vout 等)
最后显示的噪声控制器设置如下图所示。
1. 插入 HB 仿真控制器
在元件模型列表窗口【Simulation】→【HB】分类中,插入谐波平衡仿真控制器(图标为 “HB”),命名为 HB1。
2. 配置基波频率
双击 HB1 打开参数设置窗口,在【Freq】标签页中:
点击【Add】添加第一个基波频率:Frequency = 1.8GHz(本振 LO 频率),Order = 3(谐波次数);
再次点击【Add】添加第二个基波频率:Frequency = 1.9GHz(RF 信号频率),Order = 3;
最大混频次数 Maximum mixing order = 4(用于计算电路中的混频产物,包括 100MHz 中频)。
⚠️ 注意:无需额外指定中频频率,HB 仿真会根据基波频率、谐波次数及混频次数自动计算中频(1.9GHz - 1.8GHz = 100MHz)。
3. 设置参数显示选项
切换至【Display】标签页,勾选 “MaxOrder”“Freq [1]”“Freq [2]”“Order [1]”“Order [2]” 五项,使参数在原理图上显示。
4. 关联噪声控制器
切换至【Noise】标签页:
在 “NoiseCons” 栏中,点击【Edit】,选择之前配置的噪声控制器 “NC1”;
点击【Add】将 NC1 关联至 HB 仿真,使 HB 仿真包含噪声分析。
5. 检查最终原理图
最终原理图组件连接关系如下:
RF_source(1.9GHz,-40dBm)→ Butterworth 带通滤波器 → 放大器(20dB)→ 混频器 → Bessel 低通滤波器 → Term2;
OSCwPhNoise(1.8GHz,带相位噪声)→ 混频器本振端口;
HB1(谐波平衡控制器)与 NC1(噪声控制器)关联,监测 Vout 节点噪声。
1. 分析相位噪声谱(pnmx)
a) 插入相位噪声谱图
仿真完成后,在数据显示窗口执行【Insert】→【Plot】→【Rectangular Plot】,插入矩形图。
b) 配置相位噪声数据
在 “Plot Traces & Attributes” 对话框中:
选择数据集 “rf_sys_phnoise”;
选择参数 “pnmx”(相位噪声最大值);
设置 X 轴单位为 “Log”(对数坐标),Y 轴单位为 “dBc”(相对于载波的分贝数)。
c) 添加频偏标记
插入标记点(如 m1),观察 1kHz 频偏下的相位噪声值(约 - 30dBc,与振荡器相位噪声设置一致)。
(对应相位噪声谱截图,X 轴为频偏(10Hz~10kHz,对数坐标),Y 轴为 pnmx(dBc),标记点显示 1kHz 处的具体数值)
2. 分析 Vout 节点电压(中频信号)
a) 插入 Vout 频谱图
再次插入矩形图,在 “Plot Traces & Attributes” 对话框中:
选择数据集 “rf_sys_phnoise”;
选择参数 “Vout”,设置单位为 “dBm”(功率单位)。
b) 验证中频信号功率
在 100MHz(中频)处添加标记点(如 m1),读取 Vout 功率值(约 - 17dBm)。
⚠️ 理论计算:RF 输入功率(-40dBm)+ 放大器增益(20dB)+ 混频器转换增益(3dB)- 系统损耗(约 6dB)= -17dBm,与仿真结果一致,验证仿真正确性。
b. 储存。你现在已经完成了设计RF接收器的第一步,在下面的章节中,你将用电路替换系统模型组件。
SDD(Symbolically Defined Device,符号定义元件)允许通过方程定义线性 / 非线性元件的节点特性,本部分通过 SDD 实现混频器功能,演示其灵活的参数化设计能力。
1. 保存新设计
执行【File】→【Save Design As】,将 “rf_sys_phnoise” 另存为 “rf_sys_sdd”,避免覆盖原设计。
2. 替换混频器为 3 端口 SDD
a) 删除原有混频器
删除原理图中的 MIX1(原混频器)。
b) 插入 3 端口 SDD
在元件模型列表窗口【Eqn Based】→【Nonlinear】分类中,插入 3 端口 SDD(SDD3P),命名为 SDD3P1。
3. 定义 SDD 方程(实现混频功能)
双击 SDD3P1 打开方程编辑窗口,修改节点电流方程,实现 “无转换增益的混频器” 功能(输出差频与和频):
I [1,0] = (_v1)/50.0(RF 端电流方程,_v1 为端口 1 电压,50Ω 为匹配阻抗);
I[2,0] = (_v2 - _v1*_v3)/50.0(IF 端电流方程,_v1*_v3 表示 RF 与 LO 电压相乘,实现混频;_v2 为端口 2 电压,输出差频(1.9GHz-1.8GHz=100MHz)与和频(1.9GHz+1.8GHz=3.7GHz));
I [3,0] = (_v3)/50.0(LO 端电流方程,_v3 为端口 3 电压)。
⚠️ 注意:方程中 “_v1*_v3” 表示电压乘积(混频核心),非平方运算,需严格遵循 SDD 方程语法。
4. 运行 HB 仿真与分析 Vout 频谱
a) 启动 HB 仿真
保持 HB1 与 NC1 的配置不变,点击【Simulate】→【Run】启动仿真。
b) 配置瞬态仿真参数
双击 Tran1:
停止时间 StopTime = 4/100MHz = 40ns(覆盖 4 个中频周期);
最大时间步长 MaxTimeStep = 1/(2*1800MHz) ≈ 277ps(满足奈奎斯特采样定理)。
c) 分析瞬态仿真结果
仿真完成后,在数据显示窗口插入矩形图,输入公式 “dbm (fs (Vout))”(通过傅里叶变换(fs)将时域 Vout 转换为频域,并计算功率),结果与 HB 仿真的 Vout 频谱一致(100MHz 与 3.7GHz 信号清晰可见),验证 SDD 模型的正确性。
本流程从基础的 RF 接收系统搭建(行为模型),逐步深入至 S 参数仿真、相位噪声分析,最后通过 SDD 仿真拓展参数化设计能力,覆盖 ADS 系统仿真的核心环节:
组件选择与参数配置:重点关注滤波器、放大器、混频器的关键参数(如中心频率、增益、边带选择);
仿真控制器配置:S 参数仿真(频率转换)、HB 仿真(谐波与噪声)、瞬态仿真(时域验证)的核心参数设置;
结果分析:通过标记点、差值模式、理论计算验证仿真结果的合理性,确保设计正确。
通过本流程,可掌握 ADS 系统级仿真的基本方法,为后续基于实际电路模型的 RF 系统设计与优化奠定基础。