采用程序查询方式
接口的功能:
设有数据通路
数据经过结构起到缓冲作用,完成串—并变换
设有控制通路
用来传送CPU向I/O设备发出的控制命令,并且让CPU接受I/O设备的反馈信息
满足中断请求处理(程序中断方式)
这个特点使得CPU和I/O设备可以进行并行方式工作,提高CPU工作效率
使多台I/O设备并行工作,分时占用总线
缺点:
主机与I/O设备交换信息时,CPU要中断现行程序,即CPU和I/O设备不能做到绝对的并行工作
I/O设备与主存之间有一条直接数据通路,I/O设备可以直接与主存交换信息,
使CPU在I/O设备与主存交换信息时任能继续工作
为什么大中型计算机要采用通道技术
1. 大中型计算机I/O设备多,每个I/O设备配置专门DMA接口,增加硬件成本,并且会出现访问主存冲突
2. CPU对许多DMA接口管理,浪费时间
通道结构的特点
1. 通道可视为具有特殊功能的处理器,有专门的通道指令,独立执行通道指令所编写的输入输出程序
2. 依据CPU的I/O指令进行启动、停止、改变工作状态
3. CPU不直接参与管理,提高CPU资源利用率
I/O处理机(或称外围处理机)的特点
独立于主机工作,即可完成I/O通道要完成的I/O控制,又可以完成码制变换、格式处理、数据块检错、纠错等
操作码字段
特点:作为I/O指令和其他指令(如访存指令、算逻指令、控制指令等)的判别代码
命令码字段
特点:体现I/O设备的具体操作
作用:
1. 将数据从I/O设备输入主机
2. 将数据从主机输出至I/O设备
3. 转态测试
4. 形成某些操作命令
设备码字段
特点:是多台设备的选择码,相当于设备的地址
定义
通道指令是对具有通道的I/O系统专门设置的指令
通道指令又称通道控制字(Channel Control Word,CCW)是通道用于执行I/O操作的指令,
可以有管理程序存放在主存的任何地方,由通道从主存中取出并执行
特点
通道指令是通道自身的指令,用来执行I/O操作
如:读、写、磁带走带、磁盘找道
通常将I/O设备码看做是地址码,对I/O设备地址码的编址可采用两种方式:
统一编址
占用存储空间,减少了主存容量,但无需专用I/O指令
不统一编址
不占用主存空间,不影响主存容量,需要设置专门的I/O指令
并行传送
定义:同一瞬间,n位信息同时从CPU输出至I/O设备,或由I/O设备输入到CPU
特点:传送速度快,数据线多
串行传送
定义:同一瞬间只传送一位信息,在不同的时刻连续逐位传送一串信息
特点:传送速度慢,只需一根数据线和地址线
立即响应方式
适用于:对于一些工作速度十分缓慢的I/O设备,无需特殊联络信号
他们通常都已处于某种等待状态,只要CPU的I/O指令一到,他们便立即响应
如:指示灯的亮与灭,开关的通与关等
异步工作采用应答信号联络方式
适用于:当I/O设备与主机工作速度不匹配时,通常采用异步工作方式
特点:在交换信息前,I/O设备与CPU各自完成自身的任务,一旦出现联络信号,彼此才准备交换信息
分类:
1. 异步并行应答联络方式
2. 异步串行联络方式
同步工作采用同步时标联络方式
要求:I/O设备与CPU的工作速度完全同步
这种联络相互之间还得配有专用电路,用以产生同步时标来控制同步工作
要求:每台I/O设备都有一套控制线路和一组信号线,因此所用的器件和连线较多,对I/O设备增删都非常困难
出现时期:计算机发展初期
要去:通过一组总线(地址线、数据线、控制线),将所有的I/O设备与主机连接
出现时期:现代大多数计算机所采用的方式
注:I/O通道和I/O处理方式详细内容见计算机体系结构
程序查询方式是由CPU通过程序不断的查询I/O设备是否已做好准备,从而控制I/O设备与主机交换信息。
采用这种方式实现主机和I/O设备交换信息,要求I/O接口内设置一个能反映I/O设备是否准备就绪的状态标记,CPU通过对此标记的检测,可得知I/O设备的准备情况
当有多个I/O设备时,CPU需按各个I/O设备在系统中的优先级别进行逐级查询
完成查询需要的指令
测试指令:用来查询I/O设备是否准备就绪
传送指令:当I/O设备已准备就绪的时候,执行传送指令
转移指令:若I/O设备未准备就绪,执行转移指令,转移至测试指令,继续测试I/O设备状态
一方面:只要一启动I/O设备,CPU便不断的查询I/O设备的准备情况,从而终止了原程序的执行。CPU在反复查询过程中,犹如就地踏步
另一方面:I/O设备准备就绪后,CPU要一字一字地从I/O设备取出,经CPU送至主存,此刻CPU也不能执行原程序,使得CPU和I/O设备处于串行工作状态,CPU利用率不高
当CPU在启动I/O设备后,不查询设备是否已准备就绪,继续执行自身程序,只是当I/O设备准备就绪并向CPU发出中断请求后才予以响应,大大提高CPU工作效率
优点:在I/O设备进行准备的时候,CPU不需要时刻查询I/O设备的准备情况,不出现踏步的现象,CPU和I/O设备并行执行,CPU资源利用率提高
缺点:CPU和I/O接口不仅在硬件方面需要增加相应电路,而且在软件方面还需要编制中断服务程序
中断定义:
计算机在执行程序的过程中,当出现异常情况或特殊请求时,计算机停止现行程序的运行,转向对这些异常情况或特殊请求的处理,处理结束后再返回到现行程序的间断处,继续执行原程序
中断技术:
实现中断功能的软硬件技术统称
中断产生原因
在I/O设备与主机交换信息时,由于设备本身机电特性的原因,其工作速度较低,与CPU无法匹配,所以当CPU启动I/O设备之后,自己还需要等待一段时间等到I/O设备执行完成后,才能实现主机与I/O设备之间的信息交换
中断的本质
在设备准备的时候,CPU不作无谓等待,继续执行现行程序,只有当I/O设备准备就绪之后向CPU提出请求,再暂时中断CPU现行程序,使CPU执行I/O服务程序
中断技术应用领域
为了处理I/O中断,在I/O接口电路中必须配置相关的硬件电路
主存与I/O设备之间有一条数据通路,主存与I/O设备交换信息时,无须调用中断服务程序。
若出现DMA和CPU同时访存,CPU总是将总线占用权让给DMA,通常把DMA的这种占有称为窃取或挪用
注:窃取的时间一般为一个存取周期,故把DMA占用的存取周期称为窃取周期(挪用周期)
在DMA窃取存取周期(挪用周期)时,CPU仍能够继续执行内部操作
所谓媒体:是指信息传递和存储的最基本的技术和手段
常见的媒体:音乐、语言、图片、文件、书籍、电视、广播、电话
研究多媒体技术:就是要强调计算机与声音、活动图像、文件相结合
接口可以看做是两个系统或两个部件之间的交接部分,它既可以是两种硬件设备之间的连接电路,也可以是两个软件之间的共同逻辑边界
在这里我们主要是指主机和I/O设备之间设置的一个硬件电路及其软件控制
接口(Interface):若干个端口加上相应的控制逻辑才能组成接口
端口(Port):指接口电路中的一些寄存器,这些寄存器分别用来存放数据信息、控制信息和状态信息,
端口分类:数据端口、控制端口、状态端口
CPU通过输入指令,从端口读入信息,通过输出指令,可将信息写入到端口中
数据线
是I/O设备与主机之间数据代码的传送线
设备选择线
是用来传送设备码的,它的根数取决于I/O指令中设备码的位数
命令线
主要用来传送CPU向设备发出的各种命令信号
状态线
将I/O设备的状态向主机报告的信号线
由于I/O总线与所有的设备的接口电路进行相联,但是CPU究竟选择哪台设备,还得通过设备选择线上的设备码来确定
设备码将送至所有设备的接口
当CPU向I/O设备发出命令时,要去I/O设备能作出响应,
通常在I/O接口中设有存放命令的命令寄存器以及命令译码器
数据必须通过接口才能实现主机与I/O设备之间的传送
为了使CPU能及时了解个I/O设备的工作状态,接口内必须设置一些反应设备工作状态的触发器
随着大规模集成电路制作工艺的不断进步,目前大多数I/O设备所共用的电路都制作在一个芯片内,作为通用接口芯片。
另一些I/O设备专用的电路,制作在I/O设备的设备控制器中
本节所讲的接口的功能及组成均是指通用接口所具备的
将一个字节(一个字)的所有位同时传送
在设备与接口之间一位一位的传送
功能和操作方式可用程序来改变或选择
不能由程序来改变其功能,但可以通过硬连线逻辑来实现不同功能
可供多种I/O设备使用
为某类外设或某种用途专门设计的
用于连接速度较慢的I/O设备
现代计算机一般都可采用程序中断方式实现主机与I/O设备设备之间的信息交换,故都配有这类接口
用于连接高速I/O设备