CN116745647A - 现代化的消费者级gnss次级码捕获和信号跟踪 - Google Patents
现代化的消费者级gnss次级码捕获和信号跟踪 Download PDFInfo
- Publication number
- CN116745647A CN116745647A CN202180058641.0A CN202180058641A CN116745647A CN 116745647 A CN116745647 A CN 116745647A CN 202180058641 A CN202180058641 A CN 202180058641A CN 116745647 A CN116745647 A CN 116745647A
- Authority
- CN
- China
- Prior art keywords
- gnss
- code
- phase
- correlation
- secondary code
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 claims abstract description 539
- 230000008859 change Effects 0.000 claims description 148
- 230000001427 coherent effect Effects 0.000 claims description 114
- 238000012545 processing Methods 0.000 claims description 77
- 230000008569 process Effects 0.000 claims description 55
- 230000003111 delayed effect Effects 0.000 claims description 32
- 238000012935 Averaging Methods 0.000 claims description 24
- 239000000523 sample Substances 0.000 description 97
- 230000010354 integration Effects 0.000 description 71
- 238000005259 measurement Methods 0.000 description 53
- 238000013459 approach Methods 0.000 description 48
- 238000003775 Density Functional Theory Methods 0.000 description 47
- 230000008901 benefit Effects 0.000 description 45
- 230000000694 effects Effects 0.000 description 42
- 238000001514 detection method Methods 0.000 description 37
- 239000013598 vector Substances 0.000 description 37
- 230000002829 reductive effect Effects 0.000 description 35
- 238000012360 testing method Methods 0.000 description 34
- 239000000243 solution Substances 0.000 description 31
- 238000007792 addition Methods 0.000 description 25
- 230000000875 corresponding effect Effects 0.000 description 24
- 230000001934 delay Effects 0.000 description 24
- 230000035945 sensitivity Effects 0.000 description 23
- 230000005540 biological transmission Effects 0.000 description 20
- 238000012937 correction Methods 0.000 description 20
- 238000004422 calculation algorithm Methods 0.000 description 18
- 230000002596 correlated effect Effects 0.000 description 18
- 230000006872 improvement Effects 0.000 description 17
- 238000013508 migration Methods 0.000 description 15
- 230000005012 migration Effects 0.000 description 15
- 230000006870 function Effects 0.000 description 14
- 230000000116 mitigating effect Effects 0.000 description 14
- 230000002194 synthesizing effect Effects 0.000 description 14
- 238000001228 spectrum Methods 0.000 description 13
- 230000007704 transition Effects 0.000 description 13
- 230000001413 cellular effect Effects 0.000 description 11
- 239000002131 composite material Substances 0.000 description 11
- 239000011159 matrix material Substances 0.000 description 11
- 230000004044 response Effects 0.000 description 10
- 238000004364 calculation method Methods 0.000 description 9
- 238000005314 correlation function Methods 0.000 description 9
- 238000005070 sampling Methods 0.000 description 9
- 238000000819 phase cycle Methods 0.000 description 8
- 230000001360 synchronised effect Effects 0.000 description 8
- 238000006243 chemical reaction Methods 0.000 description 7
- 230000000644 propagated effect Effects 0.000 description 7
- 101100364969 Dictyostelium discoideum scai gene Proteins 0.000 description 6
- 101100364971 Mus musculus Scai gene Proteins 0.000 description 6
- 230000015572 biosynthetic process Effects 0.000 description 6
- 238000000926 separation method Methods 0.000 description 6
- 230000002123 temporal effect Effects 0.000 description 6
- 101100126175 Escherichia coli (strain K12) intM gene Proteins 0.000 description 5
- 238000010586 diagram Methods 0.000 description 5
- 238000005562 fading Methods 0.000 description 5
- 238000012544 monitoring process Methods 0.000 description 5
- 238000003786 synthesis reaction Methods 0.000 description 5
- 238000004458 analytical method Methods 0.000 description 4
- 238000004590 computer program Methods 0.000 description 4
- 125000004122 cyclic group Chemical group 0.000 description 4
- 238000001914 filtration Methods 0.000 description 4
- 239000011521 glass Substances 0.000 description 4
- 230000033001 locomotion Effects 0.000 description 4
- 230000036961 partial effect Effects 0.000 description 4
- 230000009467 reduction Effects 0.000 description 4
- NCGICGYLBXGBGN-UHFFFAOYSA-N 3-morpholin-4-yl-1-oxa-3-azonia-2-azanidacyclopent-3-en-5-imine;hydrochloride Chemical compound Cl.[N-]1OC(=N)C=[N+]1N1CCOCC1 NCGICGYLBXGBGN-UHFFFAOYSA-N 0.000 description 3
- 244000089409 Erythrina poeppigiana Species 0.000 description 3
- GYHNNYVSQQEPJS-UHFFFAOYSA-N Gallium Chemical compound [Ga] GYHNNYVSQQEPJS-UHFFFAOYSA-N 0.000 description 3
- 238000007476 Maximum Likelihood Methods 0.000 description 3
- 235000009776 Rathbunia alamosensis Nutrition 0.000 description 3
- 239000000654 additive Substances 0.000 description 3
- 230000000996 additive effect Effects 0.000 description 3
- 230000002238 attenuated effect Effects 0.000 description 3
- 239000000969 carrier Substances 0.000 description 3
- 238000010276 construction Methods 0.000 description 3
- 238000013480 data collection Methods 0.000 description 3
- 230000001419 dependent effect Effects 0.000 description 3
- 238000013461 design Methods 0.000 description 3
- 238000002474 experimental method Methods 0.000 description 3
- 230000000670 limiting effect Effects 0.000 description 3
- 230000007774 longterm Effects 0.000 description 3
- 239000002184 metal Substances 0.000 description 3
- 229910052751 metal Inorganic materials 0.000 description 3
- 239000000203 mixture Substances 0.000 description 3
- 230000010363 phase shift Effects 0.000 description 3
- 230000011664 signaling Effects 0.000 description 3
- 230000001629 suppression Effects 0.000 description 3
- 230000001131 transforming effect Effects 0.000 description 3
- 238000011282 treatment Methods 0.000 description 3
- 238000012795 verification Methods 0.000 description 3
- 241001442234 Cosa Species 0.000 description 2
- 101000798707 Homo sapiens Transmembrane protease serine 13 Proteins 0.000 description 2
- 102100032467 Transmembrane protease serine 13 Human genes 0.000 description 2
- 101710149792 Triosephosphate isomerase, chloroplastic Proteins 0.000 description 2
- 101710195516 Triosephosphate isomerase, glycosomal Proteins 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 2
- 230000004931 aggregating effect Effects 0.000 description 2
- 230000006399 behavior Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 2
- 238000000354 decomposition reaction Methods 0.000 description 2
- 230000001066 destructive effect Effects 0.000 description 2
- 238000010790 dilution Methods 0.000 description 2
- 239000012895 dilution Substances 0.000 description 2
- 230000036541 health Effects 0.000 description 2
- 238000012417 linear regression Methods 0.000 description 2
- 238000010801 machine learning Methods 0.000 description 2
- 238000013178 mathematical model Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000010587 phase diagram Methods 0.000 description 2
- 229920000915 polyvinyl chloride Polymers 0.000 description 2
- 238000012805 post-processing Methods 0.000 description 2
- 230000001902 propagating effect Effects 0.000 description 2
- 230000010076 replication Effects 0.000 description 2
- 238000004088 simulation Methods 0.000 description 2
- 241000239290 Araneae Species 0.000 description 1
- 101100458289 Drosophila melanogaster msps gene Proteins 0.000 description 1
- 229920002430 Fibre-reinforced plastic Polymers 0.000 description 1
- 101100221616 Halobacterium salinarum (strain ATCC 29341 / DSM 671 / R1) cosB gene Proteins 0.000 description 1
- 241000764238 Isis Species 0.000 description 1
- 101100412093 Schizosaccharomyces pombe (strain 972 / ATCC 24843) rec16 gene Proteins 0.000 description 1
- 238000009825 accumulation Methods 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000000903 blocking effect Effects 0.000 description 1
- 239000011449 brick Substances 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000002860 competitive effect Effects 0.000 description 1
- 230000001010 compromised effect Effects 0.000 description 1
- 230000001276 controlling effect Effects 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 239000013078 crystal Substances 0.000 description 1
- 230000001351 cycling effect Effects 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 230000006735 deficit Effects 0.000 description 1
- 238000009795 derivation Methods 0.000 description 1
- 230000026058 directional locomotion Effects 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 239000011151 fibre-reinforced plastic Substances 0.000 description 1
- 238000011049 filling Methods 0.000 description 1
- 239000003574 free electron Substances 0.000 description 1
- 238000007429 general method Methods 0.000 description 1
- PCHJSUWPFVWCPO-UHFFFAOYSA-N gold Chemical compound [Au] PCHJSUWPFVWCPO-UHFFFAOYSA-N 0.000 description 1
- 230000036039 immunity Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000002045 lasting effect Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000002156 mixing Methods 0.000 description 1
- 230000003121 nonmonotonic effect Effects 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 230000010287 polarization Effects 0.000 description 1
- 229920000729 poly(L-lysine) polymer Polymers 0.000 description 1
- 238000012797 qualification Methods 0.000 description 1
- 239000013074 reference sample Substances 0.000 description 1
- 238000007670 refining Methods 0.000 description 1
- 230000008439 repair process Effects 0.000 description 1
- 230000000979 retarding effect Effects 0.000 description 1
- 239000012723 sample buffer Substances 0.000 description 1
- 230000008054 signal transmission Effects 0.000 description 1
- 230000003595 spectral effect Effects 0.000 description 1
- 230000007480 spreading Effects 0.000 description 1
- 238000003892 spreading Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000009897 systematic effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 238000002054 transplantation Methods 0.000 description 1
- 238000011144 upstream manufacturing Methods 0.000 description 1
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
-
- 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/38—Determining a navigation solution using signals transmitted by a satellite radio beacon positioning system
- G01S19/39—Determining a navigation solution using signals transmitted by a satellite radio beacon positioning system the satellite radio beacon positioning system transmitting time-stamped messages, e.g. GPS [Global Positioning System], GLONASS [Global Orbiting Navigation Satellite System] or GALILEO
- G01S19/42—Determining position
- G01S19/428—Determining position using multipath or indirect path propagation signals in position determination
-
- 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/38—Determining a navigation solution using signals transmitted by a satellite radio beacon positioning system
- G01S19/39—Determining a navigation solution using signals transmitted by a satellite radio beacon positioning system the satellite radio beacon positioning system transmitting time-stamped messages, e.g. GPS [Global Positioning System], GLONASS [Global Orbiting Navigation Satellite System] or GALILEO
- G01S19/42—Determining position
- G01S19/45—Determining position by combining measurements of signals from the satellite radio beacon positioning system with a supplementary measurement
- G01S19/46—Determining position by combining measurements of signals from the satellite radio beacon positioning system with a supplementary measurement the supplementary measurement being of a radio-wave signal type
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)
- Aiming, Guidance, Guns With A Light Source, Armor, Camouflage, And Targets (AREA)
- Non-Metallic Protective Coatings For Printed Circuits (AREA)
- Details Of Garments (AREA)
Abstract
全球导航卫星***和方法使用L5GNSS信号来捕获那些信号的次级码相位,而不使用L1GNSS信号来帮助捕获次级码相位。描述了各种实施例以执行这种捕获。
Description
本申请要求于2020年6月1日提交的美国临时专利申请No.62/704,882和于2020年6月1日提交的美国临时专利申请No.62/704,884以及于2021年5月28日提交的美国临时专利申请No.17/334,477的权益,这些申请通过引用并入本文。
背景技术
本公开涉及全球导航卫星***(GNSS)领域,并且具体地,本公开在一个实施例中涉及使用L5频带中的现代L5信号的GNSS接收机。有许多可用的GNSS***,包括美国的GPS(全球定位***)、GLONASS、Galileo、Beidou以及已经存在或未来可能部署的区域性***。美国的GPS***最初只能在L1频带中使用。现在,美国的GPS***包括L5频带的GNSS信号,Galileo***包括以1191.79MHz为中心的L5频带中的现代化GNSS信号(诸如E5A和E5B)。L5频带中的这些现代化GNSS信号相对于L1频带中的GNSS信号具有某些优势,其中一些优势在下面描述。然而,在未在GNSS接收机中预先捕获L1 GNSS信号的情况下要在GNSS接收机中直接捕获L5频带GNSS信号被认为是困难的,因此常规的GNSS接收机采用首先捕获L1 GNSS信号的技术。这种初始捕获提供用于捕获L5频带中的GNSS信号的信息,诸如时间信息和多普勒(Doppler)估计。因此,支持GNSS L5信号的常规GNSS接收机使用接收L5和L1信号两者的射频前端;这意味着这些GNSS接收机中存在射频组件的重复。而且,常规的接收机必须为L1和L5 GNSS信号两者存储和使用伪随机噪声(PRN)码序列。
现代GNSS信号(诸如来自欧洲Galileo卫星星座(SV)的GNSS信号)既包括主码(primary code)序列又包括次级码(secondary code)序列。次级码序列通常通过模2加法而被叠加在主码序列上。包含次级码序列为现代GNSS信号提供了相对于不包括此类次级码序列的旧GPS信号的一些优势。例如,次级码序列可以减少从不同卫星接收到的信号之间的互相关;这通过减少错误跟踪而提高了接收***的可靠性。次级码序列产生一系列零或180度相移,这些相移与主码的历元同步。次级码序列可以长,诸如在某些Galileo L5信号的情况下为100毫秒。主码的历元通常每1毫秒发生一次。这意味着GNSS接收机不能使用超过1毫秒(ms或msec)的相干积分(coherent correlation),除非首先在GNSS接收机中确定次级码相位。如果确定了次级码,那么相干积分可以扩展到远远超过1毫秒,从而允许接收机实现高灵敏度。然而,如果没有这样的确定,那么跟踪所捕获的主码GNSS信号是困难的。现有的GNSS接收机通过在尝试捕获L5信号之前先捕获L1信号来避免这个问题。这种捕获有效地允许确定与L5信号相关联的次级码的相位,因此避免了通过独立手段来确定这种相位的要求。
发明内容
本公开包括提供用于捕获GNSS信号的次级码相位的***、GNSS接收机、方法和技术的各个方面和实施例,包括例如捕获L5GNSS信号的次级码相位而不使用L1 GNSS信号捕获L5 GNSS信号的次级码相位的GNSS接收机。在一个实施例中,这种GNSS接收机包括:模数转换器(ADC),用于生成L5宽带GNSS频带中接收到的GNSS信号的数字表示;基带样本存储器,用于存储接收到的GNSS信号的数字表示,基带样本存储器耦合到ADC;GNSS处理***,耦合到基带样本存储器以处理接收到的GNSS信号的数字表示,GNSS处理***被配置为捕获L5宽带GNSS信号的一个或多个GNSS信号分量的一个或多个次级码的码相位而不使用L1 GNSS信号来捕获L5宽带GNSS信号的一个或多个GNSS信号分量的一个或多个次级码的码相位。在一个实施例中,该***仅包括被调谐到L5宽带频带中的频率的单个GNSS天线,并且GNSS接收机不接收且不捕获L1 GNSS信号。在一个实施例中,GNSS接收机在捕获GNSS信号分量的一个或多个主码之后但在对GNSS信号分量的窄带跟踪之前捕获一个或多个次级码的码相位。在一个实施例中,通过使用来自单个GNSS卫星的L5宽带GNSS信号中的多个GNSS信号分量(例如,来自同一GNSS卫星的GNSS旁带A信号和GNSS旁带B信号,诸如来自同一Galileo GNSSSV的E5a和E5b信号)来捕获一个或多个次级码中的第一次级码的码相位。在一个实施例中,GNSS接收机检测相继的主码历元之间的相位改变,其中相位改变是从GNSS接收机中的GNSS处理***中的相关输出的同相结果和正交结果检测的;GNSS处理***对从相关输出的同相结果和正交结果中检测到的相位改变求平均,以产生估计的频率误差。GNSS处理***基于估计的频率误差向锁频环(FLL)的一个或多个鉴别器提供经补偿的频率,FLL被配置为基于估计的频率误差来减少接收到的L5 GNSS信号的频率估计中的误差。在一个实施例中,FLL包括用于L5 GNSS信号的第一旁带的第一鉴别器和用于L5 GNSS信号的第二旁带的第二鉴别器,并且估计的频率误差是基于从相关输出的同相结果和正交结果检测到的相位改变的平均值的经滤波的估计。在一个实施例中,平均值可以是针对来自单个GNSS SV的两个、三个或四个GNSS信号分量的。
下面描述的几种不同方法允许GNSS接收机在不使用L1 GNSS信号的情况下捕获L5GNSS信号的次级码相位。根据一个实施例,一种捕获GNSS信号的次级码相位的方法可以包括以下操作:捕获接收到的L5 GNSS信号的一个或多个主码;对于接收到的L5 GNSS信号的一个或多个主码中的每一个主码中的接收到的主码历元之间的每个转变(transition),确定每个L5 GNSS信号的相位改变值,其中随时间依次确定一组相位改变值;将该组相位改变值存储在数据结构(例如,直方图)中;将数据结构中的该组相位改变值与一组预期的相位改变值进行比较,该组预期的相位改变值是从与来自一个或多个GNSS卫星的一个或多个主码相关联的一个或多个次级码导出的,其中这些主码和次级码进一步与唯一识别出的GNSS卫星及其信号传输相关联;以及基于该比较来确定该一个或多个次级码的一个或多个码相位。在一个实施例中,该方法还可以包括以下操作:在已经为接收到的L5 GNSS信号之一的分量确定主码相位和相关联的次级码相位之后,对接收到的L5 GNSS信号的分量中的至少一个执行窄带跟踪操作;基于来自该跟踪操作的一个或多个输出,确定一个或多个位置解。每个相位改变值表示与来自传输了主码的GNSS卫星的主码相关联的次级码的相位改变的指示,并且确定相位改变值的操作包括计算在两个连续的主码历元之间的每个转变处的值的余弦。通过将次级码变换成相位改变值的序列,跨越次级码中的历元,在数据结构中的一组索引值上,从次级码导出预期相位改变值。主码的捕获包括确定主码的码相位。在一个实施例中,该方法还可以包括以下操作:交叉检查来自同一GNSS卫星的L5 GNSS信号的不同信道的所确定的次级码相位,并且比较使用来自同一GNSS SV的不同信道的相位改变值来导出用于确定一个或多个次级码相位的比较输出。
根据另一个实施例,另一种捕获GNSS信号的次级码相位的方法可以包括以下操作:从GNSS卫星接收包含第一组次级码和第一组主码的GNSS信号,第一组次级码包括至少具有第一长度(以位为单位)的第一次级码和具有第二长度(以位为单位)的第二次级码,第一长度大于第二长度;在第一相关操作中,将第一组主码(例如,来自第一Galileo GNSSSV)与本地生成的与第一组次级码对应的次级码进行相干相关,第一相关操作在接收到的第一组GNSS信号的第一长度上扩展,并且第一相关操作针对可能的码相位假设的集合和频率的集合中的每个值进行相干相关;在时间上位于第一相关之后的第二相关操作中,将接收到的第二组GNSS信号(例如,在接收到的第一组GNSS信号之后接收到的、来自第一Galileo GNSS SV)与本地生成的与第一组次级码对应的次级码进行相干相关,第二相关操作在接收到的第二组GNSS信号的第一长度上延伸,并且第二相关操作针对可能的码相位假设的集合和频率的集合中的每个值进行相干相关;将来自第一相关操作的结果与来自第二相关操作的结果组合;以及从组合的结果确定用于第一组次级码的一个或多个次级码相位。可以使用离散傅立叶变换或硬件相关器来执行第一相关操作和第二相关操作。第一组次级码可以包括用于来自同一GNSS卫星的GNSS信号的四个分量的四个次级码,并且第一相关操作对于第一组次级码在第一长度上是相干的并且第二相关操作对于第一组次级码在第一长度上是相干的。在一个实施例中,所述组合对来自第一相关操作的结果和来自第二相关操作的结果进行非相干地积分。在一个实施例中,第一相关操作包括将从GNSS卫星接收到的第一组GNSS信号与本地生成的与第一组次级码对应的主码进行相关,并且其中第二相关操作包括将接收到的第二组GNSS信号(来自该GNSS卫星)与本地生成的与第一组次级码对应的主码相关;接收到的第二组GNSS信号是在接收到所接收的第一组GNSS信号之后接收的。
根据另一个实施例,另一种捕获GNSS信号的次级码相位的方法可以包括以下操作:在多个主码历元上捕获来自至少一个GNSS星座的多个GNSS卫星的多个GNSS信号的主码相位,该捕获在用于该多个GNSS卫星的多个主码历元的一组时间间隔上产生一组相关值,使得对于每个时间间隔,存在多个相关值,这些相关值指定从多个GNSS卫星捕获的主码相位;在该组时间间隔中的每个时间间隔内,评估时间间隔之一中的多个相关值,以确定从该时间间隔中的多个相关值导出的值图案(pattern of values),该值图案使多个相关值的总和最大化;基于已为其捕获主码相位的多个GNSS卫星,确定与已捕获的主码相位相关联的次级码的预期相位反转序列(expected sequence of phase reversals),该预期序列是在该组时间间隔上确定的;将针对时间间隔之一的每个所确定的值图案与用于次级码的预期相位反转序列进行比较;以及根据该比较,确定次级码的一个或多个码相位。一组离散傅立叶变换操作可以被用于捕获主码相位。在一个实施例中,该多个GNSS卫星仅来自一个GNSS星座,而在另一个实施例中,该多个GNSS SV来自多个不同的星座。在一个实施例中,该比较通过考虑从不同GNSS卫星接收到的GNSS信号的相对延迟信息来确定用于次级码的多个码相位,并且该比较并发地为所有不同的GNSS卫星一起确定用于次级码的多个码相位。该方法还可以确定该组时间间隔是否足够大以至于能够提供对次级码的一个或多个码相位的可靠确定。
根据另一个实施例,另一种捕获GNSS信号的次级码相位的方法可以包括以下操作:确定从第一GNSS卫星接收到的GNSS信号的次级码相位;确定所确定的从第一GNSS卫星接收的GNSS信号的次级码相位与从不同于第一GNSS卫星的第二GNSS卫星接收的GNSS信号的预测的次级码相位之间的差异;以及基于确定的差异来校正预测的次级码相位。该校正可以包括:(1)将所确定的差异与次级码的历元的时间上的码长度的一小部分(afraction)进行比较,以及(2)(a)如果所确定的差异小于该一小部分,那么将时间上的该码长度加到所确定的差异并在码长度的毫秒数的可能值范围内回绕(wrap)该加法的结果,或者(b)如果所确定的差异大于该一小部分,那么从所确定的差异中减去时间上的码长度,并在码长度的毫秒数的可能值范围内回绕该减法的结果。在一个实施例中,该方法还可以包括以下操作:确定从其它GNSS卫星接收到的其它GNSS信号的附加次级码相位;确定所确定的附加次级码相位与预测的次级码相位之间的附加差异;并且其中校正是基于所确定的差异和该附加差异的。在一个实施例中,校正可以基于所确定的差异和附加差异中的最高似然差异。
根据另一个实施例,另一种捕获GNSS信号的次级码相位的方法可以包括以下操作:从GNSS卫星接收包含一个或多个主码和一个或多个次级码的GNSS信号;从接收到的GNSS信号,从对接收到的GNSS信号进行操作的捕获相关过程生成第一相关输出,第一相关输出包括该一个或多个次级码随时间的次级码相关周期;随时间确定该一个或多个次级码的一组一个或多个预期次级码序列;基于所确定的一组一个或多个预期次级码序列计算差分次级码序列;基于第一相关输出以及第一相关输出中的每一个的复共轭来计算一组差分相关样本;将该组差分相关样本与差分次级码序列相关以提供一组第二相关输出;以及从该组第二相关输出中确定该一个或多个次级码的一个或多个次级码相位。可以基于预期次级码序列和预期次级码序列的延迟版本的乘积来计算差分次级码序列。该延迟版本可以延迟一个或多个主码历元的一小部分,或者延迟次级码中一个位的持续时间。在一个实施例中,第一相关输出提供包括实部数据和虚部数据的复数据,并且复共轭对虚部数据进行运算。相关可以在多个次级码历元上执行,并且可以用一个或多个离散傅立叶变换操作来执行。在一个实施例中,该组第二相关输出包括峰的实部的值,并且次级码相位是从该实部的绝对值确定的。在一个实施例中,相关包括:将该组差分相关样本与差分次级码循环地(circularly)互相关。在一个实施例中,相关可以包括以下操作:计算该组差分相关样本的离散傅立叶变换以产生第一组结果;计算差分次级码序列的离散傅立叶变换以产生第二组结果;将第一组结果乘以第二组结果的复共轭以产生第一乘积;以及计算第一乘积的离散傅立叶逆变换。在一个实施例中,该方法还可以包括以下操作:基于所确定的一组一个或多个预期次级码序列,将一组差分相关输出与进一步延迟的差分次级码相关,以提供第三组相关输出,第三组相关输出被用于检查第二组相关输出。
另一方面涉及合成一组即时相关输出(punctual correlation output)。在一个实施例中,这些合成的即时相关输出可以被用于确定用于鉴别器的误差信号以用于调整载波锁相环,以锁定到在GNSS接收机的跟踪模式期间被跟踪的GNSS信号的载波相位。根据这个方面的实施例可以包括以下操作:生成具有样本时钟频率的样本时钟;确定一组相关输出,该组相关输出包括处于样本时钟频率的一组提前相关输出(early correlationoutput)和处于样本时钟频率的一组滞后相关输出(late correlation output);以及从以下至少一项合成一组即时相关输出:(a)该组提前相关输出或(b)该组滞后相关输出。在(通过确定GNSS信号的主码相位和次级码相位)成功捕获GNSS信号之后跟踪GNSS信号的跟踪操作模式期间,可以在GNSS接收机中合成该组即时相关输出。在一个实施例中,在跟踪模式期间在GNSS接收机中不生成本地即时代码,并且在GNSS接收机中的相关器中不创建一组即时相关输出。在一个实施例中,合成的一组即时相关输出可以被用于估计信号功率以归一化延迟锁定环的鉴别器。在一个实施例中,用于GNSS信号的相继的提前和滞后相关输出的样本之间的时间间距是小于GNSS信号中的码片(chip)的单个样本时钟分隔,并且样本时钟频率可以小于10.23MHz的L5码片速率的3倍。在一个实施例中,该间距是经缩窄的码延迟,该经缩窄的码延迟减少多径误差同时将样本频率时钟频率维持在小于10.23MHz的L5码片速率的4倍。在一个实施例中,该组提前相关输出是一组超提前相关输出(very earlycorrelation output),并且其中,如果GNSS信号强,那么通过将该组超提前相关输出乘以大于1的因子来合成该组经合成的即时相关输出。在一个实施例中,合成包括计算比例因子与提前和滞后相关输出之和的乘积;针对每个合成的即时相关输出,可以计算比例因子以产生如下合成的即时相关输出,该合成的即时相关输出具有与当提前和滞后相关输出平衡时的真实即时相关输出相同的幅值。在一个实施例中,该组提前相关输出包括一组超提前相关输出以及提前相关输出,而该组滞后相关输出包括一组超滞后相关输出以及滞后相关输出,并且其中合成包括:对于每个合成的即时相关输出,将超提前相关输出、提前相关输出、滞后相关输出和超滞后相关输出求平均。在一个实施例中,该组提前相关输出包括一组超提前相关输出和提前相关输出,并且合成包括:对于每个合成的即时相关输出,将超提前相关输出和提前相关输出求平均。
在一个实施例中,针对GNSS信号的C信道中的Altboc格式化的信号来合成该组即时相关输出,并且该组即时相关输出使用相关之间已知的预定相位偏移量,这些已知的预定相位偏移量超出Altoboc相关的主峰。主峰之外可以有一个或多个次级峰,它们具有与主峰不同的相位。
在一个实施例中,该组合成的即时相关输出可以被用于调整载波锁相环,并且用于载波锁相环的载波相位是用合成的即时相关(该合成的即时相关对多个相关求平均)生成的,以便产生如下载波相位估计,与提前和滞后相关器之间的相关器处的多径相比,该载波相位估计具有减少的载波多径。这种求平均倾向于有利于较早的相关,以便产生如下载波相位估计,与在提前相关器和滞后相关器之间的相关器处的多径相比,该载波相位估计具有减少的载波多径。
本文描述的方面和实施例可以包括非暂态机器可读介质,其可以存储可执行计算机程序指令,当执行计算机程序指令时,这些指令在被执行时使一个或多个数据处理***(例如,GNSS接收机中的GNSS处理***)执行本文描述的方法。指令可以存储在非暂态机器可读介质中,诸如是易失性存储器的动态随机存取存储器(DRAM)、或非易失性存储器(诸如闪存)或其它形式的存储器。本文描述的方面和实施例也可以是被构建或编程以执行这些方法的GNSS接收机或数据处理***的形式。例如,数据处理***可以用硬件逻辑构建以执行这些方法,或者可以用计算机程序编程以执行这些方法,并且这种数据处理***可以被认为是处理GNSS信号的***或GNSS接收机。
以上发明内容没有包括本公开中所有实施例和方面的详尽列表。所有***、介质和方法都可以从上面总结的各个方面和实施例以及下面详细描述中公开的那些的所有适当组合来实践。
附图说明
本专利或申请文件包含至少一张彩色执行的附图。附有彩色附图的本专利或专利申请出版物的副本将由专利局根据要求提供并支付必要的费用。
本发明在附图中以示例而非限制的方式进行说明,附图中相似的参考标号指示相似的元素。
图1示出了包含根据本文描述的一个或多个实施例的GNSS接收机的设备(例如,智能电话)的示例。
图2是示出根据一个实施例的捕获GNSS信号的次级码相位的方法的流程图。
图3是示出根据另一个实施例的捕获GNSS信号的次级码相位的另一种方法的流程图。
图4是示出根据另一个实施例的捕获GNSS信号的次级码相位的另一种方法的流程图。
图5是示出根据另一个实施例的捕获GNSS信号的次级码相位的另一种方法的流程图。
图6是示出根据另一个实施例的捕获GNSS信号的次级码相位的另一种方法的流程图。
图7是示出根据一个实施例的用于在GNSS接收机中(例如,在跟踪模式期间)合成一组即时相关输出的方法的流程图。
图8A至图8BBB是附录中提到的图。
图9是示出图6中所示实施例的更详细方法的流程图。
图10A是示出使用本文描述的方法的组合来捕获次级码相位的方法的一般示例的流程图。
图10B是示出使用本文描述的方法的组合来捕获次级码相位的更详细方法的流程图。
具体实施方式
将参考下面讨论的细节描述各种实施例和方面,并且附图将图示各种实施例。以下描述和附图是说明性的并且不应被解释为限制性的。描述许多具体细节以提供对各种实施例的透彻理解。然而,在某些情况下,未描述众所周知的或常规的细节以便提供对实施例的简明讨论。
在说明书中提及“一个实施例”或“实施例”意味着结合该实施例描述的特定特征、结构或特点可以包括在至少一个实施例中。在说明书中各处出现的短语“在一个实施例中”并不一定都指代同一个实施例。下面图中描绘的过程由包括硬件(例如,电路***、专用逻辑等)、软件或两者的组合的处理逻辑执行。虽然下面根据一些顺序操作描述这些过程,但是应当认识到的是,可以以不同的次序执行所描述的操作中的一些。而且,一些操作可以并行执行而不是顺序执行。
本公开描述了GNSS(全球导航卫星***)方法、装置、***和非暂态机器可读介质的各种实施例,诸如在GNSS接收机中使用的方法、GNSS接收机、此类接收机内的组件和存储可执行计算机程序指令的非暂态机器可读介质,这些指令在在GNSS接收机中的一个或多个处理***中执行时可以执行本公开中描述的方法中的一种或多种。本说明书提供了可以以如下所述的各种方式组合的各种实施例的示例;例如,一种捕获GNSS信号的次级码的方法可以与另一种捕获GNSS信号的次级码的方法组合。例如,一种这样的方法可以用于强GNSS信号,而另一种这样的方法可以用于弱GNSS信号。因此,实施例不是相互排斥的并且可以组合。本描述提供了非限制性示例,并且不应当被解释为在所有可能的实施例中都要求所描述的所有特征。所有***和方法都可以通过以下描述中公开的各个方面和实施例的所有适当组合来实践。显然,在不脱离以下权利要求和在权利要求之前列举的示例性实施例中阐述的更广泛的精神和范围的情况下,可以对这些方面和实施例进行各种修改。因而,本说明书被认为是说明性而不是限制性的。
本文描述的实施例可以使用Paul Conflitti等人于2019年10月15日提交的美国临时专利申请No.62/915,510(代理人案卷号107505.P001Z)中描述的一种或多种GNSS接收机体系架构(或此类体系架构的组件、方法或部分),并且这个临时专利申请通过引用并入本文。另外,本文描述的实施例可以使用Paul Conflitti等人于2020年10月12日提交的美国专利申请No.17/068,659(代理人案卷号107505.P001)中描述的一种或多种GNSS接收机体系架构(或此类体系架构的组件、方法或部分),并且这个专利申请通过引用并入本文。
图1示出了设备51的一般示例,该设备51包括可以使用或实现本文描述的一个或多个实施例的GNSS接收机。这些实施例也可以在包括更少组件(例如,没有蜂窝收发器、没有其它收发器等)的设备中使用或实现。在一个实施例中,设备51是智能电话或平板电脑或膝上型计算机或者是交通工具(例如,汽车)的一部分或者是可穿戴设备或配件(例如,健身手表或智能手表或头戴式显示器等)的一部分。在替代实施例中,设备51是不包括收发器75的简单GNSS接收机。设备51中的GNSS接收元件包括GNSS天线53、L5 GNSS射频(RF)前端55、模数(A/D)转换器57、基带数字存储器59、锁频环(FLL,其可以被实现为锁相环)和GNSS处理***63。GNSS天线53可以是常规的GNSS天线或调谐到L5 GNSS频带的GNSS天线。从天线53接收的GNSS信号可以在L5 GNSS RF前端55中被放大和滤波,L5 GNSS RF前端55可以至少包括被调谐到仅L5宽带频带中的频率的第一RF滤波器以及低噪声放大器。在另一个实施例中,RF前端可以是常规的GNSS RF前端。2020年10月12日提交的美国专利申请No.17/068,659提供了可以用作RF前端55的RF前端的示例。经处理的RF GNSS信号由RF前端55输出并被提供为到A/D转换器57(它可以是用于GNSS信号的常规A/D转换器)的输入。A/D转换器57将接收到的GNSS信号数字化并将其存储在基带数字存储器59中;存储器59中的数字化的GNSS信号然后由GNSS处理***63处理。在一个实施例中,数字化的GNSS信号仅为L5 GNSS信号(没有L1 GPS信号并且没有L1 GNSS信号)。在一个实施例中,设备51中的GNSS接收机不接收并且不捕获L1 GNSS信号。在一个实施例中,设备51中的GNSS接收机不使用L1 GNSS信号来帮助捕获L5 GNSS信号中的次级码。
图1中的GNSS处理***63可以包括捕获引擎(AE)65、次级码处理***67、跟踪引擎69和位置求解引擎71。捕获引擎65可以与2020年10月12日提交的美国申请No.17/068,659中描述的捕获引擎65相同。这个捕获引擎65可以捕获来自多个L5 GNSS SV(诸如来自以下的SV:GNSS卫星的Galileo E5星座;或GNSS卫星的L5GPS星座;或GNSS卫星的Glonass K2星座;或GNSS卫星的QZSS星座;或GNSS卫星的Beidou B2星座)的GNSS信号中的主码。捕获引擎65和跟踪引擎69可以使用锁频环(FLL)61来维持对GNSS信号的载波相位的锁定,如本领域中已知的那样。本文描述的方法还包括对合成的即时相关输出使用FLL的方法。跟踪引擎69可以使用本领域中已知的技术来跟踪所捕获的GNSS信号,并且位置求解引擎69可以是常规的位置求解引擎,其使用本领域中已知的技术基于来自跟踪引擎69的伪距和GNSS SV星历数据以及位置求解引擎69可用的其它数据来计算位置解。次级码捕获处理***67可以使用本文描述的方法(参见例如图2-6)中的一种或多种从L5 GNSS信号捕获次级码相位(通常在AE 65捕获主码相位之后但在跟踪引擎69中对GNSS信号分量进行窄带跟踪之前进行)。次级码捕获处理***67可以在硬件逻辑和电路***中实现,或者可以在可编程逻辑(诸如执行一个或多个计算机程序的数字处理***)中实现或者可以在硬件逻辑和电路***与可编程逻辑的组合中实现。在一个实施例中,次级码捕获处理***67在不使用L1 GNSS信号来捕获次级码相位的情况下捕获L5 GNSS信号的这些次级码相位。
图1中的设备51还包括设备处理***73,该***可以包括智能电话中找到的大部分或所有组件,包括具有DRAM和闪存的应用处理***以及传感器的集合(诸如加速度计、指南针、陀螺仪、相机,接近传感器等)。设备处理***73还可以包括用于控制蜂窝收发器75的基带处理***,并且设备处理***耦合到蜂窝收发器75。蜂窝收发器75耦合到一个或多个天线(诸如天线77),以提供与蜂窝电话网络的无线语音和数据通信。蜂窝收发器75还可以包括其它无线收发器,诸如用于WiFi网络、蓝牙等的收发器。收发器75可以被用于向GNSS接收机提供辅助数据或位置辅助数据79(例如,基于GNSS接收机的大致位置、SV星历数据等而得到的位于GNSS接收机的视野中的GNSS SV的估计的多普勒数据);这种位置辅助数据的使用在本领域中是已知的,包括授予加利福尼亚的SnapTrack公司的许多美国专利。
在下面描述的方法中,图1中的次级码捕获处理***67可以在时间不确定性超过0.5毫秒的情况下捕获L5 GNSS信号的次级码的码相位;例如,在一个实施例中,在捕获L5GNSS信号的一个或多个次级码的码相位之前,当前时间的估计误差可以超过1毫秒。当从下面描述的不同方法捕获的码相位的集合提供一致的、相似的值(例如,它们的码相位测量基本相同)时,这核实了针对当前时间的不确定性或估计误差小于0.5毫秒。下面描述的一个实施例中的次级码捕获处理***67可以通过使用来自单个GNSS卫星的L5宽带GNSS信号中的多个GNSS信号分量(例如,来自同一SV的E5a GNSS信号和E5b信号)来捕获次级码的码相位。在下面描述的一个实施例中,次级码捕获处理***67可以使用来自多个GNSS SV的多个GNSS信号来捕获次级码的码相位。
设备51中的GNSS接收机可以使用检测到的相继的主码历元之间的相位改变来生成在FLL 61中使用的经补偿的频率以减少估计接收到的L5 GNSS信号的频率的误差。例如,GNSS处理***63可以检测相继主码历元之间的相位改变,该相位改变是从GNSS处理***中相关输出的同相结果和正交结果中检测到的;GNSS处理***63可以对从相关输出的同相结果和正交结果检测到的相位改变求平均,以产生估计的频率误差。GNSS处理***63可以基于该估计的频率误差向FLL 61的一个或多个鉴别器提供经补偿的频率,并且FLL 61可以被配置为基于该估计的频率误差来减少接收到的L5 GNSS信号的频率的估计中的误差。在一个实施例中,FLL 61可以包括用于L5GNSS信号的第一旁带(例如,E5a信号)的第一鉴别器和用于L5GNSS信号的第二旁带(例如,E5b信号)的第二鉴别器,并且其中估计的频率误差是基于从相关输出的同相结果和正交结果检测到的相位改变的平均值的经滤波的估计。在一个实施例中,求平均包括对在来自单个GNSS卫星的两个、三个或四个GNSS信号分量上检测到的相位改变求平均,并且FLL 61检测相继主码历元之间的相位改变。来自同一GNSS SV的多个信号分量的使用可以提高FLL 61的准确性和可靠性。
现在将参考图2描述用于捕获L5 GNSS信号中的次级码的次级码相位的方法。图2中所示的方法可以创建数据结构(诸如直方图),其可以被用于确定由GNSS接收机(诸如图1中所示的GNSS接收机)接收到的L5 GNSS信号中的次级码的次级码相位。在图2中的操作101中,GNSS接收机可以捕获接收到的L5 GNSS信号的一个或多个主码;例如,在图1中所示的GNSS接收机的情况下,AE 65可以获得这些主码;主码的捕获包括识别传输了主码的GNSSSV和确定接收到的主码的码相位。然后在操作103中,GNSS接收机可以针对接收到的主码历元之间的每个转变来确定每个捕获的GNSS信号的相位改变值,并生成随着由时间区间(time bin)的序列所表示的时间而顺序的一组相位改变值(每个时间区间表示时间序列中的时间的一部分,每个时间区间中有至少一个相位改变值)。对于与来自传输了主码的GNSS卫星的主码相关联的次级码,每个相位改变值(例如,1或0)表示对于在特定时间区间中是否发生了角相位改变(例如,从0度到180度的量化改变或从180度到0度的量化改变)的判断。这个判断可以由二进制值表示,该二进制值表示在每个时间区间内是否发生了180度角相位改变,并且每个相位改变值可以被表达为二进制值之一。然后可以在操作105中将这一组相位改变值存储在数据结构(诸如直方图)中(可以用沿着x轴的时间区间和y轴上的180度角相位改变事件的计数来可视化)。然后可以在操作107中将存储在数据结构中的该组相位改变值与一组预期相位改变值进行比较,该组预期相位改变值是从与来自GNSS SV的GNSS信号中捕获(从操作101)的主码相关联的次级码导出的。来自识别出的GNSS SV(通过捕获SV的主码相位来识别SV)的每个主码将具有相关联的次级码,该次级码具有相对于主码的已知角度相位改变。操作107中的比较允许GNSS接收机在操作109中确定使用操作101、103、105和107处理了的每个GNSS信号的次级码相位。例如,可以对来自同一GNSS SV的E5a和E5b信号使用图2中所示的方法,以确定来自同一GNSS SV的E5a GNSS信号的次级码相位和E5b GNSS信号的次级码相位。在一个实施例中,该方法可以对来自同一GNSS SV的L5GNSS信号的这些不同信道的次级码相位的结果进行交叉检查。在操作109之后,GNSS接收机已经捕获了GNSS信号的主码相位和次级码相位,并且可以在操作111中使用窄带跟踪来继续跟踪GNSS信号以使用本领域已知的技术导出伪距。然后在操作113处,GNSS接收机可以基于所跟踪的GNSS信号来确定一个或多个位置解。
在图2中所示方法的一个实施例中,通过在数据结构中的一组索引值上跨越次级码中的历元将次级码变换成一系列相位改变值来从次级码导出一组预期相位改变值。在图2中所示的方法的一个实施例中,相位改变值的确定包括计算两个连续主码历元之间的每个转变处的值的余弦。在图2中所示的方法的一个实施例中,该数据结构是一组直方图,来自特定GNSS卫星的L5 GNSS信号的每个信道有至少一个直方图,并且所存储的一组相位改变值包括用于同一卫星的相同频带中的两个正交数据分量和导频信号分量的相位改变值,并且其中该比较使用来自这些数据分量和导频分量的相位改变值来导出用于确定一个或多个次级码相位的比较输出。在图2的方法的一个实施例中,GNSS接收机可以确定相位改变值是否由于频率误差而有错误,并且如果相位改变值有错误,那么重置该数据结构。在图2中所示的方法的一个实施例中,该方法可以估计接收到的L5 GNSS信号的一个或多个主码的一个或多个频率,并且该方法可以使用跨一组相关器的码相位轨迹来检测跨该组相关器的频率误差,并且可以响应检测到的频率误差而重置数据结构中的数据。在图2中所示的方法的一个实施例中,GNSS接收机可以从随时间的鉴别器轨迹中预测码多普勒斜率,鉴别器轨迹是码跟踪环中的鉴别器的输出;然后GNSS接收机可以基于预测的码多普勒斜率来估计频率误差,然后在根据估计的频率误差而确定的频率偏移处、根据与主码相关联的相位改变值来检测次级码相位。在图2中的方法的一个实施例中,如果时间不确定性值小于0.5毫秒,那么GNSS接收机可以结束该方法。在一个实施例中,如果从(本文描述的)多个(例如,2个或3个)次级码相位方法得到的次级码相位基本一致且相符,那么可以得出时间不确定性小于0.5毫秒的结论(因而当前时间是已知的,误差小于0.5毫秒)。
在图2中的方法的一个实施例中,GNSS接收机可以对(在不同的频率偏移量处的)主码执行两组相关操作以,确定在不同频率偏移量处的两组相位改变值。例如,GNSS接收机可以在距中心频率的第一频率偏移量处对主码执行第一组相关操作以确定在第一频率偏移量处的相位改变值,并且还在距中心频率的第二频率偏移量处对次级码执行第二组相关操作以确定在第二频率偏移量处的相位改变值。这可以允许GNSS接收机确定由于频率误差引起的频率变化所带来的影响。GNSS接收机还可以将置信度值应用于相位改变值,并将这些置信度值存储在数据结构中;例如,针对数据结构中相位改变值的至少子集中的每个相位改变值,GNSS接收机可以基于与每个相位改变值相关联的信噪比来确定置信度值,并将该置信度值存储在数据结构中。随着时间的推移减小置信度值可以指示频率误差增加(或其它问题),这可以指示GNSS接收机应当重置数据结构(例如,擦掉或擦除数据结构中的所有数据以开始收集新的相位改变值)。附录中提供了关于可以使用图2中的方法的实施例的更多细节(例如,参见包括短语:“差分直方图方法”的标题下的部分)。
下面将参考图3描述用于捕获L5 GNSS信号中的次级码相位的另一种方法。图3中所示的方法可以使用若干个相干相关操作,其使用最长次级码长度作为用于所有次级码(或次级码的子集)上的相干相关操作的时间段。在某些L5 GNSS***中,来自同一GNSS SV的不同次级码具有不同长度;例如,在Galileo E5星座中,与来自同一GNSS SV的不同主码相关联的次级码具有不同长度,并且在图3中的方法中使用这个特性。在图3中的操作151中,GNSS接收机接收第一组GNSS信号和第二组GNSS信号,包括具有第一长度的第一次级码(例如,第一次级码具有来自该同一GNSS SV的所***中的最长长度)和具有小于第一长度的第二长度的第二次级码。在操作153中,GNSS接收机在第一长度的时间段内在可能的码相位假设的集合和用于第一次级码和第二次级码的频率的集合上对接收到的第一组GNSS信号(例如,来自第一Galileo GNSS SV)执行第一相干相关操作;在一个实施例中,当与接收到的第一组GNSS信号进行相干相关时,GNSS接收机在操作153中在可能的码相位假设和频率的集合的每个值处本地生成第一次级码和第二次级码。在一个实施例中,可以对来自GNSS SV(诸如Galileo GNSS SV)的GNSS信号中的所有四个次级码分量执行第一相干相关操作(在操作153中)(因此所有四个次级码分量都在第一相干相关操作中被相关)。在操作155处,GNSS接收机再次在第一长度的时间段内在可能的码相位假设的集合和用于第一次级码和第二次级码的频率的集合上对接收到的第二组GNSS信号(例如,来自第一GalileoGNSS SV)执行第二相干相关操作(时间上跟随在第一相关操作之后);在一个实施例中,当与接收到的第二组GNSS信号进行相干相关时,GNSS接收机在操作155中在可能的码相位假设和频率的集合的每个值处本地生成第一次级码和第二次级码。在一个实施例中,接收到的第二组GNSS信号是在接收到第一组GNSS信号之后接收的。在一个实施例中,可以对来自GNSS SV(诸如Galileo GNSS SV)的GNSS信号中的所有四个次级码分量执行第二相干相关操作(在操作155中)(因此所有四个次级码分量都在第二相干相关操作中被相关)。然后在操作157中,GNSS接收机可以组合来自第一和第二相干相关操作的结果,并且在操作159中,基于组合的结果来确定用于一个或多个次级码的一个或多个次级码相位;例如,在操作159中确定最长次级码的码相位。操作157中的组合在一个实施例中可以是非相干积分,并且在每个频率内对积分结果进行排序以选择组合的结果中的最高幅度值。在一个实施例中,可以使用离散傅立叶变换在GNSS接收机中执行第一和第二相关操作;在另一个实施例中,可以使用硬件相关器在GNSS接收机中执行第一和第二相关操作。在一个实施例中,对于接收到的第一组GNSS信号中的所有四个次级码,第一相关操作在第一长度上是相干的,并且对于接收到的第二组GNSS信号中的所有四个次级码,第二相关操作在第一长度上是相干的。并且在这两个相关操作中,所有四个次级码都被相关。在一个实施例中,第一相关操作包括将接收到的第一组GNSS信号与本地生成的与第一组次级码对应的主码相关,并且第二相关操作包括将接收到的第二组GNSS信号与本地生成的与第一组次级码对应的主码相关。在图3中这种方法的上下文中,将理解的是,相关是接收到的数据样本的序列与存储的参考样本的集合的比较,通常通过将每个接收到的数据样本乘以对应的参考样本并将结果求和来执行。在一个实施例中,频率的集合被最小步长尺寸分开,并且进一步确定用于一个或多个信道的改进的频率估计。关于图3中的方法的更多细节,除其它位置外,在附录中包括短语“相干次级码方法”的标题下提供。
现在将参考图4描述用于捕获L5 GNSS信号中的次级码的次级码相位的另一种方法。图4中所示的方法可以使用来自同一GNSS星座或不同GNSS星座的几个GNSS SV的多个信号来导出一个或多个次级码相位。在图4中的操作201中,GNSS接收机可以在多个主码历元上捕获来自至少一个GNSS星座的多个GNSS卫星的多个GNSS信号的主码相位,该捕获在用于该多个GNSS卫星的多个主码历元的一组时间间隔上产生一组相关值,使得对于每个时间间隔,存在多个相关值,这些相关值指定从多个GNSS卫星捕获的主码相位。在本说明书的上下文中,码相位表示检测到的码序列的开始(例如,接收到的GNSS信号中检测到的码序列的历元的开始)与预期的(或本地参考)码序列的开始(例如,本地生成的码序列的历元的开始)之间的时间差。然后在操作203中,在该组时间间隔中的每个时间间隔内,GNSS接收机可以评估时间间隔之一中的多个相关值,以确定从该时间间隔中的多个相关值导出的值的图案,该图案将多个相关值的总和最大化。在操作205中,GNSS接收机可以基于已经为其捕获主码相位的多个GNSS卫星确定与已经捕获的主码相位相关联的次级码的预期相位反转序列,该预期相位反转序列是在该组时间间隔上确定的。在操作207中,GNSS接收机可以将用于时间间隔之一的每个确定的值图案与用于次级码的预期相位反转序列进行比较。操作207中的这种比较可以允许GNSS接收机在操作209中确定次级码的一个或多个码相位。在一个实施例中,该比较通过考虑从不同GNSS卫星接收的GNSS信号之间的相对延迟信息来确定次级码的多个码相位,并且该比较并发地为所有不同的GNSS卫星一起确定次级码的多个码相位。
在一个实施例中,图4中的方法可以确定该组间隔是否足够大以至于能够提供对次级码的一个或多个码相位的可靠确定。在一个实施例中,主码相位是用离散傅立叶变换或硬件相关器捕获的。按照图4中所示的方法,GNSS接收机还可以在已针对接收到的GNSS信号之一的分量确定主码相位和相关联的次级码相位之后对接收到的GNSS信号的分量中的至少一个执行跟踪操作,并基于来自跟踪操作的一个或多个输出确定一个或多个位置解。关于图4中的方法的更多细节,除其它位置外,在附录中包括短语“跨SV集合(ensemble)相关积分方法”的标题下提供。
现在将参考图5描述用于捕获L5 GNSS信号中的次级码的次级码相位的另一种方法。图5中所示的方法可以使用关于第一次级码的次级码相位测量的数据来对第二次级码(不同于第一次级码)的次级码捕获过程的相关进行调整。这种方法可以被称为“移植(transfer)”方法,并且它可以提供快速的结果(常常比本文描述的其它次级码相位捕获方法更快)。在图5中的操作251中,GNSS接收机确定从第一GNSS SV接收到的GNSS信号的次级码相位。然后在操作253处,GNSS接收机确定从第一GNSS卫星接收到的GNSS信号的所确定的次级码相位与从不同于第一GNSS卫星的第二GNSS卫星接收到的GNSS信号的预测次级码相位之间的差异。然后,GNSS接收机可以在操作255中基于在操作253中确定的差异来校正预测的次级码相位。例如,如果该差异指示预测的次级码相位在时间上提早了,那么校正可以通过使得在时间上不那么早来调整预测的次级码相位。这允许GNSS接收机使用来自一些GNSS SV的强信号(例如,无阻挡信号)来校正来自其它GNSS SV的其它(例如,较弱的)GNSS信号的预测的次级码相位。一个实施例中的方法还可以包括以下操作:确定从其它GNSS卫星接收的其它GNSS信号的附加次级码相位;确定所确定的附加次级码相位与预测的次级码相位之间的附加差异;以及基于确定的差异和附加差异来校正预测的次级码相位。在一个实施例中,校正基于所确定的差异和附加差异中的最高似然差异。在一个实施例中,校正可以包括:(1)将所确定的差异与次级码的历元的时间上的码长度的一小部分进行比较,以及(2)(a)如果所确定的差异小于该一小部分,那么将时间上的码长度加到所确定的差异并在码长度的毫秒数的可能值范围内回绕该加法的结果,或者(b)如果所确定的差异大于该一小部分,那么从所确定的差异中减去时间上的码长度并在码长度的毫秒数的可能值范围内回绕该减法的结果。在一个实施例中,该方法还可以包括以下操作:使用用于第二GNSS卫星的经校正的次级码相位从从第二GNSS卫星接收到的GNSS信号中擦除次级码,以允许对来自第二GNSS卫星的主码进行相干积分。使用图5中的方法的GNSS接收机可以在校正预测的次级码相位之前从包括第一GNSS卫星但不包括第二GNSS卫星的多个GNSS卫星确定用于GNSS接收机的位置解。关于图5中的方法的更多细节,除其它位置外,在附录中包括短语“预测次级码相位的移植方法”标题下提供。
现在将参考图6描述用于捕获L5 GNSS信号中的次级码的次级码相位的另一种方法。图6中所示的方法可以使用可以被称为相干差分法的方法来确定次级码相位。这种方法在附录中进一步描述(例如,参见包括短语:“相干差分法”的标题下的部分)。这种方法的优点是在很大程度上避免了在捕获次级码相位时搜索载波频率的要求。在图301中的操作301中,GNSS接收机从GNSS SV接收包含一个或多个主码和一个或多个次级码的GNSS信号。然后在操作303中,GNSS接收机使用接收到的GNSS信号通过确定接收到的信号与参考码之间的码相位来捕获主伪随机码,并生成第一组相关输出,第一组相关输出包括一个或多个次级码的一组一个或多个次级码相关周期。该第一组相关输出通常是数据的序列,每个元素在主伪随机码的每个周期产生一次;特别是对于L5频带,速率为每毫秒一次。每个这样的输出通常由次级码进一步调制。为了避免混淆,在下面的讨论中,附加的相关输出集合是指由数据的样本与本地生成的次级码数据之间的互相关操作产生的输出集合,其中输出集合包含用于不同假设样本延迟的集合的相关值(样本在L5示例中以1毫秒为增量)。因此,在示例性实施例中,如果次级码长度为100,那么以下讨论的第二或第三组相关输出的尺寸可以是100。第二或第三相关输出有时被称为互相关“函数”或“相关函数”。在操作305中,GNSS接收机基于GNSS接收机视野内的SV随时间本地生成一组一个或多个预期的次级码序列。在操作307中,由GNSS接收机使用该组预期的次级码序列基于该组一个或多个预期的次级码序列来计算差分次级码序列。在操作309处,GNSS接收机基于第一相关输出和第一相关输出中的每一个的复共轭计算一组差分相关样本。然后在操作311中,GNSS接收机根据该组差分相关样本和差分次级码序列计算相关函数以提供一组第二相关输出。使用该组第二相关输出,GNSS接收机在操作313中确定一个或多个次级码的一个或多个码相位。在一个实施例中,差分次级码序列是基于预期的次级码序列(例如,在当前时间考虑到GNSS接收机来自GNSS的预期的次级码中的预期相位改变序列)与预期的次级码序列的延迟版本的乘积计算的;该延迟版本可以延迟一个或多个主码历元的一小部分,或者延迟次级码中的一个或多个位的持续时间。在一个实施例中,基于第一相关输出与第一相关输出的复共轭的延迟版本的乘积来计算差分相关样本。在一个实施例中,延迟被设置为与在差分次级码序列中使用的延迟对应。例如,差分相关样本集的一个样本的延迟(例如,1毫秒的延迟)与次级码序列的一个样本的延迟对应。以这种方式,当相位适当对即时,以这种方式差分构造的新样本集和码序列将具有相同的码相位序列。这种对准是通过在差分相关样本和差分码相位序列上形成的后续相关过程来执行的。在一个实施例中,第一相关输出提供包括实部数据和虚部数据的复数据,并且复共轭对虚部数据进行操作。在一个实施例中,操作311中的相关在多个次级码历元上执行并且可以用一个或多个离散傅立叶变换来执行。在一个实施例中,一组第二相关输出包括峰的实部的值,并且次级码相位由实部的绝对值确定。在一个实施例中,次级码相位是根据第二相关输出的幅值确定的。在一个实施例中,操作311中的相关是该组差分相关样本与差分次级码序列的循环互相关。在一个实施例中,操作311中的相关可以包括以下操作:计算该组差分相关样本的离散傅立叶变换以产生第一组结果;计算差分次级码序列的离散傅立叶变换以产生第二组结果;将第一组结果乘以第二组结果的复共轭以产生第一乘积;以及计算第一乘积的离散傅立叶逆变换。
在一个实施例中,根据图6的方法可以包括进一步相关,其中基于所确定的本地生成的该组一个或多个预期的次级码序列,将不同一组差分相关样本与进一步延迟的差分次级码相关,以提供可以被用于检查该组第二相关输出的第三组相关输出。该不同一组样本可以例如通过在形成第一相关输出和它的延迟版本的乘积时利用不同的延迟来形成。在另一个实施例中,第二组相关输出被加到第三组相关输出以提供具有改进的保真度的相关输出函数。在一个实施例中,第二相关输出和第三相关输出被相干地相加,并且检查单独的实部和虚部以确定次级码相位,或者检查第三相关输出的量值或量值平方以确定次级码相位。图8AAA的中间部分中示出了这个操作的示例(对于Galileo SV码1次级码1)。在另一个实施例中,将第二相关输出和第三相关输出的量值相加。图8BBB的中间部分示出了这个操作的示例。在又一个实施例中,将第二相关输出和第三相关输出的量值的平方相加。这些图的最右侧部分还示出了包括第四相关输出和第五相关输出时的结果。注意到通过组合多个输出改进了输出SNR。量值或量值平方的相加(非相干相加),而不是分量的相干相加,减少了存在大载波频率误差时出现的损耗。曲线图8AAA假设零频率误差,以便示出在小频率误差条件下执行相干组合时的改进。对于较大的误差,相干组合可以提供较少的性能改进或者甚至降低性能。这与受频率误差影响很小的非相干组合形成对比。然而,当频率误差小时,相干组合产生更好的性能。在这些利用第二相关输出和第三相关输出的组合的实施例中,第三相关输出计算对差分次级码和差分相关样本使用延迟,这些延迟彼此对应并且与用于形成第二组相关输出的延迟不同。例如,第二组相关输出可以使用一个样本时间的延迟来构造差分样本和差分次级码,而第三组相关输出可以使用2个样本时间的延迟。图10B示出了使用基于图6中所示的方法的方法使用不同延迟的示例。在其它实施例中,可以采用附加的延迟来形成相关输出的附加组,这些输出可以以与上述类似的方式相干地或非相干地相加在一起。通过构造这些附加组,经组合的相关输出的保真度从信噪比的角度以及减少所谓的相关旁瓣方面(相关旁瓣可能掩盖最大相关峰的位置并因此提供不正确的次级相位确定结果)都得到改进。可以选择特定的延迟集合以最小化所产生的相关旁瓣,而对于该集合中的延迟的数量的选择将主要确定信噪比的改进。例如,仿真显示,对于1号GalileoSV,如果要使用4个延迟,每个延迟在1到8个次级码样本的范围内,那么最小化最大旁瓣的最优延迟选择是4、5、7和8,其产生8 1/3(18.4dB)的峰比最大旁瓣,而如果使用1、2、3和4,那么峰比最大旁瓣将为7.14(17dB)。
对于Galileo SV代码1示例,图8AAA和8BBB示出了每100个码元周期性出现的互相关函数。这是由于在这个示例中参考码重复了五次。因此,只需要查看此类函数的前100个输出即可确定次级码序列的同步性。在实践中(在这个示例中),不是执行5个帧与对照重复的参考的互相关,而是可以将参考的单个周期与100个差分构造的数据样本的块进行相继的互相关,然后将这些块的结果相干地相加以获得与图8AAA和图8BBB的函数的前100个输出相同的结果。这最小化计算而不会产生任何损失。这种简化显然适用于处理任何数量的样本块。
为了更加清楚,我们在这里提供示例性处理过程的简单示例,其中使用适用于L5次级码信号的1毫秒延迟的上述方法。我们还假设主相关输出的边界与次级码的边界重合(在实践中它可能达到偏离码片的一小部分)。假设主码相关输出被表示为c(t),t=0,d,..,(N-1)×d,其中N是灵敏度所需的任何数字,并且其中d是1毫秒。每个输出样本都被次级码反相,比如s(m-p),m=0,1,2,…其中p表示待确定的次级码的未知定时。然后将差分相关样本构造为b(t)=c(t)×c*(t-1),其中星号表示复共轭。这包含修改后的次级序列,我们称之为差分次级码,s(m-p)×s(m-1-p)乘以恒定相位角exp(j2fed),其中fe是频率误差并且d是1毫秒,并且其中p表示未知码相位。这是在没有附加载波的基带处。然后该过程从差分相关样本b和差分次级码c(t)×c(t-1)构造互相关函数,或更精确地说是循环互相关函数。如果选择数据的长度N等于序列长度c或是其倍数,那么这样做是最好的。使用FFT(快速傅立叶变换)可以最迅速地、几乎瞬时地完成所有偏移量处的这种互相关。在相关过程中发现的峰指示主码内次级码的相位。如上面所讨论的,延迟d可以被选择为不同的值(例如1、2、3、4、...),从而产生不同的、几乎独立的输出序列,这些序列可以以各种方式(例如,相干、非相干、假警报检查等)被组合以提高灵敏度。通过组合具有不同延迟的多个此类输出序列,这种灵敏度改进可以克服与差分相关样本的非线性构造相关联的信噪比损失。应当注意的是,差分相关样本位于基带,不存在载波,因此这种方法避免了首先确定载波频率(如果存在大载波频率不确定性并且期望高灵敏度,那么确定载波频率是个困难的过程)的需要。
本公开的另一方面涉及生成合成的即时相关输出,其可以被用于为锁相环中的鉴别器生成误差信号,该锁相环在GNSS接收机中用于跟踪并锁定到在接收机处接收到的GNSS信号的载波相位。在一个实施例中,在跟踪模式期间,不为GNSS接收机中的相关生成本地即时码,并且在GNSS接收机中的相关器中不创建或使用一组即时相关输出;更确切地说,根据这个方面,GNSS接收机根据来自硬件相关器或离散傅立叶变换的提前或滞后(或提前和滞后)相关输出来合成合成的即时相关输出。图7示出了根据这个实施例的方法的示例,并且附录(例如,在标题为“跟踪”的部分中)也提供了这个方面的示例。在图7的操作351中,GNSS接收机生成具有样本时钟频率的样本时钟。在操作353中,GNSS接收机生成一组相关输出,其包括处于样本时钟频率的一组提前相关输出和/或处于样本时钟频率的一组滞后相关输出。然后,在操作355中,GNSS接收机可以从以下至少一项合成一组即时相关输出:(a)该组提前相关输出,或(b)该组滞后相关输出。然后,在GNSS接收机中的跟踪模式期间,可以使用合成的该组即时相关输出来控制或调整GNSS接收机中的控制回路(诸如试图锁定到GNSS信号的载波相位的锁相环)。例如,如操作357中所示,合成的即时相关输出可以被用于生成误差信号,以供鉴别器调整载波锁相环以锁定到GNSS信号的载波相位。如本领域中已知的,鉴别器是锁相环(PLL)中的组件,它调整PLL的输出,使其保持锁定到接收到的信号的确定的相位,并且鉴别器使用误差信号来对PLL的输出进行调整。
在一个实施例中,合成的该组即时相关输出可以被用于估计信号功率以归一化延迟锁定环的鉴别器。在一个实施例中,GNSS信号的连续提前和滞后相关输出的样本之间的时间间距是小于GNSS信号中的一码片的单个样本时钟分隔,并且样本时钟频率可以小于10.23MHz的L5码片速率的3倍。在一个实施例中,该间距是缩窄代码延迟,其减少多径误差同时将样本频率时钟频率维持在小于10.23MHz的L5码片速率的4倍。在一个实施例中,该组提前相关输出是一组超提前相关输出,并且其中,如果GNSS信号强,那么通过将该组超提前相关输出乘以大于1的因子来合成该组合成的即时相关输出。在一个实施例中,该合成包括计算比例因子与提前和滞后相关输出之和的乘积;针对每个合成的即时相关输出,可以计算比例因子以产生合成的即时相关输出,该合成的即时相关输出具有与当提前和滞后相关输出平衡时的真实即时相关输出相同的幅值。在一个实施例中,该组提前相关输出包括超提前相关输出以及提前相关输出,而该组滞后相关输出包括超滞后相关输出以及滞后相关输出,并且其中该合成包括:对于每个合成的即时相关输出,将超提前相关输出、提前相关输出、滞后相关输出和超滞后相关输出求平均。在一个实施例中,该组提前相关输出包括一组超提前相关输出和提前相关输出,并且该合成包括:对于每个合成的即时相关输出,将超提前相关输出和提前相关输出求平均。
在一个实施例中,针对GNSS信号的C信道中的Altboc格式化的信号合成一组即时相关输出,并且该组即时相关输出使用相关之间的已知的预定相位偏移量,这些相位偏移量超出Altoboc相关的主峰。主峰之外可以有一个或多个次级峰,它们具有与主峰不同的相位。
在一个实施例中,合成的一组即时相关输出可以被用于调整载波锁相环,并且用于载波锁相环的载波相位是用来自对多个相关求平均的合成的即时相关的误差信号生成的,以便产生如下载波相位估计,与提前和滞后相关器之间的相关器处的多径相比,该载波相位估计具有减少的载波多径。这种求平均倾向于有利于较早的相关,以便产生具有比在提前相关器和滞后相关器之间的相关器处的多径更小的载波多径的载波相位估计。
次级码相位确定的另外的方面
如上所述,可以并发地或依次使用次级码相位确定的不同方法。现在将进一步描述这个方面。
已经提出了次级码相位确定的两组方法。称为单SV方法的第一组是直方图方法(参见例如图2)和相干FFT方法(参见例如图3)和差分相干方法(参见例如图6)。在第一组的方法中每个SV被独立处理。相干FFT可以被概括为偏移量N,其中N=0,1,2,3,4直到M-1,其中M是次级码序列中的点数。第二组方法是移植法(参见例如图5)和交叉SV法(参见例如图4)。这些方法跨卫星而混合信息(使用多个SV)以及在一个实施例中依赖于与接收机位置和时间相关的附加信息。用于这些方法的标签(例如,用于图2中方法的“直方图”)被用作参考本文描述的方法的简写方式,并且不旨在限制如何使用该方法或如何解释权利要求(例如,针对图2方法的权利要求不要求直方图,除非权利要求明确包括“直方图”一词)。
第一组的优点是每个卫星的次级码相位是独立于其它卫星获得的,仅基于其输入相关序列。码相位、多普勒、次级码和时间标签的最终原子组合提供了精细时间信息,因此次级码相可以根据基于载波多普勒的预期的码相位改变而在时间上向前传播,这通过将载波周期与码片相关联的比例因子提供了码相位斜率。这种传播可以用在在初始次级码相位捕获之后中断了次级码相位测量的实施例中。这种测量可以在时间上向前传播,直到传播的码相位的不确定性增长到超过1毫秒(即,次级码序列中一个历元的长度)的1/2。而且,卫星的跟踪意味着可以连续重新锚定次级码,即使码相位回绕过了毫秒边界,并且或者高一毫秒或者低一毫秒,具体取决于码相位的方向。穿越0的减小的码相位意味着次级码相位减少一,而穿越毫秒的末尾的增加的码相位意味着次级码相位增加一。
单个SV确定的次级码相位数据(例如,根据图2、3或6中的方法之一)还提供亚毫秒和超毫秒定时信息:码相位提供小于一毫秒的精细时间信息,并且次级码相位提供多于一毫秒直到导频次级序列长度的粗糙时间信息。
多个SV组的次级码相位确定方法是交叉SV方法(例如,参见图4)和移植方法(例如,参见图5)。这些方法组合多个卫星的相关时间序列信息,并且它们还依赖于附加信息:接收机位置和时间估计,以及在估计的接收机时间处的卫星位置估计。移植方法通过接收机位置和时间估计使用来自一个或多个卫星的单个SV确定的次级码相位,以预测尚未确定其定时信息的卫星的次级码相位。即使接收机时间不确定性远大于从单SV方法获得的时间信息,它也可以做到这一点。这是因为它只需要识别接收机时间误差的模导频长度部分(modulo pilot length portion)。大于导频长度的时间误差对所预测的次级码相位只有二阶影响。
交叉SV方法以与移植方法相似的相同位置和定时信息开始,但不要求第一单个SV估计。交叉SV方法的目的是组合多个卫星的相关时间序列,以相对于单一SV概率来提高整体检测概率。它通过将基于接收机时间和位置估计的一组卫星的预期次级码相位与相关时间序列相关联来实现这一点,这是以产生比使用单个SV实现的SNR更高的SNR的方式来进行的。
基于给定的接收机周内时(tow)和位置的每个卫星的预测次级码相位(scStart)是传输时间(以毫秒为单位)处的卫星周内时除以导频次级码的长度(以下等式中的“length”)的余数的整数部分。公式总结如下:
注意:基于在传输时间或接收时间求解的二元性,该问题也可以等效地在接收时间提出。在此,我们选择传输时间。
传输时的周内时(towT)是接收机周内时减去从卫星到接收机的传播:
towT(秒)=接收时的接收机周内时–以秒为单位的伪距
其中以秒为单位的伪距=以米为单位的伪距/光速
以毫秒为单位的卫星周内时为:
towTInt=integer(towT*1000)
预测的次级码相位是除以导频长度的余数:
scPhase=remainder(towTInt/导频码长度)
这表示在接收时的接收机周内时处次级码的相位。下一个历元处的相位将递增一个次级码码片。序列发生时的下一个开始,scStart,以模时间出现:
scStart=length–(scPhase+1)
将towTRemainder定义为传输时的毫秒周内时(towT)的亚毫秒部分:
towTRemainder=(towT*1000)–towTInt
其中towTRemainder是从0到1毫秒的毫秒小数
基于接收机时间和位置的以米为单位的伪距为:
伪距=几何距离+卫星时钟偏差-接收机时钟偏差+空间中的误差
将接收机时钟偏差为零的伪距估计定义为:
pseudorange0=几何距离+卫星时钟偏差+空间中的误差
当执行移植方法时,所有具有单个SV次级码相位估计的卫星也具有主码相位估计。假设接收机位置误差小于+/-1/2毫秒(或大约150公里),那么接收机时钟可以被估计为测得的码相位减去接收机时钟为零的伪距的亚毫秒部分的残差。
接收机时钟偏差(i)=测得的码相位(i)–remainder
(pseudorange0(i)/299792.458m)
每个偏差(i)估计被回绕在+/-0.5*光速*0.001米内。
如果有多于一个卫星可用,那么该偏差是所有偏差的平均值。现在接收机偏差估计是可用的,可以比较测得的与预测的次级码相位以了解接收机毫秒时间误差。将offset(i)定义为接收机时间误差的一部分,该部分是导频次级码序列长度的模。
Offset(i)=测得的次级码相位(i)–scStart(i)
最佳Offset(i)是从具有最一致Offset(i)的最大卫星组中确定的。
通过用偏移量校正预测的scStart来找到没有时间误差的经校正的scStart。
scStartCorr(i)=scStart(i)–offset(i)
注意的是,如果单个SV次级码相位估计只能从具有20毫秒导频的GPS卫星获得,那么只能为GPS卫星预测次级码相scStart(i),而不能为具有更长导频序列的Galileo和BDS卫星预测。
在为预测的次级码相scStart(i)指派置信度时,必须考虑余数项(towTRemainder)。如果该余数非常接近于零或非常接近于一,那么置信度较低。位置估计的误差影响scStart的准确性:随着位置误差增加,预测的伪距的误差也增加,这影响传输时间估计,进而影响预测的次级码相位估计。
位置不确定性(也称为位置误差标准偏差,或位置西格玛(sigmaPos))通过从米转换成毫秒而转换成毫秒时间不确定性阈值,如下所示:
sigmaMsec=sigmaPos/光速/1000
然后scStart的置信度被指派如下;
if(towTRemainder<sigmaMsec)
次级码scStart是低置信度.
形成两个估计:scStart0和scStart1=scStart1+1
Else if(towTRemainder>(1-sigmaMsec))
次级码scStart是低置信度
形成两个估计:scStart0和scStart1=scStart0-1
Else
次级码scStart是高置信度
维护预测的次级码相位(scStart)以启用连续移植方法
移植方法(例如,参见图5和与图5相关联的描述)从一个或多个卫星取得测得的scStart并预测其余卫星的scStart。它在测得次级码相位的时间处是适用的。只要卫星被周期性地跟踪,这些测量结果就也可以在时间上向前传播。码相位、多普勒和时间标签与测得的次级码相位相关联。码相位根据标准公式在时间上向前传播
Codephase(t1)=codephase(t0)+Doppler*(-1/wavelength)*(t2–t1)
如果传播的码相位变得大于1毫秒的范围,那么这是上滚情况,并且scStart递增1毫秒,并且从码相位中移除1毫秒的范围。相反,如果传播的码相位变得小于零,那么这是下滚情况,并且scStart递减1毫秒,并且码相位增加1毫秒的范围。以这种方式,可以递归地维护码相位,其中新时间t1变为先前时间t0。
传播次级码相位是降低功耗的一种方式,因为一般一旦达到次级码相位,预测的次级码位就被应用于相关过程,并且仍然包含次级码调制的相关流是不被观察的。因此,继续测量次级码相位要求附加一组相关器,或者在次级码位改变的主历元之前和之后维护相关的部分和,附加的寄存器被用于保存该部分和。因此,传播使替代方法能够在不进行重新测量的情况下维持次级码相位(因此对于次级码相位测量,可能不需要该附加一组相关器)。
注意的是,即使在定位之后也可以使用这些传播的次级码相位测量来预测剩余卫星的次级码相位。
当精细时间可用时的移植方法
一旦开始跟踪,就有可能解码与导频信道相位正交的数据信道上的导航数据流。数据信道码元与导频信道次级码相序列同步。数据信道在每个数据码元内也有自己的次级码相位序列。必须移除这个序列以产生数据码元。幸运的是,可以容易地从导频次级码序列中确定数据信道次级码序列的开始。采用与数据码元在时间上对准的块相位估计器来估计导频载波相位,导频载波相位从数据信道载波相位中被移除以产生数据码元。这些解码后的数据码元根据接口控制文档被处理以产生导航消息,该消息在数据帧的第一位的传输时间处包括时间戳。接收时间是通过将该时间戳传播一传输时间而获得的,传输时间可以与接收到该第一位的接收机时间相关联。这个过程是众所周知的。这种过程允许估计和校正接收机中的超毫秒时间误差。此时,不再需要移植方法,因为可以直接估计估计的scPhase和scStart而无需用测得的次级码相位进行校正。然而,即使有近乎完美的时间和位置估计,预测的次级码相位仍然会存在模糊性。随着位置和定时误差减小,模糊性的出现变得罕见。随着位置和时间误差增加,其出现也增加。
注意的是,当超毫秒时间误差减小到零时,即,当实现精细时间时,使用移植方法计算的偏移量应当为零,从而提供时间已被正确设置的置信度。
关于模糊性的观察
当余数项接近零或接近一时,观察到会发生(预测的次级码相位中的)模糊性。一般而言,当预测的伪距接近整数毫秒时,会发生这种情况。
这里是卫星的集合的示例,其中***时间误差为一毫秒。示出了三个GNSS***。预测的scStart在列scStart0中示出。测得的值在“meas”列中。除了BDS 29以外,所有SV的偏移量都是1,由于模糊性接近零,因此BDS 29偏移2。接收机位置误差小。分析示出,模糊性是由于卫星与用于这个卫星的接收机之间的时钟偏差几乎完全相同而造成的。
/>
置信度的第一个结果是具有低置信度的测得的单个SV不能被用作针对偏移确定的测量结果,除非它被另一个更高置信度的测量结果证实。第二个结果是scStart有模糊性,并且卫星被强迫用单SV方法之一来确定次级码相位,或者使用估计结果但有附加的两阶段初始化。基线估计被标注为scStart0,并且第二估计scStart1是基于余数形成的。如果余数接近零,那么第二次级码相位估计被取为scStart0减1(并且如果计算出的估计为零,则被回绕为N-1,其中N是次级码长度)。如果余数接近一,那么第二次级码相位估计取为scStart0加一(并且如果估计的次级码相位为N-1,则被回绕到0,其中N是次级码长度)。
可以在20和100毫秒之间的一时间序列的相关上测试这两个候选。正确的一个应当比不正确的一个具有显著更高的相干积分。
作为来自单SV方法的另一个信息增益,如果单SV方法使用DFT方法而通过并产生可信的频率误差估计,那么时钟漂移可以用来自主码确定结果的经校正的多普勒候选来估计。将漂移定义为接收机时钟偏差的时间改变率(以米/秒为单位)。
距离速率=d/dt地理距离+卫星漂移–接收机漂移
预测的距离速率0=d/dt几何距离+卫星漂移
DriftEstimate(i)=以Hz为单位的测得的Doppler(i)*(-波长(m))–预测的距离速率0
如果有多于一个卫星可用,那么该漂移是所有DriftEstimate(i)的平均值,成为最终的全局漂移估计driftEstimate:
Doppler(i)=d/dt几何距离+卫星漂移+driftEstimate
对于处于确定次级码状态的卫星(即,没有完成单SV方法的卫星,一般是因为信号强度弱),立即采用这种预测的多普勒。搜索候选多普勒被该估计的Doppler(i)取代,并且卫星进入到跟踪状态。
不管多普勒候选如何通过单个SV频率误差估计进行校正,稳态跟踪方法都将通过将估计的次级码序列应用于相关时间序列来移除次级码相位。在开始常规的闭环或开环跟踪之前,可以将常规的DFT方法应用于相关时间序列,并移除次级码相位以移除估计的多普勒中的任何剩余多普勒误差。例如,DFT可以应用于20个一毫秒相关的序列,以执行范围为+/-500hz的频率误差估计。分辨率将是1000Hz/20=50Hz,最大为25hz。插值可以将频率误差降低到25Hz以下,这是初始化50Hz PLL或AFC载波跟踪环所需的。可替代地,对64点FFT进行零填充可以将频率分辨率降低到1000/64=28Hz,最大误差为14Hz。
组合的次级码方法示例
图10A示出了使用本文描述的次级码相位确定方法的组合(例如,图2、3、4、5和6中所示方法中的两种或更多种方法的组合)的一般方法的示例。图10A中的方法可以使用此类方法的特定预定序列(例如,基于来自GNSS SV的(一个或多个)信号的解码的时间,根据图2或图6的方法,然后是根据图5的方法,然后是根据图5的另一种方法)。在图10A的初始操作中,GNSS接收机可以用单个SV(例如,使用基于图2、3或6中所示的方法之一的方法)或多个SV(例如,使用基于图4或5中所示的方法之一的方法)来测量次级码相位。接下来在图10A中所示的方法中,GNSS接收机可以使用基于图5的方法,使用可用的粗略时间和GNSS接收机的估计位置来获得用于一组剩余SV(尚未为其捕获次级码相位)的预测的次级码相位。接下来在图10A中的方法中,GNSS接收机可以解码从GNSS SV接收到的卫星时间消息(指示卫星时间),然后估计GNSS接收机处的精细时间(使用本领域中已知的技术);在一个实施例中,精细时间具有小于0.5毫秒的期望不确定性。此时,利用估计的精细时间,GNSS接收机可以转变到基于图5中的方法的移植方法,其中偏移量=0,以预测尚未为其成功捕获次级码相位的卫星的次级码相位。到偏移量=0的转变可以允许GNSS接收机将其时间估计设置为高置信度水平,并且可以开始使用已成功捕获其次级码相位的所有主码来进行跟踪。
捕获(ACQ)
以下描述包括由GNSS接收机执行并在图10B中示出的方法。图10B中所示的方法可以使用单SV方法(例如,图6中所示的差分相干方法或直方图方法)连同移植方法(参见例如图5)。例如,单SV方法可以使用基于图6的方法,然后使用移植方法,而差分相干方法可以以不同的偏移量随时间重复,之后使用移植方法,以完成次级码相位的捕获。在另一个实施例中,该方法可以从直方图方法开始,然后是基于图6的方法(并且可以用不同的延迟来重复基于图6的方法,例如偏移量为1个延迟,然后偏移量为2个延迟),并且然后可以使用直方图方法来完成没有从先前方法中捕获次级码相位的任何SV的次级相位捕获过程。
捕获从使用频域相关(FDC)的主码搜索开始。在一个实施例中,对于短的非相干积分(诸如20毫秒),这种方法以大至500Hz的频率步长高效地搜索整个PN码范围(1毫秒),而频率步长低至200Hz被用于较长的非相干积分(诸如1秒)。通常,搜索+/-1PPM的范围。在L5处,1PPM约为1192Hz,因此对于每个SV,搜索区间数是合理的:对于500Hz步长是5个,并且对于200Hz步长是13个。以短积分时间快速搜索频率不确定性的完整范围,以识别用于强信号的sinX/X频率响应的主瓣。将所***和频率搜索中具有最佳SNR=10*log10((peakAmplitude2–noiseAmplitudeAvg2)/noiseAmplitudeVariance)的非相干幅值总和与16dB的检测阈值进行比较,以测试信号搜寻。如果未找到信号,那么增加积分时间以改进灵敏度。
检测产生主码相位以及多普勒候选(其在捕获期间相干传播),该多普勒候选以搜索的开始为参考。在足够的硬件(HW)搜索能力的情况下,短搜索可以与较长搜索并行操作,以避免更敏感的较长积分发现声明在sinX/X频率响应的旁瓣上发现了信号的情况。旁瓣至少高出13dB并且应当通过更快的搜索快速找到。在真实信号被阻塞且频率搜索大于相干搜索带宽的情况下,即使使用全频率扫描,观测到的最强候选信号也可能位于sinX/X频率响应的主瓣之外。用于FDC的1毫秒相干积分时间的sinX/X函数的旁瓣位于+/-N kHz处,其中N=1,2,3。因此,如果频率搜索大于1kHz或频率窗口的中心的误差超过1kHz,那么频率搜索将包含旁瓣。
由于以下两个条件的交互,观察到的频率搜索的峰可能不会出现在真实频率处:第一,次级码双相调制可能发生在主码的每个历元,第二,用于所有SV的主码相位在FDC中使用的毫秒样本数据范围内是均匀分布的。对于距毫秒的开始1/4偏移量的码相位历元,一半的功率在次级码转变处损失,从而导致相关幅值的调制。但是频率误差提供了在毫秒相关上改变相关的符号(sign)的自由度,有效地取消了由次级码改变所造成的旋转,使得产生的相关能量在频率误差下更高。+/-250Hz和+/-500Hz的频率偏移量是常见的,具体取决于主码历元和毫秒的距离,具体取决于FDC中使用的分量的数量以及转变有多频繁。
频率精细化
这些频率偏移量使次级码相位捕获复杂化。码相位和毫秒的更好对准将减少次级码改变时的能量损失。因此,时域相关方法(TDC)能够从四个毫秒样本流之一中选择,每个样本流处于增加的偏移量,从FDC中使用的毫秒时基开始以四分之一量化。在一个实施例中,GNSS接收机的***固件可以选择偏移量以最小化主码相位历元与所选择的毫秒的末尾之间的时间偏移量。使用这种改进的相位调整,使用TDC相关器的小集合来执行次级频率,这些相关器以来自主码搜索的码相位和多普勒候选为中心。时域相关方法(TDC)非常适合这个目的:由1/2码片分隔的一组20个码相位被用于对一时段进行积分,类似于用于获得候选的积分。
在每个码抽头(code tap)处形成类似的非相干一毫秒幅值和。以+/-250Hz和+/-500Hz的步长在候选多普勒周围搜索频率。这种频率搜索将进一步减少与多普勒候选相关联的频率误差。频率信息的插值也可以被用于在开始次级码相位确定之前进一步最小化频率误差。这个过程减少了频率误差,但并未消除在次级码相位确定过程中处置频率误差的需要。作为旁瓣搜索(其是对至少高出13dB的信号的搜索),使用类似的方法,例如搜索+/-750Hz、+/-1000Hz,但积分持续时间按照将产生13dB处理增益的一因子变小。如果在200毫秒积分时发现信号,那么旁瓣搜索将是求解这个方程的积分时间T,假设积分时间每次加倍处理增益为1.5dB的最坏情况下,13dB=1.5db*log2(200毫秒/T)。T=200/2(13/1.5)(毫秒)=0.0049毫秒。即使是1毫秒的积分也足以找到200毫秒检测到的信号的主瓣。对于一秒,需要不到3毫秒。
次级码捕获状态
次级码相位以主码相位和已确定的多普勒候选开始。对于较弱的信号,在一个实施例中,有必要观察导频次级码序列的多次重复。在这种情况下,有必要能够在这个时段期间跟踪码相位以避免丢失信号,并为次级码相确定过程提供包含该信号的相关数据。跟踪对于避免与候选信号的多普勒误差相关联的传播误差是必要的。例如,对于500Hz误差,码多普勒将使得候选信号在通过求解(29.3/2m=500Hz/115cycles/chip*29.3m/chip*dt),dt=0.115秒找到的时间内移动11/2码片样本。这意味着信号将在大约100毫秒内因按照错误的多普勒传播而丢失。一种解决方案是使用2或3个以码相位估计为中心的相关器形成延迟锁定回路以跟踪信号。因为相关器由于具有未知相位的次级码而改变符号,所以较长的相干相关要求更加小心并且是有问题的。具有一个码片分隔的提前相关器减去滞后相关器的非相干和允许围绕即时相关器进行可接受的跟踪,该即时相关器被用于向次级码相位估计提供一毫秒相关。另一种解决方案是一组相关器。在具有1/2码片间距的一组20个码相位抽头中,候选码相位在中心,范围约为150m,并且可以包含具有500Hz频率误差的传播信号,比上述单个相关器情况高约10倍:1.15秒。在这种情况下,最强的码抽头必须被识别并用于为次级码确定提供一毫秒的相关。
次级码确定方法
作为次级码相位确定的总结,提出的方法分为两组:第一组包含单SV方法,第二组包含多SV方法。单SV方法可以以如下方式联合使用,该方式被优化为用最少的计算量快速找到具有较低频率误差的最强信号,同时处置较弱的信号和最大可能的频率误差。
直方图
直方图方法(例如,参见图2中的方法)对于较短的次级码长度(诸如对于GPS L5)工作快速,中频误差范围为+/-250Hz。这种直方图方法是在形成复数相关器(real,imag)从毫秒到毫秒的相位改变的余弦为real(k)*real(k-1)+imag(k)*imag(k-1)之后用整数计算来实现的。这种直方图方法的灵敏度不如图6中基于DFT的方法,但具有允许连续积分到直方图中以逐步提高灵敏度的优点,但代价是增加了计算复杂性或存储器使用量。
如果这种直方图方法通过(成功地捕获次级码相位),那么假设频率误差足够小以至于它能够在开始跟踪(次级码被移除)之前的步骤中被确定。然后次级码相位捕获过程被终止。
使用差分相干方法的偏移量-1
基于DFT的偏移量-1方法(使用差分相干方法,诸如基于图6的方法)为较长的代码提供了灵敏度改进,并且对高达+/-500Hz的频率误差不敏感。它要求3个DFT,一个用于输入单个历元相关时间序列,一个用于次级码序列,以及用于两个谱的复数乘积的一个逆DFT(其是输入和次级码序列的循环相关)。将量值定义为逆DFT结果的每一项的包络,即,每个点处的实部和虚部的平方和的平方根。
如果这个偏移量-1方法通过,意味着峰SNR通过阈值,那么将估计的次级码相位应用于输入历元相关时间序列,并且具有检测后插值的DFT被用于识别输入序列的频率误差。然后终止次级码相位捕获过程。
偏移量-2
如果偏移量-1方法没有通过(例如,偏移量-1方法没有成功捕获次级码相位),那么重复DFT偏移量方法(例如,基于图6的方法)但利用偏移量-2,因为它与偏移量-1具有不同的本底噪声。如果这种方法通过,那么将估计的次级码相应用于输入历元相关时间序列,并且具有检测后插值的DFT被用于识别输入序列的频率误差。该过程然后终止。
偏移量1-2相同的峰
如果偏移量-1和偏移量-2方法二者都失败,但如果两种方法的最强候选相同,并且它们的SNR之和高于阈值,那么宣布通过,将估计的次级码相位应用于输入历元相关时间序列,并且具有检测后插值的DFT被用于识别输入序列的频率误差。然后终止次级码相位捕获过程。
偏移量1-2量值和
如果偏移量-1和偏移量-2方法失败,那么对它们的逆DFT量值求平均,并将峰SNR与阈值进行比较。这种方法利用自相关不同并且可以产生非相干处理增益这一事实。如果这种方法通过,意味着峰SNR通过阈值,那么将估计的次级码相位应用于输入历元相关时间序列,并且具有检测后插值的DFT被用于识别输入序列的频率误差。然后终止次级码相位捕获过程。
偏移量1-N,量值和
如果偏移量-1和偏移量-2逆DFT量值的求平均失败,那么可以计算更多的偏移量(诸如偏移量-3和偏移量-4),并将逆DFT量值与之前的偏移量-1和偏移量-2的平均值求平均。如果这种方法通过,意味着峰SNR通过阈值,那么将估计的次级码相位应用于输入历元相关时间序列,并且具有检测后插值的DFT被用于识别输入序列的频率误差。该过程然后终止。
偏移量0,所有频率
如果四个偏移量的求平均失败,那么最终对被DFT覆盖的所有频率执行偏移量0方法。注意的是,频率是作为次级码频谱的DFT的移位而获得的,随后是输入频谱和经移位的次级码频谱的复数乘积。以这种方式,每个频率只要求一个附加的DFT。频率步长是输入序列的样本频率除以DFT的区间数量=1000Hz/100=10Hz,因此频率的范围是+/-500Hz,步长为10Hz。具有更多区间的插值或零填充FFT产生更精细的步长。如果这种方法通过,意味着峰SNR通过阈值,那么该频率用处于最佳次级码相位的相邻频率内插。该过程然后终止。
全部失败,为下一批保存存储器
如果偏移量0方法失败,那么存储器将被保存,直到用于导频范围的新一组输入复相关可用。对于偏移量方法(1、2、3、4),所保存的存储器是复数延迟乘法序列,因为这些序列表示毫秒内相位改变的余弦和正弦。这允许在形成输入序列频谱之前进行相干求平均,其提供最佳处理增益。对于偏移量-0频率,逆DFT量值被保存并提供非相干处理增益。对于偏移量-1、2、3、4量值和,所保存的存储器是量值和,并且被包括在后续的量值平均值中,从而产生非相干处理增益。
带GPS的特殊情况
注意的是,大于0的偏移量可以具有比偏移量0更高的本底噪声。对于GAL和BDS的较长导频代码,由于远离峰的每个相位处的自相关序列对于每个偏移量都是不同的,因此通过对足够多的偏移量>0的量值求平均,相对于偏移量0情况来改进结果所得的本底噪声,从而使得能够求平均。对于像GPS这样的短导频代码,在一半长度处有一个峰偏移量,这是所有偏移量所共有的,它不会通过求平均而减少。结果是本底噪声高于偏移量-0本底噪声。虽然这不能被最小化,但发现明智地选择偏移量可以导致除半长偏移量之外的所有偏移量处的本底噪声降低。在一些情况下,在距离峰的一半长度处检测到第二峰,当第一峰与第二峰具有预期比率时,可以通过移除这个第二峰来降低本底噪声,从而有效地允许较低的SNR能够通过。另一种解决方案是简单地声明存在模糊性,并要求跟踪来测试两个候选并检测在应用次级码相位时哪个具有最佳相干SNR。
概括偏移量
一些偏移量组合比其它组合更好。因此,可以针对每个***针对每个次级码预先计算最佳偏移量组合并将其存储在表中。
虽然本说明书集中于GNSS SV和来自GNSS SV的GNSS信号,但本文描述的实施例也可以用于来自类似GNSS信号的地面(例如,基于地面的)发送器(诸如伪卫星(“伪-卫星”))的类似于GNSS的信号。因此,本文描述的实施例可以用在使用这样的地面发送器和接收机的***中,这些发送器和接收机被设计为从这样的地面发送器接收和处理类似GNSS的信号。短语“GNSS信号”将被理解为包括此类类似于GNSS的信号,而短语“GNSS SV”将被理解为包括此类地面发送器。
示例性实施例
下文以类似权利要求的格式呈现编号的实施例,并且应理解的是,这些实施例可以在一份或多份未来申请(诸如一份或多份延续或分案申请)中作为权利要求呈现。虽然下文详细描述了单独的实施例,但是应该认识到的是,可以部分或全部地组合或修改这些实施例。这些编号的实施例中的至少一些作为在先临时申请中的权利要求提出。对于下面列出的实施例中的一些,下面仅给出方法实施例/权利要求,但是应理解的是,这些实施例/权利要求还可以是装置的形式,诸如GNSS接收机、GNSS接收机的组件,以及存储可执行程序指令的非暂态机器可读介质,这些指令在由一个或多个处理***执行时使一个或多个处理***执行在该实施例列表和本公开的别处呈现的这些方法中的一个或多个。
实施例1.一种用于处理L5宽带频率GNSS信号的***,所述***包括:
模数转换器ADC,用于生成L5宽带GNSS频带中接收到的GNSS信号的数字表示;
基带样本存储器,用于存储接收到的GNSS信号的数字表示,基带样本存储器耦合到所述ADC;
GNSS处理***,耦合到基带样本存储器以处理接收到的GNSS信号的数字表示,GNSS处理***被配置为在不使用L1 GNSS信号捕获L5宽带GNSS信号的一个或多个GNSS信号分量的一个或多个次级码的码相位的情况下捕获L5宽带GNSS信号的所述一个或多个GNSS信号分量的所述一个或多个次级码的码相位。
实施例2.如实施例1所述的***,其中,所述***仅包括调谐到L5宽带频带中的频率的单个GNSS天线,并且其中所述***不接收且不捕获L1 GNSS信号。
实施例3.如实施例1所述的***,其中,GNSS处理***在捕获GNSS信号分量的一个或多个主码之后但在对GNSS信号分量的窄带跟踪之前捕获所述一个或多个次级码的码相位。
实施例4.如实施例3所述的***,其中,GNSS处理***在时间不确定性超过0.5毫秒时捕获所述一个或多个次级码的码相位。
实施例5.如实施例4所述的***,其中在捕获所述一个或多个次级码的码相位之前,用于当前时间的估计误差超过1毫秒。
实施例6.如实施例3所述的***,其中通过使用来自单个GNSS卫星的L5宽带GNSS信号中的多个GNSS信号分量来捕获所述一个或多个次级码中的第一次级码的码相位。
实施例7.如实施例6所述的***,其中,所述多个GNSS信号分量包括GNSS旁带A信号和GNSS旁带B信号。
实施例8.如实施例3所述的***,其中,所述一个或多个次级码中的第一次级码的码相位是通过使用来自多个GNSS卫星的多个GNSS信号来捕获的。
实施例9.如实施例8所述的***,其中,所述多个GNSS卫星包括来自以下至少之一的至少两个卫星:GNSS卫星的Galileo E5星座;或GNSS卫星的L5 GPS星座;或GNSS卫星的Glonass K2星座;或GNSS卫星的QZSS星座;或GNSS卫星的Beidou B2星座。
实施例10.如实施例4所述的***,所述***还包括:
射频(RF)接收机,其包括至少第一RF滤波器,第一RF滤波器被调谐到仅L5宽带频带中的频率以接收L5宽带GNSS信号,并且第一RF滤波器耦合到所述单个GNSS天线,并且其中所述***不使用L1 GNSS信号来确定时间信息或频率信息,并且其中所述***不跟踪L1GNSS信号。
实施例11.如实施例1所述的***,其中,GNSS处理***检测相继主码历元之间的相位改变,GNSS处理***包括锁频环FLL,所述相位改变是从GNSS处理***中的相关输出的同相结果和正交结果检测到的;并且其中GNSS处理***对从相关输出的同相结果和正交结果中检测到的相位改变求平均以产生估计的频率误差;并且其中GNSS处理***基于估计的频率误差向所述FLL的一个或多个鉴别器提供经补偿的频率,所述FLL被配置为基于所述估计的频率误差来减少接收到的L5 GNSS信号的频率估计中的误差。
实施例12.如实施例11所述的***,其中,所述FLL包括用于L5 GNSS信号的第一旁带的第一鉴别器和用于L5 GNSS信号的第二旁带的第二鉴别器,并且其中估计的频率误差是基于从相关输出的同相结果和正交结果中检测到的所述相位改变的平均值的。
实施例13.如实施例12所述的***,求平均包括:对在来自单个GNSS卫星的两个、三个或四个GNSS信号分量上检测到的相位改变求平均。
实施例14.如实施例13所述的***,其中,所述FLL检测相继主码历元之间的相位改变。
实施例15.一种操作GNSS接收机的方法,该方法包括:
捕获接收到的L5 GNSS信号的一个或多个主码;
对于接收到的L5 GNSS信号的所述一个或多个主码中的每一个主码中的接收到的主码历元之间的每个转变,确定用于每个L5GNSS信号的相位改变值,其中随时间依次确定一组相位改变值;
将所述一组相位改变值存储在数据结构中;
将数据结构中的所述一组相位改变值与一组预期的相位改变值进行比较,预期的相位改变值是从与来自一个或多个GNSS卫星的所述一个或多个主码相关联的一个或多个次级码导出的,其中这些主码和次级码进一步与唯一识别出的GNSS卫星及其信号传输相关联;
根据所述比较,确定所述一个或多个次级码的一个或多个码相位。
实施例16.如实施例15所述的方法,其中,所述方法还包括:
在已经为接收到的L5 GNSS信号之一的分量确定主码相位和相关联的次级码相位之后,对接收到的L5 GNSS信号的所述分量中的至少一个分量执行窄带跟踪操作;
基于来自所述跟踪操作的一个或多个输出,确定一个或多个位置解。
实施例17.如实施例16所述的方法,其中,每个相位改变值表示与来自传输了所述主码的GNSS卫星的主码相关联的次级码的相位改变的指示,并且其中对主码的捕获包括确定所述主码的码相位。
实施例18.如实施例17所述的方法,其中,所述方法还包括:
交叉检查所确定的来自同一GNSS卫星的L5 GNSS信号的不同信道的次级码相位。
实施例19.如实施例17所述的方法,其中所存储的一组相位改变值包括来自同一GNSS卫星的L5 GNSS信号的不同信道的不同主码的相位改变值,并且其中,所述不同信道包括A旁带上的A信道和B旁带上的B信道,并且其中,所述比较使用来自所述不同信道的相位改变值来导出被用于确定一个或多个次级码相位的比较输出。
实施例20.如实施例17所述的方法,其中,所述一组预期相位改变值是通过在数据结构中的一组索引值上跨次级码中的历元将次级码变换成相位改变值的序列而从次级码导出的。
实施例21.如实施例17所述的方法,其中,确定相位改变值包括:计算在两个连续的主码历元之间的每个转变处的值的余弦。
实施例22.如实施例17所述的方法,其中,所述方法还包括:
估计接收到的L5 GNSS信号的所述一个或多个主码的一个或多个频率。
实施例23.如实施例22所述的方法,其中,所述方法还包括使用跨一组相关器的码相位轨迹来检测跨所述一组相关器的频率误差,以及重置所述数据结构中的数据。
实施例24.如实施例22所述的方法,其中,所述方法还包括:
从随时间的鉴别器轨迹中预测码多普勒斜率,所述鉴别器轨迹是来自码跟踪环中的鉴别器的输出;
基于预测的码多普勒斜率估计频率误差;
在根据估计的频率误差确定的频率偏移量处,根据与主码相关联的相位改变值来检测次级码相位。
实施例25.如实施例22所述的方法,其中,所述方法还包括:
在距中心频率第一频率偏移量处对主码执行第一组相关操作以确定在第一频率偏移量处的相位改变值;
在距中心频率第二频率偏移量处对主码执行第二组相关操作以确定在第二频率偏移量处的相位改变值。
实施例26.如实施例17所述的方法,其中,所述方法还包括:
确定时间不确定性值,其中如果时间不确定性值小于0.5毫秒,那么结束所述方法。
实施例27.如实施例17所述的方法,其中,所述方法还包括:
确定相位改变值是否因频率误差而错误,并且如果相位改变值错误,那么重置所述数据结构。
实施例28.如实施例17所述的方法,其中,所述方法还包括:
对于所述数据结构中的相位改变值的至少子集中的每个相位改变值,基于与每个相位改变值相关联的信噪比来确定置信度值并将置信度值存储在所述数据结构中。
实施例29.如实施例17所述的方法,其中数据结构是一组直方图,来自特定GNSS卫星的L5 GNSS信号的每个信道具有至少一个直方图,其中所存储的一组相位改变值包括用于同一卫星的同一频带上的两个正交数据信号分量和导频信号分量的相位改变值,并且其中所述比较使用来自这些数据分量和导频分量的相位改变值来导出被用于确定一个或多个次级码相位的比较输出。
实施例30.一种操作GNSS接收机的方法,所述方法包括:
从包含第一组次级码和第一组主码的GNSS卫星接收GNSS信号,第一组次级码至少包括第一次级码和第二次级码,第一次级码具有以位为单位的第一长度,第二次级码具有以位为单位的第二长度,第一长度大于第二长度;
在第一相关操作中,将接收到的第一组GNSS信号与本地生成的与第一组次级码对应的次级码相干相关,第一相关操作在接收到的第一组GNSS信号的第一长度上扩展,并且第一相关操作针对可能的码相位假设的集合和频率的集合进行相干相关;
在第二相关操作中,将接收到的第二组GNSS信号与本地生成的与第一组次级码对应的次级码相干相关,第二相关操作在接收到的第二组GNSS信号的第一长度上延伸,并且第二相关操作在可能的码相位假设的集合和频率的集合上进行相干相关;
将来自第一相关操作的结果与来自第二相关操作的结果组合;
从组合的结果确定第一组次级码的一个或多个次级码相位。
实施例31.如实施例30所述的方法,其中,第一相关操作和第二相关操作使用离散傅立叶变换来执行。
实施例32.如实施例30所述的方法,其中,第一相关操作和第二相关操作是使用硬件相关器来执行的。
实施例33.如实施例30所述的方法,其中,第一组次级码包括用于来自GNSS卫星的GNSS信号的四个分量的四个次级码。
实施例34.如实施例30所述的方法,其中,第一相关操作对于第一组次级码在第一长度上是相干的,并且其中第二相关操作对于接收到的第二组GNSS信号在第一长度上是相干的,第二组GNSS信号是在接收到来自GNSS卫星的接收到的第一组GNSS信号之后从GNSS卫星接收的。
实施例35.如实施例30所述的方法,其中,所述组合将来自第一相关操作的结果与来自第二相关操作的结果非相干地积分。
实施例36.如实施例31所述的方法,其中,所述方法还包括:
对每个频率内的积分结果进行排序,以选择结果中的最高量值值。
实施例37.如实施例30所述的方法,其中,第一相关操作包括将接收到的第一组GNSS信号与本地生成的与第一组次级码对应的主码相关,并且其中第二相关操作包括将接收到的第二组GNSS信号与本地生成的第一组次级码对应的主码相关。
实施例38.如实施例35所述的方法,其中,所述组合对结果的量值进行积分,并且其中最长次级码的码相位是从积分结果确定的。
实施例39.如实施例30所述的方法,其中,频率的集合被最小步长尺寸分开,并且其中用于一个或多个信道的改进的频率估计被进一步确定。
实施例40.一种操作GNSS接收机的方法,所述方法包括:
在多个主码历元上捕获来自至少一个GNSS星座的多个GNSS卫星的多个GNSS信号的主码相位,所述捕获在用于所述多个GNSS卫星的所述多个主码历元的一组时间间隔上产生一组相关值,使得对于每个时间间隔,存在指定从所述多个GNSS卫星捕获的主码相位的多个相关值;
在所述一组时间间隔中的每个时间间隔内,评估时间间隔之一中的所述多个相关值,以确定从该时间间隔中的所述多个相关值导出的值图案,所述值图案使所述多个相关值的总和最大化;
基于已为其捕获主码相位的所述多个GNSS卫星,确定与已捕获的主码相位相关联的次级码的预期相位反转序列,该预期相位反转序列是在所述一组时间间隔上确定的;
将用于时间间隔之一的每个确定的值图案与用于次级码的预期相位反转序列进行比较;
从所述比较中确定次级码的一个或多个码相位。
实施例41.如实施例40所述的方法,其中,使用一组离散傅立叶变换来捕获主码相位。
实施例42.如实施例40所述的方法,其中,所述多个GNSS卫星来自仅一个GNSS星座。
实施例43.如实施例40所述的方法,其中,所述多个GNSS卫星来自多个GNSS星座。
实施例44.如实施例40所述的方法,其中,所述比较通过考虑从不同GNSS卫星接收到的GNSS信号的相对延迟信息来确定用于次级码的多个码相位,并且其中,所述比较并发地为所有不同的GNSS卫星一起确定用于次级码的所述多个码相位。
实施例45.如实施例40所述的方法,其中,所述方法还包括:
确定所述一组间隔是否足够大以至于能够提供对用于次级码的所述一个或多个码相位的可靠确定。
实施例46.如实施例40所述的方法,其中,所述方法还包括:
在所述一组间隔之后的下一个间隔核实所述一个或多个次级码。
实施例47.如实施例40所述的方法,其中,所述方法还包括:
在已经为接收到的GNSS信号之一的分量确定主码相位和相关联的次级码相位之后,对接收到的GNSS信号的所述分量中的至少一个分量执行跟踪操作;
基于来自跟踪操作的一个或多个输出,确定一个或多个位置解。
实施例48.一种用于在跟踪操作模式期间操作现代化GNSS接收机的方法,所述方法包括:
生成具有样本时钟频率的样本时钟;
生成一组相关输出,包括处于样本时钟频率的一组提前相关输出和处于样本时钟频率的一组滞后相关输出;
从以下各项中的至少一项合成一组即时相关输出:(a)所述一组提前相关输出,或(b)所述一组滞后相关输出。
实施例49.如实施例48所述的方法,其中,所述一组即时相关输出是在跟踪操作模式期间合成的。
实施例50.如实施例49所述的方法,其中,合成的所述一组即时相关输出被用作鉴别器的误差信号以调整载波锁相环以锁定到GNSS信号的载波相位。
实施例51.如实施例49所述的方法,其中,在跟踪模式期间在GNSS接收机中不生成本地即时码,并且在GNSS接收机中的相关器中不创建一组即时相关输出。
实施例52.根据实施例49所述的方法,其中,合成的所述一组即时相关输出被用于估计信号功率以归一化延迟锁定环的鉴别器。
实施例53.根据实施例49所述的方法,其中,用于GNSS信号的相继的提前相关输出和滞后相关输出的样本之间的时间间距是比GNSS信号中的码片小的单个样本时钟分隔。
实施例54.根据实施例53所述的方法,其中,样本时钟频率小于10.23MHz的L5码片速率的3倍。
实施例55.如实施例53所述的方法,其中,所述间距是缩窄的码延迟,所述缩窄的码延迟减少多径误差,同时将样本频率时钟的频率维持在小于10.23MHz的L5码片速率的4倍。
实施例56.如实施例49所述的方法,其中,所述一组提前相关输出是一组超提前相关输出,并且其中,如果GNSS信号强,那么合成的所述一组即时相关输出是通过将所述一组超提前相关输出乘以大于1的因子来合成的。
实施例57.根据实施例49所述的方法,其中,合成包括计算比例因子与提前相关输出和滞后相关输出之和的乘积。
实施例58.如实施例57中的方法,其中,比例因子被计算为针对每个合成的即时相关输出产生合成的即时相关输出,该合成的即时相关输出具有与当提前相关输出和滞后相关输出平衡时的真实即时相关输出相同的幅值。
实施例59.如实施例49所述的方法,其中,所述一组提前相关输出包括一组超提前相关输出和提前相关输出,并且所述一组滞后相关输出包括一组超滞后相关输出和滞后相关输出,并且其中,所述合成包括:对于每个合成的即时相关输出,将超提前相关输出、提前相关输出、滞后相关输出和超滞后相关输出求平均。
实施例60.如实施例49所述的方法,其中,所述一组提前相关输出包括一组超提前相关输出和提前相关输出,并且所述合成包括:对于每个合成的即时相关输出,将超提前相关输出和提前相关输出求平均。
实施例61.如实施例49所述的方法,其中,所述一组即时相关输出是针对GNSS信号的C信道中的Altboc格式化的信号而合成的。
实施例62.如实施例61所述的方法,其中,所述一组即时相关输出使用超出Altoboc相关的主峰的相关器之间的已知预定相位偏移量。
实施例63.如实施例62所述的方法,其中,超出所述主峰的一个或多个次级峰具有与所述主峰不同的相位。
实施例64.如实施例49所述的方法,其中,合成的所述一组即时相关输出被用于调整载波锁相环,并且用于载波锁相环的载波相位是用对多个相关求平均的合成的即时相关来生成的,以便与提前相关器和滞后相关器之间的相关器处的多径相比,产生具有减少的载波多径的载波相位估计。
实施例65.如实施例49所述的方法,其中,合成的所述一组即时相关输出被用于调整载波锁相环,并且用于载波锁相环的载波相位是用对较早相关器更有利的多个相关器求平均的合成的即时相关来生成的,以便与提前相关器和滞后相关器之间的相关器处的多径相比,产生具有减少的载波多径的载波相位估计。
实施例66.一种操作GNSS接收机的方法,所述方法包括:
确定从第一GNSS卫星接收的GNSS信号的次级码相位;
确定所确定的从第一GNSS卫星接收的GNSS信号的次级码相位与从不同于第一GNSS卫星的第二GNSS卫星接收的GNSS信号的预测的次级码相位之间的差异;
基于所确定的差异,校正预测的次级码相位。
实施例67.如实施例66所述的方法,其中,所述方法还包括:
确定从其它GNSS卫星接收到的其它GNSS信号的附加次级码相位;
确定所确定的附加次级码相位与预测的次级码相位之间的附加差异;以及
其中,所述校正是基于所确定的差异和附加差异的。
实施例68.如实施例66所述的方法,其中,所述校正包括:(1)将所确定的差异与次级码的历元的时间上的码长度的一小部分进行比较,以及(2)(a)如果所确定的差异小于所述一小部分,那么将时间上的码长度加到所确定的差异,并在码长度的毫秒数的可能值范围内回绕此加法的结果,或(b)如果所确定的差异大于所述一小部分,那么从所确定的差异中减去时间上的码长度,并在码长度的毫秒数的可能值范围内回绕此减法的结果。
实施例69.如实施例67所述的方法,其中,所述校正是基于所确定的差异和所述附加差异中的最高似然差异的。
实施例70.如实施例66所述的方法,其中,所述方法还包括:
使用用于第二GNSS卫星的经校正的次级码相位,从自第二GNSS卫星接收的GNSS信号中擦除次级码,以允许对来自第二GNSS卫星的主码进行相干积分。
实施例71.如实施例66所述的方法,其中,所述方法还包括:
在校正预测的次级码相位之前,从包括第一GNSS卫星但不包括第二GNSS卫星的多个GNSS卫星确定GNSS接收机的位置解。
实施例72.一种操作GNSS接收机的方法,所述方法包括:
从GNSS卫星接收包含一个或多个主码和一个或多个次级码的GNSS信号;
从接收到的GNSS信号中,从对接收到的GNSS信号进行操作的捕获相关过程生成一组第一相关输出,第一相关输出包括所述一个或多个次级码随时间的次级码相关周期;
随着时间的推移,本地生成所述一个或多个次级码的一组一个或多个预期次级码序列;
基于本地生成的所述一组一个或多个预期次级码序列计算差分次级码序列;
基于第一相关输出和第一相关输出中的每一个的复共轭,计算一组差分相关样本;
将所述一组差分相关样本与所述差分次级序列码相关以提供一组第二相关输出;
从所述一组第二相关输出中确定所述一个或多个次级码的一个或多个次级码相位。
实施例73.如实施例72所述的方法,其中,差分次级码序列是基于预期的次级码序列与预期的次级码序列的延迟版本之间的乘积来计算的,并且其中,差分相关样本是基于所述一组第一相关输出和所述第一组相关输出的延迟版本之间的乘积的。
实施例74.如实施例73所述的方法,其中,所述延迟版本被延迟一个或多个主码历元的一小部分。
实施例75.如实施例73所述的方法,其中,所述延迟版本被延迟次级码中的一位的非零整数倍。
实施例76.如实施例73所述的方法,其中,第一相关输出提供包括实部数据和虚部数据的复数据,并且复共轭对虚部数据进行运算。
实施例77.如实施例73所述的方法,其中,相关是在多个次级码历元上执行的。
实施例78.如实施例73所述的方法,其中,所述一组第二相关输出包括峰的实部的值,并且次级码相位是根据所述实部的绝对值、相关输出的量值、和相关输出的量值平方之一来确定的。
实施例79.如实施例73所述的方法,其中,相关是利用一个或多个离散傅立叶变换来执行的。
实施例80.如实施例79所述的方法,其中,相关包括:
将所述一组差分相关样本与差分次级码序列循环地互相关。
实施例81.如实施例79所述的方法,其中,相关包括:
计算所述一组差分相关样本的离散傅立叶变换以产生第一组结果;
计算差分次级码序列的离散傅立叶变换以产生第二组结果;
将第一组结果乘以第二组结果的复共轭以产生第一乘积;
计算第一乘积的逆离散傅立叶变换。
实施例82.如实施例73所述的方法,其中,所述方法还包括:
基于所确定的一组一个或多个预期次级码序列,将一组差分相关样本与进一步延迟的差分次级码相关,以提供第三组相关输出的集合,第三组相关输出被用于检查所述一组第二相关输出。
实施例83.如实施例82所述的方法,其中,用于构造第三组相关输出的所述一组差分相关样本使用与用于构造第二组相关输出的延迟不同的延迟。
实施例84.如实施例30所述的方法,其中,所述组合将来自第一相关操作的结果与来自第二相关操作的结果相干地积分,其中,最优相位偏移量被确定并应用于所述相干组合之前的相干持续时间。
实施例85.如实施例82所述的方法,其中,第二组相关输出和第三组相关输出被组合以产生具有更高保真度的相关输出。
实施例86.如实施例85所述的方法,其中,所述组合是以下各项中的一种:(A)通过相加的相干组合,或(B)通过相加的非相干组合,后者通过将第二组相关输出和第三组相关输出的量值或者量值平方相加来完成。
实施例87.如实施例86所述的方法,其中,以与产生第二组和第三组的方式相同的方式形成附加一组相关输出,并且其中,用于形成这些组中的每个组的延迟是彼此不同的。
实施例88.如实施例74所述的方法,其中,差分次级码和差分相关样本在它们的构造中使用了相同的延迟。
实施例89.如实施例72所述的方法,其中,如果所述一个或多个次级码相位的确定不成功或不充分,那么:
基于本地生成的所述一组一个或多个预期次级码序列计算至少一个附加差分次级码序列;
基于第一相关输出和第一相关输出中的每一个的复共轭,计算至少附加一组差分相关样本;
将所述至少附加一组差分相关样本与所述至少一个附加差分次级序列码相关以提供附加组的相关输出;
从所述一组第二相关输出和所述附加组的相关输出中,确定所述一个或多个次级码的一个或多个次级码相位。
实施例90.如实施例89所述的方法,其中,用于形成不同组相关输出的差分相关样本和差分次级码序列在它们的构造中采用延迟,并且其中,用于不同组的相关输出的延迟是彼此不同的。
实施例91.如实施例90所述的方法,其中,第二相关输出和附加组的相关输出通过将它们的量值和它们的量值平方中的一种相加而被组合,并且其中,该组合被检查以确定次级码相位。
实施例92.如实施例89所述的方法,其中,差分相关样本和差分次级码序列是使用第一延迟来计算的,并且其中,附加差分相关样本和附加差分次级码序列是使用不同于第一延迟的第二延迟来计算的。
实施例93.如实施例89所述的方法,其中,差分次级码序列是基于预期次级码序列与预期次级码序列的第一延迟版本的乘积来计算的,并且其中,差分相关样本是基于所述一组第一相关输出和所述一组第一相关输出的第一延迟版本的乘积的,并且附加差分次级码序列是基于预期次级码序列和预期次级码序列的第二延迟版本的乘积来计算的,并且其中,附加差分相关样本基于所述一组第一相关输出和所述一组第一相关输出的第二延迟版本的乘积,并且第一延迟版本具有第一延迟而第二延迟版本具有不同于第一延迟的第二延迟。
实施例94.一种操作GNSS接收机的方法,所述方法包括:
从多个GNSS卫星接收包含一个或多个主码和一个或多个次级码的GNSS信号;
捕获接收到的GNSS信号中的一个或多个主码,以识别所述多个GNSS卫星中的至少一些GNSS卫星;
在捕获所述一个或多个主码之后,使用第一方法确定接收到的所述一个或多个次级码中的至少第一集合的次级码相位;
在使用第一方法确定至少第一集合的次级码相位之后,使用第二方法确定接收到的所述一个或多个次级码中的至少第二集合的次级码相位,第二方法不同于第一方法。
实施例95.如实施例94所述的方法,其中,第一方法是根据实施例15的方法并且第二方法是根据以下之一的方法:(a)根据实施例30的方法或(b)根据实施例66的方法。
实施例96.如实施例94所述的方法,其中,所述方法还包括:
使用第三方法确定接收到的所述一个或多个次级码中的至少第三集合的次级码相位。
实施例97.如实施例96所述的方法,其中,第一方法是根据实施例15的方法,并且第二方法是根据实施例30或实施例72的方法,并且第三方法是根据实施例66的方法。
实施例98.如实施例94所述的方法,其中,第一方法对来自单个GNSS卫星的GNSS信号进行操作,并且第二方法对来自多个GNSS卫星的GNSS信号进行操作。
实施例99.如实施例98所述的方法,其中,第一方法是以下之一:(a)根据实施例15的方法或(b)根据实施例30的方法或(c)根据实施例72的方法;并且第二方法是以下之一:(a)根据实施例66的方法或(b)根据实施例40的方法。
实施例100.如实施例98所述的方法,其中,所述方法还包括:
在第二码相位测量结果在用于第一集合的GNSS接收机中不可用之后,传播从第一方法确定的次级码相位以供使用。
实施例101.如实施例99所述的方法,其中,第二方法最初使用粗略的时间和位置来预测次级码相位;在从GNSS信号解码卫星时间并且GNSS接收机在GNSS接收机处生成精细时间估计之后,再次使用第二方法来预测尚未捕获的一个或多个次级码的次级码相位。
在前述说明书中,已经描述了具体的示例性实施例。显然,可以对那些实施例进行各种修改而不脱离所附权利要求中阐述的更广泛的精神和范围。因此,说明书和附图被认为是说明性的,而不是限制性的。
现代化的消费者级GNSS次级码捕获和信号跟踪
壹航公司
引言
在下面的公开中,我们描述了在现代化的消费者级仅L5GNSS接收机中捕获时间、频率和次级码相位以及随后跟踪信号所必需的所有步骤。在我们的优选实施例中,使用传统的“闭环”技术来跟踪信号。在替代实施例中,它们是使用开环技术来跟踪的。将这些信号拉入跟踪模式的过程与所涉及的信号一样复杂,因此我们混合使用开环和闭环策略。还描述了与功率降低、多径抑制、灵敏度增强和抗衰落有关的进一步相关实施例。
/>
/>
/>
附图列表
图8A L5信号直接捕获和跟踪的高级框图
图8B数据信道解码
图8C无补偿的四分量AFC鉴别器值
图8D带补偿的AFC4分量鉴别器值
图8E在25db-Hz处20毫秒次级代码相位长度差分检测器相位和协议计数
图8F差分检测器的长期四个单独分量
图8G所有四个分量上Gallieo次级代码相位长度的图像
图8H FLL频率检测器400Hz误差示例
图8I具有400Hz误差的DLL示例
图8J移除具有395Hz的FLL检测器示例
图8K示例次级码获取流程
图8L没有调频的码
图8M具有10Hz频率误差的码
图8N数据A示例
图8O DataB分量的相关性
图8P数据B示例
图8Q数据B次级码相关示例
图8R 0Hz处的导频A示例
图8S导频A最大值示例
图8T相干方法示例流程图
图8U相干方法示例次级相关
图8V传输时跨SV的次级码对准(理想情况)
图8W接收器处的次级码相位-图示
图8X超过100ms导频次级码的次级相关示例
图8Y示例8分量二次相关
图8Z 10ms示例
图8AA示例排除嘈杂输入
图8BB交叉SV相干、时间非相干示例
图8CC相关选项1
图8DD相关选项2
图8EE基本相关位置
图8FF多路径返回
图8GG A-B信道BPSK鉴别器
图8HH AltBOCCorrVec(理论)
图8II宽和窄模式下的C信道corrVec
图8JJ E,P,L关于它们在AltBOCCorrVec上的位置的方向移动图8KK AltBOCDLL鉴别器曲线
图8LL AltBOCCorrVec和PhaseVec
图8MM DLL鉴别器示出不同斜率符号的区域
图8NN PRN3初级峰跟踪
图8OO PRN5初级峰跟踪
图8PP PRN3跟踪侧峰
图8QQ PRN5跟踪侧峰
图8RR 20个相关器码窗口的图像(corrVec)
图8SS数据信道位和次级码长度以及毫秒和历元相关性之间的关系图8TT旁带移位
图8UU示例相位累积机制
图8VV用于生成A,B和C相关器的流程图
图8YY示例相干差分方法过程流程
目的
高级描述:在一个实施例中,一种实施方式可以使用闭环***来捕获、定位和跟踪仅宽带高精度信号的L5,其仅具有L5宽带信号(即,不依赖于老式的窄带信号,诸如L1GPS信号)。
现代化的增强
现代化的GNSS信号相对于原始GPS L1 CA信号具有多项增强其准确性和可靠性的增强功能。
首先,虽然GPS L1 CA每20毫秒只有单个包含数据位的分量,但现代化的信号有两个正交分量:包含数据码元的数据信道和没有数据码元的导频信道。欧洲Gallieo和中国BDS版本有两个更多个正交分量,从而启用第二数据和导频信道。
其次,虽然GPS L1 CA上的20毫秒数据位之间没有相位旋转,但现代化的信号有次级码,它在每个数据位内的每个主码的末尾产生相位旋转。码序列在数据和导频信道上都是不同的序列。导频信道具有更长的单独次级编码。
第三,虽然GPSL1具有1.023Mhz的码片速率,但L5频带中的现代化的信号具有10.23Mhz的十倍码片速率。
第四,虽然GPS L1 CA信号有BPSK调制和以载波为中心的相关向量,但欧洲和中国的现代化的信号有附加的多级调制,其频率是主码的码片速率的1.5倍,其产生距载波的旁带偏移量。这在欧洲Gallieo***上称为ALTBOC,在中国Beidou或BDS***上称为ACEBOC。这种调制启用附加的数据和导频信道。
第五个区别,虽然GPS L1 CA对每24位数据具有8位奇偶校验字,但现代化的信号具有卷积编解码和更多的纠错位。
现代化的信号的第六个区别是它们具有比L1 CA更强的发射功率:每个分量至少可以强0.5dB,并且所有四个分量的组合可以强6dB。
现代化的信号的第七个区别是所有在L5频带中部署卫星的国家都选择实现几乎完全相同的信号结构,只有数据信道位速率、导频信道次级码长度和多级芯片间调制存在微小差异。
现代化的优势
数据和导频信道的优点是允许使用导频信道跟踪较弱的信号。
次级编码的优点是减少了不同卫星之间的互相关,这通过减少错误跟踪改进了信号的可靠性。这种互相关发生在搜索较弱的卫星时,卫星的载波频率以较强的可见卫星的主码重复频率为模。互相关可以比更强的卫星低13dB。次级码和更高的码片速率将互相关降低相似的13dB。互相关导致没有找到正确的信号并且跟踪强卫星的杂散,会造成错误卫星数据的收集和产生错误的观察到的相位并引起大的位置误差。次级码的另一个主要优点是它使得能够更精细地观察超毫秒相位,即,信号行进时间长于1毫秒的部分。
与较慢的码片速率相比,较高的码片速率的优点是在确定接收到的相位时具有更高的精度和减少的多径效应。例如,对于GPS L1 CA的相关向量大约为+/-293米,而用于L5现代信号的相关向量大约为+/-29.3米。50米长的反射会使L1 CA相关向量失真,但不会影响L5相关向量,因为它超出了其范围。
与具有相同码片速率的BPSK相关向量相比,ALTBOC或ACEBOC附加子码片调制的优点是产生更精细的相关向量。更精细的向量进一步改进精度并减少相关向量的范围内反射的影响。
现代化的信号的改进的编解码的优点是降低的误码率,这意味着有可能在较弱的信号电平下可靠地解码卫星数据。解码卫星时间是每个辅助GNSS接收机的关键事件。现代化的信号改进了这个过程的可靠性。
更强信号的优点是能够使用更弱的信号。
统一信号结构的优点是简化的硬件和软件设计。如GPS L1 CA、GLONASS、早期的BDS和L1附近的Galileo的老式GNSS***具有截然不同的信号结构,导致复杂的硬件和软件设计。
现有技术
现有技术包括美国专利#5495499中描述的窄相关器技术。现代化的信号跟踪在NovAtel专利、美国专利#6922167B2中也有详细描述。美国专利#7885317中描述了现代化的信号复合跟踪。次级码捕获在https://www.researchgate.net/publication/317225851_ Efficient_GNSS_secondary_code_correlations_for_high_sensitivity_acquisition上的技术论文中进行了描述。此处描述高灵敏度次级码捕获:https:// www.researchgate.net/publication/320514396。快速次级码捕获在http:// citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.161.5205&rep=rep1&type= pdf中进行了描述。
现代化为何难
现代化的信号的一个缺点是这些信号比来自GPS L1 CA信号的350MHz更多,这一般要求单独的天线和RF信号路径。
现代化的信号的另一个缺点是信号的初始捕获的复杂性。因为码片速率比GPS L1CA高10倍并且码长10倍,所以复杂度增加了100倍。
现任者如何做
将L5添加到常规接收机增加成本。但是,添加L5的原因是为了增加接收机的准确性。
截至撰写本文时,所有支持L5的GNSS接收机制造商都执行捕获并首先将信号定位在L1,然后跟踪L5信号。如果L5信号丢失,那么使用L1信号重新捕获,然后切换到L5跟踪。由于每个卫星的可见性是独立的,因此L1接收机无法关闭。但是,由于现代化的L5信号的精度,L1信号常常在位置计算滤波器中被显著降低权重。这种方法没有利用现代化的信号固有的改进的可靠性。从某种意义上说,使用可靠性较低(较弱且冗余较少)的***来捕获更高可靠性的信号。
双频接收机的一个优点是能够估计电离层延迟,该延迟与信号传播所经过的大气区域中的自由电子密度成正比并且与信号载波频率成反比。对于具有互联网连接性的设备(如手机)中的GNSS接收机,有可能访问服务器并下载由GNSS接收机的全球参考网络生成的电离层估计。这些模型的准确性现在已达到亚米级,从而不再需要与双频移动消费级接收机相关的成本和功率。
仅L5是可行的
L5信号的数量正在迅速增长。欧洲Gallieo***已接近完成,拥有22个卫星,到2021年最终数量将达到24个,其中包含用ALTBOC调制的E5信号和四个分量,两个在下旁带E5A处,两个在上旁带E5B处。到2024年,美国将拥有由24个L5卫星和两个组件组成的星座,并且到2019年已达到13个。中国将拥有由24个卫星组成的完整星座,其包含具有下旁带B2A和上旁带B2B的信号B2。
介绍L5或仅现代化的方法
本公开的目的是呈现可以充分利用现代化的信号中的增强的现代化的仅GNSS接收机的实施例。主要地,在一个实施例中,出于准确性和可靠性的目的,它仅使用现代化的宽带信号。虽然L1 CA信号一直是启用快速捕获和高灵敏度的黄金标准信号,但现代化的信号增强有望以更低的成本提供更高的性能。例如,RF路径的数量从2个减少到1个,需要被跟踪的信号结构的数量从4个以上减少到1个,处置互相关的SW复杂性降低了。
仅现代化的进一步优势
在一个实施例中,我们的方法是仅使用更高带宽的信号来改进接收机的所有功能的准确性。从具有更高多径的第一定位的转变意味着接收机必须处置较低准确性和较低完整性的情况,同时试图找到更高准确度和更可靠的信号。
新的闭环***
主码相位和频率捕获、次级码相位捕获、码和频率拉入、跟踪、定位和重新捕获的整个过程对于仅现代化的接收机来说是不同的,为许多操作提供了创新的机会。
OneNav在2019年10月15日提交的美国临时专利申请No.62/915510中描述了捕获过程。
在定位之前而非定位之后的次级码相位估计
用于仅现代化的次级码相位捕获要求与L1-L5方法的不同之处在于,该过程必须在捕获之后而不是在第一次定位之后操作。捕获之后的方法必须容忍更高的频率误差,因为捕获主要使用带宽为1kHz的主码相位的非相干积分,其中频率步长可以高达200-500Hz。L1-L5接收机一般只会在其频率不确定性显著降低的第一次定位之后尝试次级码相位。
使用提前次级码相位估计来帮助定位和后续捕获
次级码的一毫秒相位旋转和导频信道上更长的次级码长度提供了比具有20毫秒数据位的L1 CA信号显著更多的距离信息。当只有近似的初始时间和位置信息可用时,这些特征在手机中辅助GNSS的典型情况下的第一次仅现代化的定位中得到利用。L1 CA数据位提供+/-10毫秒的范围模糊性,而E5和B2导频次级码提供+/50毫秒的范围模糊性。预测的次级码相位形成粗略的时间定位(将在下面描述),其可以用较早的次级码测量来校正。L1-CA的L5次级码捕获要求基于L1的位置和时间定位,而L5时间确定可以在第一次定位之前发生。因此,在仅现代化的接收机中第一次定位之后,一般不需要次级码相位估计。但是,因为基于L1的粗略求解器不能很好地解决毫秒级模糊性问题,所以将需要使用次级码相位估计才能以高灵敏度跟踪现代化的信号。
全程使用宽带
在首次定位之后,oneNav解决方案与当前L1-L5接收机相比的另一个主要区别是使用全信号带宽。相隔30.69MHz的旁带被称为A和B信道,使该方法能够减少衰落的影响,并且比仅使用一个旁带的典型消费者级L5实施方式更具弹性。
OneNav还实现了宽带ALTBOC和ACEBOC跟踪。由于这个信号以载波为中心,因此被称为C或中心信道。这些信号提供了前所未有的测量精度和多径抑制。这些测量与旁带测量并行进行。
使用旁带来辅助中心信道
一组具有半码片码间距的旁带跟踪相关器提供捕获宽带跟踪的窄相关向量所需的可观察性。在几乎没有直接信号的最糟糕的城市峡谷中,由于亚分米级测量精度,宽带跟踪提供了车道级导航能力。另一组小于1/5或第16码片隔开的相关器(取决于配置)被用于观察宽带C信道,以便减少多峰相关向量的跟踪模糊性并提供行人应用所需的附加载波相位跟踪稳定性。
重用向量处理器
每个卫星3个宽带信道的可观察性要求新方法来为每个卫星产生大量相关性,同时仍保持低芯片尺寸和低功耗。这里呈现的解决方案是在捕获引擎中重新配置向量处理器,而不是实例化多个单独的相关器。因此,频域和时域相关过程可以重用相同的向量处理和相关联的存储器。
先进的多径抑制:将即时信道移出
呈现了一种方法,通过该方法可以仅使用50Mhz样本时钟来实现100Mhz常规窄相关器提前减滞后(early-minus-late)跟踪配置的相同多径抑制。这种方法也可以应用于例如L5或E5a的旁带跟踪。一般用于跟踪载波相位的即时相关器被移到提前和滞后相关器之外并且由其余相关器的相干和产生。对于中心信道和旁带信道,组合是不同的。一个优点是通过提高corrVec来增加提前和滞后功率。
合成的即时,适用于手机中的地面反弹
基于Android的手机现在正在使用载波相位跟踪来实现新的高精度应用。这些电话中有许多采用线性天线,因此地面反弹是多径的重要的源,因为附近的反射不能用这种天线衰减。呈现了减少地面反弹在慢行人用例中最坏情况下的影响的方法。
宽带相关向量(corrVec)的独特特点是多级子码片调制器在其范围内产生3个周期的相位比。虽然地面反弹多径将非常接近直接信号,但跨相关向量的相对相位组合(也称为建设性和破坏性组合)将随着天线的微小运动而快速改变。对于中心信道,并且在最优采样率下,较提前和较滞后的corrVec的元素具有甚至更高的能量并且可以被用于对地面反弹多径更有弹性的载波跟踪。此外,对于C信道,多个相关器首先进行相位旋转,然后组合以形成加权的即时相关器,其可以对近地反弹多径的影响求平均,从而减少由于快速改变的破坏性干扰而引起的周跳的可能性。
其他提前跟踪;用于AFC和PLL的鉴相器组合
正如将E5和B2的四个分量或L5的两个分量组合起来以改进捕获灵敏度一样,呈现了在跟踪期间组合多个分量的跟踪方法。一般而言,因为大约25cm的载波波长显著小于大约29.3m的码波长,所以GNSS接收机在码环路之前在载波跟踪环路中失锁。主要问题是载波频率或相位误差检测器。因此,呈现了用于将来自每个分量的相位信息相干地组合以减少相位检测器误差的方法。
用于完整性和ML的次级相关性
由于ALTBOC和ACEBOC corrVec如此窄,因此需要完整性监视方法来验证码跟踪是否正确居中。观察到的corrVec与预定的corrVec进行次级相关,该预定的corrVec考虑了***带宽,以验证正确的跟踪。这个结果作为完整性监视器被报告,以周期性地重置跟踪,并用作机器学习的输入,机器学习将信号分类为直接信号、多径信号或非视距(NLOS)信号。
用于跨宽带前端的组延迟的均衡
通过在A/B信道化之前将数字复数均衡器放置在信号路径中,可以用低成本消费者级RF滤波器和放大器在50MHz或更高的宽带前端带宽上实现几乎平坦的组延迟响应。
带有陷波滤波的CW干扰
由于用于捕获的A/B信道要求对频域相关进行FFT,因此简单的干扰抑制方法是用这些滤波器观察频率响应以识别干扰。对于A/B信道,可以削波或消隐具有高功率的频率,从而在观察到干扰时使得灵敏度略有下降,但不会出现与窄带信号的堵塞相关联的那种灾难性问题。FCC最近决定允许在L1频带处进行地面传输,这增加了依赖更可靠的L5信号的动机。
图8A示出L5信号直接捕获和跟踪的高级框图。
方框1:初始搜索参数
***通过确定初始搜索参数和卫星开始操作。基于起始时间和卫星数据,计算所有卫星的位置、速度和时间偏移量(时钟偏差)。基于起始接收机位置,计算从接收机到卫星位置的向量旋转到本地水平面以确定卫星的方位角和仰角。高于定义的地平线掩模角的卫星具有正仰角并被添加到初始搜索集中。
如果准确知道起始时间、位置和卫星数据,那么可以准确估计E5频带中现代化的信号的主扩频码和次级扩频码的相位。但是,由于准确的时间移植要求访问准确的时基,因此这样的时间一般不可用。对于一个实施例,假设的初始时间估计仅在几分钟内可用。虽然一些***中已经提供了准确的时间,但目前的移动电话基站不要求同步或观察其传输与GNSS时间的时间偏移量。而且,当前的移动电话具有通过关联从已确定位置的设备接收蜂窝、WiFi和蓝牙传输来确定起始位置的替代方法。在密集的城市环境中,定位参考的密度非常高,从而可以实现100米或更高准确性的起始位置。
但是,要求准确的时间和位置来预先计算准确接收到的主码相位和次级码相位。出于这个原因,此类相位估计的起始准确性远大于将搜索尺寸显著减小到这些码序列的整个范围以下所需的亚毫秒准确性。
因此,对每个卫星的搜索是针对近似的载波频率和围绕这个中心估计的频率范围。中心频率是与卫星运动、用户运动和其频率源的接收机频率偏移量相关联的预测的频移之和。
该频率与时间t处第i个卫星与接收机之间的伪距的导数有关。该测量被称为伪距,因为它包含接收机和卫星时间误差(也称为时钟偏差)与真实时间的影响。它还受到信号从卫星传播到接收机所经过的空间的大气效应的影响,称为传播效应。最后,还有接收机噪声。相对论效应以及信号行进时间期间地球的自转是众所周知的,此处不包括在内。
等式1
PRi(trec)=真实距离(ttran,trec)+接收机时间误差(trec)–卫星时间误差(trec)+传播效应(trec)+接收机噪声(trec)
将接收机时间误差定义为接收机时间与真实GNSS时间的偏移量。这也被称为接收机时钟偏差。它可以被分解为小于毫秒的部分(称为小数时钟偏差),以及整数毫秒的部分(称为整数毫秒,或intMs)。
伪距速率(PRRi)被定义为对第i个卫星的伪距的导数。
在时间trec的真实距离是在传输时间(ttran)的卫星与在接收时间(trec)的接收机位置(Xr,Yr,Zr)之间距离的向量范数。第i个卫星的卫星位置(或空间飞行器SV)(Xsi,Ysi,Zsi)可以基于估计的范围迭代计算。
等式2
在trec到第i个SV的真实范围=Ri(trec)=[(Xsi(ttran)–Xr(trec))2+(Ysi(ttran)–Yr(trec))2+(Zsi(ttran)–Xr(trec))2]1/2
假设GNSS控制段估计卫星位置和与真实时间的时间偏移量,并且可以通过从卫星解码或者通过其它手段(诸如通过互联网)获得这个数据。卫星时钟偏移量影响传输时生成的主和次级伪随机(PN)码序列的相位。接收机时钟偏移量影响两个序列的接收到的相位。传播效应包括电离层和对流层延迟以及由于环境热噪声和多径和反射误差引起的误差。接收机噪声包括接收机由于其在广播信号的生成和精确复制方面的缺陷而产生的噪声。
真实的伪距速率只是伪距的时间导数。这是通过形成伪距的每个元素的时间导数(d/dt{})计算得出的,如下所示:
等式3
PRRi(trec)=d/dt{Ri(ttran,trec)}+d/dt{接收机时间误差(trec)}–d/dt{卫星时间误差(trec)}+d/dt{传播效应(trec)}+d/dt{接收机噪声(trec)}
=d/dt{Ri(ttran,trec)}+接收机时钟漂移–卫星时钟漂移+d/dt{传播效应}+噪声
接收机时钟漂移是接收机时钟偏差的时间导数。卫星时钟漂移是卫星时钟偏差的时间导数。传播效应的时间导数小,常常小于1m/s。
一般而言,接收机通过在某个时间间隔(比如1秒)内对范围进行微分来估计距离的时间导数。假设卫星时钟漂移是由信号或互联网提供的。
使用所有可用的已知估计值,伪距速率PRR被计算为标称距离速率。然后通过按适当的波长缩放将其转换为频率估计。为了在E5频带的中心处搜索,波长=光速/1191.795Mhz=25.155cm,比L1处的19.054cm波长大大约25%。
要搜索的频率范围取决于估计的PRR中的不确定性。误差来自位置估计误差、时间误差,但主要是接收机时钟漂移的估计误差。对于采用TCXO或软补偿晶体振荡器SCXO的商业接收机,不确定性通常为大约+/-1PPM,或百万分之一。对于可以将振荡器控制为更稳定的蜂窝信号的接收机,可以减小这个误差。在这种情况下,必须考虑由于接收机速度引起的感应出的多普勒效应。
一般而言,接收机时钟偏差,或者初始时间误差远大于1毫秒,因此必须搜索完整的主码相位,而次级码相位未知。这意味着搜索是作为在离散频率的集合处对主码进行的多次单独搜索来执行的。频率搜索步长与相干积分时间有关,通常为一毫秒。为了改进灵敏度,在每个可能的码相位位置(通常每个主码码片大约两个样本)处的一毫秒功率(或振幅)估计在更长的时段内被非相干集分,以将噪声求平均,并改进相关后信噪比。
在非相干积分期间,码相位估计需要进行时移以考虑由于积分期间载波频率引起的码移位。1191.795Mhz处的码多普勒(E5和B2)是每116.5个载波周期一个码码片。这个比率在1175.45MHz(E5a、B2b和L5)处为115,在1207.14Mhz(E5b和B2B)处为118。一般而言,频率步长减小,使得码码片在预期的最长积分时间内以1/2频率步长移位误差。例如,如果积分时间为200毫秒,那么频率步长被限制如下:1/2=freqStep/2/(116.5)周期/在E5处的码片*0.2秒。求解freqStep=116.5/dt。对于0.2秒,结果是频率步长应当不小于227Hz。
用于卫星的集合的搜索参数是用于码生成器的初始条件或种子、中心频率、频率步长、中心周围的频率数和积分时间。
初始搜索={PRN,PRN种子,频率中心,频率数,毫秒数,检测阈值}
方框2:主码相位捕获
这个方框包含用于执行对多个串联和并联的卫星的搜索的硬件和软件。搜索继续,直到在相关性中找到峰,该峰具有足够的SNR以提供由错误检测级别折衷的检测置信度级别。本底噪声通过估计每个单独频率下所***相位假设的本底噪声平均值和标准偏差来参数化。对于最强的峰,相关值被移除,因此本底噪声是无偏的。当10*log10((maxPower–noisePower)/noiseVariance)>threshold1时,第一检测测试被宣布满足。为了改进对互相关或产生高于高斯本底噪声的相关性的其它干扰源的稳健性,对不靠近顶峰的第二高峰执行第二测试。这被称为边际测试,其中当10*log10((maxPower–offPeakPower)/noiseVariance)>threshold2时,第二检测测试被宣布满足。threshold1和threshold2的典型值分别为16dB和6dB。
非相干积分继续,直到满足两个测试或达到最大积分时间。检测将信号候选移动到方框3。注意的是,通过使用一毫秒的最大相干检测时间,次级码相位的误差被最小化。应当指出的是,积分是在毫秒到毫秒的基础上发生的,而不是主码历元到历元,因此当积分窗口内有相位反转时就会有损失。由于时间不确定性大,因此在次级码阶段测试多个假设在计算资源和功率上都是昂贵的。最坏的情况发生在接收到的主码相位位于毫秒窗口的中心时:由于次级码引起的相位反转,或者甚至数据码元的改变都会造成180度的相位旋转,这导致相关能量完全抵消。在2019年10月15日提交的OneNav美国临时专利申请No.62/915510中描述的实施例中,提出了许多改进以补偿这些条件。最坏的情况是不连续的,因为每毫秒相位反转的概率大约为50%。另一种最小化最大损失的方式是使用多于一个信号分量,诸如数据和导频分量,因为它们的次级码不会总是在同一毫秒切换。
在另一个实施例中,可以用根据码相位不确定性的量设置的较低SNR阈值临时检测主码相位峰。码相位不确定性可以被确定为时钟和初始位置不确定性的组合。在进一步的改进中,可以相对于彼此测试码相位,从而抵消时钟误差。一旦临时峰通过了基于最大PFA、最小SNR或类似的更困难的测试,就可以宣布它是可信的峰检测,并且可以缩窄后续卫星搜索的搜索窗口。同样,频率不确定性可以逐渐变窄。
方框3:次级码相位捕获
在确定主码相位之后并当时间不确定性大于1/2毫秒时,下一步就是确定次级码相位。(在时间不确定性大但小于1/2毫秒的情况下,次级码可以是已知的。用于这种模式的主码搜索在方框14中处置。)现代化的信号一般在数据和导频分量上具有不同长度的序列,并且导频通常更长。导频次级码长度,也称为覆盖码,在Galileo(E5a和E5b导频)和BDS(B2a和可能的B2b导频)上都是100毫秒长。[对于GPSL5导频,常见的20毫秒长Neuman-Hoffman码用于所有SV。]
什么是次级码(或覆盖码)?它是产生与主码历元同步的0或180度相移一系列位或码片。对于E5处的现代化的码,次级位转变发生在主码10230码片完成时。数据和导频分量上有分离的序列。数据位与数据分量上的次级码序列同步。次级码是主码的帧的整数倍(对于Beidou,n=5,对于GPS,n=10,对于Gallieo,n=20)。数据位是n码片次级码末尾的0或180度相位旋转。有关每个数据信道的解码的更多细节,参见图8B。导频信道的解码更简单,Beidou和Gallieo的每个主PRN码都指派了唯一的导频码,所有GPS导频信道都使用定位的20位Neuman Hoffman码。
图8B示出旁带数据信道解码。
应当注意的是,在次级码相位已知之前,接收机不能使用超过1毫秒的相干积分。因此,接收机必须采用其它方法来跟踪或有效地保持信号,同时学习次级码相位。主码相位捕获步骤要求大量相关,而次级码相位捕获步骤要求少得多的相关器。它只要求足以观察信号、维持基本跟踪和观察本底噪声。诸如用于提前、即时、滞后的3个相关器,以及几个用于本底噪声可观察性的更提前和更滞后相关器。跟踪也可以在较低速率的块相位估计器上执行,其中选择相关器的数量,以便估计的码相位不会落在观察窗口之外。假设搜索载波频率估计将驱动码多普勒也不会丢失信号。
[在替代实施例中,可以临时存储满足较低阈值的积分结果并针对所有可能的次级码相位相干地累积,等待达到与非常低的错误警报概率相关联的较高SNR阈值。在对准以考虑信号传输的不同时间之后,可以在多个卫星之间比较次级码相位“区间”。]
在另一个替代实施例中,可以在不使用自动增益控制的情况下预先确定本底噪声,从而不要求附加的相关器。
L1+L5接收机一般仅用L1即可获得第一定位。如果它能够将其时间不确定性降低到1/2毫秒以下,那么它将能够预测次级码相位而无需对其进行测量。如果它有粗略的时间定位(稍后在描述方框8时描述),那么它从GPS L1获悉的数据位相位可以只有+/-10毫秒,这不足以预测100毫秒,并且它还需要测量次级码相位的方法。但是,基于L1的定位一般观察接收机时钟偏移量,因此,在次级码相位估计期间不需要处置大的频率误差。
另一方面,只有L5的接收机将需要使用像方框2中那样的主搜索方法中获得的码相位和粗略频率估计来测量次级码相位。频率步长尽可能大以减少搜索时间和功耗。因此,仅L5次级码搜索必须在这种条件下操作。对于300Hz的主码搜索频率步长,最坏情况下的频率误差为150Hz。而且,对于较短的捕获时间(诸如小于50毫秒),次级码相位反转模式会影响出现最大功率的频率。换句话说,主码搜索可能没有最接近正确频率的最强功率。这是一种频率别名过程。首先,提出了对每个卫星独立的次级码估计方法。其次,提出了分组的方法,其中同时处理多个卫星,以便并发地观察更多的次级码位。第一种独立方法:独立差分直方图方法1
第一种独立方法使用差分相位检测器和称为IDHM1的直方图方法。该方法有几个特点:它容忍高达500Hz的频率误差并且甚至可以在中低信号强度下工作。这非常适合方框2中的主码相位捕获方法。
虽然方框2中的主码相位捕获使用与码相位时间不对准的毫秒样本数据,但IDHM1使用连续的相关样本,其边界是码历元,即,主码生成器开始并与传入的信号相位同相的事件。接收机毫秒窗口内的历元位置在方框1中测量,称为码相位。接收机可以通过以下两种方式之一生成相关样本:通过将历元处的毫秒到毫秒相关分解为两个和,或者通过从出现历元的样本之间的传入样本流中选择样本。
信号模型
假设作为最一般模型的E5信号在两个旁带A和B中的每一个上都有分量I和Q(其中I是同相的,Q是正交的):
等式4
SdataA(t)=AmpAi*dA(t-τ)*scAi(t-τ)*cAi(t-τ)*cos(2π*fA*(t-τ)+α)+n(t)
SpilotA(t)=AmpAq*scAq(t-τ)*cAq(t-τ)*sin(2π*fA*(t-τ)+α)+n(t)
SdataB(t)=AmpBi*dB(t-τ)*scBi(t-τ)*cBi(t-τ)*cos(2π*fB*(t-τ)+β)+n(t)
SpilotB(t)=AmpBq*scBQ(t-τ)*cBQ(t-τ)*sin(2π*fB*(t-τ)+β)+n(t)
设X=第X个分量,那么AMPX为第X个分量中接收到的振幅,dX是在次级码序列scX的端点处改变的数据序列,其本身在主码序列cX末尾处改变,其中X是Ai、Aq、Bi、Bq中任一个。没有关于导频分量的数据。假设载波频率fA和fB根据它们的相对波长根据中心载波频率fC相关。载波频率是伪距的时间改变速率(即,伪距速率)根据A、B和中心信道的广播频率(1175.42、1207.14和1191.795MHz)分别从米/秒换算成周/秒。
假设接收机已擦除主码序列cX作为码延迟t的某种估计并且在分量x上处于频率fA^。
每个分量的同相和正交相关器具有以下形式:
等式5
CorrIx=AmpX*dx(t-τ)*scX(t-τ)*cos(Φx)+nI(t)
CorrQx=AmpX*dx(t-τ)*scX(t-τ)*sin(Φx)+nQ(t)
其中Φx是基于使用估计的分量频率估计fx^的x分量的相位误差。
等式6
因此,Φx=2π*(fX-fx^)(t-τ)+α
忽略噪声分量:可以使用正交相关器与同相相关器之比的反正切来估计相位误差,因为放大器、数据和次级码系数在分子和分母中是相同的:
等式7
Atan2(corrQx/corrIx)=atan2([AmpAx*dx(t-τ)*scX(t-τ)*sin(Φx)],[AmpAx*dx(t-τ)*scX(t-τ)*cos(Φx)]=Φx^radians
注意的是,次级码相位从1毫秒相位估计中抵消了。这种方法识别相位误差并且通常用作相位检测器来驱动锁相环。但是,在信号微弱的1毫秒积分时间内,噪声相当大。
如何差分检测次级码码片的改变
现在使用三角恒等式考虑两个相邻相关器之间的相位改变:
等式8
cos(A-B)=cosA cosB+sinA sinB
sin(A-B)=sinA cosB-cosA sinB
这两项也称为点积和叉积。
等式9
Dot(A-B)=cos(A-B)
Cross(A-B)=sin(A-B)
***并忽略噪声,并且令1表示t1处的较滞后相关器,而0表示t0处的较提前相关器:
等式10
cos(epoch1-epoch0)=AmpX1*dx1*scX1*AmpX0*dx0*scX0*cosΦ1*cosΦ0+AmpX1*dx1*scX1*AmpX0*dx0*scX0*sinΦ1*sinΦ0
=AmpX1*AmpX0*[dx1*dx0*sc1*sc0]*[cosΦ1*cosΦ0+sinΦ1*sinΦ0]
=AmpX1*AmpX0*[dx1*dx0*sc1*sc0]*[cos(Φ1-Φ0)]
sin(epoch1-epoch0)=AmpX1*dx1*scX1*AmpX0*dx0*scX0*sinΦ1*cosΦ0-AmpX1*dx1*scX1*AmpX0*dx0*scX0*cosΦ1*sinΦ0
=AmpX1*AmpX0*[dx1*dx0*sc1*sc0]*[sinΦ1*cosΦ0–cosΦ1*sinΦ0]
=AmpX1*AmpX0*[dx1*dx0*sc1*sc0]*[sin(Φ1-Φ0)]
只要相位改变小于180度,就cos(Φ1-Φ0)>0 and sin(Φ1-Φ0)<0。只要数据位不改变,角度差的余弦就可以用来区分检测次级码的改变。这种方法适用于没有数据调制(并且放大器大于噪声)的导频分量的所有相位偏移量。
由于atan2是非线性函数并且当AmpX与噪声相比小时是嘈杂的,因此相位检测器也是嘈杂的,从而影响频率跟踪稳定性。将频率误差保持在500Hz以下(推断相位差低于180度)的一种方法是使用可以过滤嘈杂鉴别器的阻尼频率回路。但是,减少频率误差是有好处的,因为相关性会改进,从而产生更强的信号。
可以通过操作锁相环、锁频环(FLL)(也称为自动频率控制(AFC)环)或块频率误差估计器来减少频率误差。可以使用高度过滤1毫秒相位估计的PLL。但是,次级码估计被认为是拉入状态并且一般不用作用于位置定位的测量状态。在这种情况下,将频率误差驱动至零的AFC回路就足够了。块频率估计器将几个频率误差鉴别器组合在一起以估计平均频率误差。
这里提出的优选方法是AFC和块相位估计的混合。差分相位检测器已经计算了跨两个连续历元的相位改变的余弦。这是次级码相位确定的关键值并且将在总结频率跟踪之后再描述。对于更强的信号,形成每个历元的相位误差估计然后将它们求差以计算增量相位就足够了。
因此,通过还计算相位改变的正弦,可以将相位改变估计为相位改变的正弦除以相位改变的余弦的反正切。
步骤1是计算连续历元上的相位改变的余弦和正弦。
步骤2步是识别在当前和之前的历元之间次级码相位是否已改变。这通过行为改变的余弦的符号来识别。负值表示次级相位改变了。正值表明它没有改变。这称为差分检测。
步骤3是形成频率误差鉴别器。对于强信号,其中corrI2+corrQ2的相关器功率大于预定阈值,使用等式7中定义的一个历元相位的差。
等式11
δΦ/dt=(Φ1-Φ0)/dt={Atan2(corrQ1/corrI1)-Atan2(corrQ0/corrI0)}/(2π)/dt
这个检测器的优点是每个历元处的相位的符号不受次级码和数据位的符号的影响,因为它们对于atan2函数的分子和分母是共用的。(注意的是,atan2输出通过除以2π从弧度转换为周期。)这种方法还有产生+/-500hz检测器范围的优点。这些检测器可以在块相位估计中求平均。
等式12
δΦ/dt^=ΣN epoch=1δΦ/(2π)/dt/N(Hz)
然后将这个求平均的频率误差输入到至少一阶锁频环作为进一步过滤频率误差的方法。更新后的频率估计被用于后续相关以改进相关功率。
对于较弱的信号,其中相关器功率低于上面提到的预定阈值,然后通过首先对相位改变的余弦和正弦的多个实例求平均(如等式10中所述)然后使用atan2来形成两个历元的相位改变。为了对多个连续历元的余弦和正弦项求平均,有必要考虑观察到的微分相位改变,因为这会改变余弦和正弦项的符号。
首先处置次级码更改:
等式13
注意的是,w^上标表示回绕的估计的经滤波的总和的符号。
然后,在对预定数量的历元求平均之后,形成经滤波的增量相位估计。
等式14
δΦw^/dt=atan2(sinw^/cosw^)/(2π)/dt(Hz)
由于余弦和正弦已在次级码位相位改变的情况下被回绕,因此这个检测器的范围现在减少了两倍至+/-250Hz。
为了跟踪相关峰、操作频率跟踪回路并更新差分次级码位检测,用多个相关器产生一定范围的码相位。由于需要少至5个相关器对来形成码跟踪回路的提前和滞后,以用于频率跟踪和频率相位估计的即时点为中心,以及非常提前和一个非常滞后的相关器的至少一个集合用于噪声估计以便产生信噪比估计以核实信号在中心仍然是可观察的。
注意的是,对于每个分量,有五个相关器对,因为每个分量上都有不同的次级码序列。为了简化跟踪并且还改进对较弱信号的跟踪,那么所有四个分量都被联合跟踪。
中心码相位估计从毫秒传播到毫秒,码多普勒估计以码片/秒为单位通过使用已知关系将接收到的载波频率估计转换为码多普勒而获得:在1176.45Mhz,每个码码片有115个载波周期,每毫秒10230个码片,在1191.795Mhz,每个码码片有116.5个载波周期,每毫秒10230个码片,在1207.14Mhz,每个码码片有118个载波周期,每毫秒10230个码片。
由于初始码相位估计是从主码搜索(一般是1/2码片搜索)中获得的,因此码相位误差可以是1/4码片或更多。而且,主捕获方框2可以要求数百毫秒来实现检测信号所需的SNR。因此,次级码相位捕获方框将要求类似的积分时段,以便减少码相位和频率误差检测器上的噪声以分别更新码跟踪和频率跟踪回路。
在新历元的相关结果可用之后,数据被处理以形成振幅和相位。一毫秒功率或振幅估计由每个同相和正交相关器对形成。接下来,将一毫秒功率估计积分为多个毫秒,诸如二十。为简单起见,此处选择功率,但可以用相同的方式对振幅求平均。
次级码相位估计期间的码跟踪
对于Js分量(j)的功率和,其中Js=(对于GAL和BDS为1到4,对于GPS为2),在时间(tk)从1到Ncorrat的每个相关器对(c):
等式15
PSum(j,c)+=Power(j,c,tk)=corrI(j,c,tk)2+corrQ(j,c,tk)2
等式16
PSumGlobal(c)=ΣJs c=1PSum(j,c)
最大功率位置cMax被估计为第c个相关器对,当
等式17
cMax=索引c,其中PsumGlobalMax=Max{PSumGlobal(c)}对于c=1,Ncorr
噪声功率估计是与最大功率位置cMax不相邻的所有相关性的总和。
等式18
PSumNoise=ΣcMax c=1PSumGlobal(c)其中|c-cMax|>1
等式19
SNR=10*log10((PsumGlobalMax–PsumNoise)/PSumNoise)
当SNR>预定阈值时更新回路,诸如6dB,这意味着最大功率和至少是噪声功率和的两倍。
码回路是标准的延迟锁定环,其中检测器是通过即时归一化的提前-滞后功率。
等式20
DLLdetector(k)=[PSumGlobal(cMax-1)-PSumGlobal(cMax+1)]/PSumGlobal(cMax)
DLL是标准一阶跟踪回路的输入,该回路具有回路滤波器G(z),其中z表示离散时间滤波器的时间延迟。经滤波的鉴别器输出被添加到前一阶段以生成经滤波的码相位中心估计。码多普勒分量也作为未经滤波的前馈传播器在每个历元添加。经滤波的码相位可以被表示为先前经滤波的码相位的缩放版本加上缩放后的当前和先前DLL检测器。
等式21
filteredCodePhase(k)=C1*filteredCodePhaseH(k-1)+C2*(Dlldetector(k)+C3*Dlldetector(k-1)
码多普勒也每毫秒添加一次。
等式22
filteredCodePhase(k)+=filteredCarrierFrequency(cycles/sec)/116.5(cycles/chip)*0.001sec
随后的相关使用这个码相位作为用于A和B信道的居中的码相位。
次级码相位估计期间的频率跟踪
频率跟踪回路是标准的锁频环。但是,组合的检测器是新的,其优点是能够将所有分量组合在一起以改进其在微弱信号下的准确性。有必要确定回路的频率参考。而且,虽然用于同一旁带A或B处的分量的频率相同,但旁带之间的频率不同。幸运的是,频率差异是可预测的。选择它来跟踪A和B之间的中心频率。当主码相位捕获方框2使用跨旁带的多个分量时,这是最优选择,因为它会相对于中心频率上下设置旁带频率。因此,获胜的码相位自然会应用于中心频率。A、B、C多普勒与距离速率之间的确定性关系
用于E5和B2信号的广播频率为1191.795Mhz。在A、B和中心信道观察到的多普勒受每个旁带波长的影响。定义传输频率
ftran是以赫兹为单位的发射频率
c是以m/s为单位的光速=2.9979245e8m/s
λtran是发射频率的波长,单位为m/周期=(c/ftran)
因此观察到的多普勒是Dtran=rangeRate*(-1/λtran)
假设相关器将在每个旁带相关中使用不同的频率,但结果所得的相位估计可以移回中心频率。
等式23
λa=(c/1176.45e6)=0.254828049
λb=(c/1191.795e6)=0.251547001
λc=(c/1207.14e6)=0.248349370
使用A作为参考的中心和下旁带A之间的多普勒差异为:
Dc–Da=(-1/λc*rangeRate)-(-1/λa*rangeRate)
=-rangeRate[(λa-λc)/(λa*λc)
=Da*[(λa-λc)/*λc]
=Da*sfca
等式24
sfac=[(λa-λc)/*λc]=0.013043478
sfbc=[(λb-λc)/*λc]=-0.012711865
注意的是,从A多普勒转换为C和从B多普勒转换为C具有不同的比例因子。
相反,从C到A和从C到B的转换(其中C是参考)具有相同的比例因子(除了相反的符号):
Dc–Da=(-1/λc*rangeRate)-(-1/λa*rangeRate)
=-rangeRate[(λa-λc)/(λa*λc)
=Dc*[(λa-λc)/*λa]
=Dc*sfca
等式25
sfca=[(λa-λc)/*λa]=0.01287554
sfcb=[(λb-λc)/*λb]=-0.01287554
因此,当跟踪复合信号(所有4个分量)时,起始多普勒是来自主码相捕获方框2的复合多普勒。C多普勒转换为A、B多普勒,以便在A、B相关器中混合。然后在A和B信道中的每一个中更新相位检测器,然后旋转回滤波器以更新C信道复合频率。
四个分量中的相位检测器使用索引为cMax的即时相关器进行更新。
现在定义最多4个不同的经滤波的频率误差鉴别器。
考虑来自Ai、Aq、Bi、Bq的频率误差检测器:
注意的是,由于频率改变检测器独立于绝对相位,数据与导频分量之间相差90度,因此可以将它们求平均为每个旁带的单相位估计。假设频率回路具有将相位改变转换为频率改变的时间缩放。因此,检测器具有弧度单位。
等式26
δΦw^A/dt=atan2((sinw^Ai+sinw^Aq)/(cosw^Ai+cosw^Aq))radians/2π/0.001(Hz)
δΦw^B/dt=atan2((sinw^Bi+sinw^Bq)/(cosw^Bi+cosw^Bq))radians/2π/0.001(Hz)
这些检测器中的每一个都经过补偿,以在中心频率参考系中产生求平均的检测器:
等式27
δΦw^C/dt=[(δΦw^A/dt+DopplerA*sfac)+(δΦw^B/dt+DopplerB*sfbc)]*0.5
这个检测器的优点是它使用所有4个独立分量,因此通过对检测器噪声求平均来改进跟踪。这个检测器被应用于标准闭环FLL,其中经滤波的频率估计是缩放和延迟的输入和输出的组合。下面示出的经滤波的C多普勒是前一个的线性组合。
等式28
Fc^(k)=[a1*Fc^(k-1)+a2*Fc^(k-2)]+[b1*δΦ^C(k)/dt+b2*δΦ^C(k-1)/dt+b3*δΦ^C(k-2)/dt]
在更新经滤波的频率之后,形成用于A和B旁带相关器的更新后的多普勒。
等式29
F^a=Fc^(k)*sfca
F^b=Fc^(k)*sfcb
用于A和B相关的后续相关使用这些载波频率值。
图C为无补偿的四分量AFC鉴别器值。
下面示出了无补偿的四相位改变鉴别器。回路将它们求平均成平均频率。距中心的偏移量与补偿项多普勒X*sfxc成正比。补偿项是重要的,因为它的尺寸随着多普勒量值的增长而增长。因此,在两个相位估计接近180度的情况下,任何偏差都会影响回绕解决模糊性的能力。
图8C示出无补偿的四分量AFC鉴别器值。
下面的图8D示出了当相位改变检测器用来自信号多普勒的预期的相位改变进行补偿时的鉴别器轨迹。
图8D示出带补偿的AFC4分量鉴别器值。
聚合差分次级码相位位估计
虽然经滤波的码相位和经滤波的中心频率以较低的速率出现以确保更新滤波器之前的最小SNR,但差分检测发生在每个历元。使用这四个分量有无数种可能性。
所描述的第一方法对每个分量独立执行次级码相位估计(SCE)。
假设每个分量都有自己的长度。E5Ai是20位,E5Aq和E5Bq是100,E5Bi是4位。GPSL5i是10位,L5q是20位,B2Ai是20位,B2BAq是100位,B2Bi是1位,B2Bq是100位(在撰写本文时预计)。
等式10中描述的交叉历元相位差的余弦被称为点积检测器。
等式30
Dot(y,x)=cos(epochY-epochX)其中y>x。
用法如下:当dot(y,x)<0时,声明改变,否则声明不改变。
引入直方图以允许比码更长的积分。在第二个历元,当第一个点(1,0)可用时,称为scCntRS的计数器被初始化为0。R指旁带,并且S指分量。这个计数器将表示直方图区间索引。计数器递增每个历元并在次级码序列scSizeRS的长度处回绕到零。例如,对于E5Ai=scCntAi的scCntRS从0到19。第一次检测的时间标记保存在msec0XY,以便具有以毫秒为单位的时间参考。
最低存储器方法是具有单个直方图,当dot(y,x)<0时向上计数,意味着改变,当dot(y,x)>=0时向下计数,意味着没有改变。如果长积分仅包含噪声输入,那么该值应当接近零。如果直方图区间映射到有改变的次级码位位置,那么直方图区间将保持大的数字,等于观察到的改变的数量。在没有改变的区间的相反情况下,直方图区间应当保持大的负数。
为了更容易地可视化测试软件的历史记录,实现了两个直方图:一个用于改变事件,另一个用于无改变事件。逻辑如下:
等式31
If(dot(y,x)<0)histoChange[scCntRS]+=1
ElsehistoNoChange[scCntRS]+=1
scCntRS+=1
if(scCntRs=scSizeRS)
scCntRS=0
何时分析直方图
可以无模糊性地估计次级码相位的最小位数可以被称为minHistoAgreementCnt,即,最小直方图一致计数。这个数字基于实际码序列及其长度。这是不可能多次找到多于一次的重复的位子集的长度。
例如,在序列001100111010001100110101中,模式00110011出现了两次。但是,序列001100111只出现了1次。因此,minHistoAgreementCnt可能近似为9。
因此,一旦有数据的区间数量达到minHistoAgreementCnt,就有可能开始测试直方图与真实次级码之间的相关性。但是,如果信号微弱,那么等待更多比特更可靠
在信号较强的情况下,诸如高于30dB-Hz,其中1毫秒差分相位噪声低,即,dot(y,x)中的错误概率低,只要实现minHistoAgreementCnt并在那个位数找到匹配,就有可能满足SCE。
在信号较弱的情况下,诸如低于30dB-Hz,点(y,x)中出现错误的概率较高,需要更多时间才能达到minHistoAgreementCnt。这是直方图方法的优点。通过积分比scSizeXY更长的时间,可以用其它正确的事件来克服错误。
如何将直方图与真实的次级码进行比较
用于差分检测到的位改变的匹配方法是首先生成真实序列的导数。例如,上面的序列,当两个连续的位不同时,发生改变位。用于第一位的改变使用最后一位作为较提前的位。在这种情况下,最后一位为1,第一位为零。因此,第一个改变位为1。第2位为0并且第1位为0,所以第二个改变位为0。上述序列的导数为101010100101001010101111。
第二步是将histoChange和histoNoChange数组合并为单个数组。在每个区间中,比较这两个值。如果histoChange计数大于histoNoChange计数,那么结果被声明为改变。如果histoNoChange计数大于histoChange计数,那么结果被声明为无改变。如果计数相等,那么结果被声明为无决定,记录为结果=-1。以逻辑形式:令changeMeas为在每个区间测得的改变。
等式32
接下来,将直方图结果与所有可能相位处的真实次级码导数进行比较。这等效于其中两个序列在两个序列之间的所有可能偏移量上具有相同的改变或无改变决定的区间的计数求和。当一个序列先于另一个序列到达末尾时,它循环移位以产生剩余的区间。总和被最大化的移位是最可能的次级码相位。次级码的开始时间是开始时间,保存在msec0中,加上移位,再加上1个附加的毫秒以考虑获得第一个有效测得的位差分时的1毫秒延迟。
这种移位、比较、求和和最大化过程也可以用算法表示。在下面的双循环中,所有可能的真实相位都在外循环中进行测试。然后将移位的事实与测得的改变进行比较。在每个可能的相位位置,测试在每个区间测得的改变。如果测得的改变changeMeas[i]<0,那么意味着该区间处没有决定,并且该区间被忽略。这有效地减少了最大协议数。真实序列的导数是通过在当前和先前的真值位之间形成变化而生成的。当找到协议时,协议计数递增。在测试真实次级码导数的每个相位之后,将当前相位的协议计数与最大观察到的协议计数(即,最佳计数(bestCnt))进行比较。最高通过计数的位置被保存(bestPhase)。
等式33
用于导频信道的示例
该方法的示例在下面的表中示出。最左边的列是histo区间索引。右侧下一列是改变histo,后面跟着无改变histo。真值是右侧下一列。右起第2列是meas决策列,它是两个测得的改变和无改变histo的合并,1表示改变大于无改变。最右侧的列是真值序列导数,如果当前位与前一位不同,那么为1。在第一行,前一位取自真值序列的最后一位。通过检查可以看出meas决策列比truthChange滞后3行。因此,bestPhase将位于i4处的第4行,因为此列中的第一个1与第0行或真值改变列中的第一个1一致。序列的第一位的时间标记也早一毫秒,因为差分位滞后一毫秒被检测到。
表1具有数据信道的示例l
这是用于AI数据信道的结果。次级码长20位。顶行是直方图区间索引:i0,i1..i10。第二行是histoChange数组。第三行是noChangeHisto数组。第四行是真正的次级码。注意的是,直方图积分了499+20毫秒,因为每个区间有499个观察。注意的是,在第4个区间(区间i3)中,changeHisto与noChangeHisto几乎完全相同。由于整个次级码的数据位相位相同,因此导数在新序列的第一位不为零,因此仅影响序列开头的histo区间。因为第一位和最后一位都是一,所以序列开始时的预期结果是无改变决定。这个结果表明,在大约500个历元内,数据位改变率约为0.5。注意的是,最佳计数是20中的19,因为真实码导数在真实导数码开始时为零,但changeCnt略高,这意味着测得的改变为1,这是错误的。即使有位错误,但仍能找到正确的相位。
表2
应当注意的是,这是用强卫星制作的,并且远离第一位的所有位都具有相同数量的观察。这意味着点积检测器强。
现在考虑接收信号强度相对弱(大约25dB-Hz)的示例。这实际上比44dB-Hz的标称信号电平低19dB。下图示出了算法在大约1.6秒或大约1600个历元内的性能。真正的次级码相位是0。在实验的提前部分,bestPhase出现时bestCnt为16。
图8E示出在25db-Hz处20毫秒次级码相位长度差分检测器相位和协议计数。
下表示出这是如何发生的。在真实相位为0时协议计数为12。注意的是,有8个错误的区间,或者其中4个的边际为1,但3个也有错误边距5!第一个区间是数据位相位创建低边际的区间。在这种情况下,在相位0处的协议计数使用这些错误来产生更高的协议cnt=16。因此,对于较弱的信号,要求更高的阈值。
表3
但是,等待最佳协议计数为17会在msec=120345处产生正确的bestPhase0,这大约是1秒的积分时间。现在注意的是,错误的位估计发生在6的边际处。
表4
等待阈值为18产生这个结果。
表5
下面的图表示出了跟踪超过6秒之后的结果。边际变大并且没有错误。
表6
从这个分析来看,对于较弱的信号,每个位估计处的低边际会导致错误。一种解决方案是等待更长时间。另一种解决方案是将分量分组在一起,因为较短长度的直方图具有较高的边际并且被用于限制较长直方图的候选相位。任何设计的关键要素都是如何组合直方图、它们的信息和检测阈值。
通过聚合分量改进检测时间和准确性
现在考虑用于组合跨所有分量的次级码信息的其它解决方案。首先,联合确定跨四个分量的次级码相位提供结果的交叉检查。在第一示例中,A信道的SNR为25dB-Hz,并且B信道在23dB-Hz时弱2dB。具有100毫秒次级码估计的B信道导频每100毫秒形成一次,最佳相位需要400毫秒才能达到正确的值0。前3个估计具有低最佳计数,因此它们显然是低置信度。但是,具有4毫秒次级码的B信道数据迅速收敛到正确的相位。此外,错误的B导频估计具有正确的模4毫秒估计。B导频信道最佳相位估计为46,55和46,其模04毫秒估计为2、3和2。而且,B数据估计与A导频和A数据估计一致,取模它们的次级长度。例如,A数据估计模4为零,A导频估计模4为零。而且,A导频估计模20与A数据估计一致。
图8F示出差分检测器的长期四个单独分量。
因此,第一种组合方式是核实较大长度的次级码估计模较短的长度估计是否一致。这是作为联合方法的逻辑检查。
另一种更代数的方法是将所有次级码组合到单个搜索中。直方图不能混合到单个阵列中,但可以重复较短的直方图以在每个区间处形成单个次级多位序列。图像如下所示:
Gallieo组合次级码方法
考虑Gallieo情况。A数据是20个历元。A和B导频是100个历元。A数据是4个历元。因此,A数据重复4次以产生100毫秒的序列。4毫秒B数据重复24次以产生100历元序列。
图8G示出所有四个分量上Gallieo次级码相位长度的图像。
真正的差分次级码也以同样的方式重复。
然后图像是有一个100历元的直方图,每个区间有4位。因此,测得的位为changeMeas(i,j),其中i=1,4且j=1,100。真正的导数数组changeTrue(i,j)同理重复。在每个区间,检查每个changeMeas(i,j)数据是否有效(不等于改变相对于无改变并且至少一票),然后将每个位与真实位进行比较。每个区间的协议计数最多为4。在真实数据的100个可能相位中搜索最佳相位。注意的是,A和B数据信道数据将对每个区间的数据进行投票。概率也在每个区间处求和。
这里是如何将较小长度的Bdata添加到119745毫秒以恢复正确的检测的示例。虽然这不是详尽的搜索,但它示出了最佳相位现在是在真正的phase0而不是phase6捕获的。第一历元具有数据位相位反转,因此该位丢失。但其余3位在phase0被正确检测到。注意的是,测得的改变被复制4次以填充20个区间。接下来,真正的次级码改变被向下移动6个区间(等同于移位2,因为序列只有4位)以匹配Adata上的phase6假设。在这个位置,与phase6的Bdata协议每4位只产生一位。在Adata协议中加入Bdata协议后,phase0的协议最好。
表7
从差分位概率生成检测阈值
上面的这些示例应当强调这样一个条件,即,每个直方图区间的边距是正确概率的指示器。但是,另一个指示器是收集每个位时的信号强度。例如,当单个位来自强信号时,它足以产生具有高置信度的边际1。
因此,一般而言,每个直方图区间都应当具有相关联的置信度因子或概率,该置信度因子或概率源自与相关因子数据的两个时期相关联的SNR,这些相关因子数据形成积分到histoChange或histoNoChange中的点积。
一种解决方案是计算每个点积的概率,其中将SNR映射到概率,其中高SNR的概率接近一,并且低SNR的概率接近零。在已经具有较高置信度位之后出现更新的低置信度位的情况下,也有可能不将新位包括到直方图中。
对于合并改变和无改变直方图与概率的改进
假设每个区间都有相关联的用于histoChange和histoNoChange两者的概率和,被定义为histoChangeProbSum和histoNoChangeProbSum。histoChange和histoNoChange保存计数。然后可以在最大概率生成改变或无改变决策的每个区间处交替生成合并结果,如下所示。概率之差除以计数之和产生区间概率,其值介于0和1之间,如下所示:
概率=(probSum1–probSum2)/(probCnt1+probCnt2)。如果两者具有相似的概率,那么概率将接近0。如果其中一个大得多,那么概率将接近1。
还对每个次级码序列的可用测得位数进行计数。
方法1)
/>
方法2)另一种方法是像以前一样使用基于计数的决策,但以相同的方式得出概率
/>
假定在特定区间,改变总和为100个历元,并且改变概率总和为50,并且无改变总和为10个历元,无改变概率总和为5,于是这两个源提供等效信息。marginProb是90/100,changeProb是45/110。现在考虑低边际情况。假定改变总和为100个历元,并且改变概率总和为15,而无改变总和为98个历元,并且无改变概率总和为20。在此marginProb为2/198,changeProb为5/198。这种情况会发生在所有低SNR更新的情况下。在这种情况下,最佳一致性的阈值要求接近序列的长度。
因此,用于最佳一致性计数的通过阈值需要基于概率总和或边际总和,具体取决于哪种方法是优选的。
定义confidence(y)=probSum(y)或marginSum(y),以表示可用位的置信度。期望的结果是:如果置信度非常高,那么允许基于序列的特点的最小阈值(即,不可能获得错误通过的最小位数)进行快速检测。错误通过意味着序列中有多于一个相同的位组合。称其为minFalsePassThresh。下一步是基于基于边际或概率的置信度计算第二个阈值。置信度越低,阈值越高。虽然阈值可以被计算为基于每个位正确的概率密度函数的联合概率,但更简单的方法是通过置信度缩放序列长度,然后从长度中减去它:即,阈值=(1–置信度)*长度。以这种方式,如果置信度为1,那么阈值为零,并且minFalsePassThresh设置最小阈值。在另一个极端,如果置信度为0,那么最小阈值变为长度。应当指出的是,对于数据序列,由于数据引起的相位反转将最大值减1。但是,一般而言,最长的序列是没有数据序列的导频码,因此最好的协议可以达到全长。
If(最长分量的availBits(y)>minFalsePassThresh)
minConfThresh=(1–confidence)*maxPilotLength
注意的是,当组合分量时,协议计数最多可以达到最大导频长度的4倍。因此,测试有两个阶段。首先,附加分量被用于识别最佳候选。其次,使用用于那个导频的协议计数来做出最终决定。
测试变为:
使用bestCnt中的所有分量找到最佳相位。
然后,从候选导频码中找到在bestPhase处具有最大一致性计数的分量maxY,并使用来自这个分量的availBits。
测试:
If(availBits(maxY)>minFalsePassThresh)
If(agreeCnt(maxY,bestPhase)>minConfThresh)
声明在bestPhase处找到次级码相位
最佳相位提供从直方图被锚定的任意点开始的次级码相位的偏移量。而且,由于差异要求2位来初始化,因此直方图索引和开始时间滞后了一个历元。因此,当前次级码的预测开始是简单的开始时间标记加上最佳相位偏移量减去一毫秒以补偿第一个历元。下一个次级码相位的开始时间可以以这种方式计算:它是
极端情况:频率误差大于250Hz
使用当前前一历元之间的相位差的频率误差鉴别器根据点检测器被回绕以处置次级码的相位反转。这种回绕有效地将鉴别器范围从+/-500Hz减少到+/-250Hz。因此,如果频率误差大于250Hz并且小于500Hz,那么次级码确定将起作用,但频率跟踪回路不会收敛到正确的频率。但是,随着频率误差更接近500Hz,相关器值中的噪声将导致点积检测器失效。因此,对于较弱的信号,当频率误差高于250Hz时,该方法将不可靠。
这种情况的一种解决方案是实现别名锁定方法。一种方法是实现相关器的另一个集合,这些相关器与经滤波的中心频率间隔开+/-500Hz。然后,如果与这些相关器之一相关联的功率高于中心功率,那么声明别名条件。在这种情况下,估计的频率被重置为最强功率的频率。由于先前的信息将是错误的,因此次级码相位估计过程将重新开始。
检测大频率误差的另一种方法是观察跨一组并行相关器的码相位轨迹。考虑一组Nc个相关器,其中中心相关器码相位是从主码搜索中导出的。该相关器组必须覆盖一定范围的码相位,以包含基于最大频率误差(比如500hz)的码相位轨迹改变。E5a处的码改变超过100毫秒=500/115*0.1=0.44个码片。因此,至少要求3个相关器,一个以主码搜索频率传播的中心相关器,然后加上或减去一个间隔为1/2码片的附加相关器,以捕获由于频率误差引起的最坏情况下的码滑动。
作为学习码多普勒误差并因此学习载波频率误差的方法,与中心相关器的码相位偏移量由与常规码跟踪回路一起使用的鉴别器形成。码多普勒可以根据鉴别器随时间的轨迹进行估计。然后可以将这个轨迹的斜率转换为载波频率误差估计。
相对于相关器中心的码相位的码相位偏移量轨迹的模型为:
等式34
codeOffset(t)=offset0+offsetSlope*(t–t0).
在每个历元,使用3个相关器和常规的延迟锁定环来估计码相位偏移量,其中码从峰值偏移量:
等式35
codeOffset(t)=(powerEarly(t)–powerLate(t))/Normalizer(t)(码间距单位)
Normalizer(t)与即时功率成正比并且可以根据或者提前和滞后相关器功率的平均值或者即时相关器功率来估计。它应当被缩放以将提前减滞后功率转换为每个码片的码样本中的码偏移量。
等式36
一个这样的归一化器=即时功率*4*1.5*(1/To–1)/To
其中To是每个码片的相关器样本,通常约为2,并且用于即时功率的比例因子约为3。
为了改进灵敏度,每个相关器中的功率与20个历元的移动窗口求和。对于历元的100毫秒集合,有100个codeOffset,每个codeOffset是20个历元上的平均值。线性回归如下应用:令y(t)=H(t)*x(t)+噪声,其中y=[codeOffset(t0)…codeOffset(t99)],x=[offset0offsetSlope]T和H=[10,1dt(1),…1dt(N-1)]T。Y是测量的Nx1列向量,X是2x1未知向量,并且H是系数的Nx2矩阵。解是X=(HTH)-1HT,其可以用标准矩阵方法来求解。后验拟合残差(即,估计的状态与测量的平方和)保留定位的质量的信息。(HTH)-1的行列式指示解的可观察性。
这种方法可以被实现为闭环或开环。在这两种情况下,斜率都是在更长的时间内(诸如100毫秒)估计的。在闭环情况下,鉴别器可以被用于每20毫秒移位相关器组的估计的码相位。在这种情况下,codeOffset(t)将移位与鉴别器输出相结合,以产生等效的开环估计。
等式37
codeOffsetCL(t)=codeOffset(t)+sumOfShifts(t)
其中codeOffSetCL是时间t处基于闭环的偏移量估计。它是总移位sumOfShifts(t)加上新的基于鉴别器的估计codeOffset(t)的总和。
以某种更新速率,比如每100毫秒,处理用于开环方法的codeOffset(t)或用于闭环方法的codeOffsetCL(t),诸如用线性回归,以产生码片中的码斜率。然后如下将其转换成以Hz为单位的载波多普勒:码片中的码多普勒根据码多普勒和载波频率之间的关系,codeDoppler(chip)=-df(载波Hz)/115*dt。求解df:-115*codeChange/dt=df。令codeSlope=codeChange/dt。
等式38
E5a处以载波Hz为单位的dfcode=-codeSlope(码片)*115hz/E5a处来自相关器的码片
E5ab处以载波Hz为单位的dfcode=-codeSlope^(码片/秒)*118hz/E5b处来自相关器的码片
如果df的量值大,比如说大于250Hz,其中回绕的频率误差估计将被混叠,可以通过创建等式14中给出的增量相位估计器的未回绕版本来估计混叠频率。未回绕的增量频率是由未回绕的sin和cos项形成。当码多普勒(码斜率)大时选择未回绕的鉴别器,而当回归值得信任时(即,R2),确定的置信度接近1。R2描述拟合之后残差的平方和与回归之前数据的平方和相比有多好。接近1的值表示回归拟合良好。接近零的值表示回归拟合差,或者斜率为零。
等式39
这个频率误差作为对估计载波频率的一次性调整应用于后续相关,并且重置直方图观察器。
400Hz误差的示例
图8H示出了具有400Hz频率误差的未回绕的cos和sin检测器。这种级别的频率误差造成在2.5毫秒内旋转360度。检测器还示出次级码相位反转的影响。
图8H示出FLL频率检测器400Hz误差示例。
计算出的码斜率为7.570794码片/秒,R2=0.994。转换成载波频率误差产生7.57个单元格/秒*0.5个码片/单元格*-115个周期/码片=-435Hz。回绕的频率误差检测器产生105Hz的频率误差。未回绕的频率误差检测器产生-395Hz。由于码多普勒斜率比未回绕的更匹配未回绕的检测器,因此声明别名条件、校正频率并重置直方图。如果保存了相关器,那么可以重新旋转它们并且可以重新计算差分检测器。
图8I示出具有400Hz误差的DLL示例。
经校正的检测器分量如下所示。
图8J示出移除具有395Hz的FLL检测器示例。
图8J示出了小的残余频率误差,但是已经移除了快速旋转检测器的大频率误差,从作为检测器的对象的次级码产生了相位反转。在另一个实施例中,计算了两个附加的相关器轨迹:一个被500Hz回绕,另一个被-500Hz回绕。如果频率误差大于250Hz,那么并联检测器之一将正确地移除大部分频率误差,从而允许识别次级码。
图8K示出示例次级码捕获流程。
聚合分量以改善次级码捕获的另一种方法
一般而言,相关器和码对于每个分量是不同的。因此,用于每个分量的相位检测器是不同的并且具有不同的噪声。而且,因为数据信道的长度一般较短,所以它们具有更多的观察并且有可能比导频码更长的时间进行平均。在这种方法中,每个分量在其序列中的每个毫秒维持其改变和无改变总和并设置changeMeas[i]。以某个最小更新速率,快到每毫秒,或慢到最长序列,所有分量都合并到长度为最大分量的长度的单个测试中。最长相位的每一相串联测试。在每个相位的每个毫秒,用根据每个分量回绕的索引测试改变和无改变总和的索引,如等式33中所示。测试所有分量。假设Galileo情况,其中A和B正交分量的次级码长度为100位,并且A同相为20位,并且B同相为4位。在下面的示例中,两个导频码为100位并且changeMeas数组具有100位。但是,这两个数据分量的长度较短,是导频长度的整数倍。为了处置这个问题,重用changeMeas。数据分量的索引只是导频索引模数据序列长度,如下面针对Ai和Bi分量所示。注意的是,对于每个较长的导频分量,所有分量都混合到单个一致计数中。为了确定最佳候选的资格,还对第二最佳候选进行排序,以便在第一和第二最高一致计数之间留出边际。
这可以被表示为以值1,0测得的改变的异或以及所有四个分量的值为1,0的次级码的改变
在每个阶段,次级码的τ的可能相位,用于Gallieo信号的所有四个分量的一致计数加在一起,如下所示:
等式40
其中
表示异或运算符,当两个输入不同时为1,否则为0;
cmAi是在同相A旁带上测得的历元到历元差分相位模糊性或改变。尽可能长时间地积分;
dscAi是同相A旁带上次级码序列的导数。如果码从之前时间改变为当前时间,那么值为1,否则为0;
按算法写为:
等式41
/>
/>
这种基于直方图的次级码估计方法的独特之处:
1.最多四个分量被单码跟踪回路和单频率跟踪回路跟踪。
a.A和B的频率误差鉴别器被翻译到中心信道;
2.该方法适用于高达250Hz的大频率误差并检测更大的频率误差并重启该过程;
a.次级码相位估计对用于强信号的高达500Hz的频率误差起作用,但目标也是在该过程期间逐渐引入频率误差;
3.频率跟踪回路调整频率相位检测器以跟踪以中心信道为参考的频率误差;
4.差分次级码位跨信道组合,以允许在较低的输入信号强度下进行检测;
a.由于更多的观察而具有更高的置信度的较短长度有助于减少较大长度中的模糊性。等同于限制较长序列的候选相位对较短序列取模与较短序列一致;
5.每个区间的置信度由变化和无变化直方图之间的边际以及根据其SNR的每个差分相位位的置信度来量化。
第二种独立方法:相干次级编码方法
上面的差分码位直方图方法对于较强的信号并且对于具有增加积分时间的较弱信号工作良好。但是,它实际上是宽带宽估计器或非相干估计器,每毫秒对数据求平方以检测相位反转。更弱的信号要求更窄带的检测器,该检测器不对噪声求平方以实现相干噪声求平均。窄带意味着频率必须已知,以便积分时间内的相位误差小于四分之一周期。L1+L5接收机一般会在第一次定位之后捕获L5次级码相位,并且L5频率可以被预测到速度和时钟漂移解决方***性,其数量级为几赫兹。相反,只有L5的接收机必须在定位之前捕获次级码相位,因此,L5频率的准确性受到主码相位捕获的精度的限制,其可以达到100赫兹或更高。在一个实施例中,接收机可以在主码相位捕获和次级码相位捕获之间采用频率估计步骤。但是,这不是优选的,因为它减少了捕获时间。优选方法是并发地学习频率误差和次级码相位,这也适用于弱信号。对此的解决方案是在多个频率上进行搜索的开环相干方法。
为了改进灵敏度,需要一种可以联合估计所有分量的次级码相位、可以积分比次级码相位序列更长的长度并且还可以考虑高达500Hz的高频误差的方法。
如果考虑100毫秒的次级码长度,其带宽为10Hz或+/-5Hz,那么大于10Hz的频率误差将在相关器上产生相位旋转,这将有效地旋转次级码的真实相位旋转,如下面的图中所示。图8L示出了原始的次级码序列。图8M示出了具有等于序列长度的时段的相位调制如何在周期的后半部分旋转相位。
图8L示出没有调频的码。
图8M示出具有10Hz频率误差的码。
因此,频率误差必须小于码BW的一半。即,df<=0.5/(以秒为单位的长度)。对于100个历元的次级码,诸如GallieoA和B旁带导频分量,BW=10Hz,并且最大频率误差为5Hz。这用两倍于最坏情况误差的频率搜索步长(即,10Hz)来满足。
在所有可能的次级码相位假设下,相干次级码相位方法使用同相和正交相关器将次级码序列的全长而不是差分与相似数量的历元相关联。为了处置频率误差,它还必须在频率误差的预期范围内对于所有可能的频率误差补偿码序列的相关器数据。该方法还必须允许对所有分量进行联合测试,并且还允许同化比最长次级码相序列长度更长的数据。
对于相干积分,次级码相序列被表示为值为+/-1的位序列。在时域中,对于具有4个分量的Galileo卫星,搜索可以如下表示:两个长度为100位的导频序列,以及两个长度为20位和4位的数据序列。它具有以下元素:它具有所有分量,它在{fmin,fmax}之间的频率范围内搜索,并经由在每个码相位τ和频率假设f存储在存储器中的先前更新的积分在最长次级码T的多个时段内尽可能长时间地积分。注意的是,量值而不是功率被积分。在为简单起见的第一个描述中,量值是从用于所有分量的100个历元的相干总和计算的。
超出导频码长度的更长的相干测试是可能的,但它要求更精细的频率搜索步骤,以避免相位改变大于四分之一周期,从而减少相干和。此外,不可能相干地组合顺序测试的复杂结果,因为频率误差的相位不会保持恒定并且能量会在积分中损失。为此,顺序测试以非相干方式组合。
测试是相干和非相干地进行积分直到边际,即,第一和第二最大一致性之间的分离在统计上是显著的。阈值是先验地选择的,以接近第一和第二最大次级码相关性之间的理论边际。不考虑数据位相位反转的最简单形式如下所示:
等式42
Agreement(τ,f,Ti)=({Σt=0 99scAi(mod(t–τ,20))*corrIAif(t)}2+{Σt=0 99scAi(mod(t–τ,20))*corrQAif(t)}2)1/2+({Σt=0 99scAq(mod(t–τ,100))*corrIAqf(t))}2+{Σt=0 99scAq(mod(t–τ,100))*corrQAqf(t)}2)1/2+({Σt=0 99scBi(mod(t–τ,4))*corrIBif(t)}2+{Σt=0 99scBi(mod(t–τ,4))*corrQBif(t)}2)1/2+({Σt=0 99scBq(mod(t–τ,100))*corrIBqf(t))}2+{Σt=0 99scBq(mod(t–τ,100))*corrQBqf(t)}2)1/2+Agreement(τ,f,Ti-1)
其中:
τ={0,2,..,99},并且f={fmin,fmax}={-500,-490,…,-10,0,10,…490,500},这是101个频率,并且T是100msec时段的数量,其中Ti是当前时段并且Ti-1是最后一个;
corrIXf(t)=corrIX(t)*cos(2πf*t)+corrQX(t)*sin(2πf*t)
corrQXf(t)=corrQX(t)*cos(2πf*t)–corrIX(t)*sin(2πf*t)
其中X=Ai,Aq,Bi,或Bq
Margin=max1{Agreement(τ,f)}–max2{Agreement(τ,f)}
If margin>Threshold
声明在码相位t1和频率f1处找到次级码相位
并退出测试
Else
继续
阈值是预定阈值。
关于相干测试的备注
首先注意有相关器数据的四个集合:Ai、Aq、Bi、Bq,并且每个集合都是复数:它有corrI和corrQ,它们是同相和正交相关。这些相关器针对每个频率f处的频率误差假设进行了预回绕。因此,复数相关器被转换成复数相关器的另一个集合,频率f被擦除。选择频率的范围以覆盖具有类似于1/T(秒)的频率步长的频率不确定性。因此,如果T=100毫秒,那么频率步长为10Hz并且最坏情况下的频率误差为0.5/0.1=5Hz。
还要注意较短的次级码序列(即,数据序列)被重复:20历元长度的序列重复5次,并且4历元长度的序列重复25次。这具有使较长序列候选远离较短序列的最强位置的权重降低的效果。
在这个示例中,复数和的平方和的平方根产生相关性的量值而不是幂。
对数据分量的相干积分的改进
上述方法有一个缺点,即,数据信道相关器对{corrIAi,corrQAi}和{corrIBi,corrQBi}由于数据位而具有附加的相位反转。这些反转与次级码起始位同步。数据位的影响是相干和对数据分量的量值不会线性增长。一种解决方案是根据次级码相位假设移动A和B数据分量的相关器的起点,然后在每个次级码序列的末尾形成量值。例如,相位0的数据A假设的起点将从第一个或第0个相关因子开始。第一相位的起点将从第二相位开始,依此类推。如下面的示例中所示:
以下伪码被用于推导出将较短的数据信道次级码与较长的导频信道组合所需的索引。
这里是历元如何称为毫秒m0、m1等的示例。次级码被称为sc0、sc1等。注意的是,当使用较长的导频次级码时,较短的数据码每4个历元重复一次,而数据信道历元数据是
对于相位0没有延迟,
m0,m1,m2,m3->ComputeMag.m4,m5,m6,m7->ComputeMag
Sc0,sc1,sc2,sc3sc0,sc1,sc2,sc3
对于相位1有1毫秒的延迟,
m0->ComputeMagm1,m2,m3,m4->ComputeMag
sc3sc0,sc1,sc2,sc3
对于相位2有2毫秒的延迟,
m0,m1->ComputeMagm2,m3,m4,m5ComputeMag
sc2,sc3 sc0,sc1,sc2,sc3
对于相位3有3毫秒的延迟,
m0,m1,m2->ComputeMagm3,m4,m5,m6->ComputeMag
sc1,sc2,sc3sc0,sc1,sc2,sc3
识别用于相位0(延迟0)的数据Bi的每个4毫秒相干和的前两个量值
+{Σt=0 t<4scBi(mod(t,4))*corrIBif(mod(t,4))}2+{Σt=0 t<4scBi(mod(t,4))*corrQBif(mod(t,4))}2
+{Σt=4 t<=7scBi(mod(t,4))*corrIBif(mod(t,4))}2+{Σt=4 t<=7scBi(mod(t,4))*corrQBif(mod(t,4))}2}1/2+…
对于相位1(延迟1)
{Σt=0 t<1scBi(mod(t-1,4))*corrIBif(mod(t-1,4))}2+{Σt=0 t<1scBi(mod(t-1,4))*corrQBif(mod(t-1,4))}2
+{Σt=1 t<5scBi(mod(t-1,4))*corrIBif(mod(t-1,4))}2+{Σt=1 t<5scBi(mod(t-1,4))*corrQBif(mod(t-1,4))}2+…
对于相位2(延迟2)
{Σt=0 t<2scBi(mod(t-2,4))*corrIBif(mod(t-2,4))}2+{Σt=0 t<2scBi(mod(t-2,4))*corrQBif(mod(t-2,4))}2
+{Σt=2 t<6scBi(mod(t-2,4))*corrIBif(mod(t-2,4))}2+{Σt=2 t<6scBi(mod(t-2,4))*corrQBif(mod(t-2,4))}2+..对于相位3(延迟3)
{Σt=0 t<3scBi(mod(t-3,4))*corrIBif(mod(t-3,4))}2+{Σt=0 t<3scBi(mod(t-3,4))*corrQBif(mod(t-3,4))}2
+{Σt=3 t<7scBi(mod(t-3,4))*corrIBif(mod(t-3,4))}2+{Σt=3 t<7scBi(mod(t-3,4))*corrQBif(mod(t-3,4))}2+…
因此,针对数据项的索引建立被修改,如下所示。
等式43
Agreement(τ,f,Ti)=({Σt=0 t<τscAi(mod(t-τ,4))*corrIAif(mod(t-τ,4))}2+{Σt=0 t<τscAi(mod(t-τ,4))*corrQAif(mod(t-τ,4))}2)1/2+{Σp=0 p<100/20({Σt=τ+20p t<=20p+19scAi(mod(t-τ,20))*corrIAif(t)}2+{Σt=τ+20p t<=20p+19scBi(mod(t-τ,20))*corrQAif(t)}2)1/2}*SFA+({Σt=1 100scAq(mod(t–τ,100))*corrIAqf(t))}2+{Σt=1 100scAq(mod(t–τ,100))*corrQAqf(t)}2)1/2+({Σt=0 t<τscBi(mod(t-τ,4))*corrIBif(mod(t-τ,4))}2+{Σt=0 t<τscBi(mod(t-τ,4))*corrQBif(mod(t-τ,4))}2)1/2+{Σp=0 p<100/4({Σt=τ+4p t<=4p+3scBi(mod(t-τ,4))*corrIBif(t))}2+{Σt=τ+4p t<=4p+3scBi(mod(t-τ,4))*corrQBif(t)}2})1/2}*SFB+({Σt=1 100scBq(mod(t–τ,100))*corrIBqf(t))}2+{Σt=1 100scBq(mod(t–τ,100))*corrQBqf(t))}2)1/2+Agreement(τ,f,Ti-1)
注意的是,A和B数据项有第一项来考虑τ>0且小于全长和之前的码长度的部分和。对于τ>0的值,结束历元将出现类似的最终部分和。
SFA和SFB是比例因子,用于考虑在数据位长度上具有附加平方的dataA和dataB项的增加。这些项可以被认为是调谐因子。SFA可以被设置为100个历元内非相干总和的数量:SFA=sqrt(5),SFB=sqrt(20)。
DataA分量的相关性
在44(参考0毫秒)处数据A相关器与具有真正导频次级码相位的数据A次级码的单个20历元相干相关的示例意味着预期数据A码相位为mod(44,20)=4(图示出5参考1)。频率误差为零。峰的量值约为9,700,000,并且第二个峰的量值为2,000,000,产生13.7dB的边际。相比之下,直方图方法的第一个最大值为20个计数,并且第二个最大值为16个计数,产生的边际仅为1.9dB。
图8N示出数据A示例。
现在应用步长为10Hz的+/-500Hz频率搜索以及400个历元上20个历元的相干积分和20个非相干积分。频谱如下所示。真实次级码相位正确地位于第4个区间(sc4)。峰量值为11,700,000,并且第二个峰为7,000,000左右,从而产生大约9dB的边际,与单频情况相比减少了4.8dB。
图8O示出DataB分量的相关性。
对于具有0Hz误差的单一频率处的单个4毫秒相干积分的B数据信道,峰量值为2,900,000并且第二个峰为1,450,000,从而产生近6dB的边际。相比之下,直方图方法的第一个最大值为4,第二个最大值为3,从而产生2.5dB的边际。
图8P示出数据B示例。
当产生100个非相干积分和4个历元相干积分的相同频率搜索时,峰为11,700,000并且第二个峰约为9,000,000,从而产生2.3dB的边际。
图8Q示出数据B次级码相关示例。
PilotA分量的相关性
具有0Hz误差的100个历元的Galileo导频次级码相位的单个100历元相干相关如下所示。它的峰量值为48,000,000并且第二个峰为3,900,000,从而产生21.8dB的边际。相比之下,直方图方法的第一个最大值为100并且第二个最大值为60,从而产生4.4dB的边际。
图8R示出0Hz处的导频A示例。
对于包含100个历元相干积分的4个非相干积分的相同频率搜索,每个频率处的最大量值如下所示。它具有类似的最高最大值48,000,000和第二个最大值14,000,000,从而产生10.7db的边际。
图8S示出导频A最大值示例。
总结差分和相干边际
表8汇总表
改进相干方法的计算效率
等式43中的方法示出了二维搜索:100个次级码相候选和101个频率候选。它可以在时域中通过两个循环实现:
1.频率上有外循环。用于每个分量的复相关器乘以复指数以执行频移。外循环搜索所有候选频率。
2.次级码相位上的内循环。测试了所有次级码相位假设。这一步是相干和发生的地方。在时域中,这个步骤是高效的,因为每个码位+/-1,其作为加法或减法高效地实现。
这种方法要求在T个历元的每个导频长度积分处执行以下指令:
外循环要求对Aq、Bq进行200次复数乘法,对Ai进行20次复数乘法,对Bi进行4次复数乘法,共计224次复数乘法,然后复制224次来实现移位。
内循环要求基于次级码值进行大约224次复数加法或减法。协议更新要求224个量值,然后相加400次以更新用于4个分量的协议,其中数据分量跨100个历元重用相同的20或4个值。因此,一个内循环是624次加法和224次量值。
一个频率要求外循环和100个内循环,这等于62400次加法、22400次量值、224次乘法和224次移位。因此,100个外循环要求6,240,000次加法、2,240,000次量值、22,400次复数乘法和22,400次移位。量值可以近似地作为一系列移位和加法高效地实现。
频域相干方法
也有可能在频域中实现这种相同的相干方法。它产生相同的一致和。最初,DFT取自用于所有分量的输入相关器和次级码序列。通过取相关器和码的复共轭的乘积,然后取逆DFT(IDFT)(即,时域中的相关等同于频域中与应用于乘法的一个元素的复共轭的乘积),相干次级码相位隐含地出现。频率搜索循环可以通过利用DFT的特性来执行,其中在时域中乘以频率为DFT分辨率的倍数的复指数等同于DFT区间移动那个倍数。下面的等式建立了用于移位方向和对应频率下移的惯例。
等式44
ejw0t*f(t)=F(w–w0),similarlye-jw0t*f(t)=F(w+w0),e-jw0t=cos(w0)–j*sin(w0)
定义f(t)=realA+j*imagA=cosA+j*sinA
e-jw0t*f(t)=(cosw+j*sinw)*cos(w0)–j*sin(w0)
=[cosw*cosw0+sinw*sinw0]+j*[sinw*cosw0-cosw*sinw0]
=cos(w-w0)+j*sin(w-w0)
频谱中每个频率区间的频率分辨率由时域相关器的采样率除以DFT中的区间数确定。考虑相关器以1kHz采样,并且区间数为100。因此分辨率为1000hz/100区间=10Hz/区间。因此,+/-一个区间的移位与乘以-/+10Hz对应(注意负关系)。N个区间的移位与N*10Hz对应。当N>区间/2时,频率向负方向移动并且映射变为–(移位–区间)*10Hz。
可以通过测试或者输入或者码频谱之一的所有可能移位来测试作为频率分辨率的倍数的相干带宽内所有可能的频率。在与每个频率对应的每个移位处,与码相位假设对应的每个索引处的IDFT的量值被添加到Agreement(τ,f,Ti-1)的运行总和中。换句话说,从数学上讲,该测试等同于等式43,其中次级码的总和乘以特定相位处的频移相关器是对应索引处的IFFT结果。
作为实施方式细节,将数据A和B分量保留在时域中也是有效的,因为它们的长度较小,并且还需要在每个序列的末尾求平方。此外,对于所有次级码相位假设,相关器数据并不相同,因此,对于这些次级码相位假设,相关器数据的DFT长度不同。
1.初始化步骤采用2个复数相关器序列中的每一个的DFT以及实值次级码序列的DFT。此处不包括数据A和B分量。
a.SCAQ(ω)=DFT(scAq(t)+j*0),t=(0,99)
b.SCBQ(ω)=DFT(scBq(t)+j*0),t=(0,99)
c.CORRAQ(ω)=DFT(corrIAq(t)+j*corrQAq(t)),t=(0,99)
d.CORRBQ(ω)=DFT(corrIBq(t)+j*corrQBq(t)),t=(0,99)
2.单个循环迭代通过复相关器序列的DFT的所有可能移位。第一个移位为零,然后后续移位为一个正频率区间(等同于擦除那个频率的正频移)。然后将结果所得的移位后的复相关器DFT乘以码序列DFT的复共轭。对结果所得的乘积进行IDFT。复数IDFT的量值取自每个索引并添加到Agreement(τ,f,Ti-1),其中t是IDFT索引并且f是相关器DFT移位索引。
a.将所有相关器样本频谱移动最长序列的一个区间
i.CORRAQ(ωi)=CORRAQ(ω-i*ω)
ii.CORRBQ(ωi)=CORRBQ(ω-i*ω)
b.将相关器频谱乘以码频谱(*表示复共轭)
i.YAQ=CORRAQ(ωi)*SCAQ*(ω),ω=(0,99)
ii.YBQ=CORRBQ(ωi)*SCAQ*(ω),ω=(0,99)
c.反转频谱乘积
i.yAq(τ)=IDFT(YAQ),τ=(0,99)
ii.yBq(τ)=IDFT(YBQ),τ=(0,99)
d.使用时域相关性Yab(τ)形成协议Agreement(τ,f,Ti):
Agreement(τ,f,Ti)=+AgreementAi(τ,f,Ti)++AgreementBi(τ,f,Ti)+({real(yAq(τ,f)}2+{imag(yAq(τ,f)}2)1/2+({real(yBq(τ,f)}2+{imag(yBq(τ,f)}2)1/2+Agreement(τ,f,Ti-1)
注意的是,数据A和B分量的计算与等式43相同。
图8T示出相干方法示例流程图。
相干方法的计算注意事项
所需的指令基于每个DFT的指令数。假设N点DFT要求N2,每级有6次加法和7次乘法。对于N=100,这是60,000次加法和70,000次乘法。而且,忽略数据A和B分量,因为它们在时域和频域之间将是常见的。
初始化步骤要求具有(10000+10000)个DFT阶段的2个DFTS,
主循环要求对所有分量进行200次移位,然后是200个复数倍数,然后是4个用IDFT实现的IDFT。循环100次导致总共2+100(2)个DFT,以及100*200次移位和100*200次复数乘法。然后有200个量值和400次加法
总指令为100*20000个阶段*(6次加法和7次乘法)+100*(200次移位+200次复数乘法+200个量值+400次加法)=12,000,000次加法+14,000,800次乘法+20000次移位+20000次复数乘法+20000次加法+40000次加法。虽然更新量值的最后4项在这两种方法中都很常见的,但DFT方法的乘数要多得多。
但是,如果实现FFT,那么效率会进一步提高。作为用于100点序列的上限,考虑针对10的128点基数-2FFT。在这种情况下,内核操作的总数为7*64=448(log2(128)=7和28/2=64)而不是用于DFT的100*100。假设将20点和4点实现为DFT。每个内核有6次加法和4次乘法(如果预先计算旋转因子,那么还少3次乘法)。在这种情况下,100点FFT重复200次,于是用于这个元素的指令为200*448阶段*(6次加法+4次乘法)=537,600次加法和627,200次乘法。优化的混合基数(5,5,4)100点FFT应当更加高效。
差分和相干方法的结果
以下部分总结了两种方法的比较,以及使用多个分量如何提高在比没有附加分量的情况下更低的信号电平下确定次级码相位的能力。对于强信号,两种方法都正确估计了次级码相位。相干方法具有联合估计频率误差的优点。差分方法要求单独的频率跟踪回路来估计频率误差,但可以在高达1/4差分带宽的频率误差下操作。如预期的那样,相干方法在信号较弱的情况下优于差分方法,因为它具有更窄的带宽。但是,它要求显著更多的计算。在优选实施例中,差分方法用于较强的信号,而相干方法用于较弱的信号。在另一个实施例中,两种方法都被使用以提供两个估计,因此当两者具有相同结果时提供高置信度。
在3个不同信号电平中的每一个上进行10次实验的结果如下所示。将15dB噪声添加到标称信号电平后,差分方法要求导频码的多个周期才能实现高检测概率。虽然单个导频分量有时甚至在导频序列的4个周期后仍会失败,但组合分量方法在这个信号级别上是完美的。在这个点之后,差分方法故障率会随着噪声的增加而迅速增加。
表9直方图方法示例表
相干方法结果在下面示出。在增加15db噪声的情况下,单个试验结果几乎是完美的。但是,组合分量方法即使在添加噪声低至20db的一个周期后也是完美的。频率误差也小,一般在5hz以内。对于单分量情况,添加噪声为25dB时的故障率开始显著增加,但对于多分量情况则要低得多。
表10相干方法示例表
用于A导频次级码的频率搜索的示例如下所示。最高最大值正确地为44(45从第一个区间开始为1)。最高最大值为570,000,第二个最大值为350,000,从而产生边际7.15dB。
图8U示出相干方法示例次级相关。
第三种独立方法:交叉SV集合相关积分方法
GNSS信号的工作原理是直接序列扩频–CDMA信令方案。在大多数GNSS信号中,次级码覆盖在主码之上,以增加信号的自相关和互相关特性。与主码相比,次级码的长度相对短,但是次级码的持续时间(或周期)长,因为它们在主码的几个码周期上运行。Gallieo和Beidou中的导频信号分量长度为100,长度为100ms。因此,即使在捕获主码相位之后,接收机也必须花费附加的时间来捕获次级码相位。
图8V示出了假设卫星时钟误差可以忽略不计的情况下次级码是如何从卫星传输的。
图8V示出传输时跨SV的次级码对准(理想情况)。
但是,接收机以与发射时间不同的延迟接收每个卫星信号。此外,每个卫星可以具有不同的卫星时钟误差,并且这些会在接收机处引入附加的相对延迟。
图8W示出接收机处的次级码相位-图示。
这个算法的目标是通过考虑来自多个卫星的接收信号的相对延迟信息来识别次级码相位。
算法的核心步骤:
i.捕获主码。令S为其原始码已被捕获的卫星的数量。每个主码周期(例如,每毫秒)并为每个卫星产生新的相关值。如果信号有两个分量(A和B),那么每个主码周期产生两个相关值,并且S的值会加倍。
ii.将相关值布置在矩阵中,其中行与SV(或SV的信号分量)对应并且列与时间对应。如果卫星的集合包含来自多个***(或星座)的SV,那么***之间的估计的时间偏移量是预定位置的一部分。即,基于初始位置和时间来估计次级码相位。这些估计可以从网络服务器提供或使用众所周知的技术在接收机内计算。
取决于捕获的SV的集合,接收机处于以下情况之一和对应的对准过程。
具有相同次级码长度但不同次级码的SV/分量:
在这种情况下,由于相同的次级码长度,对准是最简单的。捕获一个SV/分量的次级码相位适用于所有其它SV。
具有不同次级码长度的SV/分量:
理想情况下,上下文中SV的次级码的长度是那个集合中最小长度码的整数倍,或者至少具有不太大的最小公倍数(LCM)。已经公布的GPS、Galileo、Beidou次级码确实是这种情况,次级码长度为4(GalileoE5b数据)、5(BeidouB2a数据)、20(GPSL5导频)、100(GalileoE5a导频、GalileoE5b导频、BeidouB2a导频)。拥有小的LCM不是必需的,但有助于降低实施方式的复杂性。在这种情况下捕获一个SV/分量的次级码相位可以毫无模糊性地翻译为列表中的其它SV。
具有相同次级码序列的SV/分量:
这是用于数据信号的已发布Gallieo和Beidou次级码的情况。在BeidouB2a和GallieoE5a/E5b中,数据信号分量具有相同的次级码。在这种情况下,捕获一个卫星/分量的次级码相位适用于所有其它具有相同次级码序列的SV。
令N是为次级码估计算法选择的主码周期数。于是所布置的相
关值的矩阵E为:
用于三个SV的相关值的示例布置,每个SV具有两个信号分量,持续10毫秒,产生6x10的相关值矩阵。如果接收机在次级码状态下没有B(或A)信道,那么无需添加该信道。对于相对延迟接近相对延迟估计误差边界的卫星,信号强度较低的卫星(从捕获边际中获得)被从列表中剔除。
iii.对于每一列,找到使该列的相关和最大化的位模式。
a.位模式只是由次级码的二进制值组成的位序列。在6x10矩阵示例中,沿列维度的位序列为6位宽,因此有26=64种模式或可能性(十进制表示法为0到63)。
b.找出针对所有假设(位模式)的每一列的相关和。要找到跨列的相关和,将次级码位模式假设与E中列的相关值相乘。如果是用于第k个主码周期(列)的用于第i个卫星/组件(行)的次级码位,那么用于第k列的相关和是
v′k=(b′k)T·Ek
生成相关和的这个步骤是针对不同的次级码假设(位模式)执行的。接收机具有预定位信息,使用该信息估计每个卫星的相对时间偏移量。被测试的位模式(或主码周期)的数量取决于相对时间偏移量估计的准确性。作为示例,如果卫星之间的相对时间偏移量估计为+/-10毫秒,那么只需要测试20个假设(通常一个主码周期=1毫秒),用J表示。用于每个假设的位模式是从主机计算机中存储的次级码表中获得的。
c.然后对于每个假设j=1:J,为每一列产生一个和的相关和。第一个和来自SV维度,第二个和来自时间维度相关和是.这些是跨SV维度的相干相关和。被测试的位模式是/>
d.在这个阶段,在找到最大相关和之前,对相关和进行相干或非相干积分以获得独特的峰。这个结果是和的相关和。
i.跨时间维度对相关和进行相干积分的步骤:
其中N是相干积分持续时间内主码周期的数量。
ii.跨时间维度对相关和进行非相干积分的步骤:
其中N是非相干积分持续时间内主码周期的数量。
e.找出所有假设的最大值。使用和的最大相关和的索引,识别导致和的最大相关和以及和的第二大相关和的位模式。
v1=max(v″j),第一个最大值
m1=maxindex(v″j),第一个最大值的索引
b1=b′j(m1),产生第一个最大值的位模式
v2=secondmax(v″j),s第二个最大值
m2=secondmaxindex(v″j),第二个最大值的索引
b2=b″j(m2),产生第二个最大值的位模式
f.将位模式存储在B中并将相关和存储在V中。当考虑的卫星数量较少时,相关和可能彼此接近(比如在3dB以内)。在这种情况下,两个值都按和的相关和的降序存储(第一个最大值作为第一个,第二个最大值作为第二个)
/>
iv.最后如下获得次级码相位
a.将v1与预定义的SNR阈值以及与第二个最大v;进行比较。如果v1通过阈值并且具有显著的(大于3dB)最大到第二最大边际,那么如果选择b1作为次级码索引位模式。
b.如果阈值检查或第二个最大边际检查失败,那么从下一个主码周期(列)开始继续J假设检验的过程,并且B和V矩阵都填充和的最大相关和以及位模式的下一个集合并且对照阈值进行检查。
c.在一个示例中,填充B和V矩阵的前一步(步骤b)也充当a中通过案例的核实。如果在a中正确识别出次级码相位,那么位模式将遵循次级码表。
d.在另一个示例中,可以简单地扩展求和,检查100个不同的次级码假设。
v.次级码表中位模式(通过上述过程获得)的位置是所使用的卫星的次级码相位。注意的是,交叉SV算法的优点是一次获得用于所有被测试卫星的次级码。
选择N的过程:
在每个主码周期(通常为每毫秒)形成的位模式取决于为次级码捕获考虑的PRN及其相对偏移量。如此形成的位模式不应当重复用于其它主码周期。通过设计,对于GPSL5、GalileoE5和BeidouB2中的导频信道,如果考虑整个次级码长度,那么位模式是唯一的。但这个算法中的创新在于使用小于最大次级码长度来捕获次级码相位。
下表中示出了对于给定数量的卫星S,N至少应当是多少。这是通过比较由卫星的各种组合形成的位模式发现的。
表11交叉SV示例
这里是个示例。让我们考虑这样一种情况,其中GalileoPRN3、8、13和2在主码捕获阶段被宣布成功,相对时间偏移量估计分别为80、87、76和76毫秒(模100ms)。如果这些PRN的次级码按照估计的相对时间偏移量对准,那么下表示出了不同N值的最大重复次数。阴影行示出了没有重复的N,这意味着位模式是独特的。这个特定SV组合所需的最小N小于表11中的N(对于3个SV为9,对于4个SV为6),因为表11考虑了已发布的次级码的几种不同组合。
考虑的SV3、8、13:
考虑的SV3、8、13、2:
vi.为了核实,执行以下步骤
a.序列移动1(其与下一毫秒对应),就核实最小的N,
b.每个卫星为N毫秒积分的相关值应当根据N产生积分增益。
可以在集合中一起使用的卫星的数量与来自辅助或预定位的卫星之间的相对延迟估计的准确性有关。如果准确性是100us,并且如果其中一些卫星的延迟接近毫秒边界,那么可以消除那些卫星以最小化计算。
该算法可以应用于主码捕获后的几种情况,其中一些是:
情况I:任何一个卫星的次级码同步之前;
情况II:时间同步之前捕获任何一个卫星的次级码之后;
情况III:时间同步之后。
如果在进行这个集合搜索时卫星的数量增加,那么可以即时包括那些卫星。但是,为了最小化算法所需的计算,如果算法不匹配或者使用那个卫星进行核实阶段,那么可以在下一步结合那些卫星。
演示:
演示的输入是所有卫星在主码捕获后的一毫秒相关值,如下表所示。这个列表中的卫星是GalileoPRN3、13、8和2,A和B信道。
针对所有假设在次级码的整个长度上进行的次级码搜索提供了次级码移位的结果。A和B分量将导致相同的次级码移位,因为延迟彼此非常接近。如前面所提到的,主码移位非常接近主码边界(例如,在+/-10us内,预定义的设计参数)的卫星被排除在用于交叉SV组合的SV列表之外。这个示例数据集中用于PRN3、8、13、2的次级码移位分别为10、17、6和6。
图8X示出超过100ms导频次级码的次级相关示例。
让我们假设我们从估计的次级码延迟的随机偏移量开始。为此,假设估计中存在-30ms的误差。因此,算法的次级码延迟估计输入是[10,17,6,6]-30=[-20,-13,-24,-24]=[80,87,76,76](负移位是从次级码的最大长度滚动,在这种情况下为100)。
从估计的延迟开始,计算积分持续时间为10ms的所有8个分量(每个SV2个分量,4个SV)的各个相关值。10ms被选择为高于上表中的最小长度与分量数量的数字。更高的积分度也增加了对更强卫星的偏向,因此弱卫星不会影响交叉SV和。在这个特定的数据集中,情况具有弱卫星PRN3并且PRN13强,PRN8和2相对弱。各个次级码相关性如下图8Y中所示。
图8Y示出示例8分量次级相关。
正如预期的那样,尽管噪声在这里起着很大的作用并且存在非峰尖峰,但次级码最大值几乎对准。但是,跨所有信号分量的组合的次级码相关在所选的-30ms的随机延迟误差处示出清晰的峰。
图8Z示出10ms示例。
但是,如果我们排除卫星8和2,那么噪声大大降低,如下面图8AA中所示。
图8AA示出示例排除嘈杂输入。
将获得峰的位置的索引添加到估计的延迟输入将产生针对每个卫星的实际次级码延迟。
捕获后残留频率误差下的交叉SV组合
跨时间的相干组合容易产生来自主码捕获的估计的残余频率误差。避免这种情况的一种方式是跨所有可能的假设对次级码长度(在GalileoE5AQ、E5BQ和BeidouB2a导频情况下为100ms)进行精细频率搜索。但是,这带来高计算负担和冗长的数据(100+ms)。
结合交叉SV假设相干和跨时间非相干积分的说明:对于1ms,这将允许+/-500Hz频率误差。众所周知,非相干增益小于相干增益,但比相干积分更好地处置频率误差。对于非相干组合,对于弱信号应当增加积分时间。对于与上述相干组合情况相同的图示,错误!未找到参考源。下面示出了用于10ms的非相干组合图。
图8BB示出交叉SV相干、时间非相干示例。
方框4(码和载波拉入)
如方框3讨论中所描述的,用差分方法捕获强和中等强度信号的次级码相位,并用相干方法捕获较弱强度信号的次级码相位。跨两个历元的差分相位检测器是AFC频率检测器的实部(余弦)部分,复数(正弦)部分由相同的历元相关器数据形成。回绕的余弦和正弦检测器可以被求平均以形成用于AFC(自动频率控制,也称为锁频)环的滤波相位误差检测器,以减少频率误差。单个历元提前减去滞后功率差异也可以被求平均以形成延迟锁定环(DLL)的检测器。在相干方法的情况下,通过测试所有频率步长来处置大的频率误差有利于与次级码相位并行地学习频率误差。
因此,方框4的任务取决于用于获得次级码相位的方法。在差分方法的情况下,一些残留码和频率可以仍然需要被估计。在相干方法的情况下,可能存在一些残余码误差,但频率误差较小。因此,这个状态的目的是进行快速码和频率精炼。另一种FFT方法可以用于频率误差。但是,既然次级码相位已知,就可以使用更长的相干积分。这允许将弱信号的码和频率误差降低到进入测量回路所需的水平。
因此,这个方框的主要目的是在使用差分次级码相位方法时,由于宽鉴别器,频率误差仍然可以大。对于回绕式AFC检测器的+/-250Hz检测器范围,频率误差可以大于20毫秒相干积分的+/-25Hz限制。现在可以使用更长的相干检测后积分(PDI)来产生相位误差的余弦和正弦。再次,可以对这些求平均以产生经滤波的估计以减少噪声。在一个实施例中,可以使用具有+/-250Hz的检测器范围的4毫秒相干PDI,并且可以将其中的五个相加以产生20毫秒的平均值。
现在假设已从相关器数据中擦除次级码。相关器总和可以是或者历元到历元,其中每个新历元都发生擦除,或者是毫秒到毫秒,其中擦除发生在毫秒数据被组合以形成连续历元之后。
至少,这些相关器值包括:即时估计的相位的实部和虚部值,即,realP和imagP。提前相位的实部和虚部值分别为realE和imagE,滞后相位的实部和虚部值分别为real=L和imagL。
即时相关器被用于通过在PDI上形成相位误差估计来估计频率误差。
sumRealAQ(k)=sum[realP(i)*secCodeAQ(j)]
sumImagAQ(k)=sum[imagP(i)*secCodeAQ(j)]
其中i={k to k+N+1}并且j=mod(i–scStartAQ,scLengthAQ),
N=总和中的毫秒数,或预检测间隔(PDI)。
两个和之间的相位改变的余弦为:
Cosine(phase(k))=sumRealAQ(k-1)*sumRealAQ(k)+sumImagAQ(k-1)*sumImagAQ(k)
Sine(phase(k))=sumImagAQ(k-1)*sumRealAQ(k)-sumRealAQ(k-1)*sumImagAQ(k)
通过对M个余弦和正弦项求和来执行平均,其中M通常为5:
cosineSum(M)=sumCosine(phase(k)),k=0,M-1
SineSum(M)=sumSine(phase(k)),k=0,M-1
平均相位超过(N+1)*M毫秒的组合间隔是:
phaseEstimate=atan2(SineSum(M),cosineSum(M))其中atan2(y,x)且y=imag,x=real
相位估计除以预检测间隔N以形成频率误差估计,该频率误差估计是AFC回路(FLL回路)的输入。
DLL使用PDIN上的提前减去滞后功率和进行更新:
滞后功率和=sumPowerL(k)=sum(realL(i)2+imagL(i)2),i=k至i=k+(N-1)
延迟锁定环鉴别器被形成为提前减去滞后功率:
earlyMinusLate(k)=sumPowerE(k)-sumPowerL(k)
鉴别器被归一化和过滤并转换为码相移。
这些FLL和DLL***作,直到检测器足够小,例如,频率误差相位检测器低于15度以进行足够的连续估计,并且归一化的DLL鉴别器在0.1码片以内。在满足这些条件之后,方框4状态终止并且卫星跟踪进行到更高的状态。
硬件中的跟踪相关器选项:并行专用或串行可重复使用
以下部分描述了硬件如何生成相关器值的低级定时细节。它涉及硬件是否有专用相关器的物理集合,通常称为用于单个卫星的信道,或者它是否有以高速率被连续重复使用以服务所有卫星的相关器。前者的优点是它可以在码生成器检测到码序列的开头(也称为历元)时选通相关器。在这种情况下,并行相关器同时向所有相关器提供相同的样本序列。因此,专用信道具有自然对准到历元的优点,并且每个历元只需要报告一个相关寄存器。
在重用的情况下,样本数据通常被缓冲,这要求附加的存储器。而且,数据被缓冲一毫秒,因为期望信号的码序列长度为一毫秒。在这种情况下,被重用的单个信道与毫秒对准,但用于每个卫星的历元将出现在不同的位置。当次级码未知时,硬件必须报告两个相关:历元前的相关和历元后的相关。然后,软件负责构造检测次级码相位所需的历元到历元的相关和。在码已知之后,次级码被提供给硬件并且它可以应用序列,从而允许相关器跨历元积分到单个毫秒对准的总和中。
重用情况还有另一种选择。如果使用两毫秒的样本缓冲,那么可以从与预期历元位置相关的不同起始地址中拉取每次重用的样本数据。在这种情况下,被重用的相关器可以报告单个历元到历元的相关。这种方法硬件复杂性更高,但要求较少的报告寄存器并简化了软件。下面描述这两个选项,并总结SW如何生成历元到历元检测器信息。
相关选项1:毫秒到毫秒
毫秒到毫秒积分在每个码相位和载波频率处每个相关器对每毫秒要求4个寄存器。注意的是,历元发生在毫秒事件之间。硬件打破了历元处的相关。cos和sin的符号用于表示相关的同相(实数)和正交(虚数)部分。次级码位在各个历元都不同,因此,相位反转发生在历元边界处。次级码可以改变每个用最高箭头标记的历元。毫秒边界是下箭头。
图8CC示出相关选项1。
目标是将epoch0与epoch1之间的相关的实部和虚部(cos,sin)构造为corr0,将epoch1和epoch2之间的相关构造为corr1。
在msec1处,接收到CorrI01、CorrI02、CorrQ01和CorrQ02。左边的索引是第0毫秒并且右边的索引是分区:历元之前为1并且历元之后为2。.
在msec2处,接收到CorrI11、CorrI12、CorrQ11和CorrQ12。现在有可能构造完整的历元,corr0=(CorrI0,CorrQ0),其中CorrI0=CorrI02+CorrI11并且CorrQ0=CorrQ02+CorrQ11。(注意的是,corrI01和corrQ01在第一次相关时被有效地忽略了)。
在msec3处,接收到CorrI21、CorrI22、CorrQ21和CorrQ22。现在可以构造另一个完整的历元:corr1=(CorrI1,CorrQ1),其中CorrI11+CorrI21和CorrQ1=CorrQ12+CorrQ21。
相关选项2:历元到历元
直接历元到历元积分要求为每个卫星不同地选择用于积分的样本。信道最初在毫秒边界上开始。忽略初始总和。随后的总和从一个历元到另一个历元操作。
每个码相和载波频率每毫秒要求2个寄存器:
次级码可以每个历元改变。
图8DD示出相关选项2。
接收 接收
Cos0 Cos1
Sin0 sin1
处理Corr0(PLL) 处理Corr0和1(AFC)
对于PLL:
corr0的载波相位=atan2(sin0,cos0)
corr1的载波相位=atan2(sin0,cos0)
对于DLL×AFC):
从0到1的增量相位是atan2(sin0*cos1-cos0*sin1,sin0*sin1+cos0*cos1)。
方框5和方框13:拉入状态
方框5跟踪状态旨在用于两个目的:作为在次级码相位搜索之后的全码搜索的捕获序列中方框4之后的下一个状态,以及在提供准确的预定位时作为直接跟踪状态。这旨在作为预测量状态,其中用20毫秒或更长的相干PDI来估计频率。如果预定位被认为不准确,那么使用方框13,而如果找到信号,那么继续到方框5。
当来自方框4时,相干PDI是中等长度,因此将频率误差从高达+/-250Hz降低到低于+/-20Hz,这足以启动这个具有+/-25Hz的拉入范围的方框5循环。
当作为直接t跟踪状态进入这个状态时,已根据准确的位置和速度定位计算了预定位。位置准确性确定码相位预测并且速度准确性确定频率准确性。方框5可以具有更少分配的相关器并且该数量确定范围。对于L5,需要更多的相关器来适应位置误差。例如,+/-50米的位置误差与100米的范围对应。由于样本时钟接近1/2码片,其为大约15m,因此需要7个相关器对,间距为1/2码片。
但是,对于+/-1000米的位置不确定性,1/2码片相关器的范围是2000/15=134。如此大量的并行相关器是用较小的集合(比如20)实现的,然后用134/20=7个步长顺序搜索。方框13是适应这种更大位置不确定性的附加状态。当信号非常微弱或被反射并且定位误差高时,或者当自上次定位以来的时间长时(诸如当由于比如进入隧道而引起阻塞时),会发生这种情况。
在这种状态下,可以对相关器功率进行相干和非相干积分,以适应更高的频率不确定性。例如,如果速度不确定性增长到25m/s,那么带宽为+/-125Hz的4毫秒相干PDI覆盖125/.2548=32m/s的范围。用2毫秒的PDI覆盖50m/s的速度不确定性。
另一种方法是保留较长的相干PDI,比如20毫秒和+/-25HzBW,然后作为顺序码和频率搜索执行搜索。假定位置不确定性为+/-5km,并且速度不确定性为+/-50m/s。码区间的数量是667,然后频率区间的数量是8。用20个相关器以1/2码片间距在每个上相干地花费20毫秒意味着在34*0.02秒=0.68秒内搜索位置不确定性并且所有频率都在8*.68=5.44秒内被覆盖。为了只检测更强的信号,PDI可以减少到5毫秒,然后时间将减少到1.36秒。此外,使用L5信号的所有4个分量将SNR增加近6dB。
方框6:跟踪
这是产生可用于高准确性位置企业度不够的测量的跟踪方框。这个方框使用假设次级码已被擦除的跟踪方法。
次级码使信号的捕获变得复杂,因为它们可以阻止使用超过一级码一毫秒长度的相干积分。在知道次级码相位之前,使用移除1kHz相位调制的载波相位和码相位鉴别器只能进行宽带跟踪。例如,对于即时码相位估计的这些实部和虚部相关器值,当覆盖码在第k-1个和第k个历元之间改变符号时,使用点积检测器的相位误差的余弦:realCorrP(k-1)*realCorrP(k)+imagCorrP(k-1)*imagCorrP(k)为负。因此,将点和交叉检测器(imagCorrP(k-1)*realCorrP(k)-realCorrP(k-1)*imagCorrP(k))乘以负1移除调制。这种环绕方法允许将点和交叉项求和,以允许噪声求平均以减少相位检测器噪声。但是,检测器带宽的一半丢失了。另一种方法是直接从atan2(imagCorrP(k),realCorrP(k))形成相位误差估计。在此,次级码的符号是两个分量共的。但是,为了减少噪声,需要对角度求和,并且在PI附近对角度求平均是有问题的,因为179和-179的简单平均值为零,而实际上真实平均值接近180。一种解决方案是使用第一航向作为锚并将所有角度回绕在锚的+/-180度内。
对于已知次级码相之前的码跟踪,提前减滞后码鉴别器(E-L)被形成为一毫秒功率差的总和[realCorrE(k)*realCorrE(k)+imagCorrE(k)*imagCorrE(k)]–[realCorrL(k)*realCorrL(k)+imagCorrL(k)*imagCorrL(k)],其对相位改变不敏感。
在确定次级码相位之后,可以对相关器进行相干求和,以改进信噪比。最大持续时间受残余频率误差以及接收机时钟和用户动态的限制。因此,方框6中的跟踪方法使用相干方法。
为了最优E5频带性能,至少可以跟踪三个信号:E5a(与GPSL5和BDSB2a相同)和E5b(与BDSB2b相同)处的两个BPSK信号,以及称为E5AltBoc和B2AceBoc信号的第三个信号。AltBoc和AceBoc分量具有多级子载波,其在主BPSK码片序列的两个码片中重复3次。换句话说,AltBoc和AceBoc子载波在主码片的2/3中有一个周期。这有两个主要影响:说哪个最重要是主观的。子载波产生多峰相关函数,其优点是中心部分比BPSK相关峰的峰窄近3倍。这既改进了测距准确性又减少了近多径的影响。第二个影响是频谱移至两个主旁带,这产生上面提到的可以作为BPSK信号被跟踪的E5a(B2a)和E5b(B2b)信号。
AltBoc和AceBoc信号也存在一些挑战。因为相关函数或相关向量(或简称corrVec)是多峰的,所以更难捕获中心峰并维持对中心峰的跟踪。如果搜索和跟踪未能正确居中并落在两个侧峰之一上,那么测量准确性比BPSK信号差。这种多峰信号还要求更宽的BW来捕获从最低频率旁带下空到最高频率旁带上空的51.15MHz的主信号。此处呈现了在跟踪开始时解决这些模糊性的新颖方法,称为居中,并且在稳态跟踪中,称为跟踪完整性监视和校正(TIM和TC)。尽管机器级GNSS接收机技术采用了更宽的带宽来简化TIM和TC,但可以从更高的精度和减少的多径误差中获益的大众市场接收机无法承受如此高的带宽。呈现了可以在低带宽(诸如50Mhz或61MHz)下操作的方法。此外,呈现了用于相关器使用的方法,其可以进一步改进跟踪稳定性并进一步减少多径抑制,同时维持与这些示例性带宽相关联的低样本时钟频率。
独立搜索信号也要求更多的搜索码相位假设,以免越过信号。呈现了子载波抑制方法,该方法将corrVec加宽回具有相同码片率的BPSK信号的尺寸。
广播AltBoc共有8个主码。AI、AQ、BI和BQ分量上具有10.23MHz码片速率和1毫秒长度的主要四个主码与主要15.345Mhz子载波和1191.795Mhz主载波相乘,以产生如下所示的波形。四个附加码作为四个主要主码的乘积形成,并添加到信号中,但具有不同的多级子载波,其唯一目的是产生恒定的包络信号,这改进卫星的发射功率放大器效率,并因此改进其使用寿命。由于频率为15.345Mhz的子载波有8个相位,因此总带宽为8*15*10.23Mhz=122.76Mhz。
四个主码也由BPSK叠加码调制,1kHz码片速率与主码历元对准,也称为次级码。码的长度取决于每个分量作为数据或导频信道的进一步分类。AI和BI分量是数据信道,分别具有20和4毫秒长度的覆盖码,以及与覆盖码的历元对准的BPSK数据符号调制。AQ和BQ分量是导频信道,都具有100毫秒长度的覆盖码并且没有数据码元调制。
在或者通过测量或者预测精细时间和位置确定码的起始相位之后,可以通过将1毫秒相关器历元乘以码序列的适当+/-1值来擦除它们。
为了简化命名,1176.45Mhz的BPSK信号被称为A信道,1207.14Mhz的BPSK信号被称为B信道,并且1191.795Mhz的AltBoc或AceBoc信号被称为C信道。
跟踪所有信道具有优点。首先,A和B信道提供衰落免疫力。它们还允许以快速方式解调导航数据码元(信道B的数据速率快5倍)以及更灵敏但速度较慢的方式(信道A的数据位为20毫秒,其误码率更低)。A和B上的相关器组还可以进行多信号分解,并且在不同相位进行两个观察会使分解的等级加倍(这是在2020年5月8日提交的oneNav美国临时专利申请No.62/704,417中描述的所谓的超分辨率方法之一(例如,一种或多种与MUSIC算法相关的方法))。而且,在10.23Mhz下,大约20.48Mhz的1/2码片样本时钟提供了方便的非相称样本范围和1/2码片搜索能力。因此,提供了合适的搜索范围来处置来自位置定位的预定位误差,或者在定位旧时搜索更宽范围以捕获信号。硬件被实现为为A和B信道两者提供例如20个码估计,每个码估计隔开一个样本时钟延迟,从而提供20*29.3/2=293米的搜索孔径范围。在找到A和/或B信道之后,码和载波跟踪在这些信道上开始。A和/或B的平均提供了C信道码相位的合理起始估计。A和B信道多普勒从C信道偏移已知的量,如部分:A、B、C多普勒和距离速率之间的确定性关系中所述。
这三个独立测量的一个不利的点是功耗较高。更糟糕的是,多径抑制通常使用更高的样本时钟来实现,以便对尽可能接近峰的相关性进行采样,从而最小化近多径的影响。但是当样本时钟已经高于大众市场接收机的正常水平时,增加样本时钟就没有吸引力了。L1接收机的码片率为1.023MHz。10倍的过采样(诸如10Mhz)以及10倍的更高带宽对于实现多径抑制是常见的。因此,对于A和B信道,20Mhz的基本采样率已经高出两倍。即使是2倍的改进(40Mhz是可能的)也没有吸引力。因此,本发明的目的是在不将样本时钟和带宽要求提高到超过接收每个信号的主瓣所需的正常带宽的情况下,在多径抑制方面实现竞争优势。
本发明的目的是一种以最小采样率跟踪A、B和C信道中的一个、全部或组合的方法,同时仍然提供两倍于多径抑制的改善。
A/B信道上的窄模式
1.窄模式加上A/B和C的合成守时,可在不提高时钟的情况下实现更宽的DLL线性度和多径抑制
常规的接收机使用通常由一个样本时钟分开的3个相关器对跟踪信号。如果样本时钟尽可能高,使得提前和滞后相关器都在附加信号的区域之外,那么可以实现改进的多径抑制。
考虑没有多径的常规1/2码片提前-准-滞后(EPL)间距:
图8EE示出基本相关器位置。
定义VE=超提前,E=提前,P=即时,L=滞后,VL=超滞后。注意的是,在这个间距下,超提前和超滞后的相关器抽头的能量非常小。在此,正常跟踪方法是用即时相关器驱动载波跟踪回路,因为它具有最大能量,因为载波回路对相关器SNR最敏感并且一般会导致接收机在码跟踪回路之前解锁。码跟踪回路使用提前和滞后相关器来形成提前减去滞后鉴别器来使即时相关器转向。然后,其它相关器作为延迟或提前一个样本时钟从即时导出。
现在考虑信号的附加反射,称为近多径,如红色虚线所示。注意,提前和滞后抽头处两个信号的能量总和将具有不同的量值,因为第一个信号和反射信号的叠加将使滞后信号大于提前信号。这会导致提前和滞后跟踪点被平衡以后移,从而造成多径延迟。反射的相位也可以提前移动此效果。想象一下红色曲线具有相反符号并指向下方而不是向上的情况。在这种情况下,提前抽头的能量总和将下降,但小于后期。所以,跟踪点会比真正的即时点移动得更早。多径在提前点和滞后点相交的距离确定了多径对跟踪点移动多远的影响,因为它对提前-滞后相关器功率有影响。
以即时点为中心的1/2码片间距的基线样本时钟。
多径影响基线。
图8FF示出多路径返回。
图FF示出多径返回。
现在考虑将样本时钟频率加倍。注意的是,提前和滞后相关器已将corrVec向上移动。更重要的是,注意多径影响已减少2倍。因此,将样本时钟加倍,或将提前减滞后间距减少两倍,将多径跟踪误差减半。
以即时点为中心的1/4码片间距的双样本时钟
/>
现在考虑移除即时点的本发明的目标。软件跟踪即时码相位,但在即时码放置位置和提前码放置位置之间引入1/2码片移位,以便在改为窄模式之后提前和滞后被分开码片间距的一小部分。
窄模式:带1/2码片的样本时钟,提前没有即时居中的1/2样本时钟
注意的是,相对于在峰处采样时实现减少的多径影响所需的更高时钟,多径的影响减少了两倍,但原始较慢的样本时钟产生了两倍的功率节省。另一个好处是提前相关器和滞后相关器相对于基线提前相关器和滞后相关器获得了功率。在基线情况下,它们具有最大功率的0.5。在不即时的情况下,他们现在有0.75的最大功率:和20*log10(.75/.5)=1.77dB的改进。
现在的问题是可以使用哪些相关器或相关器组合来驱动载波回路。即时相关器对有以下三种用途:
1.估计真实载波频率与本地生成的频率之间的相位误差。实部与虚部的比率用于形成相位误差。
2.估计用于形成用于限定信号置信度的信噪比的信号功率:
SNR(dB)=10*log10((PunctualPower–NoisePower)/NoisePower);
3.估计用于归一化延迟锁定环提前减滞后鉴别器的信号功率。增量锁环(delta-lock-loop,DLL)可以与未归一化的EarlyPower-LatePower一起工作。但归一化有助于在信号电平变化时保持更可预测的回路带宽。
上面的第一种情况对相关器对的任何缩放都不敏感。第二种情况要求相当的准确性,以便在提前与滞后功率相等的回路拉入时报告具有代表性的SNR。合成即时相关器的准确性对第三种情况有更大的影响,因为当回路拉入时,提前与后期功率不相等。大于真实即时点的合成即时点往往会将回路带宽减少超过归一化提前减滞后的功效。相反,小于真实即时点的合成即时点往往会增加回路带宽,从而导致回路响应不稳定。一种解决方案是以较低的回路带宽开始并接受稍长的拉入时间以适应较小的预测合成即时功率。
呈现了一些用于在软件中创建合成的即时相关器的选项。他们都利用这样一个事实,即,使用BPSK调制,所有相关抽头处的相位在corrVec上都是相同的。这意味着任何具有良好SNR的相关器都可以被用于估计载波相位误差。而且,为了最小化多径的影响,较提前的抽头应当具有较少的多径,因此是优选的。
应当注意的是,最困难的多径情况之一发生在手机中,当用户将手机举到胸部高度时。手机的低成本天线可以具有接近统一的较差轴比,这意味着它几乎是线性的。GNSS信号具有右旋圆极化。因此地面反弹多径不会被天线衰减。因此,复合信号将是直接射束和反射射束的叠加,其相位差对手机高度和用户运动非常敏感。为了维持载波锁相,要求相位稳定信号。因此,除了减少码多径外,还要求减少载波多径。考虑到载波多径,候选合成即时相关器候选被更多地优化。这里是一些候选:
1)如果信号足够强,那么可以单独使用超提前相关器作为合成即时点。利用从即时的1/2码片移位以在峰的0.75处放置提前和滞后,与即时的1/2码片样本时钟情况下的0相比,超提前的振幅上升到0.25,并且具有受到多径影响的可能性较低的好处。在此,通过将超提前的功率乘以16=(1/0.25)2来找到合成即时点。(PowerPunctualSynthetic=16*PowerVeryEarly)。
2)另一种选择是提前和滞后相关器的缩放总和。当提前与滞后平衡时,缩放被用于产生与真实即时相关器具有相同振幅的合成即时。在此我们引入比例因子,使得功率相同:
realCorrPSynth=a*(realCorrE+realCorrL)
imagCorrPSynth=a*(imagCorrE+imagCorrL)
在1/4偏移量处,我们定义:
(realCorrE2+imagCorrE2)=(0.75)2*(realCorrP2+imagCorrP2)
PowerEarly=(0.75)2PowerPunctual
对合成功率求平方:
(realCorrPSynth2+imagCorrPSynth2)=a2*(realCorrE+realCorrL)2+a2*(imagCorrE+imagCorrL)2
=a2*[realCorrE2+realCorrL2+2*realCorrE*realCorrL)]+a2*[imagCorrE2+imagCorrL2+2*imagCorrE*imagCorrL)]
=a2*(realCorrE2+imagCorrE2)+a2*(realCorrL2+imagCorrL2)+2a2*(realCorrE*realCorrL+imagCorrE*imagCorrL)
如果我们在提前与滞后平衡的点处求解常数a,那么realCorrE=realCorrL并且imagCorrE=imagCorrL。这将合成功率简化为:
PowerPunctualSynthetic
=a2*(realCorrE2+imagCorrE2)+a2*(realCorrE2+imagCorrE2)+2a2*(realCorrE*realCorrE+imagCorrE*imagCorrE)
=4a2*(realCorrE2+imagCorrE2)
=4a2*PowerEarly
=4a2*(0.75)2PowerPunctual
为了使DLL居中时的合成功率等于真实即时功率,要求4a2*(0.75)2=1。这意味着a=2/3。
3)另一种选择是通过将corrVec上的所有四个相关器抽头一起求平均来形成合成即时点。
(realCorrPSynth2+imagCorrPSynth2)=a2*(realCorrVE+realCorrE+realCorrL+realCorrVL)2+a2*(imagCorrVE+imagCorrE+imagCorrL+imagCorrVL)2
再次假设当回路被平衡时VE=VL且E=L,于是合成功率变为:
PowerPunctualSynthetic
=a2*(2*realCorrVE+2*realCorrE)2+a2*(2*imagCorrVE+2*imagCorrE)2
=4a2*(realCorrVE2+imagCorrVE2)+4a2*(realCorrE2+imagCorrE2)+8a2*(realCorrVE*realCorrE+imagCorrVE*imagCorrE)
现在假设realCorrVE=1/3*realCorrE并且imagCorrVE=1/3*imagCorrE:
PowerPunctualSynthetic
=4a2*(realCorrVE2+imagCorrE2)+4a2*(realCorrVE2+imagCorrE2)+8a2*(.33*realCorrE*realCorrE+0.33*imagCorrE*imagCorrE)
=4a2*(realCorrVE2+imagCorrE2)+4a2*(realCorrVE2+imagCorrE2)+8/3a2*(realCorrE2+imagCorrE2)
=8a2*[2*(0.75)2+1/3*(0.75)2]*PowerPunctual
这意味着1=8a2*(0.75)2*7/3并且a=2/21。
4)另一种选择是通过仅将corrVec上的两个提前相关器抽头一起求平均来形成合成即时点。
(realCorrPSynth2+imagCorrPSynth2)=a2*(realCorrVE+realCorrE)2+a2*(imagCorrVE+imagCorrE)2
=a2*(realCorrVE2+imagCorrVE2)+a2*(realCorrE2+imagCorrE2)+2a2*(realCorrVE*realCorrE+imagCorrVE*imagCorrE)
现在假设realCorrVE=1/3*realCorrE并且imagCorrVE=1/3*imagCorrE
PowerPunctualSynthetic
=a2*(realCorrVE2+imagCorrVE2)+a2*(realCorrE2+imagCorrE2)+2a2*(.33*realCorrE*realCorrE+0.33*imagCorrE*imagCorrE)
=a2/9*(realCorrVE2+imagCorrVE2)+a2*(realCorrVE2+imagCorrE2)+2/3a2*(realCorrE2+imagCorrE2)
=a2(1/9+(0.75)2+1/3]*PowerPunctual
这意味着1=a2*20/9并且a=(9/20)1/2
=3/(2*sqrt(5))。
优点:
1.通过移除提前和滞后之间的即时码,窄模式实现了与具有双倍样本时钟速率的***相同的多径减少,该***具有提前和滞后之间的即时;
2.使用较高采样率***的功率的一半;
3.延迟锁环比具有提前和滞后之间的即时点的相同样本***有更强的功率;
4.可以通过支持提前相关器以及通过对所有抽头求平均以对输出求平均来减少载波多径影响;
5.窄模式不要求增加输入带宽使其超出观察无相关损失的信号所必需的正常带宽。
下面的图表示出了窄模式对DLL中使用的检测器的拉入范围和斜率的影响。斜率和范围都小于常规宽模式中的那些,这具有产生较低的有效回路带宽的影响,意味着回路的拉入速度较慢。在一个实施例中,宽模式最初被用于拉入,然后码被移位1/2样本时钟以产生窄模式。注意的是,在提前减滞后小于+/-0.2的范围内,曲线之间的差异较小。因此,宽模式用于拉入,而窄模式用于稳态跟踪和减少多径。相隔一个样本是窄模式,相隔两个样本是宽模式。
图8GG示出A-B信道BPSK鉴别器。
C信道上的窄模式
现在将相同的方法应用于具有ALTBOC或ACEBOCcorrVec的C信道。C信道的带宽为51.15MHz。由于相对于10.23Mhz的五倍过采样以及corrVec的三倍窄,这提供了多径抑制方面的改进,如下所示。为了进一步提供两倍的改进,应用窄模式并实现了与10倍过采样的常规提前减滞后相关器配置相同的多径抑制。
图8HH示出AltBOCCorrVec(理论)。
AltBOC(15,10)CorrVec在中示出。这是当所有能量都在那个分量中时复杂信号的单个分量的曲线。例如,如果PLL将所有能量驱动到同相或实部,那么这是在相关器扫过峰相关周围所有可能的码相位的情况下观察到的值。
主峰(在图中以零码片移位为中心)是接收机C信道必须跟踪以进行正确距离估计的峰。但是,AltBOCCorrVec在主峰的提前和滞后侧均表现出次级峰。
最大的次级峰是从中心+/-第1/3和+/-第2/3码片延迟。在距中心+/-0.92码片处还有另一个峰。
在应用与50MHz带宽相关的滤波损耗后,这些峰位置处的corrVec的量值在中心处为20*log10(0.84)~=-1.5dB,在第1/3延迟处为20*log10(0.57)~=-4.9dB,并且在第2/3延迟处为20*log10(0.28)~=-11dB。
虽然+/-第2/3的码片延迟处的次级峰比主峰低大约9.5dB,但+/-第1/3的码片延迟处的峰仅比主峰低3.5dB,并且对在跟踪之前拉入信号、对在短时中断或大回路应力之后的跟踪点具有很大影响。锁定到侧峰会产生必须避免的1/3芯片跟踪误差。
呈现了解决拉入问题的方法,以避免从侧峰开始。在拉入之后要求监视以测试并重置跟踪点。这两种方法是用C信道进行准确测距所需的。
与A和B信道相比,C信道中的另一个主要区别是存在子载波相位。子载波在2个码片corrVec上有3个完整的周期。当在窄模式下合成即时相关器时,必须考虑相位差,以便保留真实的即时载波相位。对于BPSKA和B信道,corrVec在corrVec的所有抽头处具有相同的载波相位,这简化了对各个抽头的相干求和。
在提前和滞后之间有两个单元格的宽模式
在宽模式和50Mhz样本时钟下,提前和滞后相关器在峰的任一侧上间隔开码片的大约1/5。由于跨零在大约0.17处,这意味着这两个相关器已经越过y轴并且现在位于corrVec的负范围内。这些值在下面的表12中示出。corrVec在没有滤波器损失的情况下被归一化为127,并且在有滤波器损失的情况下具有107的峰值。宽带模式对于拉入操作是有用的,因为它提供了峰的观察并且侧峰降低了20*log(42/107)=8.1dB。
表12C信道宽和窄模式振幅值
/>
图8II示出宽和窄模式下的C信道corrVec。
提前和滞后之间有一个单元格的窄模式
在窄模式下,硬件相位提前1/2个样本时钟,因此对于提前和滞后,峰现在位于两个单元格之间。这些值在上面的表12中示出。在这种情况下,提前和滞后现在的值为45,从而提供20*log20(45/22)=6.2dB的增益。而且,侧峰现在的值为74,从而提供20*log10(74/42)=5dB的增益。更强的侧峰有利于核实侧峰跟踪状态,但在拉入时是危险的。
与窄模式下的A和B信道一样,即时相关器再次被合成。呈现了两个选项:
1)即时是由提前和超提前的相干和合成的。AltBoc或AceBoc与BPSK情况的一个区别是,由于子载波,corrVec上存在相位改变。由于超提前是在1/3码片处的第一个侧峰最小值之后,因此它相对于真正的即时具有180度的相位旋转。此外,跨越50Mhz带宽的硬件组延迟也会产生相位变化。如果可以校准它们,那么可以对其进行补偿。在形成相干组合之前,每个相关器的实部和虚部对可以旋转回到码峰中心的参考相位。
一般总和如下所示:
realCorrPuncSynth=a*Σx=1 N[realCorrX*cos(phaseX)–imagCorrX*sin(phaseX)]
imagCorrPuncSynth=a*Σx=1 N[imagCorrX*cos(phaseX)+realCorrX*sin(phaseX)]
当使用提前和超提前时,phaseEarly=0,phaseLate=π。
(74+45)*a=107,因此a=0.8892。
2)当即时由来自所有四个最强相关器:提前、超提前、滞后和超滞后相干地合成时,以π为用于超提前和超滞后的相位,比例因子a为:
(74+45+45+74)*a=107,soa=0.45。
用宽模式和窄模式校正由于相关器放置而引起的提前减滞后符号
取决于AltBOCCorrVec上提前和滞后抽头的放置,DLL必须相应地改变符号,以便循环不会驱动到错误的方向并导致锁的损失。图8JJ中示出了两个示例放置,一个用于窄模式,一个用于宽模式。实线是始终为正的振幅(功率的平方根)。虚线是相关器值,当它们越过被示为细水平虚线的垂直轴过零时,该值可以变为负。
图8JJ示出E,P,L关于它们在AltBOCCorrVec上的位置的方向移动。
情况I-AltBOC,具有超过0.33个码片的提前到滞后间距:E和L之间有两个样本(50MSPS)间距的宽模式
E和L振幅是绿色和橙色圆圈,它们实际上是水平线下方绿色和黄色虚线圆圈的量值。实心或填充1、2、3的圆圈表示这些情况。情况2是平衡的,情况1和3是不平衡的,需要DLL将码移位以恢复平衡。
当EPL处于情况1时:我们看到低于过零E减去L为负。但在过零上方,提前减去滞后量值为正。因此,必须改变提前减滞后符号以恢复负号。
当EPL处于情况3时:我们看到低于过零E减去L为正。但在过零上方,提前减去滞后量值为负。因此,必须改变提前减滞后符号以恢复负号。
情况II-提前到滞后间距小于0.33码片的AltBOC(类似于BPSK相关函数):示例-E和L之间具有一个样本(50MSPS)间距的窄模式
E和L是无色圆圈处的量值,在虚线下方没有反射。
当EPL处于情况1时:我们看到在过零E减去L上方为正。无需改变符号。
当EPL处于情况3时:我们看到在过零E减去L上方为负。无需改变符号。
这个分析的结果是,当用于DLL鉴别器的提前和滞后相关器低于虚线时,必须翻转提前减滞后鉴别器的符号,以便将本地生成的码相位在正确方向上移动以将提前和滞后驱动至相同的值,所以它们的差为零。
用于宽和窄模式的DLL鉴别器范围和斜率的分析
提前减滞后鉴别器对于具有三角形BPSKcorrVec的A和B信道是单调的,而C信道版本是高度非单调的。侧峰为AltBOC(15,10)信号创建相干的提前减滞后鉴别器曲线,如图8KK中AltBOCDLL鉴别器曲线所示。
图8KK示出AltBOCDLL鉴别器曲线。
接近0延迟的鉴别器信息 | 鉴别器码片范围 | 鉴别器斜率 |
宽模式 | 0.07 | -12.8 |
窄模式 | 0.14 | 12 |
注意的是,就真实峰附近的可用范围而言,窄模式具有近二比一的优点。斜率相似但符号相反。宽模式符号为负,因为提前和滞后低于垂直轴过零,而窄模式在正侧。
使用A+B、A或B和附加对准的C信道居中方法
A和B旁带表现出QPSK-R特性,在频带中心有单个主瓣。在GNSSL5、E5a、E5b和B2a信号的情况下,主瓣的理论带宽为20.460MHz。通常,A和B旁带在基带处用20.480Msps复数IQ采样进行处理,因此以半码片间距搜索A和B信号导致码相位估计准确性为+/-0.250码片。对于接收机开始跟踪C信道,A和B估计可以被翻译成C信道估计。
C信道的主相关三角形为0.667码片宽,这与具有2码片宽相关三角形的A和B信道不同。而且,用于C信道的相关波形(从中心开始)的第一个过零距中心0.167个码片,使主峰的有效三角形宽度达到0.333个码片。因此,对C信道进行初始估计的严格要求是+/-0.167码片。因此,经由A和B获得的C信道码相位估计没有好到足以开始C信道跟踪。因此,需要对C信道的码相位进行初始对准。
当接收机正在查看+/-N码片的码延迟窗口中的相关峰时,预定位估计应当在该窗口内。如果不是,那么要求进行附加的搜索。在找到A和/或B信道峰后,开始搜索C信道。这减少了搜索窄C信道峰的功率并且还最小化了需要被实现的物理抽头的数量。
在半码片间距和20个抽头的情况下,A和B信道的窗口大约为+/-5个码片(20个码抽头导致大约285米)。C信道的窗口大约为+/-1.75码片(17个抽头产生大约100米)。在第一步中,A和B平均值或任一峰估计可以被用作C信道的初始中心估计,如下所述。估计用于C信道的初始中心的步骤
1.一旦A和B居中,根据配置(A、B或A+B),将码相位(码片和小数码片)翻译成C信道码相位(码片和小数码片)。是来自旁带的码相位的估计。如果根据配置应当使用A和B的组合,那么这是A和B旁带的码相位的均值。毫秒Nsc-c和Nsc-sb内的样本数d示例分别为50000和20480。
2.下一步是使用曲线拟合算法确定AltBOCCorrVecd中心的索引。由于在居中之前观察到的AltBOCCorrVec由于延迟误差和噪声而具有失真的形状(并且看起来不像上面示出的形状),因此该算法拟合曲线并使用blob能量的中心作为第一估计。
a.选择中心索引来计算加权的索引。如果最大值高于某个阈值,那么中心索引可以是最大相关值的索引,或者它可以是具有最高能量的+/1码片blob的中心。
b.在宽度为N的blob内找到输入CorrVecA的最大值和最小值。
c.找到加权索引w为
3.在居中之后,根据CorrVec形状的失真程度,仍有可能在+/-1个单元格内存在残余误差。这是通过将中心朝着最大相关点移动一个单元格来处置的(以处置提示比提前和滞后弱的情况)。
4.执行相对相位校正(RPC)以进行完整性监视和校正。除了振幅形状之外,AltBOCCorrVec还具有与不同码延迟相关联的不同相位。这是新命名的“PhaseVec”并且如下面图8LL中AltBOC CorrVec和PhaseVec所示。注意的是,每个侧峰的相位具有不同的相位。由于跨两个码片的3个子载波周期,跨整个corrVec的总相位改变为6*180度。
图8LL示出AltBOCCorrVec和PhaseVec。
DLL鉴别器示出多个过零与CorrVec中的多个峰对应。这些在图8MM中示出。DLL鉴别器示出不同斜率符号的区域。四条黑色虚线示出围绕中心的三个过零之间的三个区域。
1.中心区域R0与正常的主峰跟踪对应。在此斜率为正,因此朝着中心移动,正EML值意味着向左移动,负EML值意味着向右移动。
2.中心区域RL1与斜率为负的情况对应。为了使跟踪点回到中心,EML值必须为负,否则DLL有可能在错误的过零处稳定。因此在这个区域中,负EML值意味着向右移动。
3.中心区域RR1与斜率也为负的情况对应。为了将跟踪点带回中心,EML值必须为正,否则DLL有可能在错误的过零处稳定。因此在这个区域中,正的EML值意味着向左移动。
通过查看相对E-L相位来扩展线性范围的结果是创新的。当然,R0,RL1,RR1的任一侧的这些其它模糊区域不会将DLL带回中心。但是,这些超出了相对相位校正算法的控制范围,并通过保持监视AltBOCCorrVec的次级相关检查来处置。
图8MM示出DLL鉴别器示出不同斜率符号的区域。
为了确定区域,使用以下过程:
1.计算提前与滞后相位之间的相位差。有两种方式:通过计算每个抽头处的载波相位与差值,或者通过形成相位差或提前减滞后:
a.DeltaphaseCos=(realCorrEarly*realCorrLate+imagCorrEarly*imagCorrLate)
b.Deltaphasesin=(imagCorrEarly*realCorrLate-realCorrEarly*imagCorrLate)
c.Deltaphase=atan2(deltaPhaseSin,deltaPhaseCos)
2.计算提前–滞后功率鉴别器;
3.如果(abs(deltaPhase)>120),则翻转鉴别器符号。
用于完整性监视和校正的针对振幅的次级相关测量
这种方法被用作完整性检查,以确保跟踪点位于corrVec的中心并且corrVec的形状接近预期波形。偏差意味着或者高多径或者错误信号。AltBOCCorrVec的缩小副本可以用8位表示,而不会丢失大量信息,如表12C信道宽和窄模式振幅值中所示。这有助于固件/软件和算法形成次级相关系数计算的高效实施方式。
用8位量化的相关形状在图8II宽和窄模式下的C信道corrVec中所示。次级相关系数是通过跨码窗口滑动这个参考相关向量并计算每个点处的相关和来计算的。次级相关向量的分辨率定义相关系数的分辨率。以R为参考相关向量r的长度,以s为按比例缩小的观察到的相关向量,次级相关系数为
SCC的最大值的索引示出了参考与观察到的相关向量之间的最大匹配。当最大值示出与中心的一致偏差时,将执行调整。结果也被用作完整性监视器。
下面的实验示出了次级相关的工作。在这个示例中,PRN3和PRN5最初拉入并锁定到主峰,如图8NNPRN3主峰跟踪和图8OOPRN5主峰跟踪中所示。用于此的次级相关参数被称为SCC=次级相关系数。注意的是,最高最大值在索引8处,并且第二个最大值在6处(对于第二个最大值,10也是可接受的值)。这里的重要结果是中心到最大单元格差异为0并且左和右SCC和被紧密平衡。
表13具有主峰跟踪的次级相关系数(SCC)度量
在下面的图中,cosCorrWB是用于这个C信道或宽带信号的同相(实数)相关器,sinCorrWB是正交(虚数)相关器,而absCorrWB是量值,或者总和的平方根或同相和正交相关器的平方。频率回路作为PLL操作,其将能量驱动到同相相关器中。
图8NN示出PRN3主峰跟踪。
图8OO示出PRN5主峰跟踪。
在上面提到的这些跟踪时间之后(对于PRN3为357ms并且对于PRN5为330ms),人为引入0.33码片(50Msps时为1.6个单元格)的后期移位,以将回路强制到后期侧峰,因此现在提前和滞后相关器以侧峰为中心。这模拟了拉入错误侧峰的效果。允许回路稳定下来,并且结果所得的CorVec在图8PP和图8QQ中示出。
图8PP示出PRN3跟踪侧峰。
图8QQ示出PRN5跟踪侧峰。
下表示出了次级相关系数的结果。
表14具有次级峰跟踪的次级相关系数(SCC)度量
左SCC和和右SCC和指示观察到的Corvec与参考CorVec不对准,并且更多能量朝着中心的左侧。从中心到最大次级相关的单元格差异指示接收机没有跟踪主峰。
可以通过注意两个参数的一致性来校正循环:中心到最大单元格的差异指示提前(减去)2个单元格的移位,并且左SCC大于右SCC。这种一致性可以被用于校正侧峰轨道并将循环返回到主峰以恢复跟踪的准确性。
相关器配置
常规的接收机一般使用最少3个相关器对,因为这是跟踪主码相位和载波频率的最小配置。相关器对是实部和复部分量。提前和滞后相关器对被用于形成延迟锁回路的鉴别器,它们可以是上述的或者宽模式或者窄模式。在窄模式下,提前和滞后相关器的总和可以被用于形成载波回路相位检测器。在宽模式下,提前和滞后之间的相关器用于这个功能。
在一个实施例中,相关器的另一个集合被用于在这些主跟踪相关器之前和之后进行扫描。这些可以是每个信道(即,每个卫星)的相关器的专用集合,或者是在串行或并行时间共享的所有信道或卫星之间共享的相关器的集合。这些相关器的目的也是观察每个卫星的信道脉冲响应(CIR):即,观察从发送器到接收机的信号的时域响应,以检测由于直接信号和附近物体的信号反射。附近的物体可以是永久性的或长期的(诸如建筑物),或者它们可以是中期的(诸如树木和树叶),或者它们可以是短期的(诸如送货卡车)。
CIR可以用完整的主码模型进行测量,诸如1毫秒内的1/2码片间距,诸如用于在首次定位之前捕获信号的内容,或者用更短的时间窗口,诸如信号跟踪点前后的几微秒。所需范围与反射的范围有关。例如,在城市深处的峡谷中,反射的范围达数百米。但是,可实现的范围也受到信号的码片宽度的限制。对于L5信号,码片大约为十分之一微秒,或29.3米。要求一个半码片的最小步长以避免在CIR被过于粗略采样的情况下丢失信号。在一个实施例中,20个相关器对被用于具有距跟踪点提前和滞后+/-140m的19*29.3/2的范围。
应当注意的是,因为直接信号被阻挡,所以跟踪点也可以与真正的到达有误差。提前有一半范围的目的是真实信号仍然可以被提前包含,而从跟踪点开始,反射被滞后包含。因此,跟踪点被比真实信号更强的反射捕获。
相关器的块启用具有20个码抽头的宽时域视图。下面的图像是城市峡谷中corrVec的振幅,意思是实部和虚部分量的平方和的平方根。垂直线表示实际相关器抽头位置,它们被一个样本时钟延迟分隔,其周期接近10.23MHzL5信号的1/2码片。类似水平三角形的形状表示相关形状,如果相关器以无限小的步长扫过时间,那么将会观察到该形状。抽头8和9之间的最强信号抓住了窄模式下提前减滞后相关器的跟踪点。跟踪点将位于宽模式下的相关器抽头上。图像示出了6个单独的反射:左边的第一个是直接信号,比捕获了跟踪点的中心金属建筑物的反射弱。
第二个信号是玻璃建筑的反射并且相当平滑。注意的是,无限窄采样的信号的形状和长度是不同的,并且取决于反射源的表面。也有可能信号从多于一个源反射,并且接收到的信号是所有反射源的叠加。也有可能在B信道上实现相同的相关向量。拥有附加观察者的优势在于A信道与B信道之间的载波相位将不同,这启用附加的独立信息。通过建筑物的分数(B)玻璃(B)金属(B)圆形玻璃(B)金属(B)砖(B)
图8RR示出20个相关器码窗口的图像(corrVec)。
注意的是,由于A信道与B信道中心频率之间的2*15.345MHz差异,反射模式确实具有频率依赖性,因此B信道上的信号具有相似但略有不同的形状。表面将在两个频率下对corrVec的形状产生最显著的影响,并且将影响相位相关的衰落。
大多数接收机仅报告跟踪点码相位,使用多点定位法(从已知位置(即,卫星位置)找到具有相同范围的多个位置球体的交点)得出位置。这里的发明是将这20个复数相关器抽头累积到两种类型的观测器中,然后将基于3D建筑物尺寸和时变卫星位置的可预测时变、基于射线跟踪的信道脉冲响应(CIR)与接收机测得的CIR或corrVec中的一个或多个相关联。
方框7:产生有效的测量
在跟踪开始之后,除了SNR估计之外,还会分析延迟锁环(DLL)和锁相环(PLL)鉴别器,以识别稳定的跟踪。DLL检测器需要小和零均值。PLL相位误差估计需要小且为零。SNR需要高于阈值,以便即时功率足够高于本底噪声以便被认为是可靠的。产生的测量的摘要集合是
1.来自DLL的码相位,来自PLL或FLL的多普勒,来自每个信道A、B和C的SNR;
2.如果发现较提前的码相位,那么MUSIC使用A和B信道估计对DLL码相位的调整;
3.高速率corrVecs的集合(诸如每秒50个),其可以被用于这个信号是视线还是非视线的机器学习。
方框8:位置定位
提前的辅助GPS从蜂窝网络接收到准确的定时,定时误差主要由距基站的距离设置,其可以小至1km或3.3微秒,而当前的蜂窝网络与GPS时间不同步。时间辅助一般由手机实时时钟***提供,其典型的准确性为秒级。因此,接收机必须用这个粗略的时间来搜索、捕获和跟踪卫星。虽然由于天线损耗、噪声系数和人体衰减、汽车内的镀膜玻璃窗以及树木和建筑物等周围障碍物的组合,手机也具有高***损耗,但是信号将被高度衰减。但是,在大多数情况下,接收机仍将能够解码导航数据位流,以便以接收到的z计数的形式从卫星捕获准确的时间,即,在手持设备中发送的子帧开始时的卫星时间。GPS导航数据消息中的超字(HOW字)。所有GNSS***都有相似的时间报告方法。借助小于75km的位置辅助,常常基于人群源静态wifi接入点或蜂窝基站位置,以及一个解码的z计数,接收机可以计算出精细时间。
由于信号弱以及报告z计数或等效时间消息之间的时间,接收机必须用所谓的粗略时间进行操作并产生修复,并且接收机捕获精细时间之前的第一定位需要考虑粗略时间时间误差,以便实现良好的位置准确性。粗略时间是所谓的超毫秒时钟偏差中的错误。因为测得的卫星主码相位范围为一毫秒,所以由于主码序列的长度,因此接收机反常地能够计算亚毫秒时间误差,也称为小数时钟偏差,其中超毫秒时间误差是整数毫秒时钟偏差。
所呈现的方法的主要目的是估计适合主机***使用的准确位置。这意味着必须估计超毫秒时间误差。以下推导示出了超毫秒对GNSS测量处理的影响。
将接收机ECEF位置向量和时间状态定义为:
Pr(t)=[x(t)y(t)z(t)bias(t)bigDT(t)](meterss)
将用于第i个卫星的测得的伪距定义为:
PRi=codephasei+intMsi
码相位是来自码跟踪回路的从ME测得的码相位。
intMS是当位置不确定性高(75km以上)时测得的z计数的毫秒传播时间,或基于测得的码相位和准确位置(75km以下)的预测的传播时间。
将用于第i个卫星的真实伪距定义为:
PRi=rangei+biasSVi–bias+ionoi+tropoi+tropoi+tgdi
rangei=sqrt[(xsi–x)2+(ysi–y)2+(zsi–z)2]
其中biasSVi,ionoi,tropoi,tropoi,tgdi是第i个卫星时间误差、iono延迟、tropo延迟,并且xsi,ysi,zsi是卫星位置估计。
当处理用于定位或从单个卫星捕获信息的测量时,基于可用数据以及标称范围内的误差如何影响测量估计误差来预测测量。利用精细时间,假设卫星位置是已知的。但是,对于过程时间定位,卫星位置和起始位置误差一样是未知的。仅保留一阶项的极差方程的一阶泰勒级数展开为:
Range^=range0+d/dx Range*δx+d/dy Range*δy+d/dz Range*δz+d/dxs Range*δxs+d/dys Range*δys+d/dzs Range*δzs
作为用于一个位置的样本,该范围相对于一个接收机位置的导数是:
d/dx Range*δx=1/2*[(xsi–x)2+(ysi–y)2+(zsi–z)2]-1/2*2*(xsi–x)*(-1)*δx=-(xsi–x)/rangei*δx
项-(xsi–x)/rangei是众所周知的方向余弦,其中3个余弦是:
dcxi=-(xsi–xr)/range0
dcyi=-(ysi–yr)/range0
dczi=-(zsi–zz)/range0
因此,线性化范围可以被简化为:
Range^=range0+[dcx*δx+dcy*δy+dcz*δz]+[-dcx*δxs-dcy*δys-dcz*δzs]
Range^中第一个括号内的项是接收机位置误差的线性化校正。
Range^中的第二个括号内的项是用于卫星位置的线性化校正。在精细时间模式下,这个项被假设为零。但在粗略时间模式下,必须考虑它。但它也很棘手,因为它呈现出越来越多的未知数。解决这个问题的方式是认识到卫星位置的改变是高度可预测的,因为卫星加速度小并且已知。因此,增量卫星位置状态被重写为:项
δxs=Vxs*dt
δys=Vys*dt
δzs=Vzs*dt
Range^=range0+[dcx*δx+dcy*δy+dcz*δz]+[-dcx*Vxs*dt-dcy*Vys*dt-dcz*Vzs*dt]
项[-dcx*Vxs*dt-dcy*Vys*dt-dcz*Vzs*dt]实际上是点缀到方向余弦的卫星速度向量乘以时间误差。
因此,[-dcx*Vxs*dt-dcy*Vys*dt-dcz*Vzs*dt]=-U*Vs*dt
其中到第i个卫星的余弦向量为:
Ui=[dcxidcyidczi]
Vs=[VxsVysVzs]
线性化的范围现在是:
Range^=range0+dcx*δx+dcy*δy+dcz*δz-U*Vs*dt
其中dt现在是bigDT未知数
测得的减去预测的伪距变成包括时钟项:
δPRi=PRi–PR^i
=[dcxi dcyi dczi 1 -U*Vsi]*[δx δy δz bias bigDT]
其中未知数是状态的标称估计的增量:
δx=x–xo,δy=y–yo,δz=z–z0,δbias=bias-bias0,δbigDT=bigDT–bigDT0
最后,卫星测量的集合以矩阵格式如下布置:
1.要估计的状态向量X是增量状态的5x1列向量[δx δy δz δbias δbigDT];
2.测量Y是针对N个卫星的线性化的伪距PRi的Nx1列向量中的向量,其中i=1到N;
3.观察矩阵H是Nx5矩阵,其中行是方向余弦和卫星视线速度[dcxidcyidczi1-U*Vsi],其中i从1到N。
解是X^=(HTH)-1HTY。
位置计算在起始定位时间tfix和位置X0=xo,yo,z0,0,0中迭代。测量围绕起始位置并在定位时间迭代。
精细时间情况
如果位置不确定性大于1/4毫秒,那么测得的伪距的intMs部分必须根据卫星时间:也就是用于每个卫星的测得的z计数确定。在这种情况下,定位计算被延迟,直到测得足够的z计数。计算定位要求至少三个置信度卫星加上高度估计。在这种情况下,因为时间是用z计数之一设置的,所以没有必要估计bigDT项,因为一个卫星的时间误差与位置误差(从米转换为秒)成正比。
粗略时间情况
如果位置不确定性小于1/4毫秒,那么有两种子情况。如果至少有一个z计数可用,那么不需要bigDt并且至少要求三个卫星才能使用参考高度进行2D定位。如果没有z计数可用,那么要求bigDT,并且至少要求四个卫星才能使用参考高度进行2D定位。没有测得的z计数,如果初始位置不确定性大于1/2毫秒,那么计算位置会更加困难。关注的是将1ms码阶段扩展到完整的伪距,没有1ms主码历元模糊性。可以采用一些通过比较天空中最近的卫星来解决模糊度的策略来更好地处置此类情况。在这个示例情况下,可以预测intMs并且所有初始线性化的伪距都被回绕,以便所有的不确定性都小于1/2毫秒。位置误差必须小于1/2毫秒的1/2,以便正确处置接收机时钟偏差的模糊性。这就是为简单的伪距扩展设置1/4毫秒位置误差约束的原因。
用于第i个卫星的卫星位置是在估计的传输时间(即,tfix–PRi^/c)计算的,以形成:
1.围绕标称位置估计形成线性化的伪距以形成Y;
2.在标称位置计算方向余弦以形成H;
3.与标称的增量是从X^计算的;
4.与标称的增量被添加到标称状态X=X0+X^。bias和bigDT状态现在将具有非零值。现在,如果重复这个循环,那么bias和
bigDT将用在估计的伪距中。如果bigDT较大,比如说超过几毫秒,那么bigDT估计被推送到定位时间,类似于进行***时间调整。以这种方式,维持关于卫星位置的一阶线性化假设;
5.测试所有状态下改变的量值。如果位置量值的改变超过比如说
1米,或者bigDT的改变,那么重复循环。
bias或bigDT的任何超毫秒部分都会调整***时间。在修复完成迭代之后,接收机使用更新后的位置和时间来预定位搜索任何未被跟踪的卫星。所估计的位置的不确定性与位置估计中测量噪声的位置精度稀释(PDOPP)有关。这个因子由观察矩阵协方差(HTH)-1的逆矩阵缩放的测量噪声方差估计确定。这确定将位置不确定性投影回要捕获的每个卫星的距离空间时所需的搜索窗口的尺寸。PDOP是前三个对角线项之和的平方根。精度时间稀释(TDOP)是第四对角线项的平方根,用于与光速相关的时钟偏差估计。在bigDT的情况下,还有用于bigDT确定的附加对角线项,它将是第五个对角线元素的平方根。
[当然,次序是约定俗成的并且数学会以不同的次序工作。]
粗略时间求解器必须考虑bigDT项,或者直到最终测得z计数,这移除了超毫秒时间模糊性,或者直到重复估计这个状态下的增量对于多个连续定位保持低于一毫秒。执行2D定位时的测量噪声,以及甚至高度辅助误差都会导致这个模式下的超毫秒误差。例如,当-U*Vsi项大时,范围噪声衰减良好,并且时间误差小。例如,考虑10m噪声和来自-U*Vsi的1000m/s视线速度项。在这种情况下,bigDt有效准确性为10m/1000m/s=0.01秒,或10毫秒。在实践中,测量噪声对超毫秒时间误差的精度影响显著。这种水平的时间误差会产生位置误差,它通过乘法而不是除法与相同的卫星测距率成正比:由于时间误差引起的测距误差为10米,它被添加到原始测量噪声中。
方框9:预测次级码相位的移植方法
现在定位可用,可以执行未捕获的卫星的次级码相位的预测。事实上,取决于辅助的准确性,甚至可以使用从单个卫星测得的次级码相位来执行相同的功能。
粗略时间模式下的超毫秒时间误差影响预测L5次级码相位的能力。在常规的L1接收机中,可以容忍预测的20毫秒数据位相位中的几毫秒误差,因为它只会造成SNR的小损失,而在具有1毫秒次级码的L5信号上,即使1毫秒的误差也会造成大得多的SNR损失。这就是为什么L1+L5接收机无法开始L5测量跟踪,直到它或者估计出精细时间,或者类似地测量出至少一个卫星上的次级码相位。
在此,仅L5接收机的优势在于,如果它能够测量一个卫星的长次级码相位,那么它可以使用这个测量来观察次级码序列长度内的粗略时间误差的部分。即使超毫秒时间误差大于最长次级码的长度,也是如此。原因是测得的次级码相位可以解决以次级码长度为模的时间误差,然后将测得的与预测的次级码相位之间的偏移量应用于尚未能够测量其次级码相位的其余卫星,或者因为它们没有跟踪,或者因为它们正在等待从次级码相估计状态到更高跟踪状态的上行模式,从中可以形成窄带准确性测量。
但是,即使时间误差大于100毫秒,次级码相位仍然可以通过测量的次级码相位进行预测和校正。本发明还有另一个目的是即使在没有足够的卫星来产生准确定位的情况下也能准确地预测次级码相位。预测硬件定时器单元中次级码序列的开始的方法
将次级码相位预测为最近次级码序列开始的到达时间的步骤如下。目标是在跟踪固件中使用的毫秒计数器的时间范围内生成每个卫星的到达时间估计值,以擦除次级码,因为这是必须擦除码的帧。
1.捕获针对当前时间在第i个卫星处的传输时间:svTowTran(i)=timeNow–以秒为单位的伪距,其中timeNow是当前GNSS时间;
2.将卫星时间转换为整数毫秒:svTowTranInt(i)=(int)svTowTran;
3.以毫秒为单位捕获当前次级相位:svCurrPhase(i)=svTowTranInt%pilotChannelSecCodeLengthInMsec,其中pilotChannelSecCodeLengthInMsec对于Galileo和BDS导频信道为100毫秒,其中%是模数运算:136%100=36;
4.估计次级码序列第一位的时间:svStartPhase(i)=pilotChannelSecCodeLengthInMsec–svCurrPhase(i);
5.转换本地毫秒模次级码相位长度:localPhaseNow(i)=msecNow%pilotChannelSecCodeLengthInMsec(i),其中msecNow是未调整的毫秒定时器,它将由与当前时间timeNow关联的跟踪固件使用。注意的是,msecNow与timeNow之间的偏移量是硬件定时器与GNSS时间之间的偏移量(以毫秒为单位);
6.将相位的卫星开始转换为以毫秒为单位的本地时间:scStartPhaseLocal(i)=svStartPhase(i)+localPhaseNow(i);
7.保存scStartPhaseLocal(i)。
精细时间情况:
如果timeNow是从精细时间定位设置的,那么时间误差远低于一毫秒并且预测的本地开始时间scStartPhaseLocal(i)是正确的。z计数和位置误差小于1/4毫秒的粗略时间情况
另一方面,如果timeNow是根据粗略时间定位设置的,或者甚至是在第一次定位之前设置的,那么有两种情况要考虑。
如果时间设置有z计数并且位置误差小于1/4毫秒(75km),并且在第一步中使用测得的码相位来预测传播时间,那么scStartPhaseLocal(i)中的误差小于一毫秒。
没有z计数或位置误差超过1/4毫秒的粗略时间情况
如果没有z计数,或者位置误差较高,那么timeNow估计中可能至少存在一毫秒的时间误差。需要校正这个误差,否则次级码将无法被正确擦除,从而导致低SNR和可能的跟踪不良。
本发明是即使没有位置定位并且如果接收机能够捕获和跟踪至少一个L5卫星,优选地是Galileo或BDS卫星,那么就可以在其余卫星上校正预测的次级码相位,从而使得能够擦除次级码相位以启用相干积分以及相干跟踪能力。
用测得的次级码相位校正预测的次级码相位的移植方法配方
1.测得的与预测的之间的偏移量是为所有具有测得的次级码相位的卫星计算的:scOffset(i)=measuredscStart(i)–scStartPhaseLocal(i);
2.以毫秒为单位将次级码序列长度的模内的差值回绕起来:如果scOffset(i)>pilotChannelSecCodeLengthInMsec/2,那么scOffset(i)=scOffset(i)–pilotChannelSecCodeLengthInMsec;
否则如果scOffset(i)<-pilotChannelSecCodeLengthInMsec/2,那么scOffset(i)=scOffset(i)+pilotChannelSecCodeLengthInMsec;
如果只有一个测得的次级码相位,那么声明scCorrection等于这个scOffset。如果有多个,那么将scCorrection声明为scOffset(i),它在大多数卫星上与最大似然估计值相同。
现在校正次级码相位估计的预测的开始:
scStart(i)=scStart(i)+scCorrection
这些估计被发送到固件,该固件基于上面使用的本地未调整的定时器msecNow控制擦除次级码相位。可用性允许两个好处。首先,已捕获但尚未准确测量其次级码相位的弱卫星现在可以被更新到方框4和方框5,在这些位置可以擦除次级码,从而实现窄带宽跟踪。其次,未被跟踪的卫星现在可以擦除捕获模式下的次级码相位,这减少了与影响相关功率的次级相位反转相关的损失。这可以以两种方式完成,次级码可以应用于完整的一级码搜索,并且甚至可以应用于方框13中定义的更小的搜索。
方框10:预定位(prePos)
有了新的定位或新的自助信息,其中接收机从卫星的一个集合中学习可能与辅助信息相结合的信息,接收机就将为所有卫星发送关于预期卫星信息的信息到测量引擎。定位时间的prePos是:
码相位、频率、次级码相位(以硬件为单位);
码相位不确定性、频率不确定性(以硬件为单位);
由每个信道根据是否跟踪以及基于当前信道跟踪点与prePos信息的一致或不一致而采用这个信息。在接收时,每个信道计算其当前码相位/频率与prePos码相位/频率之间的差异。这两者之间的大偏移量将使得信道丢弃其当前锚点并采用prePos。
1)不正在跟踪的信道应采用新的prePos信息,以加快捕获和跟踪的速度,
2)正在跟踪且置信度不高且码相位或频率偏移量较大的信道被迫采用新的prePos并从那里开始跟踪。
3)如果prePos有强制标志,那么高置信度的信道仍然可以被强制采用prePos。这将需要超越信道,以防它被相信例如被欺骗者捕获。方框11、12、13和14:决定将prePos发送到哪里
prePos中的码相位和频率不确定性基于位置定位不确定性。如果prePos被信道采用,那么将根据这些不确定性由不同的拉入状态处置。当码相位不确定性在20个相关器的范围内时,方框5采用prePos。方框13是方框5的特殊版本,其可以使用串联的20个相关器来搜索更大的码范围。因此,对于无法在一秒或两秒内有效搜索的不确定性,状态机将在次级码相位已知时移动到方框13,或者在次级码相位未知时返回方框2。
方框15和16:解码码元
跟踪方框6具有处理数据分量以解调卫星数据信道的能力。它通过识别数据分量上的次级码相位序列的一个周期来实现这一点。鉴于跟踪回路可以在毫秒到毫秒的相关器值上操作,在总和的旁边有历元,并且在历元之前和之后擦除对应的次级码位,用于数据解调的相关器和在次级码序列内部从历元到历元进行对求和。
次级码序列内的数据解码
下面示出了数据信道的3个周期,假设有5历元次级码序列。此处的目的是解释每个毫秒报告的历元前后相关器如何被用于形成数据收集的历元,同时为用于驱动跟踪回路的相关器抽头组形成毫秒总和。这里的相关器以毫秒到毫秒模式操作,因此每毫秒有两个相关器,一个在历元之前,一个在历元之后。次级码序列为1,1,1,1,-1。前两个数据位的相位为0,第三位的相位为180度。位模式是0,0,1。注意的是,数据位与完整的次级码序列对准。毫秒事件以虚线示出,相关器在历元之前(B)和历元之后(A)。用于这个示例的码相位约为1/4或毫秒,因为B为1/4且A为3/4毫秒。
位1:相位=0位2:相位=0位3:相位=180。
图8SS示出数据信道位和次级码长度以及毫秒和历元相关性之间的关系。
学习导频信道的次级码相位允许学习数据信道相位。例如,假定导频信道的长度为20毫秒。数据信道次级码相位将与导频相位对准,因此在导频相位的一次重复中有4个数据位。因此,只需要学习导频相位以识别数据。
对于DLL、FLL和PLL,使用完整的毫秒相关,因此数据的时间标记是毫秒。一个历元相关数据的时间标签是起始毫秒加上随多普勒移动的历元偏移量。对测量数据使用毫秒到毫秒的相关性意味着同步选通所有信道的数据。这意味着在原始测量数据中同步观察到接收机时钟和车辆动力学。
毫秒总和使用同一毫秒之前和之后的相关器,但在毫秒内出现的历元之前和之后使用次级码。
msec0=B(-1)*secCode(-1)+A0*secCode0 msec0不完整。
msec1=B1*secCode0+A1*secCode1。msec1在msec1中完成;msec2=B2*secCode1+B2*secCode1。msec2在msec2中完成。
历元总和使用前一毫秒的前相关器和当前毫秒的后相关器。但是,次级码对于两个元素是相同的。历元必须等待下一毫秒才能完成。
历元0=A0*secCode0+B1*secCode0。历元0在msec1内完成;
历元1=A1*secCode1+B2*secCode1。历元1在msec2内完成;
历元2=A2*secCode2+B3*secCode2。历元2在msec3内完成。
对于数据解码,将定义次级码序列的5个历元相加为实部和虚部相关器的单个总和。
数据位0相关器:
realCorrBit0=realCorrEpoch0+realCorrEpoch1+realCorrEpoch2+realCorrEpoch3+realCorrEpoch4
imagCorrBit0=imagCorrEpoch0+imagCorrEpoch1+imagCorrEpoch2+imagCorrEpoch3+imagCorrEpoch4
数据位1相关器:
realCorrBit1=realCorrEpoch5+realCorrEpoch6+realCorrEpoch7+realCorrEpoch8+realCorrEpoch9
imagCorrBit1=imagCorrEpoch5+imagCorrEpoch6+imagCorrEpoch7+imagCorrEpoch8+imagCorrEpoch9
数据位2相关器:
realCorrBit2=realCorrEpoch10+realCorrEpoch11+realCorrEpoch12+realCorrEpoch13+realCorrEpoch14
imagCorrBit2=imagCorrEpoch10+imagCorrEpoch11+imagCorrEpoch12+imagCorrEpoch13+imagCorrEpoch14
当FLL或AFC用于载波跟踪时,数据位是解码的连续实部和虚部相关器的差分点积检测器,或者当使用PLL时,每个相关器对的相位:接近0的相位被声明为位值0,而接近180的相位被解码为位值1。
差分检测到的位0与1之间的数据位改变:=sign(realCorrBit0*realCorrBit1+imagCorrBit0*imagCorrBit1);
差分检测到的位1与2之间的数据位改变:=sign(realCorrBit1*realCorrBit2+imagCorrBit1*imagCorrBit2)
数据位0相位估计=atan2(imagCorrBit0,realCorrBit0);
数据位1相位估计=atan2(imagCorrBit1,realCorrBit1);
数据位2相位估计=atan2(imagCorrBit2,realCorrBit3)。
多***码元解码
对于E5跟踪,有可能解码来自每个***数据信道的数据。Galileo的AltBoc和BDS的AceBoc***将有两个数据信道,每个旁带一个。每个数据信道都有不同的次级码长度,这意味着数据速率不同。但是,所有***都具有相同的结构,即,每个次级码长度有一个数据位。
数据位被收集到分组中并发送到解码功能,其中卫星星历、健康状况、年历和时间戳(在GPS中称为z计数)并被提取。每个***都有不同的编码方法。解码至少一个时间戳对于获得可靠的精细时间是必要的。如果通过互联网访问从接收机参考网络收集数据的GNSS辅助服务器,那么无需解码其它字段。解码对于丢失或没有连接但可以访问用于导航实用程序的地图数据的接收机是有帮助的。在一些情况下,当信道锁定到不同的卫星信号时,或欺骗时,其中本地接收机正在广播信号以控制接收机的位置,解码对于检测互相关也是有用的。与可靠的数据源进行比较有时可以隔离错误的测量。
方框17、18和19:失锁
确定信号峰不再高于本底噪声被归类为失锁。当锁定检测器满足时,跟踪将周期性地保存置信码相位、频率和时间戳。在失锁时,信道然后可以决定是否重新捕获先前的置信度测量,或者它是否将采用来自位置定位信息的置信度更高的预定位信息。如果它确定信道的置信度低并且prepos更准确,那么也可以强制信道在方框19中采用新的prePos。在没有可靠测量的情况下失锁,并且当定位是旧的或不可靠时会造成信道进行更大的搜索。
仅L5接收机的更高级别***总结
1.State1:主码相位捕获。目的是搜索包含信号的主码相位和频率不确定性范围,并在功率比搜索空间噪声分布高出预定阈值时识别信号候选主码相位和频率。
2.State2:次级码相位捕获。目的是识别信号候选的次级码相位。在此期间,主码相位和频率准确性可能提高也可能不提高。
a.对于强和中等强度卫星使用差分方法;
b.对于弱卫星使用相干方法;
c.在更短的时间段内使用交叉卫星但更多的卫星来增加测试的次级码相位数并实现更快的次级码相捕获时间。
3.State3:拉入状态。目的是识别主码相位自相关向量的峰,也就是相关向量或corrVec,以及识别sinX/X频率误差向量的峰,其中相关性对于本地生成的主码和次级码都最大化,并且生成载波频率。如果State2能够联合估计码和频率误差以及次级码相位,那么不需要这个状态。
4.State4:跟踪状态。目的是跟踪和产生主码相位和载波频率的估计,以及解码与次级码序列对准的数据信道上的数据码元。这些码元有助于学习卫星时间,然后将其移植到接收机以启用精细时间解。时间解析卫星和接收机之间主码相位的总重复次数,称为整数毫秒范围,intMs。
5.State5:基于辅助条件预测接收机位置和GNSS时间的时间偏移量
a.当位置辅助误差高时使用测得的码相位和测得的intMS。
b.使用测得的码相位和预测的intMS,位置辅助误差低。
c.当位置辅助误差低时且在学习卫星时间之前估计起始时间误差
6.State6:预测初始搜索中未捕获的卫星的预定位数据,包括:
a.码相位/频率/时间;
b.码相位和频率的不确定性;
c.次级码相位。当只有粗略时间可用时(在精细时间可用之前),用基于测得的次级码相位的集合的最大似然偏移量来校正这个估计;
d.向捕获和跟踪***发送预定位数据以启用擦除次级以启用更快的捕获和窄带宽跟踪。
创新:
1.AFC检测器,其补偿下旁带和上旁带并一起求平均,以使检测器噪声平均改进4或6dB。在A、B、C多普勒和距离速率之间的确定性关系部分描述了等式27,
2.次级码
a.差分方法:使用对检测器带宽内的频率误差不敏感的长时间积分的差分检测位直方图,使用所有4个信号分量检测最长序列的次级码相位;
i.使用码相位轨迹和展开的频率误差鉴别器检测大的频率误差并重置直方图以消除误差;
ii.用+/-500Hz调制的附加流检测次级码相位,其符号基于从除了标称频率估计之外的码多普勒斜率预测的频率误差的符号;
iii.除了标称频率估计之外,用+/-500Hz调制的两个附加流来检测次级码相位。[MLM:与临时峰检测方法不同……]。
b.相干方法:使用相干检测器联合使用所有4个信号分量和频率误差来检测最长序列的次级码相位
i.以最小步长搜索相干检测器的频率范围;
ii.非相干积分超出最长检测器的长度;
iii.使用DFT;
iv.使用FFT。
c.跨卫星方法:联合检测多于一个卫星的次级码相位:
i.基于可以误差一毫秒或更多的当前***时间估计来预测次级码相位开始时间;
ii.获得益于所述卫星组的单历元相关器的并发范围;
iii.通过以下任一方法在毫秒时间误差范围内搜索:
1.将预测的次级码相位匹配到:
a.卫星历元数据中差异检测的相位反转;
b.形成真正的次级码相的微分;
c.积分卫星组上测得的与预测的次级码位之间的一致性;
2.真正的次级码与同相和正交历元数据相乘并相干地求和:
iv.识别当前***时间的候选毫秒偏移量的前两个最佳拟合;
v.如果第一和第二最佳之间的差值高于预定阈值,则接受第一阶段;
d.移植方法:当精细时间不可用时,使用来自一个或多个卫星的测得的次级码相位来校正具有粗略时间的预测次级码相位,使用最长次级码的长度内截断的测得的减去预测的次级码相位中的最大似然差;
3.多径抑制方法,在不增加采样时钟频率的情况下将多径误差减少两倍:
a.使用具有单个样本时钟分隔的窄模式延迟锁定外观鉴别器,同时使用剩余的外部相关器合成即时相关器:
i.合成相关器提前于减少载波多径的地方;
ii.合成相关器将多于一个相关器求和以对载波多径求平均并减少衰落:
1.对于A和B信道,其中合成的即时点是corrVec上1/2码片间距的四个相关器的相干和,提前、超提前、滞后和超滞后;
2.对于C信道,其中合成的即时点是提前相关器从实际即时旋转差分相位和超提前差分相位旋转的相干和,形成实际即时到超提前;
iii.C信道窄模式鉴别器比正常模式具有更高的斜率和拉入范围,在提前和滞后之间具有即时点;
b.在使用宽模式跟踪之前,C信道居中以减少侧峰能量。
c.其中C信道次级相关指示跟踪点在侧峰上并且被用于校正跟踪回到中心峰;
d.当提前和滞后具有与即时相关器不同的符号时,C信道鉴别器归一化器补偿该符号;
e.其中C信道相对相位校正被用于识别鉴别器何时超出中心范围并需要进行符号调整。相对相位校正将鉴别器的范围扩展3倍并提高了牵引范围和稳定性。
f.其中C信道次级相关系数(SCC)通过振幅匹配来识别跟踪点在主峰或侧峰上,并以SCC差值作为移位的方向的指标。
4.将毫秒和历元相关器值相关并为每个和不同地擦除次级码,以提高定位准确性并启用准确性数据解调:
a.通过使用同步测量数据提高位置和速度定位精度;
i.通过使用毫秒到毫秒相关数据,所有信道上的测量具有相同的确切时间窗口;
ii.在将前后相关性相加到单毫秒的相关性之前,相关性内的数据被前后历元次级码相位擦除;
b.数据解调是通过在次级码相位的长度中累积历元值的相关数据来执行的,其中每个历元都被对应的次级码相位擦除。
生成A、B、C信道的方法
第一个方框接受50Mhz时钟并生成15.345Mhz时钟,每毫秒产生15345个周期。它被称为二进制偏移量载波(BOC)。假设信号已移至零IF。因此1191.795Mhz信号在此处被移至零IF。注意的是:如果存在非零值,那么可以使用旁带偏移量中描述的类似移频器轻松擦除。
方框1:生成将50MHzI、Q样本转换为A、B信道,转换为15.345Mhz时钟:
ejBOC=cosBOC+i*sinBOC
e-jBOC=cosBOC-i*sinBOC
为了生成cos和sin,Freqout=N*FreqIn/寄存器尺寸。对于24位寄存器,FreqIn=50Mhz,Freqout=15.345Mhz,然后最接近的N=5148928。实际freqOut=15,345,001.22,误差8e-8,或0.08PPM。残留误差将是共模误差,并且将落入频率漂移解而不是影响速度。高四位被解码为相位,并使用查表转换成范围为+/-8的sin/cos。
方框2:从50Mhz信号生成A和B旁带:SA=signalA,SB=signal,SC=signalC
图8TT示出旁带移位。
下移信号用17抽头FIR滤波器进行低通滤波,以实现具有3dB截止频率的+/-10.23Mhz频率范围。用于A和B的50Mhz样本需要被抽取到20.48MHz。这是用具有以下逻辑的双模分频器完成的:
寄存器长度为L位,最大值为2L-1;
逻辑通常添加N,但如果添加N会产生进位,那么添加M;
逻辑:
init:寄存器=初值;
test=register+N,carry=0 If(test>2L)
{register+=M,carry=1} Elseregister=test
对于16位寄存器,N=15345和M=30881;
这个寄存器每毫秒重置一次,以保证分频器的相位每毫秒相同。
A、B相关器
载波生成
用于每个频带的载波频率由NCO生成,如下所示:
NCO模型Fout=N*Fin/2^L,其中L是加法器尺寸;
N可以是负数。用于载波相位周期计数器。上滚为正cnt,下滚为负cnt。
24位加法器,4位预定标器(div16)。Fin=20.480MHz/16=1.280MHz输出。预定标器用于提高相位分辨率。分辨率1.28e6/2^24=0.076Hz每位……有点高。对于所需的多普勒范围,较高的预定标器是可以的。将高8位用于量值为+/-8范围的相位。
图8UU示出示例相位积分机制。
载波NCO的溢出次数每毫秒被计数为每毫秒的整数载波相位改变。起始和结束寄存器值也被保留以计算载波相位在毫秒内的小数改变。
数学模型:CarrierWiper=C_AMPejD,其中D=要擦除的载波频率。C_AMP=7是sin/cos乘法的增益。
码生成(每毫秒)
码相位和码时钟由16NCO生成。码NCO:16位Fout=N*Fin/2L。溢出意味着新的码时钟。对于L=16,Fin=20480,N=32736(切确整数!)在20.48MHz时没有舍入。
每毫秒,软件都会计算历元位置并将其分解为称为epochCntCnt的码片计数和小数,其中小数=NCO范围*小数码片相位。
epochCntCnt是0到10229。
小数是16位。期望的准确性=0.005m=29.3m/X,X=5900。2的最近(closet)幂是13位。实现了16位。
起始码片是通过从码片数量旋转码片计数生成的。codeChipCnt=10230–epochCntCnt(强制介于0和10229之间)。
codeNco寄存器根据期望的相位被初始化。它还围绕寄存器尺寸被旋转:codeNCOregister=ncoRange–小数。如果小数不为零,那么codeChipCnt递减:
Ifregister!=0
codeChipCnt-=1
if(codeChipCnt<0)codeChipCnt=10229
当前码片计数被用于根据codeChipCnt的地址检索存储在存储器中的码序列。
初始码=CodeMemory(codeChipCnt)值为0,1解码为1,-1。
codeNCO在读取存储器之后被更新。当codeNCO有进位时,codeChipCnt递增。当计数达到最大值时,它被设置回零。每个样本时钟更新codeNCO的逻辑:
codeNCO+=N
Ifcarry,codeChipCnt++
If(codeChipCnt=10230){
codeChipCnt=0
declareEPOCH!(calledepochSCLK=为获得EPOCH而被处理的样本时钟
的数量)
}
码相位测量:
每毫秒,测量是在相关中使用的相位。
每毫秒:码相位=epochChipCnt*NCORange+小数。
最大码相位=10229*65536+65536-1=10230*65536-1。
为了计算时间窗口内的平均相位,维护总和=移位的总和,并且总和之和:
Shift=现在的码相位–最后一个码相位(回绕+/-maxCodePhase/2)。
平均码相位=起始码相位+sumOfShifts/N。
平均码相位米=到码片的NCO到米的转换。
平均多普勒
NCO单位的平均多普勒=NCO值的总和/M,其中M是独立值的数量。
平均多普勒Hz=平均多普勒NCO单位*NCO到Hz的转换。
载波相位
每毫秒的载波相位改变=上溢(或下溢)的数量+(endPhase–startPhase)/2^24。
StartPhase=添加之前的carrierNco值(与最后一个endPhase相同)。
EndPhase=MSEC结束时的carrierNco。
用于A-B信道的相关数学模型
令D为要擦除的第X个(A或B)信道上的期望载波频率。
第1步:擦除载波:
想要下移传入的信号的频率。使用ejD。(实部=CosACosD+SinDSinD)=cos(A-D)
在BaseBand处定义X信道的信号,但使用码,即,仍未擦除:
SXBBWC=SXejwX*D_AMP*ejwD=whereD_AMP=8(当前freqPlanmag,7也是可以的)
=cosXBBWC+jsinXBBWC
在BaseBand处定义X信道的信号,但使用码,即,仍未擦除:
CosXBBWC=cosSample*cosCarrier+sinSample*sinCarrier
SinXBBWC=sinSample*cosCarrier–cosSample*sinCarrier
这产生了用于X=A和X=B的结果
cosABBWC,SinABBWCandsosBBBWC,sinBBBWC
第2步:擦除码
毫秒到毫秒的处理相关性意味着根据码相位,历元在样本的范围内。如果导航数据需要被解调,那么结果被拆分成两个总和,corr1和corr2,分别称为历元“之前”和“之后”。结果与码和次级码和声明结果SXBB(移除码)。
基于新的codeChipCnt,从存储器或codeGen中检索4个码CodeAI、codeAQ、codeBI、codeBQ
定义复数码CodeA=codeAI+jCodeAQ,CodeB=codeBI+jCodeBQ
将仍有次级码的码擦除结果定义为SXBB,其中X=A或B。而且,将每个分量分开以明确处理导航数据相位旋转的方式。
cosBBAI=cosABBWC*CodeAI
sinBBAI=sinABBWC*CodeAI
cosBBAQ=-sinBBBWC*CodeAQ
sinBBAQ=cosBBBWC*CodeAQ
cosBBBI=cosBBWC*CodeAI
sinBBBI=sinBBWC*CodeBI
cosBBBQ=-sinBBWC*CodeBQ
sinBBBQ=cosBBWC*CodeBQ
基于次级码相位,检索8个码:
SCAIBefore,SCAIAfter,SCAQBefore,SCAQAfter,SCBIBefore,SCBIAfter,SCBQBefore,SCBQAfter
在EPOCH之前
Corr1CosAI+=cosBBAI*SCAIBefore
Corr1SinAI+=sinBBAI*SCAIBefore
Corr1CosAQ+=cosBBAQ*SCAQBefore
Corr1SinAQ+=sinBBAQ*SCAQBefore
Corr1CosBI+=cosBBBI*SCIBeforeB
Corr1SinBI+=sinBBBI*SCBIBefore
Corr1CosBQ+=cosBBBQ*SCBQBefore
Corr1SinBQ+=sinBBBQ*SCBQBefore
在EPOCH之后
Corr2CosAI+=cosBBAI*SCAIAfter
Corr2SinAI+=sinBBAI*SCAIAfter
Corr2CosAQ+=cosBBAQ*SCAQAfter
Corr2SinAQ+=sinBBAQ*SCAQAfter
Corr2CosBI+=cosBBBI*SCBIAfter
Corr2SinBI+=sinBBBI*SCBIAfter
Corr2CosBQ+=cosBBBQ*SCBQAfter
Corr2SinBQ+=sinBBBQ*SCBQBAfter
注意的是:N个相关器的组是通过捕获更提前和更滞后的码找到的。
提前码更早使用即时码,而滞后码更晚使用即时码。
而且,用于提前和滞后的EPOCHsclk与码具有相同的延迟和提前。
C信道:ALTBOC
假设宽带样本时钟大约为50MHz或更高。
用于ALTBOC的处理与A-B处理非常相似,只是它在载波和码擦除之间有BOC调制器。而且,调制器具有相同的相位,但对A和B使用相反符号的正交分量。在某种意义上,这类似于A、B处理。但是,那些跨所有卫星使用公共子载波,而C信道对每个卫星具有单独的BOC相位。
这里首先描述freqPlan方法,它具有用于码和BOC的单独NCO。Nagaraj提出了单个NCO,其中码相位和BOC相位源自相同的NCO相位。
更高层次的总结
1.擦除载波频率以形成基带样本;
2.将基带的一个副本上移以找到A信道。这实际上是宽带A;
3.将基带的一个副本下移以匹配B信道。这实际上是宽带B;
4.从A擦除AQ码和次级码(只使用导频);
5.从B擦除AB码和次级码(只使用导频)。
注意的是,由于没有数据解调,因此仅使用单个相关器,因为我们目前不考虑A和B数据信道。如果我们确实启用了这些分量,那么我们可能会忽略A、B信道而只使用C信道。另一种可能性是在C信道稳定且不需要数据收集来设置时间或检查卫星健康状况时关闭A、B信道。
挑战:codeNCO解析。使用24位。对于Fs=50e6,NCOValue=3432618。输出频率为10,229.99882698059。误差为-0.115PPPM。这是有效的,因为codeNCO每毫秒重置一次,并且不会累积误差。
codeNCO的初始化方式与A、B信道相同:定义码相位=epochChipCnt,小数,其中小数=NCO范围*小数码片相位。
起始codeChipCnt=10230–epochChipCnt(强制在0到10229之间)
初始化codeNCO寄存器=ncoRange–fraction。
Ifregister!=0
codeChipCnt-=1
if(codeChipCnt<0)codeChipCnt=10229
AltBocNCO:
挑战在于保持与主码定位紧密对准的AltBoc的相位。
方法是导出BOC相位=码相位*3/2,移除循环并识别小数:BOC周期=(int)BOC相位
BOC小数=BOC相位–BOC周期
BOCNC0:24位.
对于Fs=50e6,NCO值=5148928。输出频率为15,345,001.22070313。误差为0.08PPM。这也适用于NCO不会累积相位误差。
载波NCO:预定标器增加到64(8位)。Nco仍然是24位。
相关性
令D为要擦除的C信道上期望的载波频率。
擦除载波(想要下移输入信号的频率)使用ejD(real=CosACosD+SinDSinD)=cos(A-D)。
具***和BOC的信号C基带:
SCBBWCB=SCejwX*D_AMPejwD,其中D_AMP=8
结果是基带样本但具有BOC,并且次级码仍然未被移除(Cos=real,sin=imag)
CosBBWCB=cosSample*cosCarrier+sinSample*sinCarrier
SinBBWCB=sinSample*cosCarrier–cosSample*sinCarrier
BBCWCB=(cosBBWCB+jsinBBWCB)=SCBBWCejB
WipeBOC
现在生成A和B信道。
具***和BOC的基带C到A信道。
级别:使用24位NCO的高3位导出8状态相位。
用于余弦的状态是12,5,-5,-12,-12,-5,5,12。Sin是两种更提前的状态(5,12,12,5,-5,-12,-12,-5)。
BBCAWC=SCBBWCBejBB*ejBOC,BBCAWC=cosBBCAWC+jsinBBCAWC
BBCBWC=SCBBWCBejBB*e-jBOC,BBCBWC=cosBBCBWC+jsinBBCBWC
cosBBCAWC=((cosBBWCB*altBocCos)-(sinBBWCB*altBocSin))
sinBBCAWC=((sinBBWCB*altBocCos)+(cosBBWC*altBocSin))
cosBBCBWC=((cosBBWCB*altBocCos)+(sinbbWCB*altBocSin))
sinBBCBWC=((sinBBWCB*altBocCos)-(cosbbWCB*altBocSin))
WipeCode
就像在A,B导频中一样,codeA=(0+jcodeQA),并且codeB=(0+jcodeQB)
BBCAWC*codeA=(cosBBCAWC+jsinBBCAWC)*(0+jcodeQA)
cosBBCA=-sinBBCAWC*codeQA
sinBBCA=cosBBCAWC*codeQA
BBCBWC*codeB=(cosBBCBWC+jsinBBCBWC)*(0+jcodeQB)
cosBBCB=-sinBBCAWC*codeQB
sinBBCA=cosBBCAWC*codeQB
现在擦除次级码并使用单个相关器:
在历元之前
Corr1CosC+=cosBBCA*SCAQBefore+cosBBCB*SCBQBefore
Corr1SinC+=sinBBCA*SCAQBefore+sinBBCB*SCBQBefore
在历元之后
Corr1CosC+=cosBBCA*SCAQAfter+cosBBCB*SCBQAfter
Corr1SinC+=sinBBCA*SCAQAfter+sinBBCB*SCBQAfter
具有本地码和载波副本的输入样本的A、B和C信道处理的流程图
下面的两个流程图示出了处理宽带样本以产生用于三种测量类型的测量的两种候选方法:信道A(在1176.45MHz)、信道B(在1207.14MHz)和信道C(在1191.795MHz)。示例性宽带采样率为50MHz。它略小于捕获所有A和B旁带主瓣的51.15Mhz。低采样率对于低功耗是优选的。确切的选择还经由用于C信道的相关器间距影响跟踪灵敏度,因为相关器间距直接来自样本时钟间距。对于A和B信道,样本数据被过滤并抽取到较低的样本时钟,诸如来自宽带采样率的20.48MHz。
在第一个流程图中,A和B旁带为宽带样本的所有信道生成一次。这要求旁带发生器、移动频谱的旁带乘法器、低通滤波器,然后是抽取器以降低采样率,诸如20.48Mhz。
AB信道中的功能基本完全相同:
1)定义载波NCO并使用它来擦除载波多普勒。
2)定义码NCO,用于定义即时码相位,进行调整以考虑一半延迟线长度以在不同码相位建立相关器抽头的集合。对于数据信道使用的抽头数量减少,诸如使用中心抽头。数据和导频使用不同的预计算或生成的码序列。
3)载波擦除的样本乘以用于数据和导频码的码序列。数据被处理成相对于样本时钟的不同相关器之前和之后,其中码生成器位于序列中的第一个码片处。
4)在处理完一毫秒的样本之后,前相关器乘以历元之前的次级码,而后相关器乘以历元之后的次级码。
5)精简的相关器集被用于生成历元的数据,没有次级码,因此次级码相位就可以被核实。
6)具有次级码的前和后数据也被用于构造数据信道上的数据位相位估计。先前的后相关器和新的前相关器形成与次级码相位开始对准的历元,以便可以将数据位的完整周期加在一起。和的相位定义数据位相位。数据相位可以从相位中剥离,或者在连续数据位相关器和上使用点积检测器差分进行。
7)毫秒相关器值被用于形成宽corrVecs并驱动DLL、FLL和PLL。
C信道在流程上类似,但有以下区别:
1)附加的NCO被用于生成BOC子载波。BOC相位是根据BOC相位与码序列的第一个码位对准并且对于每2个码码片有3个BOC周期的规则从码NCO相位推导出来的。因此,码相位乘以3/2,截断为小数相位,并转换成BOCNCO的初始相位。这个BOCNOC相位以宽样本时钟运行并产生15.345MhzBOC时钟的正弦和余弦。
2)在擦除C信道多普勒之后,BOCNCO正弦和余弦产生旁带调制器以将用于A信道码的样本向上移并将用于B信道码的样本向下移。这为A和B产生不同的样本数据流,并且仍然处于宽带采样率,没有像A、B信道那样进行滤波和抽取。
3)A和B信道的数据流被乘以编码假设的相似带。
4)使用相同的前后历元方法,在历元前后也乘以不同的次级码。
在替代流程图中,A和B信道样本数据流不是从全局集合中获得的,而是连接到用于同一卫星的对应C信道。它使用C信道载波擦除的样本。在这种方法中,A和B信道使用相同的旁带发生器从C样本接收样本。
次级码捕获的方法:相干差分方法
在GNSS中,从接收到的现代化的信号中精确估计码相位和载波频率所需的信号处理比传统的L1-C/A码捕获更为复杂。导出适当上下文辅助的关键性能参数、准确性、计算要求、平台动力学、环境损害(包括多径)、参数估计速度、所需数据量始终位于相关蜘蛛网图的不同顶点上。因此,重要的是从多个维度解决问题,以得出关于真值持续不断地实现最小误差的解决方案。这些实施例中呈现的创新算法共同实现了这种解决方案。
下面概述的方法通过差分检测和存储来自距相关峰1毫秒转储的数据的集合并快速简单地确定次级码相位。然后将数据的集合与应用于次级码的类似差分运算进行互相关。使用FFT技术可以最快速、最轻松地执行此操作。该方法易于执行、快速、高度灵敏且可靠。作为示例,使用与相关峰的1秒数据,可以基本上瞬时确定极其可靠的次级码相位,每个相关峰(即,每毫秒)的SNR低至接近-10dBSNR。大约200毫秒的数据性能非常出色,每个相关峰样本低至大约-3dBSNR。
引言
Galileo在导频(Q)信道上有长度为100的次级码,在数据信道(I)上有长度为4的次级码。虽然我在下面讨论的技术适用于任何次级码,但我只会描述它的长度为100个信道,因为在任何情况下都必须确定这些信道。
我们假设我们知道载波频率在处理时间内稳定到PN帧周期的一小部分,例如,假设PN帧周期为1毫秒,不低于250微秒。在几乎所有情况下都应当是这种情况,因为这意味着差分多普勒频移在1秒的时间内小于250Hz(实际频率误差并不重要)。我们还假设我们知道解调的1Kbaud信号的转变时间(比如在一个码片周期内),因为这是捕获过程的结果,即,捕获过程中的相关峰确定在帧的时间中的起始位置。
一般概念
我们假设我们从捕获引擎(或其它相关过程)以1kHz的速率提供与一个导频信号的峰对应的复数数据,称之为c(t),t=0,d,..,(N-1)Xd,其中N是灵敏度所需的任何数字,如后所述,并且其中d是1毫秒。我们计算修改后的数据流b(t)=c(t)X c*(t-1),其中星号表示复共轭。这个数据包含修改后的次级序列,我们称之为次级码的微分,乘以恒定相位角exp(j2πfed),其中fe是频率误差,并且d是1毫秒。更明确地说,如果s(n),n=0,1,…,N-1是次级序列,起始相位未知,那么数据梦b(t)包含新序列sd=s(n-k)X s(n-1-k)exp(j2πfed),n=1,2,…,N,其中s(n)是次级码并且k是待确定的次级码偏移量。假设相位角相当恒定。如果相位角保持远小于90度,那么可以实现一些性能改进,如稍后讨论的。当然,这种经修改的次级序列sd可以被噪声掩盖。
然后,该过程是将经修改的数据流b与差分构造的次级码(重复以等于N)进行互相关,或更准确地说是循环互相关,如上所述从已知的次级码形成r=s(n)Xs(n-1),n=1,2,…N。当然,这个参考的起始相位不同于b(t)中包含的起始相位,并且这个相位差(在上面表示为k)是有待确定的。使用FFT可以最方便、几乎即时地完成所有偏移量处的这种互相关。
使用作为次级码长度的倍数的N的样本数可以是有益的,例如,100的倍数。我们假设至少使用200个b样本。作为示例,假设我们处理200个样本b。然后,对于最优FFT实施方式,该过程将形成长度为200的经修改的数据b的FFT,长度为200的经修改的参考r的FFT,将一乘以第二个的复共轭,形成结果的逆FFT并寻找峰量值的位置。这将确定次级码偏移量。如果保留的相位角远小于90度,那么我们只需要保留逆FFT的输出的实部并使用它的绝对值,而不是输出的量值。但是,在大多数情况下,改进是轻微的。
如果尺寸为100的倍数的FFT是不期望的,那么可以形成经修改的参考,它由长度是100的倍数的序列组成,零填充到期望的2的幂。正确地这样做避免了对卷积的边缘效应,这对于相对小的N最为重要。更明确地说,选择2的幂,使得N至少为256。这是要处理的数据的长度。然后通过首先找到小于N-100的100的最大倍数来选择要计算的参考。差分序列sd由这个长度构成,然后将结果补零直至N。数据的FFT和如此形成的参考按前一段中那样处理。这种方法保证如此形成的引用将完全包含在数据中。作为示例,如果N=512,那么差分序列sd的长度为400,因为这是小于412的100的最大倍数。向其添加512-400=112个零。这形成了FFT的新参考。显然,在这种情况下,由于零填充,处理增益仅为400。但是,对于较大的N值,零填充可能是不必要的,因为对FFT卷积的边缘效应很小。即使对于N=512的情况,也不清楚零填充是否会产生改进。
优点和限制
上述方法具有以下优点。(A)性能几乎是瞬时的,即,主要受限于数据的收集时间,因为FFT处理速度非常快。(B)灵敏度。只要底层频率改变不大,就几乎可以处理任意长度的数据集c。例如,使用FFT处理1023个数据样本非常简单并且几乎是瞬时的。(c)该处理可以与载波频率的精确确定并发地进行,例如使用倍频器,如下面所讨论的。
主要限制是灵敏度。假设每个样本的SNR下降到大约0.5左右,该性能应当足以处理100个数据样本。受平方律运算限制的输出SNR可以通过以下等式计算:SNRout=(SNRin)2/(1+2SNRin)Xlength(b),其中SNRin是c的每个样本(即,每个PN帧)的SNR。因此,在0dBSNR时,与平方律处理相关的损耗相对于相干处理约为4.8dB。如果正好处理100个样本(使用尺寸为100的FFT),那么输出SNR将为15.2dB,足以实现出色的性能。在-3dB输入SNR下,每个样本的SNR降至-9dB,并且可能需要200个样本才能获得14dB的输出SNR和出色的性能。在-10dB下,SNRout=-19.2dB,因此2000个样本产生13.8dB后积分SNR,这足以进行可靠检测。2048的FFT足以满足这个目的,因为参考的非零填充部分的长度为1900,这会产生13.6dB的积分后SNR。不太可能需要处理低至每帧-10dB,因为在初始捕获时,这意味着大约200帧数据(例如,200毫秒)需要在捕获过程中进行后处理以进行初始检测。但是,上面概述的过程甚至对这种微弱的信号也有效。
在上面,可以通过使用以下公式计算期望的后处理输出SNR,以确定每个被检查的次级码行为的误报率:pfa=exp(-snr),其中snr是后处理之后的输出snr,表示为功率,而不是dB。当然这意味着snr=10snrdb/10。例如,如果SNRdb=13,那么snr=101.3=19.5并且每个次级码相位pfa=2.16×10-9,因此如果处理1000个样本,那么这将提供2.16×10-6的总体误报率,即,绰绰有余。
其它变化
在前面的讨论中,信号被延迟1个样本(以码率)以提供经修改的信号sd=s(n-k)Xs(n-1-k)exp(j2πfed),如果延迟超过一个帧周期,例如两个帧周期,那么经修改的信号将是sd=s(n-k)Xs(n-2-k)exp(j4πfed),并且对于p码周期,它将是sd=s(n-k)Xs(n-pk)exp(j2pπfed)。这些经修改的信号与差分构造的次级码r=s(n)Xs(n-p)相关,n=1,2,…N,以搜索峰。应当注意的是,在互相关过程中,会检测到多个强峰,峰由次级码周期的倍数分隔,对于上面讨论的Galileo示例,次级码周期是100的倍数。较长延迟的一种用途是对误报执行检查。即,可以将用于峰的检测阈值设置在相对低的水平,然后使用不同的延迟进行第二次检查。相关函数的峰应当出现在相同的时间偏移量,从而允许检查错误警报。
精度载波确定
在进行上述处理的同时,可以对数据c(复数)求平方并执行FFT,从而高精度地确定载波频率。如果期望,那么这个精确的载波可以被用于确定次级码相位,如上面3中那样,以相干的方式,即,没有平方律检测操作。如果多普勒在积分时间内有所变化,那么这会有些问题。作为SNR的函数的所需样本的数量与第3节中的相似。
1.模拟示例:
图8WW和8XX中提供了这种方法的过程示例,其中模拟的Galileo次级码被掩埋在噪声中,从而产生每帧0dB的SNR。信号本身相对于次级码参考具有30帧偏移量,并且还包括250Hz频率偏移量。信号被延迟并乘以1帧,参考次级码也是如此。
使用500点FFT将经修改的信号和参考相关。结果的量值在图8WW和8XX中示出。性能与理论非常吻合。注意的是,在图8WW的上图中无法识别信号,而图8XX中的相关峰强,并且如预期的那样以100的倍数分隔,从码相位30开始。
图8XX的RMS背景峰被计算为18.04dB。在完美信号且无噪声的情况下,计算出的值约为19.97dB。这是由于次级码的自相关旁瓣。完美损失2dB是由于附加噪声。对500帧的0dBSNR信号进行积分产生22dB的输出SNR。这个SNR与相关旁瓣一起产生约18dB的RMS的峰,与图8XX相关联的测量一致。
除了使用512个信号样本(来自513个PN帧和1个样本差分检测)之外,图8YY示出了类似于图8WW的示例。参考被设置为次级码的400帧(即,次级码重复四次)零填充至512个样本。这避免了卷积过程中的边缘效应。结果在图8YY中示出。位于位置30处的峰具有测得的17.34dB的SNR,比图8XX的低0.7dB,这是参考长度为400而不是512的结果。两者之间的理论差异为1dB。
图8WW示出Galileo次级码1。每帧的SNR(上图)=0dB。
图8XX示出图8WW的针对信号的次级码同步。
图8YY示出使用512帧的图8WW的针对信号的次级码同步。
如上面所指示的,经修改的数据流对导频信号的峰的输出使用延迟-乘法操作。上述示例中使用了1的延迟(即,1个PN帧)。图8ZZ示出了图8WW的情况和相同情况但延迟为2的结果。如从图中可以看出的,背景看起来相当不相关。计算出的相关系数为0.126,而噪声的理论值仅为0.0887左右。相对低的相关性允许进行上述误报测试。由于图中的旁瓣包含来自信号本身的相当数量的能量,而不是背景噪声,假设每帧的SNR设置为0dB,因此存在一定程度的附加相关。对于甚至更弱的信号,误报测试更为重要,可能预期相关系数甚至更接近单独噪声的相关系数。
图8ZZ示出延迟=1和延迟=2的结果的比较。
相干差分方法的总结
1.将N个历元的复数序列与其一个历元延迟的复数共轭相乘,将频率误差转换成新序列中的恒定相位偏移量(假设频率改变小)。这样做的好处是它减少了搜索所有可能的频率误差的计算,与相干增益相比以较小的平方损失为代价。
2.这个新序列包含每个历元样本的两个连续次级码位的乘积。
3.新序列与作为已知次级码位偏移一位的乘积的序列相关。
4.相关作为计算加速被实现为FFT。
5.相关是相干的,因此具有相干SNR改进。
6.频率偏移量可以作为并行过程被估计。
a.在学习次级码相位之后,也可以在估计原始序列的频偏前将其擦除。
所以这提供了更完整的选项集,
·主要是相干的,有和没有频率搜索。
·如何处置仅L5独有的大频率偏移量:具有L1的第一定位将解决接收机时钟频率偏移量并且将不需要像仅L5方法那样的大频率搜索。
ο我们可以在sec码搜索的同时搜索频率(与相干方法并行)或与相干差分方法串联。
以下是描述该相干-微分方法的示例性过程的流程图。该流程图提供了算法实施方式的简单示例,其中仅使用次级码的一个周期和相似长度的导频数据。通过使用次级码的多个循环和相应的导频数据长度获得更大的灵敏度,如模拟示例中所指示的,其示出了5个或更多个循环。
一般优势
与常规技术相比,这种方法的优点之一是它可以无缝集成来自多个信号分量的信息,这些信号分量都与同一SV相关联,也跨多个SV,具有不同长度的次级码和各自的对准方式。另一个优点是它可以同时缩小多普勒不确定性,尽管这样做的优选方法是对信号求平方并执行FFT。
示例声明
该过程是将经修改的数据流与差分构造的次级码进行互相关,或者更准确地说是循环互相关联,其中经修改的数据流是复数输入数据流与所述复数输入数据流的共轭延迟版本的乘积并在这个互相关的输出中寻找峰。
Claims (20)
1.一种用于处理L5宽带频率GNSS信号的***,所述***包括:
模数转换器ADC,用于生成L5宽带GNSS频带中接收到的GNSS信号的数字表示;
基带样本存储器,用于存储接收到的GNSS信号的数字表示,基带样本存储器耦合到所述ADC;
GNSS处理***,耦合到基带样本存储器以处理接收到的GNSS信号的数字表示,GNSS处理***被配置为在不使用L1 GNSS信号捕获L5宽带GNSS信号的一个或多个GNSS信号分量的一个或多个次级码的码相位的情况下捕获L5宽带GNSS信号的所述一个或多个GNSS信号分量的所述一个或多个次级码的码相位。
2.如权利要求1所述的***,其中,所述***仅包括调谐到L5宽带频带中的频率的单个GNSS天线,并且其中所述***不接收且不捕获L1 GNSS信号。
3.如权利要求1所述的***,其中,GNSS处理***在捕获GNSS信号分量的一个或多个主码之后但在对GNSS信号分量的窄带跟踪之前捕获所述一个或多个次级码的码相位。
4.如权利要求3所述的***,其中,GNSS处理***在时间不确定性超过0.5毫秒时捕获所述一个或多个次级码的码相位。
5.如权利要求4所述的***,其中,在捕获所述一个或多个次级码的码相位之前,对当前时间的估计误差超过1毫秒。
6.如权利要求3所述的***,其中,所述一个或多个次级码中的第一次级码的码相位是通过使用来自单个GNSS卫星的L5宽带GNSS信号中的多个GNSS信号分量来捕获的。
7.如权利要求6所述的***,其中,所述多个GNSS信号分量包括GNSS旁带A信号和GNSS旁带B信号。
8.如权利要求3所述的***,其中,所述一个或多个次级码中的第一次级码的码相位是通过使用来自多个GNSS卫星的多个GNSS信号来捕获的。
9.如权利要求8所述的***,其中,所述多个GNSS卫星包括来自以下至少之一的至少两个卫星:GNSS卫星的Galileo E5星座;或GNSS卫星的L5 GPS星座;或GNSS卫星的Glonass K2星座;或GNSS卫星的QZSS星座;或GNSS卫星的Beidou B2星座。
10.如权利要求4所述的***,所述***还包括:
射频(RF)接收机,其包括至少第一RF滤波器,第一RF滤波器被调谐到仅L5宽带频带中的频率以接收L5宽带GNSS信号,并且第一RF滤波器耦合到所述单个GNSS天线,并且其中所述***不使用L1 GNSS信号来确定时间信息或频率信息,并且其中所述***不跟踪L1 GNSS信号。
11.如权利要求1所述的***,其中,GNSS处理***检测相继主码历元之间的相位改变,GNSS处理***包括锁频环FLL,所述相位改变是从GNSS处理***中的相关输出的同相结果和正交结果检测到的;并且其中GNSS处理***对从相关输出的同相结果和正交结果中检测到的相位改变求平均以产生估计的频率误差;并且其中GNSS处理***基于估计的频率误差向所述FLL的一个或多个鉴别器提供经补偿的频率,所述FLL被配置为基于所述估计的频率误差来减少接收到的L5 GNSS信号的频率估计中的误差。
12.如权利要求11所述的***,其中,所述FLL包括用于L5GNSS信号的第一旁带的第一鉴别器和用于L5 GNSS信号的第二旁带的第二鉴别器,并且其中估计的频率误差是基于从相关输出的同相结果和正交结果中检测到的所述相位改变的平均值的。
13.如权利要求12所述的***,求平均包括:对在来自单个GNSS卫星的两个、三个或四个GNSS信号分量上检测到的相位改变求平均。
14.如权利要求13所述的***,其中,所述FLL检测相继主码历元之间的相位改变。
15.如权利要求1所述的***,其中,L5宽带GNSS信号的一个或多个GNSS信号分量的一个或多个次级码的码相位是通过使用存储一组相位改变值的一组直方图来捕获的。
16.如权利要求1所述的***,其中,L5宽带GNSS信号的一个或多个GNSS信号分量的一个或多个次级码的码相位是通过在两个单独的相关操作中进行相干相关来捕获的。
17.如权利要求1所述的***,其中,L5宽带GNSS信号的一个或多个GNSS信号分量的一个或多个次级码的码相位是通过使用用于与已经捕获的主码相位相关联的次级码的预期相位反转序列来捕获的。
18.如权利要求1所述的***,其中,L5宽带GNSS信号的一个或多个GNSS信号分量的一个或多个次级码的码相位是通过如下方式来捕获的:基于所确定的从第二GNSS SV接收的GNSS信号的次级码相位与来自第一GNSS SV的GNSS信号的预测的次级码相位之间的所确定的差异,校正所述预测的次级码相位。
19.如权利要求1所述的***,其中,L5宽带GNSS信号的一个或多个GNSS信号分量的一个或多个次级码的码相位是通过如下方式来捕获:将一组差分相关样本与差分次级码序列相关以提供一组相关输出;并且从所述一组相关输出中确定所述一个或多个次级码的一个或多个次级码相位。
20.如权利要求19所述的***,其中,所述差分相关样本是通过将来自主相关操作的一组相关器输出乘以来自主相关操作的一组复共轭延迟的相关器输出来产生的,并且所述差分次级码序列是通过将次级码序列乘以延迟的次级码序列来产生的。
Applications Claiming Priority (7)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US202062704884P | 2020-06-01 | 2020-06-01 | |
US202062704882P | 2020-06-01 | 2020-06-01 | |
US62/704,882 | 2020-06-01 | ||
US62/704,884 | 2020-06-01 | ||
US17/334,477 | 2021-05-28 | ||
US17/334,477 US11821993B2 (en) | 2020-06-01 | 2021-05-28 | Modernized consumer grade GNSS secondary code acquisition and signal tracking |
PCT/US2021/035258 WO2021247584A1 (en) | 2020-06-01 | 2021-06-01 | Modernized consumer grade gnss secondary code acquisition and signal tracking |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116745647A true CN116745647A (zh) | 2023-09-12 |
Family
ID=78706017
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202180058641.0A Pending CN116745647A (zh) | 2020-06-01 | 2021-06-01 | 现代化的消费者级gnss次级码捕获和信号跟踪 |
Country Status (6)
Country | Link |
---|---|
US (2) | US11821993B2 (zh) |
EP (1) | EP4158385A1 (zh) |
KR (1) | KR20230031239A (zh) |
CN (1) | CN116745647A (zh) |
AU (1) | AU2021283884A1 (zh) |
WO (1) | WO2021247584A1 (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115291258B (zh) * | 2022-10-08 | 2022-12-13 | 成都星航时空科技有限公司 | 一种gnss基带捕获方法 |
KR102572546B1 (ko) * | 2022-11-15 | 2023-08-29 | 윤영민 | 단일 주파수 수신기에서 다중 채널에서 발생하는 신호의 차이를 감지하는 장치 및 방법 |
CN116840859B (zh) * | 2023-07-05 | 2024-02-09 | 中国人民解放军92728部队 | 基于动态估计的卫星导航接收机通道保持方法 |
CN117687047A (zh) * | 2024-01-31 | 2024-03-12 | 中寰星网数字科技(大连)有限公司 | 基于边缘计算的人工智能gnss高精度位移处理方法 |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5390207A (en) | 1990-11-28 | 1995-02-14 | Novatel Communications Ltd. | Pseudorandom noise ranging receiver which compensates for multipath distortion by dynamically adjusting the time delay spacing between early and late correlators |
FI20000819A (fi) * | 2000-04-06 | 2002-01-25 | Nokia Mobile Phones Ltd | Menetelmä vastaanottimessa ja vastaanotin |
US6922167B2 (en) | 2003-07-14 | 2005-07-26 | European Space Agency | Hardware architecture for processing galileo alternate binary offset carrier (AltBOC) signals |
EP2033391B1 (en) | 2006-06-01 | 2016-11-30 | Novatel, Inc. | Altboc receiver |
US7898475B2 (en) * | 2008-02-21 | 2011-03-01 | Texas Instruments Incorporated | GNSS receiver with reduced storage requirements |
US8237610B2 (en) | 2008-06-13 | 2012-08-07 | Qualcomm Incorporated | Methods and apparatuses for requesting/providing code phase related information associated with various satellite positioning systems in wireless communication networks |
US9116234B2 (en) * | 2011-07-29 | 2015-08-25 | Baseband Technologies Inc | System, method, and computer program for a low power and low cost GNSS receiver |
US10054687B2 (en) | 2013-08-14 | 2018-08-21 | Hemisphere Gnss Inc. | System and method for detecting false global navigation satellite system satellite signals |
US10024976B2 (en) * | 2013-08-21 | 2018-07-17 | Samsung Electronics Co., Ltd | Method and apparatus for reducing memory and communications bandwidth requirements in GNSS receivers |
US9270323B2 (en) * | 2014-04-04 | 2016-02-23 | Broadcom Corporation | Wireless communication synchronization system |
GB2562253B (en) * | 2017-05-09 | 2021-11-03 | Imagination Tech Ltd | Efficient detection of ranging code correlation function of a GNSS signal |
EP3620824B1 (en) * | 2018-09-06 | 2023-03-01 | Airbus Defence and Space GmbH | Ground time virtually referenced positioning and timing system |
US11686855B2 (en) * | 2019-10-15 | 2023-06-27 | Onenav, Inc. | Modernized global navigation satellite system (GNSS) receivers and commercially viable consumer grade GNSS receivers |
US20240094409A1 (en) * | 2022-09-15 | 2024-03-21 | Apple Inc. | System and method to synchronize across positioning receivers for secondary code acquisition |
-
2021
- 2021-05-28 US US17/334,477 patent/US11821993B2/en active Active
- 2021-06-01 EP EP21816701.3A patent/EP4158385A1/en active Pending
- 2021-06-01 CN CN202180058641.0A patent/CN116745647A/zh active Pending
- 2021-06-01 KR KR1020227046344A patent/KR20230031239A/ko active Search and Examination
- 2021-06-01 WO PCT/US2021/035258 patent/WO2021247584A1/en active Application Filing
- 2021-06-01 AU AU2021283884A patent/AU2021283884A1/en active Pending
-
2023
- 2023-09-07 US US18/243,639 patent/US20230417930A1/en active Pending
Also Published As
Publication number | Publication date |
---|---|
US20230417930A1 (en) | 2023-12-28 |
WO2021247584A1 (en) | 2021-12-09 |
WO2021247584A9 (en) | 2023-02-09 |
EP4158385A1 (en) | 2023-04-05 |
US11821993B2 (en) | 2023-11-21 |
US20210373179A1 (en) | 2021-12-02 |
AU2021283884A1 (en) | 2023-01-19 |
KR20230031239A (ko) | 2023-03-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6922546B1 (en) | GPS signal acquisition based on frequency-domain and time-domain processing | |
CN100578252C (zh) | 定位方法和装置 | |
CN116745647A (zh) | 现代化的消费者级gnss次级码捕获和信号跟踪 | |
EP2093584B1 (en) | Processing received satellite radio signals | |
US20060071851A1 (en) | Systems and methods for acquisition and tracking of low CNR GPS signals | |
US7982668B2 (en) | Method for processing combined navigation signals | |
JP2004501352A (ja) | 不均一で離散的なサンプル・セグメントを相関させるコヒーレント累積システムを採用する信号検出器及び方法 | |
CA2506700A1 (en) | Satellite-based positioning system improvement | |
KR20030045143A (ko) | 무선 통신 시스템에서 터미널의 속도를 추정하는 방법 및장치 | |
US11187810B2 (en) | Global navigation satellite system (GNSS) signal tracking | |
US20080143598A1 (en) | Methods for improving computational efficiency in a global positioning satellite receiver | |
CN102183770A (zh) | 一种抗多径干扰的gps伪随机码跟踪环路及其抗多径干扰方法 | |
US8970431B2 (en) | Method and apparatus for weak data bit sync in a positioning system | |
US6735243B1 (en) | Method, apparatus and system for fast acquisition of a spread spectrum signal | |
US8391339B2 (en) | Correlator sum method for spread spectrum signal receivers | |
US20210026021A1 (en) | Receiver for satellite navigation | |
Khan et al. | Acquisition strategies of GNSS receiver | |
US20110050496A1 (en) | Energy Domain Based Peak Reconstruction Methods And Apparatuses | |
JPH04232485A (ja) | 広域測位システム受信機 | |
EP3488265A1 (en) | Global navigation satellite system (gnss) signal tracking | |
Baracchi-Frei | Real-time GNSS software receiver optimized for general purpose microprocessors | |
TW202124994A (zh) | 現代化全球導航衛星系統接收器 | |
Shafaati | Design and Implementation of an RTK-based Vector Phase Locked loop in a GNSS Software Receiver | |
Kim et al. | High performance S/W receiver prototyping for feasibility study on developing a receiver for GNSS ground sensor station | |
Guan | Multicarrier Transmission As an Alternative for GPS C/A Code: Simulation and Verification |
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 |