CN110531385A - 一种多通道并行的跟踪引擎和跟踪方法 - Google Patents
一种多通道并行的跟踪引擎和跟踪方法 Download PDFInfo
- Publication number
- CN110531385A CN110531385A CN201910912501.XA CN201910912501A CN110531385A CN 110531385 A CN110531385 A CN 110531385A CN 201910912501 A CN201910912501 A CN 201910912501A CN 110531385 A CN110531385 A CN 110531385A
- Authority
- CN
- China
- Prior art keywords
- code
- code phase
- phase
- channel
- logic channel
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S19/00—Satellite radio beacon positioning systems; Determining position, velocity or attitude using signals transmitted by such systems
- G01S19/01—Satellite radio beacon positioning systems transmitting time-stamped messages, e.g. GPS [Global Positioning System], GLONASS [Global Orbiting Navigation Satellite System] or GALILEO
- G01S19/13—Receivers
- G01S19/24—Acquisition or tracking or demodulation of signals transmitted by the system
- G01S19/30—Acquisition or tracking or demodulation of signals transmitted by the system code related
Landscapes
- Engineering & Computer Science (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Position Fixing By Use Of Radio Waves (AREA)
Abstract
本申请公开了一种多通道并行的跟踪引擎和跟踪方法,跟踪引擎包括信道配置单元以及与信道配置单元相连接的一个或多个逻辑信道,信道配置单元包括检测模块、复制模块和第一码生成器,逻辑信道包括第二码生成器,检测模块检测各个逻辑信道是否初始配置或更新码相位,若是,将初始配置或更新的码相位信息输入第一码生成器;第一码生成器根据输入的码相位信息生成对应码相位的码;复制模块复制第一码生成器的状态和生成的码至第二码生成器。本申请通过设置包括检测模块、复制模块和第一码生成器的信道配置单元,使得码相位生成和相关运算相互分离,保证了各逻辑信道有足够的时间用于相关运算,增加了硬件使用率,最大化了并行信道的数量。
Description
技术领域
本申请涉及但不限于卫星导航技术领域,尤其涉及一种多通道并行的跟踪引擎和跟踪方法。
背景技术
全球卫星导航***(Global Navigation Satellite System,GNSS)是一个具有多颗卫星的人造卫星***,它能向地面GNSS接收机发送包含位置和时间信息的信号,借助这些信号,接收机可以实现定位。目前,主要的GNSS***有欧盟伽利略(Galileo)卫星导航***、美国全球定位***(Global Positioning System,GPS)、俄罗斯格洛纳斯(GLONASS)卫星导航***和中国北斗导航***。如图1所示,接收机主要包括射频前端、数字前端、捕获引擎、跟踪引擎和位置速度时间(Position Velocity and Time,PVT)计算等部分,其中,捕获引擎的主要任务是检测、搜索并计算接收机采样的信号中伪随机码的码相位和载波多普勒值,一旦搜索成功,则会捕获转跟踪,进入跟踪引擎,通过环路跟踪,比特解码,星历提取,完成位置速度和时间的精确计算,从而实现定位。
随着各卫星导航***的不断发展和完善,天空中同时可见的卫星数量逐渐增多,接收机能同时跟踪的卫星数量也不断增多,这对提高定位性能大有益处。为同时跟踪多个卫星信号,且减少接收机的硬件成本,相关技术通过时分复用的方式,使用一个物理信道来跟踪多个逻辑信道。通常来说,为保证实时性,对经数字前端处理后的1毫秒数据的伪随机码剥离和相关运算等,需要在1毫秒内完成;那么在时分复用***中,留给每个逻辑信道的时间则更短,为1/R毫秒,其中,R为一个物理信道中复用处理的逻辑信道的数量。在一个时分复用的跟踪引擎中,每个逻辑信道按时间依次顺序处理,每个逻辑信道中最耗时的两个任务分别是码相位的配置和码的剥离以及相关运算。
在跟踪引擎中,每个信道都会根据指定的码相位产生伪随机码,通常采用线性反馈移位寄存器的方式产生,该方法的优点是实现简单、硬件开销低,缺点是生成任意一个相位的码,都需要从相位0开始,通过移位来产生,所以时间复杂度和码的长度成正比。对现代化的卫星信号(例如L5,E5和B2a等),码率为10.23Mcps,码的长度是10230,所以最坏情况下产生指定开始码相位所需要的时钟数最多为10229个。如果一个物理通道中复用的多个逻辑信道,都同时指定新的码相位,则留给每个信道的时间几乎都被伪随机码的生成占用,将没有多余时间来做相关运算,从而导致运算的错误或被迫减少并行的信道数量。
发明内容
本申请提供了一种多通道并行的跟踪引擎和跟踪方法,能够保证各逻辑信道有足够的时间用于相关运算。
第一方面,本发明实施例提供了一种多通道并行的跟踪引擎,包括信道配置单元以及与信道配置单元相连接的一个或多个逻辑信道,所述信道配置单元包括检测模块、第一码生成器和复制模块,所述逻辑信道包括第二码生成器,其中:
所述检测模块,用于检测各个逻辑信道是否初始配置或更新码相位,若初始配置或更新码相位,将初始配置或更新的码相位信息输入第一码生成器;
所述第一码生成器,用于根据输入的码相位信息生成对应码相位的码;
所述复制模块,用于复制所述第一码生成器的状态和生成的码至所述第二码生成器。
在一种示例性实施例中,当所述输入的码相位信息为初始配置的码相位时,所述第一码生成器生成的码的码相位为N;
当所述输入的码相位信息为更新的码相位时,所述第一码生成器生成的码的码相位为N-n;
其中,N为所述初始配置或更新的码相位,n为预设的码相位余量。
在一种示例性实施例中,所述逻辑信道还包括数控振荡器,其中:
所述数控振荡器,用于在所述第一码生成器生成对应所述更新的码相位的码时,连续运算并统计溢出次数,根据溢出次数计算所述更新的码相位的变化量△N;
所述第一码生成器或所述第二码生成器,还用于根据所述更新的码相位的变化量△N以及所述码相位余量n,生成与最终的更新的码相位对应的码。
在一种示例性实施例中,在所述检测模块将更新的码相位信息输入第一码生成器之前,所述检测模块还用于:
比较所述逻辑信道更新的码相位与所述逻辑信道当前配置的码相位的大小;
若所述逻辑信道更新的码相位小于所述逻辑信道当前配置的码相位,则触发所述将更新的码相位信息输入第一码生成器的操作;
若所述逻辑信道更新的码相位大于所述逻辑信道当前配置的码相位,则计算所述逻辑信道更新的码相位与所述逻辑信道当前配置的码相位的差值,并比较所述差值与预设的码相位阈值的大小;
若所述差值大于预设的码相位阈值,则触发所述将更新的码相位信息输入第一码生成器的操作。
在一种示例性实施例中,所述逻辑信道还包括相关器,所述检测模块检测各个逻辑信道是否更新码相位,包括:
检测所述逻辑信道是否重新配置相关器数量;
检测所述逻辑信道是否重新配置相关器间隔;
检测所述逻辑信道是否重新配置码相位。
第二方面,本发明实施例还提供了一种多通道并行的跟踪方法,包括:
检测各个逻辑信道是否初始配置或更新码相位;
若初始配置或更新码相位,将初始配置或更新的码相位信息输入第一码生成器,以使得第一码生成器根据输入的码相位信息生成对应码相位的码;
复制所述第一码生成器的状态和生成的码至所述第二码生成器。
在一种示例性实施例中,当所述输入的码相位信息为初始配置的码相位时,所述第一码生成器生成的码的码相位为N;
当所述输入的码相位信息为更新的码相位时,所述第一码生成器生成的码的码相位为N-n;
其中,N为所述初始配置或更新的码相位,n为预设的码相位余量。
在一种示例性实施例中,所述逻辑信道还包括数控振荡器,所述多通道并行的跟踪方法还包括:
所述数控振荡器在所述第一码生成器生成对应所述更新的码相位的码时,连续运算并统计溢出次数,根据溢出次数计算所述更新的码相位的变化量△N;
所述第一码生成器或所述第二码生成器根据所述更新的码相位的变化量△N以及所述码相位余量n,生成最终的更新的码相位对应的码。
在一种示例性实施例中,在所述将更新的码相位信息输入第一码生成器之前,所述多通道并行的跟踪方法还包括:
比较所述逻辑信道更新的码相位与所述逻辑信道当前配置的码相位的大小;
若所述逻辑信道更新的码相位小于所述逻辑信道当前配置的码相位,则触发所述将更新的码相位信息输入第一码生成器的操作;
若所述逻辑信道更新的码相位大于所述逻辑信道当前配置的码相位,则计算所述逻辑信道更新的码相位与所述逻辑信道当前配置的码相位的差值,并比较所述差值与预设的码相位阈值的大小;
若所述差值大于预设的码相位阈值,则触发所述将更新的码相位信息输入第一码生成器的操作。
在一种示例性实施例中,所述逻辑信道还包括相关器,所述检测各个逻辑信道是否更新码相位,包括:
检测所述逻辑信道是否重新配置相关器数量;
检测所述逻辑信道是否重新配置相关器间隔;
检测所述逻辑信道是否重新配置码相位。
本申请的多通道并行的跟踪引擎和跟踪方法,通过第一码生成器根据输入的码相位信息生成对应码相位的码,并复制第一码生成器的状态和生成的码至所述第二码生成器,使得逻辑信道的码相位的生成和相关运算相互分离,保证了各逻辑信道有足够的时间用于相关运算,增加了硬件使用率,最大化了并行信道的数量。
本申请的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本申请而了解。本申请的其他优点可通过在说明书、权利要求书以及附图中所描述的方案来实现和获得。
附图说明
附图用来提供对本申请技术方案的理解,并且构成说明书的一部分,与本申请的实施例一起用于解释本申请的技术方案,并不构成对本申请技术方案的限制。
图1为相关技术中的一种GNSS接收机的结构示意图;
图2为相关技术的时分复用的跟踪引擎中各逻辑信道的时间分配示意图;
图3为本发明实施例提供的一种多通道并行的跟踪引擎的结构示意图;
图4为本发明实施例的一种生成更新的码相位时的处理流程示意图;
图5为本发明实施例中重新配置相关器数量导致码相位更新的原理示意图;
图6为本发明实施例的一种多通道并行的跟踪方法的流程示意图。
具体实施方式
本申请描述了多个实施例,但是该描述是示例性的,而不是限制性的,并且对于本领域的普通技术人员来说显而易见的是,在本申请所描述的实施例包含的范围内可以有更多的实施例和实现方案。尽管在附图中示出了许多可能的特征组合,并在具体实施方式中进行了讨论,但是所公开的特征的许多其它组合方式也是可能的。除非特意加以限制的情况以外,任何实施例的任何特征或元件可以与任何其它实施例中的任何其他特征或元件结合使用,或可以替代任何其它实施例中的任何其他特征或元件。
本申请包括并设想了与本领域普通技术人员已知的特征和元件的组合。本申请已经公开的实施例、特征和元件也可以与任何常规特征或元件组合,以形成由权利要求限定的独特的发明方案。任何实施例的任何特征或元件也可以与来自其它发明方案的特征或元件组合,以形成另一个由权利要求限定的独特的发明方案。因此,应当理解,在本申请中示出和/或讨论的任何特征可以单独地或以任何适当的组合来实现。因此,除了根据所附权利要求及其等同替换所做的限制以外,实施例不受其它限制。此外,可以在所附权利要求的保护范围内进行各种修改和改变。
此外,在描述具有代表性的实施例时,说明书可能已经将方法和/或过程呈现为特定的步骤序列。然而,在该方法或过程不依赖于本文所述步骤的特定顺序的程度上,该方法或过程不应限于所述的特定顺序的步骤。如本领域普通技术人员将理解的,其它的步骤顺序也是可能的。因此,说明书中阐述的步骤的特定顺序不应被解释为对权利要求的限制。此外,针对该方法和/或过程的权利要求不应限于按照所写顺序执行它们的步骤,本领域技术人员可以容易地理解,这些顺序可以变化,并且仍然保持在本申请实施例的精神和范围内。
图2为一个时分复用的跟踪引擎中各逻辑信道的时间分配示意图,其中,R为一个物理信道中复用处理的逻辑信道的数量,每个逻辑信道按时间依次顺序处理,每个逻辑信道中最耗时的两个任务分别是码相位的配置和码的剥离以及相关运算。如果一个物理通道中复用的多个逻辑信道,都同时指定新的码相位,则留给每个信道的时间几乎都被码的生成占用,将没有多余时间来做相关运算,从而导致运算的错误或被迫减少并行的信道数量。
如图3所示,根据本发明实施例的一种多通道并行的跟踪引擎,包括信道配置单元10以及与信道配置单元10相连接的一个或多个逻辑信道20,信道配置单元10包括检测模块101、第一码生成器102和复制模块103,逻辑信道20包括第二码生成器201,其中:
检测模块101,用于检测各个逻辑信道20是否初始配置或更新码相位,若初始配置或更新码相位,将初始配置或更新的码相位信息输入第一码生成器102;
第一码生成器102,用于根据输入的码相位信息生成对应码相位的码;
复制模块103,用于复制所述第一码生成器102的状态和生成的码至所述第二码生成器201。
本发明实施例通过设置各逻辑信道20共用的信道配置单元10,信道配置单元10中设置检测模块101、复制模块103和第一码生成器102,对初始配置或更新的码相位进行加速生成,从而把码相位的生成和码的使用分离,不互相阻塞,保证各逻辑信道有足够的时间用于相关运算。本发明实施例所述的多通道并行即多个逻辑信道20并行。
在一种示例性实施例中,所述逻辑信道20还包括数控振荡器(NumericallyControlled Oscillator,NCO),其中:
NCO,用于在第一码生成器102生成对应更新的码相位的码时,连续运算并统计溢出次数,根据溢出次数计算更新的码相位的变化量△N;
第一码生成器102或第二码生成器201,还用于根据更新的码相位的变化量△N以及码相位余量n,生成最终的更新的码相位对应的码。
在应用本发明实施例的多通道并行的跟踪引擎时,检测模块101检查需要初始配置或更新码相位的逻辑信道20,并启用第一码生成器102生成对应的码相位;与此同时,各逻辑信道20中的NCO可以根据软件设置的配置值连续正常运算,以保持每个逻辑信道20的连续性。等第一码生成器102生成对应码相位的码之后,复制第一码生成器102内部的状态和生成的码至对应逻辑信道20的第二码生成器201中,并根据NCO计算出的更新的码相位的变化量△N,生成与最终的更新的码相位对应的码,就可以重新进行码的生成和剥离了,本发明实施例提供的多通道并行的跟踪引擎,使得码相位的配置和相关运算相互分离,保证了跟踪引擎的连续运算和正确性,提高了硬件的实时并行性,最大化了并行信道的数量。
在一种示例性实施例中,第一码生成器102和/或第二码生成器201为线性反馈移位寄存器。
通过线性反馈移位寄存器生成伪随机码,优点是实现简单、硬件开销低,缺点是生成任意一个相位的码,都需要从相位0开始,通过移位来产生,所以时间复杂度和码的长度成正比。本申请通过将码相位的生成和码的使用分离,不互相阻塞,保证各逻辑信道有足够的时间用于相关运算。
在一种示例性实施例中,当输入的码相位信息为初始配置的码相位时,第一码生成器102生成的码的码相位为N;
当输入的码相位信息为更新的码相位时,第一码生成器102生成的码的码相位为N-n;
其中,N为初始配置或更新的码相位,n为预设的码相位余量。
本发明实施例的多通道并行的跟踪引擎包括两种使用场景:初始配置逻辑信道和码相位;运行过程中修改配置导致需要更新码相位。在初始配置逻辑信道和码相位时,可以直接通过第一码生成器102生成对应初始配置的码相位的码。
对于初始配置码相位的使用场景,本发明实施例提供的多通道并行的跟踪引擎的码相位生成过程包括:
(1)在N ms时刻,检测模块101检测是否有初始信道配置,并把初始配置的码相位送入第一码生成器102排队生成所需码相位的码,需要说明的是,新信道并不会立即使能并运算,新信道的其他配置,也不会在此时配置到逻辑信道20中;
(2)在N ms到N+1ms中,在第一码生成器102中排队并产生所需码相位的码,复制模块103把第一码生成器102中生成的码的状态复制保存到逻辑信道20对应的第二码生成器201中;
(3)在N+1ms时刻,逻辑信道20中的第二码生成器201的状态已经准备好,并调整到对应的码相位位置,此时可以直接使能逻辑信道20,剥离伪随机码并开始正常运算。
由上可知,本发明实施例的码相位生成过程引入了1ms的延迟使能和运算。
在信道运行过程中实时修改配置或调整码相位导致的更新码相位过程会复杂一些。为保证各逻辑信道20连续计算,不能等码相位更新完成才开始计数,需要并行处理码相位的更新和逻辑信道20的相关运算;同时,由于码相位生成需要至少1ms的延迟,所更新的码相位经过1ms的延迟可能因为多普勒效应增加或减少1,比如:在N ms开始的时候,需要更新的伪随机码相位是1000,经过1ms之后,该值变成了999或1001;如果直接生成的码相位是1000,该值经过1ms之后变成了999,则需要重新对码生成器移位999次才能得到,即第一次生成的码失效,浪费了更多的时间。因此,在实时更新伪随机码时,不能直接生成所需要的码相位值,需要预留预设数值的码相位余量。
对于运行过程中更新码相位的使用场景,如图4所示,本发明实施例提供的多通道并行的跟踪引擎的码相位生成过程包括:
(I)在N ms时刻,检测模块101检测是否有需要更新码相位,并把更新的码相位信息送入第一码生成器102排队生成所需码相位的码;
(II)在N ms到N+1ms,在第一码生成器102中排队并产生所需码相位的码,复制模块103把第一码生成器102中生成的码的状态复制保存到逻辑信道20对应的第二码生成器201中。和初始配置码相位的使用场景中码相位的生成过程相比,此时不能直接生成所需要的全部码相位值,需要留有一定数值的码相位余量,例如,如果更新的码相位为1000,此时,只生成1000中的995的码相位,剩下的5个码相位用于防止多普勒效应导致移位生成的码相位比最终更新的码相位大时,生成的码失效的问题。这5个码相位会在后续操作中补齐;
同时,在N ms到N+1ms,跟踪信道中的NCO仍然连续运算,并统计在这1ms内NCO溢出的次数,以此计算并判断这1ms内所配置的伪随机码相位是否发生变化,有三种可能情况:加1、减1或保持不变。需要强调的是,在这1ms内,由于新配置的伪随机码还在排队生成,不能用于逻辑信道20的相关运算,因此相关结果会出错;但NCO需要保持连续运算,以维持连续的时间和结果输出;
(III)在N+1ms时刻,根据统计的NCO溢出次数,计算伪随机码相位在此时的值,并减去在N ms到N+1ms时已生成的部分码相位值得到残留码相位。这个残留码相位,通常是个位数,可以直接在逻辑信道20的第二码生成器201中移位产生。仍以码相位余量等于5为例,残留码相位可能是5+1,5-1,5这三个可能值中的任一个。根据残留码相位生成最终的更新的码相位。
在一种示例性实施例中,在检测模块101将更新的码相位信息输入第一码生成器102之前,检测模块101还用于:
比较逻辑信道20更新的码相位与逻辑信道20当前配置的码相位的大小;
若逻辑信道20更新的码相位小于逻辑信道20当前配置的码相位,则触发将更新的码相位信息输入第一码生成器102的操作;
若逻辑信道20更新的码相位大于逻辑信道20当前配置的码相位,则计算逻辑信道20更新的码相位与逻辑信道20当前配置的码相位的差值,并比较差值与预设的码相位阈值的大小;
若差值大于预设的码相位阈值,则触发将更新的码相位信息输入第一码生成器102的操作。
正常情况下,线性反馈移位寄存器构成的码生成器在每个处理时钟内只会生成下一个相邻相位的码,在该实施例中,如果需要更新的码相位与当前使用的码相位相差成百或上千,或者更新的码相位需要往当前使用的码相位减小的方向调整,则需要使用第一码生成器102生成所需更新的码相位。
在一种示例性实施例中,逻辑信道20还包括相关器,检测模块101检测各个逻辑信道20是否更新码相位,包括:
检测所述逻辑信道20是否重新配置相关器数量;
检测所述逻辑信道20是否重新配置相关器间隔;
检测所述逻辑信道20是否重新配置码相位。
运行过程中修改配置导致需要更新码相位的情况包括以下几种情况:重新配置相关器数量、重新配置相关器间隔、减小当前使用的码相位值、增大当前使用的码相位值等。
如图5所示,以重新配置相关器数量为例,配置前的即时(Prompt,P)相关器的码相位为1000,相关器数量为9个,每个相关器的码间间隔是0.5个码片,则滞后(Late,L)相关器和超前(Early,E)相关器的码相位即为1002(1000+(9-1)/2*0.5)和998(1000-(9-1)/2*0.5)。如果此时重新配置相关器的数量为5,为保证跟踪的连续性,需要在更新任何新配置时保持P相关器的码相位不变,因此配置后的P/L/E相关器的码相位分别是1000/1001/999,其中1001=1000+(5-1)/2*0.5,999=1000-(5-1)/2*0.5。因此,此时需要重新设置码生成器的相位从1002到1001,即:需要码生成器往相位减小的方向调整。此时,如果使用相关技术中的跟踪引擎,就需要先复位码生成器到相位0,然后移位1001次之后才能得到所需的相位,极大的占用了运算所需的时间。而如果使用本发明实施例提供的多通道并行的跟踪引擎,则可以通过第一码生成器102生成所需码相位的码,同时,该逻辑信道20中的NCO可保持连续运算,以判断更新的码相位是否发生变化,通过将码相位的重新配置和码的剥离相互分离,保证了运算的连续性,将分配给各个信道的有限的时间用于相关运算,增加了硬件使用率,最大化了并行信道的数量,提高了并行度。
另一方面,如图6所示,本发明实施例还提供了一种多通道并行的跟踪方法,包括如下步骤:
步骤601:检测各个逻辑信道是否初始配置或更新码相位;
在一种示例性实施例中,所述逻辑信道还包括相关器,所述检测各个逻辑信道是否更新码相位,包括:
检测所述逻辑信道是否重新配置相关器数量;
检测所述逻辑信道是否重新配置相关器间隔;
检测所述逻辑信道是否重新配置码相位。
运行过程中修改配置导致需要更新码相位的情况包括以下几种情况:重新配置相关器数量、重新配置相关器间隔、减小当前使用的码相位值、增大当前使用的码相位值等。
如图5所示,以重新配置相关器数量为例,配置前的P相关器的码相位为1000,相关器数量为9个,每个相关器的码间间隔是0.5个码片,则L相关器和E相关器的码相位即为1002(1000+(9-1)/2*0.5)和998(1000-(9-1)/2*0.5)。如果此时重新配置相关器的数量为5,为保证跟踪的连续性,需要在更新任何新配置时保持P相关器的码相位不变,因此配置后的P/L/E相关器的码相位分别是1000/1001/999,其中1001=1000+(5-1)/2*0.5,999=1000-(5-1)/2*0.5。因此,此时需要重新设置码生成器的相位从1002到1001,即:需要码生成器往相位减小的方向调整。此时,如果使用相关技术中的跟踪方法,就需要先复位码生成器到相位0,然后移位1001次之后才能得到所需的相位,极大的占用了运算所需的时间。而如果使用本发明实施例提供的多通道并行的跟踪方法,则可以通过第一码生成器生成所需码相位的码,同时,该逻辑信道中的NCO可保持连续运算,以判断更新的码相位是否发生变化,通过将码相位的重新配置和码的剥离相互分离,保证了运算的连续性,将分配给各个信道的有限的时间用于相关运算,增加了硬件使用率,最大化了并行信道的数量,提高了并行度。
步骤602:若初始配置或更新码相位,将初始配置或更新的码相位信息输入第一码生成器,以使得第一码生成器根据输入的码相位信息生成对应码相位的码;
在一种示例性实施例中,当所述输入的码相位信息为初始配置的码相位时,所述第一码生成器生成的码的码相位为N;
当所述输入的码相位信息为更新的码相位时,所述第一码生成器生成的码的码相位为N-n;
其中,N为所述初始配置或更新的码相位,n为预设的码相位余量。
在一种示例性实施例中,所述逻辑信道还包括NCO,所述方法还包括:
所述NCO在第一码生成器生成对应更新的码相位的码时,连续运算并统计溢出次数,根据溢出次数计算更新的码相位的变化量△N;
第一码生成器或第二码生成器根据更新的码相位的变化量△N以及码相位余量n,生成与最终的更新的码相位对应的码。
在应用本发明实施例的多通道并行的跟踪方法时,在第一码生成器生成对应的码相位的同时,各逻辑信道中的NCO可以根据软件设置的配置值连续正常运算,以保持每个逻辑信道的连续性。等第一码生成器生成对应码相位的码之后,复制第一码生成器的状态和生成的码至对应逻辑信道的第二码生成器中,并根据NCO计算出的更新的码相位的变化量△N,生成与最终的更新的码相位对应的码,就可以重新进行码的生成和剥离了,本发明实施例提供的多通道并行的跟踪方法,使得码相位的配置和相关运算相互分离,保证了相关运算的连续性和正确性,提高了硬件的实时并行性,最大化了并行信道的数量。
在一种示例性实施例中,在将更新的码相位信息输入第一码生成器之前,所述方法还包括:
比较所述逻辑信道更新的码相位与所述逻辑信道当前配置的码相位的大小;
若所述逻辑信道更新的码相位小于所述逻辑信道当前配置的码相位,则触发所述将更新的码相位信息输入第一码生成器的操作;
若所述逻辑信道更新的码相位大于所述逻辑信道当前配置的码相位,则计算所述逻辑信道更新的码相位与所述逻辑信道当前配置的码相位的差值,并比较所述差值与预设的码相位阈值的大小;
若所述差值大于预设的码相位阈值,则触发所述将更新的码相位信息输入第一码生成器的操作。
正常情况下,线性反馈移位寄存器构成的码生成器在每个处理时钟内只会生成下一个相邻相位的码,在该实施例中,如果需要更新的码相位与当前使用的码相位相差成百或上千,或者更新的码相位需要往当前使用的码相位减小的方向调整,则需要使用第一码生成器生成所需更新的码相位。
步骤603:复制所述第一码生成器的状态和生成的码至所述第二码生成器。
本发明实施例提供的多通道并行的跟踪方法包括两种使用场景:初始配置逻辑信道和码相位;运行过程中修改配置导致需要更新码相位。在初始配置逻辑信道和码相位时,可以直接通过第一码生成器生成对应初始配置的码相位的码。
对于初始配置码相位的使用场景,本发明实施例提供的多通道并行的跟踪方法的码相位生成过程包括:
(1)在N ms时刻,检测是否有初始信道配置,并把初始配置的码相位送入第一码生成器排队生成所需码相位的码,需要说明的是,新信道并不会立即使能并运算,新信道的其他配置,也不会在此时配置到逻辑信道中;
(2)在N ms到N+1ms中,在第一码生成器中排队并产生所需码相位的码,把第一码生成器中生成的码的状态复制保存到逻辑信道对应的第二码生成器中;
(3)在N+1ms时刻,逻辑信道中的第二码生成器的状态已经准备好,并调整到对应的码相位位置,此时可以直接使能逻辑信道,剥离伪随机码并开始正常运算。
由上可知,本发明实施例的码相位生成过程引入了1ms的延迟使能和运算。
在信道运行过程中实时修改配置或调整码相位导致的更新码相位过程会复杂一些。为保证各逻辑信道连续计算,不能等码相位更新完成才开始计数,需要并行处理码相位的更新和逻辑信道的相关运算;同时,由于码相位生成需要至少1ms的延迟,所更新的码相位经过1ms的延迟可能因为多普勒效应增加或减少1,比如:在N ms开始的时候,需要更新的伪随机码相位是1000,经过1ms之后,该值变成了999或1001;如果直接生成的码相位是1000,该值经过1ms之后变成了999,则需要重新对码生成器移位999次才能得到,即第一次生成的码失效,浪费了更多的时间。因此,在实时更新伪随机码时,不能直接生成所需要的码相位值,需要预留预设数值的码相位余量。
对于运行过程中更新码相位的使用场景,如图4所示,本发明实施例提供的多通道并行的跟踪方法的码相位生成过程包括:
(I)在N ms时刻,检测是否有需要更新码相位,并把更新的码相位信息送入第一码生成器排队生成所需码相位的码;
(II)在N ms到N+1ms,在第一码生成器中排队并产生所需码相位的码,把第一码生成器中生成的码的状态复制保存到逻辑信道对应的第二码生成器中。和初始配置码相位的使用场景中码相位的生成过程相比,此时不能直接生成所需要的全部码相位值,需要留有一定数值的码相位余量,例如,如果更新的码相位为1000,此时,只生成1000中的995的码相位,剩下的5个码相位用于防止多普勒效应导致移位生成的码相位比最终更新的码相位大时,生成的码失效的问题。这5个码相位会在后续操作中补齐;
同时,在N ms到N+1ms,跟踪信道中的NCO仍然连续运算,并统计在这1ms内NCO溢出的次数,以此计算并判断这1ms内所配置的伪随机码相位是否发生变化,有三种可能情况:加1、减1或保持不变。需要强调的是,在这1ms内,由于新配置的伪随机码还在排队生成,不能用于逻辑信道的相关运算,因此相关结果会出错;但NCO需要保持连续运算,以维持连续的时间和结果输出;
(III)在N+1ms时刻,根据统计的NCO溢出次数,计算伪随机码相位在此时的值,并减去在N ms到N+1ms时已生成的部分码相位值得到残留码相位。这个残留码相位,通常是个位数,可以直接在逻辑信道的第二码生成器中移位产生。仍以码相位余量等于5为例,残留码相位可能是5+1,5-1,5这三个可能值中的任一个。根据残留码相位生成最终的更新的码相位。
本领域普通技术人员可以理解,上文中所公开方法中的全部或某些步骤、***、装置中的功能模块/单元可以被实施为软件、固件、硬件及其适当的组合。在硬件实施方式中,在以上描述中提及的功能模块/单元之间的划分不一定对应于物理组件的划分;例如,一个物理组件可以具有多个功能,或者一个功能或步骤可以由若干物理组件合作执行。某些组件或所有组件可以被实施为由处理器,如数字信号处理器或微处理器执行的软件,或者被实施为硬件,或者被实施为集成电路,如专用集成电路。这样的软件可以分布在计算机可读介质上,计算机可读介质可以包括计算机存储介质(或非暂时性介质)和通信介质(或暂时性介质)。如本领域普通技术人员公知的,术语计算机存储介质包括在用于存储信息(诸如计算机可读指令、数据结构、程序模块或其他数据)的任何方法或技术中实施的易失性和非易失性、可移除和不可移除介质。计算机存储介质包括但不限于RAM、ROM、EEPROM、闪存或其他存储器技术、CD-ROM、数字多功能盘(DVD)或其他光盘存储、磁盒、磁带、磁盘存储或其他磁存储装置、或者可以用于存储期望的信息并且可以被计算机访问的任何其他的介质。此外,本领域普通技术人员公知的是,通信介质通常包含计算机可读指令、数据结构、程序模块或者诸如载波或其他传输机制之类的调制数据信号中的其他数据,并且可包括任何信息递送介质。
Claims (10)
1.一种多通道并行的跟踪引擎,其特征在于,包括信道配置单元以及与信道配置单元相连接的一个或多个逻辑信道,所述信道配置单元包括检测模块、第一码生成器和复制模块,所述逻辑信道包括第二码生成器,其中:
所述检测模块,用于检测各个逻辑信道是否初始配置或更新码相位,若初始配置或更新码相位,将初始配置或更新的码相位信息输入第一码生成器;
所述第一码生成器,用于根据输入的码相位信息生成对应码相位的码;
所述复制模块,用于复制所述第一码生成器的状态和生成的码至所述第二码生成器。
2.根据权利要求1所述的多通道并行的跟踪引擎,其特征在于,
当所述输入的码相位信息为初始配置的码相位时,所述第一码生成器生成的码的码相位为N;
当所述输入的码相位信息为更新的码相位时,所述第一码生成器生成的码的码相位为N-n;
其中,N为所述初始配置或更新的码相位,n为预设的码相位余量。
3.根据权利要求2所述的多通道并行的跟踪引擎,其特征在于,所述逻辑信道还包括数控振荡器,其中:
所述数控振荡器,用于在所述第一码生成器生成对应所述更新的码相位的码时,连续运算并统计溢出次数,根据溢出次数计算所述更新的码相位的变化量△N;
所述第一码生成器或所述第二码生成器,还用于根据所述更新的码相位的变化量△N以及所述码相位余量n,生成与最终的更新的码相位对应的码。
4.根据权利要求1所述的多通道并行的跟踪引擎,其特征在于,在所述检测模块将更新的码相位信息输入第一码生成器之前,所述检测模块还用于:
比较所述逻辑信道更新的码相位与所述逻辑信道当前配置的码相位的大小;
若所述逻辑信道更新的码相位小于所述逻辑信道当前配置的码相位,则触发所述将更新的码相位信息输入第一码生成器的操作;
若所述逻辑信道更新的码相位大于所述逻辑信道当前配置的码相位,则计算所述逻辑信道更新的码相位与所述逻辑信道当前配置的码相位的差值,并比较所述差值与预设的码相位阈值的大小;
若所述差值大于预设的码相位阈值,则触发所述将更新的码相位信息输入第一码生成器的操作。
5.根据权利要求1所述的多通道并行的跟踪引擎,其特征在于,所述逻辑信道还包括相关器,所述检测模块检测各个逻辑信道是否更新码相位,包括:
检测所述逻辑信道是否重新配置相关器数量;
检测所述逻辑信道是否重新配置相关器间隔;
检测所述逻辑信道是否重新配置码相位。
6.一种多通道并行的跟踪方法,其特征在于,包括:
检测各个逻辑信道是否初始配置或更新码相位;
若初始配置或更新码相位,将初始配置或更新的码相位信息输入第一码生成器,以使得第一码生成器根据输入的码相位信息生成对应码相位的码;
复制所述第一码生成器的状态和生成的码至所述第二码生成器。
7.根据权利要求6所述的多通道并行的跟踪方法,其特征在于,
当所述输入的码相位信息为初始配置的码相位时,所述第一码生成器生成的码的码相位为N;
当所述输入的码相位信息为更新的码相位时,所述第一码生成器生成的码的码相位为N-n;
其中,N为所述初始配置或更新的码相位,n为预设的码相位余量。
8.根据权利要求7所述的多通道并行的跟踪方法,其特征在于,所述逻辑信道还包括数控振荡器,所述方法还包括:
所述数控振荡器在所述第一码生成器生成对应所述更新的码相位的码时,连续运算并统计溢出次数,根据溢出次数计算所述更新的码相位的变化量△N;
所述第一码生成器或所述第二码生成器根据所述更新的码相位的变化量△N以及所述码相位余量n,生成最终的更新的码相位对应的码。
9.根据权利要求6所述的多通道并行的跟踪方法,其特征在于,在所述将更新的码相位信息输入第一码生成器之前,所述方法还包括:
比较所述逻辑信道更新的码相位与所述逻辑信道当前配置的码相位的大小;
若所述逻辑信道更新的码相位小于所述逻辑信道当前配置的码相位,则触发所述将更新的码相位信息输入第一码生成器的操作;
若所述逻辑信道更新的码相位大于所述逻辑信道当前配置的码相位,则计算所述逻辑信道更新的码相位与所述逻辑信道当前配置的码相位的差值,并比较所述差值与预设的码相位阈值的大小;
若所述差值大于预设的码相位阈值,则触发所述将更新的码相位信息输入第一码生成器的操作。
10.根据权利要求6所述的多通道并行的跟踪方法,其特征在于,所述逻辑信道还包括相关器,所述检测各个逻辑信道是否更新码相位,包括:
检测所述逻辑信道是否重新配置相关器数量;
检测所述逻辑信道是否重新配置相关器间隔;
检测所述逻辑信道是否重新配置码相位。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910912501.XA CN110531385B (zh) | 2019-09-25 | 2019-09-25 | 一种多通道并行的跟踪引擎和跟踪方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910912501.XA CN110531385B (zh) | 2019-09-25 | 2019-09-25 | 一种多通道并行的跟踪引擎和跟踪方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110531385A true CN110531385A (zh) | 2019-12-03 |
CN110531385B CN110531385B (zh) | 2021-05-28 |
Family
ID=68670164
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910912501.XA Active CN110531385B (zh) | 2019-09-25 | 2019-09-25 | 一种多通道并行的跟踪引擎和跟踪方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110531385B (zh) |
Citations (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH04302234A (ja) * | 1991-03-29 | 1992-10-26 | Nippondenso Co Ltd | スペクトラム拡散信号復調装置 |
EP1482651A1 (en) * | 2003-05-27 | 2004-12-01 | Telefonaktiebolaget LM Ericsson (publ) | Averaging a delay profile in a limited delay range |
CN101068115A (zh) * | 2007-06-15 | 2007-11-07 | 西安华迅微电子有限公司 | 一种多星座卫星信号的混合串并行相关捕获方法 |
CN101251591A (zh) * | 2007-12-20 | 2008-08-27 | 上海伽利略导航有限公司 | 室内定位全球定位***接收机及其相关器通道设计方法 |
CN101625404A (zh) * | 2008-07-09 | 2010-01-13 | 杭州中科微电子有限公司 | Gps信号大规模并行快速捕获方法及其模块 |
CN101865991A (zh) * | 2009-04-17 | 2010-10-20 | 杭州中科微电子有限公司 | 分层式gps信号并行捕获方法及其模块 |
CN102023302A (zh) * | 2010-12-17 | 2011-04-20 | 浙江大学 | 卫星导航接收机中的多通道协同控制方法和装置 |
US20110241938A1 (en) * | 2010-04-05 | 2011-10-06 | Accord Software and Systems Pvt., Ltd. | Sequential Chip Correlation Array |
CN102508269A (zh) * | 2011-09-30 | 2012-06-20 | 和芯星通科技(北京)有限公司 | 卫星导航导频信号捕获方法、伪随机序列剥离方法及装置 |
CN102621562A (zh) * | 2012-03-20 | 2012-08-01 | 东南大学 | 一种基于fpga的多通道实时gps跟踪方法及其*** |
CN101738624B (zh) * | 2009-12-15 | 2013-04-10 | 和芯星通科技(北京)有限公司 | 卫星导航接收机的信号捕获***及方法 |
CN103760577A (zh) * | 2014-02-12 | 2014-04-30 | 深圳市峰华经纬科技有限公司 | 一种gnss卫星跟踪方法 |
CN104062667A (zh) * | 2014-07-03 | 2014-09-24 | 哈尔滨工程大学 | 基于i/q支路相关积分观测滤波的gps弱信号跟踪*** |
CN104880715A (zh) * | 2015-06-03 | 2015-09-02 | 刘哲 | 应用于BOC(n,n)信号的无模糊接收方法 |
CN105607076A (zh) * | 2015-12-23 | 2016-05-25 | 北京时代民芯科技有限公司 | 一种北斗二代b1和b3双频接收机 |
CN110196435A (zh) * | 2018-02-27 | 2019-09-03 | 中国科学院微电子研究所 | 信号的处理方法、装置、存储介质和处理器 |
-
2019
- 2019-09-25 CN CN201910912501.XA patent/CN110531385B/zh active Active
Patent Citations (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH04302234A (ja) * | 1991-03-29 | 1992-10-26 | Nippondenso Co Ltd | スペクトラム拡散信号復調装置 |
EP1482651A1 (en) * | 2003-05-27 | 2004-12-01 | Telefonaktiebolaget LM Ericsson (publ) | Averaging a delay profile in a limited delay range |
CN101068115A (zh) * | 2007-06-15 | 2007-11-07 | 西安华迅微电子有限公司 | 一种多星座卫星信号的混合串并行相关捕获方法 |
CN101251591A (zh) * | 2007-12-20 | 2008-08-27 | 上海伽利略导航有限公司 | 室内定位全球定位***接收机及其相关器通道设计方法 |
CN101625404A (zh) * | 2008-07-09 | 2010-01-13 | 杭州中科微电子有限公司 | Gps信号大规模并行快速捕获方法及其模块 |
CN101865991A (zh) * | 2009-04-17 | 2010-10-20 | 杭州中科微电子有限公司 | 分层式gps信号并行捕获方法及其模块 |
CN101738624B (zh) * | 2009-12-15 | 2013-04-10 | 和芯星通科技(北京)有限公司 | 卫星导航接收机的信号捕获***及方法 |
US20110241938A1 (en) * | 2010-04-05 | 2011-10-06 | Accord Software and Systems Pvt., Ltd. | Sequential Chip Correlation Array |
CN102023302A (zh) * | 2010-12-17 | 2011-04-20 | 浙江大学 | 卫星导航接收机中的多通道协同控制方法和装置 |
CN102508269A (zh) * | 2011-09-30 | 2012-06-20 | 和芯星通科技(北京)有限公司 | 卫星导航导频信号捕获方法、伪随机序列剥离方法及装置 |
CN102621562A (zh) * | 2012-03-20 | 2012-08-01 | 东南大学 | 一种基于fpga的多通道实时gps跟踪方法及其*** |
CN103760577A (zh) * | 2014-02-12 | 2014-04-30 | 深圳市峰华经纬科技有限公司 | 一种gnss卫星跟踪方法 |
CN104062667A (zh) * | 2014-07-03 | 2014-09-24 | 哈尔滨工程大学 | 基于i/q支路相关积分观测滤波的gps弱信号跟踪*** |
CN104880715A (zh) * | 2015-06-03 | 2015-09-02 | 刘哲 | 应用于BOC(n,n)信号的无模糊接收方法 |
CN105607076A (zh) * | 2015-12-23 | 2016-05-25 | 北京时代民芯科技有限公司 | 一种北斗二代b1和b3双频接收机 |
CN110196435A (zh) * | 2018-02-27 | 2019-09-03 | 中国科学院微电子研究所 | 信号的处理方法、装置、存储介质和处理器 |
Non-Patent Citations (3)
Title |
---|
I. BEIYAEV 等: "Handling of the generation of primary events in Gauss, the LHCb simulation framework", 《 IEEE NUCLEAR SCIENCE SYMPOSUIM & MEDICAL IMAGING CONFERENCE》 * |
刘天雄: "卫星导航***接收机原理与设计_之八", 《卫星与网络》 * |
罗慕尧: "基于FPGA的北斗信号捕获方法研究与实现", 《中国优秀硕士学位论文全文数据库 信息科技辑》 * |
Also Published As
Publication number | Publication date |
---|---|
CN110531385B (zh) | 2021-05-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5822381A (en) | Distributed global clock system | |
CN101261129B (zh) | 一种基于dsp和fpga的组合导航计算机 | |
CA2204585C (en) | A receiver for a navigation system, in particular a satellite navigation system | |
US7002376B2 (en) | Phase detector for a programmable clock synchronizer | |
CN101051080B (zh) | 一种高灵敏度的gps信号载波跟踪方法 | |
CN112034698B (zh) | 一种通用授时校时方法 | |
CN107040327A (zh) | 主从机tdma时隙同步校准方法及装置 | |
CN105549039A (zh) | 用于全球导航卫星***信号跟踪的***和方法 | |
US8106824B2 (en) | Tracking satellite signal | |
CN102289361A (zh) | 对追踪数据流的关联 | |
CN110377106A (zh) | 一种时统卡虚拟化方法、***及介质 | |
CN110531385A (zh) | 一种多通道并行的跟踪引擎和跟踪方法 | |
WO2013126875A1 (en) | Low power asynchronous gps baseband processor | |
AU643811B2 (en) | Circuit arrangement for the regeneration and synchronisation of a digital signal | |
KR20140145987A (ko) | 내비게이션 비트 동기화의 실행 및 확인을 위한 방법 | |
CN111913038B (zh) | 一种多路时钟信号频率检测装置和方法 | |
CN109633705A (zh) | 一种基于北斗基带处理二维复用电路的控制方法 | |
CN109143279B (zh) | 一种多路复用导航信号扩频码错误检测方法及设备 | |
CN104049263B (zh) | 多模卫星导航信号的基带动态复用接收方法 | |
CN105827350A (zh) | 一种信息同步方法及网络设备 | |
CN114006672B (zh) | 一种车载多传感器数据同步采集方法及*** | |
FI72842C (fi) | System foer detektering och eliminering av televisionsspoekbilder. | |
SE504920C2 (sv) | Förfarande och system för redundant klockdistribution till telekommunikationsutrustningar i vilka byte av vald klocksignal bland de inkommande klocksignalerna ständigt sker | |
CN100536340C (zh) | 一种分频方法及分频计数器 | |
CA2704385A1 (en) | Method and device for integrating a rf gps emulator in a simulation environment |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |