《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 通信與網(wǎng)絡(luò) > 設(shè)計(jì)應(yīng)用 > 基于多核DSP的實(shí)時(shí)信號(hào)處理平臺(tái)設(shè)計(jì)
基于多核DSP的實(shí)時(shí)信號(hào)處理平臺(tái)設(shè)計(jì)
2016年微型機(jī)與應(yīng)用第3期
何鵬, 郝紹杰, 趙新明
(中國(guó)電子科技集團(tuán)公司第四十一研究所,山東 青島 266555)
摘要: 高速實(shí)時(shí)信號(hào)處理是寬帶數(shù)字信道化偵察接收機(jī)的主要特點(diǎn)之一,其性能決定著偵察接收機(jī)的整體指標(biāo)。為滿(mǎn)足寬帶偵察接收機(jī)對(duì)密集雷達(dá)信號(hào)實(shí)時(shí)處理的需求,設(shè)計(jì)一種基于FPGA和多片多核DSP的并行實(shí)時(shí)信號(hào)處理平臺(tái),芯片之間通過(guò)高速串行總線(xiàn)互聯(lián),使用FPGA對(duì)多核DSP進(jìn)行調(diào)度。本文從硬件系統(tǒng)架構(gòu)、電源供給、時(shí)鐘同步、芯片互聯(lián)等方面論述了信號(hào)處理平臺(tái)硬件實(shí)現(xiàn)方法,結(jié)合實(shí)際應(yīng)用對(duì)該處理平臺(tái)的性能進(jìn)行了測(cè)試驗(yàn)證,達(dá)到了預(yù)期的設(shè)計(jì)目標(biāo)。
Abstract:
Key words :

  摘要高速實(shí)時(shí)信號(hào)處理是寬帶數(shù)字信道化偵察接收機(jī)的主要特點(diǎn)之一,其性能決定著偵察接收機(jī)的整體指標(biāo)。為滿(mǎn)足寬帶偵察接收機(jī)對(duì)密集雷達(dá)信號(hào)實(shí)時(shí)處理的需求,設(shè)計(jì)一種基于FPGA和多片多核DSP的并行實(shí)時(shí)信號(hào)處理平臺(tái),芯片之間通過(guò)高速串行總線(xiàn)互聯(lián),使用FPGA對(duì)多核DSP進(jìn)行調(diào)度。本文從硬件系統(tǒng)架構(gòu)、電源供給、時(shí)鐘同步、芯片互聯(lián)等方面論述了信號(hào)處理平臺(tái)硬件實(shí)現(xiàn)方法,結(jié)合實(shí)際應(yīng)用對(duì)該處理平臺(tái)的性能進(jìn)行了測(cè)試驗(yàn)證,達(dá)到了預(yù)期的設(shè)計(jì)目標(biāo)。

  關(guān)鍵詞:高速實(shí)時(shí);多核DSP;高速串行接口;硬件平臺(tái)

0引言

  寬帶數(shù)字信道化偵察接收機(jī)通常采用基于軟件無(wú)線(xiàn)電的設(shè)計(jì)思想,使用高速ADC對(duì)射頻或者寬帶中頻信號(hào)進(jìn)行直接采樣,采用數(shù)字技術(shù)實(shí)現(xiàn)信道化接收和寬帶信號(hào)處理[1]。隨著高速ADC和FPGA技術(shù)的發(fā)展,數(shù)字信道化接收機(jī)系統(tǒng)中已經(jīng)可以實(shí)現(xiàn)1.8 Gb/s/12 bit的高速采樣及實(shí)時(shí)信道化[2]。要對(duì)如此高速的基帶信號(hào)進(jìn)行后續(xù)偵察算法處理,就必須采用實(shí)時(shí)的并行信號(hào)處理平臺(tái),以及高效的信號(hào)處理算法,其中信號(hào)處理平臺(tái)必須具備高效的數(shù)據(jù)傳輸接口以及足夠的浮點(diǎn)運(yùn)算能力。

  針對(duì)此應(yīng)用需求,本文設(shè)計(jì)一種基于Xilinx公司Kintex7系列FPGA和TI公司多核DSP芯片TMS320C6678的信號(hào)處理平臺(tái),用于解決寬帶數(shù)字信道化接收機(jī)實(shí)時(shí)信號(hào)處理問(wèn)題。重點(diǎn)從系統(tǒng)架構(gòu)、電源供給、時(shí)鐘同步、芯片互聯(lián)等方面介紹了硬件平臺(tái)設(shè)計(jì)實(shí)現(xiàn)方法,最后給出了實(shí)驗(yàn)測(cè)試結(jié)果。

1總體架構(gòu)設(shè)計(jì)

  在數(shù)字偵察接收機(jī)系統(tǒng)中,實(shí)時(shí)信號(hào)處理平臺(tái)通過(guò)高速接口接收信道化處理后的脈沖信號(hào)數(shù)據(jù),提取信號(hào)頻率、脈寬、重頻、脈內(nèi)調(diào)制等特征參數(shù),通過(guò)偵察算法完成信號(hào)識(shí)別與分選,最后輸出信號(hào)處理結(jié)果[3]。高速數(shù)據(jù)傳輸與并行DSP算法實(shí)現(xiàn)是本信號(hào)處理平臺(tái)的關(guān)鍵。為保證接口帶寬和信號(hào)處理性能,本文基于高性能FPGA和多片多核DSP芯片構(gòu)建硬件系統(tǒng),硬件結(jié)構(gòu)如圖1所示。

007.jpg

  FPGA選用了Xilinx公司Kintex7系列芯片,主要用于實(shí)現(xiàn)高速數(shù)據(jù)接收及DSP陣列的調(diào)度。FPGA通過(guò)x8模式的GTX接口接收信道化模塊發(fā)送過(guò)來(lái)的IQ數(shù)據(jù)包,然后根據(jù)特定調(diào)度算法,將數(shù)據(jù)分配到不同的DSP內(nèi)核進(jìn)行特征參數(shù)提取、脈內(nèi)調(diào)試識(shí)別、信號(hào)分選等運(yùn)算。DSP選用2片TI公司的TMS320C6678芯片,每片TMS320C 6678包含8個(gè)1.2 GHz主頻的浮點(diǎn)處理器內(nèi)核,2個(gè)芯片總共可提供320 GFLOPS的處理能力。

  硬件架構(gòu)采用靈活的互聯(lián)方式,F(xiàn)PGA和2片DSP分別通過(guò)高速串行總線(xiàn)(SRIO)接口互聯(lián)。兩片DSP之間通過(guò)HyperLink接口互聯(lián),DSP處理后的數(shù)據(jù)可通過(guò)PCIe接口或者千兆以太網(wǎng)口上傳到后續(xù)處理單元。兩片DSP可以設(shè)置為并行或者串行工作模式,在并行模式下,兩片DSP交替進(jìn)行不同數(shù)據(jù)幀的處理,F(xiàn)PGA接收到待處理數(shù)據(jù)后,通過(guò)SRIO接口將數(shù)據(jù)分發(fā)到空閑的DSP內(nèi)核進(jìn)行處理;在串行工作模式下,兩片DSP共計(jì)16個(gè)內(nèi)核采用流水線(xiàn)模式工作,每個(gè)內(nèi)核完成特定的信號(hào)算法,一個(gè)內(nèi)核運(yùn)算完成后將數(shù)據(jù)傳遞給下一個(gè)內(nèi)核,工作模式根據(jù)脈沖信號(hào)的密度及信號(hào)特點(diǎn)靈活選擇。

  為減小系統(tǒng)的啟動(dòng)時(shí)間,采用并行Flash芯片對(duì)FPGA和DSP進(jìn)行上電配置,DSP通過(guò)EMIF16接口外接的NOR Flash進(jìn)行boot,兩片DSP的上電加載獨(dú)立完成,所有處理器核運(yùn)行起來(lái)后,由FPGA統(tǒng)一調(diào)度,協(xié)同工作。

