溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

EDMA3淺析

發(fā)布時(shí)間:2020-04-04 01:53:05 來源:網(wǎng)絡(luò) 閱讀:1249 作者:鬼見愁2999 欄目:軟件技術(shù)

1. EDMA3概述

基于C66x的內(nèi)核處理器主要具有兩種DMA傳輸:IDMAEDMA3。

IDMA:只提供核內(nèi)部(L1P、L1DL2、CFG)的數(shù)據(jù)移動(dòng)服務(wù)。

EDMA3:實(shí)現(xiàn)器件上兩個(gè)存儲(chǔ)器映射的從終端(Slave Endpoint)之間的數(shù)據(jù)傳輸(如DDR3、MSM SRAM、L2)。

EDMA3控制器由用戶設(shè)定,服務(wù)于器件上兩個(gè)存儲(chǔ)器映射的從終端之間的數(shù)據(jù)傳輸;服務(wù)于軟件驅(qū)動(dòng)的頁傳輸(例如,在外部存儲(chǔ)器和內(nèi)部存儲(chǔ)器之間),執(zhí)行分解或子幀取出多種數(shù)據(jù)結(jié)構(gòu),服務(wù)事件驅(qū)動(dòng)的外圍設(shè)備并減輕器件CPU數(shù)據(jù)傳輸任務(wù)。

2. EDMA3淺析

2.1      EDMA3構(gòu)成

C6678處理器中,IDMA具有兩個(gè)通道,EDMA具有三個(gè)通道控制器(CC0CC1、CC2)和10個(gè)傳輸控制器(CC0TC0CC0TC1,CC1TC0、CC1TC1、CC1TC2CC1TC3,CC2TC0、CC2TC1、CC2TC2、CC2TC3)。

如圖2-1所示,CC016個(gè)DMA通道,8個(gè)QDMA通道,16個(gè)中斷通道,2個(gè)事件隊(duì)列,2個(gè)傳輸控制TC;CC164個(gè)DMA通道,8個(gè)QDMA通道,64個(gè)中斷通道,4個(gè)事件隊(duì)列,4個(gè)傳輸控制TC;CC264個(gè)DMA通道,8個(gè)QDMA通道,64個(gè)中斷通道,4個(gè)事件隊(duì)列,4個(gè)傳輸控制TC。

EDMA3淺析

2-1 EDMA3 CC資源圖

每個(gè)TC的資源情況如圖2-2所示。

EDMA3淺析

2-2 EDMA3 TC資源圖

 

2.2      功能用法

CC0被優(yōu)化用于內(nèi)部MSMCMulticore Shared Memory ControllerDDR3子系統(tǒng)之間的數(shù)據(jù)傳輸,CC1、CC2被用作系統(tǒng)外圍設(shè)備和在系統(tǒng)存儲(chǔ)器間移動(dòng)數(shù)據(jù)等其他傳輸。

每個(gè)CC有兩種通道類型:DMA通道和QDMA通道。每個(gè)通道與一個(gè)給定的事件隊(duì)列、傳輸控制器相關(guān),并與一個(gè)給定的PaRAM參數(shù)集相關(guān)。

DMA通道和QDMA通道的主要區(qū)別在于傳輸是如何被系統(tǒng)觸發(fā)的。

DMA通道傳輸必需一個(gè)觸發(fā)事件。QDMA通道傳輸只需設(shè)定好觸發(fā)字即可自動(dòng)觸發(fā)。

每個(gè)事件隊(duì)列深度是16,同一時(shí)刻最多支持16個(gè)傳輸事件。

每個(gè)DMA、QDMA通道分配到的事件隊(duì)列是可編程的。

如果在不同的通道上,事件同時(shí)被檢測(cè),事件隊(duì)列會(huì)基于一個(gè)固定優(yōu)先級(jí)仲裁機(jī)制仲裁。DMA通道具有比QDMA通道更高的優(yōu)先級(jí)。最小編號(hào)的通道最有最高優(yōu)先級(jí)。

每個(gè)事件在事件隊(duì)列中按照FIFO順序被處理。

DMAQDMAchannel可以統(tǒng)一一起連續(xù)編號(hào),TI就是如此處理的。

  Global Region和Shadow Region的區(qū)別:當(dāng)使用Global Region配置EDMA時(shí),所有內(nèi)核都會(huì)響應(yīng);當(dāng)使用Shadow Region時(shí),通過DRAE/DRAEH(對(duì)于DMA)和QRAE/QRAEH(對(duì)于QDMA)寄存器將不想觸發(fā)的事件屏蔽,這樣即使系統(tǒng)中的事件觸發(fā)了,Shadow Region中對(duì)應(yīng)的事件也不會(huì)觸發(fā)。當(dāng)使用global region配置EDMA時(shí),所有的core都會(huì)響應(yīng),這樣就存在某些core不想使用的event也會(huì)被觸發(fā),如果使用shadow region,通過DRE/DREH將不想觸發(fā)的event屏蔽,這樣即便系統(tǒng)中對(duì)應(yīng)的event觸發(fā)了,shadow region中的event也不會(huì)觸發(fā)。


向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI