何 鵬, 郝紹杰, 趙新明
(中國電子科技集團公司第四十一研究所,山東 青島 266555)
基于多核DSP的實時信號處理平臺設計
何 鵬, 郝紹杰, 趙新明
(中國電子科技集團公司第四十一研究所,山東 青島 266555)
高速實時信號處理是寬帶數字信道化偵察接收機的主要特點之一,其性能決定著偵察接收機的整體指標。為滿足寬帶偵察接收機對密集雷達信號實時處理的需求,設計一種基于FPGA和多片多核DSP的并行實時信號處理平臺,芯片之間通過高速串行總線互聯,使用FPGA對多核DSP進行調度。本文從硬件系統架構、電源供給、時鐘同步、芯片互聯等方面論述了信號處理平臺硬件實現方法,結合實際應用對該處理平臺的性能進行了測試驗證,達到了預期的設計目標。
高速實時;多核DSP;高速串行接口;硬件平臺
寬帶數字信道化偵察接收機通常采用基于軟件無線電的設計思想,使用高速ADC對射頻或者寬帶中頻信號進行直接采樣,采用數字技術實現信道化接收和寬帶信號處理[1]。隨著高速ADC和FPGA技術的發展,數字信道化接收機系統中已經可以實現1.8 Gb/s/12 bit的高速采樣及實時信道化[2]。要對如此高速的基帶信號進行后續偵察算法處理,就必須采用實時的并行信號處理平臺,以及高效的信號處理算法,其中信號處理平臺必須具備高效的數據傳輸接口以及足夠的浮點運算能力。
針對此應用需求,本文設計一種基于Xilinx公司Kintex7系列FPGA和TI公司多核DSP芯片TMS320C6678的信號處理平臺,用于解決寬帶數字信道化接收機實時信號處理問題。重點從系統架構、電源供給、時鐘同步、芯片互聯等方面介紹了硬件平臺設計實現方法,最后給出了實驗測試結果。
在數字偵察接收機系統中,實時信號處理平臺通過高速接口接收信道化處理后的脈沖信號數據,提取信號頻率、脈寬、重頻、脈內調制等特征參數,通過偵察算法完成信號識別與分選,最后輸出信號處理結果[3]。高速數據傳輸與并行DSP算法實現是本信號處理平臺的關鍵。為保證接口帶寬和信號處理性能,本文基于高性能FPGA和多片多核DSP芯片構建硬件系統,硬件結構如圖1所示。

圖1 硬件平臺示意圖
FPGA選用了Xilinx公司Kintex7系列芯片,主要用于實現高速數據接收及DSP陣列的調度。FPGA通過x8模式的GTX接口接收信道化模塊發送過來的IQ數據包,然后根據特定調度算法,將數據分配到不同的DSP內核進行特征參數提取、脈內調試識別、信號分選等運算。DSP選用2片TI公司的TMS320C6678芯片,每片TMS320C 6678包含8個1.2 GHz主頻的浮點處理器內核,2個芯片總共可提供320 GFLOPS的處理能力。
硬件架構采用靈活的互聯方式,FPGA和2片DSP分別通過高速串行總線(SRIO)接口互聯。兩片DSP之間通過HyperLink接口互聯,DSP處理后的數據可通過PCIe接口或者千兆以太網口上傳到后續處理單元。兩片DSP可以設置為并行或者串行工作模式,在并行模式下,兩片DSP交替進行不同數據幀的處理,FPGA接收到待處理數據后,通過SRIO接口將數據分發到空閑的DSP內核進行處理;在串行工作模式下,兩片DSP共計16個內核采用流水線模式工作,每個內核完成特定的信號算法,一個內核運算完成后將數據傳遞給下一個內核,工作模式根據脈沖信號的密度及信號特點靈活選擇。
為減小系統的啟動時間,采用并行Flash芯片對FPGA和DSP進行上電配置,DSP通過EMIF16接口外接的NOR Flash進行boot,兩片DSP的上電加載獨立完成,所有處理器核運行起來后,由FPGA統一調度,協同工作。
2.1 電源系統設計
在本文所設計的高性能信號處理平臺中,使用多片高速數字信號處理器以及DDR3等高速器件,高速數據線的工作頻率大于500 MHz,總功耗大于30 W,要保證硬件系統的穩定工作,必須設計可靠高效的電源系統。本文采用FPGA和DSP的電源分開設計的方案,以減小電源之間的影響,提高可靠性。整個電路板采用統一的直流電源,供電電壓范圍為+5.5 V~+15 V,以適應不同的電源環境。電源系統的方案如圖2所示。

