计算机组成原理-第二版-唐朔飞著-课后习题答案完整

2018-11-07 18:55

行速度比该外设的交换速度慢。

32. 设磁盘存储器转速为3000转/分,分8个扇区,每扇区存储1K字节,主存与磁盘存储器数据传送的宽度为16位(即每次传送16位)。假设一条指令最长执行时间是25?s,是否可采用一条指令执行结束时响应DMA请求的方案,为什么?若不行,应采取什么方案?

解:先算出磁盘传送速度,然后和指令执行速度进行比较得出结论。

道容量= 1K ×8 ×8 位= 8KB = 4K字

数传率=4K字×3000转/分=4K字×50转/秒 =200K字/秒

一个字的传送时间=1/200K秒? 5?s (注:在此1K=1024,来自数据块单位缩写。)

因为5 ?s<<25?s,所以不能采用一条指令执行结束响应DMA请求的方案,应采取每个CPU机器周期末查询及响应DMA请求的方案(通常安排CPU机器周期=MM存取周期)。

33. 试从下面七个方面比较程序查询、程序中断和DMA三种方式的综合性能。 (1)数据传送依赖软件还是硬件。 (2)传送数据的基本单位。 (3)并行性。 (4)主动性。 (5)传输速度。 (6)经济性。

(7)应用对象。 解:比较如下:

(1)程序查询、程序中断方式的数据传送主要依赖软件,DMA主要依赖硬件。 (注意:这里指主要的趋势)

(2)程序查询、程序中断传送数据的基本单位为字或字节,DMA为数据块。 (3)程序查询方式传送时,CPU与I/O设备串行工作;程序中断方式时,CPU与I/O设备并行工作,现行程序与I/O传送串行进行;DMA方式时,CPU与I/O设备并行工作,现行程序与I/O传送并行进行。

(4)程序查询方式时,CPU主动查询I/O设备状态;程序中断及DMA方式时,CPU被动接受I/O中断请求或DMA请求。

(5)程序中断方式由于软件额外开销时间比较大,因此传输速度最慢;程序查询方式软件额外开销时间基本没有,因此传输速度比中断快;DMA方式基本由硬件实现传送,因此速度最快;

注意:程序中断方式虽然CPU运行效率比程序查询高,但传输速度却比程序查询慢。

(6)程序查询接口硬件结构最简单,因此最经济;程序中断接口硬件结构稍微复杂一些,因此较经济;DMA控制器硬件结构最复杂,因此成本最高; (7)程序中断方式适用于中、低速设备的I/O交换;程序查询方式适用于中、低速实时处理过程;DMA方式适用于高速设备的I/O交换; 讨论:

问题1:这里的传送速度指I/O设备与主存间,还是I/O与CPU之间? 答:视具体传送方式而定,程序查询、程序中断为I/O与CPU之间交换,

DMA为I/O与主存间交换。

问题2:主动性应以CPU的操作方式看,而不是以I/O的操作方式看。 补充题:

一、某CRT显示器可显示64种ASCII字符,每帧可显示72字×24排;每个字符字形采用7×8点阵,即横向7点,字间间隔1点,纵向8点,排间间隔6点;帧频50Hz,采取逐行扫描方式。假设不考虑屏幕四边的失真问题,且行回扫和帧回扫均占扫描时间的20%,问: 1)显存容量至少有多大?

2)字符发生器(ROM)容量至少有多大? 3)显存中存放的是那种信息?

4)显存地址与屏幕显示位置如何对应?

5)设置哪些计数器以控制显存访问与屏幕扫描之间的同步?它们的模各是多少?

6)点时钟频率为多少?

解:1)显存最小容量=72×24×8 =1728B

2)ROM最小容量=64×8行×8列= 512B(含字间隔1点) 3)显存中存放的是ASCII码信息。

4)显存每个地址对应一个字符显示位置,显示位置自左至右,从上到下,分别对应缓存地址由低到高。

5)设置点计数器、字计数器、行计数器、排计数器控制显存访问与屏幕扫描之间的同步。

它们的模计算如下: 点计数器模 = 7+1 = 8 行计数器模 = 8 + 6 = 14

字、排计数器的模不仅与扫描正程时间有关,而且与扫描逆程时间有关,因此计算较为复杂。

列方程: (72+x)× 0.8 = 72

(24+y)× 0.8 = 24

解方程得:x = 18,y = 6,则: 字计数器模 = 72 + 18 = 90 排计数器模 = 24 + 6 = 30

6)点频 = 50Hz × 30排 × 14行 × 90字 × 8点 = 15 120 000Hz= 15.12MHz

二、有一编码键盘,其键阵列为8行×16列,分别对应128种ASCII码字符,采用硬件扫描方式确认按键信号,问: 1)扫描计数器应为多少位? 2)ROM容量为多大?

3)若行、列号均从0开始编排,则当第5行第7列的键表示字母“F”时,CPU从键盘读入的二进制编码应为多少(设采用奇校验)? 4)参考教材图5.15,画出该键盘的原理性逻辑框图; 5)如果不考虑校验技术,此时ROM是否可省? 解:1)扫描计数器 = 7位(与键的个数有关)

2)ROM容量 = 128 × 8 = 128B(与字符集大小有关)

3)CPU从键盘读入的应为字符“F”的ASCII码 = 01000110 (46H) ,其中最高位为奇校验位(注:不是位置码)。

4)该键盘的原理性逻辑框图见下页,与教材图5.15类似,主要需标明参数。 5)如果不考虑校验技术,并按ASCII码位序设计键阵列(注意) ,则ROM编码表可省,此时7位计数器输出值(扫描码或键位置码)即为ASCII码。

该键盘的原理性逻辑框图如下:

三、一针式打印机采用7列×9行点阵打印字符,每行可打印132个字符,共有96种可打印字符,用带偶校验位的ASCII码表示。问: 1)打印缓存容量至少有多大? 2)字符发生器容量至少有多大? 3)列计数器应有多少位? 4)缓存地址计数器应有多少位?

解:1)打印缓存最小容量 = 132×8= 132B(考虑偶校验位)

2)ROM最小容量 = 96×7列×9行= 672×9位 3)列计数器 = 3位(7列向上取2的幂) 4)缓存地址计数器 = 8位(132向上取2的幂) 讨论:

1.由于针打是按列打印,所以ROM一个存储单元中存一列的9个点,则容量为672×9位;

2.列计数器是对列号进行计数,所以模=7,3位(模不等于位数);

第1章 计算机系统概论

1. 什么是计算机系统、计算机硬件和计算机软件?硬件和软件哪个更重要? 解:P3

计算机系统:由计算机硬件系统和软件系统组成的综合体。 计算机硬件:指计算机中的电子线路和物理装置。 计算机软件:计算机运行所需的程序及相关资料。

硬件和软件在计算机系统中相互依存,缺一不可,因此同样重要。

2. 如何理解计算机的层次结构?

答:计算机硬件、系统软件和应用软件构成了计算机系统的三个层次结构。

(1)硬件系统是最内层的,它是整个计算机系统的基础和核心。 (2)系统软件在硬件之外,为用户提供一个基本操作界面。

(3)应用软件在最外层,为用户提供解决具体问题的应用系统界面。 通常将硬件系统之外的其余层称为虚拟机。各层次之间关系密切,上层是下层的扩展,下层是上层的基础,各层次的划分不是绝对的。

3. 说明高级语言、汇编语言和机器语言的差别及其联系。

答:机器语言是计算机硬件能够直接识别的语言,汇编语言是机器语言的符号表示,高级语言是面向算法的语言。高级语言编写的程序(源程序)处于最高层,必须翻译成汇编语言,再由汇编程序汇编成机器语言(目标程序)之后才能被执行。

4. 如何理解计算机组成和计算机体系结构?

