计算机组成原理三章

上传人:枫** 文档编号:568493444 上传时间:2024-07-24 格式:PDF 页数:12 大小:552.09KB
返回 下载 相关 举报
计算机组成原理三章_第1页
第1页 / 共12页
计算机组成原理三章_第2页
第2页 / 共12页
计算机组成原理三章_第3页
第3页 / 共12页
计算机组成原理三章_第4页
第4页 / 共12页
计算机组成原理三章_第5页
第5页 / 共12页
点击查看更多>>
资源描述

《计算机组成原理三章》由会员分享,可在线阅读,更多相关《计算机组成原理三章(12页珍藏版)》请在金锄头文库上搜索。

1、第 3 章习题参考答案第第 3 3 章习题参考答案章习题参考答案1、设有一个具有 20 位地址和 32 位字长的存储器,问(1) 该存储器能存储多少字节的信息?(2) 如果存储器由 512K8 位 SRAM 芯片组成,需要多少片?(3) 需要多少位地址作芯片选择?解:32 4M字节(1) 该存储器能存储:2208220322203219 8片(2) 需要512K 828(3) 用 512K8 位的芯片构成字长为 32 位的存储器, 则需要每 4 片为一组进行字长的位数扩展, 然后再由 2 组进行存储器容量的扩展。所以只需一位最高位地址进行芯片选择。2、已知某 64 位机主存采用半导体存储器,其

2、地址码为 26 位,假设使用 4M8位的 DRAM 芯片组成该机所允许的最大主存空间, 并选用内存条结构形式,问;(1) 假设每个内存条为 16M64 位,共需几个内存条?(2) 每个内存条内共有多少 DRAM 芯片?(3) 主存共需多少 DRAM 芯片? CPU 如何选择各内存条?解:22664 4条内存条(1) 共需16M 64(2) 每个内存条内共有16M 64 32个芯片4M 82266464M 64128个 RAM 芯片,(3) 主存共需多少共有 4 个内存条, 故4M 84M 8CPU 选择内存条用最高两位地址 A24和 A25通过 2:4 译码器实现;其余的24 根地址线用于内存

3、条内部单元的选择。1第 3 章习题参考答案3、用16K8位的DRAM芯片构成64K32位存储器,要求:(1) 画出该存储器的组成逻辑框图。(2) 设存储器读/写周期为S,CPU 在 1S 内至少要访问一次。试问采用哪种刷新方式比较合理?两次刷新的最大时间间隔是多少 ?对全部存储单元刷新一遍所需的实际刷新时间是多少?解:(1)用 16K 8 位 的 DRAM 芯 片 构 成 64K 32 位 存 储 器 , 需 要 用64K 32 44 16个芯片,其中每4片为一组构成16K32位进行字长位16K 8数扩展(一组内的4个芯片只有数据信号线不互连分别接 D0D7、D8D15、D16D23和D24D

4、31,其余同名引脚互连),需要低14位地址(A0A13)作为模块内各个芯片的内部单元地址分成行、列地址两次由 A0A6引脚输入;然后再由4组进行存储器容量扩展,用高两位地址A14、A15通过2:4译码器实现4组中选择一组。画出逻辑框图如下。A0A13A0A6A0A6(5)(5)(6)(6)(7)(7)(8)(8)WERASD07D815D1623D2431A0A6(9)(9)(10)(10)(11)(11)(12)(12)WERASD07D815D1623D2431A0A6(13)(13)(14)(14)(15)(15)(16)(16)WERASD07D815D1623D2431CPUCPUR

5、AS(1)(1)(2)(2)(3)(3)(4)(4)D07D815D1623D2431WED0D31A14A15WE2-4译码RAS0RAS1RAS2RAS3(2) 设刷新周期为 2ms,并设 16K8 位的 DRAM 结构是 1281288 存储阵列,则对所有单元全部刷新一遍需要 128 次(每次刷新一行,共 128 行)假设采用集中式刷新,则每 2ms 中的最后 128s=64s 为集中刷新时间,不能进行正常读写,即存在 64s 的死时间假设采用分散式刷新,则每 1s 只能访问一次主存,而题目要求 CPU 在 1S 内至少要访问一次,也就是说访问主存的时间间隔越短越好,故此方法也不是最适合

