一種用于飛行器下傳數據處理的高速數據采集存儲系
0 引言
隨著(zhù)遙感技術(shù)的發(fā)展,遙感圖像的分辨率也越來(lái)越高。飛行器上搭載的遙感成像設備也從過(guò)去的低分辨率向現在的高分辨率在轉變。遙感成像設備分辨率提高的同時(shí),也對飛行器的數據下傳鏈路提出了更高的帶寬要求。而相應的地面數據接受設備,也需要具備對高速實(shí)時(shí)數據的存儲和處理能力。同樣在測試設備方面,為了對大容量存儲設備進(jìn)行高速數據的傳輸測試,相應的地面檢測設備也應該具備高速數據的輸出功能。因此,急需開(kāi)發(fā)出具備高速實(shí)時(shí)數據接收和高速數據輸出功能的高速數據采集存儲系統。
從目前此類(lèi)系統的技術(shù)指標來(lái)看,往往只能達到100Mbps到150Mbps的數據接收和數據輸出功能。而根據目前的應用需求來(lái)看,高速數據流的數據傳輸速率往往在200Mbps以上甚至達到300Mbps。對于這種高速數據流,目前的系統就難以連續無(wú)錯的進(jìn)行存儲和處理,往往會(huì )因為數據傳輸速率超過(guò)系統能處理的極限,導致出現丟失數據或者系統功能不正常,狀態(tài)不穩定等問(wèn)題。
本文中介紹的高速數據采集存儲系統的設計目標就是對傳輸速率最高為300Mbps的數據流進(jìn)行無(wú)錯接收存儲,并能實(shí)現最高為300Mbps的高速數據流輸出,以便于對大容量存儲設備進(jìn)行檢測。
1 系統總體介紹
高速數據采集存儲系統是在32位的計算機系統上實(shí)現的,數據傳輸也是利用32位,33MHz的PCI總線(xiàn)來(lái)完成。數據存儲是利用兩塊SATA接口的硬盤(pán)組成的RAID0磁盤(pán)陣列來(lái)實(shí)現的。整個(gè)系統的核心是數據傳輸接口卡,它完成外部數據到計算機內存的傳輸。然后運行的驅動(dòng)程序再將內存中的數據存儲到硬盤(pán)上。因此,整個(gè)系統的設計也就分為數據傳輸接口卡的設計和驅動(dòng)及應用程序設計兩大部分。
2 數據傳輸接口卡設計
數據傳輸接口卡從功能上分為PCI總線(xiàn)接口,存儲緩沖區,中斷模塊,傳輸控制模塊,緩沖區控制以及DMA控制六個(gè)模塊,如圖2-1中所示。當工作于數據輸入時(shí),傳輸控制模塊根據緩沖區情況啟動(dòng)傳輸,傳輸過(guò)程中緩沖區控制模塊將數據讀出送到PCI總線(xiàn)上,DMA控制模塊控制著(zhù)PCI總線(xiàn)上數據傳輸的進(jìn)行。傳輸結束以后,中斷模塊發(fā)出中斷信號提示驅動(dòng)程序對傳輸到內存中的數據進(jìn)行處理。下面主要介紹PCI總線(xiàn)接口模塊,DMA控制模塊,存儲緩沖區模塊以及傳輸控制模塊幾個(gè)核心模塊的設計。
2.1 PCI總線(xiàn)接口模塊的設計
PCI總線(xiàn)接口模塊完成的工作主要是PCI總線(xiàn)命令的解碼,地址以及數據的鎖存。實(shí)現PCI接口常用的方法是采用現成的PCI總線(xiàn)接口協(xié)議芯片(PLX905X系列等),如文獻[2]中數據采集板的設計就是采用的這種方法。但是由于這些協(xié)議芯片往往不是針對空間應用而專(zhuān)門(mén)開(kāi)發(fā)的,從可靠性方面考慮,不能采用這種設計方案。在本方案中,整個(gè)接口的設計是在使用Xilinx公司提供的LogiCORE PCI v3.0的IP核(IP Core)的基礎上實(shí)現的。LogiCORE PCI v3.0是Xilinx公司提供的用于PCI總線(xiàn)接口設計的IP 核,在它的基礎上可以根據實(shí)際應用的需要很方便的定制和實(shí)現PCI總線(xiàn)接口。由于IP 核本身實(shí)現了配置空間以及總線(xiàn)命令的解碼和地址的鎖存,所以設計者只需要專(zhuān)注于PCI傳輸狀態(tài)機和本地控制信號的設計。采用這種實(shí)現方式雖然比直接使用PCI接口專(zhuān)用芯片更為復雜,但是整個(gè)設計可以集成于一片高可靠性的FPGA之中,從而有效的提高了整個(gè)設計的可靠性。
2.2 DMA控制模塊的設計
為了滿(mǎn)足高速率數據傳輸的需要,并且在數據傳輸的同時(shí)不占用CPU,所以必須采用DMA的方式來(lái)傳輸數據。由于PCI總線(xiàn)上的DMA傳輸是通過(guò)PCI設備本身的DMA控制功能來(lái)完成的,而不是依靠總線(xiàn)上單獨的DMA控制設備來(lái)實(shí)現,所以在設計時(shí)必須實(shí)現DMA控制模塊。DMA控制模塊在數據傳輸周期發(fā)出控制命令以及更新地址。其中傳輸地址控制可以依賴(lài)一組傳輸地址寄存器來(lái)實(shí)現,而傳輸的控制可以通過(guò)PCI傳輸狀態(tài)機給出的信號來(lái)產(chǎn)生控制信號。
2.3 存儲緩沖區模塊的設計
為了保證數據的連續不間斷傳輸,每次傳輸只傳輸半個(gè)緩沖區的數據,而外部數據總是在兩個(gè)半區之間切換儲存,因此不會(huì )造成數據的丟失和不連續。
評論