下载此文档

设备管理51.ppt


文档分类:汽车/机械/制造 | 页数:约99页 举报非法文档有奖
1/99
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/99 下载此文档
文档列表 文档介绍
设备管理51
(1) 控制器接口
设备控制器有两个方向的接口: 一个是与主机之间的系统接口;另一个是与设备驱动电路之间的低层次接口。
2. 设备控制器的组成
(2)存储器映像I/O
为了实现与CPU通信,每个控制器都有几个寄数据在内存中的首地址、字数。
向DMA部件发读命令
读取DMA部件状态
下一条指令
CPU DMA
CPU做其他事
中断
DMA CPU
2. DMA控制器的组成
图 5-8 DMA控制器的组成
为了实现在主机与控制器之间成块数据的直接交换, 必须在DMA控制器中设置如下四类寄存器:
(1) 命令/状态寄存器CR。用于接收从CPU发来的I/O命令或有关控制信息, 或设备的状态。
(2) 内存地址寄存器MAR。在输入时,它存放把数据从设备传送到内存的起始目标地址;在输出时,它存放由内存到设备的内存源地址。
(3) 数据寄存器DR。用于暂存从设备到内存,或从内存到设备的数据。
(4) 数据计数器DC。 存放本次CPU要读或写的字(节)数。

启动I/O(读操作)
继续执行
第K条指令
第K+1条指令



现行程序
传输准备
DMA向内存发出询问
挪用CPU周期
读/写操作
修改内存地址和计数
<块结束>
发I/O中断信号
DMA工作
启动命令
返回原程序
处理DMA
I/O结束中断
响应中断
I/O中断处理程序

返回断点
DMA方式I/O
DMA传送操作
I/O通道控制方式
1. I/O通道控制方式的引入
虽然 DMA方式比中断驱动方式已显著地减少了CPU的干预,即由以字(节)为单位的干预减少到以数据块为单位的干预。但是CPU每发出一条I/O指令,也只能去读(或写)一个连续的数据块。而当我们需要一次去读多个离散的数据块且将它们分别传送到不同的内存区域,或者相反时,则需由CPU分别发出多条I/O指令及进行多次中断处理,才能完成。
由于DMA每次只能执行一条I/O指令,不能满足复杂的I/O操作要求。在大、中型计算机系统中,普遍采用由专用的I/O处理机来接受CPU的委托,独立执行自己的通道程序来实现I/O设备与内存之间的信息交换,这就是通道技术。通道技术可以进一步减少 CPU的干预,即把对一个数据块为单位的读(或写)的干预,减少到对一组数据块为单位的读(或写)的有关的控制和管理的干预。这样可实现 CPU、通道和I/O设备三者之间的并行工作,从而更有效地提高了整个系统的资源利用率和运行速度。
2. 通道程序
操作码。
(2) 内存地址。
(3) 计数。
(4) 通道程序结束位P。
(5) 记录结束标志R。
操作
P
R
计数
内存地址
WRITE
0
0
80
813
WRITE
0
0
140
1034
WRITE
0
1
60
5830
WRITE
0
1
300
2000
WRITE
0
0
250
1850
WRITE
1
1
250
720
缓 冲 管 理
缓冲的引入

凡是数据到达和离去速度不匹配的地方均可采用缓冲技术。
缓和CPU与I/O设备间速度不匹配的矛盾。
(2)减少对CPU的中断频率, 放宽对CPU中断响应时间的限制。
(3)提高CPU和I/O设备之间的并行性。
例子: 阵发性的I/O请求
图 5-10 利用缓冲寄存器实现缓冲

硬缓冲:
在设备中设置缓冲区,由硬件实现
软缓冲:
在内存中开辟一个空间,用作缓冲区
单缓冲和双缓冲
1. 单缓冲(Single Buffer)
如果数据到达率与离去率相差很远,则可采用单缓冲方式。
例如:需要输出的信息很多,而输出设备的速度很慢。这时,可用一个缓冲区存放从内存中取得的部分输出信息,当输出设备取空缓冲区时,产生中断;CPU处理中断,然后装满缓冲区,启动输出,CPU转去执行其他程序。CPU与I/O之间是并行工作的。
图 5-11 单缓冲工作示意图
系统处理一块数据的处理时间可粗略地认为:
MAX(Ci,Ti+1)+M , 通常,M远小于T或C
2. 双缓冲(Double Buffer)
如果数据到达率与离去率相同(或相差不大),则可采用双缓冲方式实现CPU与I/O设备间的并行。
图 5-12 双缓冲工作示意图
系统处理一块数据的处理时间可粗略地认为:

设备管理51 来自淘豆网www.taodocs.com转载请标明出处.

相关文档 更多>>
非法内容举报中心
文档信息
  • 页数99
  • 收藏数0 收藏
  • 顶次数0
  • 上传人核辐射
  • 文件大小823 KB
  • 时间2022-07-12