卫星信号捕获的方法和装置与流程

文档序号:17920756发布日期:2019-06-15 00:05阅读:822来源:国知局
卫星信号捕获的方法和装置与流程

本申请涉及卫星信号处理领域,具体地涉及卫星信号的捕获和跟踪领域。



背景技术:

在实现gnss卫星信号的跟踪过程中,为了能让接收机在启动后成功地跟踪、锁定某颗卫星的信号,接收机需要通过前期的捕获过程来估算卫星信号的载波频率和码相位这两个参数值,并且这些信号参数的估计值的误差必须分别小于载波环和码环的牵入范围,然后接收机根据这些信号参数值初始化跟踪环路,使得跟踪环路能够对接收进行牵入,直到成功进入正常的跟踪状态为止。在前期的卫星信号捕获过程中,根据相关运算实现的方式不同,信号搜索捕获算法可以分为线性搜索、并行频率搜索、并行码相位搜索等。

线性搜索对卫星信号的载波频率及码相位这二维进行扫描式二维搜索,捕获单元实现对卫星信号的相干积分和非相干积分,并根据所获得的积分结果及捕获阈值进行捕获判决,从而完成最终的捕获,其中,捕获阈值的选择取决于捕获算法所选择的相干积分及非相干积分时间。并行频率搜索算法在线性搜索算法的基础上通过傅里叶变换实现频率的并行搜索。并行码相位搜索算法利用快速傅里叶变换的特性实现码相位的并行搜索。

然而,上述算法均受限于导航电文的比特反转,导致捕获算法设计过程中相干积分时间不能太长;另外,非相干积分次数的增加一定程度上可以提高信噪比,获得捕获灵敏度的改善,但是,非相干积分中的平方损耗却导致非相干积分次数增加使得捕获灵敏度的改善存在理论极限。

现有的北斗地球静止轨道卫星(geo)、星基增强系统卫星(sbas)等卫星系统采用500bps导航电文速率,这会导致相干积分时间短,捕获灵敏度较低,此种问题已经成为接收机灵敏度性能的瓶颈。

鉴于此,非常期望提供具有改善的信号捕获灵敏度的信号捕获方法或装置,从而改善现有技术中的缺点。



技术实现要素:

首先,本发明针对捕获过程中卫星导航电文比特翻转导致的相干积分时间短,进而,导致信号捕获灵敏度低的问题,利用导航电文每一个子帧的前两个字的可预测性,提出了一种通过控制中频数据和pn码数据的数据获取时刻,并利用导航电文每一个子帧前两个字的可预测性而控制数据获取的pn码数据的数据量,进而,处理数据获取的中频数据和pn码数据以实现导航电文剥离的卫星信号捕获方法,实现相干积分时间的延长,从而获得捕获灵敏度的提高。该方案并不局限于所述及的500bps卫星信号,针对50bps卫星信号,也可以采用同样的捕获方案实现接收灵敏度的突破。

其次,除了采取数据获取并且实时处理的模式以外,本申请的信号捕获装置还可以采取数据获取及延迟处理的模式(在将一定量的中频数据和pn码数据获取完成后,再对已经获取到的中频数据和pn码数据进行捕获处理及判决操作以确定是否捕获成功),该模式提高了帧头前后时刻数据的利用率,实现了快速的信号捕获。同时,通过采用数据获取及延迟处理的模式使得信号捕获装置的数据处理不依赖于采样速率,从而提高了捕获效率,适用于其他gnss信号及通信系统运算量高度密集模块的设计。

此外,本发明所提出的捕获解决方案,在接收机时间可用的前提下实现,适用于所有gnss卫星信号的高灵敏度捕获。

本申请提出技术方案详细叙述如下。

在一方面中,本申请提供一种卫星信号的捕获方法,所述方法包括:卫星信号发射时间估计操作,包括:获取接收机时间,对接收机时间的误差进行估计以产生接收机时间的估计值,获取卫星信号传输时间的估计值,并根据所述接收机时间的估计值以及所述卫星信号传输时间的估计值确定卫星信号发射时间的估计值及误差范围。

在一些实施例中,该方法还包括:码相位搜索区间确定操作,包括:根据所述卫星信号发射时间的估计值、所述误差范围及导航电文结构,估计帧头起始时刻tt_sf_x及其误差范围±tt_err,从而确定tt_sf_x-tt_err到tt_sf_x+tt_err的码相位搜索区间,将所述码相位搜索区间分为k个码相位搜索子区间mk,其中,x表示子帧编号并且为大于0的整数,k为大于或等于1的整数,k表示码相位搜索子区间的序号,其值为1、2、…、k,码相位搜索子区间mk的时间长度为tmk毫秒,并且k个码相位搜索子区间的时间长度的总和大于或等于所述误差范围的值tt_err的两倍。

在一些实施例中,该方法还包括:搜索操作,包括数据获取控制操作、捕获处理及判决操作,其中,所述数据获取控制操作包括:从数据获取时刻开始获取中频数据,所获取的所述中频数据的最终长度为tmk+tn毫秒,并获取对应于所述帧头起始时刻tt_sf_x的pn码数据,所获取的所述pn码数据的最终长度为tn毫秒,其中将所述估计的帧头起始时刻tt_sf_x加上相应的时间偏移量dk作为所述数据获取时刻,并且所述tn的值不超过卫星导航电文的每个子帧中前两个字的时间长度;并且所述捕获处理及判决操作,包括:对于某一多普勒频点,在从所述数据获取时刻起至数据获取操作结束时刻的期间中的任意时刻对已经获取的中频数据与pn码数据进行捕获处理,并将所述捕获处理的结果与预设的阈值比较以进行捕获判决,其中,所述捕获处理包括相关运算处理、导航电文剥离处理以及快速傅里叶变换处理。

