zl程序教程

您现在的位置是:首页 >  其它

当前栏目

79IO方式

方式
2023-09-27 14:22:14 时间

IO方式
输入输出系统弄实现主机与IO设备之间的数据传输,可以采用不同的控制方式,各种方式在代价、性能、解决问题的着终点方面个不同,常用的IO方式有程序查询、程序中断、DMA和通道等方式,其中前两种更依赖CPU中程序指令的执行。
1、 程序查询方式
信号交换的控制完全由主机执行程序实现,程序查询方式接口中设置一个数据缓冲寄存器(数据端口)和一个设备状态寄存器(状态端口)。当主机进行IO操作时,首先发出询问信号,读取设备的状态并根据设备状态决定下一步操作究竟是数据传送还是等待。
程序查询方式的工作流程如下:
(1) CPU执行初始化程序,并预置传送参数
(2) 向IO接口发出命令字,启动IO设备
(3) 从外设接口读取其状态信息
(4) CPU不断查询IO设备状态,直到外设准备就绪
(5) 传送一次数据
(6) 修改地址和计数器参数
(7) 判断传送是否结束,若没结束转第3步,直到计数器为0.

在这里插入图片描述

在这种控制方式下,CPU一旦启动IO,必须停止现行程序的运行,并在现行程序中插入一段程序。程序查询的主要特点是CPU有踏步等待现象,CPU与IO串行工作。这种方式的接口设计简单设备量小。但是cPU在信息传送过程中要花费很多时间用于查询和等待,而在一段时间内只能和一台外设交换信息,效率大大降低。
在这里插入图片描述

2、 程序中断方式:
中断计算机有效合理地发回好人提高效率的一个十分重要的功能。CPU中通常设置有中断处理的机构—中断系统,以解决各种中断的共性问题。
(1) 中断的基本概念
程序中断是指在计算机执行现行程序的过程中,出现某些急需处理的异常情况或特殊情况,CPU暂时中止现行程序,而赚取对这些异常情况或特殊请求进行处理,在处理完毕后CPU又自动返回到现行程序的断点处,继续执行源程序。
程序中断的作用如下:
1、 实现CPU和IO设备的并行工作
2、 处理硬件故障和软件错误
3、 实现人机交互、用户干预机器需要用到中断系统
4、 实现多道程序、分时操作,多道程序的切换需要借助中断系统
5、 实时处理需要借助中断系统来实现快速响应。
6、 实现应用程序和操作系统的切换称为软中断
7、 多处理器系统中各处理机之间的信息交流和任务切换。
1、程序中断方式的思想:CPU在程序中安排好在某一时刻启动一台外设,然后CPU继续执行原来程序,不需要像查询方式那样一直等待外设准备就绪。一旦外设完成数据传送的准备工作,边主动向CPU发出中断请求,请CPU为自己服务。

2、程序中断方式工作流程
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

3、 多重中断和中断屏蔽技术
如果CPU在执行中断服务程序过程中,又出现了新的更高优先级的中断请求,而CPU对新的中断请求不予以响应,这种中断为单重中断。如果CPU暂停现行的中断服务程序,转去处理新的中断请求,这种中断为多重中断,又称中断嵌套。
在这里插入图片描述

中断拼比技术主要用于多重中断,CPU要具备多重中断的功能,必须满足下列条件
(1) 在中断服务程序中提前设置开中断指令
(2) 优先级别高的中断源有权中断优先级别低的中断源
每一个中断源都有一个屏蔽触发器,1表示屏蔽该中断的请求,0表示正常申请,所有屏蔽触发器组合在一起,便构成一个屏蔽字寄存器,屏蔽字寄存器内容称为屏蔽字。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

4、 DMA方式
DMA方式是一种完全由硬件组成信息传送的控制方式。具有程序中断方式的优点,即在数据准备阶段,CPU与外设并行工作。DMA方式在外设与内存之间开辟一条“直接数据通道”,信息传送不在经过CPU,降低了CPU在传输数据时的开销,因此成为直接存储器存取方式。由于数据传送不经过CPU,也就不需要保护、恢复现场CPU等繁琐操作。
这种方式适用于磁盘机、磁带机等高速设备大批量数据的传送,它的硬件开销比较大。在DMA方式中,中断的作用仅限于故障和正常传输结束时的处理。
4.1DMA方式的特点
在这里插入图片描述

4.2DAM控制器的组成
在这里插入图片描述
在这里插入图片描述

4.3DMA的传送方式
在这里插入图片描述

4.4DMA的传送过程
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

4.5DMA方式和中断方式的区别
在这里插入图片描述
在这里插入图片描述