传感器技术网移动版

主页 > 技术方案 > 环境传感

一种用于飞行器下高速数据采集存储系统设计

0 引言
随着遥感技术的发展,遥感图像的分辨率也越来越高。上搭载的遥感成像设备也从过去的低分辨率向现在的高分辨率在转变。遥感成像设备分辨率提高的同时,也对的数据下传链路提出了更高的带宽要求。而相应的地面数据接受设备,也需要具备对高速实时数据的存储和处理能力。同样在测试设备方面,为了对大容量存储设备进行高速数据的传输测试,相应的地面检测设备也应该具备高速数据的输出功能。因此,急需开发出具备高速实时数据接收和高速数据输出功能的系统。
从目前此类系统的技术指标来看,往往只能达到100Mbps到150Mbps的数据接收和数据输出功能。而根据目前的应用需求来看,高速数据流的数据传输速率往往在200Mbps以上甚至达到300Mbps。对于这种高速数据流,目前的系统就难以连续无错的进行存储和处理,往往会因为数据传输速率超过系统能处理的极限,导致出现丢失数据或者系统功能不正常,状态不稳定等问题。
本文中介绍的系统的设计目标就是对传输速率最高为300Mbps的数据流进行无错接收存储,并能实现最高为300Mbps的高速数据流输出,以便于对大容量存储设备进行检测。
1 系统总体介绍
系统是在32位的计算机系统上实现的,数据传输也是利用32位,33MHz的PCI总线来完成。数据存储是利用两块SATA接口的硬盘组成的RAID0磁盘阵列来实现的。整个系统的核心是数据传输接口卡,它完成外部数据到计算机内存的传输。然后运行的驱动程序再将内存中的数据存储到硬盘上。因此,整个系统的设计也就分为数据传输接口卡的设计和驱动及应用程序设计两大部分。
2 数据传输接口卡设计
数据传输接口卡从功能上分为PCI总线接口,存储缓冲区,中断模块,传输控制模块,缓冲区控制以及DMA控制六个模块,如图2-1中所示。当工作于数据输入时,传输控制模块根据缓冲区情况启动传输,传输过程中缓冲区控制模块将数据读出送到PCI总线上,DMA控制模块控制着PCI总线上数据传输的进行。传输结束以后,中断模块发出中断信号提示驱动程序对传输到内存中的数据进行处理。下面主要介绍PCI总线接口模块,DMA控制模块,存储缓冲区模块以及传输控制模块几个核心模块的设计。
500)this.style.width=500;" border=0>

2.1 PCI总线接口模块的设计
PCI总线接口模块完成的工作主要是PCI总线命令的解码,地址以及数据的锁存。实现PCI接口常用的方法是采用现成的PCI总线接口协议芯片(PLX905X系列等),如文献[2]中数据采集板的设计就是采用的这种方法。但是由于这些协议芯片往往不是针对空间应用而专门开发的,从可靠性方面考虑,不能采用这种设计方案。在本方案中,整个接口的设计是在使用Xilinx公司提供的LogiCORE PCI v3.0的IP核(IP Core)的基础上实现的。LogiCORE PCI v3.0是Xilinx公司提供的用于PCI总线接口设计的IP 核,在它的基础上可以根据实际应用的需要很方便的定制和实现PCI总线接口。由于IP 核本身实现了配置空间以及总线命令的解码和地址的锁存,所以设计者只需要专注于PCI传输状态机和本地控制信号的设计。采用这种实现方式虽然比直接使用PCI接口专用芯片更为复杂,但是整个设计可以集成于一片高可靠性的FPGA之中,从而有效的提高了整个设计的可靠性。
2.2 DMA控制模块的设计
为了满足高速率数据传输的需要,并且在数据传输的同时不占用CPU,所以必须采用DMA的方式来传输数据。由于PCI总线上的DMA传输是通过PCI设备本身的DMA控制功能来完成的,而不是依靠总线上单独的DMA控制设备来实现,所以在设计时必须实现DMA控制模块。DMA控制模块在数据传输周期发出控制命令以及更新地址。其中传输地址控制可以依赖一组传输地址寄存器来实现,而传输的控制可以通过PCI传输状态机给出的信号来产生控制信号。
2.3 存储缓冲区模块的设计
为了保证数据的连续不间断传输,每次传输只传输半个缓冲区的数据,而外部数据总是在两个半区之间切换储存,因此不会造成数据的丢失和不连续。 (责任编辑:admin)