答:计算机体系结构是指那些能够被程序员所见到的计算机系统的属性,如指令系统、数据类型、寻址技术组成及I/O机理等。计算机组成是指如何实现计算机体系结构所体现的属性,包含对程序员透明的硬件细节,如组成计算机系统的各个功能部件的结构和功能,及相互连接方法等。

5. 冯?诺依曼计算机的特点是什么? 解:冯?诺依曼计算机的特点是:P8

? 计算机由运算器、控制器、存储器、输入设备、输出设备五大部件组成; ? 指令和数据以同同等地位存放于存储器内,并可以按地址访问; ? 指令和数据均用二进制表示;

? 指令由操作码、地址码两大部分组成,操作码用来表示操作的性质,地

址码用来表示操作数在存储器中的位置;

? 指令在存储器中顺序存放,通常自动顺序取出执行; ? 机器以运算器为中心(原始冯?诺依曼机)。

6. 画出计算机硬件组成框图,说明各部件的作用及计算机系统的主要技术指标。 答:计算机硬件组成框图如下:

控制器运算器CPU存储器接口接口输入设备主机外设输出设备 各部件的作用如下:

控制器:整机的指挥中心,它使计算机的各个部件自动协调工作。 运算器:对数据信息进行处理的部件,用来进行算术运算和逻辑运算。 存储器:存放程序和数据,是计算机实现“存储程序控制”的基础。 输入设备:将人们熟悉的信息形式转换成计算机可以接受并识别的信息形式的设备。

输出设备:将计算机处理的结果(二进制信息)转换成人类或其它设备可以接收和识别的信息形式的设备。 计算机系统的主要技术指标有:

机器字长:指CPU一次能处理的数据的位数。通常与CPU的寄存器的位数有关,字长越长,数的表示范围越大,精度也越高。机器字长也会影响计算机的运算速度。

数据通路宽度:数据总线一次能并行传送的数据位数。

存储容量:指能存储信息的最大容量,通常以字节来衡量。一般包含主存容量和辅存容量。

运算速度:通常用MIPS(每秒百万条指令)、MFLOPS(每秒百万次浮点运算)或CPI(执行一条指令所需的时钟周期数)来衡量。CPU执行时间是指CPU

对特定程序的执行时间。

主频:机器内部主时钟的运行频率,是衡量机器速度的重要参数。 吞吐量:指流入、处理和流出系统的信息速率。它主要取决于主存的存取周期。

响应时间:计算机系统对特定事件的响应时间,如实时响应外部中断的时间等。

7. 解释下列概念:

主机、CPU、主存、存储单元、存储元件、存储基元、存储元、存储字、存储字长、存储容量、机器字长、指令字长。 解:P9-10

主机:是计算机硬件的主体部分,由CPU和主存储器MM合成为主机。 CPU:中央处理器,是计算机硬件的核心部件,由运算器和控制器组成;(早期的运算器和控制器不在同一芯片上,现在的CPU内除含有运算器和控制器外还集成了CACHE)。

主存:计算机中存放正在运行的程序和数据的存储器,为计算机的主要工作存储器,可随机存取;由存储体、各种逻辑部件及控制电路组成。 存储单元:可存放一个机器字并具有特定存储地址的存储单位。

存储元件:存储一位二进制信息的物理元件,是存储器中最小的存储单位,又叫存储基元或存储元,不能单独存取。

存储字:一个存储单元所存二进制代码的逻辑单位。 存储字长:一个存储单元所存储的二进制代码的总位数。

存储容量:存储器中可存二进制代码的总量;(通常主、辅存容量分开描述)。 机器字长:指CPU一次能处理的二进制数据的位数,通常与CPU的寄存器位数有关。

指令字长:机器指令中二进制代码的总位数。

8. 解释下列英文缩写的中文含义:

CPU、PC、IR、CU、ALU、ACC、MQ、X、MAR、MDR、I/O、MIPS、CPI、FLOPS