2關(guān)鍵電路設(shè)計(jì)實(shí)現(xiàn)

  2.1電源系統(tǒng)設(shè)計(jì)

  在本文所設(shè)計(jì)的高性能信號(hào)處理平臺(tái)中,使用多片高速數(shù)字信號(hào)處理器以及DDR3等高速器件,高速數(shù)據(jù)線(xiàn)的工作頻率大于500 MHz,總功耗大于30 W,要保證硬件系統(tǒng)的穩(wěn)定工作,必須設(shè)計(jì)可靠高效的電源系統(tǒng)。本文采用FPGA和DSP的電源分開(kāi)設(shè)計(jì)的方案,以減小電源之間的影響,提高可靠性。整個(gè)電路板采用統(tǒng)一的直流電源,供電電壓范圍為+5.5 V~+15 V,以適應(yīng)不同的電源環(huán)境。電源系統(tǒng)的方案如圖2所示。

008.jpg

  FPGA及外圍電路所需的電源,根據(jù)不同需求綜合采用LDO、DCDC以及電源模塊3種方式來(lái)產(chǎn)生,需要大電流的內(nèi)核電源通過(guò)集成電源模塊產(chǎn)生,對(duì)電源質(zhì)量要求較高的與GTX接口相關(guān)的電源用線(xiàn)性穩(wěn)壓器產(chǎn)生,需要高電壓的I/O電源通過(guò)DC-DC產(chǎn)生。DSP的電源主要基于數(shù)字電源套片和集成電源模塊來(lái)產(chǎn)生,其中內(nèi)核電源采用TI公司UCD系列數(shù)字電源套片產(chǎn)生,由一片數(shù)字PWM控制芯片UCD9244和兩片電源驅(qū)動(dòng)芯片UCD7242組成,可提供兩組獨(dú)立的電源輸出,為兩片TMS320C6678提供CVDD和CVDD1,CVDD1固定為1.0 V,CVDD為0.9 V~1.1 V,可通過(guò)DSP的VID來(lái)進(jìn)行調(diào)節(jié)[4],UCD9244的配置可通過(guò)Texas Instruments Fusion Digital Power Designer軟件實(shí)現(xiàn)。

  為滿(mǎn)足FPGA和DSP器件對(duì)上電順序的嚴(yán)格要求,本文采用CPLD芯片對(duì)各電路單元進(jìn)行上電順序控制及電源健康狀態(tài)的監(jiān)控。上電過(guò)程實(shí)行閉環(huán)控制,即打開(kāi)一級(jí)電源,檢測(cè)到其輸出穩(wěn)定后,再打開(kāi)下級(jí)電源,當(dāng)某路電源出現(xiàn)異常情況時(shí),按上電順序的反序關(guān)閉已打開(kāi)的電源,上電時(shí)序如圖3。

009.jpg

  上電過(guò)程分為FPGA上電、DSP上電、DSP復(fù)位控制3個(gè)階段,主電源打開(kāi)后,CPLD先工作,然后按順序控制FPGA及其外圍電路上電,檢測(cè)到FPGA完成外部Flash加載后,啟動(dòng)DSP及其外圍電路上電,依次打開(kāi)內(nèi)核電源、外設(shè)電源、時(shí)鐘使能,檢測(cè)到時(shí)鐘鎖定信號(hào)后,進(jìn)入DSP復(fù)位控制階段,按DSP器件的要求依次輸出DSP的PORz、RESETFULLz、RESETz信號(hào),當(dāng)檢測(cè)到DSP輸出正常工作指示后,上電完成。

  通過(guò)對(duì)電源系統(tǒng)的精細(xì)化設(shè)計(jì)以及上電順序的準(zhǔn)確控制,可減小該信號(hào)處理平臺(tái)對(duì)整個(gè)系統(tǒng)電源的沖擊,降低對(duì)系統(tǒng)電源瞬時(shí)供電能力的要求。逐級(jí)上電可提高信號(hào)處理平臺(tái)硬件的穩(wěn)定性,增加重要元器件的使用壽命,從而提高整個(gè)信號(hào)處理系統(tǒng)的可靠性。

  2.2時(shí)鐘電路設(shè)計(jì)

  在多處理器系統(tǒng)中,時(shí)鐘同步問(wèn)題至關(guān)重要[5],本設(shè)計(jì)中存在2片TMS320C6678處理器、1片F(xiàn)PGA芯片以及多片DDR3等高速器件,使用GTX、SRIO、HyperLink等高速接口,整個(gè)電路板需要有多個(gè)不同頻率的時(shí)鐘信號(hào)。考慮到時(shí)鐘源可帶負(fù)載能力、分支線(xiàn)的阻抗效應(yīng)以及噪聲等對(duì)時(shí)鐘信號(hào)質(zhì)量的影響,本文選擇了多路時(shí)鐘發(fā)生器加時(shí)鐘緩沖器的方案來(lái)產(chǎn)生整個(gè)信號(hào)處理板所需要的各類(lèi)時(shí)鐘信號(hào),時(shí)鐘方案如圖4所示。

