《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 嵌入式技術(shù) > 設(shè)計應(yīng)用 > 基于TMS320C6678多核DSP的分布式通信系統(tǒng)
基于TMS320C6678多核DSP的分布式通信系統(tǒng)
2014年微型機與應(yīng)用第13期
董淵文,,張永軍,高曉亮,,滕 晶
瑞典宜能嵌入式軟件有限公司上海研發(fā)中心,,上海
摘要: 根據(jù)TMS320C6678芯片的特點,針對核間,、片間、板間的通信要求,提出了一種跨系統(tǒng)的透明傳輸模型及實現(xiàn),,并分析了傳輸性能,對基于TMS320C6678的嵌入式軟件系統(tǒng)設(shè)計提供了指導(dǎo),。
Abstract:
Key words :

  摘  要: 根據(jù)TMS320C6678芯片的特點,,針對核間、片間,、板間的通信要求,,提出了一種跨系統(tǒng)的透明傳輸模型及實現(xiàn),并分析了傳輸性能,,對基于TMS320C6678的嵌入式軟件系統(tǒng)設(shè)計提供了指導(dǎo),。

  關(guān)鍵詞: TMS320C6678;多核通信,;平臺軟件

  TMS320C6678是TI公司2010年11月發(fā)布的KeyStone架構(gòu)的8核DSP處理器,,每個CorePac核的頻率最高為1.25 GHz,提供強大的定點和浮點運算能力,,同時芯片內(nèi)部集成了Multicore Navigator,、RapidIO、千兆以太網(wǎng)和EDMA等外設(shè),,由于芯片處理能力強,,外設(shè)功能豐富,而且片內(nèi)集成了大量的硬件加速器,,例如Packet Accelerator,、Multicore Navigator等,被廣泛地應(yīng)用在通信,、雷達,、聲納、火控,、電子對抗等領(lǐng)域,。從目前的情況看,由于C6678的以上優(yōu)異的特性,,基于TMS320C6678的硬件和軟件平臺,,在未來的5~10年內(nèi),將是信號處理平臺主流,。

  雖然TMS320C6678硬件優(yōu)點眾多,,但由于芯片內(nèi)部集成了8核,,而且有大量的外設(shè)及加速器,通常每個板卡單位上有4個TMS320C6678,,相當(dāng)于32個DSP核,,按照一個機架4塊板卡的設(shè)計,這將是一個128個DSP核的陣列,,而且節(jié)點間的連接方式復(fù)雜,,如何簡單、高效,、易調(diào)試地實現(xiàn)128個分布式節(jié)點的通信,,為平臺軟件設(shè)計者提出了極高的要求。

  針對基于TMS320C6678分布式系統(tǒng)的特點,,本文首先分析了TMS320C6678的硬件通信方式及設(shè)計難點,,進而提出了一種基于透明傳輸?shù)姆植际较到y(tǒng)通信方式及實現(xiàn),最后通過實驗給出了性能分析,,為基于TMS320C6678的平臺軟件設(shè)計提供了參考,。

  1 核間、DSP間和板間的傳輸方式

  由于TMS320C6678芯片高度集成的特性,,片內(nèi)除了8個CorePac內(nèi)核外,,還集成了以太網(wǎng)、EDMA,、RapidIO,、PCIe以及Multicore Navigator、Packet Accelerator協(xié)處理器等外設(shè),。

  在多個TMS320C6678的板卡設(shè)計中,,芯片內(nèi)的核間通信,,通常采用共享內(nèi)存或DMA實現(xiàn),,因為TMS320C6678中有專門用于數(shù)據(jù)搬移的協(xié)處理器Multicore Navigator,因此芯片內(nèi)的核間通信用基于硬件隊列協(xié)處理器的CDMA實現(xiàn),。特點是速度快,、效率高,缺點是編程復(fù)雜,,學(xué)習(xí)周期長,。

  在雷達、聲納等應(yīng)用中,,一般在一塊DSP處理板上設(shè)計多個TMS320C6678處理器,,在一個機架上插多塊DSP處理板卡來承載大數(shù)據(jù)量的處理。對于板卡內(nèi)DSP間通信,,以前可能會經(jīng)常采用PCIe的設(shè)計,,但目前的主流設(shè)計,,傾向于采用RapidIO的通信方式,因為雖然PCIe有架構(gòu)簡單,、編程容易等特點,,但是PCIe一般只能用作設(shè)備內(nèi)的通信,而且對于復(fù)雜的陣列節(jié)點間的通信就力不從心,。因此RapidIO這種高效,、可靠、跨設(shè)備的傳輸方式被用作DSP間,、板間傳輸?shù)闹饕绞?。對于大?shù)據(jù)量的傳輸,一般會采用RapidIO type5,、RapidIO type6以及RapidIO type10,、RapidIO type2混合的模式。由于TMS320C6678支持千兆以太網(wǎng)傳輸,,在某些TMS320C6678陣列的板卡設(shè)計中,,例如Advantech DPS8901單板20個TMS320C6678的陣列,DSP間以及CPU和DSP間還會采用基于以太網(wǎng)的傳輸方式,。板卡通信示意圖如圖1所示,。

001.jpg

  綜上,在一個板卡的軟,、硬件系統(tǒng)設(shè)計中,,單位節(jié)點之間交互有如此多的接口和通信路徑,使平臺軟件的設(shè)計和編程工作變得異常復(fù)雜,。比如節(jié)點A和節(jié)點B之間,,底層通過CDMA連接,節(jié)點B和節(jié)點C之間底層通過RapidIO通信,,如果沒有一種好的上層通信機制,,節(jié)點A向節(jié)點C發(fā)送數(shù)據(jù),這一過程是非常繁瑣和復(fù)雜的,,如圖2所示,。

002.jpg

  因此,為解決分布式系統(tǒng)節(jié)點的透明傳輸問題,,本文提出一種跨核,、跨處理器、跨板卡,、跨系統(tǒng)的透明傳輸機制LINX及軟件實現(xiàn),,下面將詳細闡述LINX模塊的機制和通信模式。

  2 統(tǒng)一接口的分布式透明傳輸模式

  針對TMS320C6678板卡設(shè)計中復(fù)雜的底層接口狀況,提出一種點對點的分布式系統(tǒng)節(jié)點間的透明傳輸模型,,稱之為LINX,。

  這一分布式透明節(jié)點間傳輸模型應(yīng)具有以下特性。

 ?。?)統(tǒng)一接口,、使用簡便。從系統(tǒng)架構(gòu)的角度,,LINX設(shè)計為統(tǒng)一應(yīng)用程序接口的中間件模型,,即不管底層是何種傳輸介質(zhì),例如SRIO,、以太網(wǎng),、CDMA等,對于應(yīng)用程序來說,,對于跨介質(zhì)傳輸,,均使用統(tǒng)一的接口函數(shù)。統(tǒng)一通信接口的好處是顯而易見的,,因為對于應(yīng)用程序開發(fā)者,,可以直接調(diào)用統(tǒng)一的接口,跨介質(zhì)進行數(shù)據(jù)的收發(fā),。

 ?。?)跨介質(zhì)傳輸。傳輸模型設(shè)計為分層架構(gòu),,不同的底層鏈路驅(qū)動按照一定的格式,,通過統(tǒng)一抽象的接口例如發(fā)送、接收,、初始化,、查詢、響應(yīng)中斷等基本接口,,與LINX中間件層對接,。對于跨多個節(jié)點的傳輸,提供簡單的鏈路定義及使用的方式,。

 ?。?)錯誤檢測,。具有基本的錯誤檢測功能,,當(dāng)LINX模塊檢測到底層鏈路錯誤時,應(yīng)及時上報給通信節(jié)點,。而且對于不可靠傳輸介質(zhì),,比如基于共享內(nèi)存的通信方式,還需要提供可靠傳輸保證,,例如用心跳機制的發(fā)送/應(yīng)答,,對不可靠的鏈路提供通信安全保證,。

  根據(jù)以上特性,提出的LINX傳輸模型如圖3所示,。自下而上依次是驅(qū)動層,、傳輸層、會話層以及應(yīng)用程序接口,。

003.jpg

  其中驅(qū)動層負責(zé)具體的驅(qū)動鏈路實現(xiàn),;傳輸層負責(zé)與驅(qū)動層接口,底層的監(jiān)控和檢測重傳,;會話層負責(zé)和傳輸層接口,,進行鏈路名管理、鏈路路徑的搜索并提供應(yīng)用程序接口,。

004.jpg

  LINX采用點對點的傳輸模型,,如圖4所示。節(jié)點為TMS320C6678的CorePac核,,節(jié)點A與節(jié)點B之間通過CDMA驅(qū)動通信,,鏈路標識號為n1,那么節(jié)點A上的任務(wù)A給節(jié)點B上的任務(wù)B發(fā)送數(shù)據(jù),,可通過接口寫成Send(n1/B,,&data)。

  同理,,節(jié)點A上的任務(wù)A通過節(jié)點B,,向節(jié)點C上的任務(wù)C發(fā)送數(shù)據(jù),經(jīng)過CDMA和RapidIO兩個鏈路,,分別標識為n1和n2,,那么可通過接口寫成Send(n1/n2/C,&data),。

  由此可見,,在TMS320C6678的陣列中,使用基于LINX中間件架構(gòu)構(gòu)建的分布式系統(tǒng)通信方式,,實現(xiàn)跨介質(zhì)的傳輸,,通信接口非常簡便。對于系統(tǒng)設(shè)計來說,,可達到各個節(jié)點間的無縫傳輸,。由于LINX是基于底層驅(qū)動的中間件管理模塊,在驅(qū)動之上會增加一些負載,,下面是LINX模塊的軟件實現(xiàn),,在TMS320C6678EVM開發(fā)板卡上所做的性能測試實驗,用以評估LINX模塊對傳輸性能的影響。

  3 分布式透明傳輸模式的性能測試

  由于RapidIO在多DSP及多板卡的集群設(shè)備中是最常用的一種接口,,因此以RapidIO為例測試LINX基于RapidIO傳輸在TMS320C6678上的性能,。

  本測試基于標準TMS320C6678EVM開發(fā)板,測試采用OSEck硬實時操作系統(tǒng),,內(nèi)核代碼在L2 Memory上,,其他驅(qū)動、中間層LINX所使用的數(shù)據(jù)區(qū)以及應(yīng)用層所用的內(nèi)存池均位于片外的DDR3存儲器上,,測試的時間周期使用硬件定時器Timer 10(0x022A0000)測量,,TMS320C6678主頻為1 GHz,RapidIO配置為5 Gb/s,、4x模式,,采用DirectIO(SRIO type5/6)方式通信。

  TMS320C6678核0發(fā)送數(shù)據(jù),,核1接收數(shù)據(jù),,1核在收到之后向0核回送,每次測試一個回環(huán)耗時,,測試連續(xù)進行n次,,由發(fā)送端設(shè)置時間戳進行連續(xù)統(tǒng)計測試,統(tǒng)計單位1 cycle等于1 ns,,如表1所示,。

005.jpg

  其中,總耗時為測試n次之后的單向傳輸耗時,;測試次數(shù)為總的測試次數(shù),;每次耗時為每次單向發(fā)送數(shù)據(jù)時,從任務(wù)發(fā)出數(shù)據(jù)到對方節(jié)點收到數(shù)據(jù)所消耗的時間,;消息大小為發(fā)送數(shù)據(jù)塊的大?。籘hroughput為傳輸帶寬,。Throughput的計算公式為(消息大小/(總耗時/測試次數(shù)))×1 000 000 000×8(單位bit/s),。

  按照理論計算,RapidIO 5 Gb/s模式下的去除8 b/10 b編碼后的理論有效帶寬是4 Gb/s,,然后還要去除驅(qū)動,、中間層及應(yīng)用層的系統(tǒng)開銷,最終的實際有效帶寬不超過理論有效帶寬的80%,。

  從測試結(jié)果看,,在采用LINX中間件架構(gòu)構(gòu)建的分布式系統(tǒng)通信方式下,傳輸帶寬隨發(fā)送的數(shù)據(jù)增大而增大,,由于TMS320C6678的RapidIO傳輸硬件限制,,傳輸?shù)臄?shù)據(jù)包最大不超過1 MB。一般采用RapidIO傳輸?shù)臄?shù)據(jù)量是比較大的,,典型情況下在傳輸大于4 KB的數(shù)據(jù)時,,帶寬趨向穩(wěn)定,結(jié)果接近于有效實際帶寬,。

  因此,,采用LINX中間件架構(gòu)構(gòu)建的分布式系統(tǒng),在使用簡便,、跨介質(zhì)傳輸和有效錯誤檢測等優(yōu)點特性的基礎(chǔ)上,,在大數(shù)據(jù)量的傳輸模式下,性能接近于直接驅(qū)動模式,。

  目前TMS320C6678芯片被越來越廣泛地使用在通信,、雷達、聲納,、電子對抗等領(lǐng)域,,由于系統(tǒng)設(shè)計日益復(fù)雜,通信接口多樣,,需要分布式的透明傳輸中間件模塊,,把系統(tǒng)中幾十個乃至上百個TMS320C6678內(nèi)核節(jié)點無縫連接起來。針對TMS320C6678核間,、片間,、板間的通信要求,本文提出了一種稱為LINX的分布式系統(tǒng)節(jié)點間的透明傳輸模型,,提供了實現(xiàn)方法及性能測試數(shù)據(jù),,為基于TMS320C6678芯片的系統(tǒng)軟件設(shè)計提供了參考。

  參考文獻

  [1] Texas Instrument TMS320C6678 Multicore Fixed and Floating-Point Digital Signal Processor[R]. SPRS691,, 2010.

  [2] KeyStone architecture serial RapidIO(SRIO) user guide[R]. SPRUGW1,,2010.

  [3] 彭益智.一種基于TMS320C6678的JPEG編碼算法并行實現(xiàn)方法[J].指揮控制與仿真,2012,,34(1):121.

  [4] 鄭章汝.基于TMS320C6678的雷達信號處理機設(shè)計[J].工業(yè)控制計算機,,2012,25(11):14.

  [5] 齊恩勇.基于多核處理器的彈載嵌入式系統(tǒng)設(shè)計研究[J].電子設(shè)計工程,,2013,,21(6):105.



如需購買,請直接點擊,,官方大促75折


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