在一些实施例中,所述搜索操作包括:在判决结果为捕获失败的情况下,切换至下一个多普勒频点,并在切换频点完成后,对所述下一个多普勒频点的所述码相位搜索子区间mk进行所述搜索操作,直到捕获成功或者完成对所有多普勒频点的所述码相位搜索子区间的搜索。

在一些实施例中,在完成对该码相位搜索子区间的所有多普勒频点的搜索而未捕获成功的情况下,所述方法还包括:根据所述搜索操作对下一个码相位搜索子区间mk+1进行搜索,其中对应于所述码相位搜索子区间mk+1的本次帧头起始时刻为在上一次码相位搜索子区间mk捕获处理完成时刻之后出现的第一个帧头起始时刻,并且所述码相位搜索子区间mk+1的数据获取时刻为所述出现的第一个帧头起始时刻加上相应的时间偏移量dk+1。

在一些实施例中,所述时间偏移量的值不超过所述误差范围tt_err。

在一些实施例中,所述时间偏移量dk满足:d1=-d2,对于自第三个码相位搜索子区间k=3开始,所述子区间序号k为奇数时:时间偏移量dk=dk-2-tmk,子区间序号k为偶数时,时间偏移量dk=dk-2+tmk-2。

在一些实施例中,所述时间偏移量dk=ik*tmk-tmk/2,k的值为1、2、…、k,ik的值从0,1,-1,2,-2…的序列中顺序取值,并且每个tmk相等。

在一些实施例中,所述时间偏移量当k=1时,满足d1=-tt_err,当k为大于1的整数时满足:dk=dk-1+tmk-1。

在一些实施例中,在捕获成功的情况下,在完成子帧同步之后修正接收机时间并重新进行接收机时间的误差的估计,并进行对下一颗卫星的捕获;或者在完成对所有k个码相位搜索子区间的搜索而未捕获成功的情况下,进行对下一颗卫星的捕获。

在一些实施例中,所述接收机时间通过外部授时或者实时时钟(rtc)获取。

在一些实施例中,所述卫星信号传输时间大于或等于最小传输时间,并且小于或等于最大传输时间。

在一些实施例中,确定卫星信号发射时间的估计值包括用所述接收机时间的估计值减去所述卫星信号传输时间的估计值。

在一些实施例中,所述pn码数据是p码或者c/a码。

在一些实施例中,获取所述pn码数据包括:控制外部pn码数据发生器获取对应于帧头起始时刻tt_sf_x的pn码数据;或者本地生成并且获取对应于帧头起始时刻tt_sf_x的pn码数据。

在一些实施例中,所述捕获处理及判决操作包括:先对所述pn码数据进行导航电文剥离处理,再将经剥离处理的pn码数据与所述中频数据进行相关运算处理、积分清零处理及快速傅里叶变换处理;或者先将所述pn码数据和所述中频数据进行相关运算处理且对相关运算处理的结果进行积分清零,再对所输出的积分清零的运算结果进行导航电文剥离处理,并对所述剥离的结果进行快速傅里叶变换处理。

在一些实施例中,所述相关运算处理包括通过多个相关器对于中频数据和pn码数据进行相干积分,并且其中tn为选择的相干积分时间。

在一些实施例中,所述导航电文剥离处理包括根据所述码相位搜索子区间的帧头起始时刻确定该帧对应的导航电文的比特正负,根据该导航电文的比特的正负将pn码数据与1或者-1相乘,或者将积分清零的运算结果与1或者-1相乘以去除导航电文对于相关运算处理的结果的影响。

在一些实施例中,在从所述数据获取时刻起至数据获取操作结束时刻的期间中的任意时刻对已经获取的中频数据与pn码数据进行捕获处理包括在所述中频数据的长度为tmk+tn毫秒和所述pn码数据的长度为tn毫秒的情况下执行所述捕获处理,或者对获取到所述中频数据和pn码数据进行实时处理。

在另一方面,本申请提供一种信号捕获装置,该信号捕获装置包括,卫星信号发射时间估计模块,进行卫星信号发射时间估计操作:获取接收机时间,对接收机时间的误差进行估计以产生接收机时间的估计值,获取卫星信号传输时间的估计值,并根据所述接收机时间的估计值以及所述卫星信号传输时间的估计值确定卫星信号发射时间的估计值。

在一些实施例中,该信号捕获装置还包括,码相位搜索区间确定模块,进行码相位搜索区间确定操作:根据所述卫星信号发射时间的估计值及导航电文结构,估计帧头起始时刻tt_sf_x及其误差范围±tt_err,从而确定tt_sf_x-tt_err到tt_sf_x+tt_err的码相位搜索区间,将所述码相位搜索区间分为k个码相位搜索子区间mk,其中,x表示子帧编号并且为大于0的整数,k为大于或等于1的整数,k表示码相位搜索子区间的序号,其值为1、2、…、k,码相位搜索子区间mk的时间长度为tmk毫秒,并且k个码相位搜索子区间的时间长度的总和大于或等于所述误差范围的值tt_err的两倍。

在一些实施例中,该信号捕获装置还包括,搜索模块,进行搜索操作,所述搜索模块包括数据获取控制模块和捕获处理及判决模块,并且其中,所述数据获取控制模块进行数据获取控制操作:从数据获取时刻开始获取中频数据,所获取的所述中频数据的最终长度为tmk+tn毫秒,并获取对应于所述帧头起始时刻tt_sf_x的pn码数据,所获取的所述pn码数据的最终长度为tn毫秒,其中将所述估计的帧头起始时刻tt_sf_x加上相应的时间偏移量dk作为所述数据获取时刻,并且所述tn的值不超过卫星导航电文的每个子帧中前两个字的时间长度;并且所述捕获处理及判决模块进行捕获处理及判决操作:对于某一多普勒频点,在从所述数据获取时刻起至数据获取操作结束时刻的期间中的任意时刻对已经获取的中频数据与pn码数据进行捕获处理,并将所述捕获处理的结果与预设的阈值比较以进行捕获判决,其中,所述捕获处理包括相关运算处理、导航电文剥离处理以及快速傅里叶变换处理。