解:全面的回答应分英文全称、中文名、功能三部分。

CPU:Central Processing Unit,中央处理机(器),是计算机硬件的核心部件,主要由运算器和控制器组成。

PC:Program Counter,程序计数器,其功能是存放当前欲执行指令的地址,并可自动计数形成下一条指令地址。

IR:Instruction Register,指令寄存器,其功能是存放当前正在执行的指令。

CU:Control Unit,控制单元(部件),为控制器的核心部件,其功能是产生微操作命令序列。

ALU:Arithmetic Logic Unit,算术逻辑运算单元,为运算器的核心部件,其功能是进行算术、逻辑运算。

ACC:Accumulator,累加器,是运算器中既能存放运算前的操作数,又能存放运算结果的寄存器。

MQ:Multiplier-Quotient Register,乘商寄存器,乘法运算时存放乘数、

解:显示缓冲存储器的作用是支持屏幕扫描时的反复刷新;只读存储器作为字符发生器使用,他起着将字符的ASCII码转换为字形点阵信息的作用。

8. 某计算机的I/O设备采用异步串行传送方式传送字符信息。字符信息的格式为1位起始位、7位数据位、1位校验位和1位停止位。若要求每秒钟传送480个字符,那么该设备的数据传送速率为多少? 解:480×10=4800位/秒=4800波特 波特——是数据传送速率波特率的单位。

10. 什么是I/O接口,与端口有何区别?为什么要设置I/O接口?I/O接口如何分类?

解:I/O接口一般指CPU和I/O设备间的连接部件,而端口是指I/O接口内CPU能够访问的寄存器,端口加上相应的控制逻辑即构成I/O接口。

I/O接口分类方法很多,主要有:

(1)按数据传送方式分有并行接口和串行接口两种;

(2)按数据传送的控制方式分有程序控制接口、程序中断接口、DMA接口三种。

12. 结合程序查询方式的接口电路,说明其工作过程。 解:程序查询接口工作过程如下(以输入为例):

1)CPU发I/O地址设备开始工作;地址总线?接口?设备选择器译码?选中?发SEL信号; 2)CPU发启动命令 DBR?开命令接收门; ? D置0,B

置1 ? 接口向设备发启动命令;3)CPU等待,输入设备读出数据;4)外设工作完成,B置0,D置1;5)准备就绪信号?接口?完成信号?控制总线? CPU;6)输入:CPU通过输入指令(IN)将DBR中的数据取走。

若为输出,除数据传送方向相反以外,其他操作与输入类似。工作过程如下: 开命令接收门;?选中,发SEL信号?设备选择器译码?接口?地址总线?1)CPU发I/O地址 2)输出: CPU通过输出指令(OUT)将数据放入接口DBR中;设备开始工作;?接口向设备发启动命令? D置0,B置1 ? 3)CPU发启动命令 4)CPU等待,输出设备将数据从 DBR取走; B置0,D置1;?接口? 5)外设工作完成,完成信号 CPU,CPU可通过指令再次向接口DBR输出数据,进行第二次传送。?控制总线?6)准备就绪信号。

13. 说明中断向量地址和入口地址的区别和联系。 解:中断向量地址和入口地址的区别:

向量地址是硬件电路(向量编码器)产生的中断源的内存地址编号,中断入口地址是中断服务程序首址。

中断向量地址和入口地址的联系:

中断向量地址可理解为中断服务程序入口地址指示器(入口地址的地址),通过它访存可获得中断服务程序入口地址。 (两种方法:在向量地址所指单元内放一条JMP指令;主存中设向量地址表。参考8.4.3)

14. 在什么条件下,I/O设备可以向CPU提出中断请求?

解:I/O设备向CPU提出中断请求的条件是:I/O接口中的设备工作完成状态为

1(D=1),中断屏蔽码为0 (MASK=0),且CPU查询中断时,中断请求触发器状态为1(INTR=1)。

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

