计算机组织与系统结构第九章习题答案(2)

2018-11-20 18:55

11. 假设某计算机带有20个终端同时工作,在运行用户程序的同时,能接受来自任意一个

终端输入的字符信息,并将字符回送显示(或打印)。每一个终端的键盘输入部分有一个数码缓冲寄存器RDBRi(i=1~20),当在键盘上按下某一个键时,相应的字符代码即进入RDBRi,并使它的“完成”状态标志Donei (i=1~20)置1,要等处理器把该字符代码取

走后, Donei标志才置0。每个终端显示(或打印)输出部分也有一个数码缓冲寄存器TDBRi(i=1~20),并有一个Readyi (i=1~20)状态标志,该状态标志为1时,表示相应的TDBRi是空着的,准备接收新的输出字符代码,当TDBRi接收了一个字符代码后, Readyi标志才置0,并送到终端显示(或打印),为了接收终端的输入信息,处理器为每个终端设计了一个指针PTRi (i=1~20)指向为该终端保留的主存输入缓冲区。处理器采用下列两种方案输入键盘代码,同时回送显示(或打印)。

(1)每隔一固定时间T转入一个状态检查程序DEVCHC,顺序地检查全部终端是否有任何键盘信息要输入,如果有,则顺序完成之。 (2)允许任何有键盘信息输入的终端向处理器发出中断请求。全部终端采用共同的向量

地址,利用它使处理器在响应中断后,转入一个中断服务程序DEVINT,由后者询

问各终端状态标志,并为最先遇到的请求中断的终端服务,然后转向用户程序。 要求画出DEVCHC和DEVINT两个程序的流程图。

显示 TDBRi Readyi 主机 PTRi 键盘 RDBRi Donei

12. 假定某计算机的CPU主频为500MHz,所连接的某个外设的最大数据传输率为20KBps,

该外设接口中有一个16位的数据缓存器,相应的中断服务程序的执行时间为500个时钟周期,则是否可以用中断方式进行该外设的输入输出?假定该外设的最大数据传输率

改为2MBps,则是否可以用中断方式进行该外设的输入输出? 参考答案:

(1)外设最大传输率为20KBps

每传输完16位进行一次中断处理,因此一秒钟内的中断次数为:20K/2=10K次 中断响应过程就是执行一条隐指令的过程,所用时间相对于中断处理时间(即执行中断服务程序的时间)而言,几乎可以忽略不计,因而整个中断响应并处理的时间大约:(1s / 500MHz)x500=1μs

一秒钟内的中断服务程序执行要用去10K x 1μs = 10ms << 1s 所以可以用中断方式进行该外设的输入输出。

(2)外设最大传输率为2MBps

每传输完16位进行一次中断处理,因此一秒钟内的中断次数为:2M/2=1M次 一秒钟内的中断服务程序执行要用去1M x 1μs = 1s ! 所以不可以用中断方式进行该外设的输入输出。

(另外一种算法:若外设的最大传输率为2MBps,则中断请求的时间间隔为2B/2MBps=1μs。而整个中断响应并处理的时间也是1μs,中断请求的间隔时间小于中断响应和处理时间,也即中断处理还未结束就会有该外设新的中断到来,所以不可以。)

13. 若某计算机有5级中断,中断响应优先级为1>2>3>4>5,而中断处理优先级为

1>4>5>2>3。要求:

(1)设计各级中断处理程序的中断屏蔽位(假设1为屏蔽,0为开放);

(2)若在运行主程序时,同时出现第2、4级中断请求,而在处理第2级中断过程中,

又同时出现1、3、5级中断请求,试画出此程序运行过程示意图。

参考答案:

(1)1级中断的处理优先级最高,说明1级中断对其他所有中断都屏蔽,其屏蔽字为全1;3级中断的处理优先级最低,所以除了3级中断本身之外,对其他中断全都开放,其屏蔽字为00100。以此类推,得到所有中断屏蔽字:

中断程序级别 中断屏蔽字 1级 2级 3级 4级 5级 第1级 1 1 1 1 1 第2级 0 1 1 0 0 第3级 0 0 1 0 0 第4级 0 1 1 1 1 第5级 0 1 1 0 1

(2)程序运行过程示意图

