• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      TMS320C6678中的高速串行接口RapidIO研究

      2017-06-27 08:08:46盧建章劉洋
      關(guān)鍵詞:傳輸層物理層中斷

      盧建章,劉洋

      (1.中航工業(yè)雷華電子技術(shù)研究所,無(wú)錫 214063;2.江南計(jì)算技術(shù)研究所)

      TMS320C6678中的高速串行接口RapidIO研究

      盧建章1,劉洋2

      (1.中航工業(yè)雷華電子技術(shù)研究所,無(wú)錫 214063;2.江南計(jì)算技術(shù)研究所)

      本文從嵌入式多核處理器之間高速數(shù)據(jù)通信的應(yīng)用出發(fā),結(jié)合對(duì)TI的TMS320C6678多核DSP的認(rèn)識(shí),開展了對(duì)RapidIO(SRIO)接口協(xié)議和TMS320C6678 SRIO模塊結(jié)構(gòu)的研究。并在此基礎(chǔ)上,工程實(shí)現(xiàn)了TMS320C6678片間SRIO通信的詳細(xì)配置過(guò)程,并對(duì)其通信性能進(jìn)行了評(píng)測(cè)分析,為多核DSP系統(tǒng)級(jí)通信的設(shè)計(jì)提供了一定的參考。

      TMS320C6678;RapidIO;處理器間通信

      引 言

      為了實(shí)現(xiàn)高性能的嵌入式系統(tǒng),由Mercury和Freescale共同研發(fā)的RapidIO互連技術(shù)發(fā)展起來(lái),其具有高傳輸效率、低系統(tǒng)成本和高可靠性等特點(diǎn),RapidIO協(xié)議為嵌入式系統(tǒng)各器件之間提供高帶寬、低延時(shí)的數(shù)據(jù)傳輸,并且可以支持板到板、芯片到芯片間的通信。

      2010年11月,TI公司發(fā)布了KeyStone結(jié)構(gòu)的8核DSP處理器TMS320C6678,其每個(gè)C66x內(nèi)核主頻最高達(dá)1.25 GHz,可以提供每秒高達(dá)40 GB MAC定點(diǎn)運(yùn)算和20 GB FLOP浮點(diǎn)運(yùn)算能力[1];該芯片中集成了一個(gè)兼容于RapidIO互聯(lián)規(guī)范REV2.1.1的4通道的SRIO模塊,可配置成1x, 2x, 4x模式,每通道支持1.25 Gbps、2.5 Gbps、3.125 Gbps和5 Gbps的傳輸速率[1]。SRIO的數(shù)據(jù)格式默認(rèn)采用大端格式,支持8b/16b的設(shè)備ID、組播ID,同時(shí)額外支持錯(cuò)誤管理、阻塞控制,為實(shí)現(xiàn)系統(tǒng)級(jí)的互聯(lián)提供了可行方案。適用于諸如雷達(dá)信號(hào)處理等對(duì)定浮點(diǎn)運(yùn)算能力以及大數(shù)據(jù)通信有較高要求的超高性能計(jì)算應(yīng)用。

      基于以上分析,本文針對(duì)TMS320C6678多核處理器,首先介紹了SRIO的傳輸協(xié)議,分析TMS320C6678的SRIO收發(fā)模型和配置過(guò)程,并對(duì)其傳輸帶寬進(jìn)行了評(píng)測(cè),為多處理器系統(tǒng)的設(shè)計(jì)提供了一定的參考。

      1 SRIO協(xié)議簡(jiǎn)介

      RapidIO技術(shù)是一種基于協(xié)議包格式的互聯(lián)技術(shù),在TMS320C6678芯片手冊(cè)中,通常把RapidIO稱為SRIO,為DSP之間提供一種高帶寬、低延遲、低系統(tǒng)成本的通信,是系統(tǒng)互連的最佳選擇之一,下面分析SRIO的協(xié)議構(gòu)成。

      1.1 SRIO協(xié)議概述

      圖1 SRIO協(xié)議層次結(jié)構(gòu)圖

      為了滿足靈活性和可擴(kuò)展性的要求,SRIO協(xié)議可分為三層:邏輯層、傳輸層和物理層,如圖1所示。邏輯層位于頂層,定義了在應(yīng)用程序中如何通信、包格式、為端點(diǎn)器件發(fā)起完成事務(wù)提供信息,它支持DirectI/O、消息傳遞和全局共享存儲(chǔ)。傳輸層位于中間層,數(shù)據(jù)傳輸?shù)牡刂房臻g和傳輸包所需的路由信息由它來(lái)定義。物理層位于底層,定義了設(shè)備級(jí)接口、報(bào)文傳輸、流量控制、電氣特性、底層錯(cuò)誤處理等[2]。

      1.2 SRIO協(xié)議包

      SRIO是基于包交換的數(shù)據(jù)傳輸協(xié)議。一個(gè)傳輸包由屬于邏輯層、傳輸層和物理層的數(shù)據(jù)域組成。邏輯層域由包頭(定義入口類型)和有效載荷(即數(shù)據(jù))組成。傳輸層域從物理布局上來(lái)說(shuō),在某種意義上是獨(dú)立的,由發(fā)送和接收設(shè)備的源ID號(hào)和目的ID號(hào)等組成。物理層在物理接口上是獨(dú)立的,包含優(yōu)先級(jí)、信息確認(rèn)和錯(cuò)誤檢測(cè)域。SRIO協(xié)議包如圖2所示。

      圖2 SRIO協(xié)議包

      圖3 SRIO的數(shù)據(jù)流圖

      數(shù)據(jù)包最外層為物理層字段,最內(nèi)層為邏輯層字段,中間的為傳輸層字段,圖2中的數(shù)字為字節(jié)數(shù)。其中S字段用來(lái)表示該包是一個(gè)數(shù)據(jù)包還是一個(gè)控制符號(hào)。ackID是鏈路級(jí)包鑒定符,即包序列號(hào),每發(fā)送一個(gè)包,ackID加1。Prio為優(yōu)先級(jí)字段,tt、目的地址和源地址表示傳輸?shù)刂返念愋停窗邮蘸彤a(chǎn)生地址是8位還是16位。Ftype代表被請(qǐng)求的事務(wù)類型,不同類型的SRIO包協(xié)議也略有不同。長(zhǎng)度為編碼后的事務(wù)長(zhǎng)度,SRIO最多允許256個(gè)待完成事務(wù)。在源事務(wù)ID之后是器件偏移地址。后面接著有效數(shù)據(jù)載荷,再以16位循環(huán)冗余校驗(yàn)碼(CRC)結(jié)束,接收端通過(guò)CRC校驗(yàn)碼來(lái)判斷這個(gè)包是否正確。

      2 TMS320C6678中SRIO實(shí)現(xiàn)

      TMS320C6678是一款處理能力很強(qiáng)的新型高性能多核DSP,相比于之前的芯片,集成了豐富的外設(shè),如PCI總線端口、千兆以太網(wǎng)端口、64位無(wú)縫外部存儲(chǔ)器端口、HyperLink端口等,最重要的是增加了對(duì)SRIO支持的模塊。

      2.1 SRIO模塊簡(jiǎn)介

      TMS320C6678芯片的SRIO接口是一個(gè)外部驅(qū)動(dòng)的從設(shè)備模塊,同時(shí)能夠在DSP芯片內(nèi)作為一個(gè)主設(shè)備。這意味著外部設(shè)備可以根據(jù)需求傳輸(突發(fā)寫入)數(shù)據(jù)到DSP內(nèi)部,而無(wú)需向CPU發(fā)送中斷或依賴DSP 芯片的EDMA資源。這種機(jī)制既降低了系統(tǒng)的中斷個(gè)數(shù),又減少了與只讀外設(shè)的握手操作,同時(shí)還釋放了 EDMA資源以便其他任務(wù)使用。

      SRIO外設(shè)模塊的數(shù)據(jù)流如圖3所示。當(dāng)接收數(shù)據(jù)包時(shí),高速數(shù)據(jù)包在物理層依次進(jìn)行時(shí)鐘恢復(fù)、串并轉(zhuǎn)換、8b/10b解碼,并將之緩存在各個(gè)端口的緩存區(qū),最后進(jìn)行 CRC 錯(cuò)誤檢測(cè);相反,當(dāng)發(fā)送數(shù)據(jù)包時(shí),數(shù)據(jù)包首先進(jìn)行 CRC 生成,經(jīng)過(guò)各個(gè)端口的緩存區(qū)后依次進(jìn)行8b/10b編碼、并串轉(zhuǎn)換,最后到達(dá)發(fā)送端口。數(shù)據(jù)包在邏輯層與物理層間通過(guò)發(fā)送共享緩存區(qū)和接收緩存區(qū)進(jìn)行過(guò)渡,最后到達(dá)邏輯層的數(shù)據(jù)包,整個(gè)包已被解碼,負(fù)載數(shù)據(jù)已被緩存,根據(jù)接收的數(shù)據(jù)包類型的不同,包的進(jìn)一步操作通過(guò)功能模塊來(lái)實(shí)現(xiàn),其中LSU(Load/Stone Unit)負(fù)責(zé)控制發(fā)送DirectI/O模式的數(shù)據(jù)包,MAU(Memory Access Unit)負(fù)責(zé)控制接收DirectI/O模式的數(shù)據(jù)包,TXU負(fù)責(zé)控制發(fā)送消息傳遞模式的數(shù)據(jù)包,RXU負(fù)責(zé)控制接收消息傳遞模式的數(shù)據(jù)包。這4個(gè)單元通過(guò)內(nèi)部DMA與DSP芯片的存儲(chǔ)器進(jìn)行通信,通過(guò)緩存區(qū)和接收發(fā)送端口與外部設(shè)備通信。

      2.2 SRIO操作實(shí)現(xiàn)

      SRIO操作是通過(guò)包的傳輸完成的。在C6678中關(guān)于SRIO的操作主要分為DirectI/O和Doorbell這兩大類。通過(guò)對(duì)LSU寄存器進(jìn)行配置,從而完成操作。DirectI/O包括了NREAD、NWRITE、NWRITE_R、SWRITE、Maintenance Read和Maintenance Write這幾種協(xié)議。對(duì)于DirectI/O而言,數(shù)據(jù)傳輸和DMA傳輸是結(jié)合的。此DMA為SRIO模塊中的內(nèi)部引擎,當(dāng)發(fā)起SRIO操作時(shí),DMA將會(huì)自行啟動(dòng)。DirectI/O操作分為主、從兩種模式。當(dāng)DSP工作在主模式下時(shí),DSP需要知道外部相連器件的ID號(hào)以及存儲(chǔ)器地址映射情況,從而發(fā)起讀/寫操作。若DSP工作在從模式下,DSP無(wú)需知道其他外部芯片的邏輯地址情況,讀寫操作都由主設(shè)備發(fā)起,通過(guò)DMA完成。Doorbell 協(xié)議包不包含數(shù)據(jù)負(fù)載,是一種用于器件間響應(yīng)中斷的協(xié)議,如圖4所示。

      圖4 Doorbell包結(jié)構(gòu)

      在Doorbell操作中,存在著一個(gè)Drbll_Info的結(jié)構(gòu),Drbll_Info分為16位,由Doorbell的發(fā)送方置位。Doorbell的接收方可以在中斷服務(wù)程序中,讀取ICCR寄存器的值,此時(shí)ICCR中的值會(huì)根據(jù) Drbll_Info的值,在相應(yīng)的位上進(jìn)行置位。這樣通過(guò) Drbll_Info便可以發(fā)送不同的指令。

      TMS320C6678的SRIO模塊設(shè)計(jì)以寄存器為基礎(chǔ),通過(guò)調(diào)用TI公司軟件開發(fā)工具PDK中的底層庫(kù)(CSL)驅(qū)動(dòng)和SRIO模塊驅(qū)動(dòng)進(jìn)行程序設(shè)計(jì)。SRIO模塊的驅(qū)動(dòng)程序初始化按以下步驟設(shè)置[3-4]:

      ① 端口使能:使能內(nèi)部發(fā)送(LSU,TXU)與接收(MAU,RXU)模塊。

      ② SerDes初始化:參考時(shí)鐘以及傳輸速度初始化,相連器件間需要配置相同的參考時(shí)鐘,傳輸速度有1.25 Gbps、2.5 Gbps、3.125 Gbps和5 Gbps。

      ③ 傳輸模式初始化:Lane可以配置為1x、2x或4x,設(shè)置鎖相環(huán)PLL和設(shè)備ID。

      ④ 中斷初始化:初始化Doorbell中斷,將其映射到核內(nèi)中斷向量上。

      按照上述步驟完成配置后,在SRIO接收到Doorbell中斷時(shí),接收DSP即跳入中斷服務(wù)程序,完成門鈴響應(yīng)。

      3 性能測(cè)試

      本節(jié)對(duì)SRIO傳輸?shù)男阅苓M(jìn)行實(shí)測(cè)評(píng)估,并提供在不同的操作條件下獲得的性能測(cè)試數(shù)據(jù)。大部分測(cè)試是在最理想的測(cè)試條件進(jìn)行,以評(píng)估可以獲得的最大吞吐量。處理器運(yùn)行的頻率設(shè)置為1 GHz,DDR配置成64位,位寬1333 M,采用的編譯環(huán)境是TI公司的CCSv5.0。

      圖5 SRIO的傳輸帶寬

      圖5表述SRIO在不同類型的存儲(chǔ)空間之間的傳輸速率隨著數(shù)據(jù)塊的增大,一直呈現(xiàn)上升趨勢(shì)。

      表1是DSP核以DirectI/O模式的SWRITE方式通過(guò)SRIO從本地LL2、SL2和DDR3分別訪問(wèn)遠(yuǎn)端LL2、SL2和DDR3,每次發(fā)送數(shù)據(jù)量為8 KB,發(fā)送多次取平均所得的傳輸帶寬。由于SRIO本身具備硬件糾錯(cuò)功能,當(dāng)檢測(cè)到數(shù)據(jù)傳輸錯(cuò)誤后會(huì)自動(dòng)重傳,造成帶寬的損耗,另外,背板的硬件電氣特性也會(huì)直接影響到實(shí)測(cè)的帶寬,這些因素均會(huì)造成實(shí)測(cè)帶寬與理論帶寬的差距。

      表1 DSP核通過(guò)SRIO實(shí)現(xiàn)8 KB數(shù)據(jù)傳輸帶寬

      結(jié) 語(yǔ)

      [1] Texas Instruments Inc.Multicore design overview,2011.

      [2] Sam Fuller.RapidIO:The embedded system interconnect[M].Hoboken:John Wiley&Sons,2005.

      [3] Texas Instruments Inc.TMS320C6678 data manual,2011.

      [4] Texas Instruments Inc.KeyStone Architecture Serial RapidIO User Guid,2012.

      盧建章(工程師),主要研究方向?yàn)槔走_(dá)信號(hào)處理、嵌入式信號(hào)處理系統(tǒng);劉洋(工程師),主要研究方向?yàn)樾畔踩?/p>

      Research on High-speed Serial Interface RapidIO in TMS320C6678

      Lu Jianzhang1,Liu Yang2

      (1.AVIC Leihua Electronic Technology Research Institute,Wuxi 214063,China;2. Jiangnan Computing Technology Research Institute)

      Based on the application of high-speed data communication between embedded multi-core processors and the knowledge of TMS320C6678 multi-core DSP,the research on RapidIO interface protocol and TMS320C6678 SRIO module structure is carried out.The detailed configuration process of SRIO communication between TMS320C6678 chips is achieved,and its communication performance is analyzed and evaluated.It provides some reference for multi-core DSP system-level communication design.

      TMS320C6678;RapidIO;inter-processor communication

      TN915.04

      A

      ?士然

      2017-02-13)

      猜你喜歡
      傳輸層物理層中斷
      基于K-ML-MPWFRFT的物理層安全傳輸技術(shù)
      基于Python語(yǔ)言的網(wǎng)絡(luò)傳輸層UDP協(xié)議攻擊性行為研究
      ZnO電子傳輸層在有機(jī)無(wú)機(jī)雜化鈣鈦礦太陽(yáng)能電池中的應(yīng)用
      公路聯(lián)網(wǎng)電子不停車收費(fèi)系統(tǒng)路側(cè)單元物理層自動(dòng)測(cè)試軟件研發(fā)
      物聯(lián)網(wǎng)無(wú)線通信傳輸層動(dòng)態(tài)通道保障機(jī)制
      基于物聯(lián)網(wǎng)GIS的消防智能巡檢系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)
      跟蹤導(dǎo)練(二)(5)
      千里移防,衛(wèi)勤保障不中斷
      解放軍健康(2017年5期)2017-08-01 06:27:44
      多天線物理層安全傳輸系統(tǒng)性能分析
      1Gbps電力線載波通信物理層算法設(shè)計(jì)
      邻水| 洛阳市| 贵港市| 邛崃市| 泽州县| 西昌市| 丹阳市| 平安县| 库伦旗| 喀喇沁旗| 柯坪县| 方城县| 平陆县| 南丹县| 沛县| 陇西县| 闵行区| 黄平县| 乌鲁木齐市| 罗定市| 论坛| 蒙阴县| 报价| 抚州市| 天镇县| 儋州市| 台东市| 读书| 平乐县| 哈巴河县| 屯留县| 金乡县| 自贡市| 汤原县| 蒙阴县| 灵武市| 沾益县| 雷州市| 靖西县| 曲麻莱县| 中方县|