输入输出系统——DMA方式
DMA方式的特点DMA和程序中断两种方式的数据通路DMA与主存减缓数据的三种方式停止CPU访问主存周期挪用(周期窃取)DMA与CPU交替访问
DMA接口的功能和组成DMA接口功能DMA接口组成
DMA的工作过程DMA传送过程预处理DMA传送过程的示意数据传送过程(输入)数据输出过程后处理
DMA接口与系统的连接方式具有公共请求线的DMA独立的DMA请求
DMA方式与程序中断方式的比较
DMA接口类型选择型多路型多路型DMA接口的工作原理
DMA方式的特点
DMA和程序中断两种方式的数据通路
DMA与主存减缓数据的三种方式
停止CPU访问主存
总线的控制权,内存的访问权交给了DMA接口 优点: 控制简单 适合大量数据传送 缺点: 未充分发挥CPU对主存的利用
周期挪用(周期窃取)
DMA访问主存的三种情况:
CPU此时不访存CPU正在访存CPU与DMA同时请求访存,此时CPU将总线控制权交给DMA
DMA与CPU交替访问
CPU工作周期: C1:专供DMA访存 C2:专供CPU访存 特点: 不需要申请建立和归还总线的使用权
DMA接口的功能和组成
DMA接口功能
CPU申请DMA传送处理总线控制权的转交管理系统总线,控制数传送确认数据传送的首地址和长度,修正传送过程中的数据地址和长度DMA传送结束是,给出操作完成信号
DMA接口组成
AR:地址寄存器 WC:计数器 DAR:设备地址寄存器 BR:数据缓存器 HRQ:总线使用请求信号 HLDA:应答信号 DREQ:设备请求信号 DACK:控制信号
DMA的工作过程
DMA传送过程
预处理、数据传送、后处理
预处理
输入输出设备地址—DMA的DAR(设备地址寄存器)主存地址—DMA的AR(地址寄存器)传送字数—DMA的WC(计数器)
DMA传送过程的示意
CPU 数据传送
数据传送过程(输入)
图片
设别向BR(数据缓冲器)送数据设别向DMA控制逻辑发送DREQ(设备请求信号)DMA控制逻辑电路向总线发送HRQ(总线占用请求)CPU通过总线向DMA发送HLDA(应答信号)总线由DMA控制AR(地址寄存器)给出地址信号设备发送控制信号BR(数据缓冲器)发送数据(通过数据线)给主存(AR+1、WC+1、判断是否溢出)中断请求
数据输出过程
图片
BR—设备(数据)设备—DMA控制逻辑(请求信号)DMA控制逻辑—CPU(主存、总线控制权请求信号)CPU—DMA控制逻辑(应答信号)AR—主存(内存地址)DMA控制逻辑—设备(传送数据控制信号)主存—BR(传送数据) 注:通过总线;AR、WC设值并修改WC—中断机构(溢出信号)中断机构—CPU(后处理信号)
后处理
校验送入主存的数据是否正确是否继续使用DMA传送传送过程是否正确,错误则转诊断程序由中断服务程序完成
DMA接口与系统的连接方式
具有公共请求线的DMA
独立的DMA请求
DMA方式与程序中断方式的比较
程序中断方式DMA
数据传送程序硬件相应时间指令执行结束存取周期结束处理异常情况能不能中断请求传送数据后处理优先级低高
DMA接口类型
选择型
物理上连接多个设备,逻辑上只允许连接一个设别
多路型
物理上连接多个设备,逻辑上连接多个设别,数据准备多个,数据传送一个;
多路型DMA接口的工作原理