解:中断允许触发器是CPU中断系统中的一个部件,他起着开关中断的作用(即中断总开关,则中断屏蔽触发器可视为中断的分开关)。

16. 在什么条件和什么时间,CPU可以响应I/O的中断请求?

解:CPU响应I/O中断请求的条件和时间是:当中断允许状态为1(EINT=1),且至少有一个中断请求被查到,则在一条指令执行完时,响应中断。

17. 某系统对输入数据进行取样处理,每抽取一个输入数据,CPU就要中断处理一次,将取样的数据存至存储器的缓冲区中,该中断处理需P秒。此外,缓冲区内每存储N个数据,主程序就要将其取出进行处理,这个处理需Q秒。试问该系统可以跟踪到每秒多少次中断请求?

解:这是一道求中断饱和度的题,要注意主程序对数据的处理不是中断处理,因此Q秒不能算在中断次数内。

N个数据所需的处理时间=P×N+Q秒

平均每个数据所需处理时间= (P×N+Q)/N秒

求倒数得:该系统跟踪到的每秒中断请求数=N/(P×N+Q)次。

19. 在程序中断方式中,磁盘申请中断的优先权高于打印机。当打印机正在进行

打印时,磁盘申请中断请求。试问是否要将打印机输出停下来,等磁盘操作结束后,打印机输出才能继续进行?为什么?

解:这是一道多重中断的题,由于磁盘中断的优先权高于打印机,因此应将打印机输出停下来,等磁盘操作结束后,打印机输出才能继续进行。因为打印机的速度比磁盘输入输出的速度慢,并且暂停打印不会造成数据丢失。

26. 什么是多重中断?实现多重中断的必要条件是什么?

解:多重中断是指:当CPU执行某个中断服务程序的过程中,发生了更高级、更紧迫的事件,CPU暂停现行中断服务程序的执行,转去处理该事件的中断,处理完返回现行中断服务程序继续执行的过程。

实现多重中断的必要条件是:在现行中断服务期间,中断允许触发器为1,即开中断。

28. CPU对DMA请求和中断请求的响应时间是否一样?为什么?

解: CPU对DMA请求和中断请求的响应时间不一样,因为两种方式的交换速度相差很大,因此CPU必须以更短的时间间隔查询并响应DMA请求。响应中断请求是在每条指令执行周期结束的时刻,而响应DMA请求是在存取周期结束的时刻。

中断方式是程序切换,而程序又是由指令组成,所以必须在一条指令执行完毕才能响应中断请求,而且CPU只有在每条指令执行周期结束的时刻才发出查询信号,以获取中断请求信号,若此时条件满足,便能响应中断请求。

DMA请求是由DMA接口根据设备的工作状态向CPU申请占用总线,此时

只要总线未被CPU占用,即可立即响应DMA请求;若总线正被CPU占用,则必须等待该存取周期结束时,CPU才交出总线的使用权。

30. DMA的工作方式中,CPU暂停方式和周期挪用方式的数据传送流程有何不同?画图说明。

解:两种DMA方式的工作流程见如下,其主要区别在于传送阶段,现行程序是否完全停止访存。

停止CPU访存方式的DMA工作流程如下:

现行程序 CPU DMAC I/O CPU DMAC I/O

B C D 周期窃取方式的DMA工作流程如下:

现行程序 CPU DMAC I/O CPU DMAC I/O B C D

31. 假设某设备向CPU传送信息的最高频率是40 000次/秒,而相应的中断处理程序其执行时间为40?s,试问该外设是否可用程序中断方式与主机交换信息,为什么?

解:该设备向CPU传送信息的时间间隔 =1/40000=0.025×10-3=25 ? s < 40?s

则:该外设不能用程序中断方式与主机交换信息,因为其中断处理程序的执

