ARM嵌入式软件开发 3 DMA实验ppt课件

上传人:ZJ****1 文档编号:51975132 上传时间:2018-08-17 格式:PPT 页数:19 大小:832.50KB
返回 下载 相关 举报
ARM嵌入式软件开发 3 DMA实验ppt课件_第1页
第1页 / 共19页
ARM嵌入式软件开发 3 DMA实验ppt课件_第2页
第2页 / 共19页
ARM嵌入式软件开发 3 DMA实验ppt课件_第3页
第3页 / 共19页
ARM嵌入式软件开发 3 DMA实验ppt课件_第4页
第4页 / 共19页
ARM嵌入式软件开发 3 DMA实验ppt课件_第5页
第5页 / 共19页
点击查看更多>>
资源描述

《ARM嵌入式软件开发 3 DMA实验ppt课件》由会员分享,可在线阅读,更多相关《ARM嵌入式软件开发 3 DMA实验ppt课件(19页珍藏版)》请在金锄头文库上搜索。

1、JXARM9-2410实验系统教案 5.3 DMA实验武汉创维特信息技术有限公司 *提纲1 13 32 24 45 5基础知识实验目的实验内容预备知识实验设备6 6实验过程7 7实验报告要求2一 实验目的实验目的q 了解DMA传送原理q 掌握S3C2410 DMA控制器的使用q 掌握DMA软件编程方法3二 实验内容实验内容q 编写单字节方式、双字节方式和四字节方式常规内存拷贝及时间检测程序q 编写DMA方式内存拷贝及时间检测程序q 比较DMA方式内存拷贝及常规内存拷贝的效率 4三 预备知识预备知识q 了解ADT集成开发环境的基本功能q 了解DMA的原理以及处理步骤5四 实验设备实验设备q JX

2、ARM9-2410教学实验箱q ADT1000仿真器和ADT IDE集成开发环境 q 串口连接线6五 基础知识直接数据存储 - DMA q DMA方式 当高速外设要与系统内存或者要在系统内存的不同区域之间,进行大量数据的快速传送时,查询方式和中断方式可能不能满足要求 直接存储器存取(DMA)就是为解决这个问题提出的 采用DMA方式,在一定时间段内,由DMA控制器取代CPU,获得总线控制权,来实现内存与外设或者内存的不同区域之间大量数据的快速传送7五 基础知识典型的DMA控制器(以下简称DMAC)的工作电路 8五 基础知识DMA数据传送的工作过程q 1) DMAC发出DMA传送请求q 2) DM

3、AC通过连接到CPU的HOLD信号向CPU提出DMA请求q 3) CPU在完成当前总线操作后会立即对DMA请求做出响应,CPU的响应包括两个方面: CPU将控制总线、数据总线和地址总线浮空,即放弃对这些总线的控制权 CPU将有效的HLDA信号加到DMAC上,以通知DMAC CPU已经放弃了总线的控制权9五 基础知识DMA数据传送的工作过程q 4) CPU将总线浮空,即放弃了总线控制权后,由DMAC接管系统总线的控制权,并向外设送出DMA的应答信号q 5) DMAC送出地址信号和控制信号,实现外设与内存或内存之间大量数据的快速传送q 6) DMAC将规定的数据字节传送完之后,通过向CPU发HOL

4、D信号,撤消对CPU的DMA请求。CPU收到此信号,一方面使HLDA无效,另一方面又重新开始控制总线,实现正常取指令、分析指令、执行指令的操作。10五 基础知识DMA传送方式q I/O接口到存储器q 存储器到I/O接口q 存储器到存储器11五 基础知识I/O接口到存储器的传送q 当进行由I/O接口到存储器的数据传送时,来自I/O接口的数据利用DMAC送出的控制信号,将数据输送到系统数据总线D0D7上,同时,DMAC送出存储器单元地址及控制信号,将存在于D0D7上的数据写入所选中的存储单元中。这样就完成了由I/O接口到存储器一个字节的传送。同时DMAC修改内部地址及字节数寄存器的内容。 12五

5、基础知识存储器到I/O接口q 与前一种情况类似,在进行这种传送时,DMAC送出存储器地址及控制信号,将选中的存储单元的内容读出放在数据总线D0D7上,接着,DMAC送出控制信号,将数据写到规定的(预选中)端口中去,而后MDAC自动修改内部的地址及字节数寄存器的内容 13五 基础知识存储器到存储器q 存储器到存储器的DMA数据传送采用数据块传送方式,首先送出内存源区域的地址和控制信号,将选中内存单元的的数据暂存,接着修改地址及字节数寄存器的值,然后输出内存目的区域的地址及控制信号,将暂存的数据,通过系统数据总线,写入到内存的目的区域中去,最后修改地址和字节数寄存器的内容,当字节计数器减到零或外部

6、输入时可结束一次DMA传输过程 14五 基础知识S3C2410的DMA控制器q S3C2410集成了4个通道的DMA控制器: 源和目的都在系统总线上; 源在系统总线而目的在外设总线上; 源在外设总线而目的在系统总线上; 源和目的都在外设总线上。15五 基础知识实验说明 q 本实验通过DMA方式实现存储器到存储器间的数据传送,并将其与常规的内存拷贝操作进行比较 16五 基础知识拷贝动作的计时处理q 采用定时器进行计时处理,采用函数Timer_Start启动计时处理,参数divider 表示定时时间间隔, 0 : 16 us 1 : 32 us 2 : 64 us 3 : 128 usq 操作完成

7、时调用Timer_Stop停止定时器计数,其返回值为计数值,该值乘以时间间隔(128us)即为计时时间Timer_Start(3);/* 128 us */time=Timer_Stop();/* 停止定时器 */17五 基础知识常规的内存拷贝操作 q 字节拷贝*(unsigned char*)(dstAddr) = *(unsigned char*)(srcAddr);q 双字节拷贝*(unsigned short*)(dstAddr) = *(unsigned short*)(srcAddr);q 四字节拷贝*(unsigned int*)(dstAddr) = *(unsigned int*)(srcAddr);18六 实验报告要求实验报告要求q 什么叫DMA传送方式?试说明DMA方式传送数据的主要步骤。q 试比较DMA传输、查询式传输及中断方式传输之间的优缺点和适用场合? 19

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > IT计算机/网络 > 其它相关文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号