010.jpg

  多路時(shí)鐘發(fā)生器選用了TI公司的專(zhuān)用時(shí)鐘芯片CDCE62005,該芯片是一款高性能的時(shí)鐘發(fā)生和分配器,具有可選的參考輸入方式,根據(jù)需要可選擇不同的參考時(shí)鐘方案:進(jìn)行單板調(diào)試時(shí),選擇板上高穩(wěn)晶體振蕩器作為輸入;在與前端信道化采集系統(tǒng)聯(lián)合調(diào)試時(shí),選擇由信道化采集系統(tǒng)提供的同步時(shí)鐘信號(hào)作為參考,從而保證信號(hào)處理板與系統(tǒng)中其他電路板時(shí)鐘的完全同步。CDCE62005可產(chǎn)生5個(gè)獨(dú)立的差分時(shí)鐘輸出,電平格式可選為L(zhǎng)VPECL或者LVDS,輸出時(shí)鐘頻率125 kHz~1.5 GHz可調(diào)。由于FPGA和DSP需要的時(shí)鐘種類(lèi)和數(shù)量多于時(shí)鐘發(fā)生器的輸出,在不增加時(shí)鐘發(fā)生器數(shù)量的情況下,對(duì)時(shí)鐘信號(hào)進(jìn)行了歸類(lèi)合并,可采用相同頻率的時(shí)鐘信號(hào),使用同一個(gè)時(shí)鐘發(fā)生器輸出端口,然后采用時(shí)鐘緩沖器SN65LVDS104或者SN65LVDS108將單路信號(hào)擴(kuò)展到多路,同時(shí)進(jìn)行電平格式轉(zhuǎn)換、增加驅(qū)動(dòng)后提供給各電路單元。根據(jù)各電路單元對(duì)時(shí)鐘信號(hào)的要求,CDCE62005輸出端口的配置如表1所示。