在另一方面,本申请提供一种oem板卡,其包括上述信号捕获装置。

在又一方面,本申请提供一种接收机,其包括上述信号捕获装置。

在再一方面,本申请提供一种计算机可读存储介质,其上储存有计算机程序产品,当执行该计算机程序产品时,进行上述信号捕获的方法。

从下面的详细描述中,本发明的其它方面和实施例将变得显而易见,当结合附图时,通过举例的方式说明本发明的原理。

附图说明

参考下面的附图描述了本公开的非限制性和非穷举的实施例,除非另有说明,其中贯穿各个附图相同附图标记指代相同部件。图中的组件并非按比例绘制,并且可能在比例外绘制以促进对本公开的实施例的理解的方便。

图1是示出根据本申请的实施例的卫星信号接收机的结构示意图;

图2是示出根据本申请的实施例的信号捕获装置的结构示意图;

图3是示出根据本申请的实施例的卫星信号的捕获方法的流程图;

图4是示出根据本申请的实施例的数据获取控制模块的结构示意图;

图5a是示出根据本申请的实施例的控制数据获取示意图;

图5b是示出根据本申请的另一实施例的控制数据获取示意图;

图5c是示出根据本申请的另一实施例的控制数据获取示意图;

图6a是示出根据本申请的实施例的捕获处理及判决模块的结构示意图;

图6b是示出根据本申请的另一实施例的捕获处理及判决模块的结构示意图;

图7是示出根据本申请的实施例的控制数据获取和延迟捕获处理及判决的示意图;

图8a是示出根据本申请的实施例的数据获取控制模块另一实施方式的结构示意图;

图8b是示出根据本申请的实施例基于图8a的数据获取控制模块实现控制数据获取和实现实时捕获处理及判决的示意图;

图9是示出包含根据本申请的实施例的信号捕获装置的oem板卡;

图10是示出包含根据本申请的实施例的信号捕获装置的接收机。

在下面的说明书中,参考了形成其一部分的附图,并且附图中以阐述其中实践本公开的特定示例性实施例的方式示出。足够详细地描述这些实施例,以使本领域技术人员能够实践本文所公开的概念,并且应当理解可以进行对于各种所公开的实施例的修改,并且可以采用其它实施例,而不背离本公开的范围。因此,下面的详细说明不认为是限制性含义。

具体实施方式

为了说明本发明的一般原理而进行以下描述,并不意味着限制本文所要求保护的发明构思。此外,本文描述的特定特征可以与各种可能的组合和排列中的每一种中的其它描述的特征结合使用。

除非本文另有具体的定义,否则所有术语将被给予其最广泛的解释,包括本说明书所暗示的含义以及本领域技术人员所理解的含义和/或如词典、论文等中所定义的。

以下描述公开了捕获卫星信号的方法和装置的几个优选实施例,以及其操作和/或组件部分。

图1为常规的卫星信号的接收机的框图。

如图1所示,接收机100按照功能分为天线110、射频前端处理模块(rfic)120、基带数字信号处理(dsp)模块130和导航定位运算模块140。

进一步如图1所示,在一些实施例中,射频前端处理模块(rfic)120可以包括前置放大器121、下变频器122、频率合成器(本地振荡器)123以及a/d转换器124。

射频前端处理模块120经由天线110接收卫星信号,然后通过前置放大器121放大卫星信号及滤波处理等,之后通过下变频器122与频率合成器123产生的正弦波本振信号进行混频,从而下变频到中频(if)信号,最后通过a/d转换器124将中频信号转换为数字中频信号。

基带数字信号处理(dsp)模块130包括数字信号处理模块131以及跟踪模块132。基带数字信号处理模块130通过处理射频前端处理模块120所输出的数字中频信号if(中频数据),复制出与接收到的卫星信号相一致的本地载波和本地伪码信号,从而通过数字信号处理模块131和跟踪模块132实现对卫星信号的捕获和跟踪,并且从中获得卫星伪距和载波相位等测量值以及解调出导航电文。

导航定位运算模块140用于接收卫星信号的测量值以及导航电文,最终通过运算确定接收机的位置。

图2为根据本申请的实施例的信号捕获装置的结构的框图示意图。

如图2所示,数字信号处理模块131包括卫星信号捕获装置200。卫星信号捕获装置200可以耦接在射频前端处理模块(rfic)120和跟踪模块132之间,并且卫星信号捕获装置200可以包括卫星信号发射时间估计模块210、码相位搜索区间确定模块211和搜索模块212。搜索模块212包括数据获取控制模块220以及捕获处理及判决模块230。

卫星信号发射时间估计模块210用于根据接收机本地时间的估计及卫星信号传输时间的估计来估计卫星信号的发射时间得到卫星信号发射时间的估计值及其误差范围。

码相位搜索区间确定模块211根据卫星信号发射时间的估计值、其误差范围及导航电文结构,估计帧头起始时刻tt_sf_x及其误差范围±tt_err,从而确定tt_sf_x-tt_err到tt_sf_x+tt_err的码相位搜索区间。将码相位搜索区间分为k个码相位搜索子区间mk,其中,x表示子帧编号并且为大于0的整数,k为大于或等于1的整数,k表示码相位搜索子区间的序号,其值为1、2、…、k。码相位搜索子区间mk的时间长度为tmk毫秒,并且k个码相位搜索子区间的时间长度的总和大于或等于所述误差范围的值tt_err的两倍。

数据获取控制模块220用于控制中频数据的数据获取时刻以及pn码数据的获取时间,调度二者的起始和结束时刻,并且获取相应的中频数据以及pn码数据以用于之后的捕获判决操作。数据获取控制模块220的具体配置结构将在下面进一步参考图4进一步描述。

