来源:期刊VIP网所属分类:计算机信息管理发布时间:2021-01-25浏览:次
摘 要: 为了对采用BOC调制的B1C导航信号进行捕获,提出了基于PCO+FFT的导航信号捕获算法。首先,在深入分析B1C信号特点的基础上,对分段长度和FFT点数进行选择;其次,从相干积分增益、非相关积分增益、多普勒测频范围与测频分辨率、检测概率等几个方面对该算法进行了深入地推导;再次,给出基于新算法的FPGA实现方案;最后,通过仿真验证算法的有效性。在FPGA硬件平台上进行实测的结果显示了方案的正确性。将副载波剥离的方式以及基于状态机的控制核心的实现思路可为导航信号捕获算法的改进提供参考。
关键词: 无线通信技术;B1C信号;PCO;FFT;捕获;性能分析;算法实现
B1C信号属于北斗卫星导航系统(BeiDou navigation satellite system,BDS)中的北斗三号卫星导航信号。2017年末,中国卫星导航系统办公室发布了B1C信号的空间接口文件。2020-06-23,最后一个北斗卫星发射成功并且组网完成,标志着北斗三号全球卫星导航系统星座部署全面完成。
与之前的北斗二号不同的是,B1C属于新体制信号,采用二进制偏移载波(binary offset carrier, BOC)类型信号,且包含数据分量和导频分量2个部分。其中,数据分量采用BOC(1,1)调制方式,导频分量采用正交复用二进制偏移载波(quadrature complexed BOC, QMBOC)调制方式,二者的功率比为1∶3。由于BOC/MBOC类信号的特性,使得导航信号的功率谱密度存在多个主瓣和旁瓣,且伪码的自相关函数存在副峰,这会给信号的捕获带来模糊性问题[1]。
文献[2]提出用3路并行相关器的捕获算法消除BOC调制的副峰问题,可以消除BOC调制引起的副峰情况,但是需要额外的相关器,不利于硬件实现。文献[3]提出了构建辅助函数对相关结果进行处理最后消除自相关副峰的捕获算法,但是需要对码相位和多普勒进行二位搜索,增加了捕获时间。文献[4]通过滤波器对信号的某一频谱边带进行滤除以达到消自相关副峰的目的,不仅额外增加了硬件开销,而且由于滤除边带导致失去了BOC类调制的自相关峰更尖锐的优势。因此,设计恰当的捕获算法具有很重要的意义和使用价值。
由于B1C信号的数据分量功率占比较小,且考虑到民用接收机对于性能的要求,本文提出了一种采用分段相关(piecewise correlation operation, PCO)结合快速傅里叶变换(fast Fourier transform, FFT)测频相结合的捕获算法,仅对导频分量进行捕获[5]。本算法在频率方面采用并行搜索的方式,很大程度上缩短了对同一码相位不同频率的搜索时间;对副载波进行4路剥离的方式消除了副载波带来的捕获模糊性问题;采用固定时间相干积分与不同次数的非相干积分相结合的方法,對低信噪比环境下信号的捕获有着良好的适应能力[6]。
本文从算法的原理出发,首先对其分段段数、FFT点数的选择以及非相干积分次数等重要参数的设定进行详细论述;其次给出基于FPGA的硬件实现方案,并对本算法的性能进行仿真;然后将本文算法同目前经典的BPSK-LIKE和ASPeCT算法进行对比;最后对硬件实现的结果进行验证[7]。
1 算法原理
1.1 算法描述
从射频前端传送来的B1C中频信号可表示为
s(t)=A·(12DB1C_data(t)·CB1C_data(t)·sign(sin(2πfsc_B1C_at))+ 111CB1C_pilot(t)·
sign(sin(2πfsc_B1C_bt))+j2944
CB1C_pilot(t)·sign(sin(2πfsc_B1C_at)))·
cos(fIF+fd)+n(t),
式中:A为振幅;D(t)为数据码,仅在数据分量播发;C(t)为卫星播发的伪码,导频分量和数据分量伪码不同;sign(sin(2πfsc_B1Ct))为不同频率分量的副载波;fsc_B1C_a为1.023 MHz;fsc_B1C_b为6.138 MHz;fIF为中频信号频率;fd为多普勒频移;n(t)为噪声[8]。
针对B1C信号的特点,设计了基于PCO+FFT的捕获算法,算法原理框图如图1所示。其基本原理是将来自射频前端的数字中频信号经过本地载波信号混频并略去高频分量,得到零中频信号。将1个码周期内信号点数P(B1C信号,1个主码周期10 ms,P=10 230,为实现分段整除补0为10 240点)分为K段,每段L点。将K段数据每次位移1个数据点,然后逐段与本地码分段做相关运算,可得到某个特定搜索相位下的K个相关值,将K个相关值进行补0至N点的FFT运算。选择FFT处理输出中幅值最大的峰值与预设的门限进行比较,最终得到多普勒频移及伪码相位的估计值。
其中,分段相关运算,即将整周期的本地伪码和导航信号均进行平均划分成段,并对每段进行相关运算,其效果等同于对信号进行了部分匹配滤波(partial matched filtering,PMF)。若此时的伪随机码和输入信号的伪码同相位,则它们在模二运算之后就只有残留的多普勒频偏及副载波[9]。
由于分段的概念等同于对信号进行采样,所以此时的运算结果包含频率信息。当得到分段相关的结果后,对结果做FFT运算进行频谱分析,可以获得输入信号的多普勒频移值fd。因此1次循环运算,就可以得到码相位和多普勒频移,很大程度上减少了捕获所需要的时间,提高了捕获效率。
副载波是sign函数,剥离载波后,残留的副载波会导致捕获峰值模糊度出现问题。由BOC信号的自相关函数可知,只有当本地副载波与导航信号副载波对齐才能产生最大的相关峰。由于信号的码相位具体情况未知,本算法采用4路并行操作的方法,在数据降速时,将降速的数据分成4路输出,分别对应于各相差90°的副载波,实现了在对数据进行降采样的同时也剥离了副载波,方法如图2所示。
1.2 分段长度与FFT点数的选择
因为B1C信号的主码速率为1.023 MHz,码周期长P=10 230(10 ms),在1个主码周期内,数据位不发生跳变,故可设置最长的相干积分时间为10 ms。为工程实现方便,将10 ms内数据10 230点补0为10 240点。设分段的段数为K,每段数据长度L,则有P=KL,FFT点数M取与L最靠近的2的整数次幂。表1给出了不同分段参数下多普勒估计范围和多普勒测频分辨率的对应表。不同的分段数和段内点数对多普勒频偏估计的影響不同[10],基本上分段数K越大,其多普勒频偏的估计范围也越大,但同时需要的FFT点数也越多,这是对实现不利的方面。综合考虑指标要求,当采用K=64,L=160,M=256时,从多普勒频偏测量指标及工程实现的资源占用情况看,既能满足民用接收机对动态的要求,同时实现的代价又可以接受[11]。
本算法的运算量主要集中在相关运算和FFT运算。
OM=(P2+M2 logM2·P)·N,
OA=(P2+M logM2·P)·N,
式中:OM为乘法运算量;OA为加法运算量;P为总点数;M为FFT点数;N为非相干积分次数。
1.3相干积分增益与非相干积分增益计算
相干积分是提高信号信噪比的关键所在,要尽可能地增加相干积分时间Tcoh以获得信噪比增益[12]。根据B1C码的周期特性,最合理的相干积分时间Tcoh应为其主码周期10 ms。在信号进入相关器之前,信噪比为SNRpd,B1C信号射频前端的噪声带宽Bpd一般选为4.096 MHz,由于噪声是宽带信号且相干积分器的滤波带宽为1/Tcoh,因此信号经过相关器后噪声带宽从Bpd下降到1/Tcoh。由于有用信号功率不变,噪声功率降低,使得经过相干积分器后信号信噪比增加,其增值为
Gcoh=10 lgBpd1/Tcoh=10 lg4.092×106100=46.1 dB。
将分段相关的结果进行补0做256点FFT之后,经过多次平方得到信号的相关检测值V2,其实质是对信号进行多次非相干积分[13]。设计中主要通过增加非相干积分次数以增加B1C信号的信噪比。假定非相干积分次数为N,其获得的增益为
GNC=10 lg N。
非相干积分存在一定的平方损耗[14],N次非相干积分的损耗LSQ(N)为
LSQ(N)=10 lg 1+1+9.2N/Ds(1)1+1+9.2/Ds(1) dB,
式中Ds(1)表示1次非相干积分的损耗。从而可得非相干积分增益Gnc为
Gnc=GNC-LSQ。
推荐阅读;物流信息化论文投稿期刊
期刊VIP网,您身边的高端学术顾问
文章名称: 基于PCO+FFT的B1C导航信号捕获算法
文章地址: http://www.qikanvip.com/jisuanjixinxiguanli/55308.html