当前位置:文档之家› 第7章输入输出习题参考解答

第7章输入输出习题参考解答

第7章思考题与习题参考答案1.计算机的I/O系统的功能是什么?它由哪几个部分组成?答:计算机的I/O系统,主要用于解决主机与外部设备间的信息通讯,提供信息通路,使外围设备与主机能够协调一致地工作。

计算机的I/O系统由I/O硬件和I/O软件两大部分组成。

其中I/O硬件包括:系统总线、I/O接口、I/O设备及设备控制器。

I/O软件包括:用户的I/O程序、设备驱动程序、设备控制程序。

2.I/O硬件包括哪几个部分?各部分的作用是什么?答:I/O硬件包括:系统总线、I/O接口、I/O设备及设备控制器。

系统总线的作用是为CPU、主存、I/O设备(通过I/O接口)各大部件之间的信息传输提供通路。

I/O接口通常是指主机与I/O设备之间设置的一个硬件电路及其相应的控制软件。

它用于在系统总线和外设之间传输信号,并起缓冲作用,以满足接口两边的时序要求。

I/O设备的作用是为主机与外部世界打交道提供一个工具。

设备控制器用来控制I/O设备的具体动作,不同的I/O设备需要完成的控制功能不同。

3.什么是用户I/O程序?什么是设备驱动程序?什么是设备控制程序?答:用户I/O程序是指用户利用操作系统提供的调用界面编写的具体I/O设备的输入输出程序。

例如用户编写的用打印机输出文本的程序。

设备驱动程序是一种可以使计算机和设备通信的特殊程序。

可以说相当于操作系统与硬件的接口,操作系统只有通过这个接口,才能控制硬件设备的工作,假如某设备的驱动程序未能正确安装,便不能正常工作。

设备控制程序就是驱动程序中具体对设备进行控制的程序。

设备控制程序通过接口控制逻辑电路,发出控制命令字。

命令字代码各位表达了要求I/O设备执行操作的控制代码,由硬件逻辑解释执行,发出控制外设的有关控制信号。

4.说明设计I/O系统的三个要素的具体内容。

答:设计I/O系统应该考虑如下三个要素:①数据定位: I/O系统必须能够根据主机提出的要求进行设备的选择,并按照数据在设备中的地址找到相应的数据。

②数据传输:I/O系统必须对数据传送的数量、速率及方向进行控制。

③同步:I/O系统必须保证主机与外设间的同步,或称为协调工作。

仅当设备准备好时主机才能输出数据;当数据可用时主机才能输入数据。

5.说明主机与I/O设备间的三种连接方式:总线型方式、通道方式及I/O处理机方式的优缺点。

答:①总线型连接方式CPU通过系统总线与主存储器、I/O接口电路相连接,通过I/O接口电路进一步实现对外设的控制。

总线连接的优点:结构简单、标准化、I/O接口扩充方便。

总线连接的缺点:系统中部件之间的信息交换,均依赖于总线,总线成为系统中的速度瓶颈,因而对于配置大量外设的系统不适合。

②通道方式输入/输出通道是一个独立于CPU的,专门管理I/O的处理机,它具有自己的指令和程序,专门负责数据输入输出的控制和管理。

通道控制方式可以做到一个通道控制多台设备与主存进行数据交换。

因而,通道方式进一步减轻了CPU的工作负担,增加了计算机系统的并行工作程度。

③I/O处理机方式I/O处理机是通道的进一步发展,它独立于主机工作,在结构上接近于一般的处理机,但其专用性更适于I/O处理。

在一个系统中可设置多台I/O处理机,分别承担I/O控制、通信、维护诊断等任务,形式上类似于一个多机系统。

I/O处理机方式与通道方式相比,基本上把原来CPU管理I/O的这部分功能全部接管过来了,这样使得I/O处理与CPU的操作完全并行起来。

6.什么是I/O接口?I/O接口有哪些功能?接口有哪些类型?答:I/O接口通常是指主机与I/O设备之间设置的一个硬件电路。

它用于在系统总线和外设之间传输信号,并起缓冲作用,以满足接口两边的时序要求。

I/O接口应具备的基本功能包括:识别设备地址,选择指定设备的功能;传送控制命令及返回状态信息的功能;数据传送和数据缓冲的功能;数据格式转换的功能;检错纠错功能、中断功能、DMA功能、时序控制功能等。

通常可对接口进行如下分类:按通用性可以将I/O接口分为通用接口与专用接口。

按可编程性可以将I/O接口分为可编程接口和不可编程接口。

按数据传送方式可以将I/O接口分为并行I/O接口和串行I/O接口。

按数据传送的控制方式可以将I/O接口分为程序型接口和DMA型接口。

7.什么是I/O端口?I/O端口有哪些编址方式?各自的特点是什么?答:I/O接口中可编址的寄存器称为I/O端口,如命令寄存器被称为命令端口,数据缓冲寄存器被称为数据端口,状态标记寄存器被称为状态端口。

I/O端口的编址方式有两种,一种是独立编址方式,也称为专用的I/O端口编址方式;另一种是存储器映射编址方式,也称为统一编址方式。

独立编址方式的特点是I/O端口和存储器在两个独立的地址空间中进行编址, I/O端口的读、写操作由专用的控制信号(如:IOR和IOW)来实现,在指令系统中需要有专用的I/O指令(如:IN指令和OUT指令)实现对I/O端口的访问。

存储器映射编址方式的特点是I/O端口和存储器共用统一的地址空间,一旦地址空间分配给I/O端口后,存储器就不能再占有这一部分的地址空间。

在这种方式下,I/O端口的读写操作同样由访存的控制信号(如:MEMR和MEMW)来实现,所有访问存储器的指令(包括数据传送指令、算术逻辑运算指令)都可以用于访问I/O端口。

8.程序查询方式、程序中断方式和DMA方式各自适用于什么范围?答:程序查询方式适用于CPU速度不高,CPU工作效率问题不是很重要,需要调试或诊断I/O接口及设备的场合。

程序中断方式适用于随机出现的服务,并且一旦提出要求,应立即响应。

DMA方式适用于主存和高速外设间大批数据交换的场合。

9.什么是程序查询I/O传送方式?以图7.5为例说明其工作过程。

答:程序查询方式是指CPU在进行输入/输出操作之前,先查询外设的状态,只有当外设准备就绪时,才进行数据传送。

这种传送方式也称为条件传送方式。

教材图7.5的工作过程如下:① CPU通过执行输入指令读取“准备好状态”。

首先CPU会将相应的端口地址通过地址线送至各设备的地址译码器,只有地址相符的设备的状态线才能被激活,同时CPU通过读状态控制线送读信号,读信号与地址译码器输出的状态线相与后开启“准备好”触发器的三态门,读出“准备好状态”,若打印机未准备好,CPU只能踏步等待,继续读取“准备好状态”,直至这个“准备好状态”为1时才进入第②步。

② CPU通过执行输出指令将一个字符送至数据寄存器(字符)。

首先CPU将数据寄存器的端口地址送至地址译码器以激活相应的数据状态线,然后CPU将要输出的字符放在数据总线上,并且发写控制信号,写信号与地址译码器输出的数据状态线相与后将输出字符打入数据寄存器(字符)。

③由写信号与地址译码器输出的数据状态线相与后的信号启动打印机打印该字符,同时清除“准备好状态”触发器。

④打印机打印完一个字符后,发“完成”信号,置准备好触发器为“1”,表示打印机可以接受下一个字符。

10.简述中断处理的过程。

指出其中哪些工作是由硬件实现的,哪些是由软件实现的。

答:不同的计算机对中断的处理各具特色,就其多数而论,中断处理过程如下:①关中断,进入不可再次响应中断的状态,由硬件实现。

②保存断点,为了在中断处理结束后能正确返回到中断点。

由硬件实现。

③将中断服务程序入口地址送PC,转向中断服务程序。

可由硬件实现,也可由软件实现。

④保护现场、置屏蔽字、开中断,即保护CPU中某些寄存器的内容、设置中断处理次序、允许更高级的中断请求得到响应,实现中断嵌套。

由软件实现。

⑤设备服务,实际上有效的中断处理工作是在此程序段中实现的。

由软件程序实现。

⑥退出中断。

在退出时,又应进入不可中断状态,即关中断、恢复屏蔽字、恢复现场、开中断、中断返回。

由软件实现。

11.程序中断方式的作用可以归纳为哪几个方面?答:程序中断方式的作用可以归纳为如下几个方面:①实现主机和外设的并行工作。

②处理故障。

③实现多道程序和分时操作。

④实时控制。

⑤实现人机联系。

12.以图7.8为例,说明程序中断方式的操作过程。

答:教材图7.8I/O接口中的中断逻辑操作过程如下:①首先设备驱动程序初始化接口中的控制寄存器,将中断服务程序入口地址送入中断向量地址单元,通过开中断置中断允许触发器为“1”,启动相应的外部设备做准备。

然后CPU 返回原程序继续执行。

②当外部设备准备好后,将准备触发器置“1”。

③由准备好信号将中断确认(此时为“0”)反相后的信号打入中断请求触发器,从而置“1”中断请求触发器。

④中断请求触发器的输出和中断允许触发器的输出相与后,向CPU发出中断请求Ireq 信号。

⑤CPU在每一条指令执行结束后,查询中断请求信号,若有中断请求,则发出中断响应Iack信号。

⑥中断响应信号经过中断判优电路传至指定接口和中断请求信号相与后,打开两个三态门,将中断向量地址及中断信息通过数据总线送CPU。

⑦CPU进入中断周期,执行中断隐指令,将程序断点进栈、关中断、向量地址送PC。

13.说明中断向量地址和中断服务程序入口地址之间的关系。

答:中断向量地址是由一个编码器电路生成的,它的作用是用来查找中断服务程序的入口地址,从而使机器转入中断服务程序执行。

向量地址单元可以存放一条直接转入指定中断服务程序入口的无条件转移指令,这样只要将向量地址送PC 就可以自动转入相应的中断服务程序;向量地址单元也可以存放相应中断源服务程序的入口地址,这叫做向量地址表,CPU 可以通过将向量地址单元的内容送入PC 的方法转入相应中断服务程序。

14.在什么条件下,I/O 设备可以向CPU 提出中断请求?答:当设备准备好,置中断请求触发器为“1”时,并且中断屏蔽触发器为“0”时,该设备就可以发出中断请求信号给CPU 。

15.在什么条件和什么时间,CPU 可以响应I/O 的中断请求?答:CPU 响应中断的条件是中断允许触发器为“1”。

CPU 响应中断的时间总是在每条指令结束时。

16.什么叫中断隐指令?中断隐指令有哪些功能?答:所谓中断隐指令是指在机器指令系统中没有的一条指令,它是CPU 在中断周期内由硬件自动完成的一条指令。

中断隐指令完成的功能包括:关中断、保护断点、中断向量地址送PC 。

17.现有A 、B 、C 、D 四个中断源,其优先级由高向低按A 、B 、C 、D 顺序排列。

若中断服务程序的执行时间为20μs ,根据图7.32所示的时间轴给出的中断源请求中断的时刻,画出CPU 执行程序的轨迹。

解:根据图7.32所示的时间轴给出的中断源请求中断的时刻,画出CPU 执行程序的轨迹如下:18.在向量方式的中断系统中,为什么外设接口将中断向量放在数据总线上,而不放D 服务C 服务B 服务A 服务图7.32 中断请求时间轴D 服务C 服务B 服务A 服务17题解图 中断请求时间轴在地址总线上?答:因为在系统总线中,地址总线是单向的,地址线上的信号只能用来选择内存单元或选择接口中的端口,而中断向量地址的内容是要在中断周期中被送至PC的,地址线做不到。

相关主题