捕获处理及判决模块230用于对已得到的中频数据以及pn码数据进行捕获处理,并进一步判决是否捕获到卫星信号,捕获处理及判决模块230的配置结构和操作流程将在下面进一步参考图6a-6b至图8b描述。

图3是根据本发明的实施例的高灵敏度捕获方法的流程图。

将首先参照图3描述根据本发明的高灵敏度的卫星信号捕获方法的总体实现步骤,而对于每一个步骤中的具体操作方式以及用于实现其的结构或模块将在下面参考图4-8b更加详细地描述。

参见图3,在步骤s3100处,接收机启动捕获过程。接收机通过天线开始接收来自待搜索的卫星sv发出的卫星信号,以下以初始确定的待搜索卫星为1号卫星sv1来具体描述本发明的实现方式。

在步骤s3110处,卫星信号捕获装置200的卫星信号发射时间估计模块210确定卫星信号发射时间的估计值及其误差范围,并进一步根据卫星信号发射时间的估计值及其误差范围和导航电文结构来确定导航电文每一子帧的帧头起始时刻及其误差范围±tt_err,此外,码相位搜索区间确定模块211根据子帧的帧头起始时刻及其误差范围确定码相位搜索区间及码相位搜索子区间。

在步骤s3120处,搜索模块212对码相位搜索区间中的一个码相位搜索子区间mk进行搜索,从所确定的数据获取时刻开始获取中频数据,所获取的中频数据的最终长度是tmk+tn毫秒;并获取对应于所述帧头起始时刻tt_sf_x的pn码数据,所获取的pn码数据的最终长度是tn毫秒。

在步骤s3130处,对于某一多普勒频点j处,根据所获取的中频数据与pn码数据进行捕获处理以判决是否捕获成功,其中捕获处理包括相关运算处理、导航电文剥离处理以及快速傅里叶变换(fft)处理。

在步骤s3140处,将捕获处理的结果与预设的阈值进行比较,从而判决是否捕获成功。若捕获处理的结果大于阈值,则捕获成功;流程转到步骤s3150处,接收机进而进行捕获到跟踪的转换,从而实现卫星的成功跟踪。若捕获处理的结果小于阈值,则流程转到步骤s3160处,进行多普勒频点切换,从而对于下一个多普勒频点j+1进行搜索操作。

接着,在步骤s3170处,确定搜索的多普勒频点是否完成处理,也就是j+1是否超过多普勒频点数目的最大值,如果未超过,才对于下一个多普勒频点j+1的码相位搜索子区间mk进行搜索,并重复步骤s3130-s3140;若完成所有多普勒频点的搜索(j+1超过多普勒频点数目的最大值),则流程转到步骤s3180,此时转换到对下一个码相位搜索子区间mk+1进行搜索,并且在步骤s3190处,判断k是否大于k(其中,k也可以表示已执行了几次搜索操作,k表示码相位搜索子区间的总个数或者搜索的总次数),若搜索次数k小于或等于k,则重复上述步骤s3120-s3170。

此外,当k>k时,表明已经完成对于该卫星的所有码相位搜索区间的搜索,则流程转到步骤s3200处,退出对于当前卫星sv1的卫星信号的搜索,并对下一个卫星sv2的码相位搜索区间采用与卫星sv1相同的方式进行搜索,需要说明的是,相同的方式是指需要经过的步骤和处理方式相同,但,码相位搜索子区间的长度可以不同。并且在步骤s3210处判断是否完成对于所有卫星的搜索,若完成了对于所有卫星信号的搜索或者已经完成卫星的捕获之后,则退出当前的捕获处理。

以下将更加详细地描述本发明实施例的上述捕获方法的一些步骤。

在一些实施例中,步骤s3110处的具体操作过程可以按照以下方式进行:

首先,卫星信号发射时间估计模块210获取接收机时间,并对接收机时间的误差进行估计以产生接收机时间的估计值计算卫星信号传输时间的估计值其中,卫星传输距离可以由卫星传输距离的平均距离来估计,并根据以下公式1,来确定卫星信号发射时间的估计值

在一些实施例中,以上接收机时间的获取以及卫星信号传输时间的估计可以通过现有技术中已知的方式进行,故不在此赘述。

其次,在获得卫星信号发射时间的估计值之后,可以根据接收机本地时间的估计值及卫星信号传输时间的估计值确定卫星信号发射时间的估计值及其误差范围。根据卫星信号发射时间的估计值、该估计值的误差范围及导航电文结构来估计导航电文每一子帧的帧头起始时刻tt_sf_x及其误差范围±tt_err。对该误差范围±tt_err说明如下:

由于估计过程中接收机本地时间及卫星信号传输时间存在误差,所以将导致所获得的卫星信号发射时间也存在误差,并进一步导致估计的帧头起始时刻tt_sf_x存在一定误差。例如,接收机时间的估计值的误差主要来自于本地时间获取方式不同,而卫星信号传输时间的估计值的误差主要来自于接收机位置等信息准确性的不同,而以上两者的误差将导致估计的帧头起始时刻tt_sf_x存在一定误差。在一些实施例中,可以将帧头起始时刻tt_sf_x估计的误差范围记为±tt_err。

进一步地,根据帧头起始时刻tt_sf_x及其误差范围确定tt_sf_x-tt_err到tt_sf_x+tt_err为卫星信号的码相位搜索区间,将该码相位搜索区间分为k个码相位搜索子区间mk(k=1…k),而所述搜索操作可以对于每个码相位搜索子区间分别进行。这里定义上述x表示子帧编号并且为大于0的整数,这里需要说明的是,此处的子帧编号并不是导航电文格式中固定的子帧编号(比如,gps卫星导航电文的每帧包括5个子帧所对应的编号),而是从时间轴上看,搜索的子帧的序号。比如,如果在第2帧的第三个子帧通过搜索捕获到卫星信号,则所述子帧编号x被相应地编号为8(5+3)。此外,这里假设k为大于1的整数,而k表示码相位搜索子区间的序号,k也可以理解为搜索的次数或者第几次搜索。例如,每完成1次搜索,该k递进1,即,k的值为1、2、…、k。此外,假设码相位搜索子区间mk的时间长度为tmk毫秒,并且k个码相位搜索子区间的时间长度的总和大于或等于帧头起始时刻的误差范围tt_err的大小的两倍。

