版权归原作者所有,如有侵权,请联系我们

[科普中国]-捕获

科学百科
原创
科学百科为用户提供权威科普内容,打造知识科普阵地
收藏

GNSS信号捕获

信号捕获中GNSS信号捕获是接收机实现信号跟踪和解调导航电文及精确定位的前提条件,为使本地复制信号与接收信号的差异进入跟踪环路的牵入范围,接收机必须明确当前信号多普勒频移和CA码相位。高动态环境下除了信号强弱外,对捕获速度影响最大的是GNSS接收机与卫星之间高速径向相对运动产生的多普勒频移。在没有外部先验信息条件下,接收机需在整个码相位及大范围多普勒频带内搜索自身相对于每颗卫星的多普勒频率和码相位。致使接收机耗费很长时间捕获信号。

传统串行搜索捕获在时域内对信号所有可能的频率和码相位值进行二维滑动捕获,硬件复杂程度低,但运算量大、捕获时间长。并行载波域搜索和并行码相位搜索避免了对频率范围和码范围进行扫描式搜索,提高了捕获速度,但在捕获码相位偏移量时仍需进行一次运算量较大的傅里叶变换。在并行码相位基础上对I/Q支路下采样以减小运算量,但动态条件下码速率变化较快时会产生累积码相位误差,易导致失锁。基于FFT的时延法消除输入信号的频率信息提高了搜索速度,在捕获时需几个时延结合起来寻找信号,且2个带有噪声的信号相乘使噪声基底增加,使得不能用于只搜索1ms的数据序列段。

在捕获基础上采用高次曲线内插法估计载波精确频率,将频率分辨率提高一倍。但该估计法在计算精确频率时需求解复杂的高阶逆矩阵,硬件实现较为困难。本文根据时域卷积等效频域相乘特性及其复序列频谱非对称性提出傅里叶变换循环截断相关法,将I/Q支路复序列转换到频域,采用前一半频谱与本地码频域前一半的共轭一起运算,再将结果求傅里叶逆变换实现时域内的循环相关载波频率和码相位的捕获。在对多普勒频移和码相位粗捕获基础上提出频域相角测频法,进一步提高载波多普勒频移精度。和传统捕获方法相比在保证捕获概率情况下,该方法捕获时间缩短到8‰,相对于载波域捕获,时间为36%,频率估计精度到10Hz。能以更快时间得到捕获结果进入跟踪环牵引范围。1

频域并行码相位捕获概述GPS接收机中,信号的捕获是信号跟踪和解调导航数据位的前提。捕获时需要对GPS星座中的每一颗卫星同时完成载波多普勒频移搜索和C/A码初始相位搜索。传统的GPS接收机,捕获部分由专用的芯片来实现,用户很难改变相应的参数,更换新的算法,大都采用相对简单的时域相关算法。GPS软件接收机用软件来实现捕获部分,具有很好的灵活性和扩展性。1991年VanNee等人提出了基于FFT的伪码快速捕获算法,也就是频域循环相关的捕获方法,使相关运算量有了一定的降低,比时域相关算法要快的多。近年来,在GPS软件接收机的研究领域,这种方法得到了广泛采用,但是基本上都是在PC平台上仿真实现,尤其是在国内,很少有硬件实现的。FPGA(现场可编程门阵列)是20世纪90年代兴起的半定制集成电路,有着快速处理数字信号和设计的灵活性的优点,可以在FPGA硬件平台上来实现GPS软件接收机基带信号处理部分。现在FPGA厂商Altera公司和Xilinx公司都研制了FFTIP核,可以利用FFTIP核,来完成相关过程中的FFT运算。

目前时域相关算法完成捕获需要的时间是353s,比较耗时且不利于软件实现,频域并行码捕获完成单颗星捕获时间是51ms,虽然大大提高了捕获速度,但是较实时捕获还有一定的不足。针对基于FPGA平台的GPS软件接收机捕获实时性较差的问题,本文提出了一种改进的频域并行码捕获方法,用VerilogHDL语言实现了该方法,利用AlteraFFTIP核来实现FFT模块。在ModelSim仿真工具上进行了仿真,仿真结果表明该算法降低了运算量,极大地提高了捕获速度。

频域并行码相位捕获算法1ms的信号有5714个离散的采样数据,这样在GPS信号频域并行码捕获算法中每一次操作包括二个5714点FFT运算,一个5714点的IFFT运算。每一颗卫星的捕获过程有21次操作,运算量非常大,因此捕获的速度就很低。为了减少运算量提高捕获速度,同时因为AlteraFFTIP核要求FFT运算的点数是2的整数次幂,本文提出了改进的频域并行码相位捕获算法。改进之处是采用平均采样技术用1.024MHz时钟对5714点离散数据进行下采样,采样后的数据点数是1024点,这样就极大地减少了运算量,FFT运算可以直接调用AlteraFFTIP核来实现。对于C/A码的操作是,先用5.714MHz的采样率将1023点的C/A码上采样为5714点,然后同样采用平均采样技术再采样为1024点。这样改进后捕获算法中每一次操作的计算量改为2个1024点的FFT运算,一个1024点的IFFT运算,每一颗卫星的捕获过程有21次操作,同时捕获中的相乘运算量点数也相应减少,使捕获过程中的运算对输入数据进行捕获操作的步骤如下:

