數據采集與存儲系統是信號與信息處理系統的重要組成部分。隨著(zhù)雷達對抗技術(shù)和軟件無(wú)線(xiàn)電技術(shù)的發(fā)展,很多應用都需要對數據進(jìn)行高速采集和大容量實(shí)時(shí)存儲,而目前市場(chǎng)上同時(shí)具備上述兩種功能的采集系統還不多見(jiàn),為此,本文提出了一種基于PCI Express總線(xiàn)接口的、具備可擴展性能、并可大容量存儲數據的采集系統。該系統的最高采樣速率可達80 MHz,利用計算機并通過(guò)PCI Express總線(xiàn)和采集卡、Raid磁盤(pán)陣列相連后,便可通過(guò)主機軟件界面實(shí)現對硬件設備的控制。 1 系統結構 方案總體上分為三個(gè)部分:高速信號采集卡、主機、Raid磁盤(pán)陣列,他們之間可通過(guò)PCIExpress總線(xiàn)連接。其系統結構如圖1所示。 本系統的高速信號采集卡主要由信號調制電路、數據采集模塊、采集時(shí)鐘控制模塊、數據緩存和邏輯控制模塊、PCI Express總線(xiàn)接口控制等部分組成。其中邏輯控制模塊負責接收來(lái)自PCIExpress接口的主機控制信息以及采樣時(shí)鐘頻率的控制信號,并向系統的其它部分發(fā)送相關(guān)的控制命令。在進(jìn)行數據采集時(shí),A/D轉換芯片的輸出在經(jīng)過(guò)信號處理后,可在數據緩存模塊的控制下存入FPGA內部FIFO中;然后再通過(guò)PCI Express總線(xiàn)通過(guò)主機內存轉存到Raid磁盤(pán)陣列。 2 系統實(shí)現 2.1 數據采集 本系統中的數據轉換芯片采用ADI公司生產(chǎn)的AD9430流水型轉換器。它是一種單片低功耗12位高速ADC器件,采用3.3 V單一電源供電,具有最大的高速轉換率(能夠達到210 MSPS),并在較寬的頻帶范圍內仍然具有較好的動(dòng)態(tài)特性。另外,片內還集成了高性能的采樣保持放大器、參考電壓源和數據時(shí)鐘輸出信號?蔀橄到y提供更加簡(jiǎn)捷的解決方案。 AD9430有兩種數據輸出接口模式,即3.3VCOMS輸出和LVDS輸出。AD9430正常工作后,每個(gè)時(shí)鐘周期進(jìn)行一次A/D轉換,當通過(guò)內部緩沖采樣保持器和編碼之后,可將轉換結果鎖存到輸出寄存器。 通常高速數據采集都是建立在高速高精度采樣的基礎之上,而高速采樣必須得到高質(zhì)量時(shí)鐘信號的保障。采樣時(shí)鐘發(fā)生電路是高速AD采樣的基礎模塊。本系統選用可程控時(shí)鐘源SY89429AZC來(lái)產(chǎn)生AD9430的采樣時(shí)鐘,并通過(guò)對SY89429AZC芯片S_CLOCK、S_DATA、S_LOAD三個(gè)引腳信號線(xiàn)的控制,來(lái)程控輸出40MHz~200MHz精確采樣時(shí)鐘。圖2所示是SY89429AZC的三線(xiàn)控制時(shí)序圖。 TTL引腳S_DATA為配置串行移位寄存器的輸入端,串行寄存器可在每一個(gè)S_CLOCK信號的上升沿對S_DATA信號進(jìn)行取值。另有一配置鎖存器可在S_LOAD信號為高電平時(shí)鎖存串行移位寄存器的內容。這樣,通過(guò)設置S_DATA信號的值(即T2…T0,N1,N0,M8…M0的數值)以及三信號線(xiàn)的時(shí)序,便可控制SY89429AZC時(shí)鐘芯片輸出精確的采樣時(shí)鐘。 2.2 FPGA邏輯控制 邏輯控制模塊要實(shí)現的主要功能是解析上位機控制信息并發(fā)送控制命令,同時(shí)要程控采樣時(shí)鐘頻率,還要對采集數據流進(jìn)行處理和傳輸。其中數據流邏輯控制模塊中的功能組成直接關(guān)系到高速采集信號能否實(shí)時(shí)可靠的傳輸。圖3所示為數據流的邏輯控制結構框圖。 本設計選用Cyclone II系列芯片EP2C5Q208。此芯片為208腳PQFP封裝,用戶(hù)可用I/O資源高達158個(gè),差分通道數為58個(gè),其內部邏輯資源、M4K存儲資源、內部PLL數量完全能夠滿(mǎn)足本系統設計的需要。 由于A(yíng)D轉換芯片AD94301的采樣精度為12位,而PEX8311接口芯片可支持8位、16位、32位數據位。因此,為了更加有效的提高數據傳輸的效率,同時(shí)也為了使數據采集速率獲得相對提升,設計中的PEX8311采用32位數據位模式進(jìn)行數據傳輸。這樣,在本方案的FPGA數據流邏輯控制中,不僅要進(jìn)行數據的緩存以及數據傳輸邏輯的控制,還要進(jìn)行數據位的變換擴展,即由12位數據擴展為32位數據。為了實(shí)現數據位由12位到32位的轉換,應先把解串后的12位采樣數據進(jìn)行數據分流模塊,以把12位數據交替存儲到兩個(gè)FIFO中緩存。圖4所示是經(jīng)數據分流模塊交替產(chǎn)生12位數據的仿真示意圖。 高速數據采集系統中的數據傳輸速率與A/D轉換器的采集速度很難保持一致。為了協(xié)調數據采集與數據傳輸之間的速度差異,一般都在兩者之間加入數據緩存器進(jìn)行緩沖,使前端的數據采集與數據傳輸可以異步工作。通常的做法是在A(yíng)/D轉換后將數據送至外置的FIFO或雙口RAM中進(jìn)行緩存。但這樣無(wú)疑會(huì )增加布線(xiàn)密度,同時(shí)降低數據傳輸的可靠性。EP2C5Q208 Cyclone II系列FPGA提供了多達26塊的M4K RAM,而且PCI Ex-press總線(xiàn)的傳輸速率也大于數據采集速率,所以,可在FPGA內部設置FIFO空間來(lái)實(shí)現對數據的緩存。這樣,從FIFO讀出的兩組12位數據經(jīng)過(guò)符號位擴展模塊后,即可擴展變換為32位數據并由FPGA并行輸出到PCI Express接口模塊。 2.3 PCI Express接口控制 由于數據采集速率隨著(zhù)芯片技術(shù)的進(jìn)步而不斷提高,而大量的數據必須傳輸至主機進(jìn)行處理。這些傳輸都由那些將設備連接到主機內存的數據總線(xiàn)完成。因此,數據總線(xiàn)傳輸的速率常常成為整個(gè)數據采集系統的瓶頸,這也是許多儀器帶有昂貴板載內存的主要原因之一。而PCI Ex-press的出現,可使測量設備至主機內存的數據傳輸速率達到一個(gè)前所未有的高度。 PCI Express又稱(chēng)3GIO,即第三代輸入/輸出接口的意思。串行數據傳輸可使數據傳輸速率達到驚人的2.5 Gbps (PCI Express 1.0規范),且采用全雙工數據傳輸,并可擴展為×1、×4、×8、×16通道模式。 以PCI Express×1來(lái)計算,扣除數據校驗冗余8 bit\10 bit,有效數據傳輸率可以達到200 Mbyte,理論上可以提供100 MHz采樣速率和雙字節以?xún)鹊牟蓸泳鹊膫鬏攷挕?nbsp; 目前,實(shí)現PCI Express總線(xiàn)接口控制的方法有兩種:一種是采用FPGA/CPLD來(lái)實(shí)現。目前,Altera等專(zhuān)業(yè)FPGA公司都提供了多種PCI Express總線(xiàn)接口實(shí)現方案,并提供了相應的MegaCore。但是這種方案設計難度大,調試困難;另一種是采用專(zhuān)用接口芯片,如利用PLX公司的PEX8311來(lái)實(shí)現局部總線(xiàn)與PCI Express總線(xiàn)的連接。目前,無(wú)論從技術(shù)還是成本來(lái)看,第二種方案都是比較理想的選擇。 PEX8311芯片符合PCI Express 1.0基本規范,它支持主模式、從模式以及DMA三種數據傳輸方式。PEX8311芯片的主要特性如下: ◇集成有單通道、全雙工2.5 Gbit/s傳輸的PCI Express端口; ◇可配置局部總線(xiàn)寬度,支持8位、16位和32位的總線(xiàn)方式; ◇支持數據總線(xiàn)、地址總線(xiàn)獨立和復用總線(xiàn)操作模式; ◇雙通道高性能的DMA數據傳輸可支持數據塊模式、分散/集中模式、硬連線(xiàn)數據傳輸模式和命令模式; ◇支持PCI Express規范中的端點(diǎn)和根復合體模式; ◇芯片小型封裝,適合緊湊的電路板設計。 本方案中主要使用DMA方式中的命令模式。在命令模式下,可以通過(guò)一對硬連線(xiàn)“DREQ”和“DACK”來(lái)控制傳輸,每一個(gè)DMA通道都有一對這樣的信號。當FIFO在被寫(xiě)滿(mǎn)或讀空時(shí),命令模式將暫停操作。而當FIFO狀態(tài)改變以后,又可繼續行進(jìn)數據傳輸。 2.4 Raid磁盤(pán)陣列 從存儲容量、讀寫(xiě)速度和單位成本等方面綜合考慮,可以考慮利用多個(gè)硬盤(pán)組成Raid磁盤(pán)陣列來(lái)作為長(cháng)時(shí)高速采集系統的存儲載體。即把多塊容量、性能、品牌一致的硬盤(pán)組合起來(lái)形成一個(gè)硬盤(pán)組,從而提供比單個(gè)硬盤(pán)更高的讀寫(xiě)速率,以解決數據存儲容量的速度問(wèn)題。該方式的磁盤(pán)容量可以達到驚人的T字節級別,可充分滿(mǎn)足系統長(cháng)時(shí)間高速采集的需要。本系統采用Raid磁盤(pán)陣列控制卡,最高可連接8塊SATA II硬盤(pán),本系統掛接了4塊西數500GSATAⅡ硬盤(pán)。用硬盤(pán)讀寫(xiě)速度測試軟件IOmeter可以測得:在256KByte塊傳輸模式下,磁盤(pán)寫(xiě)入速度可以達400MB/s以上,而這也符合系統DMA方式的數據傳輸模式,所以,在磁盤(pán)寫(xiě)入速度方面,該方式完全可以滿(mǎn)足系統應用需求。 3 性能測試 PLX SDK是由PLX公司提供的專(zhuān)門(mén)針對該公司生產(chǎn)的PCI Express接口芯片的軟件開(kāi)發(fā)工具包。當安裝完P(guān)LXSDK軟件后,再把PEX8311開(kāi)發(fā)板插入PCI Express插槽中,就可以用PLXMon對PEX8311的DMA模式下的數據傳輸進(jìn)行設置和分析。圖5所示是本系統的性能測試界面圖。 4 結束語(yǔ) 基于PCI Express總線(xiàn)技術(shù)和Raid磁盤(pán)技術(shù)研制的高速大容量數據存儲系統,其最高采樣速率可達210MHz,存儲容量為2TB。如果要擴展存儲容量,只需更換Raid磁盤(pán)陣列控制卡并增加硬盤(pán)數量即可。通過(guò)實(shí)際使用表明,該系統可以在50MHz采樣率下穩定、可靠、持續不間斷的完成數據的采集和存儲,而且操作方便,擴展性強,具有一定的工程應用價(jià)值和參考價(jià)值。 |