zoukankan      html  css  js  c++  java
  • 5

    CH5 输入输出系统

     

    5.1. I/O设备有哪些编址方法?各有何特点?

    答:I/O与内存统一编址与I/O独立编址。 答案见P160

    5.2. 简要说明CPUI/O设备之间传递信息可采用哪几种联络方式?分别用于何场合?

    答:3种联络方式:立即响应,异步工作,同步工作。答案参见P1614.联络方式”。

    5.3. I/O设备与主机交换信息时有哪几种控制方式?简述它们的特点?

    答:5种控制方式:程序查询,程序中断,DMAI/O通道,I/O处理机。特点如下,

    程序查询方式CPU通过程序不断查询I/O设备是否准备好,I/O接口上必须设有状态标记以供CPU查询;I/O设备与CPU处于串行工作状态,CPU存在踏步现象,工作效率低。

    程序中断方式CPU在启动I/O设备后继续执行自身程序;只有当外设准备好,向CPU发出中断请求且CPU响应后,才中断当前执行程序,转去处理中断请求,中断处理完再返回原程序。这种方式消除踏步现象,只有在中断处理时占用CPUCPU工作效率较高。

    DMA方式:主存与外设之间有一条数据通道;主存与外设交换数据时无需CPU介入,而由DMA控制器来控制;CPU将总线使用权让给DMA控制器。

    答案参见P162~165

    5.4. 比较程序查询方式,程序中断方式,和DMA方式对CPU工作效率的影响?

    答:程序查询方式I/O设备准备时,CPU通过程序不断查询I/O设备是否准备好;I/O设备与CPU处于串行工作状态,CPU工作效率低。

    程序中断方式 I/O设备准备时无需占用CPUCPU继续执行当前程序,这时CPUI/O设备并行工作;当外设准备好发送(接收)数据时,向CPU发出中断请求时,才需要CPUCPU处理中断并转去执行中断服务子程序时,中断处理完CPU返回断点处继续执行原程序。与程序查询方式相比,CPU工作效率高很多。

    DMA方式外设在准备数据以及与主存交换数据时,均无需占用CPU,数据交换由DMA控制器来控制,而CPU将总线使用权让给DMA控制器。在数据交换时,CPU虽不能访存,但可以做一些内部操作。在数据交换结束时,需要CPU以中断方式介入进行数据后处理工作3种方式中,DMA方式下CPU的工作效率最高。

    5.8. 答:每个字符=10bits,数据传送率=480*10=4800bps

    5.10 什么是I/O接口,它与端口的区别?为何要设置I/O接口?I/O接口如何分类?

    答:接口:CPU与外部设备之间的连接部件。

    接口与端口的区别:参见P186-187

    设置接口的理由(P187):选择设备,数据缓冲,数据转换,传送主机命令和设备状态。

    接口分类(P190):并行/串行接口,可编程/不可编程接口,通用/专用接口,程序型/DMA型接口。

    5.11 简述I/O接口的功能和基本组成?

    答:I/O接口的功能(P188):选址,传送数据,传送命令,反映设备状态。

    I/O接口组成(P190):设备选择电路,数据缓冲器,命令寄存器,命令译码器,设备状态标记,控制逻辑电路。图见图5.31

    5.12 结合程序查询方式的接口电路,说明其工作过程?

    答:程序查询方式接口电路的工作过程(P193),图见图5.35

    5.13 说明中断向量地址与入口地址的区别与联系。

    答:区别:向量地址是由硬件电路产生的,其位数与中断源个数相关,一个中断源对应一个向量地址;中断入口地址是中断服务子程序的首地址。

    联系:向量地址可以看作中断入口地址的指示器,通过它访存可获得中断入口地址。

    5.14 什么条件下,I/O设备向CPU提出中断请求?

    答:外设向CPU提出中断请求的条件:外设工作完成(完成触发器D被置为1),且中断屏蔽触发器MASK被置为0,则中断请求触发器INTR被置为1。(P195

    5.15 什么是中断允许触发器?它有何作用?

    答:中断允许触发器:CPU内部触发器,以ENIT表示。ENIT为“1”(置位),允许CPU响应中断,为“0”(复位),不允许CPU响应中断。该触发器可用开中断指令置位,用关中断指令复位。

    置位中断允许触发器的时间不同,可实现单重中断和多重中断。

    5.16. 在什么条件和时间下,CPU可以响应外设的中断请求?

    答:当外设申请中断时,CPU响应中断的条件:中断允许触发器置1

        CPU响应中断的时间:每条指令执行阶段的结束时刻。

    5.17.

    答:[注意:主程序对N个数据的处理不是中断处理。]

    处理N个数据的时间=P*N+Q(秒)。则,每个数据需要的处理时间=( P*N+Q)/N

    所以:每秒钟,该系统可跟踪的中断请求次数为:N/( P*N+Q)

    5.19 答:[这题为中断嵌套。] 打印机输出应停下来等磁盘操作结束再继续。此外,打印机速度比磁盘输入输出速度慢,因此暂停打印不会造成数据丢失。

    5.20 答:单重中断与多重中断的处理流程图见:书P201 5.43

    不同:在恢复现场之后、中断返回之前开中断,可以实现单重中断;在保护现场之后立即开中断,可以实现多重中断。

     

    5.21 中断向量通过什么总线送至什么地方?

    答: 中断向量通过什么地址总线送至指令寄存器PC

    5.28 CPUDMA请求和中断请求的响应时间是否相同?为什么?

    答:响应时间不同。CPU响应DMA方式在指令周期的任一存取周期结束时,响应中断指令执行结束时。(书 P210

    原因:采用DMA方式交换数据,数据输入输出的速度很快,CPU必须以更短的时间查询和响应,否则数据丢失。

    5.29 结合DMA接口电路说明其工作过程(以数据输入主存为例)。

    答:参加P207,图5.47P205

    5.30 答:两者主要区别在于:数据传送阶段,CPU是否完全停止访存。

             图见“计组原理ch5(5).pptP5~8

    5.31 答:每次信息传送时间=1/40k =25*10-6=25us, 小于40us。所以,不能使用中断方式。

    5.32. 答:[分析:计算磁盘传送速度,然后与指令执行速度进行比较]

    磁盘的数据传输率=(3000/60)*8*1kB = 50*8k (B/s)

    则,数据总线的数据传送的频率 >= 磁盘的数据传输率,数据才不丢失。即数据总线的数据传送的频率 f >= [(50*8k*8)bits/16bits] f >= 200kHz

    则,每次传送数据所需时间:t<=1/200kHz  t<=5us. 

    上式表示:至少每隔5us必须传送一次数据,否则数据将丢失。

    而指令最长执行时间为25us, 远大于5us, 因此不能在指令结束时响应DMA请求。

    可采用的方案:在主存的存取周期结束时响应DMA请求。

  • 相关阅读:
    bzoj4195 [Noi2015]程序自动分析
    bzoj4236 JOIOJI hash 模拟
    bzoj1012 [JSOI2008]最大数maxnumber
    day 4 名片管理系统 -函数版
    day 3 局部变量 全局变量
    day 2 函数的嵌套
    day1 函数 (独立功能代码块)
    day 14 元组
    day 13 字典dict 操作
    day 12 列表字典 补充
  • 原文地址:https://www.cnblogs.com/muyoushui/p/1651993.html
Copyright © 2011-2022 走看看