《计算机组成原理》课后题答案_清华大学出版_秦磊华_吴非·· 下载本文

答:正常情况下,cache中的数据是主存数据的副本,当两者不一致时可能导致程序结果不正确,因此,必须考虑并设法保证Cache的一致性。 8)替换算法有哪几种?各有何优缺点? 答:① 先进先出算法(FIFO)

基本思想:按照数据块进入Cache的先后决定替换的顺序,即在需要进行替换时,选择最先 被调入Cache中的块作为替换块。这种方法要求为每块记录它们进入Cache的先 后次序。

优点:FIFO算法系统开销较小。

缺点:是不考虑程序访问的局部性,可能会把一些需要经常使用的块(如循环程序块)也作 为最早进入Cache的块而替换掉,因此,可能导致Cache的命中率不高。 ② 近期最少使用(LRU)算法

基本思想:将近期内长久未被访问过的行换出。为此,每行设置一个计数器,cache每命中

一次,命中行计数器清零,其它各行计数器增1,因此它是未访问次数计数器。当需要替换时,比较各特定行的计数值,将计数值最大的行换出。

优点:这种算法显然保护了刚调入Cache的新数据,符合cache工作原理,因而使cache有较高 的命中率。LRU算法硬件实现简单 ③ 最不经常使用(LFU)算法

基本思想:将一段时间内被访次数最少的那行数据换出。为此,每行设置一个计数器,新新 调入行的数据从0开始计数,每访问一次被访行的计数器增1。当需要替换时,对 这些特定行的计数值进行比较,将计数值最小的行换出。

缺点:一段期间访问情况不能严格反映近期访问情况。例如特定行中的A、B两行,A行在

期间的前期多次被访问而后期未被访问,但累积计数值很大,B行是前期不常用而后期却正被频繁访问,但可能由于累积计数小于A行而被LFU算法换出了。 ④ 随机替换算法

基本思想:需要进行替换时,从特定的行位置中随机地选取一行进行替换。 优点:硬件实现最容易,而且速度也比前几种策略快。

缺点:随意换出的数据很可能马上又要用,从而降低命中率和cache工作效率。但这个负面

效应随着cache容量增大会减少,模拟研究表明随机替换策略的功效只是稍逊于LFU和LRU。

9)不同RAID级各有哪些技术特点? 答:RAID0具有如下技术特点:

① 无数据冗余、无数据校验功能,因此它不具备数据的容错能力,数据的可靠性不高; ② 从RAID0的数据分布看,其本质上是多磁盘体交叉存储(类似于主存的多体交叉存储),多个磁盘可并行工作,存储系统的访问速度高。 ③ 条带的大小影响RAI0的性能与应用

a)条带大小对数据传输率的影响:小条带可将数据分配到更多的磁盘上,通过更多磁盘的并

行工作可提高存储系统的数据传输率。

b)条带对I/O请求响应速度的影响:在面向事物处理的应用中,可能同时存在上百个I/O

请求。此时,用户对I/O请求的响应时间比较关注。通过选者小而适中的条带,使得一次事务请求所传送的数据刚好集中在一个条带中,就能大大减少每个I/O请求的响应时间。

④ 磁盘利用率高,由于RAID 0中没有冗于数据,所有的磁盘存储空间都可保存工作数据。RAID0主要应用于对访问速度要求高,但对数据的可靠性要求不高的场合。

RAID 1具有如下技术特点:

① 每个磁盘都有一个镜象磁盘,图4.60中备份磁盘i就是磁盘i的备份盘;

② 读请求时,可由包含该数据的两个磁盘中的任一个提供;写请求时,需同时更新两个磁盘中相应的数据块;

③ 当一个磁盘被损坏时,数据仍可从另一磁盘获取。因此具有很高的安全性; ④ 存储系统中磁盘的利用率只有50%; ⑤ 无数据校验功能;

⑥ 对大批读请求来说,RAID 1可以从对应的盘中并行读出。但对于写,其效率并不高。 由于RAID1的读性能优于写性能,因此,RAID1主要应用于对数据的可用性要求高,且读操作所占比重较高的场合。 RAID2具有如下技术特点:

① 条带容量小,按位交叉存储,因此每个I/O请求都会访问到多个磁盘,导致I/O响应速度慢;

② 每个I/O请求都会访问到多个磁盘;对于单个读,所有磁盘同时读取,数据和相应的纠错码被送至控制器,若出现一位错,则由控制器立即识别并纠正。对于单个写,所有数据盘和校验盘都要进行写操作;

③ 采用海明校验,具有纠错和检错功能,数据的可靠性高;但控制复杂; ④ 冗余存放校验位,其数量与使用的数据盘的数量成正比;

⑤ 由于按位存取,在I/O过程中所有磁盘上的磁头在任何时刻都处于同一位置,具有空间并行处理能力,数据传输率高。

受成本的影响,目前RAID2很少被使用。 RAID 3的技术特点与RAID2类似,不同点主要有两方面,其一是采用奇偶校验而不是海明校验,其二是校验盘只有一个,磁盘的利用率高。 RAID4的技术特点如下:

① 采用大条带区,I/O请求响应速度快,但数据传输率不高; ② 采用奇偶校验技术; ③ 各盘采用独立存取技术; ④ 磁盘利用率高;

⑤ 校验盘成为写访问的瓶颈。 RAID5具有如下技术特点:

① 采用大条带区,I/O请求响应速度快; ② 采用奇偶校验技术; ③ 各盘采用独立存取技术;

④ 校验信息在不同磁盘中循环存放,克服了RAID4中校验盘成为写瓶颈的不足; ⑤ 磁盘利用率高。

可以认为RAID5是对RAID4的改进,对大、小数据的读/写都具有较好的性能,具有比较广泛的应用。

RAID 6采用了按块交叉存放和双磁盘容错技术,相对RAID 5而言,其缺点是在组成中增加了一个磁盘,而且每次写都要进行P和Q两种校验以形成两个奇偶校验块。 10)说明磁表面存储器记录二进制信息的基本原理。

答:磁表面存储器利用磁性材料剩磁的两种磁化方向(S-N或者N-S)来记录信息。 写入信息时,在读/写线圈中通上脉冲电流(电流的方向不同,则写入的信息不同),磁头气隙处的磁场把它下面一小区域的磁层向某一方向磁化(S—N或 N—S),形成某种剩磁状态,因而记下一位二进制信息。磁层上这个被磁化的小区域,称为磁化单元。随着磁层的运动,读/写线圈中的一串电流脉冲,就会在磁层上形成一串磁化单元。

读出时,某一磁化单元移动到磁头处,在磁层与磁头交链的磁路中磁通发生变化,于是在读/写线圈中感应出不同方向的电流,经读出放大器放大和整形之后,还原出写入的信息。 11)主存与磁盘存储器在工作速度方面为何采用不同的参数指标?后者采用哪几个指标表明其工作速度?为什么?

答:因为两种存储器的存储数据的原理不同,所以不能采用同一种技术指标。磁盘存储器采用平均定位时间(寻道时间+等待时间)和数据传输速率两个指标表明工作速度。

4.3 对于32K字容量的存储器,若按字编址,字长16位。其地址寄存器应是多少位?数据寄存器是多少位?

解:该存储器的寻址空间为:32K*8位/16位=16K字 地址寄存器的位数为:14位

数据寄存器的位数和字长相等为16位

4.4 用4片32K×8位SRAM存储芯片可设计哪几种不同容量和字长的存储器?画出相应设计图并完成与CPU连接。

解:可设计字长为8位,容量为128K的存储器:

。 译 A16 。 码 A15 。 器 。 CPU 10 00 01 11 CS CS CS CS A14 32K×8 32K×8 32K×8 32K×8 WE WE WE WE A0

WE

D0~D7

数据总线

可设计字长为16位,容量为64K的存储器:

。 A16 码