图4是示出根据本申请的实施例的数据获取控制模块220的结构示意图。

数据获取控制模块220包括如图4所示的方式耦接的控制器410、载波数字振荡器(载波nco)420、混频器430、码数字振荡器(码nco)440、pn码数据发生器450、中频(if)数据缓存器460和pn码数据缓存器470。

控制器410用于控制中频数据的数据获取时刻、pn码数据的获取时刻以及二者之间的时间控制和调度。

载波数字振荡器(载波nco)420和混频器430用于对于所接收的信号进行进一步处理以便于缓存在中频(if)数据缓存器460中。

码数字振荡器(码nco)440和pn码数据发生器450用于对pn码数据进行进一步处理以便于缓存在pn码数据缓存器470中。

在以上实现了卫星信号发射时间估计的基础上,数据获取控制模块220需要获取相应的中频数据以及pn码数据以用于后续的捕获处理及判决操作。因此,控制器410在所选取的数据获取时刻开始缓存中频数据,但是为了减少缓存的数据量,中频数据经过混频器430完成去载波以后,经过低通滤波器及抽取,中频数据的最终获取长度为tmk+tn毫秒;此外,控制器410还控制提取或获取相应的pn码数据。获取的pn码数据的最终长度为tn毫秒。

图5a-5c是示出根据本申请的实施例的控制数据获取的示意图。

下面将参考图4和图5a-5c具体描述对任意一个码相位搜索子区间mk进行搜索的开始步骤,即实现数据获取的控制及搜索的具体实现方式。

如上所述,已经将时间长度为2*tt_err的整个码相位搜索区间分为了k个码相位搜索子区间,码相位搜索子区间mk的时间长度为tmk毫秒,而在一些实施例中,对码相位搜索子区间mk进行搜索需要首先确定中频数据的数据获取时刻。这里可以将所述估计的帧头起始时刻tt_sf_x加上相应的时间偏移量dk作为所述数据获取时刻,即,从该数据获取时刻tt_sf_x+dk开始获取中频数据(可以理解为,从该时刻开始,控制器410控制开关闭合而开始接收数据)。获得的中频数据用于后续的捕获处理,获取的中频数据的最终长度为tmk+tn毫秒,如图5a-5b所示,时间偏移量dk的值不超过所述误差范围tt_err。

控制数据获取实现卫星信号的全部+/-tt_err码相位搜索区间的搜索的过程如图5a-5c及图7所示。例如,参见图5a,对应于码相位搜索子区间m1的数据获取时刻可以是tt_sf_1+d1,(例如,d1=-1/2tm1),控制器410在该时刻闭合开关,就可以从该数据获取时刻tt_sf_1+d1开始获取tm1+tn毫秒的中频数据;对应于码相位搜索子区间m2的数据获取时刻可以是tt_sf_2+d2,(例如,d2=1/2tm1),控制器410可以从该数据获取时刻tt_sf_2+d2开始获取tm2+tn毫秒的中频数据;对应于码相位搜索子区间m3的数据获取时刻可以是tt_sf_3+d3,(例如,d3=-1/2tm1-tm3),控制器410从该时刻开始获取tm3+tn的数字中频数据;以此类推,技术人员可以得出,d1=-d2,对于自第三个码相位搜索子区间开始,码相位搜索子区间序号k为奇数时:时间偏移量dk满足dk=dk-2-tmk-2,码相位搜索子区间序号k为偶数时,时间偏移量dk的数值大小满足dk=dk-2+tmk-2。

基于上述偏移量及估计的帧头起始时刻获取中频数据及pn码数据,直到k个码相位搜索子区间的时间长度tm1+tm2+…tmk覆盖整个码相位搜索区间为止,此时,对于码相位搜索区间的搜索完成。其中需要特别注意的是,这里附图5a中的子帧的序号(例如,tt_sf_1、tt_sf_2、tt_sf_3等)仅是示意的作用,如之后进一步参照图7详细描述的,这里并不意味着在每一个帧头的起始时刻都会进行数据的获取。

根据硬件的实际处理能力以及软件设计的不同,每一个码相位搜索子区间的时间长度tmk(k=1、2、…k)的值可以相等、不完全相等或者均不相等,并且数据获取时刻中的每一个偏移量dk(k=1、2、…k)的值也可以相等、不完全相等或者均不相等,例如图5a示意出码相位搜索子区间m1、m2和m3各自的时间长度tm1≠tm2≠tm3,这里只要码相位搜索子区间的时间长度的总和能够覆盖整个码相位搜索区间即可。为了描述的方便,以下将基于每个码相位搜索子区间的时间长度tmk相等的实施例来具体描述。然而,如本领域技术人员可以理解的,本发明并不限于此。

