计算机组成和原理 课堂例题(附答案) - 图文 下载本文

题4:

解:

简答题5:相对CISC来说,RISC主要特点有哪些

– 指令条数少

– 指令长度固定,指令格式和寻址种类少

– 只有取指和存数指令访问存储器,其余的指令操作均在寄存器之间进行

.

(10a)题1:解释CPU的具体功能

– 指令控制:控制程序的顺序执行

– 操作控制:产生完成每条指令所需的控制命令 – 时间控制:对各种操作加以时间上的控制 – 数据加工:对数据进行算术运算和逻辑运算

– 中断处理:处理运行过程中出现的异常情况和特殊请求

题2:中断系统需解决的问题

(1) 各中断源 如何 向 CPU 提出请求 ?

(2) 各中断源 同时 提出 请求 怎么办 ?

(3) CPU 什么条件、什么时间、以什么方式响应中断 ? (4) 如何 保护现场 ?

(5) 如何 寻找入口地址 ?

(6) 如何 恢复现场,如何 返回 ?

(7) 处理中断的过程中又 出现新的中断 怎么办 ?

(11a)题1:判断以下三组指令中各存在哪种类型的数据相关? (1) I1 LAD R1,A ; M(A)->R1,M(A)是存储器单元 I2 ADD R2,Rl ; (R2)+(R1)->R2

5

(2) I1 ADD R3,R4 ; (R3)+(R4)->R3

I2 MUL R4,R5 ; (R4)*(R5)->R4

(3) I1 LAD R6,B ; M(B)-> R6,M(B)是存储器单元 I2 MUL R6,R7 ; (R6)*(R7)->R6

参考答案:(1)写后读 RAW (2)读后写 WAR (3)写后写 WAW

题2 判断以下三组指令各存在哪种类型的数据相关 (1) I1 ADD R1,R2,R3; (R2+R3)→R1 I2 SUB R4,R1,R5; (R1-R5)→R4

(2) I3 MUL R3,R1,R2; (R1)×(R2)→R3 I4 ADD R3,R4,R5; (R4+R5)→R3

(3) I5 STA M(X),R3; (R3)→M(X),M(X)是存储器单元 I6 ADD R3,R4,R5; (R4+R5)→R 参考答案:(1) RAW (2) WAW (3) WAR

题3: 流水线冲突有哪几种(给出简单描述)?

流水线冲突有以下3种类型:

(1)结构冲突:因硬件资源满足不了指令重叠执行的要求而发生的冲突。

(2)数据冲突:当指令在流水线中重叠执行时,因需要用到前面指令的执行结果而发生的冲突。

(3)控制冲突:流水线遇到分支指令和其他会改变PC值的指令所引起的冲突。

题4:什么叫名相关?名相关有哪两种?

如果两条指令使用相同的名,但是它们之间并没有数据流动,则称这两条指令存在

名相关。指令j与指令i之间的名相关有以下两种:

(1)反相关。如果指令j写的名与指令i读的名相同,则称指令i和j发生了反相关。反相关指令之间的执行顺序是必须严格遵守的,以保证i读的值是正确的。

(2)输出相关。如果指令j和指令i写相同的名,则称指令i和j发生了输出相关。输出相关指令的执行顺序是不能颠倒的,以保证最后的结果是指令j写进去的。

题5:解决流水线数据冲突的方法有哪些?

(1)定向技术:在某条指令产生一个结果之前,其他指令并不真正需要该计算结果,如果将该计结果从其产生的地方直接送到其他指令需要它的地方,就可以避免暂停。

(2)暂停技术:设置一个“流水线互锁”的功能部件,一旦流水线互锁检测到数据相关,流水线暂停执行发生数据相关指令后续的所有指令,直到该数据相关解决为止。 (3)采用编译器调度。 (4)重新组织代码顺序。

(11b) 题1:有哪几种向量处理方式?它们对向量处理机的结构要求有何不同?

(1) 水平处理方式:不适合对向量进行流水处理。 (2) 垂直处理方式:适合对向量进行流水处理,向量运算指令的源/目向量都放在存储器内,使得流水线运算部件的输入、输出端直接与存储器相联,构成MM型的运算流水线。

6

(3) 分组处理方式:适合流水处理。可设长度为n的向量寄存器,使每组向量运算的源/目向量都在向量寄存器中,流水线的运算部件输入、输出端与向量寄存器相联,构成RR型运算流水线。

题2:衡量向量处理机性能的主要参数有哪些?

(1) 向量指令的处理时间。

(2) 峰值性能:向量长度为无穷大时,向量处理机的最高性能。

(3) 半性能向量长度:向量处理机的性能为其峰值性能一半时所需的向量长度。

(4) 向量长度临界值:对同一段程序代码而言,向量方式的处理速度优于标量串行方式

处理速度时所需的最小向量长度。

(12a)题1:说明IA-64指令束属性字段的作用

IA-64指令束属性字段(template字段)给出了可以并行执行的指令信息。

题2:IA-64指令流中的休止含义是什么?

说明休止(a stop)符号前面的一个或多个指令可能与休止符号后面的一个或多个指令有某种资源相关。

题3:硬件流水和软件流水有何不同?

硬件流水(Hardware pipelining)指的是硬件上使用物理流水线。软件流水

(Software pipelining )指的是:通过将来自不同重复的指令一起分组来实现循环程序的并行性。

(12b)题1:

7

(13a) 题1:设某机主频为8MHz,每个机器周期平均含2个时钟周期,每条指令平均有2.5个机器周期,试问该机的平均指令执行速度为多少MIPS?若机器主频不变,但每个机器周期平均含4个时钟周期,每条指令平均有5个机器周期,则该机的平均指令执行速度又是多少MIPS?

解:由于主频为8MHz,所以时钟周期为1/8=0.125μs,机器周期为0.125*2=0.25μs,指令周期为0.25*2.5=0.625μs。

1.平均指令执行速度为1/0.625=1.6MIPS。

2.若CPU主频不变,机器周期含4个时钟周期,每条指令平均含5个机器周期,则指令周期为0.125*4*5=2.5μs,故平均指令执行速度为1/2.5=0.4MIPS。 3.可见机器的运行速度并不完全取决于主频。

此外,机器的运行速度还和其他很多因素有关,如主存的运行速度、机器是否配有Cache、总线的数据传输率、硬盘的运行速度以及机器是否采用流水技术等。机器速度还可

8