计算机系统结构习题集2

 1.某处理机的指令字长为16位,有双地址指令、单地址指令和零地址指令三类,并假设每个地址字段的长度均为6位。
(1) 如果双地址指令有15条,单地址指令和零地址指令的条数基本相同,问单地址指令和零地址指令各有多少条?并且为这三类指令分配操作码。
(2) 如果要求三类指令的比例大致为1:9:9,问双地址指令、单地址指令和零地址指令各有多少条?并且为这三类指令分配操作码。

解:

1) 单地址指令条数为63

   零地址指令条数64

   操作码分别为:

   双址:    0000 ~1110

   单地址:1111  000000

                  。。。。

                1111  111110

   零地址:1111  111111  000000

                      。。。。。。

                 1111  111111  111111

2)    首先,从题意可得:(16-x) :63x = 1 :9

所以,x = 2

   操作码分别为:

   双址:  0000-1101(共14条)

   单地址:1110  0000000

                     ……..

                1110  1111110

                1111  0000000

                      ……..

                 1111  1111110

              (共126条)

   零地址:1110 111111  000000

                        。。。。。。

                   1110 111111  111111

                   1111 111111  000000

                       。。。。

                   1111 111111  111111

 (共128条)

2.一个处理机共有10条指令,各指令在程序中出现的概率如下表:

(1) 计算这10条指令的操作码最短长度。
(2) 采用Huffman编码法编写这10条指令的操作码,并计算操作码的平均长度及信息冗余量,把得到的操作码编码和计算的结果填入上面的表中。
(3) 采用2/8扩展编码法编写这10条指令的操作码,并计算操作码的平均长度和信息冗余量,把得到的操作码编码和计算的结果填入上面的表中。
(4) 采用3/7扩展编码法编写这10条指令的操作码,并计算操作码的平均长度和信息冗余量,把得到的操作码编码和计算的结果填入上面的表中。

指令

序号

出现

的概率

Huffman

编码法

2/8扩展

编码法

3/7扩展

编码法

I1

0.25

00

00

00

I2

0.20

10

01

01

I3

0.15

010

1000

10

I4

0.10

110

1001

11000

I5

0.08

0110

1010

11001

I6

0.08

1110

1011

11010

I7

0.05

1111

1100

11011

I8

0.04

01110

1101

11100

I9

0.03

011110

1110

11101

I10

0.02

011111

1111

11101

操作码平均长度

2.99

3.1

3.2

操作码冗余信息

0.7%

4.2%

7.2%


2.一条浮点加法流水线由对阶、尾数加和规格化三个流水段组成,每个流水段的时间均为2ns。流水线的输出端有直接数据通路与输入端相连,并且设置有缓冲寄存器用以保存中间运算结果。用这条流水线计算8个浮点数的和:S=A1+A2+A3+A4+A5+A6+A7+A8。画出流水线的时空图,并计算流水线的吞吐率、加速比和效率。

解答:S=A1+A2+A3+A4+A5+A6+A7+A8 =[(A1+A2)+(A3+A4)]+[(A5+A6)+(A7+A8)]

1

2

3

4

5

6

7

8

9

10

11

12

规格化

1

2

3

4

5

6

7

尾数加

1

2

3

4

5

6

7

对阶

1

2

3

4

5

6

7

加数

 A1    A3     A5     A7    A1+A2      A5+A6              A1+A2+A3+A4

加数

 A2    A4    A6      A8    A3+A4      A7+A8              A5+A6+A7+A8

流水线的吞吐率,效率,加速比分别为:

计算机系统结构习题集2_第1张图片

3.一动态多功能流水线由6个功能段组成,如下图:

计算机系统结构习题集2_第2张图片

其中:s1、S4、S5、S6组成乘法流水线,S1、S2、S3、S6组成加法流水线,各个功能段时间均为50ns。假定该流水线的输出结果可以直接返回流水线输入端,而且设置有足够的缓冲寄存器。若按照最快的方式用该流水线计算。

(1)请画出其处理过程的时空图。

(2)计算其实际吞吐率,加速比和效率。

[解](1): 乘法操作用到的流水段有:S1S4S5S6; 加法操作用到的流水段有:S1S2S3S6。以最快的方式处理的流水线时空图如图所示:

计算机系统结构习题集2_第3张图片



你可能感兴趣的:(计算机体系结构)