在一些实施例中,参考图5b,k个码相位搜索子区间的每一个的时间长度tmk均等于tm毫秒,此时,偏移量dk例如可以为ik*tmk-tmk/2,其中ik的值在0,1,-1,2,-2…的序列中顺序地取值,即,第1次搜索,ik=0;第2次搜索,ik=1;第三次搜索ik=-1、第四次搜索ik=2;第五次搜索ik=-2,以此类推。在此情况下,对于码相位搜索子区间m1,控制器410例如可以从该数据获取时刻tt_sf_1-tm/2开始获取tm+tn毫秒的中频数据;对于码相位搜索子区间m2,控制器例如可以从该数据获取时刻tt_sf_2+tm/2开始获取tm+tn毫秒的中频数据;对于码相位搜索子区间m3,控制器410例如可以从该数据获取时刻tt_sf_3-3/2*tm处开始获取tm+tn毫秒的中频数据;以此类推,对于码相位搜索子区间mk,控制器例如可以从该数据获取时刻tt_sf_x+ik*tm-tm/2(ik=0、1、-1、2、-2……)处开始获取tm+tn毫秒的中频数据。并且进一步从图5b中可以看到,上述码相位搜索子区间以类似于以相应子帧为中心轴而左右摆动的方式形成,直至所有码相位搜索子区间的时间长度覆盖整个码相位搜索区间k*tm为止。而所获取的中频数据被储存在中频(if)数据缓存器460中以用于后续的捕获处理操作。还需要注意的是,以上偏移量dk也可以以其它方式选取,而并不一定限于以上具体实现方式确定。

请参阅图5c并结合图5a和图5b,本领域的技术人员也可以理解,作为上述左右摆动方式的替换方案,也可以在时间轴上一直向前搜索,例如,偏移量dk例如可以为dk=dk-1+tmk-1,其中d1=-tt_err并且k为>1的整数序列。如图5c所示,对于码相位搜索子区间m1,控制器410例如可以从该数据获取时刻tt_sf_1-tt_err(d1=-tt_err)开始获取tm+tn毫秒的中频数据;对于码相位搜索子区间m2,控制器410例如可以从该数据获取时刻tt_sf_2-tt_err+tm1(d2=d1+tm1=-tt_err+tm1)开始获取tm+tn毫秒的中频数据;对于码相位搜索子区间m3,控制器410例如可以从该数据获取时刻tt_sf_2-tt_err+tm1+tm2(d3=d2+tm2=-tt_err+tm1+tm2)开始获取tm+tn毫秒的中频数据…以此类推,直到所有k个码相位搜索子区间的时间长度覆盖整个码相位搜索区间为止,在此不再赘述。同样的道理,对于码相位搜索子区间的时间长度tmk相等或者不相等的情况,都可以采用前述一直向前的搜索方式。

另一方面,控制器410可以控制获取对应于该帧头起始时刻tt_sf_x的tn毫秒的pn码数据,并且所述tn的值不超过卫星导航电文的每个子帧中前两个字的时间长度。举例来说,对于典型的500bps卫星信号来说,其子帧周期为600ms,而每个子帧中的前两个字的时间长度为120ms,则所获取的pn码数据的时间长度tn只需要小于或者等于120ms。

此外,对于获取pn码数据的时间,控制器410可以根据需要而自由地选择,例如可以在中频数据的数据获取时刻开始时获取相应的tn毫秒的pn码数据,也可以在中频数据获取结束之前获取相应的tn毫秒的pn码数据,或者可以在中频数据获取结束之后再产生相应的pn码数据。

在一些实施例中,上述pn码数据是p码或者c/a码。根据实现方式的不同,获取pn码数据的方式也可以不同。例如,对于码产生方式未知的卫星信号,可以控制外部pn码数据发生器产生对应于帧头起始时刻tt_sf_x的pn码数据并获取在pn码数据缓存器470中。而在其它实施例中,例如对于码产生方式已知的情况,pn码数据也可以在中频数据获取结束之后实时生成,如通过本地生成的方式在后续的处理操作中实时产生pn码数据,而不需要进行pn码数据的获取。

图6a和6b是示出根据本申请的不同实施例的捕获处理及判决模块230的结构示意图。

捕获处理及判决模块230包括如图6a和6b所示的方式耦接的混频器610、nco620、n路相关器630、导航电文剥离模块640、快速傅里叶变换(fft)模块650、信号检测模块660、判决模块670和积分清零模块680。对于码产生方式已知的情况,捕获处理及判决模块230还包括pn码数据发生器480。

以图6a所示的捕获处理及判决模块230来举例说明,其中混频器610和nco620用于对于储存在中频数据缓存器460中的中频数据和pn码数据缓存器470中的pn码数据进行进一步频率变换,并在将中频数据输入到n路相关器之前进行累加/清零操作。另外,取决于上述pn码数据的获取方式不同,可以同时构造pn码数据缓存器470和pn码数据发生器480以及切换二者的开关结构,并且根据具体的需求选择以何种方式获取pn码数据,pn码数据的获取方式及时刻如前所述,不再赘述。

并行的n路相关器630用于将中频数据与本地pn码数据进行相关,从而实现不同码相位的搜索,即,每一个相关器根据输入的中频数据以及pn码数据实现不同码相位的tn毫秒数据积分运算,并输出得到的积分结果。

积分清零模块680对n路相关器的运算结果进行积分清零运算,将运算结果输入到导航电文剥离模块640。

导航电文剥离模块640对于上述积分清零模块的运算结果进行导航电文的剥离操作。简述该剥离操作如下:相关器实现gnss信号1ms相关处理,n路相关器630输出对应n组相关结果:(i0,q0);(i1,q1);(i2,q2);......(in-1,qn-1);,以gpsl1c/a信号为例,导航电文传输速率为50bps,导航电文数据位宽为20ms。对n组相关结果进行积分清零,然后进行导航电文剥离处理,这样实现导航电文剥离后的数据为:

(i0,q0)*d0;......(i19,q19)*d0;(i20,q20)*d1;......(i39,q39)*d1;......,其中,d0、d1、d2……dn表示导航电文数据位,并且d0、d1、d2……dn的从1或-1取值,根据帧头起始时刻tt_sf_x及该时刻对应的导航电文的结构可以预测导航电文的前两个字,进而,根据导航电文前两个字的内容确定导航电文是否翻转,如果翻转,则,数据位取值为-1,如果没有翻转,数据位取值为1。