6、的比较适合采用异步式刷新:2ms15.625sss采用异步刷新方式,则两次刷新操作的最大时间间隔为128用于刷新,其余的时间用于访存(大部分时间中 1s 可以访问两次内存)。2第 3 章习题参考答案4、有一个1024K32位的存储器,由128K8位的DRAM芯片构成。问:(1) 总共需要多少DRAM芯片?(2) 设计此存储体组成框图。(3) 采用异步刷新方式,如单元刷新间隔不超过8ms,则刷新信号周期是多少?解:1024K 32 84 32片,每4片为一组,共需8组(1) 需要128K 8(2) 设计此存储体组成框图如下所示。A0A16A0A8RASD07D815D1623D2431D07D8

7、15D1623D2431D07D815D1623D2431D07D815D1623D2431CPUCPU(1)(1)(2)(2)(3)(3)(4)(4)(5)(5)(6)(6)(7)(7)(8)(8)RAS1WE(9)(9)(10)(10)(11)(11)(12)(12)RAS2WE(13)(13)(14)(14)(15)(15)(16)(16)RAS3WEWED0D31RAS0WE(17)(17)D07D815D1623D2431(21)(21)(22)(22)(23)(23)(24)(24)RAS5D07D815D1623D2431(25)(25)(26)(26)(27)(27)(28)(

8、28)RAS6D07D815D1623D2431(29)(29)(30)(30)(31)(31)(32)(32)RAS7D07D815D1623D2431CPUCPU(18)(18)(19)(19)(20)(20)RAS4WEWEA0A16A17A18A193-8译码RAS0RAS1RAS2RAS3RAS4RAS5RAS6RAS7(3) 设该 128K8 位的 DRAM 芯片的存储阵列为 5122568 结构, 则如果选择一个行地址进行刷新,刷新地址为 A0A8,那么该行上的 2048 个存储元同时进行刷新,要求单元刷新间隔不超过 8ms,即要在 8ms 内进行 512 次刷新操作。采用8ms

9、15.625ss。异步刷新方式时需要每隔5125、 要求用256Kl6位SRAM芯片设计1024K32位的存储器。 SRAM芯片有两个控制端:当CS有效时,该片选中。当W/R1时执行读操作,当W/R=0时执行写操作。3第 3 章习题参考答案解:1024K 32 42 8片,共需8片,分为4组,每组2片256K 16即所设计的存储器单元数为 1M,字长为32,故地址长度为20 位A19A0 ,所用芯片存储单元数为 256K, 字长为 16 位, 故占用的地址长度为 18 位 A17A0 。由此可用字长位数扩展与字单元数扩展相结合的方法组成组成整个存储器字长位数扩展字长位数扩展:同一组中 2 个芯

10、片的数据线,一个与数据总线的 D15D0相连,一个与 D31D16相连;其余信号线公用(地址线、片选信号、读写信号同名引脚互连)字单元数扩展字单元数扩展:4 组 RAM 芯片,使用一片 2:4 译码器,各组除片选信号外,其余信号线公用。其存储器结构如下图D16D31D1631CPUCPUCS256K256K 1616A0A17W/RCS256K256K 1616CS256K256K 1616CS256K256K 1616W/RA0A17W/R256K256K 1616D0D15D015256K256K 1616256K256K 1616256K256K 1616D0D15Y0A18A192-4

11、译码Y1Y2Y36、用32K8位的E2PROM芯片组成128K16位的只读存储器,试问:(1) 数据寄存器多少位?(2) 地址寄存器多少位?(3) 共需多少个E2PROM芯片?(4) 画出此存储器组成框图。解:(1) 系统16位数据,所以数据寄存器16位(2) 系统地址128K217,所以地址寄存器17位4第 3 章习题参考答案128K 16 42 8片,分为4组,每组2片32K 8(4) 组成框图如下(3)共需数据数据寄存器寄存器CPUCPUD815D07CS32K32K 8 8A0A14W/RCS32K32K 8 8CS32K32K 8 8CSD81532K32K 8 8W/R地址地址寄存

12、器寄存器A0A14W/R32K32K 8 8D0D7D0732K32K 8 832K32K 8 832K32K 8 8Y0A15A162-4译码Y1Y2Y37某机器中,已知配有一个地址空间为 0000H3FFFH的ROM区域。现在再用一个RAM芯片(8K8)形成40Kl6位的RAM区域,起始地为6000H。假设RAM芯片有CS和WE信号控制端。CPU的地址总线为A15A0,数据总线为D15D0,控制信号为R/W(读/写),MREQ(访存),要求:(1) 画出地址译码方案。(2) 将ROM与RAM同CPU连接。解:(1) 由于RAM芯片的容量是8K8,要构成40K16的RAM区域,共需要40K

13、16 52 10片, 分为5组, 每组2片; 8K=213, 故低位地址为13位: A12A08K 8每组的2片位并联,进行字长的位扩展有5组RAM芯片,故用于组间选择的译码器使用3:8译码器,用高3位地址A15A13作译码器的选择输入信号地址分配情况:各芯片组各芯片组各组地址区间各组地址区间A A1515A A1414A A1313138138的有效输出的有效输出Yi5第 3 章习题参考答案0ROM0000H3FFFH0RAM1RAM2RAM3RAM4RAM56000H7FFFH8000H9FFFHA000HBFFFHC000HDFFFHE000HFFFFH00111100110011010

14、10101Y0Y1Y2Y3Y4Y5Y6Y7注:RAM1RAM5各由2片8K8芯片组成,进行字长位扩展各芯片组内部的单元地址是A12A0由全0到全1(2) ROM、RAM 与 CPU 的连接如图:D07D07CPUCPUROMROM16K16K 8 8OE8K8K 8 8CSA0A12WE8K8K 8 8CS8K8K 8 8CS8K8K 8 8CS8K8K 8 8CSR/ WA0A12WE8K8K 8 8CSD0D7D815MREQA15A14A13E3-8译码Y0Y1Y2Y3Y4A0A128K8K 8 8CS8K8K 8 8CS8K8K 8 8CS8K8K 8 8CSD815Y5Y6Y78、设

15、存储器容量为 64M,字长为 64 位,模块数 m=8,分别用顺序和交叉方式6第 3 章习题参考答案进行组织。存储周期 T100ns,数据总线宽度为 64 位,总线传送周期,=50ns。求:顺序存储器和交叉存储器的带宽各是多少?解:顺序存储器和交叉存储器连续读出 m = 8 个字的信息总量都是:q = 64 位8 = 512 位顺序存储器和交叉存储器连续读出 8 个字所需的时间分别是:t1 = mT = 8100ns = 810-7st2 = T+(m-1) = 100ns+750ns = 450 ns10-7 s顺序存储器和交叉存储器的带宽分别是:W1=q/t1=512/(810-7)=64

16、107位/sW2=q/t210-7107 位/s9、CPU 执行一段程序时,cache 完成存取的次数为 2420 次,主存完成存取的次数为 80 次,已知 cache 存储周期为 40ns,主存存储周期为 240ns,求 cache主存系统的效率和平均访问时间。解:cache 的命中率:h Nc2420 96.8%Nc Nm242080tm240 6tc40主存慢于 Cache 的倍率:r Cache/主存系统的效率:e 11 86.2%r (1 r)h650.968平均访问时间:tatc40 46.4nse0.86210、已知 cache 存储周期 40ns,主存存储周期 200ns,ca

17、che/主存系统平均访问时间为 50ns,求 cache 的命中率是多少?解:已知 cache主存系统平均访问时间 ta=50ns由于ta htc(1h)tm所以有h tmta20050 93.75%tmtc2004011、某电脑采用四体交叉存储器,今执行一段小循环程序,此程序放在存储器的7第 3 章习题参考答案连续地址单元中, 假设每条指令的执行时间相等, 而且不需要到存储器存取数据,请问在下面两种情况中执行的指令数相等 ,程序运行的时间是否相等。(1) 循环程序由 6 条指令组成,重复执行 80 次。(2) 循环程序由 8 条指令组成,重复执行 60 次。解:设取指周期为 T,总线传送周期

18、为,每条指令的执行时间相等,并设为 t0,存储器采用四体交叉存储器,且程序存放在连续的存储单元中,故取指令操作采用流水线存取方式,两种情况程序运行的总的时间分别为:(1) t = (T+5+6t0)*80 = 80T+400+480 t0(2) t = (T+7+8t0)*60 = 60T+420+480 t0所以不相等12、一个由主存和 Cache 组成的二级存储系统,参数定义如下:Ta为系统平均存取时间,T1为 Cache 的存取时间,T2为主存的存取时间,H 为 Cache 命中率,请写出 Ta与 T1、T2、H 参数之间的函数关系式。解:Ta H T1(1 H)T213、一个组相联ca

19、che 由 64 个行组成,每组4 行。主存储器包含4K 个块,每块128 个字。请表示内存地址的格式。解:主存 4K 个块,每块 128 个字,共有 4K128=219个字,故主存的地址共 19 位;共 4K 个块,故块地址为 12 位;每块 128 个字,故块内的字地址为 7 位Cache 有 64 行,每组 4 行,共 16 组,故组号 4 位,组内页号 2 位组相联方式是组间直接映射,组内全相联映射方式;所以主存的块地址被分为两部分:低4 位为在 cache 中的组号,高8 位为标记字段,即 19 位内存地址的格式如下:tag组号字地址8 位4 位7 位14、有一个处理机,内存容量 1

20、MB,字长 1B,块大小 16B,cache 容量 64KB,假设 cache 采用直接映射式,请给出2 个不同标记的内存地址,它们映射到同一个 cache 行。解:64KB 212个行,行号为 12 位Cache 共有16B采用直接映射方式,所以 cache 的行号 i 与主存的块号 j 之间的关系为:i jmodm,m 为 cache 的总行数20 位的内存地址格式如下:tag行号字地址4 位12 位4 位两个映射到同一个 cache 行的内存地址满足的条件是:12 位的行号相同,而 48第 3 章习题参考答案位的标记不同即可,例如下面的两个内存地址就满足要求:00000000000000

21、000000=00000H 与00010000000000000000=10000H15、假设主存容量 16M32 位,cache 容量 64K32 位,主存与 cache 之间以每块432 位大小传送数据,请确定直接映射方式的有关参数,并画出主存地址格式。解:由已知条件可知 Cache 共有64K 32位 214个行,行号为 14 位432位主存共有16M 32位 222个块,块地址为 22 位,由行号和标记组成432位cache 的行号 i 与主存的块号 j 之间的关系为:i jmodm,m 为 cache 的总行数设 32 位为一个字,且按字进行编址,则24 位的内存地址格式如下:tag

22、行号字地址8 位14 位2 位16. 下述有关存储器的描述中,正确的选项是(B、D)A. 多级存储体系由Cache、主存和虚拟存储器构成B. 存储保护的目的是:在多用户环境中,既要防止一个用户程序出错而破坏系统软件或其它用户程序,又要防止用户访问不是分配给他的主存区,以到达数据安全与保密的要求。C. 在虚拟存储器中,外存和主存以相同的方式工作,因此允许程序员用比主存空间大得多的外存空间编程。D. Cache和虚拟存储器这两种存储器管理策略都利用了程序的局部性原理。18虚拟段页式存储管理方案的特性为( D )A.空间浪费大、存储共享不易、存储保护容易、不能动态连接。B.空间浪费小、存储共享容易、

23、存储保护不易、不能动态连接。C.空间浪费大、存储共享不易、存储保护容易、能动态连接。D.空间浪费小、存储共享容易、存储保护容易、能动态连接。19. 某虚拟存储器采用页式存储管理,使用LRU页面替换算法,假设每次访问在一个时间单位内完成,页面访问序列如下:1、8、1、7、8、2、7、2、1、8、3、8、2、1、3、1、7、1、3、7。已知主存只允许放4个页面,初始状态时4个页面是全空的,则页面失效次数是_6_。解答过程:LRU算法的思想: 每页设置一个计数器, 每次命中一页, 该页对应的计数器清零,其他各页的计数器加1;需要替换时,将计数值最大的页换出,所以,对应的访问过程及相应的计数器的内容、

24、替换结果如下:9第 3 章习题参考答案访问访问序列序列调入的页号abcdabcd1 11 108 818 8101 118017 7187 71208 81872012 21872 231207 7187242012 2187253101 1187204218 8187210323 3183 3221038 8183230142 2183241201 1183202313 3183213021 1183204137 717 73210241 1173201353 3173212067 717322017各计数器的值注:红色标注的页是未命中的访问共6次20. 主存容量为 4MB,虚存容量为 1G

25、B,则虚拟地址和物理地址各为多少位?如页面大小为 4KB,则页表长度是多少?解:主存容量为 4MB,物理地址 22 位虚存容量为 1GB,虚拟地址 30 位页表长度,即页面数=1GB/ 4KB=218=256K21. 设某系统采用页式虚拟存储管理,页表存放在内存中。(1) 如果一次内存访问使用 50ns,访问一次主存需用多少时间?(2) 如果增加TLB, 忽略查找页表项占用的时间, 并且 75%的页表访问命中TLB,内存的有效访问时间是多少?解:(1) 假设页表存放在主存中,则要实现一次主存访问需两次访问主存:一次是访问页表,确定所存取页面的物理地址;第二次才根据该地址存取页面数据。故访问一次