+5V。G1G2A。Y7MREQA0A1A2A15.G2BABC74138。。。。Y3Y2Y1Y0..........RAM1......RAM2......RAM3...A3.....RAM0......A0 A12CEOEWED0 D7A0 A12CEA0 A12CEOEWED0 D7A0 A12CEOEWED0 D7A0 A12CEOEWED0 D7CPUD0OEWED0 D7RAM7..................D7..WRRD..........

24. 一个4体低位交叉的存储器,假设存储周期为T,CPU每隔1/4存取周期启动一个存储体,试问依次访问64个字需多少个存取周期?

解:4体低位交叉的存储器的总线传输周期为τ,τ=T/4,依次访问64个字所需时间为:

t=T+(64-1) τ=T+63T/4=16.75T

25. 什么是“程序访问的局部性”?存储系统中哪一级采用了程序访问的局部性原理?

答:程序运行的局部性原理指:在一小段时间内,最近被访问过的程序和数据很可能再次被访问;在空间上,这些被访问的程序和数据往往集中在一小片存储区;在访问顺序上,指令顺序执行比转移执行的可能性大 (大约 5:1 )。存储系统中Cache-主存层次和主存-辅存层次均采用了程序访问的局部性原理。

26. 计算机中设置Cache的作用是什么?能否将Cache的容量扩大,最后取代

主存,为什么?

答:计算机中设置Cache的作用是解决CPU和主存速度不匹配问题。

不能将Cache的容量扩大取代主存,原因是:(1)Cache容量越大成本越高,难以满足人们追求低价格的要求;(2)如果取消主存,当CPU访问Cache失败时,需要将辅存的内容调入Cache再由CPU访问,造成CPU等待时间太长,损失更大。

27. Cache做在CPU芯片内有什么好处?将指令Cache和数据Cache分开又有什么好处?

答:Cache做在CPU芯片内主要有下面几个好处:

(1)可提高外部总线的利用率。因为Cache在CPU芯片内,CPU访问Cache时不必占用外部总线。

(2)Cache不占用外部总线就意味着外部总线可更多地支持I/O设备与主存的信息传输,增强了系统的整体效率。

(3)可提高存取速度。因为Cache与CPU之间的数据通路大大缩短,故存取速度得以提高。

将指令Cache和数据Cache分开有如下好处:

1)可支持超前控制和流水线控制,有利于这类控制方式下指令预取操作的完成。

2)指令Cache可用ROM实现,以提高指令存取的可靠性。

3)数据Cache对不同数据类型的支持更为灵活,既可支持整数(例32位),也可支持浮点数据(如64位)。

补充:

Cache结构改进的第三个措施是分级实现,如二级缓存结构,即在片内Cache(L1)和主存之间再设一个片外Cache(L2),片外缓存既可以弥补片内缓存容量不够大的缺点,又可在主存与片内缓存间起到平滑速度差的作用,加速片内缓存的调入调出速度。

28. 设主存容量为256K字,Cache容量为2K字,块长为4。

(1)设计Cache地址格式,Cache中可装入多少块数据? (2)在直接映射方式下,设计主存地址格式。 (3)在四路组相联映射方式下,设计主存地址格式。 (4)在全相联映射方式下,设计主存地址格式。

(5)若存储字长为32位,存储器按字节寻址,写出上述三种映射方式下主存的地址格式。

解:(1)Cache容量为2K字,块长为4,Cache共有2K/4=211/22=29=512块,

Cache字地址9位,字块内地址为2位

因此,Cache地址格式设计如下:

Cache字块地址(9位) 字块内地址(2位) (2)主存容量为256K字=218字,主存地址共18位,共分256K/4=216块,

主存字块标记为18-9-2=7位。

直接映射方式下主存地址格式如下:

主存字块标记(7位) Cache字块地址(9位) 字块内地址(2位) (3)根据四路组相联的条件,一组内共有4块,得Cache共分为512/4=128=27组,

主存字块标记为18-7-2=9位,主存地址格式设计如下: 主存字块标记(9位) 组地址(7位) 字块内地址(2位) (4)在全相联映射方式下,主存字块标记为18-2=16位,其地址格式如下:

