计算机体系结构习题

更新时间:2024-02-03 14:56:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

·第一章 一.选择填空

1. 计算机系统的多级层次结构从上到下的顺序分别是 、 、 、 、 和 。

2. 以往对计算机系统的设计方法有 、 、和 。 3. 解决软件可移植的办法有 、 和 。

4. 计算机中的两种信息流是 和 ,计算机系统按流分类可分 为 、 、 和 。 5. 冯·诺依曼机以为 中心。 6. 系列机软件应做到( )。

A、向前兼容,并向上兼容 B、向后兼容,力争向上兼容 C、向前兼容,并向下兼容 D、向后兼容,力争向下兼容 6.推出系列机的新机器,不能更改的是( )。

A、原有指令的寻址方式和操作码 B、系统总线的组成 C、数据通路宽度 D、存贮芯片的集成度 8.不同系列的机器之间,实现软件移植的途径不包括( )。

A、用统一的高级语言 B、用统一的汇编语言 C、模拟 D、仿真

9.在计算机系统的多级层次结构中,单条指令执行速度最快的一级是( )。

A、L5(应用语言)级 B、L2(操作系统)级 C、L1(机器语言)级 D、L0(微程序)级

10.在计算机系统的多级层次结构中,单条指令功能最强的一级是( )。

A、L5(应用语言)级 B、L2(操作系统)级 C、L1(机器语言)级 D、L0(微程序)级 二、名次解释

1. 计算机系统结构 2. 透明性 3. CPI 4. ICP 5. MIPS 6. MFLOPS 三、综合题

1. 某部件的处理时间仅为整个运行时间的40%,如果将该部件的处理速度加快到10 倍,则采用加快措施后能使整个系统的性能提高多少?

2. 采用哪种实现技术来求浮点数平方根FPSQR的操作对系统性能影响较大. 假设FPSQR

操作占整个测试程序执行时间的20%.一种实现的方法是使FPSQR 操作的速度加快到10倍.另外一种方法是使所有浮点数据指令FP的速度加快到2倍,假设FP指令占整个执行时间的50%.请比较这两种设计方案.

3. 如果FP操作的比例是25%,FP的平均CPI=4,其它指令的平均CPI=1.33,FPSQR操作

的比例为2%, FPSQR的平均CPI=20.假设有两种设计方案,分别把FPSQR和FP的CPI均减为2.试利用CPU的性能公式比较这两种方案哪种好。 4. 解决软件可移植性问题的方法有哪些?

第五章

一、选择填空

1. 先行控制技术主要包括 和 。

2. 先行控制方式的处理机结构主要包括 、 、 和 四个缓冲栈。

3. 非线性流水线一般用 和 共同表示。 4. 向量链接特性中的相关( )。

A、 不利于流水线性能的提高 B、会降低流水线的FLOPS C、有利于流水线性能的提高 D、避免相关出现 5. 静态流水线( )。

A、 固定的单功能流水线 B、是多功能流水线 C、同一时刻只能组成一条的流水线 D、也是均匀流水线 6. 动态流水线是( )。

A、 在同一时刻可组成数条流水线 B、标量流水线 C、不同时刻只能组成一条不同的流水线 D、向量流水线 7. 能顺利流水的关键是( )。

A、 一条指令分为几个过程段 B、要有相关发生 C、各过程段时间要尽量相等 D、只处理一个结果 8. 数相关是指相邻指令之间需要( )。

A、同一个功能部件 B、同一个源寄存器 C、同一个目的寄存器 D、等待结果 9. 能进行向量链接的必要条件是各向量指令之间( )。

A、有相关 B、无相关 C、有功能部件冲突 D、有寄存器冲突

二、名次解释 1. 线性流水线 2. 非线性流水线 3. 静态流水线 4. 动态流水线 5. 流水线的吞吐率 6. 流水线的加速比 7. 流水线的效率 8. 超标量处理机 9. 超流水线处理机

10. 超标量超流水线处理机

三、综合题

1. 提高指令执行速度的途径有哪些?

2. 先行控制方式的处理机结构主要包括哪些缓冲栈?各自的作用是什么? 3. 什么是数据相关?常用的解决方法有哪些? 4. 转移预测技术有哪些? 5. 什么是短循环程序?

6. 开门指令的主要功能是什么? 7. 流水线的特点是什么?

8. 用一条4段浮点加法器流水线求8个浮点数的和:Z=A+B+C+D+E+F+G+H,画

出流水线的时空图,并计算流水线的吞吐率、加速比和效率。

9. 一条4功能段的非线性流水线,每个功能段的延迟时间都相等,它的预约表如下: (1)写出流水线的禁止向量和初始冲突向量。 (2)画出调度流水线的状态图。

(3)求最小启动循环和最小平均启动距离。 (4)求平均启动距离最小的恒定循环。

时 间 1 2 3 4 5 6 7 功能段 S1 X X

S2 X X

S3 X X

S4 X

10. 对超标量处理机、超流水线处理机和超标量超流水线处理机的性能进行比较,并说明原因。

第六章

一、填空选择

1. 向量处理方式有 、 和 三种。 2. 向量计算机主要采用 和 两种结构。 二、名次解释 三、综合题

1. 向量处理机系统结构设计的目标有哪些? 2. 提高向量处理机性能的常用技术有哪些?

第八章

一、填空选择

1. SIMD计算机的基本结构有 和 两种。 二、名次解释 三、综合题

1. SIMD计算机的特点有哪些? 第九章

一、填空选择

1. SIMD计算机的基本结构有 和 两种。 二、名次解释 三、综合题

