DSP 6678 多核EDMA的使用


 

 

 

 

 

 

 

 

使用EDMA多增加使用的頭文件

 

 

 

以core1舉例說明

首先在主函數里面對EDMA進行初始化,初始化函數用的是KeyStone_common.c中的初始化函數,並且沒有修改他。

問題

這里有疑問查閱資料有的地方說要初始化EDMA中斷,還有什么事件,我這里使用的時候好像都沒用到中斷事件?

 

 

 

 

 

 

 

問題

core1~4這樣選擇CC和 TC是否正確?應該如何配置?

我目前了解到的是CC0是用於MSMC和DDR3的數據讀寫,CC1,CC2用於外部存儲設備和各個core片內存儲設備的數據讀寫。

 

EDMA傳輸函數

 

 

其中一共要循環讀取793次,每次讀取數據量為4*512*2*2*4B,因為我們需要實現的功能要求一批數據為512*2*2*4B,但是經過實際測量,EDMA這個函數,數據量讀取的越大,吞吐量越接近TI官方手冊說的理論值。所以我們一次選擇讀取4批數據到L2內,進行分離。

具體參數為:

DDR_start_SRC+gate_num_2_i*4*512*2*2*4 :為從DDR3讀取數據的SRC地址。每次讀取都要變化增量偏移一次。

問題

查閱TI官方給的EDMA手冊知道,

 

 

那么想知道我們這種寫SRC地址的方法是否就是手冊說的 增量地址。還是應該有其他寫法更合理?

 

還有,每個核我都是這么寫的,沒有涉及手冊說的什么優先級,中斷,不知道實際用起來安全性和穩定性怎么樣?想知道怎么測試安全性穩定性

 

最后一個問題問題就是,我想要用EDMA從L2寫數據到MSMC可行嗎?因為我目前查到的資料都是說明都是DDR3~MSMC或者外部寄存器到L2。(四個核同時並行調用EDMA)

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM