输入输出系统的发展状况:
1,早期阶段:IO设备种类很少,IO设备尊村交换信息都几经过CPU
2,接口模块和DMA阶段:IO和主存可以直接交换信息。
3,具有通道结构的阶段:通道有自己的指令集,可以视为独立的处理器
4,IO处理机阶段:具有更大的独立性。
输入输出系统的组成:I/O软件和I/O硬件;IO软件主要哟IO指令和通道指令。在带有接口的系统中,IO硬件主要有接口和IO设备主要模块。
I/O指令可以有三部分组成,操作码命令码地址码,操作码可以体现I/O指令与机器指令的判别;命令码体现设别的具体操作,设备码是多台IO设备的选择码。
IO与主机的联系方式:
1,IO设备的编制方式:将设备码堪称地址码,有独立编址和统一编址。统一编制,专用存储空间容量,无需专用的IO指令。独立编址需要独立的I/O指令,从而与机器指令分开。
2,设备寻址:每台设备都有一个设备号,要启动某一设备时,可以有IO指令的设备码字段直接指出该设备的设备号。
3,传送方式:串行传送和并行传送
4,联络方式:主要有立即响应方式,异步工作采用应答信号联络,同步工作采用同步时标联络
5,I/O设备与主机的连接方式:总线连接和辐射连接。
IO设备与主机的信息传送方式:
1,程序查询方式
2,程序中断方式
3,DMA方式
I/O设备
中央处理器和主存构成主机,其他的设备都可叫做I/O设备或者是外围设备。I/O设备的设备控制器,通过I/O接口与设备与cpu进行连接。I/O设备大致可以分为三类,一种是人机交互设备,计算机信息存储设备,机机通信设备。
输入输出设备主要有:键盘,鼠标,触摸屏,光笔,画笔与图形版,图形输入设备。
输出设备主要有显示器,打印机
I/O接口
通常是指主机与I/O设备之间,设置的一个硬件电路,及其相应的软件控制。不同的I/O外设都有相应的设备控制器,其通过接口,与主机进行交互。
端口是接口中的一些寄存器,用来存放信息,分别称为数据端口,状态端口,控制端口,若干端口,加上相应的控制逻辑,称为接口。
接口的组成:I/O总线,数据线,命令线,设备选择线,状态线。
数据线:IO代码与主机之间的数据代码传送线,其根数一般等于存储字长或者字符的为位数。通常是双向的,也可以是单向的。
设备选择线:用来传送设备码,根数取决于设备码的位数。如果把设备码看成地址码,那么设备选择线,可以看成设备选择线.
命令线:cpu想设备发送各种命令信号,如启动,清除,读,写.
状态线:设备向cpu发送各种状态线.
由其组成可以得到:接口具有选址功能,传送命令的功能,数据传送功能,反应IO设备工作状态
接口的选址功能:每个接口具有选址功能,当设备线上的设备码与IO设备的设备吗相同时,应发出设备选中信号,这种功能可以通过IO接口的设备电路实现.
传送命令的功能:cpu向IO接口发送命令,IO接口应具备传送命令的工鞥,接口内部有命令寄存器和名;命令译码器.
传送数据功能:接口具有数据通路,完成数据传送,并且这种通路还具有缓冲功能,能将数据缓存在接口中,
反应IO设备工作的功能:内置设备工作状态除法器.
接口类型:
1,按照数据的传送格式,可以分为:串行接口和并行接口,.由于主机和接口之间有是按照字或者字节进行传送,因此接口内部应该有串并转换器.
2,按照功能选择的灵活性:可编程接口和非变成接口
3,按照通用性分类,通用接口和非通用接口
4,按照通用性分类:专用接口和通用接口
5,按照数据传送的控制方式分类:有程序型接口和DMA接口.
IO方式:
1,程序查询方式:当IO设备较多时,应该按照设备的优先级别进行查询,要完成正确的查询,通常需要3条指令:测试指令,传送指令,转移指令.该方式的核心问题在于:每时每刻都需不断查询I/O设备是否准备就绪。
查询流程:
(1)先向I/O设备发出命令字,请求进行数据传送;
(2)从I/O接口读入状态宇;
(3)检查状态字中的标志,看看数据文换是否可以进行;
(4)假如这个设备没有准备就绪,则第(2)、第(3)步重复进行准备好交换数据,发出准备就绪信号“Ready”为止。
(5)CPU从I/O接口的数据缓存寄存器输入数据.或将数据从CPU输出至接口的数据缓冲寄存器.与此同时,CPU将接口中的状态标志复位。主程序去检查状态字寄存器.看I/O设备是否“准备就绪”.如果没有准备就绪.则进行循环等待;如果已准备好.则执行数据交换,然后再回到主程序。
2,程序中断方式
中断:指当出现需要时,CPU暂时停止当前程序的执行转而执行处理新情况的程序和执行过程。即在程序运行过程中,系统出现了一个必须由CPU立即处理的情况,此时,CPU暂时中止程序的执行转而处理这个新的情况的过程就叫做中断。
为了处理程序中断,IO接口电路中必须配置相关的硬件线路:中断请求触发器和中断屏蔽触发器,排队器,中断向量地址形成部件。
此外,CPU总是在同一的时间内,在每条指令结束的最后阶段,查询所有设备是否有中断请求
设备优先权的处理可以由硬件处理也可以由软件处理。硬件排队器的实现方法可以有很多,可以在cpu内部设置一个统一的排队器,也可以在接口电路内部分别设置各个设备的排队器(链式排队器)
中断向量的形成部件的输入来自于排队器的输出:INTP1、INTP2、INTP3、INTP4、INTP5、INTP6……INTPN。它的出处是中断向量。其位数与计算机可以处理的中断源的位数有关。该部件实质上是一个编码器,IO接口中的编码器是设备编码器。
终端服务程序的流程:保护现场,中断服务,恢复现场,中断返回
保护现场:保存程序的断点和通用寄存器以及状态寄存器。前者有中断隐指令完成,后者有中断服务程序完成。
中断服务:这是中断服务程序的主体部分,
恢复现场:这是中断服务程序的结尾部分
DMA接口类型:选择型DMA方式,这种方式的DMA在物理上可以连接多个设备,但在逻辑上,只能连接一个设备
DMA方式的特点:主存和DMA接口之间有一条直接的数据通路。
DMA的传送方式三种:停止cpu访问内存,周期挪用,cpu和DMA控制器交替访问内存。
1,停止cpu访问内存。
2,周期挪用(有三种情况,第一种为cpu不访问内存,dma开始申请;第二种是cpu正在访问,访问结束后,dma申请;第三种同时访问,cpu放弃,dma开始申请)。
3,交替访问访问内存:(基准时间,即时钟周期的时间要大于存取时间)
DMA控制器主要有DMA控制逻辑,中断申请逻辑,Ar地址寄存器,WC字寄存器,DBR数据缓冲寄存器,DAR设备地址寄存器组成。
传送过程主要有预处理,数据传送,后处理
预处理:
1,指明数据的传送方向(送向内存还是从内存输入);
2,设备地址送入DAR
3,主存首地址送入AR
4,传送数组字到wC
5,启动设备。
数据传送:
1,主存地址送总线。
2,数据送IO(内存)
3,主存地址加1
4,传送字减1
4,直到数据块传送完毕。
后处理:
中断服务程序做DMA结束处理,包括校验送入主存的数据是否正确,测试传送过程中,是否出错,错则转错误处理程序,决定是否继续DMA传送其他数据。