《计算机组成与设计》习题解答

CPUA15~10 A9 A8 A7 A6~A02:4译码3 2 1 0R/W#DataRAM1CSWE*128×8DAD0~D7RAM2CSWE*128×8DARAM3CSWE*128×8DARAM4CSWE*128×8DAROMA8,A7CS 512×8DA

12.某计算机4K×8位的主存地址空间中用2片1K×8的ROM和2片2K×4的RAM芯片构成。画出CPU与RAM和ROM连接图。RAM的控制信号为CS#和WE#,CPU的地址线为A11~A0,数据线为8位的线路D7~D0,控制信号有读写控制R/W#和访存请求MREQ#。 答:ROM芯片需要10条地址线,2片ROM芯片进行字扩展。RAM芯片需要11条地址线,2片RAM进行位扩展后与ROM再进行字扩展。CPU与RAM和ROM连接图如下,其中ROM的地址线为A9~A0,RAM的地址线为A10~A0。A11和A10送入2:4译码电路,输出选择信号sel0~sel3。sel0和sel1作为ROM的芯片许可,sel2和sel3的逻辑或作为RAM的芯片选择。读写控制R/W#作为RAM的写许可WE*信号输入。

MREQ# A11-0 R/W# CPU D7~D0 OE# A11-10 ROM A OE sel0 2:4译码电路 sel1 RAM sel2 sel3 ROM A OE WE* A CE WE* A CE 1K x8 D7~D0 D 1K x8 D7~D0 D 2K x4 D7~D4 D 2K x4 D3~D0 D

15. 一台计算机采用256×8的RAM芯片和1024×8的ROM芯片。计算机系统需要2K字节的RAM和4K字节的ROM,以及4个输入输出接口,每个接口有4个8位的寄存器,采

用存储器映像的编址方式,位于8KB地址空间的高端。存储器地址的最高2位为00表示访问RAM,为01或10表示访问ROM,为11表示访问输入输出接口寄存器。

(1) 需要多少RAM和ROM芯片?

(2) 画出存储器地址映像表,指出地址空间中各段分别映像到什么芯片。 (3) 用16进制数给出RAM、ROM和接口寄存器的地址范围。

答:(1) 2KB/256 = 8,需8片RAM芯片

4KB/1024B = 4,需4片ROM芯片 (2) 地址映像表如下:

02K4K6KRAMROMROMIO

其中低端的2KB地址空间映象到RAM芯片,中间4K映象到ROM芯片,高端有16个字节映象到接口寄存器,其余为空白区域。

(3) RAM的地址范围为000016到07FF16,ROM的地址范围为080016到17FF16,接口寄存器的地址范围为到1FF016到1FFF16。 注:本题是设计题,可以有不同的结果。

16. Intel 82875 MCH存储器控制接口支持128Mb、256Mb、512Mb的8位或者16位的SDRAM芯片,存储器数据接口为64位,问:

(1) 存储器容量最小是多少?

(2) 将存储器芯片以位扩展方式构成内存条,再字扩展方式扩展容量,最多支持8个内存条,存储器容量最大是多少?

(3) 最大配置时,每次存储器刷新多少数据位?

答:(1)采用容量为128Mb的16位芯片,即8Mx16位的芯片4片,可构成8Mx64位的存储器,容量为64MB。 (2)每个内存条采用容量为512Mb的8位芯片,即64Mx8位的芯片8片,可构成64Mx64位的存储器,容量为512MB。8条内存条容量为4GB。 (3)最大配置时,采用64Mx8位的芯片,存储器阵列结构为8Kx8K,即有8K行,一个芯片每次刷新8Kx8=64Kb数据。8个内存条的64个芯片总共刷新64x64Kb=4Mb。

22. 有一个“cache-主存”存储层次。主存容量为8个块,cache容量为4个块,采用直接地址映像。

(1) 对于如下主存块地址流:0, 1, 2, 5, 4, 6, 4, 7, 1, 2, 4, 1, 3, 7, 2,如果主存中内容开

始时未装入cache中,请列出每次访问后cache中各块的分配情况;

(2) 指出块命中的时刻;

(3) 求出此期间cache的命中率。

答:(1) 主存块地址流为主存的块地址,在直接地址映像方式下,它们对应的cache块号如下表所示:

主存块地址 0 1 2 5 4 6 4 7 1 2 4 1 3 7 2 cache块地址 0 1 2 1 0 2 0 3 1 2 0 1 3 3 2 在这个地址流下,cache中3个块的分配情况如下所示。

时间 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 地址流 0 1 2 5 4 6 4 7 1 2 4 1 3 7 2 第0块 0 0 0 0 4 4 4 4 4 4 4 4 4 4 4 第1块 - 1 1 5 5 5 5 5 1 1 1 1 1 1 1 第2块 - - 2 2 2 6 6 6 6 2 2 2 2 2 2 第3块 - - - - - - - 7 7 7 7 7 3 7 7 h

(2) 从上表可得命中时刻为7, 11, 12, 15 (3) h = 4/15 = 0.267

23. 对于下述访存地址序列(字地址):

1, 4, 8, 5, 20, 17, 19, 56, 9, 11, 4, 43, 5, 6, 9, 17

假定cache是直接映象的,cache的容量是16字,初始时cache为空。在下列两种情况

下,标出每次访存的cache命中情况以及最后cache的内容: (1) 每块1字。 (2) 每块4字。

答:cache中的分配情况如下所示

4 8 5 20 17 19 56 9 11 4 43 5 6 9 17 地址序列: 1 字分配:

1 1 4 1 4 8 1 4 5 8 1 5 8 5 8 4 5 9 4 5 9 4 5 6 9 4 5 6 9 4 5 6 9 17 17 17 17 17 17 17 17 17 17 17 19 19 19 19 19 19 19 19 19 19 5 8 5 5 9 5 9 5 9

h h

h

20 20 20 20 20 20 4 56 56 56 56 56 56 56 56 56 11 11 43 43 43 43 43 n n n n n n n n n n n y n y y 命中情况 n

(2)cache中的分配情况如下所示,注意题目给出的是字地址,cache在每访问一个字时调入一个数据块。

4 8 5 20 17 19 56 9 11 4 43 5 6 9 17 地址序列: 1 字分配:

0 0 0 0 0 16 16 16 16 16 16 16 16 16 16 16

1 2 3 1 2 3 4 5 6 7 1 2 3 4 5 6 7 8 9 1 2 3 4 5 6 7 8 9 1 2 3 17 17 17 17 17 17 17 17 17 17 17 18 18 18 18 18 18 18 18 18 18 18 19 19 19 19 19 19 19 19 19 19 19 4 5 6 7 4 5 6 7 4 5 6 7 4 5 6 7 4 5 6 7 8 9 20 20 20 20 20 20 4 21 21 21 21 21 21 5 22 22 22 22 22 22 6 23 23 23 23 23 23 7 8 9 8 9 8 9 56 8 57 9 8 9 8 9 40 40 40 8 41 41 41 9 10 10 10 10 10 58 10 10 10 42 42 42 10 10 11 11 11 11 11 59 11 11 11 43 43 43 11 11 n n y n n y n n y n n y y n y 命中情况 n

上述每一行是cache中每一个字的存储空间的内容,最后一列是cache最后的内容。

27. 对于下述访存地址序列(字地址):

1, 4, 8, 5, 20, 17, 19, 56, 9, 11, 4, 43, 5, 6, 9, 17 假定cache是全相联映象的,cache的容量都是16字,初始时cache为空。在下列情况

下,标出每次访存的cache命中情况以及最后cache的内容: (1) 每块一字,采用FIFO替换策略。 (2) cache是全相联映象,每块4字,采用FIFO替换策略。 (3) cache是全相联映象,每块4字,采用LRU替换策略。 答:(1)

地址序列 1

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14

1 4 1 4 8 1 4 8 5 1 4 8 5 20 17 19 56 9 1 4 8 5 1 4 8 5 1 4 8 5 1 4 8 5 1 4 8 5 11 1 4 8 5 4 1 4 8 5 43 5 1 4 8 5 1 4 8 5 6 1 4 8 5 9 1 4 8 5 17 1 4 8 5 20 20 20 20 20 20 20 20 20 20 20 20 17 17 17 17 17 17 17 17 17 17 17 19 19 19 19 19 19 19 19 19 19 56 56 56 56 56 56 56 56 56 9 9 9 9 9 9 9 9 11 11 11 11 11 11 11 43 43 43 43 43 6 6 6

联系客服:779662525#qq.com(#替换为@)