用于记忆编码的数据处理方法及GNSS接收机与流程

文档序号:29638308发布日期:2022-04-13 17:44阅读:142来源:国知局
用于记忆编码的数据处理方法及GNSS接收机与流程
用于记忆编码的数据处理方法及gnss接收机
技术领域
1.本发明涉及一种用于记忆编码的数据处理方法及gnss接收机。


背景技术:

2.卫星导航定位技术目前已基本取代了地基无线电导航、传统大地测量和天文测量导航定位技术,并推动了大地测量与导航定位领域的全新发展。当今,gnss系统不仅是国家安全和经济的基础设施,也是体现现代化大国地位和国家综合国力的重要标志。由于其在政治、经济、军事等方面具有重要的意义,世界主要军事大国和经济体都在竞相发展独立自主的卫星导航系统。
3.gnss(global navigation satellite system)是指包括美国gps、俄罗斯glonass、欧洲的galileo、以及我国的beidou在内的全球四大导航定位系统,可为用户提供不间断的高精度的全球覆盖的导航信号资源,从而实现全天候实时的定位、测速和授时功能。gnss目前已广泛于导航、测绘、灾害监测、科学研究等诸多领域,并且随着gnss技术的不断完善和发展,接收机或处理芯片有望突破成本、功耗、尺寸等限制,装配在各类地基空基天基等智能终端上,可极大的促进自动驾驶、无人机、空间飞行器等定位技术的发展。这些应用场景下常常由于用户的动态性、信号传播的开放性、接收环境的复杂性导致信号恶化,严重破坏了gnss的可用性、可靠性、连续性等服务性能。
4.高精度全球卫星定位系统实时跟踪技术,需要跟踪不同的卫星系统的多个频点的信号,意味着接收机需要实现多种卫星信号所调制的伪随机码。这些伪随机码中主要分为两类,gold码和基于memory code(记忆编码)的码。随着卫星信号的不断更新,基于memory code的码越来越多,galileo e1/e6,bds b1c,gps l1c等都属于这一类,并且这些新的信号已经成为新一代高精度gnss接收机所不可或缺的跟踪信号。
5.高精度gnss接收机基带跟踪算法的设计中,码生成器用于产生基带信号所使用的伪随机码,与基带数据做相关运算,来计算当前信号的码相位,达到跟踪信号的目的。由于要同时跟踪多颗卫星的同一频点的信号,为了节约硬件资源,常常使用时分复用的方式使用码生成器,而不需要为每一颗卫星设计一套专门的码生成器和相关器,只需要设计4-8组即可。
6.但这样仍然意味着每个频点都需要4-8组码生成器,这对于具备跟踪galileo e1/e6,gps l1c,bds b1c信号来说,需要存储的memory code容量成倍增长,在做asic实现的时候会极大增加rom的数量,进而增加asic面积。
7.随着接收机跟踪的信号越来越多,大部分接收机的基带算法只能使用专门的fpga芯片甚至asic芯片来完成。fpga芯片的memory资源非常有限,而对asic芯片来说,memory资源占用的芯片面积往往能超过50%,甚至接近90%,也意味着面积成本的极大增加。所以尽可能减少memory的使用,对于gnss接收机基带算法的设计而言显得尤为关键。


技术实现要素:

8.本发明要解决的技术问题是为了克服现有技术中gnss接收机中记忆编码消耗存储资源大的缺陷,提供一种记忆编码占用存储空间少且接收机运算效率高的用于记忆编码的数据处理方法及gnss接收机。
9.本发明是通过下述技术方案来解决上述技术问题:
10.一种用于记忆编码的数据处理方法,用于gnss接收机,所述gnss接收机包括若干信号跟踪通道、一查询模块、一管理模块以及一存储模块,每一信号跟踪通道包括一伪随机码生成器以及一相关器,所述存储模块中预存记忆编码,所述数据处理方法包括:
11.所述管理模块接收全部信号跟踪通道的查询请求;
12.所述管理模块按预设顺序调用查询模块处理查询请求;
13.所述查询模块根据查询请求在所述记忆编码中查询编码数据;
14.所述查询模块将编码数据发送给对应的信号跟踪通道;
15.所述信号跟踪通道利用伪随机码生成器及相关器计算获取的编码数据以跟踪卫星信号。
16.较佳地,每一查询请求包括标志位和查询地址,所述管理模块按预设顺序调用查询模块处理查询请求包括:
17.所述管理模块收到查询请求后对查询请求中标志位和查询地址进行锁存;
18.所述查询模块的状态从idle状态进入check状态,所述管理模块根据查询请求生成一个索引信息,所述索引信息与发送有效的查询请求的信号跟踪通道对应。
19.较佳地,所述数据处理方法包括:
20.所述管理模块在check状态下根据当前的索引信息,将锁存的查询地址导入到存储模块的地址输入端,并生成一个读有效信号到存储模块的en端;
21.所述管理模块判断存储模块的输出是否有效,若是则根据当前的索引信息将存储模块输出的编码数据传输至对应的信号跟踪通道,并产生一个输出有效信号回传,然后将当前索引信息所指示的信号跟踪通道端口锁存的地址信息以及查询有效信息清除;
22.所述查询模块进入idle状态。
23.较佳地,所述数据处理方法包括:
24.所述伪随机码生成器根据当前的码相位生成对应的查询请求中的查询地址,其中所述查询地址每查询一次就递增加1,增加到最大值后自动回到初始值,初始值根据卫星号生成并写入状态寄存器。
25.较佳地,所述伪随机码产生器包括两级缓存,所述伪随机码生成器接收编码数据后将最新接收的编码数据保存至第二级缓存中,伪随机码生成器及相关器计算第一级缓存中的编码数据以跟踪卫星信号,第一级缓存在编码数据计算完成后读取第二级缓存中的编码数据,然后所述伪随机码产生器在第一级缓存读取第二级缓存中的编码数据后生成下一条查询请求。
26.较佳地,所述数据处理方法包括:
27.伪随机码生成器从第一级缓存中读取一个码片;
28.伪随机码生成器利用所述码片产生伪随机码;
29.判断是否读取第二级缓存至第一级缓存中,若是则读取第二级缓存中的编码数据
至第一级缓存中,若否则再次执行从第一级缓存中读取一个码片的步骤;
30.伪随机码生成器生成下一条查询请求;
31.判断是否收到查询请求对应的编码数据,若是则将最新接收的编码数据保存至第二级缓存中。
32.本发明还提供一种gnss接收机,所述gnss接收机包括若干信号跟踪通道、一查询模块、一管理模块以及一存储模块,每一信号跟踪通道包括一伪随机码生成器以及一相关器,所述存储模块中预存记忆编码,
33.所述管理模块用于接收全部信号跟踪通道的查询请求;
34.所述管理模块用于按预设顺序调用查询模块处理查询请求;
35.所述查询模块用于根据查询请求在所述记忆编码中查询编码数据;
36.所述查询模块用于将编码数据发送给对应的信号跟踪通道;
37.所述信号跟踪通道用于利用伪随机码生成器及相关器计算获取的编码数据以跟踪卫星信号。
38.较佳地,每一查询请求包括标志位和查询地址,
39.所述管理模块用于收到查询请求后对查询请求中标志位和查询地址进行锁存;
40.所述查询模块用于在收到查询请求后将状态从idle状态变为check状态;
41.所述管理模块用于根据查询请求生成一个索引信息,所述索引信息与发送有效的查询请求的信号跟踪通道对应;
42.所述管理模块用于在check状态下根据当前的索引信息,将锁存的查询地址导入到存储模块的地址输入端,并生成一个读有效信号到存储模块的en端;
43.所述管理模块用于判断存储模块的输出是否有效,若是则根据当前的索引信息将存储模块输出的编码数据传输至对应的信号跟踪通道,并产生一个输出有效信号回传,然后将当前索引信息所指示的信号跟踪通道端口锁存的地址信息以及查询有效信息清除;
44.所述查询模块用于在管理模块将当前索引信息所指示的信号跟踪通道端口锁存的地址信息以及查询有效信息清除后进入idle状态。
45.较佳地,所述伪随机码生成器用于根据当前的码相位生成对应的查询请求中的查询地址,其中所述查询地址每查询一次就递增加1,增加到最大值后自动回到初始值,初始值根据卫星号生成并写入状态寄存器,其中,所述伪随机码产生器包括两级缓存,所述伪随机码生成器接收编码数据后将最新接收的编码数据保存至第二级缓存中,伪随机码生成器及相关器计算第一级缓存中的编码数据以跟踪卫星信号,第一级缓存在编码数据计算完成后读取第二级缓存中的编码数据,然后所述伪随机码产生器在第一级缓存读取第二级缓存中的编码数据后生成下一条查询请求。
46.较佳地,伪随机码生成器用于从第一级缓存中读取一个码片;
47.伪随机码生成器用于利用所述码片产生伪随机码;
48.伪随机码生成器用于判断是否读取第二级缓存至第一级缓存中,若是则读取第二级缓存中的编码数据至第一级缓存中,若否则再次执行从第一级缓存中读取一个码片的步骤;
49.伪随机码生成器用于生成下一条查询请求;
50.伪随机码生成器用于判断是否收到查询请求对应的编码数据,若是则将最新接收
的编码数据保存至第二级缓存中。
51.在符合本领域常识的基础上,上述各优选条件,可任意组合,即得本发明各较佳实例。
52.本发明的积极进步效果在于:
53.本发明能够解决gnss接收机中记忆编码消耗存储资源大的问题,记忆编码占用存储空间少且接收机运算效率高。
附图说明
54.图1为本发明实施例1的gnss接收机的结构示意图。
55.图2为本发明实施例1的数据处理方法的流程图。
56.图3为本发明实施例1的数据处理方法的又一流程图。
具体实施方式
57.下面通过实施例的方式进一步说明本发明,但并不因此将本发明限制在所述的实施例范围之中。
58.实施例1
59.参见图1,本实施例提供一种gnss接收机,所述gnss接收机包括若干信号跟踪通道14、一查询模块12、一管理模块11以及一存储模块13。
60.每一信号跟踪通道包括一伪随机码生成器141以及一相关器142,所述存储模块中预存记忆编码。
61.所述管理模块用于接收全部信号跟踪通道的查询请求;
62.所述管理模块用于按预设顺序调用查询模块处理查询请求,预设顺序可以是请求的先后顺序。
63.所述查询模块用于根据查询请求在所述记忆编码中查询编码数据;
64.所述查询模块用于将编码数据发送给对应的信号跟踪通道;
65.所述信号跟踪通道用于利用伪随机码生成器及相关器计算获取的编码数据以跟踪卫星信号。
66.具体地,每一查询请求包括标志位和查询地址。所述标志位用于通知管理模块是哪一个信号跟踪通道发送的查询请求,所述查询地址表示信号跟踪通道所需要的记忆编码中的目标数据。
67.所述管理模块用于收到查询请求后对查询请求中标志位和查询地址进行锁存;
68.所述查询模块用于在收到查询请求后将状态从idle状态变为check状态;
69.管理模块主要完成若干个请求的随机读管理功能,当有一个或多个查询请求时,按照一定顺序依次完成对应的查询操作,并将查询到的数据回传。查询到的数据根据标志位进行回传。
70.管理模块在收到查询请求后会先对这两个信息进行锁存。然后任意个请求有效的状态都会触发查询状态机从idle状态进入check状态。即从待机状态进入查询状态。
71.所述管理模块用于根据查询请求生成一个索引信息,所述索引信息与发送有效的查询请求的信号跟踪通道对应;
72.管理模块根据查询请求中的标志位获取信号跟踪通道后生成所述索引信息,当查询到编码数据后根据索引信息回传数据。
73.所述管理模块用于在check状态下根据当前的索引信息,将锁存的查询地址导入到存储模块的地址输入端,并生成一个读有效信号到存储模块的en端;
74.所述管理模块用于判断存储模块的输出是否有效,若是则根据当前的索引信息将存储模块输出的编码数据传输至对应的信号跟踪通道,并产生一个输出有效信号回传,然后将当前索引信息所指示的信号跟踪通道端口锁存的地址信息以及查询有效信息清除;
75.所述查询模块用于在管理模块将当前索引信息所指示的信号跟踪通道端口锁存的地址信息以及查询有效信息清除后进入idle状态。
76.在check状态,根据当前的index值(索引信息),将对应通道锁存的查询地址导入到rom的地址输入端,并生成一个读有效信号到rom(存储模块)的en端,形成一个多到一的读请求管理功能。
77.等rom输出变为有效后,根据当前的index将rom输出的结果送到对应的通道输出端口,并产生一个对应的输出有效信号回传。
78.同时,将当前index所指示的通道端口锁存的地址信息,以及查询有效信息清除。然后状态机回到idle状态等待下一次查询请求的到来。
79.进一步地,所述伪随机码生成器用于根据当前的码相位生成对应的查询请求中的查询地址,其中所述查询地址每查询一次就递增加1,增加到最大值后自动回到初始值,初始值根据卫星号生成并写入状态寄存器。
80.具体地,所述伪随机码产生器包括两级缓存,所述伪随机码生成器接收编码数据后将最新接收的编码数据保存至第二级缓存中,伪随机码生成器及相关器计算第一级缓存中的编码数据以跟踪卫星信号,第一级缓存在编码数据计算完成后读取第二级缓存中的编码数据,然后所述伪随机码产生器在第一级缓存读取第二级缓存中的编码数据后生成下一条查询请求。
81.伪随机码产生器是查询请求的发起端和数据的接收端,然后根据查询到的memory code计算出对应的伪随机码。
82.查询请求的发起需要根据当前的码相位生成对应的查询地址,查询地址每查询一次就递增加1,增加到最大值后自动回到初始值。初始值由软件控制根据卫星号生成,并写入状态寄存器。
83.伪随机码产生器中有两级缓存来存储查询的数据。查询模块返回的的数据在接收后,首先保存在第二级缓存中。当第一级缓存的数据使用完后,会自动将第二级缓存的数据读取到第一级缓存中。然后码产生器会再发起一次新的查询操作,更新第二级缓存中的数据。
84.码片的计算可以直接使用l1缓存的数据,根据需要做其他操作。
85.比如针对galileo e1b,e1c,e6b,e6c信号,l1缓存的数据即为码片。对gps l1c和bds b1c信号而言,memory code存储的是勒让德序列,需要根据查询到的两个不同地址的数据,将对应的比特位再做一次异或才能产生正确的伪随机码。
86.具体地,伪随机码生成器的功能如下:
87.伪随机码生成器用于从第一级缓存中读取一个码片;
88.伪随机码生成器用于利用所述码片产生伪随机码;
89.伪随机码生成器用于判断是否读取第二级缓存至第一级缓存中,若是则读取第二级缓存中的编码数据至第一级缓存中,若否则再次执行从第一级缓存中读取一个码片的步骤;
90.伪随机码生成器用于生成下一条查询请求;
91.伪随机码生成器用于判断是否收到查询请求对应的编码数据,若是则将最新接收的编码数据保存至第二级缓存中。
92.利用上述gnss接收机,以gal e1信号为例,常见的接收机基带算法实现的结构中,多数采用4通道的相关器进行跟踪,故如果采用常规方法,每个相关器都有一套独立的码生成器,也就是说要实现4套存储memory code的存储模块,每套存储模块中包含e1c和e1b信号。e1c/e1b信号的码片个数为9216bit。那么总的存储模块容量为4*2*9216bits=73728bits
93.而本实施例中只需要实现一套rom,故总的存储模块容量为9216bits*2=18432bits。
94.能够大幅度的节省存储模块的占用空间。
95.参见图2,利用上述gnss接收机,本实施例还提供一种数据处理方法,包括:
96.步骤100、所述管理模块接收全部信号跟踪通道的查询请求;
97.步骤101、所述管理模块按预设顺序调用查询模块处理查询请求;
98.步骤102、所述查询模块根据查询请求在所述记忆编码中查询编码数据;
99.步骤103、所述查询模块将编码数据发送给对应的信号跟踪通道;
100.步骤104、所述信号跟踪通道利用伪随机码生成器及相关器计算获取的编码数据以跟踪卫星信号。
101.进一步地,每一查询请求包括标志位和查询地址,所述步骤101具体包括:
102.步骤1011、所述管理模块收到查询请求后对查询请求中标志位和查询地址进行锁存;
103.步骤1012、所述查询模块的状态从idle状态进入check状态,所述管理模块根据查询请求生成一个索引信息,所述索引信息与发送有效的查询请求的信号跟踪通道对应。
104.步骤1013、所述管理模块在check状态下根据当前的索引信息,将锁存的查询地址导入到存储模块的地址输入端,并生成一个读有效信号到存储模块的en端;
105.之后在步骤102中所述查询模块根据查询地址在所述记忆编码中查询编码数据;
106.步骤102后包括:
107.步骤1021所述管理模块判断存储模块的输出是否有效,若是则执行步骤103,若否则再次执行步骤1021;
108.步骤103包括:
109.步骤1031、根据当前的索引信息将存储模块输出的编码数据传输至对应的信号跟踪通道,并产生一个输出有效信号回传,然后将当前索引信息所指示的信号跟踪通道端口锁存的地址信息以及查询有效信息清除;
110.步骤1032、所述查询模块进入idle状态。
111.所述数据处理方法包括:
112.所述伪随机码生成器根据当前的码相位生成对应的查询请求中的查询地址,其中所述查询地址每查询一次就递增加1,增加到最大值后自动回到初始值,初始值根据卫星号生成并写入状态寄存器。
113.其中,所述伪随机码产生器包括两级缓存,所述伪随机码生成器接收编码数据后将最新接收的编码数据保存至第二级缓存中,伪随机码生成器及相关器计算第一级缓存中的编码数据以跟踪卫星信号,第一级缓存在编码数据计算完成后读取第二级缓存中的编码数据,然后所述伪随机码产生器在第一级缓存读取第二级缓存中的编码数据后生成下一条查询请求。
114.参见图3,对于伪随机码生成器,在步骤100至104的执行过程中,所述数据处理方法包括:
115.步骤200、伪随机码生成器从第一级缓存中读取一个码片;
116.步骤201、伪随机码生成器利用所述码片产生伪随机码;
117.步骤202、判断是否读取第二级缓存至第一级缓存中,若是则执行步骤203,若否则执行步骤200;
118.步骤203、读取第二级缓存中的编码数据至第一级缓存中;
119.步骤204、伪随机码生成器生成下一条查询请求;
120.步骤205、判断是否收到查询请求对应的编码数据,若是则执行步骤206,若否则再次执行步骤205。
121.步骤206、将最新接收的编码数据保存至第二级缓存中。
122.然后循环执行步骤200。
123.虽然以上描述了本发明的具体实施方式,但是本领域的技术人员应当理解,这些仅是举例说明,本发明的保护范围是由所附权利要求书限定的。本领域的技术人员在不背离本发明的原理和实质的前提下,可以对这些实施方式做出多种变更或修改,但这些变更和修改均落入本发明的保护范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1