1、计算机学科专业基础综合组成原理-4 及答案解析(总分:100.00,做题时间:90 分钟)一、综合应用题(总题数:12,分数:100.00)1.简要说明采用层次结构存储器系统的目的。说明每一层次的存储器所用的存储介质的特性。采用层次结构存储器能达到预期目的的原理。 (分数:5.00)_2.有一个 16K16K 位的存储器,由 1K4 位的 DRAM 芯片(内部结构为 6416,引脚同 SRAM)构成,问: (1)采用异步刷新方式,如单元刷新间隔不超过 2ms,则刷新信号周期是多少? (2)如采用集中刷新方式,存储器刷新一遍最少用多少读/写周期?设读/写周期为 0.1s,死时间率是多少? (分数
2、:2.00)_假设 CPU 执行某段程序时,950 次从 Cache 得到数据,50 次从主存得到数据,已知 Cache 存取周期为50ns,主存存取周期为 200ns(设每次访问时,Cache 访问与主存访问并发进行,如 Cache 命中则中断主存的访问)。求:(分数:15.00)(1).Cache 的命中率(分数:5.00)_(2).平均访问时间(分数:5.00)_(3).Cache-主存系统的效率(分数:5.00)_设主存容量 1MB,有 16KB 直接相联映像的 Cache,似定该 Cache 的块为 8 个 32 位的字。解答下列问题。(分数:25.00)(1).写出 Cache 地
3、址格式(分数:5.00)_(2).写出主存地址格式(分数:5.00)_(3).块表的容量为多大?(分数:5.00)_(4).画出直接方式地址映像及变化示意图。(分数:5.00)_(5).主存地址为 ABCDE8F8 的单元在 Cache 中的什么位置?(分数:5.00)_3.某计算机主存(MM)容量为 256K 字,Cache 为 8K 字,MM 与 Cache 之间按组相联映像。Cache 的每组有 4个页面,每个页面有 64 个字。假设开始时 Cache 为空,CPU 按顺序从 MM 地址为 0,1,2,8447 单元执行“取”操作(不命中时,则将 MM 中含有该字的页面整页都送入 Cac
4、he,然后从 Cache 中把需要的字读出送 CPU),然后又重复执行 20 次。设 Cache 存取速度为 MM 的 5 倍,页面的替换使用 LRU 算法。请计算上述操作总的存取时间与不用 Cache 相比,速度提高多少倍? (分数:5.00)_系统有 20 位地址线 A 19 A 0 ,现手头有 8 片 64K1 位的存储器芯片,需要把它们组织起来,问:(分数:10.00)(1).如何使它们一起同时工作?(分数:5.00)_(2).如何使 8 片(64K32 位)4 组分时工作?(分数:5.00)_4.已知 CPU 数据总线为 8 位,地址总线为 16 位,请用 2K8 位的存储芯片将存储
5、系统扩展成 6K8 位,并指出需要几块内存芯片。 (分数:5.00)_设某 SRAM 芯片存储容量为 16K8 位,问:(分数:10.00)(1).该心片片引出线的最小数目应该是多少?(分数:5.00)_(2).计算存储器芯片的地址范围。(分数:5.00)_已知某 8 位机的主存采用半导体存储器,地址码为 18 位,采用 4K4 位的 SRAM 芯片组成该机所允许的最大主存空间,并选用模块条形式,问:(分数:15.00)(1).若每个模块条为 32K8 位,共需几个模块条?(分数:5.00)_(2).每个模块条内有多少片 RAM 芯片?(分数:5.00)_(3).主存共需多少 RAM 芯片?C
6、PU 需使用几位地址线来选择模块?使用何种译码器?(分数:5.00)_5.用 2K4 位/片的 RAM 存储芯片构成一个 8KB 的存储器,地址总线为 A 15 (高位)A 0 (低位),数据总线 D 7 (高位)D 0 (低位),控制读/写信号线。请写出片选逻辑式,画出芯片级连逻辑图,注意各信号线。 (分数:5.00)_6.何谓变址寻址、基址寻址?两者有何区别? (分数:1.00)_7.设字长和指令长度均为 24 位,若指令系统可完成 108 种操作,且具有直接、间接(一次间址)、变址、基址、相对、立即等 6 种寻址方式,则在保证最大范围内直接寻址的前提下,指令字中操作吗占几位?寻址特征位占
7、几位?可直接寻址的范围是多少?一次间址的范围是多少? (分数:2.00)_计算机学科专业基础综合组成原理-4 答案解析(总分:100.00,做题时间:90 分钟)一、综合应用题(总题数:12,分数:100.00)1.简要说明采用层次结构存储器系统的目的。说明每一层次的存储器所用的存储介质的特性。采用层次结构存储器能达到预期目的的原理。 (分数:5.00)_正确答案:()解析:(1)计算机采用层次结构存储器系统的目标应该是在合理的成本范围内,通过对各级存储器大小的配置,达到可接受的性能,即:容量大、速度快、成本低。 (2)高速缓冲层使用的是高速缓冲存储器,它的特点是高速、昂贵,一般用的是 SRA
8、M。主存使用的一般是DRAM。它的特点是相对快速,价格居中。 磁盘存储器使用的是硬盘,它的速度没有什么优势,但是可以在断点后保存数据。 磁带机的优点是巨大的容量,但是顺序访问使它只能用来做数据的备份,或是保存海量的数据。 (3)层次结构的原理主要包含以下 3 个重要特性: 包含性。包含性用 M1M2M3Mn 来描述,其中 Mi 表示某一级层次模块。建立包含关系意味着所有信息项都是包含在最外层 Mn 中的。在处理过程中,Mn 的子集被复制到 M(n-1)。同样,M(n-1)的内容被复制到M(n-2)。 一致性。它要求同一个信息项与后续存储器层次上的副本是一致的。如果在高速缓冲中的一个字被修改过,
9、那么在所有更高层上,该字的副本也必须立即或最后加以修改。 局部性。CPU 要存取指令或数据就必须对存储器进行访问,这些存取在时间、空间和次序上往往都集中在一定范围内进行。可以分别用 3 种特性来描述这种局部性: 时间局部性:最近的访问项(指令或数据)很可能在不久的将来再次被访问; 空间局部性:表示一种趋势,指一个进程访问的各项所在地址彼此很近; 2.有一个 16K16K 位的存储器,由 1K4 位的 DRAM 芯片(内部结构为 6416,引脚同 SRAM)构成,问: (1)采用异步刷新方式,如单元刷新间隔不超过 2ms,则刷新信号周期是多少? (2)如采用集中刷新方式,存储器刷新一遍最少用多少
10、读/写周期?设读/写周期为 0.1s,死时间率是多少? (分数:2.00)_正确答案:()解析:采用异步刷新方式,在 2ms 时间内分散地把芯片 64 行刷新一遍,故刷新信号的时间间隔为2ms/64=31.25s。即可取刷新信号周期为 30s。 如采用集中刷新方式,假定 T 为读/写周期,如果 16 组同时进行刷新,则所需刷新时间为 64T。因为 T 单位为 0.1s,2ms=2000s,则死时间率为 64T/2000100%=0.32%。假设 CPU 执行某段程序时,950 次从 Cache 得到数据,50 次从主存得到数据,已知 Cache 存取周期为50ns,主存存取周期为 200ns(
11、设每次访问时,Cache 访问与主存访问并发进行,如 Cache 命中则中断主存的访问)。求:(分数:15.00)(1).Cache 的命中率(分数:5.00)_正确答案:()解析:Cache 未命中情况下才需要从主存取数据,故 Cache 的命中率=Cache 命中次数/(Cache 命中次数+Cache 未命中次数) =950/(950+50) =0.95(2).平均访问时间(分数:5.00)_正确答案:()解析:平均访问时间=(95050ns+50200ns)/1000=57.5ns(3).Cache-主存系统的效率(分数:5.00)_正确答案:()解析:Cache-主存系统的效率=Ca
12、che 存取周期/平均访问时间 =50/57.5100% =87.0%设主存容量 1MB,有 16KB 直接相联映像的 Cache,似定该 Cache 的块为 8 个 32 位的字。解答下列问题。(分数:25.00)(1).写出 Cache 地址格式(分数:5.00)_正确答案:()解析:Cache 容量 16KB,16KB=2 14 B,所以 Cache 地址为 14 位;块的大小为 8 个 32 位的字,即 32 字节,所以块内地址为 5 位,块地址为 9 位。Cache 地址格式为,如图 1 所示。 (2).写出主存地址格式(分数:5.00)_正确答案:()解析:主存容量 1MB,1MB
13、=2 20 B,所以主存地址为 20 位;块的大小为 32 字节,所以块内地址为 5 为,块地址为 9 位,块标记为 6 位。主存地址格式为如图 2 所示。 (3).块表的容量为多大?(分数:5.00)_正确答案:()解析:Cache 的每一块在块表中有一项,Cache 的块地址为 9 位,所以块表的单元数为 2 9 字,块表中存放的是块标记,由于块标记为 6 位,所以块表的字长为 6 位。故块表的容量为:2 9 字6 位。(4).画出直接方式地址映像及变化示意图。(分数:5.00)_正确答案:()解析:直接地址映射方式变化如图 3 所示。 (5).主存地址为 ABCDE8F8 的单元在 Ca
14、che 中的什么位置?(分数:5.00)_正确答案:()解析:Cache 容量为 16KB=2 14 B,块长为 832=32B,所以 Cache 有 161024/32=512 个块。因为ABCDE8F8=1010 1011 1100 1101 1110 1000 1111 1000。 所以块号=1010 1011 110 1101 1110 1000 111,块内地址=11000。 在直接映像方式下,主存中的第 i 块映像到 Cache 中第 i mod 512 个块中; 1010 1011 1100 1101 1110 1000 111 mod 512=10 1000 111: 所以,地
15、址 ABCDE8F8 的单元在 Cache 中的地址为 10 1000 1111 1000。3.某计算机主存(MM)容量为 256K 字,Cache 为 8K 字,MM 与 Cache 之间按组相联映像。Cache 的每组有 4个页面,每个页面有 64 个字。假设开始时 Cache 为空,CPU 按顺序从 MM 地址为 0,1,2,8447 单元执行“取”操作(不命中时,则将 MM 中含有该字的页面整页都送入 Cache,然后从 Cache 中把需要的字读出送 CPU),然后又重复执行 20 次。设 Cache 存取速度为 MM 的 5 倍,页面的替换使用 LRU 算法。请计算上述操作总的存取
16、时间与不用 Cache 相比,速度提高多少倍? (分数:5.00)_正确答案:()解析:(1)Cache 为 8K 字=2 13 字,每个页面有 64=2 6 个字,所以 Cache 有 2 7 个页面。又因为 Cache 的每组有 4 个页面,所以 Cache 有 2 5 个组。MM 地址 0,1,2,8 447 按每个页面有 64 个字,共有 132页,再按每 32 页为一区,共有 5 区。 组相联映像方式如图 1 和图 2 所示。 图 1 Cache-主存的映射关系系统有 20 位地址线 A 19 A 0 ,现手头有 8 片 64K1 位的存储器芯片,需要把它们组织起来,问:(分数:10
17、.00)(1).如何使它们一起同时工作?(分数:5.00)_正确答案:()解析:图(a)所示是将 8 片一起工作的存储芯片连接在一起,并用一根高位地址线 A16(我们假设为)去选通它便可实现这个目的。 (2).如何使 8 片(64K32 位)4 组分时工作?(分数:5.00)_正确答案:()解析:图(b)所示是将 8 片中每 2 片分别连接;为使各组分时工作,采用 1 片地址译码器,用 2 位高地址作输入,再将译码输出与各组分别连接,这样,当高地址为 11、10、01、00 时便可实现各组芯片分时工作的目的。4.已知 CPU 数据总线为 8 位,地址总线为 16 位,请用 2K8 位的存储芯片
18、将存储系统扩展成 6K8 位,并指出需要几块内存芯片。 (分数:5.00)_正确答案:()解析:(1)采用 3 块相同的存储芯片,总容量即为 6KB。 (2)显然各存储芯片的地址、读/写控制和数据线接法都相同,差别是 CPU 的剩余 AB(地址总线)中的 A 11 、A 12 和 A 13 分别接第 1、第 2 和第 3 片引脚。 (3)为了确保各 2K8 位的芯片分时工作,所以要求剩余的 3 位高位地址每次仅 1 位有效(为低)。 (4)接到芯片内部的 11 位地址选中片内某一存储单元,即片内寻址;剩余的 3 位地址选中某一块存储芯片,即片外寻址。CPU 送出地址信号后,它们共同完成寻址工作
19、。扩展后的存储系统等效为一块 6KB 的存储芯片。 提示:显然,由于存储芯片数据宽度与 DB(数据总线)的宽度相同,只要进行字容量方向的扩展,即为字扩展。具体连接如下图所示。 设某 SRAM 芯片存储容量为 16K8 位,问:(分数:10.00)(1).该心片片引出线的最小数目应该是多少?(分数:5.00)_正确答案:()解析:16K=2 14 ,所以地址线为 14 根,字长 8 位,所以数据线为 8 根,加上芯片允许信号 CE、读信号RD(也可用输出允许信号 OE,但作用不完全相同)、写信号 WR、电源线、地线,其引出线最小数目为 27 根。(2).计算存储器芯片的地址范围。(分数:5.00
20、)_正确答案:()解析:存储器芯片的地址范围是:因为 2 14 =16K,设起始地址为 0000H 开始,则结束地址为 3FFFH。已知某 8 位机的主存采用半导体存储器,地址码为 18 位,采用 4K4 位的 SRAM 芯片组成该机所允许的最大主存空间,并选用模块条形式,问:(分数:15.00)(1).若每个模块条为 32K8 位,共需几个模块条?(分数:5.00)_正确答案:()解析:此即计算最多需要的模块组数为: 最大主存空间容量/模块的容量=2 18 8/32K8=2 18 /2 5 2 10 =8(组)(2).每个模块条内有多少片 RAM 芯片?(分数:5.00)_正确答案:()解析
21、:组内的芯片数为:模块位容量/芯片位容量=(32K8)/(4K4)=16(片/组)(3).主存共需多少 RAM 芯片?CPU 需使用几位地址线来选择模块?使用何种译码器?(分数:5.00)_正确答案:()解析:需要的芯片总数为:每组的芯片数组数=816=128(片) CPU 选择 8 个模块(即组) 因为用线选法需要 2 3 =8(位),片内寻址需要 32K=2 15 (位),仅剩 18-15=3(位)。所以不能用线选法。采用译码器法,可用 3-8 译码器。 注意:目前各高校十分重视实践能力的培养,因此试题中常常会出现一些设计题,考生在复习与解题时需多加注意。 1)最好先把已知条件和要求的内容
22、画出来,以免紧张时疏漏。 2)除了注意地址线根数的计算外,如芯片上多少根地址线,多少根片选线,多少根空闲,不要漏掉控制线。复习时要注意 5.用 2K4 位/片的 RAM 存储芯片构成一个 8KB 的存储器,地址总线为 A 15 (高位)A 0 (低位),数据总线 D 7 (高位)D 0 (低位),控制读/写信号线。请写出片选逻辑式,画出芯片级连逻辑图,注意各信号线。 (分数:5.00)_正确答案:()解析:(1)所需的芯片数:(8K8)/(2K4)=8 片。 (2)每组芯片数:(2K8)/(2K4)=2(片);位扩展画在横的方向,组成一个 2K8 位的模块。 (3)组数:8/2=4(组);字扩
23、展画在竖的方向。4 个 2K8 位的模块按字扩展构成 8K8 位的存储器,即8KB 的存储器。 (4)总地址线数:此存储器的容量为 8KB,需 13 位地址(2 13 =8K),选用 A 12 A 0 作为地址线。 (5)片内寻址:芯片容量均为 2KB,需 11 位地址,用 A 10 A 0 。 (6)片外寻址:设 CPU 总地址线为 16 位,剩下 A 15 、A 14 、A 13 、A 12 、A 11 。 方案 1:用 A 14 A 11 4 位地址进行线选,但地址空间不连续。 方案 2:通过一个 2-4 译码器对 4 个组进行选择,用 A 12 、A 11 输入分别为:00,01,10
24、,11,控制输出 30 的选择,对应的 30 作为各芯片的控制。 (7)D 7 D 0 为 8 条数据线。 (8)勿忘多余引脚的处理:线选法时设 A 15 为 0,泽码方案 A 15 、A 14 、A 13 为 0 且 74LS139 的工作便是将 G 端输入设置为 0;还有,与 CPU 读/写控制线连接。6.何谓变址寻址、基址寻址?两者有何区别? (分数:1.00)_正确答案:()解析:变址寻址是操作数地址为变址寄存器中的内容与位移量 D 之和,即: E=A+D 基址寻址是指令中给出一个形式地址(作为修改量),并给出基址寄存器号,基址寄存器内容(作为基址)与形式地址相加得到操作数有效地址,即
25、: E=A+D 习惯上基址寻址中基址寄存器提供基准量而指令提供位移量,而变址寻址中变址寄存器提供修改量而指令提供基准量。 基址寻址用于程序定位,一般由硬件或操作系统完成。而变址寻址是面向用户的,用于对一组数据进行访问等。7.设字长和指令长度均为 24 位,若指令系统可完成 108 种操作,且具有直接、间接(一次间址)、变址、基址、相对、立即等 6 种寻址方式,则在保证最大范围内直接寻址的前提下,指令字中操作吗占几位?寻址特征位占几位?可直接寻址的范围是多少?一次间址的范围是多少? (分数:2.00)_正确答案:()解析:由于指令系统可完成 108 种操作,所以指令字中操作码至少占 7 位; 由于指令系统有 6 种寻址方式,所以寻址特征位占 3 位; 直接寻址的地址为:24-7-3=14 位,所以可直接寻址的范围是 2 14 ; 由于字长为 24 位,所以间接寻址的范围是 2 24 。