刘佳娟 王康谊
摘 要:针对双模接收机系统的捕获时间长、捕获灵敏度低的问题,提出了一种基于部分匹配滤波器和FFT结合的并行捕获算法。该方法在传统的捕获算法上,对不同的信号分别采取了相干和非相干累加,使卫星在40dB-Hz以上的时候可以快速捕获。该方法可以捕获至少到33dB-Hz的GPS/北斗信号。文章详细介绍了该方法,并且给出了其在FPGA中主要模块的实现。
关键词:双模接收机;捕获时间;捕获灵敏度
引言
由于双模接收机的定位精度高、抗干扰能力强,双模接收机的研发成为近年来的热点。信号捕获是实现载波和伪码的粗同步,得到的误差在跟踪模块中载波环和码环牵入范围内的载波多普勒和伪码相位[2]。对于双模接收机来说主要运用在高动态下如弹载接收机中,所以搜素的范围在10kHz左右甚至更大。
常规捕获算法分为串行捕获和并行捕获两大类。串行捕获结构简单,一般使用一个相关器,一次对一个频点,一个伪码相位进行捕获,捕获时间较长,速度慢,无法满足快速定位的要求。并行捕获在一个或者两个维度上进行并行操作,提高了捕获效率和时间[1,3],使得快速定位成了可能。因此GPS/BD双模接收机采用并行捕获。由于在已有的GPS和北斗单模接收机采用部分匹配滤波器和FFT结合的并行捕获算法中,采用相同架构的捕获算法是两者单独捕获成功,并且两者结合的时候根据不同的信号结构体制和信号强弱采用相干累加和非相干累加结合的方法实现其双模捕获。
1 算法原理
部分匹配滤波器和FFT结合的捕获算法原理如图1所示,接收机接收到的导航信号经过与载波NCO的剥离分成I、Q两路信号,然后通过滤波滤掉高频成分,再经过降采样之后将信号采样值和本地伪码进行分块处理,最后将每一分块的数值进入部分匹配滤波器中。部分滤波器组的每次相关结果与输入信号移半个码片后继续相关,完成码域搜索。然后对将其结果进行补零的128点FFT结果,完成频域搜索。这样对结果进行相干累加或非相干累加,取结果的最大值与门限做比较。若大于门限值,则捕获成功,若小于则进行进入下个频点搜索。
由于北斗BD信号MEO/IGSO卫星调制有20ms的NH码,所以在GPS/BD双模中相干积分时间设为20ms。但是对于GPS信号,每20ms就有可能发生bit翻转,将导致相关结果正负抵消,从而降低信噪比增益。对于北斗B1信号又有两种情况,对于GEO卫星,不宜超过2ms;对于MEO/IGSO卫星,不宜超过1ms。所以根据不同的信号将整个相干积分时间分为n段,每段相干积分时间为t,而每段匹配滤波器又被分为长度为L的M段滤波器组(L*M=相干积分时间t内的采样点数)。
相干累加就是对M个相关器相关结果直接进行累加,从而提高信噪比,提高捕获灵敏度。相干累加使信号幅度成倍增加,信号功率也成倍增加。非相干累加是对相干累加的结果取平方求和,进一步提高信噪比。相比之下,非相干累加由于不受bit翻转的影响,因此要与相干累加结合使用,通过优化设计达到最佳的信噪比。
2 FPGA模块实现
FPGA主要实现的是接收机的捕获模块,而捕获起始调度和捕获结果的处理主要有DSP实现。
2.1 信号处理模块
信号处理模块主要完成的是对AD信号的载波剥离、低通滤波和降采样的处理产生I、Q信号,并将结果存入RAM中供匹配滤波器处理。双模中要考虑GPS和B1信号频率字的不同,判断进入的信号是GPS信号还是B1信号。根据GPS信号的码率是1.023MHz,满足抽样定理的要求降采样率至少是码率的2倍,即2.046MHz而在FPGA中取整。北斗B1信号同理取4MHz。
2.2 部分匹配滤波器模块
匹配滤波器的实质就是从RAM中输入的值与本地产生的伪码相关的结果。进入滤波器的I、Q两路信号与本地伪码相关得到滤波器结果如图2所示。如果部分匹配滤波器使用加法数的结构实现,可以更快地完成一次匹配滤波,但是加法数会消耗更多的逻辑资源,同时由于系统时钟足够高。因此,采用了依次进行乘加运算实现。
2.3 FFT模块
FFT模块使用ISE中的IP核实现如图3所示,FFT点数为128点。完成一次滤波进行一次FFT操作,在装完匹配滤波的结果后继续补零直到补齐128点。FFT采用流水模式计算,不必等上一次的结果输出就可以将下一次的PMF结果载入FFT中,大大减少了计算时间,使捕获更快速。
2.4 相干累加和非相干累加模块
对于双模接收机要考虑不同的信号体制与信号强弱程度来设计相干累加和非相干累加次数。GPS信号在现在应有的导航体制中已达到最优,所有应先考虑GPS信号。在GPS中,相干累加和非相干累加都应考虑进去。在PMF-FFT之后的结果先进行n次相干累加后再进行m次非相干累加,然后将非相干累加结果和门限值做比较,大于门限值则捕获成功,小于门限值则继续前面的模块知道捕获成功。同时如果信号大于40dB-Hz时非相干累加次数取1-2次即可,若信号小于40dB-Hz时增加非相干累加次数。
B1信号又分为GEO卫星和MEO/IGSO卫星。对于GEO卫星直接采用非相干累加来与门限值做比较。MEO/IGSO卫星由于有NH码的调制,所以采用相干累加。非相干累加达到一定次数后,对信噪比的提高不是很明显还会造成一定的平方损失,所以非相干累加次数不要太多。
3 捕获时间
FPGA中的时序关系是确定的,根据设计可以准确的估算出一次捕获所用的时间。对于GPS信号而言,相干积分时间为20ms,降采样为2MHz,进入PMF模块中,每次PMF消耗161个系统时钟周期,而系统的时钟频率为62MHz,相干累加次数5次,非相干累加次数为1次,从而完成一次捕获需要的时间大约为130ms。上述情况对应较强信号的情况。对于较弱的信号,增加非相干累加次数,捕获时间粗估计为604ms。由此可见,在1s内可以对6颗左右的卫星进行捕获,达到1s内重捕获并定位跟踪。同理,对于北斗GEO卫星,采用2ms的相干积分时间,在弱信号下采用10次非相干累加,完成一次捕获需要大致为631ms的时间;而在信号叫强的情况下需要113ms的时间。而对于北斗MEO/IGSO卫星,采用20ms的相干积分时间,采用10次相干累加,在弱信号下捕获的时间大约不超过1s。可见基于上述算法所消耗的捕获时间很少,在捕获速度上优于其他的捕获算法。
4 结束语
文章提出的基于部分匹配滤波器和FFT结合的相干累加和非相干累加并行捕获算法,可以对码相位和频率进行并行捕获,缩短了捕获时间,提高其捕获灵敏度。文章给出了双模接收机在FPGA中的实现及主要模块的分析,表明基于部分匹配滤波器和FFT结合的相干累加和非相干累加并行捕获算法比其他算法具有很好的优越性。
参考文献
[1]谢钢.GPS原理与接收机设计[M].北京:电子工业出版社,2009:358-362.
[2]Jian W, Lu D, Liang K, et al.GNSS signal acquisition platform design[J].2009.
[3]Foucras M, Ekambi B, Bacard F, et al.Optimal GNSS acquisition parameters when considering bit transitions//[Z].Monterey,CA:2014.
[4]史向男,巴曉辉,陈杰.北斗MEO/IGSO卫星B1频点信号捕获方法研究[J].国外电子测量技术,2013(4):19-21.
[5]李亚飞.北斗/GPS双模定位关键技术研究[D].中国地质大学(北京),2014.