主存字块标记(16位) 字块内地址(2位) (5)若存储字长为32位,存储器按字节寻址,则主存容量为256K*32/4=221B,

Cache容量为2K*32/4=214B,块长为4*32/4=32B=25B,字块内地

址为5位,

在直接映射方式下,主存字块标记为21-9-5=7位,主存地址格式为:

字块内地址(5位) 主存字块标记(7位) Cache字块地址(9位) 在四路组相联映射方式下,主存字块标记为21-7-5=9位,主存地址格

式为:

主存字块标记(9位) 组地址(7位) 字块内地址(5位) 在全相联映射方式下,主存字块标记为21-5=16位,主存地址格式为:

主存字块标记(16位) 字块内地址(5位)

29. 假设CPU执行某段程序时共访问Cache命中4800次,访问主存200次,已知Cache的存取周期为30ns,主存的存取周期为150ns,求Cache的命中率以及Cache-主存系统的平均访问时间和效率,试问该系统的性能提高了多少倍?

解:Cache被访问命中率为:4800/(4800+200)=24/25=96%

Cache-主

访

ta=0.96*30ns+(1-0.96)*150ns=34.8ns

Cache-主存系统的访问效率为:e=tc/ta*100%=30/34.8*100%=86.2% 性能为原来的150ns/34.8ns=4.31倍,即提高了3.31倍。

30. 一个组相连映射的CACHE由64块组成,每组内包含4块。主存包含4096块,每块由128字组成,访存地址为字地址。试问主存和高速存储器的地址各为几位?画出主存地址格式。

解:cache组数:64/4=16 ,Cache容量为:64*128=213字,cache地址13位

主存共分4096/16=256区,每区16块

主存容量为:4096*128=219字,主存地址19位,地址格式如下:

主存字块标记(8位) 组地址(4位) 字块内地址(7位)

31. 设主存容量为1MB,采用直接映射方式的Cache容量为16KB,块长为4,每字32位。试问主存地址为ABCDEH的存储单元在Cache中的什么位置? 解:主存和Cache按字节编址,

Cache容量16KB=214B,地址共格式为14位,分为16KB/(4*32/8B)=210块,每块4*32/8=16B=24B,Cache地址格式为:

Cache字块地址(10位) 字块内地址(4位) 主存容量1MB=220B,地址共格式为20位,分为1MB/(4*32/8B)=216块,每块24B,采用直接映射方式,主存字块标记为20-14=6位,主存地址格式为:

字块内地址(4位) 主存字块标记(6位) Cache字块地址(10位) 主存地址为ABCDEH=1010 1011 1100 1101 1110B,主存字块标记为101010,Cache字块地址为11 1100 1101,字块内地址为1110,故该主存单元应映射到Cache的101010块的第1110字节,即第42块第14字节位置。或者在Cache的第11 1100 1101 1110=3CDEH字节位置。

32. 设某机主存容量为4MB,Cache容量为16KB,每字块有8个字,每字32位,设计一个四路组相联映射(即Cache每组内共有4个字块)的Cache组织。

(1)画出主存地址字段中各段的位数。

(2)设Cache的初态为空,CPU依次从主存第0,1,2,…,89号单元读出90个字(主存一次读出一个字),并重复按此次序读8次,问命中率是多少?

(3)若Cache的速度是主存的6倍,试问有Cache和无Cache相比,速度约提高多少倍?

解:(1)根据每字块有8个字,每字32位(4字节),得出主存地址字段中字块内地址为3+2=5位。

根据Cache容量为16KB=214B,字块大小为8*32/8=32=25B,得Cache地址共14位,Cache共有214-5=29块。

根据四路组相联映射,Cache共分为29/22=27组。

根据主存容量为4MB=222B,得主存地址共22位,主存字块标记为22-7-5=10位,故主存地址格式为:

主存字块标记(10位) 组地址(7位) 字块内地址(5位) (2)由于每个字块中有8个字,而且初态为空,因此CPU读第0号单元时,未命中,必须访问主存,同时将该字所在的主存块调入Cache第0组中的任一块内,接着CPU读第1~7号单元时均命中。同理,CPU读第8,16,…,88号时均未命中。可见,CPU在连续读90个字中共有12次未命中,而后8次循环读90个字全部命中,命中率为:

90?8?12?0.984 90?8(3)设Cache的周期为t,则主存周期为6t,没有Cache的访问时间为6t*90*8,有Cache的访问时间为(t90*8-12)+6t*12,则有Cache和无Cache相比,速度提高的倍数为:

6t?90?8?1?5.54

(90?8?12)t?6t?1233.简要说明提高访存速度可采取的措施。

答:提高访存速度可采取三种措施:

(1)采用高速器件。即采用存储周期短的芯片,可提高访存速度。 (2)采用Cache。CPU最近要使用的信息先调入Cache,而Cache的速度比主存快得多,这样CPU每次只需从Cache中读写信息,从而缩短访存时间,提高访存速度。

(3)调整主存结构。如采用单体多字或采用多体结构存储器。

38. 磁盘组有6片磁盘,最外两侧盘面可以记录,存储区域内径22cm,外径33cm,道密度为40道/cm,内层密度为400位/cm,转速3600转/分,问:

(1)共有多少存储面可用? (2)共有多少柱面? (3)盘组总存储容量是多少? (4)数据传输率是多少?

解:(1)共有:6×2=12个存储面可用。 (2)有效存储区域=(33-22)/ 2 = 5.5cm 柱面数 = 40道/cm × 5.5= 220道 (3)内层道周长=?×22=69.08cm 道容量=400位/cm×69.08cm= 3454B 面容量=3454B×220道=759,880B

盘组总容量=759,880B ×12面= 9,118,560B (4)转速 = 3600转 / 60秒 = 60转/秒

数据传输率 = 3454B × 60转/秒 = 207,240 B/S

39. 某磁盘存储器转速为3000转/分,共有4个记录盘面,每毫米5道,每道记录信息12 288字节,最小磁道直径为230mm,共有275道,求: (1)磁盘存储器的存储容量。

(2)最高位密度(最小磁道的位密度)和最低位密度。 (3)磁盘数据传输率。 (4)平均等待时间。

解:(1)存储容量 = 275道×12 288B/道×4面 = 13 516 800B

(2)最高位密度 = 12 288B/(?×230)= 17B/mm = 136位/mm(向下取整)

最大磁道直径=230mm+2×275道/(5道/mm) = 230mm + 110mm = 340mm

最低位密度 = 12 288B /(?×340)= 11B/mm = 92位 / mm (向下

取整)

(3)磁盘数据传输率= 12 288B × 3000转/分=12 288B × 50转/秒=614 400B/s

(4)平均等待时间 = 1s/50 / 2 = 10ms

第5章 输入输出系统

1. I/O有哪些编址方式?各有何特点?

解:常用的I/O编址方式有两种: 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地址空间。

2. 简要说明CPU与I/O之间传递信息可采用哪几种联络方式?它们分别用于什么场合?

答: CPU与I/O之间传递信息常采用三种联络方式:直接控制(立即响应)、 同步、异步。 适用场合分别为:

直接控制适用于结构极简单、速度极慢的I/O设备,CPU直接控制外设处于某种状态而无须联络信号。

同步方式采用统一的时标进行联络,适用于CPU与I/O速度差不大,近距离传送的场合。

异步方式采用应答机制进行联络,适用于CPU与I/O速度差较大、远距离传送的场合。

6. 字符显示器的接口电路中配有缓冲存储器和只读存储器,各有何作用?


计算机组成原理-第二版-唐朔飞著-课后习题答案完整.doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:各县、市、区互检互查通报

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

马上注册会员

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