由于无论是从外部pn码数据发生器获取pn码数据还是通过捕获处理及判决模块自身的码发生器获取pn码数据,所产生的pn码数据对应的信号发射时刻tt_sf_x都是已知的。而根据卫星信号icd文件,子帧开始的前两个字包含前导码(preamble)、子帧号、sow等确定的信息或者根据子帧头对应的时刻tt_sf_x可预测的信息(如子帧号、sow等)。因此,针对任意一个子帧均可以实现子帧前两个字的预测,从而根据已知的导航电文(预测的子帧前两个字的导航电文)的比特的正负将上述相关运算的结果与1或者-1进行相乘,以完成导航电文的剥离,导航电文剥离后的相关运算的结果去除了导航电文对于相关运算结果的影响。

此外,图6b中示出了可以实现的捕获处理及判决模块230的另一种实现方式。该实施方式与图6a所示实施方式的区别在于:图6b中在相关运算之前进行导航电文剥离处理,而图6a是在相关运算之后进行导航电文剥离处理,图6b与图6a实现方式的相同之处在此省略,不再赘述。在图6b的情形下,导航电文剥离模块640进行导航电文剥离的过程简述如下:pn码数据缓存器470或者pn码数据产生器480输出的1ms的pn码数据表示为导航电文的数据位表示为d0、d1、d2……dn。将pn码数据与数据位进行异或以完成导航电文的剥离,这样,消除了导航电文影响的pn码数据输入n路相关器630以进一步与中频数据进行相关运算,并通过积分清零模块680对相关运算结果进行积分清零运算,并将积分运算的结果输入fft模块650。

fft模块650用于对于上述剥离导航电文的积分结果进行fft计算,并且将计算结果输入到信号检测模块660,之后进一步由判决模块670将检测结果与预设的阈值比较而进行捕获判决,以完成整体的信号捕获过程。

图7是示出根据本申请的实施例的控制数据获取及延迟处理和判决的示意图。

由于卫星导航信号的捕获过程是一个运算密集型处理单元,捕获硬件模块往往运行在更高频率上以提高捕获速度;同时,本申请的技术方案通过利用导航电文信息中前两个字的可预测性及重复性,实现了如上文所述的卫星导航电文数据的剥离。因此,通过数据获取及延迟处理的方式实现数据的获取并延迟进行高速处理使得数据处理不依赖于采样速率,可以极大地提高捕获效率,缩短捕获时间。以下将参考图4描述数据获取及延迟处理过程(在所述中频数据的长度为tmk+tn毫秒和所述pn码数据的长度为tn毫秒的情况下执行所述捕获处理到)。

此外,为了便于描述,以下将基于每个码相位搜索子区间的时间区间tmk相等,偏移量dk=ik*tmk-tmk/2,ik的值从0,1,-1,2,-2…的序列中顺序取值,并且以实时获取pn码数据的优选实施例来具体描述。然而,如本领域技术人员可以理解的,本发明并不限于此,而是可以采用如上所述的多种实现方式。

如图7和图4所示,每个码相位搜索子区间的时间长度tmk=tm,因此整个码相位搜索区间为k*tm,并且可以以ik*tm-tm/2,ik的值从0,1,-1,2,-2…的序列中顺序取值的方式确定偏移量dk。举例来说,当对于某一个多普勒频点j准备对于例如第一码相位搜索子区间m1进行搜索时,根据估计的帧头起始时刻tt_sf_1加上相应的时间偏移量d1来确定数据的数据获取时刻,其中偏移量可以根据上述公式计算:d1=-tm/2,即,控制器410控制装置从tt_sf_1-tm/2时刻(如图7中第一个椭圆阴影的左侧起始点为数据获取时刻,图7中以从左自右第一个向下的箭头示意该时刻)处开始获取长度为tm+tn毫秒的中频数据(图7中以长方形框示意),并且可以同时获取tn毫秒的pn码数据(图7中以填充有斜线的长方形框示意),完成获取后,执行包括如上所述的相关运算处理、导航电文剥离处理以及快速傅里叶变换(fft)处理的捕获处理过程,其处理过程以如图7中所示的长方形的虚线框示意,并在结束处将是否成功捕获卫星信号的判决结果上报(图7中以从左自右第一个向上的箭头表示)。如果捕获成功,则开始捕获到跟踪的转换过程,并且对该卫星进入到信号跟踪状态。而如果捕获失败,则切换到下一个多普勒频点j+1,并且重复上述对于码相位搜索子区间m1的搜索过程,直到完成该码相位搜索子区间m1的所有多普勒频点的搜索。

若对于该码相位搜索子区间的所有多普勒频点的搜索完成而没有捕获到卫星信号,则在下一个数据获取时刻(图7中以自左向右第二个向下的箭头示意)处开始获取数据。如图7中所示,由于硬件处理的能力不同,所以在处理时间结束时,可能已经错过与第一个估计的子帧起始时刻顺序相邻的第二个子帧起始时刻,如图7所示的tt_sf_2,因此,控制器410将等待处理结果上报(即,处理时间结束)之后出现的第一个子帧起始时刻,例如,可能是图7中所示tt_sf_3,并且将该出现的第一个子帧起始时刻加上相应的偏移量作为下一个数据获取时刻。例如,如图7中所示,对于第一个码相位搜索子区间m1的搜索处理结束之后出现的第一个子帧的帧头起始时刻为tt_sf_3,这时,可以对对应于该子帧tt_sf_3的码相位搜索子区间m2进行搜索,即,根据帧头起始时刻tt_sf_3加上相应的时间偏移量d2来确定数据的获取时刻,此时,d2=tm/2,也就是说,控制器410闭合开关从tt_sf_3+tm/2时刻开始获取中频数据(如图7中第二个椭圆阴影的左侧起始点为数据获取时刻,从左自右第二个向下箭头)。事实上,在实际操作中,可以根据进行捕获处理的软件所直接获得的处理时间来自动地确定对应于每一个码相位搜索子区间mk的数据获取时刻。此外,在完成获取后,执行如上所述的捕获处理过程,并在结束处将是否成功捕获卫星信号的判决结果上报(如图7中从左自右第二个向上的箭头所示)。以此类推,实现其他所有码相位搜索子区间的搜索,直到捕获成功或者已经完成对于所有k个码相位搜索子区间mk的搜索。若仍未搜索到卫星信号则切换到下一个卫星sv2进行重新搜索。此外,当某一刻卫星成功实现跟踪并实现同步,后续卫星帧头起始时刻的估计误差将会减少,从而减少后续卫星码相位搜索区间的大小并加快后续卫星搜索过程,直至完成所有卫星捕获。