①对1ms的输入数据x(n),先与载波进行相乘,剥离载波,然后用1.024MHz的采样频率平均采样到1024点,计算其FFT,将输入数据变换到频域X(k);

②对于1023个码元的C/A码,先用5.714MHz的采样频率采样为5714点,然后再平均采样到1024点,计算其FFT,变换到频域Y(k);

③取Y(k)的复共轭,输出变为Y(k);

④X(k)与Y(k)进行逐点相乘,结果为Z(k);

⑤对Z(k)取FFT逆变换,变换到时域z(n),求绝对值|z(n)|。绝对值|z(n)|就是输入信号和本地产生信号的相关值,共有1024个;

⑥求|z(n)|中的最大值和第二最大值,分别为相关值的最高峰和次高峰,门限为最高峰和次高峰的比值,设置为2.5。判别是否达到门限值,若没有达到调整载波频率,回到第一步,一直到能够捕获到信号为止,若一个周期后仍然未捕获到卫星,则调整卫星号,继续搜索。若达到了门限值,找出最大值的位置,计算出其在5714点数据中的对应位置,它就是C/A码的起始位置,如果最大峰值由频率分量fi产生,它就是输入信号的载波频率。

频域并行码相位捕获的实现用ModelSim仿真工具对改进的频域并行码相位捕获方法进行了仿真,包括9部分:C/A码产生模块、载波数控振荡器、载波剥离模块,平均采样模块、FFT/IFFT模块、复数乘法器模块、峰值检测模块、相位估计模块和时钟产生器。本文对C/A码的处理是采用的预存储的方式,因为每次计算都要产生C/A码,这样就节省了C/A码的产生时间。在本设计中,载波被量化为两位,载波所采用的量化数值为±1和±2,前端数据的量化值为±1和±3。将本地的载波和输入信号相乘,即可实现载波剥离,相乘后的量化数值±1、±2、±3和±6。载波剥离模块的输入信号为前端送来的2bit的采样数据SIGN和MAG,其中“00”代表“1”,“01”代表“3”,“10”代表“−1”,“11”代表“−3”。同样,本地载波取值1、−1、2和−2,分别“00”代表“1”,“01”代表“2”,“10”代表“−1”,“11”代表“−2”。相乘的结果为混频后的值,±1,±2,±3,±6。将这8个值用三位二进制数表示,高位为符号位,0表示正,1表示负,低位为数据位00,01,10,11分别代表1,2,3,6。2

高动态GPS接收机的捕获概述GPS信号是经过了直接序列扩频调制及载波调制的扩频信号。对于扩频系统,捕获就是指使本地参考码和接收码的相位差小于一个码元宽度,且收发码时钟频率基本一致,同时使载波相互对准,实现输入信号与本地信号的同步。在GPS系统中伪码相位与载波频率的粗同步过程即为伪码捕获。有效的伪码捕获方法是高动态GPS接收机研究的核心,缩短捕获时间便意味着系统性能的提高。

码捕获须在整个码相位及频域上以固定间隔进行码与载波的二维搜索.对于高动态GPS接收机,由于接收机载体的高动态性,造成多普勒频移范围很大,因此接收机完成GPS信号的捕获花费很长的运算时间。常用的码捕获方法有:串并结合的搜索方式、分段相关实现快速捕获、基于FFT的快速捕获等。这些方法都可以在一定程度上缩短捕获时间,提高码捕获环路的性能。其中前面两种传统的捕获方法将捕获空间分为小的单元,单元的大小与捕获所得的频率解成正比,且影响捕获的误码率。采用这种方法的接收机称为时域捕获接收机。

信号捕获中卷积运算是必须的,而它能被频域变换的离散傅里叶变换(DFT)代替。由于基于FFT的捕获方法使用补零FFT的线性相关,因此在相同的捕获时间可达到码和多普勒频移更高的捕获精度,也就是说,在相同的捕获精度下,大大缩短了捕获卫星信号的时间。这种基于频域变化的实时捕获方法可以在功能强大的微处理器或者PC机上能完成所有的离线操作,因而在基于软件的GPS接收机(SDR)中获得了广泛的应用。本文第一部分从实现原理和性能等方面分析比较了几种常用高动态GPS接收机的捕获方法;第二部分详细阐述了基于FFT的高动态GPS接收机捕获方法的实现机理;第三部分从仿真结果讨论基于FFT的高动态GPS接收机捕获方法的性能,说明该方法能适应高动态环境,大大减少码捕获时间;最后给出结论。