圖2 電源設計方案
FPGA及外圍電路所需的電源,根據不同需求綜合采用LDO、DC-DC以及電源模塊3種方式來產生,需要大電流的內核電源通過集成電源模塊產生,對電源質量要求較高的與GTX接口相關的電源用線性穩壓器產生,需要高電壓的I/O電源通過DC-DC產生。DSP的電源主要基于數字電源套片和集成電源模塊來產生,其中內核電源采用TI公司UCD系列數字電源套片產生,由一片數字PWM控制芯片UCD9244和兩片電源驅動芯片UCD7242組成,可提供兩組獨立的電源輸出,為兩片TMS320C6678提供CVDD和CVDD1,CVDD1固定為1.0 V,CVDD為0.9 V~1.1 V,可通過DSP的VID來進行調節[4],UCD9244的配置可通過Texas Instruments Fusion Digital Power Designer軟件實現。
為滿足FPGA和DSP器件對上電順序的嚴格要求,本文采用CPLD芯片對各電路單元進行上電順序控制及電源健康狀態的監控。上電過程實行閉環控制,即打開一級電源,檢測到其輸出穩定后,再打開下級電源,當某路電源出現異常情況時,按上電順序的反序關閉已打開的電源,上電時序如圖3。

圖3 上電控制時序示意圖
上電過程分為FPGA上電、DSP上電、DSP復位控制3個階段,主電源打開后,CPLD先工作,然后按順序控制FPGA及其外圍電路上電,檢測到FPGA完成外部Flash加載后,啟動DSP及其外圍電路上電,依次打開內核電源、外設電源、時鐘使能,檢測到時鐘鎖定信號后,進入DSP復位控制階段,按DSP器件的要求依次輸出DSP的PORz、RESETFULLz、RESETz信號,當檢測到DSP輸出正常工作指示后,上電完成。
通過對電源系統的精細化設計以及上電順序的準確控制,可減小該信號處理平臺對整個系統電源的沖擊,降低對系統電源瞬時供電能力的要求。逐級上電可提高信號處理平臺硬件的穩定性,增加重要元器件的使用壽命,從而提高整個信號處理系統的可靠性。
2.2 時鐘電路設計
在多處理器系統中,時鐘同步問題至關重要[5],本設計中存在2片TMS320C6678處理器、1片FPGA芯片以及多片DDR3等高速器件,使用GTX、SRIO、HyperLink等高速接口,整個電路板需要有多個不同頻率的時鐘信號。考慮到時鐘源可帶負載能力、分支線的阻抗效應以及噪聲等對時鐘信號質量的影響,本文選擇了多路時鐘發生器加時鐘緩沖器的方案來產生整個信號處理板所需要的各類時鐘信號,時鐘方案如圖4所示。

圖4 時鐘方案
多路時鐘發生器選用了TI公司的專用時鐘芯片CDCE62005,該芯片是一款高性能的時鐘發生和分配器,具有可選的參考輸入方式,根據需要可選擇不同的參考時鐘方案:進行單板調試時,選擇板上高穩晶體振蕩器作為輸入;在與前端信道化采集系統聯合調試時,選擇由信道化采集系統提供的同步時鐘信號作為參考,從而保證信號處理板與系統中其他電路板時鐘的完全同步。CDCE62005可產生5個獨立的差分時鐘輸出,電平格式可選為LVPECL或者LVDS,輸出時鐘頻率125 kHz~1.5 GHz可調。由于FPGA和DSP需要的時鐘種類和數量多于時鐘發生器的輸出,在不增加時鐘發生器數量的情況下,對時鐘信號進行了歸類合并,可采用相同頻率的時鐘信號,使用同一個時鐘發生器輸出端口,然后采用時鐘緩沖器SN65LVDS104或者SN65LVDS108將單路信號擴展到多路,同時進行電平格式轉換、增加驅動后提供給各電路單元。根據各電路單元對時鐘信號的要求,CDCE62005輸出端口的配置如表1所示。

