1、在线教务辅导网: http:/ 更多课程配套课件资源请访问在线教务辅导网2018/5/5 1第 9 章 DMA控制接口2018/5/5 2教学重点n DMA传输原理n 8237A的工作方式n 8237A寄存器组的作用n 8237A寄存器组的编程2018/5/5 3直接存储器传送直接存储器传送( Direct Memory AccessDMA )将外设的数据不经过 CPU直接送入内存储器,或者 ,从内存储器不经过 CPU直接送往外部设备一次 DMA传送只需要执行一个 DMA周期(相当于一个总线读写周期),因而能够满足高速外设数据传输的需要。9.1 DMA传输原理2018/5/5 49.1.1 D
2、MA传送过程n DMA传送直接由 DMA控制器( DMAC)控制实现。传送过程分 4个阶段: 1. DMA请求2. DMA响应3. DMA传送4. DMA结束处理2018/5/5 5DMA传送过程示意图2018/5/5 6DMAC双重身份 总线从模块:在 CPU掌管总线时 , CPU对 DMAC进行初始化 ,也就是向 DMAC写入内存传送区的首地址、传送字节数和控制字时, DMAC相当于一个外设接口,称为总线从模块。总线主模块:在 DMAC接管总线时, CPU暂停对系统总线的控制, DMAC取得了对总线的控制权, 进行DMA传输, 这时的 DMAC称为总线主模块。9.1.2 DMA控制器的功能
3、2018/5/5 7DMA控制器的功能( 1) 接受外设发出的 DMA请求 ,并向 CPU提出总线申请;( 2)接受 CPU发出的总线响应信号后, 接管总线控制权 ,进入 DMA响应周期,并向外设发出 DMA应答信号;( 3) 确定主存缓冲区或数据单元的首地址及传送长度,能寻址存储器 ;( 4)规定数据在主存和外设之间的传送方向, 发出相应读 /写或其它控制信号,控制数据传送 ; ( 5)能自动修改主存地址值和传送长度计数值,并判断 DMA传送是否结束;( 6) DMA传送结束后,释放总线控制权,并发出 DMA结束信号向 CPU申请中断报告 DMA传送结束。2018/5/5 84二选一数据选择器二选一数据选择器DMA控制信号的产生电路2018/5/5 9DMA控制信号的产生组合HLDA(G) M/IO(A/B) W/R 产生的信号及操作类型0 0 0 /IORC,读 I/O0 0 1 /IOWC,写 I/O0 1 0 /MRDC,读存储器0 1 1 /MWTC,写存储器1 输出高阻 ,无效操作2018/5/5 10