如本领域技术人员可以理解的,本发明的实现方式不限于以上数据获取及延迟处理和判决的实现方式(例如,上述图7是在获取的中频数据的最终长度为tm+tn毫秒和pn码数据的最终长度为tn毫秒之后再进行捕获处理),如果硬件处理能力强,则可以实时处理所获取的两种数据,以下将以图8a和图8b中示出的控制数据获取并且在数据获取时刻开始实时实现捕获处理的实施例来说明实时处理方式的过程。该方式是上述数据获取及延迟处理的替换方式。

图8a是示出根据本申请的实施例的数据获取控制模块220另一实施方式的结构示意图

数据获取控制模块220包括如图8a所示的方式耦接的控制器410、载波数字振荡器(载波nco)420、混频器430、码数字振荡器(码nco)440、pn码数据发生器450,与图4相比,其省略了中频(if)数据缓存器460和pn码数据缓存器470。图8a中的各个组件与图4中相同标号的组件的功能相同,故不在此赘述,其不同之处在于由于没有了中频数据缓存器460和pn码数据缓存器470,故捕获处理及判决模块230实时处理所获取的中频数据以及pn码数据而不需要先进行缓存。

图8b中的数据获取以及处理控制过程类似于图7中所示,其相同部分不再赘述,其区别仅在于可以在数据获取的同时(显然,中频数据的长度并未达到tm+tn毫秒且pn码数据的长度并未达到tn毫秒),对已经获取的中频数据和pn码数据实时处理以实现捕获,此时,n路相关器通过实时处理来完成对于码相位搜索子区间的搜索处理(如图8b中的虚线方框所示)。且在该实时处理中,如果获取的数据量超过硬件的处理能力,则,超过量的中频数据和pn码数据在捕获处理结束之后被丢弃以便于接下来获取数据。如图8b所示,对第一个码相位搜索子区间m1在已存在中频数据和pn码数据的情况下,就执行捕获及判决处理(图8b中示意捕获处理的虚线框的起点和码相位搜索子区间的左侧对齐就是示意在有中频数据和pn码数据后即启动捕获处理)。相比数据获取及延迟处理的方式,在同样的捕获速度下,实时处理的方式需要更多的硬件资源来覆盖码相位搜索子区间的搜索处理,因此,相对需要更大的硬件资源的开销;或者,在同样的硬件资源的情况下,需要更多的次数k覆盖所有的码相位搜索空间。

图9是示出包含根据本申请的实施例的信号捕获装置的oem板卡。

如图9所示,oem板卡800包括上述实施例中的信号捕获装置200。

图10是示出包含根据本申请的实施例的信号捕获装置200的接收机900。如图10所示,接收机900包括rfic模块9010、信号捕获装置9020和导航定位运算模块9030。其中rfic9010和导航定位运算模块9030如上述图1所示的配置,而信号捕获装置9020可以根据本发明的上述实施例实现。

与现有技术相比,本申请的有益效果在于:在接收机时间已知的情况下,通过该接收机时间的估计值和卫星信号传输时间的估计值确定卫星信号的发射时间的估计值,并根据该发射时间的估计值及导航电文的结构确定估计的帧头起始时刻及其误差范围,根据误差范围确定码相位搜索区间,基于估计的帧头起始时刻和时间偏移量确定数据获取时刻而获取中频数据和pn码数据,对所述中频数据和pn码数据进行捕获判决处理。该捕获判决处理过程中,利用卫星导航电文每一个子帧前两个字的可预测性执行导航电文剥离处理,进而,消除捕获过程中卫星导航电文比特翻转对相干积分的影响,延长了相干积分时间,提高了接收灵敏度。另外,采取数据获取及延迟处理模式,该模式提高了帧头前后时刻数据的利用率,实现了快速捕获,同时,数据获取及延迟处理模式的引入使得捕获模块的数据处理不依赖于采样速率,提高了捕获效率,适用于其他gnss信号及通信系统运算量高度密集模块的设计。

除非上下文清楚地要求,否则贯穿本说明书及权利要求书中的词语“包括”、“包含”等被解释为具有包容性的含义,而不是排他或者穷举的含义;也就是说,是“包括,但不限于”的含义。词语“耦接”,如通常这里所使用的,指代两个或多个元件可以是直接连接,或者通过一个或多个中间元件连接。另外,词语“这里”、“上述”、“下文”等,当用在本申请中时,应指本申请的整体并且并非指本申请的任何特定部分。当上下文允许时,上述具体实施方式中使用的单数或复数的词语也可以分别包括复数或者单数。词语“或者”参考两个或多个项目的列表,这个词语涵盖了词语的所有下列解释:列表中的任何项目、列表中的所有项目、以及列表中的项目的任意组合。

这里提供的本发明的教导可以应用到其它系统、而不必须是上述的系统。上述的各个实施例的元件和动作可以组合以提供更进一步的实施例。

虽然本发明的一些实施例已被描述,这些实施例已经仅以示例提出,并且不旨在限制本发明的范围。的确,本文所述的新方法和系统可能以各种其它形式体现;此外,可以进行各种省略、替代和改变这里所述的方法和系统的形式,而不脱离本发明的精神。所附权利要求及其等同旨在覆盖这些形式或变型以落入本发明的范围和精神内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1