表1 時鐘發生器CDCE62005輸出配置
CDCE62005的配置通過CPLD編程實現,由器件的SPI接口將用戶的配置參數寫入內部EEPROM存儲器,器件上電后通過控制PowerDown管腳的電平來實現時鐘信號的輸出或關斷。當PowerDown管腳為高電平時,CDCE62005自動調用用戶配置數據輸出正確的頻率。CDCE62005內部的EEPROM提供了鎖定功能用于保護用戶配置數據安全,執行該命令后,EEPROM將不可再次更改。
2.3 互聯接口設計
根據本設計中FPGA和DSP器件的特點,以及信號處理平臺對數據傳輸接口帶寬的要求,選取串行高速總線進行芯片之間的互聯。待處理的脈沖信號數據通過x8模式的GTX接口傳入信號處理板的FPGA;FPGA通過兩組GTX接口與兩片DSP連接,采用SRIO協議進行數據傳輸;DSP之間通過HyperLink接口進行通信;信號處理結果通過DSP芯片的PCIe或者千兆以太網接口進行上報[6]。
2.3.1 FPGA與DSP互聯設計
SRIO(Serial RapidIO)是針對嵌入式系統芯片間和板間互聯的一種開放式的、基于包交換的高速串行標準[7]。Kintex7系列FPGA的GTX接口可以配置為SRIO協議,從而與TMS320C6678的SRIO接口無縫連接。FPGA中SRIO協議通過調用Xilinx公司提供的IP核實現,在ISE軟件中,使用Core generator調用Serial RapidIO Gen IP核,進行相關參數設置,生成IP核模塊,然后在FPGA中開辟兩個FIFO,分別用于存放發送和接收到的數據,通過編寫有限狀態機來實現對IP核的控制。
TMS320C6678端SRIO的配置,可通過調用TI公司CSL庫中相關的API函數來實現。需要注意的是,FPGA和DSP中對器件端點ID號的定義要保持一致,否則將無法進行通信。在SRIO通信接口的調試過程中,通過在FPGA中使用ChipScope查看相關信號的狀態,判斷SRIO通信是否成功。首先查看SRIO IP核輸出指示信號clk_lock的狀態,若該信號為高,則說明有時鐘進入SRIO核且被鎖住;時鐘鎖定后再檢查FPGA和DSP兩側各自時鐘是否正確,傳輸速率是否匹配;當FPGA端SRIO IP核指示信號link_initialized被拉高后,表明通信已經建立,此時可以進行SRIO的回環測試,若兩側的回環測試都正確,說明兩側的物理鏈路已經建立,接下來就可以進行數據傳輸及接口帶寬的測試。
2.3.2 DSP之間互聯設計
HyperLink總線是面向嵌入式應用的具有高效、低引腳數目的互聯方案,數據傳輸完全由硬件實現,不需要處理器參與[8]。本設計中兩片TMS320C6678之間通過HyperLink接口互聯,每片DSP為HyperLink提供4個SerDes通道,傳輸速率最高支持12.5 Gb/s,采用8b9b編碼,數據吞吐率為12.5×4×(8/9)=44.5 Gb/s。TI公司在CSL庫中提供了豐富的HyperLink API函數,在CCS開發軟件中,通過調用相關API函數對HyperLink接口進行配置,采用存儲空間映射方式,將DSP2的存儲空間映射到DSP1上,DSP1即可像訪問自身本地空間一樣去訪問DSP2的存儲空間,方便地實現數據交換。
為測試該信號處理平臺的數據傳輸及實時處理能力,進行了如下實驗:FPGA通過GTX接口從前端處理系統讀取一幀脈沖信號數據,512點IQ數據共512×32×2=32 768 bit,DSP通過SRIO接口從FPGA中將數據讀入內存,并啟動多個內核同時進行脈內調制特性分析。其中FPGA的GTX為8x模式,波特率10 Gb/s,DSP的SRIO接口為4x模式,波特率6.25 Gb/s,DSP工作主頻設定為1.2 GHz。通過CCS軟件程序運行時間記錄功能,對整個處理流程的耗時進行測試,如圖5所示。

