1 / 41
文档名称:

第21讲DMA与通道.ppt

格式:ppt   大小:1,641KB   页数:41页
下载后只包含 1 个 PPT 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

第21讲DMA与通道.ppt

上传人:放射辐射 2022/5/16 文件大小:1.60 MB

下载得到文件列表

第21讲DMA与通道.ppt

文档介绍

文档介绍:第21讲DMA与通道
主存工作时间
CPU控制
并使用主存
DMA控制
并使用主存
t
周期挪用(或周期窃取)
优点:
①实现了CPU和外设并行工作;
②较好地发挥了主存和CPU的效率;
缺点:外设每次挪用周期 DMA接口数据传送过程如下:
① 当外设准备好数据(从外设取数),或准备好接收数据(向外设送数)时,就发“选通”信号,使数据送数据缓冲寄存器,同时DMA请求触发器置“1”。
② DMA请求触发器向控制/状态端口发“Ready”信号,同时向DMA控制器发“DMA请求”信号。
③ DMA接口接受到“DMA请求”信号后,就向CPU发“总线请求”信号。
④ CPU完成现行机器周期后,响应DMA请求,向DMA接口发出“总线响应”信号。DMA接口接受到该信号后,向外设接口发 “DMA响应”信号,使DMA请求触发器复位。CPU浮动它的总线,让出总线控制权,由DMA接口控制总线。
⑤ DMA接口给出内存地址,并在其读/写线上发出“读”或“写”命令,随后在数据总线上给出数据
⑥ 根据读写命令,将数据总线上的数据写入存储器中,或写入数据端口,并进行主存地址增量,字计数值减1。
 若采用“CPU停止法”,则循环第6步,直到计数值为“0”。
 若采用“周期挪用法”,则释放总线,下次数据传送时再按过程(1)到(6)进行。
第三步:DMA结束处理
▲ 根据计数值为“0”,发出DMA结束信号送接口控制,产生DMA中断请求信号给CPU,当DMA的中断请求得到响应后,CPU停止源程序的执行,转去执行中断服务程序,做一些DMA的结束工作。它包括校验送入主存的数据是否正确;决定是否继续用DMA传送其他数据块,若继续传送,则又要对DMA接口进行初始化,若不需要传送,则停止外设;测试在传送过程中是否发生错误,若出错,则转错误诊断及处理错误程序。
DMA接口与系统的连接方式
DMA接口与系统的连接方式有两种。
下图为具有公共请求线的DMA请求方式,若干个DMA接口通过一条公用的DMA请求线向CPU申请总线控制权。CPU发出响应信号用链式查询方式通过DMA接口,首先选中的设备获得总线控制权,即可占用总线与主存传送信息。
上图是独立的DMA请求方式,每一个DMA接口各有一对独立的DMA请求线和DMA响应线,它由CPU的优先级判别机构裁决首先响应哪个请求,并在响应线上发出响应信号,被获得响应信号的DMA接口使可控制总线与主存传送数据。
DMA 接口中控制传送的硬件逻辑称为DMA控制器。DMA控制器与接口的连接应考虑以下因素:
 DMA控制器与接口是相互分离, 还是合为一体;
 数据传送是经DMA控制器, 还是经接口直接与存储器相连;
 系统中有多个DMA控制器时, 采用公共DMA请求, 还是采用独立DMA请求方式。
 一个DMA控制器控制多个I/O设备时, 是采用选择型工作方式, 还是采用多路型工作方式;
基于以上考虑的几种常见连接模式:
1. 单通道DMA控制器
一个DMA控制器只连接一台I/O设备, 并通常将DMA控制器与接口合为一体, 传送的数据经由DMA控制器。
主机
外设
存储器
总线
向CPU提出DMA请求
CPU响应DMA请求
DMA
控制器
(接口)
2. 选择型DMA控制器
一个DMA控制器连接(控制)多台I/O设备, 即: 多台I/O设备共享一个DMA控制器。
一般采用DMA控制器与接口合为一体, 传送的数据经由DMA控制器。
主机
外设1
存储器
总线
DMA请求
CPU响应DMA请求
DMA
控制器
(接口)
外设2
....
外设n
I/O总线
选择型DMA控制器一般采用成组传送方式, 分时为各设备服务。
3. 多路型DMA控制器
当一个DMA控制器连接(控制)的多台I/O设备速度较慢时, 让多个外设同时工作, 以字或字节方式传送, 使多个外设轮流交叉使用系统总线进行DMA传送, 即为多路型DMA控制器。
多路型DMA控制器一般采用与外设接口分离的连接方式, 数据传送不经过DMA控制器, 而是直接在内存与接口之间进行传送。
DMA控制器只负责接收接口的请求信号, 并向CPU提出DMA请求, 在收到CPU的响应信号后, 通知接口, DMA传送周期开始。
DMA控制器与接口的连接关系如下图所示:
多路型DMA与选择型DMA并无严格界限, 当以单字(或字节)方式传送, 各外设交叉占有总线时, 为典型的多路型DMA; 若按成组方式传送, 各设备分时占有总线, 即为选择性DMA 。
系统总线
CPU
存储器
DMA
控制器