0 引言
我国独立自主研发的北斗卫星导航系统自2012年12月27日提供测试运行服务以来,为全球在全天候、不同天气状况下提供了高精度、高可靠的定位、导航和授时功能,此外还包括我国北斗导航系统特有的短报文功能。2013年12月27日,在北斗卫星导航系统正式提供区域服务一周年后,在之前发布的北斗B1频点信号内容的基础上新增发布了北斗B2频点的信号内容。双频点信号内容的公布为用户提供高精度双频服务,使定位精度从单频时的10 m跃升至米级、甚至分米级。
北斗卫星在椭圆近地轨道上绕地球运行,由于卫星相对于地面的北斗接收机存在着相对运动,导致用户接收机接收到的北斗卫星所发射的信号产生了频率变化,即多普勒频移。北斗卫星导航接收机的基带数字处理部分需要通过混频彻底剥离掉数字中频中包含多普勒频移的载波,并且通过伪码相关运算彻底剥离信号中的伪码,从而得到所需要的导航电文数据码。除此之外,还可以根据测得的多普勒频移来精确地计算卫星接收机的速度和加速。由此看来,对载波多普勒频移的测量有一定的必要性,更有其重要的现实意义。
本文根据北斗接收机的需要,设计了载波多普勒频移模块,实现了包含多普勒频移的载波剥离。
1 载波多普勒设计背景
卫星导航信号包含载波、C/A码和导航电文。在传播过程中,多普勒频移的产生对卫星信号接收机来说是不可避免的,而C/A的频率很低,所以在C/A码上产生的多普勒频移相当的小,对载波来说则不然。当地面上加载有接收机的交通工具以朝向卫星引起最大多普勒效应的方向运动时,对于被C/A码调制的L1频率fr=1 561.092 MHz,所产生的多普勒频移为:
其中,vdm是根据轨道速率,沿地平线方向;c是光速;fdr为算出的最大多普勒速率,约为929 m/s,与高速军用飞机的速度相当。
由上分析可知,当接收机在低速载体上时,可认为多普勒频移为±5 kHz;如果接收机装在高速载体上,假设多普勒频移的最大值为±10 kHz是比较合理的。因此,在捕获过程中,一般将载波多普勒频率的搜索范围定为±10 kHz。
2 载波多普勒剥离具体设计
卫星信号的捕获作为整个接收机基带信号处理的前提,其捕获信号的准确与速度对后续的基带信号处理有至关重要的作用。接收机中信号的捕获可以认为是一个二维的搜索过程,包括从伪码相位方向的搜索和从多普勒频移方向的搜索。其中从多普勒方向的搜索,由上述分析可知,多普勒频移的最大搜索范围是±10 kHz,它通过本地产生载波,并调节本地载波的值与输入信号相乘,从而去除输入信号中的高频载波分量。MATLAB仿真结果如图1所示。
图1为算法的验证示意图,横轴代表800个数据点,纵轴代表数据的值。图中基带数据信号为C/A码,调制信号为载波和C/A码调制后的信号,按照本设计算法,在本地产生的载波和信号中的载波频率相位均一致的情况下,解调结果如图1的第3个波形,为只含C/A码的基带数据;图中的第4个波形为本地载波与信号载波同相的情况下相乘但未做后续处理的结果;图中第5、6个波形为当本地载波为信号中载波频率一半时,需解调两次的结果。
由该MATLAB仿真图可知,该算法设计方案是可行的。下面进行具体的硬件设计。
如图2所示,为了减少基带信号处理的功耗问题,将从RF采样得到的中频信号经过抽取滤波器对数据进行降频处理,将数据采样率从18.67fo降为2fo(因为C/A码频谱带宽为约为2 MHz,将数据速率降为2fo可以保证得到的信号包含C/A码频谱主瓣),这样即保证了采样后信号的完整性,又使基带信号处理部分功耗降为最低。经过抽取滤波器后出来的I/Q两路信号中,高频载波信号已被剥离,剩下的只是携带有多普勒频率分量的载波、C/A码和导航电文的中频信号。该中频信号被继而送往所设计的多普勒模块,从而找出载波的多普勒分量。
多普勒模块主要分为载波NCO模块和载波多普勒剥离模块两个子模块。下面对其相关内容做详细的分析介绍。
2.1 载波NCO的原理及其设计
载波数控振荡器(NCO)的作用是生成时间、幅度都离散的正余弦信号,通常用在通信系统中,在载波跟踪环中用来生成I-Q路混频需要的同相与正交载波。载波NCO的实现方法有实时计算法与查找表法。通过实时计算产生正余弦信号的数据样本,只适用于信号采样频率相对较低的情况。本文所设计的接收机采样频率为18.67fo(其中fo为北斗卫星的基准频率2.046 MHz),用实时计算的方法实现起来较为困难,因此查找表是最有效、最简单的方法。
如图3所示,载波NCO是由加法器和寄存器组成的相位累加器,它就是一个累加溢出再累加的过程。其中控制位有两个,一个是相位控制字Phase,另一个是频率控制字Freq。相位控制字旨在给模块一个初始值,然后不断累加频率控制字,其中dopload为相位控制字的控制使能。fs是驱动累加时钟频率。载波NCO在每一个时钟周期就增加Freq,相当于每秒钟增加Freq·fs。当寄存器满时,就溢出归零,此时也就完成了一个循环周期。控制累加字增加1,对应的载波NCO产生的正余弦信号频率fo增加fs/2N(其中N为设计的控制字的位数),这一频率又称为该载波NCO的频率分辨率。在实际的电路系统中,为了保证载波信号的频率精度,寄存器必须满足一定的长度要求,即N的值要符合一定的精度要求。
本次设计中,要求信号频率误差满足f≤0.3 Hz,由之前的分析可知,控制字的位数应该满足N≥23.701 3。而且增加累加器的位数可以提高输出信号频率精度,正弦信号的量化位数越高,波形序列的相位越精确。尤其是对长度较短的信号序列,在序列量化的粗糙时,由于量化引入的噪声会影响真实信息的显现,但过长会增加硬件的功率损耗。所以,综合考虑得出要达到跟踪环频率误差?驻f≤0.3 Hz,载波NCO采用24位的累加器,即Phase和Freq设置为24 bit,采样频率为18.67fo,便可满足设计要求。
由上分析可知,累加器的位数N是由频率分辨率来决定的,而对于正余弦查找表的选址地址位数J以及正余弦量化位数K则是由杂散度来决定的。理想情况下,为了输出信号达到一个高精度,设计将累加器位数N全部用来作为地址的寻址位数J,而将正余弦的量化幅度无限细分,但这样的结果是需要一个非常大容量的存储器,在正常情况下,实际上是无法实现并且不可取的。所以就要选择一个合适的寻址位数J和正余弦量化位数K。
工程实现中,一般取得J<N,K是一个有限的位数,然而这又必然会导致相位截断误差和幅值量化误差的出现。这两个误差将导致载波NCO输出信号的频谱出现杂散谱。其中寻址位数J对杂散的影响体现为输出信号频谱中的主谱S和最强杂散谱sspur的幅度之比,公式如下:
而幅值量化位数K对杂散的影响体现为信噪比SNR:
SNR≈6.02×K+1.76 dB(3)
要保证在不恶化杂散性能的前提下尽量压缩存储空间。而在本次工程设计中,已知该设计在杂散抑制约为24 dB时即可很好地满足要求。所以,取地址寻址位数与幅值量化位数均为4。该模块电路的Modelsim仿真图如图4所示。
2.2 载波多普勒剥离原理分析
经过射频采样得到的中频信号在通过抽取滤波器对中频进行降频处理后,要与载波生产的本振信号进行相应运算才能实现载波的剥离。其中中频降频后得到的是两个2 bit的I、Q信号,而载波NCO中通过正余弦查找表产生的是两个分别为4 bit的正余弦幅值信号cos(j)和sin(j)。在该模块中,分别将cos(j)、sin(j)与Iin、Qin做乘法运算,即可将中频信号中的载波多普勒剥离掉。将Iin、Qin两路信号用以下式子来简化表示:
其中A是信号的幅度,C(t)是C/A码,D(t)是导航信息。按照上述分析,将cos(j)、sin(j)与Iin、Qin分别做乘法运算后得到如下表达式:
将式(4)、式(5)带入式(6)、式(7)后,可以得到如下等式:
由上述等式(8)、式(9)可以得出,当载波产生的正余弦信号cos(j)、sin(j)的相位j与卫星接收到的中频信号的相位t相一致时,就表示载波多普勒被完全剥离掉。如果还有一定的相位差,可以通过后续相关电路再反馈给载波NCO的相位控制字Phase和频率控制字Freq对载波本振信号进行调整,直到两相位相一致为止。具体电路图如图5所示。
3 载波多普勒模块的设计验证
根据上述分析所设计的多普勒模块可以很好地满足工程需求。进入载波多普勒模块的中频信号频率是2fo,采样时钟频率为2fo,寄存器为24 bit,其Modelsim验证仿真图如图6所示。
在Modelsim仿真中,给定初始相位控制字为二进制值100000000000000000000000,频率控制字为二进制值0001000000000000000000。中频I/Q信号均以一定的基准速率输入,并按照上述旋转模块的公式进行相关运算,最后得到的sumI和sumQ就是对射频接收到的中频信号进行载波多普勒剥离后的结果。然后对其按照固定的两个门限值,将其转换为与输入射频信号一致的2 bit数据。
最后得到完整处理后的信号iOut和qOut,如图6所示。由仿真结果得出,iOut输出均为二进制01(即为十进制数值1),qOut的输出值为二进制01和10(即为十进制+1和-1的交替)。从整体上长时间观察,qOut结果为0。该结果与式(8)、(9)的分析计算相吻合,因此该设计满足工程要求。
4 结论
本论文设计了载波多普勒模块,它将最后量化后的信号传送给下一级与接收到的中频信号进行比较处理,将与原信号对比后的结果反馈给载波NCO,然后再调整其相位和频率控制字,最终实现载波多普勒的完全剥离。