本发明属于导航采集解算,涉及一种导航采集解算硬件系统及方法,尤其是一种基于dsp+fpga+arm的导航采集解算硬件系统及方法。
背景技术:
1、导航采集解算系统中往往涉及大量的矩阵运算和浮点运算,因此其硬件平台需要满足浮点运算能力强,实时性好,稳定度高等特点。如今工程上广泛应用的导航采集解算硬件方案主要分为以下两类:
2、(1)单处理器架构。该架构以单一的处理器为核心,使用其自带的通用外设接口进行数据交互,实现导航解算和外部通信等功能。这种结构通常使用arm、powerpc等通用处理器,具有体积小、成本低、易于实现等特点。但由于受到单核的限制,其数据运算能力较低,主要应用于对精度和实时性要求不高的导航解算领域。
3、(2)多处理器架构。这种架构是由两个或两个以上的处理器协同工作,共同完成导航采集解算的各项任务。多个处理器灵活搭配,将复杂的导航解算、内部控制和外部通信等任务进行分割执行,提高了整个导航采集解算系统的运算和通信效率。该架构涉及多核间的通信和相互控制,从而增加了硬件平台的复杂程度和成本,适用于多功能、实时性和精确度要求较高的导航解算领域。
4、传统的多处理器架构硬件平台多以dsp为核心、以fpga为辅助器件构建,计算性能一般能够得到保证,但在内部控制、外部接口设计等方面存在不足。
5、经检索,未发现与本发明相同或相近似的现有技术的文献。
技术实现思路
1、本发明的目的在于克服现有技术的不足,提出一种基于dsp+fpga+arm的导航采集解算硬件系统及方法,不仅满足导航采集解算实时性强,运算精度高的要求,还能实现小型化、集成化的设计,大大降低功耗,提升可靠性。
2、本发明解决其现实问题是采取以下技术方案实现的:
3、一种基于dsp+fpga+arm的导航采集解算硬件系统,包括:数据采集模块和导航解算模块;所述数据采集模块用于数据采集和外部通信,包括arm芯片、调试电路、复位电路和外部接口电路;所述导航解算模块用于数据处理,包括dsp芯片、fpga芯片、存储电路、调试电路和复位电路;该dsp芯片作为数据主处理器单元,fpga芯片用于辅助数据处理。
4、而且,所述arm芯片通过并行epi总线与导航解算模块中的fpga单元直接连接,将外部导航信息打包分发,实现数据采集模块和导航解算模块的信息交互;
5、而且,所述导航解算模块中的dsp芯片和fpga芯片,二者通过并行emifa总线直接连接,将dsp芯片解算得到的施矩量和其他控制量实时传递到fpga芯片,再由fpga芯片将施矩量和其他控制量传递给arm芯片,再由arm芯片传递至外部模块,从而达到对外部模块的控制作用;同时,dsp芯片外扩两路异步串口,能够与上位机进行数据交互;并通过在fpga芯片内部设计两块双口ram,用于实现导航解算模块中的dsp芯片与数据采集模块中的arm芯片之间的数据传输。
6、而且,所述数据采集模块的外部接口电路用于数据采集和外部通信,通过对arm芯片进行逻辑编程,并结合外部接口芯片组成;该外部接口电路包括若干路can总线、rs232串口、rs422/485串口、gpio接口、adc/dac接口和pwm接口。
7、而且,所述导航解算模块中的存储电路用于数据和程序存储,由导航解算模块通过总线外扩形成;该存储电路包括通过spi总线配置的32mb nor flash、通过emif总线配置的128mb nand flash和通过ddr2总线配置的128mb sdram。
8、而且,所述数据采集模块和导航解算模块中的调试电路用于程序开发调试,包括arm程序烧写jtag端口、arm调试端口;fpga程序烧写jtag端口、fpga调试端口;dsp程序烧写jtag端口、dsp调试端口。
9、而且,所述dsp芯片、fpga芯片和arm芯片三种处理器,均有io口连接到发光二极管,该发光二极管均可作为调试节点用来验证程序的各项功能。
10、而且,所述数据采集模块和导航解算模块中的复位电路是利用fpga芯片的io端口产生总复位信号,延迟后同步发送给dsp芯片与arm芯片,实现两者的复位。
11、一种基于dsp+fpga+arm的导航采集解算方法,包括以下步骤:
12、步骤1、arm上电复位后,首先对gpio、定时器、epi总线、adc/dac、pwm、uart、can总线进行初始化,利用形成的外部接口电路对外部信息进行数据采集,采集完成后发送标志位,通过epi总线向导航解算模块的fpga单元发送外部采集数据,为后续实时解算做准备;
13、步骤2、dsp上电复位后,首先对gpio、定时器、emif总线、uart进行初始化,在gpio中断服务程序中,设置解算标志位,在主程序中判断该标志位,若符合,则通过emifa总线接收数据,开始解算过程,并将解算结果发送到上位机实时显示。
14、本发明的优点和有益效果:
15、1、本发明针对传统导航采集解算平台的缺点,引入在内部控制、外部接口设计等方面具有更出色能力的arm处理器,提出了一种基于dsp+fpga+arm的导航采集解算硬件系统,将数据采集和导航解算独立开来。其中,数据采集部分以arm为核心,其具备丰富的外设接口和存储资源。导航解算部分以dsp为核心,可以充分利用dsp强大的计算能力来完成高强度、高精度的实时数据处理;fpga用来辅助dsp进行数据处理,凭借其灵活的逻辑设计能力和出色的并行处理能力,增强了硬件平台控制和计算的灵活性。
16、2、本发明采用dsp+fpga+arm的三核架构,将数据采集和导航解算独立开来,避免计算核心dsp的频繁中断,提高了计算效率。其中,数据采集部分以arm为核心,其具备丰富的外设接口和存储资源。导航解算部分以dsp为核心,可以充分利用dsp强大的计算能力来完成高强度、高精度的实时数据处理。fpga用来辅助dsp进行数据处理,凭借其灵活的逻辑设计能力和出色的并行处理能力,增强了平台控制和计算的灵活性。
17、3、本发明的数据采集模块的核心arm和导航解算模块的核心dsp之间通过并行总线的通信方式,利用fpga内部的双口ram做为载体,实现高速数据通信,这样可以大大减少dsp的资源消耗,让dsp更专注于导航解算的数据处理和计算过程。
1.一种基于dsp+fpga+arm的导航采集解算硬件系统,其特征在于:包括:数据采集模块和导航解算模块;所述数据采集模块用于数据采集和外部通信,包括arm芯片、调试电路、复位电路和外部接口电路;所述导航解算模块用于数据处理,包括dsp芯片、fpga芯片、存储电路、调试电路和复位电路;该dsp芯片作为数据主处理器单元,fpga芯片用于辅助数据处理。
2.根据权利要求1所述的一种基于dsp+fpga+arm的导航采集解算硬件系统,其特征在于:所述arm芯片通过并行epi总线与导航解算模块中的fpga单元直接连接,将外部导航信息打包分发,实现数据采集模块和导航解算模块的信息交互。
3.根据权利要求1所述的一种基于dsp+fpga+arm的导航采集解算硬件系统,其特征在于:所述导航解算模块中的dsp芯片和fpga芯片,二者通过并行emifa总线直接连接,将dsp芯片解算得到的施矩量和其他控制量实时传递到fpga芯片,再由fpga芯片将施矩量和其他控制量传递给arm芯片,再由arm芯片传递至外部模块,从而达到对外部模块的控制作用;同时,dsp芯片外扩两路异步串口,能够与上位机进行数据交互;并通过在fpga芯片内部设计两块双口ram,用于实现导航解算模块中的dsp芯片与数据采集模块中的arm芯片之间的数据传输。
4.根据权利要求1所述的一种基于dsp+fpga+arm的导航采集解算硬件系统,其特征在于:所述数据采集模块的外部接口电路用于数据采集和外部通信,通过对arm芯片进行逻辑编程,并结合外部接口芯片组成;该外部接口电路包括若干路can总线、rs232串口、rs422/485串口、gpio接口、adc/dac接口和pwm接口。
5.根据权利要求1所述的一种基于dsp+fpga+arm的导航采集解算硬件系统,其特征在于:所述导航解算模块中的存储电路用于数据和程序存储,由导航解算模块通过总线外扩形成;该存储电路包括通过spi总线配置的32mb nor flash、通过emif总线配置的128mbnand flash和通过ddr2总线配置的128mb sdram。
6.根据权利要求1所述的一种基于dsp+fpga+arm的导航采集解算硬件系统,其特征在于:所述数据采集模块和导航解算模块中的调试电路用于程序开发调试,包括arm程序烧写jtag端口、arm调试端口;fpga程序烧写jtag端口、fpga调试端口;dsp程序烧写jtag端口、dsp调试端口。
7.根据权利要求1所述的一种基于dsp+fpga+arm的导航采集解算硬件系统,其特征在于:所述dsp芯片、fpga芯片和arm芯片三种处理器,均有io口连接到发光二极管,该发光二极管均可作为调试节点用来验证程序的各项功能。
8.根据权利要求1所述的一种基于dsp+fpga+arm的导航采集解算硬件系统,其特征在于:所述数据采集模块和导航解算模块中的复位电路是利用fpga芯片的io端口产生总复位信号,延迟后同步发送给dsp芯片与arm芯片,实现两者的复位。
9.一种基于dsp+fpga+arm的导航采集解算方法,其特征在于:包括以下步骤: