信号与系统基础:采样定理、混叠、数字频率与复数信号表示(I/Q)
数字下变频(DDC)与数字上变频(DUC)的本质,是在数字域完成频谱的搬移、滤波与速率变换。无论是FPGA内部的NCO(数控振荡器)混频,还是CIC/半带滤波器的抽取与插值,其数学根基都建立在采样定理、数字频率以及复数信号表示(I/Q)之上。如果这些概念理解不透彻,工程中极易出现频谱混叠、镜像抑制不良、相位不连续等问题。本章将系统梳理这些必备的数学与信号处理概念,并直接映射到FPGA实现的具体场景中。
上图展示了从模拟信号到FPGA内部DDC处理链路的完整信号流。可以看到,ADC采样是模拟域与数字域的分界线,而数字频率与I/Q复数表示则是后续所有数字信号处理操作的数学语言。下面我们逐一深入剖析这些核心概念。
2.1 采样定理与混叠:数字域的第一道门槛
核心原理
奈奎斯特采样定理指出:对于带宽为B的带限信号,采样率fs必须满足 fs ≥ 2B,才能无失真地恢复原始信号。这里的2B称为奈奎斯特率,而fs/2称为奈奎斯特频率。在FPGA的DDC设计中,ADC的采样率通常远高于信号带宽,例如一个带宽为20 MHz的WCDMA信号,ADC采样率可能设为122.88 MHz,过采样率约为6倍。过采样的好处在于:放宽了抗混叠模拟滤波器的过渡带要求,同时提高了信噪比(处理增益为10·log10(OSR) dB)。
混叠的本质是频谱的周期延拓与重叠。采样在频域等效于将原始频谱以fs为周期进行复制,当信号最高频率超过fs/2时,相邻周期的频谱就会发生重叠,重叠部分的频率成分无法通过任何滤波器分离,造成不可逆的信息损失。在FPGA实现中,混叠一旦发生,后续的CIC、FIR滤波器无论阶数多高都无法消除。
判断方法与操作流程
- 确定信号带宽B:根据系统指标(如LTE 20 MHz、GPS 2.046 MHz)明确有用信号的单边带宽。
- 选择ADC采样率fs:通常取fs = (2.5~8)×B,兼顾抗混叠滤波器实现难度与FPGA处理速率。
- 检查混叠条件:计算信号最高频率 f_max = fc + B/2,确认 f_max < fs/2。若信号为带通采样,需确认信号落在哪个奈奎斯特区。
- 仿真验证:在Matlab/Simulink中生成带外干扰信号,观察ADC采样后频谱是否出现混叠分量。
案例拆解:带通采样中的混叠规避
某雷达系统中心频率fc=1.2 GHz,信号带宽B=10 MHz。若直接采用低通采样,需要fs≥2.4 GHz,ADC选型困难且数据率过高。实际方案采用带通采样,选择fs=100 MHz,信号落在第25奈奎斯特区((2×1.2GHz)/100MHz = 24,即第24~25区边界)。此时需确保:(1) 信号带宽10 MHz远小于fs/2=50 MHz;(2) 前置带通滤波器必须抑制其他奈奎斯特区的噪声。FPGA中NCO的中心频率需根据折叠后的频谱位置重新计算,不能直接使用1.2 GHz。通过带通采样,ADC采样率降低至100 MHz,FPGA处理压力大幅减小。
| 参数 | 低通采样方案 | 带通采样方案 |
|---|---|---|
| 采样率 | ≥2.4 GHz | 100 MHz |
| ADC选型难度 | 极高 | 中等 |
| FPGA数据率 | 极高 | 可接受 |
| 前置滤波器要求 | 低通,过渡带宽松 | 带通,矩形系数要求高 |
| 混叠风险 | 低 | 高,需精确计算奈奎斯特区 |
常见误区与总结
- 误区一:认为采样率越高越好。过高的采样率导致FPGA逻辑资源消耗剧增、功耗上升,且ADC有效位数下降。
- 误区二:忽略带外噪声的混叠。即使信号本身不混叠,宽带噪声也会折叠进带内,降低SNR。
- 误区三:在CIC抽取后才发现混叠,此时已无法补救。应在设计初期进行完整的链路仿真。
2.2 数字频率:从模拟角频率到归一化频率
核心原理
数字频率ω定义为模拟角频率Ω与采样率fs的比值:ω = Ω/fs = 2πf/fs。其单位是弧度/采样点,取值范围为[-π, π](或[0, 2π))。数字频率是周期性的,周期为2π,这意味着频率f和f+fs在数字域不可区分。这一特性直接影响了NCO(数控振荡器)的频率控制字计算。
在FPGA中,NCO通过相位累加器产生正弦/余弦波形。相位累加器的位宽为N位,频率控制字FTW(Frequency Tuning Word)与输出频率f_out的关系为:
FTW = round(f_out / fs × 2^N)
例如,fs=122.88 MHz,N=32位,需要产生f_out=10 MHz的混频本振,则FTW = round(10e6/122.88e6 × 2^32) = round(0.08138 × 4294967296) ≈ 349,525,333。相位累加器每时钟周期累加FTW,溢出即完成一个周期的相位扫描。
判断方法与操作流程
- 确定目标数字频率:根据系统要求计算ω = 2πf/fs。
- 计算FTW:使用上述公式,注意四舍五入带来的频率误差,误差 = |FTW实际 - FTW理想| × fs / 2^N。
- 评估相位噪声:FTW的量化误差会导致杂散,通常需要N≥32位以保证频率分辨率足够。
- 验证:在FPGA中通过ILA抓取NCO输出,用Matlab做FFT分析频谱纯度。
案例拆解:多通道DDC中的NCO频率规划
某多通道接收机需要同时处理5个不同载频的信号,载频分别为f1=100 MHz、f2=110 MHz、f3=120 MHz、f4=130 MHz、f5=140 MHz,采样率fs=400 MHz。若采用单通道DDC架构,需要5个独立的NCO和混频器。每个NCO的FTW分别为:
FTW1 = round(100e6/400e6 × 2^32) = 1,073,741,824
FTW2 = round(110e6/400e6 × 2^32) = 1,181,116,006
FTW3 = round(120e6/400e6 × 2^32) = 1,288,490,189
FTW4 = round(130e6/400e6 × 2^32) = 1,395,864,371
FTW5 = round(140e6/400e6 × 2^32) = 1,503,238,554
在FPGA中,这5个NCO可以共享一个相位累加器的高位,通过时分复用实现资源优化。但需注意,NCO输出的正弦查找表(LUT)深度需足够,否则相位截断误差会引入杂散。本例中采用18位相位截断,理论SFDR约为-18×6.02 ≈ -108 dBc,满足系统要求。
| 通道 | 载频(MHz) | 数字频率(rad) | FTW(32位) | 频率误差(Hz) |
|---|---|---|---|---|
| CH1 | 100 | 1.5708 | 1,073,741,824 | 0 |
| CH2 | 110 | 1.7279 | 1,181,116,006 | 0.37 |
| CH3 | 120 | 1.8850 | 1,288,490,189 | 0.37 |
| CH4 | 130 | 2.0420 | 1,395,864,371 | 0.37 |
| CH5 | 140 | 2.1991 | 1,503,238,554 | 0.37 |
常见误区与总结
- 误区一:将模拟频率直接用于数字滤波器设计。FIR滤波器的截止频率必须用归一化频率表示,例如截止频率为0.2π rad。
- 误区二:忽略NCO相位截断的影响。相位截断位数每减少1位,SFDR恶化约6 dB。
- 误区三:FTW计算时未考虑符号位。对于负频率(下变频时本振低于信号频率),需使用二进制补码表示。
2.3 复数信号表示(I/Q):正交解调与镜像抑制
核心原理
实数信号x(t)的频谱具有共轭对称性,即正负频率分量互为共轭。这意味着实信号无法区分正负频率,信息量减半。而复数信号x(t) = I(t) + jQ(t)的频谱不再对称,可以独立表示正负频率,从而完整保留信号的幅度、相位和频率信息。
在DDC中,ADC采样后的实信号与NCO产生的正交本振(cos和-sin)相乘,得到I路和Q路:
I(n) = x(n) × cos(ω_LO × n)
Q(n) = x(n) × (-sin(ω_LO × n))
经过低通滤波后,I/Q两路构成解析信号,其频谱仅保留正频率部分(若本振频率等于信号载频,则基带信号位于0频附近)。这种正交下变频的优势在于:镜像信号(位于本振另一侧的干扰)可以被完全抑制,理论上镜像抑制比可达无穷大(实际受I/Q幅度和相位不平衡限制,通常为40~60 dB)。
判断方法与操作流程
- 判断是否需要I/Q:若信号为实信号且带宽远小于载频,且系统对镜像抑制有要求(通常>40 dB),则必须采用I/Q架构。
- 设计正交本振:NCO同时输出cos和-sin两路,保证正交性(相位差90°)和幅度一致性。
- I/Q通道匹配:在FPGA中,I/Q两路的滤波器系数、延迟必须完全一致,否则会产生镜像泄漏。
- 校准:通过注入单音信号,测量I/Q幅度误差和相位误差,在数字域进行补偿。
案例拆解:I/Q不平衡的校准
某DDC系统实测镜像抑制比仅35 dB,低于指标要求的50 dB。分析发现,I/Q两路ADC采样的增益误差为0.5 dB,相位误差为3°。在FPGA中增加数字校准模块:
// 幅度校准
I_cal = I × (1 + α/2);
Q_cal = Q × (1 - α/2);
// 相位校准
Q_corr = Q_cal + β × I_cal;
// 其中 α = 增益误差,β = tan(相位误差)
通过迭代调整α和β,将镜像抑制提升至55 dB。校准过程中需注意:α和β的更新步长不宜过大,否则会引入噪声;校准信号应选择远离带内信号的频点,避免干扰正常接收。
| 指标 | 校准前 | 校准后 | 改善量 |
|---|---|---|---|
| 镜像抑制比 | 35 dB | 55 dB | +20 dB |
| I/Q增益误差 | 0.5 dB | 0.05 dB | 10倍改善 |
| I/Q相位误差 | 3° | 0.3° | 10倍改善 |
| EVM | 8% | 2% | 6%改善 |
常见误区与总结
- 误区一:认为I/Q信号必须由两路ADC采样。实际上,单路ADC采样后通过数字混频也可以产生I/Q,但会损失3 dB SNR。
- 误区二:忽略I/Q通道的延迟匹配。在FPGA中,I路和Q路经过不同级数的滤波器时,必须插入延迟对齐。
- 误区三:将复数滤波器与实数滤波器混用。复数滤波器的系数是复数,乘法器资源消耗是实数滤波器的4倍。
2.4 从理论到FPGA:采样率变换与多速率信号处理
核心原理
DDC/DUC的核心操作之一是采样率变换。抽取(Decimation)降低采样率,插值(Interpolation)提高采样率。在FPGA中,抽取操作直接丢弃样本,但必须先用抗混叠滤波器限制带宽;插值操作在样本间插入零值,再用镜像抑制滤波器滤除镜像频谱。
多速率信号处理的关键定理是:抽取后的频谱以fs/D为周期延拓,若信号带宽超过fs/(2D)则发生混叠;插值后的频谱以fs×L为周期,需滤除L-1个镜像。CIC滤波器因其无需乘法器、结构规则,成为FPGA中抽取/插值的第一级首选,但其通带衰减较大,需后续FIR补偿。
判断方法与操作流程
- 确定抽取/插值倍数:根据系统数据率要求,计算总抽取比D_total = fs_in / fs_out。
- 分解抽取链:将D_total分解为CIC抽取(如D=8)、半带抽取(2级,每级2倍)、FIR抽取(如2倍),每级分担部分抗混叠任务。
- 计算各级滤波器指标:确定每级的通带纹波、阻带衰减、过渡带宽度。
- FPGA资源评估:CIC无需乘法器,但寄存器较多;FIR需要乘法器,但阶数较低。
案例拆解:WCDMA DDC抽取链设计
系统要求:输入采样率fs=122.88 MHz,输出基带数据率3.84 MHz(WCDMA码片速率),抽取比D=32。设计抽取链:
第一级:CIC抽取 D=8,微分延迟M=1,阶数N=4
→ 输出速率 15.36 MHz,通带衰减约 0.5 dB
第二级:半带滤波器抽取 D=2
→ 输出速率 7.68 MHz,通带纹波 0.01 dB
第三级:半带滤波器抽取 D=2
→ 输出速率 3.84 MHz,通带纹波 0.01 dB
第四级:FIR补偿滤波器(63阶),补偿CIC通带衰减
在FPGA中,CIC采用Hogenauer结构,使用定点数(如18位)实现。仿真结果显示,整个抽取链的通带纹波小于0.1 dB,阻带衰减大于80 dB,满足WCDMA邻道泄漏比(ACLR)指标。
| 级数 | 滤波器类型 | 抽取比 | 输出速率(MHz) | 乘法器数 | 通带纹波(dB) |
|---|---|---|---|---|---|
| 1 | CIC | 8 | 15.36 | 0 | 0.5 |
| 2 | 半带FIR | 2 | 7.68 | 8 | 0.01 |
| 3 | 半带FIR | 2 | 3.84 | 8 | 0.01 |
| 4 | 补偿FIR | 1 | 3.84 | 32 | 0.05 |
常见误区与总结
- 误区一:将CIC的抽取比设置过大(如D>16),导致通带衰减严重,后续补偿困难。
- 误区二:忽略半带滤波器的通带边缘特性。半带滤波器的通带截止频率为fs/4,若信号带宽接近该值,需增加额外滤波级。
- 误区三:在FPGA中直接使用浮点滤波器系数。必须量化为定点数,并仿真量化误差对系统EVM的影响。