一种用于卫星测距的中频直序扩频接收机 (一)技术领域
本发明涉及一种扩频接收机,尤其涉及一种用于卫星测距的中频直序扩频接收机,该发明属于卫星通信技术领域。
(二)背景技术
随着航天技术的发展,我国的深空探测战略已经正式展开,并取得初步成果,2007年10月,嫦娥一号月球探测卫星成功发射,并传回了大量的月球遥测数据,为我国利用探测太空,利用太空迈出了第一步,同时,月球探测的成功将为我国开展深空探测奠定技术基础。
在深空探测过程中,时刻了解卫星所处的精确位置具有重要意义,对卫星的定位不仅能够使得地面站时刻了解卫星的工作状态、所处的位置,而且能够为卫星的变轨、姿态调整提供依据。测距的原理是测量无线电信号到被测目标的传输时延,从而计算出和目标距离。目前我国的卫星测距系统主要分为两种,侧音(连续音)测距系统和伪码(扩频)测距系统。连续音测距主要通过发送一系列不同频率的连续测距信号,测量接收到的各个频率信号的延时,最高频率分量被称为测距时钟,确定了侧音测距的精度,其它分量用来解距离模糊。伪码测距信号通过发送特定的扩频码序列,测量卫星返回的扩频码序列的相位延时,即可得到地面站和卫星之间的距离。和侧音测距相比,伪码测距具有测距精度高,无模糊距离大,抗干扰能力强,抗衰落能力强,抗多径干扰能力强,保密性好,具有码分多址能力等优点,伪码测距是卫星测控的重要手段,目前我国卫星测距方式正越来越多的采用伪码测距方式。
伪码测距的精度由扩频码的码片速率决定,码片速率越高测距的精度越高,测距的无模糊距离由测距码的长度决定。测距码越长,能够测量的距离范围越大。为了提高测距精度,增大最大测量距离,需要提高扩频码的码片速率,并且选择更长的扩频码,但是码片速率越高,对硬件的要求越高,实现的难度越大,扩频码周期越长,捕获的难度越大,捕获的时间越长,因此设计一种能够对高码片速率长码进行快速捕获的扩频接收机具有重要意义。
(三)发明内容
1、目的:本发明的目的是提供一种用于卫星测距的中频直序扩频接收机。该扩频接收机能够对高码片速率的长码进行快速捕获,并具有较高的测距精度。
2、技术方案:如图1所示,本发明一种用于卫星测距的中频直序扩频接收机,组成包括:前端模数转换模块(简称前端A/D)10、同相支路乘法器20、同相支路有限冲激响应低通滤波器(简称同相支路FIR低通滤波器)21、正交支路乘法器30、正交支路有限冲激响应低通滤波器(简称正交支路FIR低通滤波器)31、积分清零器40、缓存器41、快速傅里叶变换模块(简称FFT模块)42、支路1复数乘法器50、支路1本地伪随机码存储只读存储器(简称支路1本地PN码存储ROM)51、支路1逆快速傅里叶变换模块(简称支路1IFFT模块)52、支路1均方根模块53、支路2复数乘法器60、支路2本地伪随机码存储只读存储器(简称支路2本地PN码存储ROM)61、支路2逆快速傅里叶变换模块(简称支路2IFFT模块)62、支路2均方根模块63、自动门限计算模块70、捕获判断模块71、伪随机码起始位置计算模块(简称PN码起始位置计算模块)72、载波频率调整模块73、本地伪随机码生成器(简称本地PN码生成器)80、相关器81、码跟踪环均方根模块82、码跟踪环鉴相器83、码跟踪环环路滤波器84、码跟踪环加法器85、码跟踪环数控振荡器(简称码跟踪环NCO)86、码跟踪环多普勒补偿模块87、载波跟踪环鉴频/鉴相器90、载波跟踪环环路滤波器91、载波跟踪环加法器92和载波跟踪环数控振荡器(简称载波跟踪环NCO)93。
其中码跟踪环环路滤波器84和载波跟踪环环路滤波器91内部结构相同,只有参数不同,如图2所示:包括直通支路放大器100、环路滤波器加法器101、积分支路放大器110、积分支路加法器111和积分支路延时单元112。
上述所有组成部分,除前端A/D10使用现成上架产品以外,其余部分均在可编程逻辑门阵列(FPGA)中实现。
所述的前端A/D10以恒定的采样率对调理后的70M中频扩频信号进行带通采样,将输入的模拟信号变换为数字信号,前端A/D10使用现成的产品。
载波跟踪环NCO 93使用直接频率综合算法(简称DDS算法)实现,负责产生和前端A/D10带通采样后标称中频相同的两路固定本地载波,两路载波的相位相差90°,载波跟踪环NCO 93的输出和前端A/D10输出的带通采样后的信号作为同相支路乘法器20和正交支路乘法器30的输入;同相支路乘法器20和正交支路乘法器30使用FPGA内部IP核实现,作为下变频器使用,将输入信号下变频到零中频,同相支路乘法器20和正交支路乘法器30输出的结果分别进入结构相同的同相支路FIR低通滤波器21和正交支路FIR低通滤波器31;同相支路FIR低通滤波器21和正交支路FIR低通滤波器31采用FIR结构滤波器,使用FPGA内部IP核实现,负责对下变频后的信号进行滤波,滤除下变频后的倍频分量和带外噪声,将基带信号中的噪声功率降到更低。
低通滤波后的结果一方面输出给积分清零器40,进行码捕获,另一方面输出给相关器81用于码跟踪。积分清零器40在码跟踪环NCO86产生的本地PN码时钟控制下,对同相支路FIR低通滤波器21和正交支路FIR低通滤波器31滤波后的结果分别进行积分清零。积分清零器40输出地结果进入缓存器41,在缓存器41中同时对同相和正交支路的信号进行缓存,以适应后续FFT模块42对输入数据速率的要求,缓存器41使用FPGA内部IP核实现。缓存器41缓存后输出的同相和正交支路的结果分别作为FFT模块42的实部和虚部输入,在FFT模块42中进行快速傅里叶变换,FFT模块42使用FPGA内部IP核实现。FFT模块42的实部和虚部输出作为支路1复数乘法器50和支路2复数乘法器60的一路输入,支路1复数乘法器50和支路2复数乘法器60使用FPGA内部IP核实现。支路1复数乘法器50和支路2复数乘法器60的另一路输入分别由支路1本地PN码存储ROM51和支路2本地PN码存储ROM61提供。FFT模块42的输出依次和支路1本地PN码存储ROM51和支路2本地PN码存储ROM61中存储的本地PN码经过FFT变换后的结果进行复数相乘。支路1本地PN码存储ROM51和支路2本地PN码存储ROM61使用FPGA内部IP核实现,内部固化的数据为码相位相差FFT长度一半的两路本地PN码序列FFT变换后的结果。支路1复数乘法器50和支路2复数乘法器60计算后的结果分别送入支路1 IFFT模块52和支路2 IFFT模块62进行逆快速傅里叶变换,支路1 IFFT模块52和支路2 IFFT模块62使用FPGA内部IP核实现。支路1 IFFT模块52和支路2 IFFT模块62的输出分别送入支路1均方根模块53和支路2均方根模块63计算相应的均方根值,均方根值的计算采用JPL近似算法,即利用公式a2+b2≈Max(abs(a),abs(b))+12(Min(abs(s),abs(b)))]]>计算均方根值,计算出均方根值之后,将支路1均方根模块53和支路2均方根模块63的输出同时送入自动门限计算模块70,根据此时相关峰的状态计算出合适的门限值,将自动门限计算模块70的输出和支路1均方根模块53、支路2均方根模块63的输出同时送入捕获判断模块71,捕获判断模块71通过比较自动门限模块70输出的门限和支路1均方根模块53、支路2均方根模块63的输出的相关峰值判断扩频接收机是否捕获。捕获判断模块71的输出分别送入PN码起始位置计算模块72和载波频率调整模块73。
当捕获判断模块71判断扩频应答机没有捕获时,扩频接收机工作在捕获状态,载波频率调整模块73在搜索完一个码周期后,会调整输出的频率区间,从而调整载波跟踪环NCO 93输出的频率,直至完成捕获为止。此时PN码起始位置计算模块72没有输出。当捕获判断模块71判断扩频应答机已经捕获时,就会使扩频接收机由捕获状态转入跟踪状态。此时,载波频率调整模块73会停止调整,同时将此时输出送入码跟踪环多普勒补偿模块87,码跟踪环多普勒补偿模块87根据码片速率和载波频率之间的比例关系,产生相应的PN码多普勒补偿分量,用于调整码跟踪环NCO 86输出的码时钟,补偿多普勒效应对扩频码的影响。而PN码起始位置计算模块72将通过锁定时相关峰的位置,计算本地PN的起始位置,将计算的结果送入本地PN码生成器80,调整本地PN码生成器80产生的本地PN序列的相位。
本地PN码生成器80产生超前(PN-)、准点(PN)、滞后(PN+)三路本地PN码,这三路本地PN码彼此之间相差半个码片相位,三路本地PN码同时进入相关器81后与同相支路FIR低通滤波器21和正交支路FIR低通滤波器31的输出进行相关运算。输出的三路相关结果同时送入码跟踪环均方根模块82计算均方根。其中准点相关结果需要送入载波跟踪环鉴频/鉴相器90,进行鉴频、鉴相后用于载波跟踪。码跟踪环均方根模块82输出的结果进入码跟踪环鉴相器83鉴相,鉴相原理是比较超前相关的结果和滞后相关的的结果,确定码跟踪环NCO86的相位超前还是滞后,鉴相的结果送入码跟踪环环路滤波器84。码跟踪环环路滤波器84的主要作用是滤除误差信号中的高频分量,并为锁相环路提供一个短期的记忆,当环路由于瞬时噪声而失锁时,可确保环路迅速重新捕获信号,码跟踪环环路滤波器84使用理想一阶滤波器,结构如图2所示,由两个支路:直通支路和积分支路组成,直通支路只含有一个直通支路放大器100,将输入信号放大指定的倍数即可,积分支路包括积分支路放大器110、积分支路单位延时单元112和积分支路加法器111组成,输入的信号在进入直通支路的同时会进入积分支路,输入通过积分支路的放大器放大后和经过积分支路延时单元延时后的结果相加,相加后的结果一方面作为积分支路延时单元的输入,另一方面作为积分支路的输出,和直通支路的输出通过环路滤波器加法器101相加,两个支路相加后的结果作为码跟踪环环路滤波器84的输出,码跟踪环环路滤波器84输出与码跟踪环多普勒补偿模块87的输出同时送入码跟踪环加法器85进行相加运算,相加后的结果送入码跟踪环NCO 86,调整输出PN码时钟频率,使得输出的本地PN码时钟与接收到的码时钟同步。
相关器81输出的准点相关结果送入载波跟踪环鉴频/鉴相器90,进行鉴频、鉴相。载波跟踪环鉴频/鉴相器90使用叉积鉴频/鉴相算法,计算出输入信号载波与本地载波之间的频差和相差。计算出的频差和相差进入载波跟踪环环路滤波器91,载波跟踪环环路滤波器91的结构与码跟踪环环路滤波器84完全相同,但是系数有所不同。载波跟踪环环路滤波器91的输出和载波频率调整模块73的输出一同进入载波跟踪环加法器92,求和之后的结果进入载波跟踪环NCO 93跟踪输入信号的载波,完成对输入扩频信号的解扩、解调。
3、优点及效果:从以上的描述中,可以看出,该卫星测距的中频直序扩频接收机具有以下特点:采用FFT部分相关捕获结构;利用ROM存储本地FFT计算的结果,和输入信号进行相关运算;一路FFT同时计算两路的相关值。这种结构带来的优点如下:
(1)采用FFT部分相关捕获结构,每进行一次FFT运算即可计算出FFT长度点的相关峰,相比匹配滤波的方法,大幅减少资源消耗,捕获的速度更快。
(2)利用ROM存储本地FFT计算的结果,和输入信号进行相关运算,不用对本地PN码进行FFT运算,减少了本地PN FFT变换模块,大大减少了资源的消耗。同时根据ROM的深度和FFT的长度可以保证在不同载噪比下的捕获要求。
(3)利用一路FFT同时计算两路的相关值,相比用独立的FFT计算两路相关峰,具有相同的捕获时间,但是减少了一路FFT计算模块的资源消耗,提高了资源利用率。
(四)附图说明
图1本发明中频直序扩频接收机结构示意图;
图2本发明环路滤波器结构示意图;
图中符号说明如下:
10前端A/D;20同相支路乘法器;
21同相支路FIR低通滤波器;
30正交支路乘法器;31正交支路FIR低通滤波器;
40积分清零器;41缓存器;42FFT模块;
50支路1复数乘法器;51支路1本地PN码存储ROM;
52支路1IFFT模块;53支路1均方根模块;
60支路2复数乘法器;61支路2本地PN码存储ROM;
62支路2IFFT模块;63支路2均方根模块;
70自动门限计算模块;71捕获判断模块;
72PN码起始位置计算模块;73载波频率调整模块;
80本地PN码生成器;81相关器;82码跟踪环均方根模块
83码跟踪环鉴相器;84码跟踪环环路滤波器;
85码跟踪环加法器;86码跟踪环NCO;
87码跟踪环多普勒补偿模块;90载波跟踪环鉴频/鉴相器;
91载波跟踪环环路滤波器;92载波跟踪环加法器
93载波跟踪环NCO
100直通支路放大器;
101环路滤波器加法器;110积分支路放大器;
111积分支路加法器;112积分支路延时单元。
(五)具体实施方式
如图1所示,本发明一种用于卫星测距的中频直序扩频接收机,组成包括:前端模数转换模块(简称前端A/D)10、同相支路乘法器20、同相支路有限冲激响应低通滤波器(简称同相支路FIR低通滤波器)21、正交支路乘法器30、正交支路有限冲激响应低通滤波器(简称正交支路FIR低通滤波器)31、积分清零器40、缓存器41、快速傅里叶变换模块(简称FFT模块)42、支路1复数乘法器50、支路1本地伪随机码存储只读存储器(简称支路1本地PN码存储ROM)51、支路1逆快速傅里叶变换模块(简称支路1IFFT模块)52、支路1均方根模块53、支路2复数乘法器60、支路2本地伪随机码存储只读存储器(简称支路2本地PN码存储ROM)61、支路2逆快速傅里叶变换模块(简称支路2IFFT模块)62、支路2均方根模块63、自动门限计算模块70、捕获判断模块71、伪随机码起始位置计算模块(简称PN码起始位置计算模块)72、载波频率调整模块73、本地伪随机码生成器(简称本地PN码生成器)80、相关器81、码跟踪环均方根模块82、码跟踪环鉴相器83、码跟踪环环路滤波器84、码跟踪环加法器85、码跟踪环数控振荡器(简称码跟踪环NCO)86、码跟踪环多普勒补偿模块87、载波跟踪环鉴频/鉴相器90、载波跟踪环环路滤波器91、载波跟踪环加法器92和载波跟踪环数控振荡器(简称载波跟踪环NCO)93。
其中码跟踪环环路滤波器84和载波跟踪环环路滤波器91内部结构相同,只有参数不同,如图2所示:包括直通支路放大器100、环路滤波器加法器101、积分支路放大器110、积分支路加法器111和积分支路延时单元112。
上述所有组成部分,除前端A/D10使用现成上架产品以外,其余部分均在可编程逻辑门阵列(FPGA)中实现。
所述的前端A/D10以恒定的采样率对调理后的70M中频扩频信号进行带通采样,将输入的模拟信号变换为数字信号,前端A/D10使用现成的产品。
载波跟踪环NCO 93使用直接频率综合算法(简称DDS算法)实现,负责产生和前端A/D10带通采样后标称中频相同的两路固定本地载波,两路载波的相位相差90°,载波跟踪环NCO 93的输出和前端A/D10输出的带通采样后的信号作为同相支路乘法器20和正交支路乘法器30的输入;同相支路乘法器20和正交支路乘法器30使用FPGA内部IP核实现,作为下变频器使用,将输入信号下变频到零中频,同相支路乘法器20和正交支路乘法器30输出的结果分别进入结构相同的同相支路FIR低通滤波器21和正交支路FIR低通滤波器31;同相支路FIR低通滤波器21和正交支路FIR低通滤波器31采用FIR结构滤波器,使用FPGA内部IP核实现,负责对下变频后的信号进行滤波,滤除下变频后的倍频分量和带外噪声,将基带信号中的噪声功率降到更低。
低通滤波后的结果一方面输出给积分清零器40,进行码捕获,另一方面输出给相关器81用于码跟踪。积分清零器40在码跟踪环NCO86产生的本地PN码时钟控制下,对同相支路FIR低通滤波器21和正交支路FIR低通滤波器31滤波后的结果分别进行积分清零。积分清零器40输出的结果进入缓存器41,在缓存器41中同时对同相和正交支路的信号进行缓存,以适应后续FFT模块42对输入数据速率的要求,缓存器41使用FPGA内部IP核实现。缓存器41缓存后输出的同相和正交支路的结果分别作为FFT模块42的实部和虚部输入,在FFT模块42中进行快速傅里叶变换,FFT模块42使用FPGA内部IP核实现。FFT模块42的实部和虚部输出作为支路1复数乘法器50和支路2复数乘法器60的一路输入,支路1复数乘法器50和支路2复数乘法器60使用FPGA内部IP核实现。支路1复数乘法器50和支路2复数乘法器60的另一路输入分别由支路1本地PN码存储ROM51和支路2本地PN码存储ROM61提供。FFT模块42的输出依次和支路1本地PN码存储ROM51和支路2本地PN码存储ROM61中存储的本地PN码经过FFT变换后的结果进行复数相乘。支路1本地PN码存储ROM51和支路2本地PN码存储ROM61使用FPGA内部IP核实现,内部固化的数据为码相位相差FFT长度一半的两路本地PN码序列FFT变换后的结果。支路1复数乘法器50和支路2复数乘法器60计算后的结果分别送入支路1IFFT模块52和支路2IFFT模块62进行逆快速傅里叶变换,支路1IFFT模块52和支路2IFFT模块62使用FPGA内部IP核实现。支路1IFFT模块52和支路2IFFT模块62的输出分别送入支路1均方根模块53和支路2均方根模块63计算相应的均方根值,均方根值的计算采用JPL近似算法,即利用公式a2+b2≈Max(abs(a),abs(b))+12(Min(abs(s),abs(b)))]]>计算均方根值,计算出均方根值之后,将支路1均方根模块53和支路2均方根模块63的输出同时送入自动门限计算模块70,根据此时相关峰的状态计算出合适的门限值,将自动门限计算模块70的输出和支路1均方根模块53、支路2均方根模块63的输出同时送入捕获判断模块71,捕获判断模块71通过比较自动门限模块70输出的门限和支路1均方根模块53、支路2均方根模块63的输出的相关峰值判断扩频接收机是否捕获。捕获判断模块71的输出分别送入PN码起始位置计算模块72和载波频率调整模块73。
当捕获判断模块71判断扩频应答机没有捕获时,扩频接收机工作在捕获状态,载波频率调整模块73在搜索完一个码周期后,会调整输出的频率区间,从而调整载波跟踪环NCO 93输出的频率,直至完成捕获为止。此时PN码起始位置计算模块72没有输出。当捕获判断模块71判断扩频应答机已经捕获时,就会使扩频接收机由捕获状态转入跟踪状态。此时,载波频率调整模块73会停止调整,同时将此时输出送入码跟踪环多普勒补偿模块87,码跟踪环多普勒补偿模块87根据码片速率和载波频率之间的比例关系,产生相应的PN码多普勒补偿分量,用于调整码跟踪环NCO 86输出的码时钟,补偿多普勒效应对扩频码的影响。而PN码起始位置计算模块72将通过锁定时相关峰的位置,计算本地PN的起始位置,将计算的结果送入本地PN码生成器80,调整本地PN码生成器80产生的本地PN序列的相位。
本地PN码生成器80产生超前(PN-)、准点(PN)、滞后(PN+)三路本地PN码,这三路本地PN码彼此之间相差半个码片相位,三路本地PN码同时进入相关器81后与同相支路FIR低通滤波器21和正交支路FIR低通滤波器31的输出进行相关运算。输出的三路相关结果同时送入码跟踪环均方根模块82计算均方根。其中准点相关结果需要送入载波跟踪环鉴频/鉴相器90,进行鉴频、鉴相后用于载波跟踪。码跟踪环均方根模块82输出的结果进入码跟踪环鉴相器83鉴相,鉴相原理是比较超前相关的结果和滞后相关的的结果,确定码跟踪环NCO86的相位超前还是滞后,鉴相的结果送入码跟踪环环路滤波器84。码跟踪环环路滤波器84的主要作用是滤除误差信号中的高频分量,并为锁相环路提供一个短期的记忆,当环路由于瞬时噪声而失锁时,可确保环路迅速重新捕获信号,码跟踪环环路滤波器84使用理想一阶滤波器,结构如图2所示,由两个支路:直通支路和积分支路组成,直通支路只含有一个直通支路放大器100,将输入信号放大指定的倍数即可,积分支路包括积分支路放大器110、积分支路单位延时单元112和积分支路加法器111组成,输入的信号在进入直通支路的同时会进入积分支路,输入通过积分支路的放大器放大后和经过积分支路延时单元延时后的结果相加,相加后的结果一方面作为积分支路延时单元的输入,另一方面作为积分支路的输出,和直通支路的输出通过环路滤波器加法器101相加,两个支路相加后的结果作为码跟踪环环路滤波器84的输出,码跟踪环环路滤波器84输出与码跟踪环多普勒补偿模块87的输出同时送入码跟踪环加法器85进行相加运算,相加后的结果送入码跟踪环NCO 86,调整输出PN码时钟频率,使得输出的本地PN码时钟与接收到的码时钟同步。
相关器81输出的准点相关结果送入载波跟踪环鉴频/鉴相器90,进行鉴频、鉴相。载波跟踪环鉴频/鉴相器90使用叉积鉴频/鉴相算法,计算出输入信号载波与本地载波之间的频差和相差。计算出的频差和相差进入载波跟踪环环路滤波器91,载波跟踪环环路滤波器91的结构与码跟踪环环路滤波器84完全相同,但是系数有所不同。载波跟踪环环路滤波器91的输出和载波频率调整模块73的输出一同进入载波跟踪环加法器92,求和之后的结果进入载波跟踪环NCO 93跟踪输入信号的载波,完成对输入扩频信号的解扩、解调。
中频直序扩频接收机主要利用FFT并行相关的算法来完成对扩频码的捕获,原理为:互相关序列z(n)的离散傅里叶变换为:
Z(k)=Σn=0N-1Σm=0N-1x(m)y(n+m)e-j2πkn/N]]>
=Σm=0N-1x(m)ej2πkn/NΣn=0N-1y(n+m)e-j2πkn/N]]>
=X*(k)Y(k)]]>
即两序列的互相关值可已通过计算两序列傅里叶变换结果进行复共轭相乘后做逆FFT变换得到。
该并行相关是一种部分相关,首先需要对采样、下变频、滤波之后的信号进行积分清零来降低采样率,以简化对硬件的要求,然后对积分清零后的数据进行FFT运算,将FFT运算输出结果于本地参考PN序列的FFT值进行复数乘法,之后进行逆FFT运算,输出即为接收PN信号与本地PN信号的复相关结果。
对复相关峰进行平方率包络检波(求模),并进行相关峰的门限判断以确定是否得到正确的捕获。如果在一个扩频码周期内均没有得到正确的捕获,则表明由于频偏的影响超出了捕获范围,需通过载波频率调整模块73来控制载波跟踪环NCO 93的中心频率到下一载波频率,同样在一个扩频码周期内进行码捕获,直到得到正确的捕获为止。
捕获完成之后,通过捕获判断模块71,接收机可以计算出扩频码的起始位置,通过该起始位置,本地PN生成器80可以生成和接收PN码近似同步的本地PN码,两者之间的相位差在半个码片周期之内。本地PN生成器80同时产生准点、超前和滞后三路PN码。
对PN码的跟踪是通过超前、滞后串行相关器所构成的数字延迟锁相环来完成的。