十年匠心定制 · 商业建站与技术教学双线并行 咨询热线:400-886-1026 service@lmnt.cn
ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

【载波频率偏移(CFO)详解:从原理到补偿】

【载波频率偏移(CFO)详解:从原理到补偿】 载波频率偏移CFO详解从原理到补偿一、通信里的“频率要严丝合缝”1.1 为什么要载波无线通信无法直接发送低频的语音/数据比特因为低频信号波长太长天线效率极低。所以发送端会把基带信号“搬”到一个很高的载波频率上比如 2.4 GHz、5 GHz、28 GHz再由天线发射出去。接收端要做的第一件事把信号从高频“搬”回基带。这个“搬下来”的动作就要求接收机自身产生一个和发送端几乎一模一样的载波频率。1.2 频率对不上怎么办假设发送端载波是发送端cos(2π f_c t) 接收端cos(2π f_c t)理想情况下f_c f_c完美变频。但现实是接收端本地晶振产生的频率总是和发送端有偏差CFO Δf f_c - f_c这个Δf就是载波频率偏移Carrier Frequency Offset缩写为CFO。可以把它想象成两台收音机给定同一个电台频率但一台机器内部的晶振偏快、另一台偏慢导致收听时声音逐渐“跑调”。二、CFO 到底怎么来的2.1 晶振精度有限主要原因通信设备内部都用晶振来产生频率。晶振有一个指标叫“ppm”parts per million。普通晶振精度±10 ppm ~ ±50 ppm高质量温补晶振±0.5 ppm ~ ±2 ppm恒温晶振±0.01 ppm ~ ±0.1 ppmppm 的含义是“每百万份误差多少份”。如果一个系统工作在 2.4 GHz发射端和接收端的晶振误差各 20 ppm那么总频偏可达2.4 GHz × 40 ppm 2.4e9 × 40e-6 96 kHz接收机如果不去纠正这 96 kHz 的频偏信号会完全乱掉。2.2 温度漂移晶振频率会随温度变化。手机刚开机是冷的运行一小时后发热晶振频率会缓慢偏移。所以 CFO 不是固定不变的它会随着时间慢慢移动。2.3 多普勒频移如果发射端或接收端在移动由于多普勒效应实际接收到的载波会偏移f_d v / λ高铁上速度 300 km/h ≈ 83 m/s频率 2.4 GHz波长 0.125 m多普勒频偏约83 / 0.125 ≈ 664 Hz虽然这个数值不算大但对高速通信系统如卫星、车联网会影响很大。三、CFO 的数学模型它如何改变接收信号假设发送端发射的基带复信号是x(t)那么经过载波调制后发射接收端经过理想下变频并且没有频偏得到的基带信号就是r(t) x(t) noise但如果存在 CFOΔf下变频后会残留一个频率分量r(t) x(t) · e^(j2πΔf·t) noise这个公式的意思是接收到的基带信号的相位会随着时间不断旋转。数字化之后每一个采样点会额外乘上一个相位旋转因子r[n] x[n] · e^(j2πΔf·n·T_s)其中T_s是采样周期n是采样点序号所以第n个符号积累的相位误差是φ[n] 2πΔf·n·T_s关键点在于这个相位误差不是固定的它随 n 线性增长。举例符号率 1 MHz即每符号 1 微秒频偏 100 Hz那么每个符号产生的相位增量是2π × 100 × 1e-6 0.0002π rad 0.036°1000 个符号之后总相位旋转 36°。对 QPSK 来说45° 就可能跨过判决边界所以几千个符号后就会误码。如果频偏是 1 kHz每个符号旋转 0.36° 1000 个符号后旋转 360°星座已经转了好几圈所以 CFO 会造成时间累积性的相位旋转这是它对通信最本质的破坏。四、CFO 会带来哪些具体问题4.1 星座图旋转这是最直观的现象。理想 BPSK/QPSK 星座点应聚集在固定位置但受 CFO 影响接收到的星座点会像“夜市里的旋转木马”一样不断旋转频偏为正 → 星座顺时针旋转频偏为负 → 星座逆时针旋转当旋转角度越过判决边界时比特判决出错BER 急剧上升。4.2 匹配滤波器失配接收端通常用一个和发送脉冲匹配的滤波器来最大化 SNR。但这个滤波器是设计在基带频率位置的CFO 导致信号频谱整体偏移了一个Δf结果信号的一部分被滤波器边缘滤掉 → 能量损失滤波器外的噪声混进来 → SNR 下降4.3 帧同步和定时同步失效接收机搜索帧头时通常依赖已知前导码做相关。相关峰值的大小对频偏非常敏感如果 CFO 导致相邻采样点相位旋转超过一定范围相关系数会大幅下降结果就是明明信号就在那儿但同步器检测不到导致整帧丢包。这种现象通常发生在 CFO 还没严重到破坏解调时就已经破坏了同步。4.4 OFDM 系统子载波间干扰ICIOFDM 系统把频谱分成很多窄带子载波靠正交性区分。CFO 会破坏正交性使相邻子载波互相干扰SNR 天花板下降即使信道本身噪声很小也会出现错误平层error floor4.5 错误平层当 CFO 未被完全补偿时即使信号功率无限大也依然存在残留相位旋转。这会表现为增加发射功率也无法降低误码率因为误差不是源于噪声而是源于未补偿的频偏五、如何解决 CFO估计 → 补偿 → 跟踪整体框架就是三步先测出频偏 Δf → 把信号乘上 e^(-j2πΔf·t) 拉回来 → 跟踪残余频偏的变化5.1 CFO 估计怎么测出 Δf方法一时域相位相关法最经典发送端在数据前插入一段重复的训练序列。比如发送 [A][A][数据]接收端收到后把第一段A和第二段A做延迟相关。设第一段采样点为r[n] A[n] · e^(j2πΔf·n·T)第二段采样点延迟了 D 个采样r[nD] A[n] · e^(j2πΔf·(nD)·T)把第二段共轭乘以第一段r[n] · r[nD]* |A[n]|² · e^(-j2πΔf·D·T)可以看到乘积的相位只包含一个东西φ -2πΔf·D·T所以只要对这个乘积取相角就能恢复 CFOΔf -φ / (2πDT)优点计算量小利用 FFT 可以一次算出多个延迟相关缺点需要额外的训练序列占用带宽估计范围受 D 限制D 越大估计精度越高但可估计的最大频偏越小这是 Wi-Fi、LTE 中最常用的 Schmidl-Cox 算法的基础思想。方法二FFT 峰值估计法如果发送一个已知的单音single tone例如cos(2πf_0 t)接收后做 FFT频谱峰值原本应该在f_0处。因为有 CFO峰值会移动到f_0 Δf观测峰值频率 → 减去理论频率 → 得到 CFOFFT 的频率分辨率是Δf_res Fs / N其中F_s是采样率N是 FFT 点数。FFT 点数越多分辨率越高。还可以用抛物线插值进一步提高精度。优点实现简单特别适合初始粗同步缺点只适用于单音或窄带信号抗噪声性能不如相关法方法三盲估计法无需训练序列利用调制信号的数学特性对 BPSK 信号做平方运算因为 BPSK 相位是 0 或 π平方后变成 2 倍相位会生成一个离散频率分量在2Δf处据此推出 CFO。对 QPSK 信号做四次方运算可以得到类似效果。优点不需要额外训练数据节省带宽适合连续流信号缺点低 SNR 下性能差计算量大实现复杂方法四循环前缀估计法OFDM 专用OFDM 信号中每个符号末尾会复制一段放到开头形成循环前缀CP。利用 CP 和复制源的相位差可以估计 CFO。接收端对每个 OFDM 符号内的 CP 与尾部数据做相关同样利用相位差求 Δf这是 DVB-T、Wi-Fi、LTE 下行最常用的方式之一因为它不需要额外插入训练符号。5.2 CFO 补偿怎么把频率拉回来估计出Δf后补偿就是一乘假设估计值是Δf_est补偿后的信号为r_comp[n] r[n] · e^(-j2πΔf_est·n·T)这个操作在数字域里通常用一个NCO数控振荡器产生补偿信号与收到的采样点复乘。前馈补偿先用训练序列算一次 CFO再对整个数据包补偿。适合 CFO 基本恒定的短数据包。缺点是如果 CFO 在传输过程中漂移后期会重新出现误差。反馈跟踪补偿使用锁相环PLL或频率锁定环FLL不断估计残余 CFO实时调整 NCO 频率。适合长时间传输、CFO 不断变化的场景。常见环路Costas 环可以同时跟踪载波相位和残余频率FLL先把大频偏拉进捕获带再切换给 PLL 精确跟踪补偿后的残余频偏补偿不可能做到零误差。残余频偏如果足够小使得一个数据包内的相位旋转远小于判决边界对误码率影响就可忽略。例如 QPSK 系统残余相位 5° 一般可以接受。5.3 CFO 跟踪怎么应付“慢漂移”导频符号法在数据中周期性插入已知的导频符号。接收端从导频中提取残余相位误差通过相位旋转补回来。每个导频块估计一次相位 → 相邻导频之间插值 → 持续修正判决反馈法用已解调出的数据比特来估计残余相位误差。适合高 SNR 系统低 SNR 时容易出错传播。自适应滤波 / PLL码元同步环路中同时包含频率估计器比如二阶环路相位误差 → 环路滤波器 → 频率控制字 → NCO它可以跟踪频率的慢变化。六、实际系统是怎么组合使用的以 Wi-Fi802.11a/g/n为例阶段使用机制包检测短训练序列做粗糙的频率捕获CFO 粗估计短训练序列求相位差估计整数倍频偏CFO 细估计长训练序列做高精度 CFO 估计数据阶段用导频子载波持续跟踪残余 CFO 与相位噪声以 LTE 为例阶段使用机制小区搜索PSS/SSS 辅助完成初始频率同步随机接入PRACH 前导做快速 CFO 估计数据阶段CRS小区参考信号持续跟踪 CFO以卫星通信为例卫星高速移动多普勒频移变化快接收机必须用二阶/三阶锁频环并经常借助已知帧头做重估七、总结如何处理 CFOCFO 收发两端载波频率之间的偏差 影响 ① 星座旋转 → 误码率上升 ② 匹配滤波器失配 → SNR 损失 ③ 相关峰下降 → 帧同步丢失 ④ OFDM 子载波间干扰 → 错误平层 解决 ① 发送训练序列 → 时间相关法 / FFT 估计频率偏差 ② 数字混频 NCO → 补偿偏移 ③ 锁相环 / 导频符号 → 跟踪剩余漂移 最终目标 把残余相位旋转控制在判决边界以内使 CFO 对系统性能的影响降到可忽略不计的程度。八、一句话通俗总结CFO 就是接收机和发射机的“音准”没对准。刚开始听起来还好时间一长就越跑越偏最后完全听不清。解决办法是先让接收机“听一段熟悉的旋律”算出跑了多少调估计然后赶紧把本地频率“校准”补偿而且还要在过程中不断微调防止它再次跑偏跟踪。
返回列表