设备控制器是计算机中的一个实体,主要职责是控制一个或多个I/O设备,以实现I/O设备和计算机之间的数据交换。它是CPU与I/O设备之间的接口,接收从CPU发来的命令,并去控制I/O设备工作,使处理机从繁杂的设备控制事务中解脱出来。;第七章 设 备 管 理;7.2 I/O控制方式 ;7.2 I/O控制方式 ;程序I/O方式流程图
;7.2.2 中断驱动I/O控制方式 ;7.2.3 直接存储器访问(DMA)I/O控制方式
1.DMA(Direct Memory Access)控制方式的引入
虽然中断驱动I/O比程序I/O方式更有效,但须注意,它仍是以字(节)为单位进行I/O的,每当完成一个字(节)的I/O时,控制器便要向CPU请求一次中断。换言之,采用中断驱动I/O方式时的CPU是以字(节)为单位进行干预的。如果将这种方式用于块设备的I/O,显然是极其低效的。例如,为了从磁盘中读出1 KB的数据块,需要中断CPU 1K次。为了进一步减少CPU对I/O的干预而引入了直接存储器访问方式。该方式的特点是:
(1) 数据传输的基本单位是数据块,即在CPU与I/O设备之间,每次传送至少一个数据块; ; (2) 所传送的数据是从设备直接送入内存的,或者相反;
(3) 仅在传送一个或多个数据块的开始和结束时,才需CPU干预,整块数据的传送是在控制器的控制下完成的。
可见,DMA方式较之中断驱动方式,又是成百倍地减少了CPU对I/O的干预,进一步提高了CPU与I/O设备的并行操作程度。 ; 2.DMA控制器的组成
DMA控制器由三部分组成:主机与DMA控制器的接口;DMA控制器与块设备的接口;I/O控制逻辑。下图示出了DMA控制器的组成。这里主要介绍主机与控制器之间的接口。 ; 为了实现在主机与控制器之间成块数据的直接交换,必须在DMA控制器中设置如下四类寄存器:
(1) 命令/状态寄存器(CR)。用于接收从CPU发来的I/O命令,或有关控制信息,或设备的状态。
(2) 内存地址寄存器(MAR)。在输入时,它存放把数据从设备传送到内存的起始目标地址;在输出时,它存放由内存到设备的内存源地址。?
(3) 数据寄存器(DR)。用于暂存从设备到内存,或从内存到设备的数据。
(4) 数据计数器(DC)。存放本次CPU要读或写的字(节)数。 ; 3.DMA工作过程
我们以从磁盘读入数据为例,来说明DMA方式的工作流程。当CPU要从磁盘读入一数据块时,便向磁盘控制器发送一条读命令。该命令被送到其中的命令寄存器(CR)中。同时,还须发送本次要将数据读入的内存起始目标地址,该地址被送入内存地址寄存器(MAR)中;本次要读数据的字(节)数则送入数据计数器(DC)中,还须将磁盘中的源地址直接送至DMA控制器的I/O控制逻辑上。然后,启动DMA控制器进行数据传送,以后,CPU便可去处理其它任务。此后,整个数据传送过程便由DMA控制器进行控制。; 当DMA控制器已从磁盘中读入一个字(节)的数据并送入数据寄存器(DR)后,再挪用一个存储器周期,将该字(节)传送到MAR所指示的内存单元中。接着便对MAR内容加1,将DC内容减1。若减1后DC内容不为0,表示传送未完,便继续传送下一个字(节);否则,由DMA控制器发出中断请求。图5-9是DMA方式的工作流程。 ;图5-9 DMA方式的工作流程图 ;7.2.4 I/O通道控制方式
1.I/O通道控制方式的引入
虽然DMA方式比起中断方式来已经显著地减少了CPU的干预,即已由以字(节)为单位的干预减少到以数据块为单位的干预,但CPU每发出一条I/O指令,也只能去读(或写)一个连续的数据块。而当我们需要一次去读多个数据块且将它们分别传送到不同的内存区域,或者相反时,则须由CPU分别发出多条I/O指令及进行多次中断处理才能完成。 ; I/O通道方式是DMA方式的发展,它可进一步减少CPU的干预,即把对一个数据块的读(或写)为单位的干预减少为对一组数据块的读(或写)及有关的控制和管理为单位的干预。同时,又可实现CPU、通道和I/O设备三者的并行操作,从而更有效地提高整个系统的资源利用率。例如,当CPU要完成一组相关的读(或写)操作及有关控制时,只需向I/O通道发送一条I/O指令,以给出其所要执行的通道程序的首址和要访问的I/O设备,通道接到该指令后,通过执行通道程序便可完成CPU指定的I/O任务。 ; 2.通道程序
通道是通过执行通道程序,并与设备控制器共同实现对I/O设备的控制的。通道程序是由一系列通道指令(或称为通道命令)所构成的。通道指令与一般的机器指令不同,在它的每条指令中都包含下列诸信息:
(1) 操作码。操作码规定了指令所执行的操作,如读、写、控
您可能关注的文档
最近下载
- 福彩3D历史数据EXCEL自动更新.pptx VIP
- CQVL系列电动推杆.pdf VIP
- 线控器 使用安装说明书 适用型号:KJR-90WBK.pdf VIP
- 基于PLC的自动化仓储控制系统的设计.doc VIP
- 电动推杆市场分析报告.docx
- 深度解析(2026)《QCT 79.1-2008道路车辆 牵引车和挂车之间气制动连接用螺旋管总成 第1部分:尺寸》.pptx VIP
- 中小学生端午节假期安全教育主题班会PPT课件.pptx VIP
- 机器人等级考试三四级资料-第01课:初识Mixly和Fduino UNO.pptx VIP
- FULING富凌H200空压机中文说明书说明书用户手册.pdf
- Praat语音软件操作手册.docx VIP
原创力文档

文档评论(0)