新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > TMS320C6678存儲器訪問性能 (下)

TMS320C6678存儲器訪問性能 (下)

作者: 時間:2015-06-27 來源:網(wǎng)絡 收藏

  1. DMA訪問的性能

本文引用地址:http://butianyuan.cn/article/276393.htm

  EDMA3架構(gòu)支持很多功能,可以實現(xiàn)高效的并行數(shù)據(jù)傳輸。本節(jié)討論影響它性能的很多因素,如類型,地址偏移等。

  1.1 DMA傳輸?shù)念~外開銷

  一般的傳輸時延被定義為EDMA被觸發(fā)到真正的數(shù)據(jù)傳輸開始的時間。由于數(shù)據(jù)傳輸開始的時間無法用簡單的方法測量,所以我們用最小數(shù)據(jù)單元的傳輸完成時間來代表DMA傳輸?shù)臅r延或額外開銷。根據(jù)不同源/目的地址的組合,這個值會有所不同。表4列出了在1GHz C6678 EVM(64-bit 1333MTS DDR)上測得的從EDMA觸發(fā)(寫ESR)最小數(shù)據(jù)傳輸(1 word)到EDMA 傳輸結(jié)束(讀到IPR=1) 的平均的時鐘周期數(shù)。

  

 

  表4 EDMA CC0傳輸?shù)念~外開銷

  

 

  表5 EDMA CC1和EDMA CC2傳輸?shù)念~外開銷

  由于EDMA CC0 連接到離SL2 和DDR 比較近的內(nèi)部總線交換網(wǎng)絡,因此它訪問SL2 和DDR 額外開銷比較小。而EDMA CC1 和CC2 連接到離DSP 核的L1 和LL2 比較近的內(nèi)部總線交換網(wǎng)絡,所以它們訪問L1 和LL2 的額外開銷比較小。

  IDMA 一般用來在LL2 內(nèi)部拷貝數(shù)據(jù),測試得到的IDMA 的平均額外開銷是61 個時鐘周期。

  傳輸?shù)念~外開銷是小數(shù)據(jù)量傳輸要考慮的重要因素。單個數(shù)據(jù)單元的傳輸時間完全由DMA 的額外開銷決定。所以,對于小數(shù)據(jù)量的拷貝,我們需要在用DMA 和用DSP 核之間做權(quán)衡選擇。

  1.2 EDMA 10 個傳輸引擎的區(qū)別

  C6678 上包含10 個EDMA3 TC (Transfer Controller) 。這10 個傳輸引擎并不完全相同。Table 6 總結(jié)了它們之間的區(qū)別。

  

 

  表6 EDMA 傳輸引擎之間的區(qū)別

  表7 比較了在1GHz C6678 EVM(64-bit 1333MTS DDR)上測得的各個EDMA TC 的最大吞吐量。測試的參數(shù)是ACNT=1024,BCNT=128,AB_Sync(一次傳完ACNTxBCNT)。

  

 

  表7 1GHz C6678 上EDMA TC 吞吐量比較

  對SL2 和DDR 之間的傳輸,TC0_0 和TC0_1 能達到的吞吐量是其它TC 的兩倍。在本文其它部分,如果沒有特殊說明,EDMA 性能數(shù)據(jù)都是在TC0_0 上測得的。

  1.3 EDMA 帶寬和傳輸靈活性的權(quán)衡

  EDMA3 支持很多靈活的傳輸參數(shù)配置。多數(shù)配置情況下EDMA 可以充分利用帶寬;但在某些情況下,傳輸性能可能會有所下降。為了設計高效的系統(tǒng),我們需要理解什么樣的配置能夠?qū)崿F(xiàn)高效的傳輸,而某些情況下必須在靈活性和效率之間做權(quán)衡。

  1.3.1 第一維大小 (ACNT) 的考慮(突發(fā)數(shù)據(jù)塊大小)

  為了充分利用傳輸引擎的帶寬,傳輸盡量大的數(shù)據(jù)塊是非常重要的。

  為了充分利用128-bit 或256-bit 的總線,ACNT 應該是16 bytes 的整數(shù)倍;為了充分利用EDMA的突發(fā)數(shù)據(jù)塊,ACNT 需要是64 bytes 的整數(shù)倍;為了充分利用EDMA FIFO,ACNT 應該至少是512 bytes。

  圖7 畫出了在1GHz C6678 EVM(64-bit 1333MTS DDR)上,從SL2 到DDR 傳輸1~24K bytes 數(shù)據(jù)時測得的吞吐量。

  

 

  圖7 ACNT 對EDMA 效率的影響

  從測試結(jié)果可以看出,ACNT 越大,帶寬的利用率越高。

  1.3.2 二維傳輸?shù)目紤](傳輸優(yōu)化)

  如果2D 傳輸 (AB_Sync)是線性的 (BIDX=ACNT),并且ACNT 是2 的冪次方,EDMA 會把這個2D 傳輸優(yōu)化為1D 傳輸。我們在1GHz C6678 EVM(64-bit 1333MTS DDR)上測試了不同的ACNT 和BCNT 的組合;圖 8是線性2D 傳輸?shù)臏y試結(jié)果,它說明,不管BCNT 是多少,帶寬由ACNTxBCNT 的乘積決定。

  

 

  圖8 線性 2D 傳輸

  如果2D 傳輸不是線性的,帶寬的利用率完全有ACNT 決定(參見圖 7)。

存儲器相關文章:存儲器原理



上一頁 1 2 3 4 下一頁

關鍵詞: TMS320C6678 存儲器

評論


相關推薦

技術專區(qū)

關閉