一种北斗二代与gps公用频点的实时信号接收处理系统的制作方法_2

文档序号:9615437阅读:来源:国知局
本 地载波和CA码进行相关累积,结合实时释放内存的软件处理方法,将诸多先进的软件处理 方法集成其中,实现系统级的方法创新。
[0030] (3)在软件冷启动后5秒钟内完成所有北斗二代和GPS公用频点实时信号的搜索。
[0031] (4)由于本地载波和CA码都事先产生并存储在载波查找表和CA码查找表文件中, 不需要实时产生,另外使用改进的位运算方法,大大减少了软件的运算量,提高了软件的处 理速度和效率。
【附图说明】:
[0032] 图1是发明方法实现的系统结构框图;
[0033] 图中:1--第一RF射频模块Max2741 ;
[0034] 2--第二RF射频模块GRM7520 ;
[0035] 3--第三RF射频模块GP2015 ;
[0036] 4--FPGA模块;
[0037] 5--USB总线控制器。
[0038] 图2是第一RF模块Max2741电路原理图。
[0039] 图3是第二RF模块GRM7520电路原理图。
[0040] 图4是第三RF模块GP2015电路原理图。
[0041] 图5是USB总线控制器CY7C68013A电路原理图。
[0042] 图6是FPGA-X3CS400控制电路原理图。
[0043] 图7是软件技术方案流程图。
[0044] 图8是基带处理状态机图。
[0045] 图9是定位处理流程图。
【具体实施方式】:
[0046] 下面结合附图和实施实例对本发明进一步说明。本发明包括硬件技术方案和软件 技术方案两部分。
[0047] 硬件技术方案如图1所示,北斗二代和GPS公用频点实时信号通过同一天线进入 射频前端(RF)模块,经过一系列放大、滤波和下变频处理,并通过A/D转换为2bit的中频 数字信号。中频数字信号在FPGA的控制下,被采集到FPGA的内部FIFO中,以乒乓方式存 储成一定长度的数据块。最后通过USB控制器,按块传输到计算机上。该硬件方案主要包 括以下几部分:
[0048] 如图2所示,一个Max2741为主芯片的北斗二代和GPS公用频点第一RF射频前端 模块,该模块使用的中频采样频率为13MHz。Max2741的两位中频数字信号线、中频采样时 钟线以及三根SPI编程接口控制线都分别引出,并连接到FPGA的可编程I/O口上。
[0049] 如图3所示,一个GRM7520为主芯片的北斗二代和GPS公用频点第二RF射频前端 模块,该模块使用的中频采样频率为16. 368MHz。GRM7520的两位中频数字信号线和中频采 样时钟线分别引出,并连接到FPGA的可编程I/O口上。
[0050] 如图4所示,一个GP2015为主芯片的北斗二代和GPS公用频点第三RF射频前端 模块,该模块使用的采样频率为5. 714MHz。GP2015的两位中频数字信号线、两根差分时钟 输出线和一个中频采样时钟输入线分别引出,并连接到FPGA的可编程I/O口上。
[0051] 如图5所示,一个CY7C68013A作为USB控制器,CY7C68013A内部FIFO配置为 512x4缓冲,FIFO的8位数据线和写控制线与FPGA相连。以SlaveFIFO方式从FPGA获得 数据,并以块传输方式向计算机传输数据,每次数据传输为一个数据块的数据。
[0052] 如图6所示,一个Spartan3XC3S400的FPGA芯片,上面连接了三个RF射频前端 的中频数据线、中频采样时钟线、控制线、CY7C68013A的读写控制线、接口时钟线和数据线。 FPGA根据与其相连的CY7C68013A的PA1和PA7的电平状态,来选择读取三个射频模块。 PA11PA7 = 00 时,选择GRM7520 模块;PA11PA7 = 01 时,选择GP2015 模块;PA11PA7 = 10 时,选择Max2741模块。
[0053]Spartan3XC3S400内部的块存储空间(blockMemory)配置为2块FIFO,分别为 A和B,每块FIFO的大小为16384x8bit。
[0054]Spartan3XC3S400将读取到的2bit中频数据按时间先后由低位到高位合并为 lByte数据,即最先读取到的2bit数据放置在lByte数据的最低2位,这一过程通过一个 8bit移位寄存器实现。
[0055] 合并后的lByte数据存储到FPGA内部的FIFO中,形成数据块。如果读取的是 GRM7520模块的数据,则一个数据块包含4ms的数据,长度为16368Byte;如果读取的是 Max2741模块的数据,则一个数据块包含4ms的数据,长度为13000Byte;如果读取的是 GP2015模块的数据,则一个数据块包含8ms的数据,长度为11428Byte。
[0056]FPGA内部2个FIFOA和B的操作使用乒乓方式。FIFOA记录中频数据的同时, FIFOB的数据传输给CY7C68013A。FIFOA记录满一个数据块的数据后,切换为FIFOB进 行数据记录,而FIFOA的数据传输给CY7C68013A,之后轮流切换。如果FIFOA数据记录满 了,而此时FIFOB的数据还没传输完毕,则FIFOA中的数据整块丢弃,由于整块数据是CA 码周期的整数倍,因此不会引起CA码相位的变化。
[0057] 软件技术方案如图7所示,软件通过USB接口成块的读取中频采样数据,将中频数 据以毫秒为单位,与用查找表方式得到的本地载波和CA码进行相关累积,使用相关累积的 结果进行捕获、跟踪处理,使用跟踪结果进行北斗二代和GPS公用频点信号解码、定位计算 和定位结果修正,并且每秒钟更新一次定位输出。软件执行的具体步骤如下:
[0058] 步骤一:软件初始化。读取配置文件,根据配置文件初始化12通道对应的PRN值, 其中通道10~12固定为北斗二代通道,而通道1~9固定为GPS通道;读取本地载波查找 表文件和CA码查找表文件。
[0059] 步骤二:启动对应三个RF射频前端模块的三个线程,分别为数据读取和基带处理 线程、定位处理线程、数据显示线程。
[0060] 数据读取和基带处理线程设置为最高优先级,循环执行读取中频数据块和进行基 带处理这一过程。该线程在每一秒钟时间到来后触发一次定位处理事件。
[0061] 定位处理线程设置为次高优先级,循环执行等待定位处理事件和进行定位处理。 每次定位解算事件到来时,进行定位处理。定位处理根据各通道跟踪结果完成北斗二代信 号解码、北斗二代信息提取、GPS信息提取、伪距计算、位置解算和位置修正,并触发一次显 示事件。
[0062] 数据显示线程设置为最低优先级,循环执行等待显示事件和显示有用信息。每次 显示事件到来后更新一次显示数据。
[0063] 步骤三:判断软件是否退出,如果退出则停止所有线程,并释放软件占用的存储空 间。
[0064] 在软件方案中所述的快速捕获处理算法具体实现如下:
[0065] 步骤一:按每2bit转换为1字节的方法,将数据块的每个字节分解为4个中频数 据。
[0066] 步骤二:对中频数据进行再采样,使每毫秒的数据长度由N变为L,L为小于η的2 的幂次方长度,采样率为N/L,由于采样后的数据长度为2的幂次方,大大减少了FFT的处理 时间。
[0067] 步骤三:在频率域使用圆卷积方法进行相关计算,并将4毫秒的数据块进行非相 干叠加,提高信噪比。其实现函数为:
[0068]
[0069] 式中R[m]表不相关输出结果,Si[η]表不输入中频信号,CA[n]表不本地产生的C/A码,f表示本地产生的载波频率。
[0070] 步骤四:将R[m]中的最大值与R[m]的平均值进行
当前第2页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1