1 概述,从Wiki抄的(google costas loop第一条就是)
Costas环(Costas Loop)用在抑制载波调制信号(比如双边带抑制载波调制)和相位调制信号(BPSK、QPSK)的相干解调中的载波恢复(carrier frequency recovery)上。由通用电气公司的John P. Costas 在1950s发明。它的发明被描述为对现代数字通信产生了深远的影响。Costas环的主要应用是在无线通信接收机中。与基于PLL的检波器相比,它的优势在于,在相位差比较小的情况下,Costas环输出的误差电压为 sin ( 2 ( θ i − θ f ) ) \sin(2(\theta_i-\theta_f)) sin(2(θi−θf)),而基于PLL的检波器输出的误差电压为 sin ( θ i − θ f ) \sin(\theta_i-\theta_f) sin(θi−θf),这不仅使灵敏度提高了一倍,而且使Costas环路特别适合跟踪载波的多普勒频移,特别是在OFDM和GPS接收机中。
2 BPSK接收机中的Costas环
结构如图所示:
- LPF:低通滤波器
- LF:环路滤波器
- VCO:压控振荡器(数字芯片中,比如FPGA中,用DDS)
3 环路滤波器参数设定
环路滤波器结构如下图:
做过接收机的都知道,这里面就是环路滤波器的参数
k
1
k_1
k1、
k
2
k_2
k2不好确定。下面介绍一种简单的不精确的参数确定方法。
所有的参考书上都下列计算参数的公式:
K 1 = − 4 ζ θ ( 1 + 2 ζ θ + θ 2 ) K p K_{1}=\frac{-4 \zeta \theta}{\left(1+2 \zeta \theta+\theta^{2}\right) K_{p}} K1=(1+2ζθ+θ2)Kp−4ζθ K 2 = − 4 θ 2 ( 1 + 2 ζ θ + θ 2 ) K p K_{2}=\frac{-4 \theta^{2}}{\left(1+2 \zeta \theta+\theta^{2}\right) K_{p}} K2=(1+2ζθ+θ2)Kp−4θ2
θ \theta θ 由下式计算:
θ = B n T S N ζ + 1 4 ζ \theta=\frac{\frac{B_{n} T_{\mathrm{S}}}{N}}{\zeta+\frac{1}{4 \zeta}} θ=ζ+4ζ1NBnTS
在上面公式中:
- N:一个符号的采样点数
- ζ \zeta ζ :阻尼因子(damping factor),描述该系统受到扰动后,振动衰减的情况。阻尼因子越小,即表明系统的衰减越小。
- B n T S B_{n} T_{\mathrm{S}} BnTS:环路带宽(normalized loop bandwidth),可以理解为环路捕获频率偏差的大小。
- K p K_p Kp :环路增益(detector gain)
在BPSK接收机中, B n T S B_{n} T_{\mathrm{S}} BnTS一般为0.707, 初始设置可以选择0.01,如果环路无法捕获,试着将这个值调大。如果环路很快捕获,跟踪抖动很大,试着把这个值调小。
4 举例
BPSK系统,信源速率50bps,载波频率200Hz,频偏4Hz,采样频率4000Hz,相位差随机。
搭建Simulink模型,对上述系统进行简单的仿真。
两个参数计算得到:
K 1 = 0.0889 K_1=0.0889 K1=0.0889 K 2 = 4.9377 e − 05 K_2=4.9377e{-05} K2=4.9377e−05
Simulink模型如图所示:
其中,Costas环部分如图所示:
我们主要考察Costas环的捕获和跟踪情况,run,观察结果,如图:
可以看到相位误差有一个明显的捕获和跟踪过程。
我们放大捕获之后的结果观察:
可以看到,Q路信号比较完美的恢复了原始信号,在后续进行bit同步,就可以将信号解调。
5 改进的结构
K.D.Aleksandrov在文章“Lock-in range of BPSK Costas”中提出一种改进的BPSK的Costas环的结构。和传统的结构相比,不用过低通滤波器就可以将结果进入鉴相器进行相位误差运算。结构如下:
除了结构上有所不同,其余参数均和传统环路的参数一致。仿真结果如下:
可以看到,这个结构也能够捕获和跟踪相位差。
6 结论
经过仿真,用改进的结构能够很好的进行频偏捕获和跟踪,而且因为信号没有经过低通滤波器,能够很好保留信号特征,捕获带宽要比传统结构大得多。因此推荐使用改进的Costas环结构。
当然,在工程实践中,还需要根据系统需求对参数进行反复调试,达到最佳效果。
ps:知乎那篇差不多的也是我写的,在这边改进了一下,不是抄袭哈。