基于DSP的GPS定位解算算法研究与实现

时间:2012-03-14来源:网络

以下简要说明DSP的工作流程:
(1)DSP系统初始化,等待外部中断;
(2)中断到来,由外部中断4得到时间观测量,由外部中断5得到导航电文;
(3)对时间观测量和导航电文进行拼接组合,由时间观测量得到伪距信息,由导航电文计算卫星发射时刻的位置,其中包括观测卫星在WGS-84坐标系下的三维位置、仰角和方位角等;
(4)根据观测卫星的星历对伪距进行修正,并进行电离层和对流层校正等;
(5)根据定位原理,计算出用户的三维位置,校正本地时间,并将三维位置转换成所需要的坐标格式;
(6)通过McBSP串口输出定位结果,并对输出结果进行记录。
2.1 中断
中断是DSP系统的基本功能。一般而言,中断表明一个特别事件的开始或结束。一个DSP系统需要与多个事件打交道,这些事件可能是内部的,也可能是外部的,而这些事件发生的时间是不确定的,也就是这些事件可能是异步的。异步事件的发生具有时间上的不确定性,一旦异步事件发生,就要求DSP能够随之做出相应的反应和处理。中断就可以提供这样的一种机制,一旦异步事件发生,DP立即暂停CPU当前的处理任务,按预先的安排对该事件进行处理,处理完毕后,CPU再继续原来的任务。中断可以由外部设备产生,也可以由DSP内部产生。由硬件或软件驱动的中断信号可使DSP中止当前程序并执行另一个程序,该程序称为中断服务程序。
TMS320C6713的中断处理过程分为三个阶段:
(1)中断请求。当有中断请求时,DSP将IFR寄存器的相应位置1。
(2)中断确认。对于软件中断和不可屏蔽中断,CPU是立即响应的;对于可屏蔽中断,要满足下列条件才能响应:CSR寄存器的GIE位为0,IER寄存器的NMIE位为1,IER寄存器的相应位为1,优先级最高。
(3)中断处理。保护特定的寄存器,执行中断服务程序,完成后恢复寄存器。
如图2所示,在该系统的设计中,使用了外部中断4和外部中断5。每当DSP接收到中断请求,立即暂停CPU当前的处理任务,进入中断服务程序,处理完毕后,CPU再继续原来的任务。由外部中断4得到时间观测量,由外部中断5得到导航电文。DSP提供的中断是以中断向量表的形式出现的,该系统的部分中断向量表如下:
g.jpg
2.2 EMIF接口
EMIF是外部存储器与TMS320C6713片内单元间的接口。CPU访问片外存储器时一般通过EMIF接口,DSP的EMIF具有很强的接口能力。TMS320~C6713的EMIF接口有20根地址总线,32位数据总线,4个片选信号和多种控制信号,能够支持多种不同类型的外部存储器件。其中,每个片选空间是相对独立的,各自占用一段地址,能够适应不同速率的存储器件。
如图2所示,图中ED[31:0]表示数据总线,EA[21:2]表示地址总线,CE[3:0]为片选信号,AOE为输出使能信号,ARE为读使能信号,AWE为写使能信号。通过控制信号、数据总线和地址总线的配合使用,就可以完成DSP与外部存储器件的数据交换。
图3所示为TMS320C6713EMIF接口的读时序。图中读的建立需要两个时钟周期,之后每个触发需要两个时钟周期,在AlRE的下降沿,FPGA将时间观测量和导航电文放在数据总线上,在ARE的上升沿,也就是数据保持的中间时刻,DSP读取数据,这样就完成了FPGA与DSP的数据交换。

h.jpg


在该系统的设计中,时间观测量的帧格式如图4所示,导航电文的帧格式如图5所示,DSP由EMIF接口接收到时间观测量和导航电文之后,首先进行数据的拼接组合,由时间观测量得到伪距,由导航电文计算出卫星发射时刻的位置。

1 2 3 4

关键词: 算法 研究 实现 解算 定位 DSP GPS 基于

加入微信
获取电子行业最新资讯
搜索微信公众号:EEPW

或用微信扫描左侧二维码

相关文章

查看电脑版