1.7 对于一台40MHz计算机执行标准测试程序,程序中指令类型,执行数量和平均时钟

周期数如下:

指令类型 指令执行数量 平均时钟周期数 整数运算 数据传送 浮点运算 分支 45 000 75 000 8 000 1 500 1 2 4 2

求该计算机的有效CPI、MIPS和程序执行时间。

答: CPI=CPU时钟周期总数/IC(指令条数)=(45000+75000*2+8000*4+1500*2) / IC=1.78

IC(指令条数)=45000+75000+8000+1500=129500 CPU时间=IC*CPI / f=5762us

MIPS=IC/(CPU时间*106 )= f /(CPI*106 )=22.47

1.8 计算机系统中有三个部件可以改进,这三个部件的部件加速比如下:

部件加速比1=30 部件加速比2=20 部件加速比3=10

(1) 如果部件1和部件2的可改进比例为30%,那么当部件3的可改进白了比例为多

少时,系统加速比才可以达到10?

(2) 如果三个部件的可改进比例分别为30%,30%和20%,三个部件同时改进,那么

系统中不可加速部分的执行时间在总执行时间中占的比例是多少?

(3) 如果相对某个测试程序三个部件的可改进比例分别为20%,20%和70%,要达到

最好改进效果,仅对一个部件改进时,要选择哪个部件?如果允许改进两个部件,又如何选择?

答:(1)S1=30 , S2=20 , S3=10,SN=10 F1=0.3 , F2=0.3 , 求 F3=?

SN= 1 / [1- (F1 +F2 +F3 ) + F1 / S1 +F2 / S2 + F3 / S3 ] F3 = 0.36

(2) S1=30 , S2=20 , S3=10

F1=0.3 , F2=0.3 , F3=0.2 求 不可加速部分执行时间 / 总执行时间 = ? 不可加速部分执行时间=[1- (F1 +F2 +F3 ) ]T0 总执行时间=TN

SN= T0 / TN =1 / [1- (F1 +F2 +F3 ) + F1 / S1 +F2 / S2 + F3 / S3 ] = 4.08

不可加速部分执行时间 / 总执行时间 =[1- (F1 +F2 +F3 ) ]T0 / TN = 81% (3)S1=30 , S2=20 , S3=10, F1=0.2 , F2=0.3 , F3=0.2

仅对一个部件改进,改进部件1 仅对两个部件改进,改进部件1、2

2.1 一条4个功能段的非线性流水线,每个功能段的延迟时间都相等,都为20ns,它的预约表如下:

时 间 功能段 1 2 3 4 5 6 7 ╳ S1 S2 S3 S4 ╳ ╳ ╳ ╳ ╳ ╳

(1) 写出流水线的禁止向量和初始冲突向量。 (2) 画出调度流水线的状态图。

(3) 求流水线的最小启动循环和最小平均启动距离。 (4) 求平均启动距离最小的恒定循环。 (5) 求流水线的最大吞吐率。

(1)禁止向量:(2,4,6),初始冲突向量: (101010) 。 (2)状态图

7*

101010 7* 7* 101113 5 7* 1 111111 3 101011 5 (3)

简单循环 平均启动距离 (1,7) 4 (3,7) 5 (3,5,7) 5 (5,7) 6 (5) 5 (7) 7

最小平均启动距离 4

最小启动循环 (1,7)

(4)平均启动距离最小的恒循环 (5) (5)流水线的最大吞吐率 假设用此流水线完成N个任务(N为偶数):

TPMAX = N/(N/2*12*△T)=1/(6△T)

其中:N/2 *12 表示每执行2个任务需要12个△T时间,平均每6个△T完成一个任务。

假设用此流水线完成N个任务(N为奇数):

TPMAX = N/ [((N-1)/2*12+5)*△T]

其中:(N-1)/2 *12 表示每执行2个任务需要12个△T时间,5 为最后一个任务多执行的周期数。

2.2 在一台单流水线多操作部件上执行下面的程序,取指令、指令译码各需要一个时钟周期,

MOVE、ADD和MUL操作各需要2个、3个、和4个时钟周期。每个操作都在第一个时钟周期从通用寄存器中读操作数,在最后一个时钟周期把运算结果写到通用寄存器中。

k : MOVE R1 , R0 ; R1←(R0) k+1 : MUL R0 , R2 , R1 ;R0←(R2)× (R1) k+2 : ADD R0 , R2 ,R3 ; R0← (R2)+ (R3)

(1) 就程序本身而言,可能有哪几种数据相关? (2) 在程序实际执行过程中,有哪几种数据相关会引起流水线停顿? (3) 画出指令执行过程的流水线时空图,并计算执行完这三条指令共使用了多少时钟周期?

答:(1)K与K+1 :先写后读相关; K+1与K+2 :写写相关

(2) 由流水线时空图看,K与K+1 :先写后读相关在第4时钟周期会引起流水线停

顿,而K+1与K+2 :写写相关在第8时钟周期会引起流水线停顿。

K+2 K+1 K

IF 1 IF ID 2 IF ID 3 ID RR EX EX 6 WB 5 EX EX 7 WB* WB 8 9 RR* EX 4 RR EX

(2) 由流水线时空图看,共插入了3个时钟周期的停顿,执行完这三条指令共使用了

11个时钟周期。

K+2 K+1 K

IF 1 IF ID 2 IF ID 3 ID idle idle RR EX idle idle RR EX WB 5 6 7 4 EX 8 EX EX 9 idle WB WB 10 11 RR EX

本文来源:https://www.bwwdw.com/article/0q5w.html

Top