圖5 系統運行時間測試
由圖5可以看出,從FPGA開始讀取數據到數據進入DSP內存共耗時0.016 251 ms,DSP進行脈內調制特性分析耗時為0.010 375 ms,處理一幀脈沖信號總時間約26 μs。
本文從硬件設計方面介紹了一種高速實時信號處理平臺的實現方法,基于Xilinx公司Kintex7系列 FPGA以及TI公司多核DSP芯片TMS320C6678構建系統,對電源電路、時鐘電路以及芯片互聯方案進行了詳細設計及測試。采用高速串行接口實現芯片間數據交換,基于多核DSP并行運算提高計算效率,解決了寬帶偵察接收機系統中海量數據傳輸與實時信號處理速度的瓶頸問題,可提升偵察接收機對密集信號環境的適應性。該信號處理平臺具有數據傳輸帶寬大、并行處理能力強、可靠性高等特點,可以滿足實際工程應用的需求。
[1] 龔仕仙,魏璽章,黎湘,等.寬帶數字信道化接收機綜述[J].電子學報,2013,41(5):118-122.
[2] 郝紹杰,何鵬,朱偉峰.雙通道高速數據采集處理平臺的設計與實現[J].計算機測量與控制,2015,23(7):35-39.
[3] 吳斌,楊神化,楊娜,等.基于DSP與FPGA的船用雷達信息采集卡的設計[J].微型機與應用,2015,34(13):31-34.
[4] 吳敏杰,馮起,袁乃昌.TMS320C6678 DSP的電源設計[J].電子設計工程,2012,20(6):46-49.
[5] 董淵文,張永軍,高曉亮,等.基于TMS320C6678多核DSP的分布式通信系統[J].微型機與應用,2014,33(13):74-76.
[6] 李鑫,姜明.多核DSP高速實時信號處理系統設計[J].光學技術,2012,38(1):55-60.
[7] SPRUGW1.KeyStone architecture SerialRapidIO (SRIO) user guid[Z].Texas Instrunments,2010.
[8] SPRUGW8.KeyStone architecture HyperLink user guid[Z]. Texas Instrunments,2010.
The design of real-time signal processing platform based on multi-core DSP
He Peng, Hao Shaojie, Zhao Xinming
(The 41st Institute of China Electronics Technology Group Corporation, Qingdao 266555, China)
Wideband digital channelized reconnaissance receiver features in high-speed and real-time digital signal processing, which affects the performance of reconnaissance receiver. In order to meet the growing demand for the real-time signal processing of high pulse-density environment, a high performance real-time signal processing platform has been designed and implemented based on FPGA and multi-core DSP. Different processors have been connected by high-speed serial ports, and FPGA is used as the controller of DSP cores. The hardware realization methods of the design have been discussed, including the power supply, the clock design and the data communication method. The system performance has been verified with the practical application.
real-time; multi-core DSP; high speed serial port; hardware platform
TN957
A
1674- 7720(2016)03- 0044- 03
何鵬,郝紹杰,趙新明.基于多核DSP的實時信號處理平臺設計[J] .微型機與應用,2016,35(3):44- 46,50.
2015-10-09)
何鵬(1981-),通信作者,男,本科,工程師,主要研究方向:寬帶數字信號處理技術。E-mail:xibeilanghp@163.com。
郝紹杰(1976-),男,本科,高級工程師,主要研究方向:高速數據采集及處理技術。
趙新明(1988-),男,碩士,工程師,主要研究方向:雷達信號處理及多核DSP編程技術。