首页 理论教育 EDMA实践应用案例的分析介绍

EDMA实践应用案例的分析介绍

时间:2023-07-02 理论教育 版权反馈
【摘要】:整块数据的传输是EDMA最基本也是最常用的一种数据传输方式。图3-21EDMA的整块数据传输设计分析·数据块传输是基本的一维数据到一维数据的传输,实现块传输的最快方法为QDMA的传输。 编写程序从外部的存储空间的640×480像素帧中提取一个16×12像素的子帧。提取子帧的首地址为A0000567h,目的地址为L2缓存的00002100h。·子帧为16×12像素,所以阵列为12个,每个阵列数据为16个,设置阵列和数据计数参数RAM为000B0010h。程序代码QDMA的参数设置如下。

EDMA实践应用案例的分析介绍

【例3-4】 整块数据的传输是EDMA最基本也是最常用的一种数据传输方式。编写程序从外部存储空间复制256个数据到L2缓存中,外部存储空间的地址为A0000100h(CE2空间),L2缓存的地址为00002100h(L2的第0块)。数据传输如图3-21所示。

978-7-111-37346-9-Chapter03-74.jpg

图3-21 EDMA的整块数据传输

设计分析

·数据块传输是基本的一维数据到一维数据的传输,实现块传输的最快方法为QDMA的传输。

·由于源和目的数据的读写都是连续的,SUM和DUM位设为01(连续自增方式);源和目的数据都是一维的,2DS和2DD位设置为0;数据宽度为32位,设置ESIZE位为0;禁止传输结束中断,TCINT位设置为0;采用帧同步,设置FS位为1。

程序代码

ODMA的参数设置如下。

978-7-111-37346-9-Chapter03-75.jpg(www.xing528.com)

【例3-5】 编写程序从外部的存储空间的640×480像素帧中提取一个16×12像素的子帧。每个像素是一个16位的数据。提取子帧的首地址为A0000567h,目的地址为L2缓存的00002100h。使用QDMA方式传输。设计分析

·子帧提取在图像处理中经常使用。

·由于源和目的数据的读写都是连续的,SUM和DUM位设为01(连续自增方式);源数据为二维,而目的数据是一维的,2DS和2DD位设置为1和0;数据宽度为16位,设置ESIZE位为01;禁止传输结束中断,TCINT位设置为0;采用帧同步,设置块FS为1。

·子帧为16×12像素,所以阵列为12个,每个阵列数据为16个,设置阵列和数据计数参数RAM为000B0010h。由于源数据为640×480像素,所以每个阵列取出16个数据后,进行下一个阵列地址的更新,此时,源数据需要跳过(640-16)=624个像素,而每个像素为16位,占2B,所以索引为624×2=1248=4E0h。

程序代码

QDMA的参数设置如下。

978-7-111-37346-9-Chapter03-76.jpg

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