。 器 CPU1 0 CS CS A15 CS CS 32K×8 32K×8 32K×8 32K×8 WE WE A1 WE WE

WE

D0~D15

数据总线

....... ....... ....... ....... ....... ....... ....... .......

可设计字长为32位,容量为32K的存储器: 0

CPUCS CS CS 32K×8 CS A16 32K×8 32K×8 32K×8 WE WE WE WE A2

WE

D0~D31

数据总线

4.5 用32K×8位RAM芯片和64K×4位ROM芯片,设计256K×8位存储器。其中,从30000H到3FFFFH地址空间为只读存储区,其它为可读、可写存储区。完成存储器与CPU连接。

解:只读区域的地址空间为:30000H-3FFFFH,为64K,需要64K×4位ROM芯片2 片,需要32K×8位RAM芯片的片数为:256K-64K/32K=6片

设计如下:存储器的0000H-2FFFFH存储空间为RAM芯片,也就是32K×8位RAM芯片6 片,采用字扩展连接。存储空间30000H-3FFFFH使用64K×4位ROM芯片2片,采用位扩展方式连接。

数据线条数为8条:D0-D7。

地址线的条数为18条:A1-A18,其中A18-A16为片选信号的输入端。 设计图如下:

A18 译

A17 ? 码

A16 器

CPU 000 001 010 110或111 011 101 100

CS A15 CS CS CS CS CS CS CS

64K×4 32K×8 32K×8 32K×8 32K×8 32K×8 64K×4 32K×8

ROM RAM RAM RAM RAM RAM ROM RAM

WE A1 WE WE WE WE WE WE

WE

....... ....... D0~D7 ....... ....... ....... ....... ....... ....... ....... .......

数据总线

4.6某计算机字长16位,主存容量128KW,请用16K×8位的静态RAM芯片和32K×16位的ROM芯片,为该机设计一个主存储器。要求18000H~1FFFFH为ROM区,其余为RAM区。画出存储器结构及其与CPU连接的框图。 解:设计如下:通过简单的计算可知:

地址空间00000H-18000H都是RAM区域(共96KW) 地址空间18000H-1FFFFH为ROM区域(共32KW) 故共使用16K×8位的静态RAM芯片12片 使用32K×16位的ROM芯片1片 数据线条数为16条:D0-D15。

地址线的条数为17条:A1-A17,其中A17-A15为片选信号的输入端。 设计图如下:

A17 译

A16 码

A15 器

CPU101 011 100 001 010 000

CS CS CS CS CS A14 CS CS CS CS CS CS CS 16K×8 16K×8 32K×8 16K×8 16K×8 16K×8 16K×8 16K×8 16K×8 16K×8 16K×8 16K×8 RAM RAM RAM RAM RAM RAM RAM RAM RAM RAM RAM RAM WE WE WE WE WE A1 WE WE WE WE WE WE WE WE

D0~D15

数据总线

4.7 假设 CPU 有16根地址线,8根数据线,并用 MREQ作为访存控制信号(低电平有效),用W/R做读/写控制信号(高电平为读,低电平为写),主存地址空间分配如下:

6000H - 67FFH 为系统程序区 6800H - 6BFFH 为用户程序区

现有下列存储芯片:1K*4位RAM,4K*8位RAM,8K*8位RAM,2K*8位ROM,4K*8位ROM,8K*8位ROM及译码器和各种门电路,设计该机的主存系统,并画出CPU与存储器的连接图。 本题略

4.8 用64K×1位的DRAM芯片构成1M×8位的存储器,若采用异步刷新,若每行刷新间隔不超过2ms,则产生刷新信号的间隔是多少时间?若采用集中刷新方式,则存储器刷新一遍最少用多少个读写周期?CPU的死时间为多少?(假定存储器的读写时间为0.5?s)

解:64K×1位的DRAM芯片的排列方式为256行*256列,该存储器中有64K×1位的DRAM芯片128片刷新信号的产生间隔为2ms.

....... ....... ....... ....... ....... ....... ....... ? 110或111 CS 32K×16 ROM .......