26、主存的时间为 502=100(ns)(2) 75%50+(1-75%) 250=62.5(ns)22.某电脑的存储系统由 cache,主存和磁盘构成。cache 的访问时间为 15ns;如果被访问的单元在主存中但不在 cache 中,需要用 60ns 的时间将其装入 cache,然后再进行访问;如果被访问的单元不在主存中,则需要10ms 的时间将其从磁盘中读入主存,然后再装入 cache 中并开始访问。假设 cache 的命中率为 90%,主存的命中率为 60%,求该系统中访问一个字的平均时间。解:被访问的字在 cache 中的概率为不在 cache 中但在主存中的概率为:(1-0.9)不在

27、cache 也不在主存中的概率为:(1-0.9)所以, 一个字的访问时间为:150.9+(15+60)0.06+(15+60+10106) =13.5+4.5+400003=400021(ns)10第 3 章习题参考答案23.某页式存储管理,页大小为 2KB,逻辑地址空间包含 16 页,物理空间共有 8页,逻辑地址应用多少位?主存物理空间有多大?解:逻辑地址空间包含 16 页,页大小为 2KB,所以逻辑地址空间为 32KB,逻辑地址应用 4+11=15 位物理空间共有 8 页,页大小为 2KB,所以主存物理空间 16KB24.在一个分页虚存系统中,用户虚地址空间为 32 页,页长 1KB,主存

28、物理为16KB。已知用户程序有10 页长,假设虚页0、1、2、3 已经被调入到主存 8、7、4、10 页中,请问虚地址 0AC5 和 1AC5(十六进制)对应的物理地址是多少?解:页长 1KB,所以页内地址为 10 位。主存物理页面数:16 页,共 14 位地址码(其中页面号 4 位,页内地址 10 位)用户虚地址空间:32 页,页面号为 0 31;共 15 位地址码(其中页面号 5 位,页内地址 10 位)0AC5H=00010,1011000101B,页面号为 2,已被调入到主存页 4,所以,物理地址中的页面号为4,页内地址与虚地址的页内地址相同,所以是:0100,1011000101=1

29、2C5H1AC5H=00110,1011000101B,页面号为 6,未被调入到主存页中,所以无物理地址,会发生缺页中断。25.段式虚拟存储器对程序员是否透明?请说明原因。解:虚拟管理是由软件(操作系统)和硬件共同完成,由于软件的介入,虚存对实现存储管理系统程序不透明。 而段是按照程序的自然分界划分的长度可以动态改变的区域。通常,程序员把子程序、操作数和常数等不同类型的数据划分到不同的段中,并且每个程序可以有多个相同类型的段。由于分段是由程序员完成的,所以段式虚拟存储器对程序员而言不是透明的, 但虚存到实存的地址映射是由系统软件辅助完成的,故对应用程序而言,段式虚拟存储器是“半透明”的。26.

30、在一个进程的执行过程中,是否其所有页面都必须处在主存中?解:在有虚拟存储管理系统中,程序不是一次整体装入内存才运行,所以不是所有页面都必须处在主存中,而是根据程序的局部性,有的页面在主存,有的页面在辅存。27.为什么在页式虚拟存储器地址变换时可以用物理页号与页内偏移量直接拼接成物理地址, 而在段式虚拟存储器地址变换时必须用段起址与段内偏移量相加才能得到物理地址?解:由于物理页与虚拟页的页面大小相同,且为 2 的整数次幂,所以页式虚拟存储器地址变换时可以用物理页号与页内偏移量直接拼接成物理地址。 而段式虚拟存储器的各段大小不同,且段起始地址任意,所以必须用段起址与段内偏移量相加才能得到物理地址。28.在虚存实现过程中,有些页面会在内存与外存之间被频繁地换入换出,使系统效率急剧下降。这种现象称为颠簸。请解释产生颠簸的原因,并说明防止颠簸11第 3 章习题参考答案的方法。解:产生颠簸的原因主要有二:一是分配的页面数太少,二是替换策略不佳。防止颠簸的方法:适当增加分配给用户程序的页面数,选取 LRU 或更好的替换策略。补充:从以下有关存储器的描述中,选择出正确的答案:A多体交叉存储主要解决扩充容量问题。B访问存储器的请求是由 CPU 发出的。Ccache 与主存统一编址,即主存空间的某一部分属于 cache。Dcache 的功能全由硬件实现。答: D12

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 建筑/环境 > 施工组织

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号