1. DMA訪問存儲器的性能
EDMA3架構支持很多功能,可以實現高效的并行數據傳輸。本節討論影響它性能的很多因素,如存儲器類型,地址偏移等。
1.1 DMA傳輸的額外開銷
一般的傳輸時延被定義為EDMA被觸發到真正的數據傳輸開始的時間。由于數據傳輸開始的時間無法用簡單的方法測量,所以我們用最小數據單元的傳輸完成時間來代表DMA傳輸的時延或額外開銷。根據不同源/目的地址的組合,這個值會有所不同。表4列出了在1GHz C6678 EVM(64-bit 1333MTS DDR)上測得的從EDMA觸發(寫ESR)最小數據傳輸(1 word)到EDMA 傳輸結束(讀到IPR=1) 的平均的時鐘周期數。
表4 EDMA CC0傳輸的額外開銷
表5 EDMA CC1和EDMA CC2傳輸的額外開銷
由于EDMA CC0 連接到離SL2 和DDR 比較近的內部總線交換網絡,因此它訪問SL2 和DDR 額外開銷比較小。而EDMA CC1 和CC2 連接到離DSP 核的L1 和LL2 比較近的內部總線交換網絡,所以它們訪問L1 和LL2 的額外開銷比較小。
IDMA 一般用來在LL2 內部拷貝數據,測試得到的IDMA 的平均額外開銷是61 個時鐘周期。
傳輸的額外開銷是小數據量傳輸要考慮的重要因素。單個數據單元的傳輸時間完全由DMA 的額外開銷決定。所以,對于小數據量的拷貝,我們需要在用DMA 和用DSP 核之間做權衡選擇。
1.2 EDMA 10 個傳輸引擎的區別
C6678 上包含10 個EDMA3 TC (Transfer Controller) 。這10 個傳輸引擎并不完全相同。Table 6 總結了它們之間的區別。
表6 EDMA 傳輸引擎之間的區別
表7 比較了在1GHz C6678 EVM(64-bit 1333MTS DDR)上測得的各個EDMA TC 的最大吞吐量。測試的參數是ACNT=1024,BCNT=128,AB_Sync(一次傳完ACNTxBCNT)。
表7 1GHz C6678 上EDMA TC 吞吐量比較
對SL2 和DDR 之間的傳輸,TC0_0 和TC0_1 能達到的吞吐量是其它TC 的兩倍。在本文其它部分,如果沒有特殊說明,EDMA 性能數據都是在TC0_0 上測得的。
1.3 EDMA 帶寬和傳輸靈活性的權衡
EDMA3 支持很多靈活的傳輸參數配置。多數配置情況下EDMA 可以充分利用存儲器帶寬;但在某些情況下,傳輸性能可能會有所下降。為了設計高效的系統,我們需要理解什么樣的配置能夠實現高效的傳輸,而某些情況下必須在靈活性和效率之間做權衡。
1.3.1 第一維大小 (ACNT) 的考慮(突發數據塊大小)
為了充分利用傳輸引擎的帶寬,傳輸盡量大的數據塊是非常重要的。
為了充分利用128-bit 或256-bit 的總線,ACNT 應該是16 bytes 的整數倍;為了充分利用EDMA的突發數據塊,ACNT 需要是64 bytes 的整數倍;為了充分利用EDMA FIFO,ACNT 應該至少是512 bytes。
圖7 畫出了在1GHz C6678 EVM(64-bit 1333MTS DDR)上,從SL2 到DDR 傳輸1~24K bytes 數據時測得的吞吐量。
圖7 ACNT 對EDMA 效率的影響
從測試結果可以看出,ACNT 越大,帶寬的利用率越高。
1.3.2 二維傳輸的考慮(傳輸優化)
如果2D 傳輸 (AB_Sync)是線性的 (BIDX=ACNT),并且ACNT 是2 的冪次方,EDMA 會把這個2D 傳輸優化為1D 傳輸。我們在1GHz C6678 EVM(64-bit 1333MTS DDR)上測試了不同的ACNT 和BCNT 的組合;圖 8是線性2D 傳輸的測試結果,它說明,不管BCNT 是多少,帶寬由ACNTxBCNT 的乘積決定。
圖8 線性 2D 傳輸
如果2D 傳輸不是線性的,帶寬的利用率完全有ACNT 決定(參見圖 7)。
-
存儲器
+關注
關注
38文章
7632瀏覽量
166359 -
TMS320C6678
+關注
關注
3文章
39瀏覽量
18460
發布評論請先 登錄
想建立一個TMS320C6678的工程,但是DEVICE選擇的時候沒有TMS320C6678的選項,能指點一下嗎?
TMS320C6678 連接CMOS攝像頭的接口,請問是將攝像頭連接到TMS320C6678的哪個端口?
請問tms320c6678在CPCI板卡上如何設計
TI TMS320C6678是什么?有何功能
TMS320C6678的相關資料推薦
TI推出適合高性能計算的8核DSP產品TMS320C6678/TMS320TCI6609
TMS320C6678視頻編解碼實現
TMS320C6678處理器的VLFFT演示探討與研究

TMS320C6678存儲器訪問性能詳細中文資料

TMS320C6678 多核定點和浮點數字信號處理器

評論