011.jpg

  CDCE62005的配置通過(guò)CPLD編程實(shí)現(xiàn),由器件的SPI接口將用戶(hù)的配置參數(shù)寫(xiě)入內(nèi)部EEPROM存儲(chǔ)器,器件上電后通過(guò)控制PowerDown管腳的電平來(lái)實(shí)現(xiàn)時(shí)鐘信號(hào)的輸出或關(guān)斷。當(dāng)PowerDown管腳為高電平時(shí),CDCE62005自動(dòng)調(diào)用用戶(hù)配置數(shù)據(jù)輸出正確的頻率。CDCE62005內(nèi)部的EEPROM提供了鎖定功能用于保護(hù)用戶(hù)配置數(shù)據(jù)安全,執(zhí)行該命令后,EEPROM將不可再次更改。

  2.3互聯(lián)接口設(shè)計(jì)

  根據(jù)本設(shè)計(jì)中FPGA和DSP器件的特點(diǎn),以及信號(hào)處理平臺(tái)對(duì)數(shù)據(jù)傳輸接口帶寬的要求,選取串行高速總線(xiàn)進(jìn)行芯片之間的互聯(lián)。待處理的脈沖信號(hào)數(shù)據(jù)通過(guò)x8模式的GTX接口傳入信號(hào)處理板的FPGA;FPGA通過(guò)兩組GTX接口與兩片DSP連接,采用SRIO協(xié)議進(jìn)行數(shù)據(jù)傳輸;DSP之間通過(guò)HyperLink接口進(jìn)行通信;信號(hào)處理結(jié)果通過(guò)DSP芯片的PCIe或者千兆以太網(wǎng)接口進(jìn)行上報(bào)[6]。

  2.3.1FPGA與DSP互聯(lián)設(shè)計(jì)

  SRIO(Serial RapidIO)是針對(duì)嵌入式系統(tǒng)芯片間和板間互聯(lián)的一種開(kāi)放式的、基于包交換的高速串行標(biāo)準(zhǔn)[7]。Kintex7系列FPGA的GTX接口可以配置為SRIO協(xié)議,從而與TMS320C6678的SRIO接口無(wú)縫連接。FPGA中SRIO協(xié)議通過(guò)調(diào)用Xilinx公司提供的IP核實(shí)現(xiàn),在ISE軟件中,使用Core generator調(diào)用Serial RapidIO Gen IP核,進(jìn)行相關(guān)參數(shù)設(shè)置,生成IP核模塊,然后在FPGA中開(kāi)辟兩個(gè)FIFO,分別用于存放發(fā)送和接收到的數(shù)據(jù),通過(guò)編寫(xiě)有限狀態(tài)機(jī)來(lái)實(shí)現(xiàn)對(duì)IP核的控制。

  TMS320C6678端SRIO的配置,可通過(guò)調(diào)用TI公司CSL庫(kù)中相關(guān)的API函數(shù)來(lái)實(shí)現(xiàn)。需要注意的是,F(xiàn)PGA和DSP中對(duì)器件端點(diǎn)ID號(hào)的定義要保持一致,否則將無(wú)法進(jìn)行通信。在SRIO通信接口的調(diào)試過(guò)程中,通過(guò)在FPGA中使用ChipScope查看相關(guān)信號(hào)的狀態(tài),判斷SRIO通信是否成功。首先查看SRIO IP核輸出指示信號(hào)clk_lock的狀態(tài),若該信號(hào)為高,則說(shuō)明有時(shí)鐘進(jìn)入SRIO核且被鎖??;時(shí)鐘鎖定后再檢查FPGA和DSP兩側(cè)各自時(shí)鐘是否正確,傳輸速率是否匹配;當(dāng)FPGA端SRIO IP核指示信號(hào)link_initialized被拉高后,表明通信已經(jīng)建立,此時(shí)可以進(jìn)行SRIO的回環(huán)測(cè)試,若兩側(cè)的回環(huán)測(cè)試都正確,說(shuō)明兩側(cè)的物理鏈路已經(jīng)建立,接下來(lái)就可以進(jìn)行數(shù)據(jù)傳輸及接口帶寬的測(cè)試。

  2.3.2DSP之間互聯(lián)設(shè)計(jì)

  HyperLink總線(xiàn)是面向嵌入式應(yīng)用的具有高效、低引腳數(shù)目的互聯(lián)方案,數(shù)據(jù)傳輸完全由硬件實(shí)現(xiàn),不需要處理器參與[8]。本設(shè)計(jì)中兩片TMS320C6678之間通過(guò)HyperLink接口互聯(lián),每片DSP為HyperLink提供4個(gè)SerDes通道,傳輸速率最高支持12.5 Gb/s,采用8b9b編碼,數(shù)據(jù)吞吐率為12.5×4×(8/9)=44.5 Gb/s。TI公司在CSL庫(kù)中提供了豐富的HyperLink API函數(shù),在CCS開(kāi)發(fā)軟件中,通過(guò)調(diào)用相關(guān)API函數(shù)對(duì)HyperLink接口進(jìn)行配置,采用存儲(chǔ)空間映射方式,將DSP2的存儲(chǔ)空間映射到DSP1上,DSP1即可像訪(fǎng)問(wèn)自身本地空間一樣去訪(fǎng)問(wèn)DSP2的存儲(chǔ)空間,方便地實(shí)現(xiàn)數(shù)據(jù)交換。