串并结合的二维搜索实现快速捕获串并结合的搜索方法是基于时域滑动相关、时域/频域二维序贯搜索的一种改进方案,其实现途径有两种:多通道时域并行搜索和多通道多普勒频域并行搜索。

多通道时域并行搜索是将伪码相位划分成多个区间,并分配到各个通道,每个通道仍需完成整个多普勒域的串行搜索,但由于伪码相位搜索单元减少,因此可以缩短捕获的时间。以将伪码粗同步到半个码片内的码捕获方案为例,则需要搜索2046个码相位单元,如果由4个通道并行完成,每个通道只需做512次N=2046的相关运算,而不是2046次,因此捕获速度得到提高。

多通道多普勒频域并行搜索是将最大多普勒划分成多个子区间,并分配到各个通道,每个通道完成子区间的多普勒与2046个伪码相位的二维搜索,一个码相位单元和一个多普勒频率单元构成一个二维的信号搜索单元,信号检测器依次对所有信号搜索单元进行搜索判决,即序贯检测,直到信号成功捕获。

以上两种方案都是通过增加硬件成本、减少硬件工作时间缩短码捕获时间的,因此这种性能上的提高是以降低硬件利用率为代价的。

分段相关实现快速捕获在一般的捕获方法中,由于信号搜索的单元很多,相应的信号捕获时间也很长,这在一些实时性要求比较高的接收机中是不允许的。为了提高信号的捕获速度,可以采用一种新的捕获方法,即通过FFT实现在搜索1个码相位步进量时,同时对整个多普勒频移单元同时进行估计。其搜索方法过程如下:相关器由m个分段子相关器组成,每个子相关器的相关时间为T/m。也就是说,第一个子相关器的积分时间为0~T1,第二个积分时间为T1~T2,依次类推,第m个子相关器的相关时间为Tm-1~Tm。每个相关积分单元对连续的Tm时间内的码元分段作相关运算。可以看出,m个子相关器的输出合成与一个积分时间为T的相关器作用是一样的。如果我们把这m个子相关器的输出作N点FFT变换(N≥m),然后在FFT的N个输出端选择输出幅值最大的峰值作为相关器的输出,即起到用FFT实现对接收信号的多普勒频移估计。如果m选择合适的话,就可以实现对整个多普勒频移范围内的频移量做出估计。这种分段子相关器可以在不改变一般相关方法中硬件相关器的基础上通过软件来实现(对相关器的输出做m点均匀采样,然后作差值),这就在不增加硬件复杂性的情况下实现GPS信号的快速捕获,从硬件度与运算量来讲是比较适合高动态接收机。

基于FFT的快速捕获实现一种适应高动态环境,可以大大减少码捕获时间的捕获方案,即采用多普勒频移域串行捕获、时域由FFT代替滑动相关并行捕获的二维策略。具体地,是在某一个多普勒频率搜索单元做所有码相位域搜索,对接收到的伪码序列和本地产生码序列做循环卷积。实际中,根据离散傅立叶变换的圆周相关定理,如果将时域的循环卷积转换到频域上完成,则只需对接收伪码和本地伪码分别做FFT后,对其中的一组FFT序列作共扼处理,再将二者相乘,通过IFFT变换即可得到两个序列在所有相位上的相关峰值

快速捕获方案性能比较以上三种GPS信号快速捕获方法中,串并结合的二维搜索方法,其实现结构继承了普通GPS接收机中的时域滑动相关与二维串行搜索,技术较为成熟,但是需要多通道分配搜索单元,硬件复杂度增大。此外,由于GPS接收机中的捕获环路在信号跟踪阶段是停止工作的,因此采用牺牲硬件复杂度换取捕获速度的方法,在工程实践中有很大的弊端。

利用分段相关实现伪码捕获的方法,在伪码序列较长的情况下可以体现出很大的优势,且从硬件度与运算量来讲都比较适合高动态接收机。但是由于GPS系统的伪码序列只有1023位,以目前数字器件的水平,完成N=1023位的相关运算速度很快,没有必要将序列分段再做相关。而且GPS信号捕获是基于C/A码良好的自相关特性实现的,如果将C/A码分段,其相关特性势必受到影响。

基于FFT的伪码快捕方法则是利用FFT代替大量的相关运算,捕获时间大大缩短,且硬件实现难度小,可以适应高动态环境对系统快速反应能力的要求。所以,从硬件消耗和捕获性能等方面考虑,基于FFT的伪码快捕方法是高动态GPS接收机伪码捕获的最佳方案。3