计算机组成与结构试题A解答.docx
《计算机组成与结构试题A解答.docx》由会员分享,可在线阅读,更多相关《计算机组成与结构试题A解答.docx(10页珍藏版)》请在冰豆网上搜索。
![计算机组成与结构试题A解答.docx](https://file1.bdocx.com/fileroot1/2023-1/9/d0bc5072-29fa-4327-9b7d-b754d8a8778e/d0bc5072-29fa-4327-9b7d-b754d8a8778e1.gif)
计算机组成与结构试题A解答
计算机组成与结构试题A解答
=A卷
课程计算机组成与系统结构考试形式(闭卷,考试)
题次
一
二
三
四
五
六
七
八
九
十
总分
评卷人
分数
40
10
15
10
10
15
100
评分
一、判断下列各题对错,对,不需要说明原因;错,请给出正确说明(每题4分,共40分)。
1.在处理器(CPU)的数据路径上流动的信息分别是指令、操作数和地址,它们并不是同时在数据路径上流动,而是分时流动的。
答:
对。
2.指令操作的对象是操作数,但在指令中仅给出操作数的地址;需要用此地址直接寻找操作数。
答:
错。
指令中给出的地址是形式地址,需要根据指令中给出的寻址方式,将此形式地址转换成实际地址,然后用实际地址去寻找操作数。
3.指令集结构(ISA)包含了指令集和处理器内部的所有寄存器。
答:
错。
ISA包含的内容是:
指令集(指令格式、类型、寻址方式等)、处理器内部可供程序员编程使用的寄存器及与存储器交互的接口信息(地址与数据位数)。
4.从内存中读取指令和读取操作数的过程相同,只是地址来源不同以及读出后存放的去处不同。
答:
对。
5.主存仅由SRAM和DRAM两种半导体存储器组成,它们都是易失性存储器,所以一旦断电,再开机仅能由硬盘直接启动执行。
答:
错。
主存是由DRAM和ROM两种半导体存储器组成。
DRAM是易失性存储器,仅用于存储执行或待执行的程序和数据;ROM是非易失性存储器,用来存放软硬系统之间的映像程序,包括系统自检与启动引导等。
6.
Cache技术解决存储器系统的速度问题,虚拟存储器技术解决存储器系统的容量问题,所以主存可以不要。
答:
错。
主存是多层存储器系统的核心层,是保证处理器正常执行程序的基础设施。
引入Cache技术是为了在主存速度的基础上提高速度,引入虚拟存储器技术也是为了在主存容量的基础上扩充容量。
离开了主存这一基础,就无法实现速度的提高和容量的扩充。
7.Cache技术中映像方法是基础,虚拟存储器技术中分页与分段管理方法是基础。
答:
对。
8.Cache的性能指标是速度,主存的性能指标是性价比,虚拟存储器的性能指标是容量。
答:
错。
Cache的性能指标是其命中率;主存的性能指标是其存储容量、存取时间、存储周期和存储器带宽;虚拟存储器的性能指标是主存的命中率。
9.RISC指令集中每条指令的位数都相同(定长);在RISC处理器中提高性能的两种实现方法分别是采用指令流水线和大量使用寄存器。
答:
对。
10.指令流水线若想提高计算机系统的性能,必须解决的问题是执行指令的各功能部件在操作上可以重叠进行。
答:
错。
必须解决的问题除了执行指令的各功能部件在操作上可以重叠进行外,还有数据冲突与分支冲突问题。
二、计算题(每题5分,共10分)
1.已知x=-65,y=+40,用符号补码计算x-y。
注意:
n+1=8。
解:
[x]补=[-65]补=[-1000001]补=10111111;
[y]补=[+40]补=[+0101000]补=00101000
[-y]补=11011000
[x-y]补=[x]补+[-y]补=110111111+111011000
110111111
+111011000
110010111
[x-y]补=10010111
x-y=(-1101001)2=(-105)10
说明:
数据表示:
2分;计算∶2分;最终结果1分。
2.说明IEEE754单精度浮点数表示的数值范围,并将X=-101.11011⨯2-100用IEEE754单精度浮点数格式表示。
答:
IEEE754单精度浮点数表示的数值范围为:
-(2-2-23)2+127~-2-126
及+2-126~+(2-2-23)⨯2+127(2分)
规格化真值:
X=-1.0111011⨯2-10
(1分)
s=1
e=-10+1111111=01111101
f=01110110000000000000000
[X]浮=10111110101110110000000000000000(2分)
三、某CPU与非常简单CPU具有相同的寄存器及存储器容量配置,其指令集如下:
指令
指令码
操作
LDAC
00AAAAAA
AC←M[AAAAAA]
STAC
01AAAAAA
M[AAAAAA]←AC
ADD
10AAAAAA
AC←AC+M[AAAAAA]
AND
11AAAAAA
AC←AC∧M[AAAAAA]
请为该CPU设计数据路径(包括ALU),并写出执行上述每条指令的RTL代码(取指过程的RTL代码只写一遍)。
(本题15分,数据路径8分,RTL代码7分)
答:
RTL代码:
(7分)
FETCH1:
AR←PC
FETCH2:
DR←M,PC←PC+1
FETCH3:
IR←DR[7..6],AR←DR[5..0]
LDAC1:
DR←M
LDAC2:
AC←DR
STAC1:
DR←AC
STAC2:
M←DR
ADD1:
DR←M
ADD2:
AC←AC+DR
AND1:
DR←M
AND2:
AC←AC∧DR
数据路径之ALU部分:
(4分)
数据路径整体:
(4分)
四、下列代码段运行在采用相对简单CPU的计算机上,它包含一个1K大小的相联CACHE,该CACHE映像单位为4B,运行前CACHE为空。
求此段代码运行2轮时CACHE的命中率。
(10分)
0000:
LDAC44B0
0003:
MVAC
0004:
MOVR
0005:
INAC
0006:
MVAC
0007:
NOT
0008:
JPNZ0004
44B0:
0F
答:
执行上述代码过程中CACHE的状态如下表:
访问顺序:
123456789
数据
LDAC0
LDAC1
LDAC2
0F
MVAV3
MOVR
INAC
MVAV6
NOT
C
A
C
H
E
LDAC0
LDAC0
LDAC0
LDAC0
LDAC0
LDAC0
LDAC0
LDAC0
LDAC0
LDAC1
LDAC1
LDAC1
LDAC1
LDAC1
LDAC1
LDAC1
LDAC1
LDAC1
LDAC2
LDAC2
LDAC2
LDAC2
LDAC2
LDAC2
LDAC2
LDAC2
LDAC2
MVAV3
MVAV3
MVAV3
MVAV3
MVAV3
MVAV3
MVAV3
MVAV3
MVAV3
OF
OF
OF
OF
OF
OF
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
MOVR
MOVR
MOVR
MOVR
INAC
INAC
INAC
INAC
MVAV6
MVAV6
MVAV6
MVAV6
NOT
NOT
NOT
LDAC0
命中?
否
是
是
否
是
否
是
是
是
接上表
访问顺序:
111213141516171819
JPNZ0
JPNZ1
JPNZ2
MOVR
INAC
MVAV6
NOT
JPNZ0
JPNZ1
JPNZ2
LDAC0
LDAC0
LDAC0
LDAC0
LDAC0
LDAC0
LDAC0
LDAC0
LDAC0
LDAC0
LDAC1
LDAC1
LDAC1
LDAC1
LDAC1
LDAC1
LDAC1
LDAC1
LDAC1
LDAC1
LDAC2
LDAC2
LDAC2
LDAC2
LDAC2
LDAC2
LDAC2
LDAC2
LDAC2
LDAC2
MVAV3
MVAV3
MVAV3
MVAV3
MVAV3
MVAV3
MVAV3
MVAV3
MVAV3
MVAV3
OF
OF
OF
OF
OF
OF
OF
OF
OF
OF
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
MOVR
MOVR
MOVR
MOVR
MOVR
MOVR
MOVR
MOVR
MOVR
MOVR
INAC
INAC
INAC
INAC
INAC
INAC
INAC
INAC
INAC
INAC
MVAV6
MVAV6
MVAV6
MVAV6
MVAV6
MVAV6
MVAV6
MVAV6
MVAV6
MVAV6
NOT
NOT
NOT
NOT
NOT
NOT
NOT
NOT
NOT
NOT
JPNZ0
JPNZ0
JPNZ0
JPNZ0
JPNZ0
JPNZ0
JPNZ0
JPNZ0
JPNZ0
JPNZ0
JPNZ1
JPNZ1
JPNZ1
JPNZ1
JPNZ1
JPNZ1
JPNZ1
JPNZ1
JPNZ1
JPNZ1
JPNZ2
JPNZ2
JPNZ2
JPNZ2
JPNZ2
JPNZ2
JPNZ2
JPNZ2
JPNZ2
JPNZ2
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
否
是
是
是
否
是
是
是
是
是
命中率=15/19=79%
五、已知基于相对简单CPU的计算机系统配有16KB的物理内存,采用分页方式管理虚拟存储空间,页大小为4KB。
当前内存的使用状况如下所示:
帧3
帧2
帧1
帧0
现在CPU要访问4010地址单元,请画图说明MMU如何实现将CPU输入的逻辑地址转换成物理地址。
(10分)
答:
转换过程如下图所示:
(8分)
页偏移量
逻辑地址4010:
FVCD
0
1
2
3
4帧号
页表物理地址
说明:
MMU查页表首先查看有效位V是否为1,是,则进行地址转换,并修改计数值;否,则产生缺页中断。
(2分)
六、下列代码将在采用三段流水线(取指、译码并读取寄存器、执行并存结果)的RISC处理器上执行。
1:
R10←2
2:
R1←R1+R2
3:
R2←R1+R3
4:
R10←R10-1
5:
IF(R10≠0)THENGOTO2
6:
R4←R4+R5
7:
R5←R4+R6
采用通过编译优化解决冲突,请给出重新排序指令后的最终代码和执行过程。
(15分,最终代码7分,执行过程8分)
答:
重新排序指令后的最终代码:
(7分)
6:
R4←R4+R5
1:
R10←2(=3-1)
2:
R1←R1+R2
5:
IF(R10≠0)THENGOTO2
3:
R2←R1+R3
4:
R10←R10-1
7:
R5←R4+R6
8:
R10←R10+1
重新排序指令后的执行过程:
(8分)
T1
T2
T3
T4
T5
T6
T7
T8
T9
T10
T11
T12
T13
T14
T15
T16
T17
T18
6
1
2
5
3
4
2
5
3
4
2
5
3
4
7
8
6
1
2
5
3
4
2
5
3
4
2
5
3
4
7
8
R4
R10
R1
5
R2
R10
R1
5
R2
R10
R1
5
R2
R10
R5
R10
6125342534253478
完(共10页)