中國船舶集團有限公司第七二三研究所 朱業騰 王玉斐 范云龍
本文提出了一種基于國產化多核DSP+FPGA架構的信號處理平臺的設計方案。分析了國產DSP、FPGA等核心器件的功能、性能特點,闡述了核心器件外圍電路、電源網絡、時鐘網絡等設計方法。經性能測試及實際應用驗證,該信號處理平臺運算性能優秀,工作穩定可靠,可以滿足使用要求。
隨著信息化戰爭對電子系統性能要求的不斷提高,雷達、電子對抗裝備的發展也進入了新的階段,相控陣類型設備已成為新的主流發展方向。裝備體制的改變對后端信號處理能力提出了更高要求,傳統的單核處理器已不能滿足當前信號采集、數據處理等需求,處理能力亟需提升[1]。近年來國產電子元器件設計、制造能力得到了較大提升,尤其在軍品電子元器件方面,已逐漸形成了一批經過實際應用驗證、滿足當前使用要求的嵌入式通用處理器、數字信號處理器、大規模可編程邏輯陣列等核心關鍵電子元器件,為國產化信號處理平臺的設計提供了基礎條件[2]。通過對現有國產電子元器件成熟度和功能、性能分析,并與國外同類器件進行對比,本文提出了一種基于國產多核DSP+FPGA的信號處理平臺設計方案,用于完成系統中數字信號處理、控制信息處理及和其他組件進行通訊的功能。
通用信號處理平臺是支撐雷達、電子對抗裝備設計的重要基礎,預留適度冗余的硬件資源和多樣且符合VPX標準的對外接口可以為上層系統提供更多的設計裕量[3]。如圖1所示給出了國產化信號處理平臺的拓撲結構。
平 臺 使 用8核DSP FT-M6678與FPGA JFM7VX 690T80各一片作為數據處理節點,兩片主芯片均連接到SRIO交換機NRS1800,并可通過交換機連接在VPX接插件的SRIO接口與外界SRIO節點進行數據交換,構建高速互聯計算網絡。FPGA可通過與光模塊和VPX接插件連接的GTH高速接口接收外部輸入的數據,并對數據進行預處理或實時信號處理工作。DSP通過EMIF接口和SRIO接口可對FPGA進行控制命令收發及數據交換,并對數據進行處理工作。板卡管理單元選用FPGA FMK50T4,負責系統上電控制、時鐘和外圍設備管理。
平臺選用的JFM7VX690T80FPGA是復旦微電子的最新一代產品,采用目前國內領先的28nm HKMH工藝,該系列FPGA是國內自主知識產權的首款億門級SRAM型FPGA,也是國內第一款集成了SERDES、DDR3等高速模塊的FPGA。JFM7VX690T80 FPGA在功能上兼容Xilinx XC7VX690T-FFG1927產品,性能與國外產品相當,擁有6931210個邏輯單元,3600個DSP運算單元,80對GTH高速收發器。并且JFM7系列FPGA利用更高的集成度和信號處理能力極大地降低了功耗,增大了帶寬,從而為雷達、通信和高級成像系統性能提升提供強有力的支撐。
本設計中,FPGA外接一片存儲配置數據用SPI FLASH,容量256MB;外接一簇DDR3存儲器,64bit數據線,接口時鐘≥800MHz,容量4GB;提供2路SRIO接口,其中1路與DSP相連,另1路連接到SRIO交換機,根據用戶使用情況可配置為4×1x,2×2x或1×4x模式,接口速率配置為3.125Gbps。
DSP選用國防科大研制的多核DSP芯片FT-M6678,該器件具備完全的自主知識產權,DSP處理電路內部集成8顆高性能DSP內核,單核主頻最高可達1.25GHz。支持定浮點運算,定點運算能力可達320GMAC/s,浮點運算能力為160GFLOPS。內部集成FFT硬件加速器,可大幅提升FFT計算能力。除2路4xSRIO、1路4xPCIE、1路千兆SGMII等高速接口外,還支持SPI、I2C、UART、GPIO、1553B總線等豐富的外設接口。其不僅主要性能指標與TI公司TMS320C6678相當,且由于制程優勢,在主頻相同條件下FT-M6678功耗約為C6678的一半。
本設計中,DSP默認通過板載128MB SPI FLASH啟動,外部時鐘25MHz,主頻1GHz。外接一簇64bit DDR3芯片,容量2GB,工作速率1333MT/s。兩路SRIO接口分別與JFM7VX690T80和SRIO交換機相連,速率3.125Gbps。SGMII接口連接到板載交換機,通過交換機將千兆以太網擴展到后背板接插件和前面板,使得外部調試和內部交互可同時進行,互不干擾。
板載SRIO交換機選用天津芯海創科技有限公司出品的NRS1800,它是一款低時延、含18個端口和48個通道的RapidIO Gen2交換芯片,每個通道最高傳輸速率可達6.25Gbps,整個交換機可以支持高達240Gbps的吞吐量。NRS1800支持規范定義的單播、多播和廣播路由。每個S-RIO端口擁有獨立的路由表和最多40個多播寄存器組。NRS1800支持4個獨立優先級。NRS1800的默認隊列老化功能可以確保當發生擁塞時高優先級的數據包不會徹底阻斷低優先級數據包的通信。另外NRS1800也支持包追蹤和包過濾功能、端口熱插拔功能等。NRS1800支持RapidIO長距離標準,非常適合于板內互連、通過背板的板間互連和機箱間互連。
良好的電源設計是整個系統能正常穩定工作的關鍵,必須滿足系統功耗要求,并且需要提供一定的功耗余量[4]。平臺中對電源要求較高的芯片有FPGA、DSP、SRIO交換機、以太網交換機等。其中FPGA電源包括內核電源、內部BRAM電源、輔助電源、普通接口電源和高性能GTX收發器電源。DSP所需電源包括內核電源、SERDES內核及接口電源、DDR3控制器及接口電源等。FPGA和DSP對外部電源的工作電壓、供電電流、電源噪聲及商店順序均有較為嚴格的要求,對電源管理設計提出了較高的要求。本平臺采用一片FMK50T4專門管理系統上電控制時序,并在其中設置一顆軟核通過集成在載板上的兩個16通道ADC芯片及相應的傳感器電路可實現對載板上的電壓、電流、溫度的監控并通過板卡前面板的串口定時對外發送,方便用戶掌握板卡運行狀態。平臺主要器件供電結構設計如圖2所示。
時鐘電路為板卡上主要器件運行提供高質量的時鐘信號,信號處理平臺上時鐘信號類型主要包括DSP工作時鐘、DSP SRIO和SGMII接口時鐘、FPGA系統時鐘、FPGA DDR接口和GTH接口時鐘、SRIO交換機參考時鐘、以太網交換機工作時鐘。其中DSP工作時鐘為25MHz,由單端晶振產生,經過時鐘驅動后分別供給DSP工作時鐘、DDR時鐘、PASS時鐘輸入管腳。FPGA系統時鐘、FPGA DDR接口時鐘為100MHz,由差分晶振經過時鐘芯片GMD946C扇出后分別供給FPGA和DDR。DSP的SRIO和SGMII接口參考時鐘頻率為125MHz,SRIO交換機NRS1800的工作頻率為156.25MHz,FPGA的SRIO接口參考時鐘可選125MHz和156.25MHz。本設計中為保證時鐘一致性,使用兩個差分晶振,將125MHz時鐘經GMD946C扇出后,分別供給DSP和FPGA,156.25MHz時鐘則單獨供給NRS1800。
對通用信號處理平臺的性能主要包括兩個方面的測試分析:(1)SRIO協議傳輸帶寬;(2)DSP FFT運算性能[5,6]。
將FT-M6678的SRIO 0端 口 于FPGA內 的SRIO IP核建立連接,而后通過DSP端DMA向FPGA端發送NWRITE請求。DMA完成后統計運行并校驗傳輸的時間。每次傳輸使用4096Byte大小的數據包,每次測試重復10000次傳輸計算總時間,測試數據如表1所示。

