ARM嵌入式软件开发3DMA实验_第1页
ARM嵌入式软件开发3DMA实验_第2页
ARM嵌入式软件开发3DMA实验_第3页
ARM嵌入式软件开发3DMA实验_第4页
ARM嵌入式软件开发3DMA实验_第5页
已阅读5页,还剩14页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

JXARM9 2410实验系统教案5 3DMA实验 武汉创维特信息技术有限公司 2020 4 18 2 提纲 1 3 2 4 5 基础知识 实验目的 实验内容 预备知识 实验设备 6 实验过程 7 实验报告要求 3 一实验目的 实验目的 了解DMA传送原理掌握S3C2410DMA控制器的使用掌握DMA软件编程方法 4 二实验内容 实验内容 编写单字节方式 双字节方式和四字节方式常规内存拷贝及时间检测程序编写DMA方式内存拷贝及时间检测程序比较DMA方式内存拷贝及常规内存拷贝的效率 5 三预备知识 预备知识 了解ADT集成开发环境的基本功能了解DMA的原理以及处理步骤 6 四实验设备 实验设备 JXARM9 2410教学实验箱ADT1000仿真器和ADTIDE集成开发环境串口连接线 7 五基础知识 直接数据存储 DMA DMA方式当高速外设要与系统内存或者要在系统内存的不同区域之间 进行大量数据的快速传送时 查询方式和中断方式可能不能满足要求直接存储器存取 DMA 就是为解决这个问题提出的采用DMA方式 在一定时间段内 由DMA控制器取代CPU 获得总线控制权 来实现内存与外设或者内存的不同区域之间大量数据的快速传送 8 五基础知识 典型的DMA控制器 以下简称DMAC 的工作电路 9 五基础知识 DMA数据传送的工作过程 1 DMAC发出DMA传送请求 2 DMAC通过连接到CPU的HOLD信号向CPU提出DMA请求 3 CPU在完成当前总线操作后会立即对DMA请求做出响应 CPU的响应包括两个方面 CPU将控制总线 数据总线和地址总线浮空 即放弃对这些总线的控制权CPU将有效的HLDA信号加到DMAC上 以通知DMACCPU已经放弃了总线的控制权 10 五基础知识 DMA数据传送的工作过程 4 CPU将总线浮空 即放弃了总线控制权后 由DMAC接管系统总线的控制权 并向外设送出DMA的应答信号 5 DMAC送出地址信号和控制信号 实现外设与内存或内存之间大量数据的快速传送 6 DMAC将规定的数据字节传送完之后 通过向CPU发HOLD信号 撤消对CPU的DMA请求 CPU收到此信号 一方面使HLDA无效 另一方面又重新开始控制总线 实现正常取指令 分析指令 执行指令的操作 11 五基础知识 DMA传送方式 I O接口到存储器存储器到I O接口存储器到存储器 12 五基础知识 I O接口到存储器的传送 当进行由I O接口到存储器的数据传送时 来自I O接口的数据利用DMAC送出的控制信号 将数据输送到系统数据总线D0 D7上 同时 DMAC送出存储器单元地址及控制信号 将存在于D0 D7上的数据写入所选中的存储单元中 这样就完成了由I O接口到存储器一个字节的传送 同时DMAC修改内部地址及字节数寄存器的内容 13 五基础知识 存储器到I O接口 与前一种情况类似 在进行这种传送时 DMAC送出存储器地址及控制信号 将选中的存储单元的内容读出放在数据总线D0 D7上 接着 DMAC送出控制信号 将数据写到规定的 预选中 端口中去 而后MDAC自动修改内部的地址及字节数寄存器的内容 14 五基础知识 存储器到存储器 存储器到存储器的DMA数据传送采用数据块传送方式 首先送出内存源区域的地址和控制信号 将选中内存单元的的数据暂存 接着修改地址及字节数寄存器的值 然后输出内存目的区域的地址及控制信号 将暂存的数据 通过系统数据总线 写入到内存的目的区域中去 最后修改地址和字节数寄存器的内容 当字节计数器减到零或外部输入时可结束一次DMA传输过程 15 五基础知识 S3C2410的DMA控制器 S3C2410集成了4个通道的DMA控制器 源和目的都在系统总线上 源在系统总线而目的在外设总线上 源在外设总线而目的在系统总线上 源和目的都在外设总线上 16 五基础知识 实验说明 本实验通过DMA方式实现存储器到存储器间的数据传送 并将其与常规的内存拷贝操作进行比较 17 五基础知识 拷贝动作的计时处理 采用定时器进行计时处理 采用函数Timer Start启动计时处理 参数divider表示定时时间间隔 0 16us1 32us2 64us3 128us 操作完成时调用Timer Stop停止定时器计数 其返回值为计数值 该值乘以时间间隔 128us 即为计时时间Timer Start 3 128us time Timer Stop 停止定时器 18 五基础知识 常规的内存拷贝操作 字节拷贝 unsignedchar dstAddr unsignedchar srcAddr 双字节拷贝 unsignedshort dstAddr unsignedshort srcAddr 四字节拷贝 unsignedint dst

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论