3測(cè)試驗(yàn)證

  為測(cè)試該信號(hào)處理平臺(tái)的數(shù)據(jù)傳輸及實(shí)時(shí)處理能力,進(jìn)行了如下實(shí)驗(yàn):FPGA通過(guò)GTX接口從前端處理系統(tǒng)讀取一幀脈沖信號(hào)數(shù)據(jù),512點(diǎn)IQ數(shù)據(jù)共512×32×2=32 768 bit,DSP通過(guò)SRIO接口從FPGA中將數(shù)據(jù)讀入內(nèi)存,并啟動(dòng)多個(gè)內(nèi)核同時(shí)進(jìn)行脈內(nèi)調(diào)制特性分析。其中FPGA的GTX為8x模式,波特率10 Gb/s,DSP的SRIO接口為4x模式,波特率6.25 Gb/s,DSP工作主頻設(shè)定為1.2 GHz。通過(guò)CCS軟件程序運(yùn)行時(shí)間記錄功能,對(duì)整個(gè)處理流程的耗時(shí)進(jìn)行測(cè)試,如圖5所示。

012.jpg

  由圖5可以看出,從FPGA開(kāi)始讀取數(shù)據(jù)到數(shù)據(jù)進(jìn)入DSP內(nèi)存共耗時(shí)0.016 251 ms,DSP進(jìn)行脈內(nèi)調(diào)制特性分析耗時(shí)為0.010 375 ms,處理一幀脈沖信號(hào)總時(shí)間約26 μs。

4結(jié)束語(yǔ)

  本文從硬件設(shè)計(jì)方面介紹了一種高速實(shí)時(shí)信號(hào)處理平臺(tái)的實(shí)現(xiàn)方法,基于Xilinx公司Kintex7系列 FPGA以及TI公司多核DSP芯片TMS320C6678構(gòu)建系統(tǒng),對(duì)電源電路、時(shí)鐘電路以及芯片互聯(lián)方案進(jìn)行了詳細(xì)設(shè)計(jì)及測(cè)試。采用高速串行接口實(shí)現(xiàn)芯片間數(shù)據(jù)交換,基于多核DSP并行運(yùn)算提高計(jì)算效率,解決了寬帶偵察接收機(jī)系統(tǒng)中海量數(shù)據(jù)傳輸與實(shí)時(shí)信號(hào)處理速度的瓶頸問(wèn)題,可提升偵察接收機(jī)對(duì)密集信號(hào)環(huán)境的適應(yīng)性。該信號(hào)處理平臺(tái)具有數(shù)據(jù)傳輸帶寬大、并行處理能力強(qiáng)、可靠性高等特點(diǎn),可以滿(mǎn)足實(shí)際工程應(yīng)用的需求。

  參考文獻(xiàn)

 ?。?] 龔仕仙,魏璽章,黎湘,等.寬帶數(shù)字信道化接收機(jī)綜述[J].電子學(xué)報(bào),2013,41(5):118-122.

 ?。?] 郝紹杰,何鵬,朱偉峰.雙通道高速數(shù)據(jù)采集處理平臺(tái)的設(shè)計(jì)與實(shí)現(xiàn)[J].計(jì)算機(jī)測(cè)量與控制,2015,23(7):35-39.

 ?。?] 吳斌,楊神化,楊娜,等.基于DSP與FPGA的船用雷達(dá)信息采集卡的設(shè)計(jì)[J].微型機(jī)與應(yīng)用,2015,34(13):31-34.

  [4] 吳敏杰,馮起,袁乃昌.TMS320C6678 DSP的電源設(shè)計(jì)[J].電子設(shè)計(jì)工程,2012,20(6):46-49.

 ?。?] 董淵文,張永軍,高曉亮,等.基于TMS320C6678多核DSP的分布式通信系統(tǒng)[J].微型機(jī)與應(yīng)用,2014,33(13):74-76.

 ?。?] 李鑫,姜明.多核DSP高速實(shí)時(shí)信號(hào)處理系統(tǒng)設(shè)計(jì)[J].光學(xué)技術(shù),2012,38(1):55-60.

  [7] SPRUGW1.KeyStone architecture SerialRapidIO (SRIO) user guid[Z].Texas Instrunments,2010.

 ?。?] SPRUGW8.KeyStone architecture HyperLink user guid[Z]. Texas Instrunments,2010.


此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。