表1 SRIO 帶寬測試Tab.1 SRIO bandwidth test
按照理論計算,SRIO配置為X4,3.125Gbps模式下去除8B/10B編碼后的理論有效帶寬為10Gbps。測試數據顯示,去掉驅動、中間層及應用層的系統開銷,實際有效帶寬大約是理論有效帶寬的86%,并且在多個模式的測試中,傳輸效率基本趨于一致,傳輸穩定性良好。
FT-M6678內部集成了一個FFT加速器,它通過高速CrossNet網絡中的數據通路與片內存儲器(L2Cache、MSMC)和DDR3存儲器進行交互,同時通過高速CrossNet網絡中的命令通路完成CPU內核與FFT加速器之間的命令交互。在測試中使用對不同點數數據的直接計算法評估FT-M6678的FFT計算性能,并與TI的C6678進行了比較,具體測試數據如表2所示。

表2 FFT運算性能測試Tab.2 FFT operation performance test
比較兩者的FFT運算耗時可以發現,FT-M6678內建的FFT加速器運算性能明顯高于C6678的C66x內核,且隨著FFT運算規模的增大,性能差距也隨之變大,最大可以達到9.268倍。
本文通過對通用信號處理平臺的系統架構、平臺主要芯片電路、供電電路、時鐘電路的設計分析,提出了一種由國產化元器件組成的高性能信號處理平臺方案,可供后續設計參考,有效降低研制風險。經過性能測試和在某系統中的實際應用,該平臺運行穩定,各方面性能達到預期,可為雷達、電子對抗等領域裝備的發展提供有力支撐。