做别的事。如果某一外设刚好在查询过自己之后才处于就绪状态,那么它就必须等CPU 查询完其他外设后再次查询自己时,才能让CPU 为它服务,这对于实时性要求较高的外设来说,就可能丢失数据。改进的措施可以采用增加缓冲寄存器的方法。
8 .如果采用程序查询方式从磁盘上输入一组数据,设主机执行指令的平均速度为100 万条指令每秒,试问从磁盘上读出相邻两个数据的最短允许时间间隔是多少? 若改为中断式输入,这个间隔是更短些还是更长些? 由此可得出什么结论?
解:指令的平均执行时间为1μs ,若采用程序查询方式,每传送一个数据至少需要5条指令,则从磁盘上读出相邻两个数据的最短允许时间间隔为5μs 。若改为中断方式输入,这个间隔不会缩短,只会延长。由此可知,中断方式并不适合磁盘这类高速外设使用。 9 .什么是中断? 外部设备如何才能产生中断?
解:中断是指:计算机执行现行程序的过程中,出现某些急需处理的异常情况和特殊请求,CPU 暂时中止现行程序,而转去对随机发生的更紧迫的事件进行处理,在处理完毕后,CPU 将自动返回原来的程序继续执行。外部设备(中断源)准备就绪后会主动向CPU 发出中断请求。通常由外设的完成信号将相应的中断请求触发器置成“1”状态,表示该中断源向CPU 提出中断请求。 10 .中断为什么要判优? 有哪些具体的判优方法? 各有什么优缺点?
解:当多个中断源同时发出中断请求时,CPU 在任何瞬间只能响应一个中断源的请求,所以需要把全部中断源按中断的性质和轻重缓急安排优先级,以保证响应优先级别最高的中断请求。中断判优的方法可分为:软件判优法和硬件判优法。前者简单,可以灵活地修改中断源的优先级别,但查询、判优完全是靠程序实现的,不但占用CPU 时间,而且判优速度慢。后者可节省CPU 时间,速度快,但是需要硬件判优电路,成本较高。
11 .CPU 响应中断应具备哪些条件?
解: ① CPU 接收到中断请求信号;
② CPU 允许中断; ③ 一条指令执行完毕。
12 .什么叫中断隐指令? 中断隐指令有哪些功能? 中断隐指令如何实现?
解:CPU 响应中断之后,经过某些操作,转去执行中断服务程序。这些操作是由硬件直接实现的,称为中断隐指令。中断隐指令并不是指令系统中的一条真正的指令,它没有操作码,所以中断隐指令是一种不允许、也不可能为用户使用的特殊指令。其所完成的操作主要有: ① 保存断点; ② 暂不允许中断; ③ 引出中断服务程序。
13 .什么是中断向量? 中断向量如何形成? 向量中断和非向量中断有何差异?
解:中断向量是指向量中断在中断事件在提出中断请求时,通过硬件向主机提供的中断向量地址。中断向量由中断源的有关硬件电路形成。向量中断和非向量中断的区别在于:前者是指那些中断服务程序的入口地址是由中断事件自己提供的中断;后者是指中断事件不能直接提供中断服务程序入口地址的中断。 14 .在程序中断处理中,要做到现行程序向中断服务程序过渡和中断服务程序执行完毕返回现行程序,必须进行哪些关键性操作? 一般采用什么方法实现这些操作?
解:最关键的操作有保存断点,适时开、关中断,保护和恢复现场等,其中部分工作由硬件完成,部分工作由软件完成。
15 .假定某机的中断处理方式是将断点存入00000Q 单元,并从77777Q 单元取出指令(即中断服务程序的第一条指令)执行。试排出完成此功能的中断周期微操作序列,并判断出中断服务程序的第一条指令是何指令(假定主存容量为215 个单元) ?
解:中断周期微操作序列: 00000Q → MAR
(PC) → MDR WRITE 0 → EINT 77777Q → PC
中断服务程序的第一条指令必须是一条无条件转移指令,否则PC+1将会变为000000 ,断点被当成指令。 16 .假设有1 、2 两个设备,其优先级为设备1 > 设备2 ,若它们同时提出中断请求,试说明中断处理过程,画出其中断处理过程示意图,并标出断点。 解:中断处理过程示意图见图8-15 。
图8唱15 中断处理过程示意图
17 .现有A 、B 、C 、D 共4 个中断源,其优先级由高向低按A 、B 、C 、D 顺序排列。若中断服务程序的执行时间为20μs ,请根据图8-16 所示时间轴给出的中断源请求中断的时刻,画出CPU 执行程序的轨迹。
解:CPU 执行程序的轨迹如图8-17 所示。
18 .设某机有5 级中断:L0 、L1 、L2 、L3 、L4 ,其中断响应优先次序为:L0 最高、L1 次 之、? ? 、L4 最低。现在要求将中断处理次序改为L1 → L3 → L0 → L4 → L2 ,试问: (1) 各级中断服务程序中的各中断屏蔽码应如何设置(设每级对应一位,当该位为 “0” ,表示中断允许;当该位为“1” ,表示中断屏蔽) ?
(2) 若这5 级同时都发出中断请求,试画出进入各级中断处理过程示意图。 解:(1) 各级中断服务程序中的各中断屏蔽码设置如表8-3 所示
(3) 5 级中断同时发出中断请求,各级中断处理过程示意如图8-18 所示。
19 .实现多重中断应具备何种条件? 如有A 、B 、C 、D 共4 级中断,A 的优先级最高,B 次之,? ? ,D 最低。如在程序执行过程中,C 和D 同时申请中断,该先响应哪级中断?如正在处理该中断时,A 、B 又同时有中断请求,试画出该多级中断处理的流程来。
解:多重中断又称为中断嵌套,在执行某个中断服务程序的过程中,CPU 可去响应级别更高的中断请求。 多级中断处理的流程如图8-19 所示。
20 .CPU 响应DMA 请求和响应中断请求有什么区别? 为什么通常使DMA 请求的优先级高于中断请求? 解:对中断请求的响应时间只能发生在每条指令执行完毕时,而对DMA 请求的响应时间可以发生在每个机器周期结束时。DMA 方式常用于高速外设的成组数据传送,如果不及时处理将丢失信息,所以DMA 请求的优先级应高于中断请求。
21 .什么是DMA 传送方式? 试比较常用的3 种DMA 传送方法的优缺点?
解:DMA 传送方式是在外设和主存之间开辟一条“直接数据通道” ,在不需要CPU干预也不需要软件介入的情况下在两者之间进行的高速数据传送方式。
常用的DMA 传送方法有:CPU 停止访问主存法、存储器分时法和周期挪用法。
CPU 停止访问主存法适用于高速外设的成组传送,可以减少系统总线控制权的交换次数,有利于提高输入输出的速度。
存储器分时法无需申请和归还总线,可在CPU 不知不觉中进行了DMA 传送;但这种方法需要主存在原来的存取周期内为两个部件服务,如果要维持CPU 的访存速度不变,就要求主存的工作速度提高一倍。另外,由于大多数外设的速度都不能与CPU 相匹配,所以供DMA 使用的时间片可能成为空操作,将会造成一些不必要的浪费。
周期挪用法是前两种方法的折中。 22 .实现DMA 传送需要哪些硬件支持?
解:DMA 传送需要DMA 控制器的支持。DMA 控制器中主要有下面各部分。 主存地址计数器:用来存放待交换数据的主存地址。 传送长度计数器:用来记录传送数据块的长度。 数据缓冲寄存器:用来暂存每次传送的数据。
DMA 请求触发器:每当外设准备好数据后给出一个控制信号,使DMA 请求触发器置位。
控制/状态逻辑:用于指定传送方向,修改传送参数,并对DMA 请求信号和CPU 响应信号进行协调和同步。 中断机构:当一个数据块传送完毕后触发中断机构,向CPU 提出中断请求,CPU 将进行DMA 传送的结束处理。
23 .简述DMA 传送的工作过程。
解:DMA 传送的工作过程为:
① DMA 预处理:在DMA 传送之前必须要做准备工作,即初始化。CPU 首先执行几条I/O 指令,用于测试外设的状态、向DMA 控制器的有关寄存器设置初值、设置传送方向、启动该外部设备等。在这些工作完成之后,CPU 继续执行原来的程序,由外设向DMA 控制器发DMA 请求,再由DMA 控制器向CPU 发总线请求。 ② 数据传送:DMA 的数据传送可以单字节(或字)为基本单位,也可以数据块为基本单位。
③ DMA 后处理:当传送长度计数器计到0 时,DMA 操作结束,DMA 控制器向CPU发中断请求,CPU 停止原来程序的执行,转去执行中断服务程序做DMA 结束处理工作。 24 .在主存接收从磁盘送来的一批信息时:
(1) 假定主存的周期为1μs ,若采用程序查询方式传送,试估算在磁盘上相邻两数据字间必须具有的最短允许时间间隔是多少?
(2) 若改为中断方式传送,这个时间又会怎样? 是否还有更好的传送方式?
(3) 在采用更好的传送方式下,假设磁盘上两数据字间的间隔为1μs ,主存又要被CPU 占有一半周期时间,试计算这种情况下主存周期最少应是多少?
解:(1) 根据程序查询方式的流程图可见,程序查询方式至少需要5 条指令才能完成一个数据的传送,假定每条指令执行时间为1μs ,则两个数据字之间的最短时间间隔为5μs(假设每条指令1μs) 。 (2) 采用中断方式传送,这个时间并不会缩短,因为程序切换时有许多辅助操作要执行。更好的传送方式是DMA 方式。
(3) 在DMA 方式下,假设磁盘上两数据字间的间隔为1μs ,主存又要被CPU 占有一半周期时间,需要采用存储器分时法,此时主存周期最少应是原来的一半,即0 .5μs 。
25 .磁盘机采用DMA 方式与主机通信,若主存周期为1μs ,能否满足传送速率为1MB/s 的磁盘机的要求? 此时CPU 处于什么状态? 若要求主存有一半时间允许CPU访问,该如何办?
解:刚好能满足磁盘机的要求,但此时CPU 只能处于停止访问主存方法。若要求主存有一半时间允许CPU 访问,则主存的存取周期必须提高到0 .5μs 。
26 .什么是通道控制方式? 通道和设备控制器各有哪些基本功能?
解:通道是一种高级的I/O 控制部件,它在一定的硬件基础上利用软件手段实现对I/O 的控制和传送,更多地免去了CPU 的介入,从而使主机和外设的并行工作程度更高。通道的基本功能为: ① 接受CPU 的I/O 指令,按指令要求与指定的外设进行联系;
② 从主存取出属于该通道程序的通道指令,经译码后向设备控制器和设备发送各种命令;
③ 实施主存和外设间的数据传送,如为主存或外设装配和拆卸信息,提供数据中间缓存的空间以及指示数
据存放的主存地址和传送的数据量;
④ 从外设获得设备的状态信息,形成并保存通道本身的状态信息,根据要求将这些状态信息送到主存的指定单元,供CPU 使用;
⑤ 将外设的中断请求和通道本身的中断请求按次序及时报告CPU 。设备控制器的基本功能为: ① 从通道接收控制信号,控制外部设备完成所要求的操作; ② 向通道反馈外部设备的状态;
③ 将外部设备的各种不同信号转换为通道能识别的标准信号。 27 .通道有哪些基本类型? 各有何特点?
解:通道可分为3 种基本类型:字节多路通道、选择通道和数组多路通道。
字节多路通道是一种简单的共享通道,用于连接与管理多台低速设备,以字节交叉方式传送信息。
选择通道也可以连接多个设备,但这些设备不能同时工作,在一段时间内通道只能选择一台设备进行数据传送,此时该设备可以独占整个通道。选择通道主要用于连接高速外设,以成组方式高速传送。
数组多路通道是把字节多路通道和选择通道的特点结合起来的一种通道结构。它的基本思想是:当某设备进行数据传送时,通道只为该设备服务;当设备在执行辅助操作时,通道暂时断开与这个设备的连接,挂起该设备的通道程序,去为其他设备服务。
28 .已知一个32 位大型计算机系统具有两个选择通道和一个多路通道。每个选择通道连接两台磁盘机和两台磁带机,多路通道连接两台打印机、两台卡片输入机和10 台CRT 显示终端。假设这些设备的传送速率分别为
磁盘机 800KB/s 磁盘机200KB/s 打印机6 .6KB/s 卡片输入机1 .2KB/s CRT 显示终端1KB/s
求该计算机系统的最大I/O 传送速率。
解:由于两个选择通道所连接的设备相同,只要计算其中一个通道的通道传输率即可。因为磁盘机的传输率大于磁带机,所以此类型通道的通道传输率为:
选择通道传输率= max{800 ,200} = 800KB/s 字节多路通道的最大传输率是通道上所有设备的数据传输率之和。即:
字节多路通道传输率= 6 .6 × 2 + 1 .2 × 2 + 1 × 10 = 25 .6 KB/s 计算机系统最大I/O 数据传输率=2×选择通道传输率+字节多路通道传输率=800×2+25 .6 = 1625 .6KB/s
29 .某计算机I/O 系统中,接有一个字节多路通道和一个选择通道。字节多路通道包括3 个子通道。其中:0 号子通道上接有两台打印机(传送率为5KB/s) ;1 号子通道上接有3 台卡片输入机(传送率为1 .5KB/s) ;2 号子通道上接8 台显示器(传送率为1KB/s) 。选择通道上接两台磁盘机(传送率为800KB/s) ;5 台磁带机(传送率为250KB/s) ,求I/O 系统的实际最大流量。若I/O 系统的极限容量为822KB/s ,问能否满足所连接设备流量的要求?
解:字节多路通道传输率= 5 × 2 + 1 .5 × 3 + 1 × 8 = 22 .5KB/s 选择通道传输率= max{800 ,500} = 800KB/s
计算机系统最大I/O数据传输率=选择通道传输率+字节多路通道传输率=800+22.5=822 .6KB/s 不能满足所连接设备流量的要求。
30 .试概括通道控制方式和DMA 方式的异同点。
解:DMA 和通道控制方式最基本的相同点是从CPU 中接管外设与主存交换数据过程的控制权,使外设能与主机并行工作。它们之间主要的不同之处在于:
① DMA 与通道的工作原理不同。DMA 通过专门设计的硬件控制逻辑来控制数据交换的过程;而通道则是一
百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说教育文库计算机组成原理习题答案(10)在线全文阅读。
相关推荐: