1、參考https://forums.xilinx.com/t5/%E5%B5%8C%E5%85%A5%E5%BC%8F-%E7%A1%AC%E4%BB...
按照官方說明,copy數(shù)據(jù)速率基本為系統(tǒng)ddr的帶寬。
2、工程 生成數(shù)據(jù)大小2048X2048 4MB 也就是一次dma數(shù)據(jù)大小,一次dma數(shù)據(jù)的大小與axi-dma核中buffer lenght registr有關,長度最大26,也就是2^26個字節(jié),為64MB,工程中加入ila核用來調試。

3、生成bit后,導出xsa文件。
4、在vitis中應用xsa文件,新建a5_zynqmp_fsbl工程,按照官方說明,修改sfsbl_main.c,并編譯,在debug文件夾中可以找到a5_zynqmp_fsbl.elf文件。

5、在petalinux環(huán)境中新建工程,參考以前的博客,直到petalinux-build。
6、修改設備樹

7、重新petalinux-build。
8、在image/linux文件夾下

9、拷貝出bl31.elf boot.scr image.ub pmufw.elf system.bit system.dtb u-boot.elf 七個文件,以及vitis中生成的a5_zynqmp_fsbl.elf共8個文件,到linux_dma_test.
10、在petalinux工程中,build文件夾中拷貝bootgen.bif文件,并修改成如下

11、新建regs.init

12、生成BOOT.BIN,然后一起將BOOT.BIN image.ub和boot.scr復制到sd卡。

13、測試


14、上電開機,加載axi-dma的驅動,將3.0U盤掛在到mnt下

由以上可以看出,pl生成一張4MB的數(shù)據(jù)耗時43ms,將4MB數(shù)據(jù)由dma讀緩沖區(qū)copy到內核緩沖區(qū)耗時4ms,基本接近ddr的帶寬。整個鏈路中的帶寬完全受限于U盤的存儲速度。
15、U盤中的圖片,大小128MB,數(shù)據(jù)正確。

審核編輯:符乾江
-
文件
+關注
關注
1文章
586瀏覽量
25796 -
編譯
+關注
關注
0文章
682瀏覽量
34766
發(fā)布評論請先 登錄
移植的lvgl,在運行的時候,緩沖區(qū)無法釋放怎么解決?
對于CYUSB3014芯片,哪個函數(shù)可以讀取GPIF II端DMA緩沖區(qū)中緩存的實際數(shù)據(jù)量?
如何清除CYUSB3014的緩沖區(qū)數(shù)據(jù)?USB接口數(shù)據(jù)什么時候發(fā)送到電腦?
FX3 Socket緩沖區(qū)切換的最大時間是多少?
在傳輸DMA通道中的所有緩沖區(qū)后,DMA標志(就緒和部分)被卡住了是怎么回事?
DMA緩沖區(qū)設置為48K,如果沒有寫滿48K,數(shù)據(jù)會自動被發(fā)送出去嗎?
求助,關于3014的緩沖區(qū)設置疑問求解
請問如何在Linux中使用幀緩沖區(qū)更新epdc顯示?
求助,關于使用glTexDirectVIVMap通過openGL繪制相機緩沖區(qū)內容的AXI總線錯誤問題求解
FreeRTOS進階使用之流緩沖區(qū):高效處理字節(jié)流的秘密武器
RTOS的流緩沖區(qū)機制解析

AMD Zen 4處理器悄然禁用循環(huán)緩沖區(qū)
分享一個嵌入式通用FIFO環(huán)形緩沖區(qū)實現(xiàn)庫

評論