本文主要是介绍3.2 HD-GR基带模块介绍,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
\qquad HD-GR接收机的基带模块是在Namuru跟踪模块的Verilog版代码基础上开发的,开发工具使用了Altera的Quartus II v11.0软件包。HD-GR基带模块继承和扩展了Namuru跟踪模块的架构和接口,增加了BDS系统和双系统以及1PPS时标支持功能。
3.2.1 总体描述
\qquad AGRS_GP_1参考工程中的GNSS基带模块支持GPS和BDS双系统,具有20个通道,能同时跟踪10个GPS L1信号和10个BDS B1I信号。
\qquad 分析GPS L1和BDS B1I信号后可知,就基带模块实现而言,它们之间的信号特征差异只表现在数字中频信号频率和C/A码片速率上。在Namuru接收机中,导航固件通过使用Namuru跟踪模块的总线接口能够控制它们。因此,将Namuru跟踪模块扩展为支持GPS和BDS双系统是直接的,无需对其架构和接口做实质性改变。
\qquad 参见图3-8,HD-GR基带模块与Namuru跟踪模块一样,由一个主模块(gnss_baseband)和三个子功能块组成。三个子功能块分别是:10个完全相同的GPS L1跟踪通道和10个完全相同的BDS B1I跟踪通道;一个时基模块;以及一个寄存器和地址译码功能块。
\qquad 相比于Namuru跟踪模块,HD-GR基带模块主要进行了以下扩展:
- 主模块对外接口扩展为接收来自两个射频前端芯片的数字中频信号(IF 1, IF 2),以及输出一个1PPS时标pps_timemark(未在图3-1中标出)。参见“1PPS时标产生”小节的介绍。
- 时基模块使用工作时钟和两个采样时钟(s1_clk, s2_clk)(包含在IF 1, IF 2信号中)导出总线和跟踪通道处理所需的各种时序信号,以及实现1PPS时标输出的主要处理功能和接口。参见“时基模块”和“1PPS时标产生”两小节的介绍。
- 主模块生成和管理20个跟踪通道(实例),10个跟踪GPS L1信号,10个跟踪BDS B1I信号。参见“跟踪通道(模块文件)”小节的介绍。
- 主模块与导航固件进行数据交换的总线接口的地址空间从1 Kbytes扩展为2 Kbytes,能够映射512个32位宽的寄存器。具体说明参见“寄存器地址映射和功能描述”小节。
- 我的存档免费软件
- 我的存档学习资料
3.2.2 时基模块
\qquad 在HD-GR基带模块中,时基模块(time_base)不仅导出了基本时序信号,而且实现了产生1PPS时标的主要处理和接口。
1、时序信号产生
\qquad 与Namuru跟踪模块一样,在HD-GR基带模块中,时基模块(time_base)用工作时钟clk导出周期可由导航软件设置的累积中断信号(accum_enable)和观测量锁存脉冲(tic_enable, pre_tic_enable)。不过,为了能够产生与UTC秒时钟对齐的1PPS时标,支持动态延迟和调整观测量锁存脉冲的周期和相位。时基模块还用工作时钟clk和采样时钟sample_clk_1及sample_clk_2分别导出采样工作信号accum_sample_enable_1和accum_sample_enable_2。这些信号都同步于clk上升沿,选通脉冲宽度都为1个clk周期。
2、1PPS时标产生
\qquad 1PPS时标产生器配合tic_enable信号来工作。图3-9中的时标信号pps_tic_0从tic_enable导出,然后通过基带主模块(gnss_baseband)的接口信号pps_timemark,输出到HD-GR接收机底板的PPS引脚上。信号pps_timemark希望被用作一个准确的1PPS时标,与UTC对齐,脉冲宽度1ms。真正的1PPS输出需要应用许多软件算法来产生,若没有这个pps_tic_0,将无法实现对齐UTC。
\qquad 时标信号pps_tic_0的上升沿吻合于tic_enable上升沿。因此,要将pps_tic_0与UTC对齐,tic_enable必须与UTC对齐。为了确定一个与UTC对齐的1PPS时标,接收机需要能够预测:为产生一个即将到来的时标输出脉冲,需要对一个TIC脉冲施加多大改正量。一旦预测和设置了这个改正量,时基模块就可以通过修改单独一周tic_enable的周期 (TIC period),然后将它设置为初始值,再滑动tic_enable的相位来达到目的。接收机导航软件通过设置TIC计数值(pps_tic_load)和TIC延迟值(tic_delay_value)来完成它们(参见图3-9)。
\qquad 需要指出的是,这里产生的1PPS时标pps_timemark并没有与UTC完全对齐,因为当前的实现没有考虑射频前端中的信号延迟,也没有考虑数字中频信号进入基带模块到完成相关计算之间的信号延迟以及导出时标信号pps_tic_0和pps_timemark所需的处理和传播延迟。
3.2.3 跟踪通道(模块文件)
\qquad 在HD-GR基带模块中,跟踪GPS L1信号和BDS B1I信号的通道模块分别为gps_tracking_channel和bds_tracking_channel。相比于Namuru的跟踪通道及其子模块,只有BDS B1I通道的码产生器(bds_code_gen)存在少许差异,因此在此不再展开对HD-GR跟踪通道的分析,而只列出各跟踪通道及其子模块的文件名称。
// GPS L1信号跟踪通道
gps_tracking_channel.v // 主模块
|-- gps_carrier_nco.v // 载波NCO
|-- gps_carrier_mixer.v // 载波混频器
|-- gps_code_nco.v // 码NCO
|-- gps_code_gen.v // 码产生器
|-- gps_accumulator.v // 累积器
|-- gps_epoch_counter.v // 历元计数器// BDS B1I信号跟踪通道
bds_tracking_channel // 主模块
|-- bds_carrier_nco.v // 载波NCO
|-- bds_carrier_mixer.v // 载波混频器
|-- bds_code_nco.v // 码NCO
|-- bds_code_gen.v // 码产生器
|-- bds_accumulator.v // 累积器
|-- bds_epoch_counter.v // 历元计数器
3.2.4 寄存器地址映射和功能描述
\qquad (整理中…)
- 我的存档免费软件
- 我的存档学习资料
这篇关于3.2 HD-GR基带模块介绍的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!