在运行用户程序时,同时出现2、4级,因为用户程序对所有中断都开放,所以,(1)关中断,在中断响应优先级排队电路中,有2、4两级中断进行排队判优,根据中断响应优先级2>4,因此先响应2级中断。在CPU执行2级中断服务程序过程中,首先保护现场、保护旧屏蔽字、设置新的屏蔽字01100,(2)在中断处理前先开中断。一旦开中断,则马上响应4级中断,因为2级中断处理优先级低于4级中断。则响应并处理4级中断,结束后才回到2级中断服务程序执行;(3)在处理2级中断过程中(此时开中断状态),同时发生了1、3、5级中断,因为2级中断对1、5级中断开放,对3级中断屏蔽,所以只有1和5两级中断进行排队判优,根据中断响应优先级1>5,所以先响应1级中断。因为1级中断处理优先级最高,所以在其处理过程中不会响应任何新的中断请求,直到1级中断处理结束,然后返回2级中断;(4)因为2级中断对5级中断开放,所以在2级中服务程序中执行一条指令后,又转去执行5级中断服务程序,执行完后回到2级中断,(5)在2级中断服务程序执行过程中,虽然3级中断有请求,但是,因为2级中断对3级中断不开放,所以,3级中断一直得不到响应。直到2级中断处理完回到用户程序,才能响应并处理3级中断。

14. 假定某计算机字长16位,没有cache,运算器一次定点加法时间等于100毫微秒,配置

的磁盘旋转速度为每分钟3000转,每个磁道上记录两个数据块,每一块有8000个字节,两个数据块之间间隙的越过时间为2毫秒,主存周期为500毫微秒,存储器总线宽度为16位,总线带宽为4MBps。

(1)磁盘读写数据时的最大数据传输率是多少?

(2)当磁盘按最大数据传输率与主机交换数据时,主存频带空闲百分比是多少? (3)直接寻址的“存储器-存储器”SS型加法指令在无磁盘I/O操作打扰时的执行时间为

多少?当磁盘I/O操作与一连串这种SS型加法指令执行同时进行时,则这种SS

型加法指令的最快和最慢执行时间各是多少?(假定采用多周期处理器方式,CPU时钟周期等于主存周期)参考答案:

(1) 磁头旋转一周所需要的时间为:60s / 3000 = 20ms

所以读完单个数据块所需时间为:(20 – 2x2)/ 2 = 8ms 所以最大数据传输率为:8000B / 8ms =1×10Bps

(2) 因为总线宽度为16位,而最大数据传输率为1×106Bps,故每隔2B/1MBps =

CPU 主存 DMA 磁盘 6

2000ns需要产生一个DMA请求(准备好16位数据),而主存周期为500ns(在总线上与主存交换16位数据),即每4个存储周期中有一次被DMA挪用,故主存频带空闲比是75%

主存周期 75%

(3) 无I/O打扰时,执行一条直接寻址的SS型加法指令的时间为: 取指500ns+取源500ns+取目500ns+执行500ns+存结果500ns = 2.5 μs

当磁盘I/O操作与一连串这种SS型加法指令同时进行时,则CPU和DMA可能同时要求访问主存,此时DMA优先级高,CPU的访存请求被延迟,从而导致指令执行时间延长。

由此可见,最好的情况是在SS型加法指令执行过程中没有访存冲突,此时最快,需5个存储周期的时间:500nsx5=2.5μs;最坏的情况是有一次访存冲突,此时最慢,需6个存储周期的时间:500nsx6=3μs。

15. 假定某计算机所有指令都可用两个总线周期完成,一个总线周期用来取指令,另一个总

线周期用来存取数据。总线周期为250ns,因而,每条指令的执行时间为500ns。若该计

算机中配置的磁盘上每个磁道有16个512字节的扇区,磁盘旋转一圈的时间是8.192ms,则采用周期挪用法进行DMA传送时,总线宽度为8位和16位的情况下该计算机指令执行速度分别降低了百分之几? 参考答案:

磁盘存取1个字节数据需要的时间:8.192ms / 16x512B = 1000ns / B = 4个总线周期 总线为8位: 每4个总线周期中要挪用1个进行8位传送,每次挪用都导致指令执行延后

1个周期,即原来要2N个周期完成的指令现在需要2.5N个周期完成,因此降低了0.5/2=25%

磁盘存取2个字节数据需要的时间:8个总线周期

总线为16位:每8个总线周期挪用1次。降低了1/8 = 12.5%。


计算机组织与系统结构第九章习题答案(2).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:原料药稳定性研究SOP

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: