GNSS中基于NandFlash总线实现基带信号通信的系统及方法
技术领域
本发明涉及全球导航卫星系统领域,尤其涉及全球导航卫星系统接收机中数据传输领域,具体是指一种全球导航卫星系统中基于NandFlash总线实现基带信号通信的系统及方法。
背景技术
在GNSS(Global Navigation Satellite System,全球卫星导航接收系统)中,由于接收机的多模多频点跟踪卫星,目前北斗卫星导航系统(特指北斗二代卫星导航系统)、GPS(GlobalNavigation Satellite System,全球定位系统)、GLONASS(格洛纳斯,俄语中全球导航卫星系统的缩写)和Galileo(伽利略,欧洲卫星导航系统)总计有十几个频点,跟踪通道会达到几百,与基带信号通信的数据量会有几K到10K左右。如图3~4所示,为采用现有技术中VLIO总线进行基带信号通信的时序图,如图5~6所示为采用现有技术中SRAM(Static RandomAccess Memory,静态随机存取存储器)总线进行基带信号通信的时序图。传统RAM(Random-Access Memory,随机存取存储器)总线或VLIO(Variable Latency I/O,变量延迟I/O)总线时序长,总线速度慢,需要大量的时钟产生地址、控制、读写等信号,每读取一次需要产生一次相同的时序,效率低,时间长,重复间隔时间长,读写时间将超过卫星跟踪所需的实时处理时间。
发明内容
本发明的目的是克服了上述现有技术的缺点,提供了一种能够实现解决采用传统总线读写基带数据传输速度慢的问题、大大减少基带信号的通信时间、节省CPU处理时间、具有更广泛应用范围的全球导航卫星系统中基于NandFlash总线实现基带信号通信的系统及方法。
为了实现上述目的,本发明的全球导航卫星系统中基于NandFlash总线实现基带信号通信的系统及方法具有如下构成:
该全球导航卫星系统中基于NandFlash总线实现基带信号通信的系统,其主要特点是,所述的系统包括ARM处理器、NandFlash总线和基带电路,所述的ARM处理器通过所述的NandFlash总线与所述的基带电路进行基带数据通信。
较佳地,所述的ARM处理器包括CPU、直接存储器访问控制器和NandFlash总线控制器,所述的CPU通过所述的直接存储器访问控制器、NandFlash总线控制器与所述的NandFlash总线相连接。
较佳地,所述的基带电路包括NandFlash接口控制器和基带数据处理单元,所述的基带数据处理单元通过所述的NandFlash接口控制器与所述的NandFlash总线相连接。
本发明还涉及一种全球导航卫星系统中基于NandFlash总线进行基带信号通信的方法,其特征在于,所述的方法包括以下步骤:
(1)所述的ARM处理器接收到所述的基带电路发起的卫星跟踪数据处理中断信号;
(2)所述的ARM处理器通过所述的NandFlash总线从所述的基带电路读取基带数据;
(3)所述的ARM处理器根据接收到的基带数据进行卫星跟踪及解算;
(4)所述的ARM处理器通过所述的NandFlash总线将基带数据发送至所述的基带电路。
较佳地,所述的ARM处理器包括CPU、直接存储器访问控制器和NandFlash总线控制器,所述的ARM处理器通过所述的NandFlash总线从所述的基带电路读取基带数据,具体为:
所述的ARM处理器的CPU在所述的NandFlash总线控制器的控制下,通过所述的NandFlash总线以直接存储器访问的方式从所述的基带电路读取基带数据。
更佳地,所述的ARM处理器通过所述的NandFlash总线将基带数据发送至所述的基带电路,具体为:
所述的ARM处理器的CPU在所述的NandFlash总线控制器的控制下,通过所述的NandFlash总线以直接存储器访问的方式将基带数据发送至所述的基带电路。
较佳地,所述的步骤(1)和(2)之间,还包括以下步骤:
(11)所述的ARM处理器从所述的基带电路中读取数据状态信息。
更佳地,所述的ARM处理器从所述的基带电路中读取数据状态信息,具体为:
所述的ARM处理器通过RAM总线或VLIO总线从所述的基带电路中读取数据状态信息。
采用了该发明中的基于NandFlash总线实现基带信号通信的系统及方法,具有如下有益效果:
选取NandFlash总线替代传统的总线实现基带信号通信,提高数据读取速度。同时采用DMA控制器实现NandFlash总线数据到内存之间的数据传输,DMA控制器可实现数据后台直接传输,不占用CPU处理时间,为CPU节省下大量的时间进行导航解算,不仅限于应用在GPS卫星导航跟踪领域,也可以应用于其它导航领域或者其它可以应用该方法的领域,适用于大规模推广应用。
附图说明
图1为本发明的GNSS中基于NandFlash总线实现基带信号通信的系统的结构示意图。
图2为本发明的GNSS中基于NandFlash总线实现基带信号通信的方法的流程图。
图3为现有技术中采用VLIO总线进行基带信号接收通信的时序图。
图4为现有技术中采用VLIO总线进行基带信号发送通信的时序图。
图5为现有技术中采用SRAM总线进行基带信号接收通信的时序图。
图6为现有技术中采用SRAM总线进行基带信号发送通信的时序图。
图7为本发明中采用NandFlash总线进行基带信号接收通信的时序图。
图8为本发明中采用NandFlash总线进行基带信号发送通信的时序图。
具体实施方式
为了能够更清楚地描述本发明的技术内容,下面结合具体实施例来进行进一步的描述。
为了克服上述现有技术的缺点,本发明研究了目前ARM(Advanced Risc Machellones)处理器的常用总线时序,针对复杂性和通信速度进行了评估,选取NandFlash总线(NandFlash内存是Flash内存的一种,为一种容量较大、改写速度快的非易失闪存)替代传统的RAM及VLIO总线实现基带信号的通信,并采用DMA(Direct Memory Access,直接存储器访问)控制器实现NandFlash数据到内存的传输,不占用CPU内核时间,NandFlash总线的特点在于同步读写数据,同步读写速度快,基带电路模拟NandFlash总线传输数据。
如图1所示为本发明的基于NandFlash总线实现基带信号通信的系统的结构示意图。
所述的系统包括ARM处理器、NandFlash总线和基带电路,所述的ARM处理器通过所述的NandFlash总线与所述的基带电路进行基带数据通信。
所述的ARM处理器包括CPU、直接存储器访问控制器和NandFlash总线控制器,所述的CPU通过所述的直接存储器访问控制器、NandFlash总线控制器与所述的NandFlash总线相连接。
所述的基带电路包括NandFlash接口控制器和基带数据处理单元,所述的基带数据处理单元通过所述的NandFlash接口控制器与所述的NandFlash总线相连接。
如图2所示为本发明的基于NandFlash总线实现基带信号通信的方法的流程图。
(1)所述的ARM处理器接收到所述的基带电路发起的卫星跟踪数据处理中断信号;
(11)所述的ARM处理器通过RAM总线或VLIO总线从所述的基带电路中读取数据状态信息。ARM处理器先通过传统总线读取少量状态信息。
(2)所述的ARM处理器的CPU在所述的NandFlash总线控制器的控制下,通过所述的NandFlash总线以直接存储器访问的方式从所述的基带电路读取基带数据。即启动NandFlash总线发出批量数据读取命令,启动DMA进行数据传输。退出中断进行其它处理。
(21)所述的直接存储器访问控制器发起数据传输中断;
(3)所述的ARM处理器根据接收到的基带数据进行卫星跟踪及解算。
(4)所述的ARM处理器的CPU在所述的NandFlash总线控制器的控制下,通过所述的NandFlash总线以直接存储器访问的方式将基带数据发送至所述的基带电路。即启动NandFlash控制器及DMA控制器将基带写数据块写入基带,退出中断进行其它处理。
如图7~8所示为采用NandFlash总线进行基带信号通信的时序图。
采用NandFlash总线时序的时序方案仅在开始部分产生地址和控制信号,随后的数据采用同步传输,每读写时钟传输一组数据,可以极大提高数据通信速度。缺点就是每次必须要读取一块数据,目前常见的NandFlash块大小为512字节和2048字节。针对GNSS卫星基带信号处理每次都要读取大量连续数据情况下,这些缺点不会对系统产生影响。同时与NandFlash总线配合采用DMA数据传输,DMA数据传输不占用CPU内核时间。
采用了该发明中的基于NandFlash总线实现基带信号通信的系统及方法,具有如下有益效果:
选取NandFlash总线替代传统的总线实现基带信号通信,提高数据读取速度。同时采用DMA控制器实现NandFlash总线数据到内存之间的数据传输,DMA控制器可实现数据后台直接传输,不占用CPU处理时间,为CPU节省下大量的时间进行导航解算,不仅限于应用在GPS卫星导航跟踪领域,也可以应用于其它导航领域或者其它可以应用该方法的领域,适用于大规模推广应用。
在此说明书中,本发明已参照其特定的实施例作了描述。但是,很显然仍可以作出各种修改和变换而不背离本发明的精神和范围。因此,说明书和附图应被认为是说明性的而非限制性的。