计算机组成原理第八章

10
计计计计计计计计计计 计计计计DMA 计计 计计计计 计计计

description

计算机组成原理第八章. 知识点三: DMA 方式. 主讲教师:谭志虎. 问题引入. 利用中断服务程序完成数据传输,效率低下,如何改进?. 学习建议.  系统观: DMA 控制器的内存争用与 DRAM 的刷新过程中的内存争用类似,其处理方式也类似。 构造观: DMA 方式本质是外设可以不通过 CPU 直接访问内存,学习时可以从 DMA 控制器构成,内存争用,中断机制应用等角度理解 DMA 数据传输的完整过程。. 1. DMA 的基本概念. - PowerPoint PPT Presentation

Transcript of 计算机组成原理第八章

Page 1: 计算机组成原理第八章

计算机组成原理第八章

知识点三: DMA方式

主讲教师:谭志虎

Page 2: 计算机组成原理第八章

问题引入

利用中断服务程序完成数据传输,效率低下,如何改进?

学习建议

系统观: DMA 控制器的内存争用与 DRAM 的刷新过程中的内存争用类似,其处理方式也类似。

构造观: DMA 方式本质是外设可以不通过 CPU 直接访问内存,学习时可以从 DMA 控制器构成,内存争用,中断机制应用等角度理解 DMA 数据传输的完整过程。

Page 3: 计算机组成原理第八章

1. DMA 的基本概念

中断方式提高了主机和外设并行工作的效率,但是每传送一个数据就要执行一次中断服务子程序,数据传送时仍然要占用 CPU 的时间,不适合于高速传输的系统。

DMA 在外设与主存之间建立一个由硬件管理的数据通路,使 CPU 不介入传送时的操作,数据也不经过CPU 。这样就减少了 CPU 的开销,系统效率得到了提高。

CPUCPU 主存主存 DMADMA 接口 接口

Page 4: 计算机组成原理第八章

2. 内存争用

DMA 方式进行数据传送时, CPU 仍执行主程序,此时 DMA 控制逻辑与 CPU 可能同时要访问主存,引起主存使用权的冲突。

如何处理这种冲突呢? 停止 CPU 使用主存 DMA 与 CPU 交替使用主存 周期挪用法

Page 5: 计算机组成原理第八章

3.DMA 主要操作过程

预处理阶段 数据传输阶段 结束阶段

Page 6: 计算机组成原理第八章

DMA 主要操作过程(准备阶段)

主机通过指令向 DMA 接口发送必要的传送参数,并启动 DMA 工作。 数据传送的方向 ;

数据块在主存的首地址 ;

数据在外设存储介质上的地址 ;

数据的传送量。

-6-

Page 7: 计算机组成原理第八章

DMA 主要操作过程(传送阶段) 宏观上看 DMA 接口连续传送一批数据。从微观上看,每传

送一个数据,发一次 DMA 请求,经历一个循环操作。循环体:

外设准备好数据时,向主机发 DMA 请求; CPU 在本机器周期执行完毕后 ( 周期挪用方式 ) 响应该

请求 , 让出主存使用权; DMAC 挪用一个存储周期对主存进行读或写操作。周

期挪用结束后,给 DMA 接口一个应答信号; DMAC 接到应答信号,撤除 DMA 请求,将主存数据

缓冲区地址指针加 1 ,计数器减 1 ; DMAC 判断数据是否全部传送完。若传送完毕,则进

入结束阶段;否则继续一个循环操作;

-7-

Page 8: 计算机组成原理第八章

DMA 主要操作过程(结束阶段)

DMA 在两种情况下都进入结束阶段。 正常结束,一批数据传送完毕; 非正常结束, DMA 故障

结束阶段 DMA 向主机发出中断请求, CPU 执行服务程序,查询 DMA 接口状态,根据状态进行不同处理。

-8-

Page 9: 计算机组成原理第八章

一个数据块的传送过程 ( 停止访内方式 )

DMA请求DMA请求

DMA响应DMA响应

传送一个字 传送一个字

DMA结束DMA结束

N

Y

传送完 ?传送完 ?

修改地址指针字计数器修改地址指针字计数器

发送内存地址发送内存地址

-9-

Page 10: 计算机组成原理第八章

知识点三 回顾

DMA 控制方式与程序中断方式的区别;

DMA 内存争用处理与 DRAM 刷新方式处理的异同;

DMA 控制方式中的 CPU 开销。