賈敬樂,王 嘯,李 強
(南京萊斯電子設備有限公司,江蘇 南京 210007)
為了更好地對機載雷達信號處理算法進行分析、優(yōu)化,需要實時記錄雷達工作時的原始中頻IQ數據。但受限于機載環(huán)境的嚴苛,要求機載電子設備具有小尺寸、輕重量、低功耗的特點[1];為此實現(xiàn)足夠高的數據記錄速度、足夠大的存儲容量,對記錄設備的處理能力、功耗與體積都有一定要求。本文根據某型號機載雷達數據記錄儀要求,記錄快速的IQ數據和慢速的信號處理后的數據,設計了一款新型數據記錄儀,在滿足直流DC28 V供電,功耗小于70 W,重量小于3 kg以及機載工作環(huán)境適應性的前提下,實現(xiàn)了500 MB/s的記錄速度、8 TB的存儲容量的性能指標,同時該設計采用標準文件系統(tǒng),能夠方便數據導出,便于通用軟件對數據的識別和分析。
數據記錄儀設備基于PCIE通信總線,選用NXP的POWERPC處理器作為系統(tǒng)的主控器;選用Xilinx FPGA實現(xiàn)外部所需數據的專用總線接口;存儲介質選用憶芯科技的NVME SSD。FPGA與NVME SSD的PCIE接口分別與主控的PCIE連接。數據由FPGA接收后,由PCIE端口進行傳輸,由主控對傳輸的數據進行NVME SSD落盤。
因記錄設備受用戶結構要求,故采用模塊化設計。本方案經過結構布局等綜合考慮,將設備分為電源模塊、主控模塊、NVME存儲模塊、FPGA接口模塊以及電子機箱。電源模塊選用9 V~36 V寬輸入范圍的DC-DC模塊,實現(xiàn)DC28 V輸入轉換DC12 V,用于主控模塊、NVME存儲模塊、FPGA接口模塊的供電。主控模塊采用XMC形態(tài),提供2路pcie3.0*4通道,分別實現(xiàn)與FPGA接口模塊的PCIE接口和NVME存儲模塊接口的對接,并提供對外的千兆以太網和萬兆以太網接口。NVME存儲模塊采用XMC模塊形式,提供PCIE3.0*4接口,模塊上集成2個存儲控制器和一個PCIE SWITCH,每個存儲控制器的磁盤容量為4 TB,總容量為8 TB。FPGA接口模塊,包含2個4路一體的PLCC850 nm光模塊,一個FPGA可編程器件,以及2個XMC安裝位置,用于安裝主控模塊和NVME存儲模塊。
根據需求,選用的FPGA芯片為xilinx的690T-1761系列芯片,實現(xiàn)對外和對內Rapidio,PCIE接口。緩存資源采用內部BRAM即可滿足數據緩存需求。
雷達的中頻IQ數據由串行Rapidio接口NWRITE[2]接入事務類型。為滿足數據流的持續(xù)寫入NVME SSD,數據進入FPGA后經過內部多個512 KB的緩存BRAM存儲,并經過SRIO時鐘域到PCIE時鐘域轉換,每512 KB發(fā)起一次PCIE DMA[3]操作。根據數據類型帶寬不同,采用4個RAM實現(xiàn)IQ數據的流水作業(yè),數據處理后的數據采用2個RAM實現(xiàn)流水作業(yè),IQ數據和數據處理后數據共6個RAM,采取先滿先傳原則,發(fā)起PCIE DMA操作。其中文件操作接收到PCIE中斷信息,就會從內存中搬取數據;根據上位機的配置要求,生成符合用戶需求的記錄文件。生成文件的主要流程,如圖1所示。由于記錄儀設備本身的磁盤空間是有限的,當記錄數據滿了后,提供覆蓋寫和丟棄當前數據兩種可選模式。其中記錄流程,如圖2所示。
圖2 記錄流程
回放只針對快速的IQ數據進行回放,用于事后的重演分析。可以根據實際需求,選擇需要回放的文件(支持回放一個或一組文件);主控模塊讀取存儲模塊中的文件至主控內存,并通過PCIE接口進行DMA至FPGA空間。FPGA進行PCIE時鐘域到SRIO時鐘域轉換,每次發(fā)起DMA操作時機根據FPGA內部FIFO數據剩余數據量,保證數據流穩(wěn)定。每次DMA操作512 KB,當FPGA回放數據不足32 KB時候,重新發(fā)起DMA。受限于用戶信號處理能力,需控制回放速度,回放中,解析數據的幀頭,計算回放節(jié)拍,將數據從光纖SRIO接口回放,回放流程如圖3所示。
圖3 回放流程
基于用戶要求,采用的方案滿足指標同時,兼顧數據維護和經濟性原則。實現(xiàn)高帶寬的記錄需要軟硬件協(xié)同配合,任何節(jié)點的瓶頸都影響設備的性能。
數據用戶接口硬件為2路4通道的光纖接口,光模塊選擇6.25 Gbps速度,協(xié)議采用SRIO2.1,其最大理論通信帶寬為5×4×0.8/8=2 GB/s,因用戶的光纖接口處理器同樣是FPGA,不存在CPU開銷問題,故理論帶寬基本是實際有效帶寬,2 GB/s遠大于500 MB/s的數據記錄指標。
FPGA和NVME SSD均與PowerPC通過PCIE3.0×4相連,PCIE3.0采用128B/130B[3]編碼,理論帶寬為4×128/130×8/8=3.94 GB/s,遠大于500 MB/s的數據記錄指標。
而經硬盤測試工具FIO測試,以512 KB為作為一個塊單位寫硬盤,單個NVME SSD盤的實際速度可達1 500 MB/s以上,即不需要對兩個NVME SSD做任何特殊處理,即可滿足500 MB/s的數據記錄指標,數據流向,如圖4所示。
從圖4分析,數據從SRIO進入,經FPGA內部緩存,由PCIE端口進入PowerPC處理器。FIFO寫入端時鐘和數據為250 MHz×64 bit,讀出端為125 MHz×256 bit,讀出速度為寫入速度2倍。這樣數據從FPGA入口到出口,整個數據流速率是由低到高,該段數據流無瓶頸;而處理器到硬盤速度為1 500 MB/s以上,去掉實際開銷,遠大于500 MB/s數據率,因此整個數據記錄流程滿足500 MB/s數據記錄指標。
圖4 數據流向
數據進入FPGA后,先經FPGA內部FIFO進行時鐘域和數據位寬轉換,將接收到的數據從SRIO時鐘域轉換為PCIE時鐘域,再分別通過各自的RAM緩存隊列,將數據依次通過PCIE的DMA操作搬移至處理器內存空間;每搬移512 KB數據,F(xiàn)PGA的PCIE向處理器發(fā)送一個中斷,處理器根據中斷將該512 KB塊數據寫入硬盤;NVME SSD多隊列技術特點,實現(xiàn)高速數據的存儲處理,將處理器內存空間開辟32 MB,共64個512 KB空間,F(xiàn)PGA輪詢向該空間中的64個512 KB塊搬移數據,且處理器依次循環(huán)讀取64個512 KB數據塊,寫入硬盤。
實際數據傳輸時,因文件系統(tǒng)開銷存在速度抖動,故在操作主控DDR3內存以及數據寫入SSD時,都需要緩沖數據到一定數量時再一次寫入,以提高總線傳輸效率。同時設備設計兼顧在整個系統(tǒng)中的作用,需要配合整個信號處理系統(tǒng)進行記錄回放卸載等功能的聯(lián)試聯(lián)調,設備在系統(tǒng)中未發(fā)揮其最優(yōu)性能。
整個設備測試環(huán)境采用用戶的實際環(huán)境,將設備上的主備用光纖和用戶的信號處理機相連。設備的千兆口或萬兆口與控制計算機相連。登錄客戶端軟件,可對記錄設備進行控制,客戶端軟件可實時顯示磁盤容量、溫度、快慢數據通道狀態(tài),SRIO鏈路等狀態(tài)。整機滿足實現(xiàn)600 MB/s記錄速度,萬兆以太網320 MB/s數據下載。整機靜態(tài)功耗和工作功耗如表1所示。
表1 測試表
本文設計的機載雷達數據記錄儀滿足了用戶對記錄速度和記錄容量的要求,利用高性能高速總線接口,降低了設備功耗、尺寸重量等,同時記錄的數據管理采用標準文件系統(tǒng),便于數據的使用。目前完成高低溫、振動、加速度、溫度沖擊等環(huán)境試驗,并交付用戶使用。