您的位置: OpenADSP社区论坛 -> Blackfin专区 -> 技术讨论区 -> BF533,PPI的DMA0与MDMA不能同时传输
本帖共有714个阅读者
发表帖子 发表投票 回复主题
BF533,PPI的DMA0与MDMA不能同时传输
yecheng(论坛新手)
yecheng
头衔:社区公民
帮派:无帮无派
帖数:10
金钱:195
积分:15
注册时间:2014/9/3
楼主信息 | 留言 | Email | 主页 | 编辑 | 管理 | 离线
BF533,PPI的DMA0与MDMA不能同时传输
问下,在PPI采集视频图像时,采用两个缓冲区,采集完成帧1图像开始下帧2采集,再用MDMA搬运帧1数据到内存中,采集完帧2图像开始帧1采集,搬运帧2的数据到内存。在采集过程中图像的数据有错误是怎么回事

fsdf
等级:论坛新手 参考IP地址:*.*.*.*
2014/9/3 12:07:41
尊贵身份标志
andy(论坛版主)
andy
头衔:社区公民
帮派:无帮无派
帖数:2287
金钱:11132
积分:2263
注册时间:2011/6/8
1信息 | 留言 | Email | 主页 | 编辑 | 管理 | 离线
你单独测试采集是否有错误?
如果没有,你还需要考虑内存通道堵塞问题,当其他DMA访问内存,或者内核通过EBIU访问内存,可能会出现内存通道堵塞,这样会造成采集图像丢像素点或者偏移。EBIU全局控制寄存器中,有个DMA优先开关,可以打开,如果不能解决,就应该修改代码,避免其他模块抢了采集的通道,或者将采集速度降下来。


这家伙很懒,什么也没有留下!
等级:论坛版主 参考IP地址:*.*.*.*
2014/9/3 21:28:55
yecheng(论坛新手)
yecheng
头衔:社区公民
帮派:无帮无派
帖数:10
金钱:195
积分:15
注册时间:2014/9/3
2信息 | 留言 | Email | 主页 | 编辑 | 管理 | 离线

单独采集没有错误,PPI连续采集图像没有错误,单独MDMA传输也没有错误。两个同时就有图像数据错误。可能是堵塞吧。我试下优先开关。  谢谢。。


fsdf
等级:论坛新手 参考IP地址:*.*.*.*
2014/9/4 9:14:51
yecheng(论坛新手)
yecheng
头衔:社区公民
帮派:无帮无派
帖数:10
金钱:195
积分:15
注册时间:2014/9/3
3信息 | 留言 | Email | 主页 | 编辑 | 管理 | 离线

EBIU全局控制寄存器是异步寄存器全局控制寄存器EBIU_AMGCTL的?我用的SDRAM存储数据的。PPI数据采集要连续采集,MDMA不用连续。这样可行不


fsdf
等级:论坛新手 参考IP地址:*.*.*.*
2014/9/4 15:05:53
尊贵身份标志
andy(论坛版主)
andy
头衔:社区公民
帮派:无帮无派
帖数:2287
金钱:11132
积分:2263
注册时间:2011/6/8
4信息 | 留言 | Email | 主页 | 编辑 | 管理 | 离线
EBIU_AMGCTL下有一个core优先和DMA优先的位,选择DMA优先,
然后打开代码中工程选项下的优化开关和cache使能,如果还不行,就只能从你的代码机制上解决了。
这个问题是DMA通道堵塞引起的,换句话说,就是目前处理器的能力无法实现你代码的功能,只能通过优化来解决

这家伙很懒,什么也没有留下!
等级:论坛版主 参考IP地址:*.*.*.*
2014/9/4 21:28:16
小壹(论坛新手)
小壹
头衔:社区公民
帮派:无帮无派
帖数:10
金钱:191
积分:15
注册时间:2017/6/7
5信息 | 留言 | Email | 主页 | 编辑 | 管理 | 离线
请问工程选项下的cache使能怎么打开?

共同成长
等级:论坛新手 参考IP地址:*.*.*.*
2017/11/28 9:59:23
尊贵身份标志
OpenADSP(管理员)
OpenADSP
头衔:社区公民
帮派:无帮无派
帖数:5187
金钱:34761
积分:6369
注册时间:2011/6/7
6信息 | 留言 | Email | 主页 | 编辑 | 管理 | 离线
Project Options里头的Startup code setting里,选中第一个,右边就可以选择打开。

我是OP...
等级:管理员 参考IP地址:*.*.*.*
2017/11/28 10:05:10
Powered by OpenADSP Copyright © 2010 www.Openadsp.com. All rights reserved.154193 Call, 1 Queries, Processed in 0.015625 second(s),