薛定谔的猫

一款基于GPS的AFC子系统设计

0
阅读(3537)

1.  背景介绍

OFDM(Orthogonal Frequency Division Multiplexing, 正交频分复用)是一种高效的数字信号传输方式。它的一个主要优点是各个子载波相互正交,从而在多径信道中能以近乎最佳的性能传输数据。通常信号通过信道以后会产生一定的失真,破坏系统的正交性,从而使系统出现ISI(Inter Symbol Interference,符号串扰)以及ICI(Inter channel Interference,子信道串扰)。如果信道失真是线性的,那么通过在OFDM时域信号帧与帧之间引入保护间隔,即通常所说的CP(Cyclic Prefix,循环嵌缀),就可以减弱符号串扰及子带串扰得影响。如果保护间隔的长度大于或等于信道的群时延差,那么正交性完全保证,此时OFDM系统不存在ISI和ICI。

可是,在无线信道中,或者由于多普勒频移效应,或者由于收发端载波不一致,从而使OFDM系统的收发两端产生频率偏移,破坏系统的正交性,导致整个系统的性能严重下降。频偏是由于收发晶振不可能很准确地定位到同一个频率,晶振还有个稳定度的概念。为此我们需要在接收端加入AFC(Automatic Frequency Control,自动频率控制),进行频率补偿。

2.  设计原理

AFC的目的是为了纠正发射机和接收机的载频频偏,由于接收机和发射机采用的晶振本身的准确度不一样,在设计中,必须要考虑由于本地晶振不准确而引起的频偏问题。在OFDM系统中,频偏破坏了各个子载波的正交性,引入了ICI,子载波干扰。所以在系统中作频偏校正尤为重要。

GPS模块能够提供一个1s为周期,占空比为20%的秒脉冲信号,经过实际测试,秒脉冲信号的误差在40ns的量级,若能将系统基站和端机的本振信号都与这个秒脉冲锁定,则可将频率误差控制在10-8的水平,从而能有效的保证系统长时间稳定工作。

       本系统采用FPGA计数的方式来计算本振的频率,并将其与参考频率比较得到一个频率误差,再根据这个频率误差来调制本振电压牵引脚的控制电压来调整本振的输出频率,最终得到一个稳定的频率。系统框图见图1。

图1 系统结构框图

3.  工作过程

工作过程描述如下;

  • 采集GPS的秒脉冲信号;
  • 计数器工作时钟是本振的时钟信号,在一个秒脉冲(1 pulse per second)周期内,进行计数;
  • 误差估计模块,计数器结果与理想值的差值就是频率误差;现在的晶振频率是19.2M。
  • 频偏补偿,为了稳定保持目标值,利用遗忘因子调整当前帧的频率偏移Theta。计算出当前帧需要调整的频率偏移送给D/A;将Theta值变换为控制电压来控制压控振荡器。首先,将Theta值转变为压控振荡器的准确度(ppm),假定载频为fd,采样频率fr,控制电压=Vc-xVppm。

目前,收敛系数为1,即1Hz偏移调整D/A的一位(共14位,用高10位)。压控振荡器的准确度(-4ppm~4ppm),可调范围是-80Hz~80Hz。

D/A输出用于调制本振电压牵引脚的控制电压来调整本振的输出频率。经过若干帧的频偏调整,可以使得频偏稳定在零附近浮动。