求助:
在DM8148 DSP端调试EDMA时遇到一个问题,我想在SYS/BIOS环境下实现EDMA的数据块搬运操作,也就是把内存中的一个数据块搬拷贝到其他内存地址上,当然这只是一个测试不会有真实应用场景的,代码流程大体如下
1、申请了两个全局数组用于测试,通过打印得知 src_block 地址为 0x8f0236f8, dst_block地址为 0x8f023730,并把src_blocks数组中的所有数据写为0x61,dst_block 数组清零
unsigned char src_block[50 * 1];
unsigned char dst_block[50 * 1];
2、配置EDMA实现搬运,PaRAM参数如下
[INFO] EDMA_CC_OPT = 8031a000
[INFO] EDMA_CC_SRC = 8f0236f8
[INFO] EDMA_CC_A_B_CNT = 10032
[INFO] EDMA_CC_DST = 8f023730
[INFO] EDMA_CC_SRC_DST_BID = 0
[INFO] EDMA_CC_LINK_BCNTRLD = ffff
[INFO] EDMA_CC_SRC_DST_CID = 0
[INFO] EDMA_CC_CCNT26 = 1
3、触发EDMA传输,确认产生了传输完成中断,并且PaRAM参数被清除
4、观察dst_block 的数据依旧全是0
所以我推测是目标和源地址出了问题,0x8f0236f8并不是真实的DDR物理地址。请知道解决办法的朋友请予以帮助,感激不尽