计算机系统结构习题答案(郑伟民)

计算机系统结构习题答案(郑伟民)
计算机系统结构习题答案(郑伟民)

第一章

重点:

1. P2 计算机系统层次结构(透明性概念)

2. P9 计算机系统设计的定量原理(Amdahl law及CPU性能公式)

3. P22 1.

4.1 Von Neumann结构(模拟与仿真)

1.习题

件和软件在什么意义上是等效的在什么意义上又是不等效的试举例说明。

[解答] 硬件和软件在逻辑功能上是等效的。在原理上,用软件实现的功能完全可以用硬件或固件(微程序解释)来完成。用硬件实现的功能也可以通过用软件进行模拟来完成,只是反映在速度、价格、实现的难易程度上,这两者是不同的。

例如,编译程序、操作系统等许多用机器语言软件子程序实现的功能完全可以用组合电路硬件或微程序固件来解释实现。它们的差别只是软件实现的速度慢,软件的编制复杂,编程工作量大,程序所占的存贮空间量较多,这些都是不利的;但是,这样所花硬件少,硬件实现上也就因此而简单容易,硬件的成本低,解题的灵活性和适应性较好,这些都是有利的。又如,乘除法运算可以经机器专门设计的乘法指令用硬件电路或乘除部件来实现,也可以通过执行一个使用相加、移位、比较、循环等机器指令组成的机器语言子程序来实现。向量、数组运算在向量处理机中是直接使用向量、数组类指令和流水或阵列等向量运算部件的硬件方式来实现,但在标量处理机上也可以通过执行用标量指令组成的循环程序的软件方式来完成。

浮点数运算可以直接通过设置浮点运算指令用硬件来实现,也可以用两个定点数分别表示浮点数的阶码和尾数,通过程序方法把浮点数阶码和尾数的运算映象变换成两个定点数的运算,用于程序软的方式来实现。十进制数的运算可以通过专门设置十进制运算类指令和专门的十进制运算部件硬的方式来完成,或者通过设置BCD数的表示和若干BCD数运算的校正指令来软硬结合地实现,也可以先经10转2的数制转换子程序将十进制数转成二进制数,再用二进制运算类指令运算,所得结果又调用2转10的数制转换子程序转换成十进制数结果,用全软的方式实现。

题什么是透明性概念对于计算机系统结构,下列哪些是透明的哪些是不透明的

存贮器的模m交叉存取:浮点数据表示:I/O系统是采用通道方式还是外围处理机方式;数据总线宽度;字符行运算指令;阵列运算部件;通道是采用结合型还是独立型:PDP —11系列中的单总线结构;访问方式保护;程序性中断;串行、重叠还是流水控制方式;堆栈指令;存贮器的最小编址单位;Cache存贮器。

[分析] 所谓透明就是看不到,不属于其管理的部分。对计算机系统结构是否透明,首先要弄清教材节中有关计算机系统结构的定义和所包含的属性内容。简单来说,凡是编写机器语言和汇编语言程序要用到的数据表示、指令系统、寻址方式、寄存器组织、机器级I/O结构、存贮容量及其编址方式、中断机构、系统管态和目态间的切换、信息保护方式和机构等对计算机系统结构都是不透明的。而全部由硬件实现,或是在机器语言、汇编语言编程中不会出现和不需要了解的部分,以及只影响机器的速度和价格的逻辑实现(计算机组成)和物理实现(计算机实现)的那些部分,对计算机系统结构都是透明的。

[解答] 客观存在的事物或属性。从某个角度去看,却看不到,称这些事物和属性对他是透明的。透明了就可以简化这部分的设计,然而因为透明而无法控制和干预,就会带来不利。因此,透明性的取舍要正确选择。

对计算机系统结构透明的有:存贮器的模m交叉存取,数据总线宽度,阵列运算部件,通道是采用结合型还是独立型,PDP一11系列的单总线结构,串行、重叠还是流水控制方式,Cache存贮器。

对计算机系统结构不透明的有:浮点数据表示,I/O系统采用通道方式还是外围处理机方式,字符行运算指令,访问方式保护,程序性中断,堆栈指令,存贮器最小编址单位。

题从机器(汇编)语言程序员的角度来看,以下哪些是透明的

指令地址寄存器;指令缓冲器;时标发生器;条件码寄存器;乘法器;主存地址寄存器;磁盘外设;先行进位链;移位器;通用寄存器;中断字寄存器。

[分析] 从机器(汇编)语言程序员看,实际上也就是从计算机系统结构看的内容。

指令地址寄存器就是程序计数器,汇编语言或机器语言程序都要用到它的,其位数多少会影响到可执行程序的空间大小。指令缓冲器、主存地址寄存器都属于计算机组成中的缓冲器技术,是由全硬件实现的,系统程序不参预对它们的管理。时标发生器、乘法器、先行进位链、移位器等都属于计算机组成中的专用部件配臀,它只影响机器的速度和价格,与软件编程无关。条件码寄存器是存放指令执行后生成反映结果状态或特征的标志码,它要供转移等指令使用,是编程要用到的。磁盘外设的种类、编址方式、容量等都是磁盘管理服务程序要用到的。通用寄存器的数量、位效、编址、使用规定在汇编语言程序和机器语言程序中都是会直接用到的。中断字寄存器是用来记录每一个中断类中,各个中断源发生中断请求的状况的,它是中断服务程序在处理中断时要用到的。

[解答] 从机器(汇编)语言程序员来看,透明的有:指令缓冲器,时标发生器,乘法器,主存地址寄存器,先行进位链,移位器。

题下列哪些对系统程序员是透明的哪些对应用程序员是透明的

系列机各档不同的数据通路宽度;虚拟存贮器;Cache存贮器;程序状态字:“启动I /O”指令;“执行”指令;指令缓冲寄存器。

[分析] 系统程序员是编写诸如操作系统、编译程序等各种系统软件的人员。应用程序员是指利用计算机及所配的系统软件支持来编写解决具体应用问题的程序员。他们都可以使用汇编语言或机器语言来编写程序,当然也可以用高级语言来编写程序。所以,对系统程序员或应用程序员是不透明的,应包括计算机系统结构所包含的各个方面。而属全硬件实现的计算机组成所包含的方面,如系列机各档不同的数据通路宽度、Cache存贮器、指令缓冲寄存器等,无论是对系统程序员,还是对应用程序员都应当是透明的。对目前高性能计算机系统来讲,大多数都是多用户环境,应用程序(也称算态,目态或用户态程序)中不允许使用管态(也林系统态,监督态)中所用的特权指令。

例如,大型多用户系统中,程序状态字是用于反映计算机系统在当前程序的各种关键状态(它并不是IBM PC计算机那种狭义的所谓程序状态字)的,它是操作系统用于管理计算机系统资源及其使用状况的,用户是不能直接对程序状态字内容进行读,写和访问的,只能由系统来管理。“启动I/O”指令是大型机中的—种管态指令,属于特权指令,只能在操作系绕程序中使用(见教材中第3章节的介绍)。用户程序是不能用它来直接启动I/O通道和设备的。虚拟存贮器(参看教材第4章节)是一个主存——辅存两级存贮层次。它对应用程序员是完全透明的,使应用程序不必作任何修改就可以在系统上运行。但是,在操作系统中必须配置有相应的管理软件,能对其虚实外部地址的映象和变换、程序的换道、程序由辅存调入主存、主存页面的替换、存贮保护等进行管理,所以对系统程序员来说是不透明的。“执行”指令(参看教材中第5章节)是IBM 370等系列机上用于解决程序在执行过程中不准修改指令,又允许将指令放在操作数区中作修改,以满足指令在执行过程中允许修改的要求。这种指令无论是用户程序,还是系统程序,都希望可以被使用,所以,“执行”指令应设计成对应用程序员和系统程序员都是不透明的。

[解答] 系列机各档不同的数据通路宽度、Cache存贮器、指令缓冲寄存器属计算机组成,对系统程序员和应用程序员都是透明的。虚拟存贮器、程序状态字、“启动I/O”指令,对系统程序员是不透明的,面对应用程序员却是透明的。“执行”指令则对系统程序员和应用程序员都是不透明的。

(1)从指定角度来看,不必要了解的知识称为透明性概念。

(2)见下表,“√”为透明性概念,“P”表示相关课文页数。

见下表,“√”为透明性概念,“P ”表示相关课文页数。

见下表,“√”表示都透明,“应”表示仅对应用程序员透明,“×”表示都不透明。

已知Se=20 , 求作Fe-Sn 关系曲线。 将Se 代入Amdahl 定律得

e

n F S 20

1911

-=

上式中令Sn=2,解出Fe=10/19≈ 上式中令Sn=10,解出Fe=18/19≈

已知两种方法可使性能得到相同的提高,问哪一种方法更好。

(1)用硬件组方法,已知Se=40,Fe=,解出Sn=40/≈(两种方法得到的相同性能) (2)用软件组方法,已知Se=20,Sn=40/,解出Fe=38≈(第二种方法的百分比)

(3)结论:软件组方法更好。因为硬件组需要将Se 再提高100%(20→40),而软件组只需将Fe 再提高%(→)。 57.34

.15

5

9

.01.01≈=

+

=

n

S 记f ── 时钟频率,T=1/f ── 时钟周期,B ── 带宽(Byte/s )。 方案一:)/(44

11

s Byte f T

B =?=

方案二:)/(5.3421

%252%752s Byte f T

B =??+?=

由各种指令条数可以得到总条数,以及各百分比,然后代公式计算。

∑===4

1

510i i IC IC

Sn 20 1

(1)∑==?+?+?+?=?

=4

1

55.108.0215.0232.0245.01)(i i

i IC

IC CPI CPI

(2)806.2555

.140

1055.1104010666≈=??=?=

CPI f MIPS (3)(秒)

003876.0400

55

.1106≈=?=

MIPS IC T (1)24.21.0812.0418.026.01=?+?+?+?=CPI

(2)86.1710

24.21040106

6

6≈??=?=CPI f MIPS 记Tc ── 新方案时钟周期,已知CPI = CPI i = 1 原时间 = CPI × IC × = ×Tc

新时间 = (×2/3+)× IC × Tc = ×Tc 二者比较,新时间较短。

第二章

重点:P91 Huffman 编码法

(忽略P124倒1行 ~ P125第8行文字,以简化题意)已知2种浮点数,求性能指标。 此题关键是分析阶码、尾数各自的最大值、最小值。

原图为数据在内存中的格式,阶码的小数点在其右端,尾数的小数点在其左端,遵守规格化要求。 由于尾数均为原码,原码的绝对值与符号位无关,所以最大正数与最小负数的绝对值相同,可用“±最大绝对值”回答;最小正数与最大负数的绝对值相同,可用“±最小绝对值”回答。

第1小问中,阶码全部位数为8,作无符号数看待真值为0~255,作移-127码看待真值为-127~+128;尾数(不计符号位)有23位小数,另加1位整数隐藏位,所以尾数绝对值为~ – 2-23

,有效位数p=24; 第2小问中,阶码全部位数为11,作无符号数看待真值为0~2047,作移-1023码看待真值为-1023~+1024;尾数(不计符号位)有52位小数,另加1位整数隐藏位,所以尾数绝对值为~ – 2-52,有效位数p=53。 最大绝对值为最大阶码与最大尾数绝对值的组合,最小绝对值为最小阶码与最小尾数绝对值的组合。代入相关公式后得最终结果如下表。

(1) r m = 2,r e = 2,p = 24(隐藏最高位),q = 7。 (2) N max = ×1038

,-|N|min = ×10-39

δ ≤ ×10-8

≈ ,η = 100%

(1) = ×160

设阶码为移-63码(即-26

+1,原题未指明) = ×2-2

(其中最高有效位需隐藏) 阶码为移-127码(即-27

+1)

(2) 符号位不变,(阶码 – 63)×4 + 127;尾数左规,除去最高位;

(3) 符号位不变,(阶码 – 127)/ 4 + 63;尾数补最高位,按除法余数右移若干位,左补0。

%506400

3200

64100643032201630820==??+?+?+?

从地址的整数倍位置开始访问

20% |字节8位|浪费8位|半字16位|单子32位 % |半字16位|半字16位|半字16位|半字16位| 30% |双字64位|

%9564

10064

)20100(5620=??-+?

已知10条指令使用频度,求3种编码方法的平均码长与信息冗余量。

(1)此问中的“最优Huffman 编码法”实际是指码长下限,即信源的平均信息量──熵,代公式得H=。 (2)Huffman 编码性能如下表; 公式:∑-

10

2

log

i

pi pi

(3)2/8扩展编码是8/64/512法的变种,第一组2条指令,码长为2(1位扩展标志,1位编码),第二组8条指令,码长为4(1位扩展标志,与第一组区别,加3位编码),编码性能如下表; 00;01;1***;

1位 7位 6位 1位 8位 23位

(4)3/7扩展编码是15/15/15法的变种,第一组3条指令,码长为2(共有4种组合,其中3种组合分别代表3条指令,留1种组合作为扩展前缀标志),第二组7条指令,码长为5(2位固定的前缀扩展标志,与第一组区别,加3位编码,只用其中7种组合),编码性能如下表。 00;01;10;11***(只用7种);

Huffman编码2/8扩展编码3/7扩展编码平均码长L

信息冗余量R%%%

(1) 15条/63条/64条 (2) 14条/126条/128条 说明:每种扩展刘两种组合:

0000

(1101)

1110 000000 1110 111111 000000

1110

…… 扩充码1110 111111 …… 1110 111110

1110 111111 111111

00

1111 111111 000000 1111 …… 扩充码1111 111111 ……

10

1111 111111 111111

P117 向后转移

(1)start: move as,r1 Mov num,r2 dec r1 inc r1

Loop:

move (r1),ad-as(r1) Dec r2 Bgt loop Inc r1

Halt

共14 共26

-1 共26-1 共

26

共26

Num: N

(2)N=100,循环100次,节省100个周期,循环体前后浪费3个周期,故能节省97个指令周期 (3)start: move as,r1 Mov num,r2 Dec r2 Dec r1 Inc r1

Loop:

move (r1),ad-as(r1) Bgt loop Inc r1 Dec r2

Halt Num:

N

第三章

难点:交叉访问存储器 重点:地址映射及替换算法

P146 虚拟存储器 P174 Cache

T=H1T1+H2T2+H3T3;S=S1+S3+S2;C=(C1S1+C2S2+C3S3)/S 直接代公式计算存储层次性能指标。 (1)74ns ,38ns ,

H*t1+(1-h)*t2 (2),,0.424

(c1s1+c2s2)/(s1+s2)

(3)T256K < T128K < T64K c256K > c128K > c64K

(4)T*C 分别得 ,,。答案是256K 方案最优。

已知g

g K n n )1(1--=

,其中g=

依题意有2.0)1(12.0)1(111

+--=+≥--=++g

g K g g K n n n n

整理得≥,解出28.159

.0lg 2

.0lg ≈≤

n ,向下取整,得15;

按另一种题意理解是向上取整,得16,也对。 )(log log log log 2222向上取整Nd

Np Np

Nv g

--=

=2,Nv:虚存大小;Np :页面大小;Nd :页表存储字大小

(2)4KB/4B=1K ,故而二级页表空间为:4GB/1K=4MB ,需4MB/4KB=1024页;

4MB/1K=4KB ,故一级页表空间为4KB ,即1页 (3)一级页表必须驻立主存

令TM 为主存的平均访问时间,TD 为硬盘的访问时间,则 T=HTM+(1-H)TD=(10000-9999*TM= ?=TM/T=1/=%

(1) U=log 264=6;P=log 21024=10;D=log 24K=12

(2)总数为log 28M=23;D=log 24K=12,故实页号p=23-12=11; (3)快表:多用户虚页号(U+P )+实页号p ,即16+11=17

(4)每个实页在页表中都存在一行与之对应,故共需211

=2K=2048(个存储字);慢表包括主存页号(实页号)+装入位及其它标志位,即11+1+其它 (5)P159 图

P=

2 3 2 1 5 2 4 5 3 2 5 2 命中次数

向每行回看,最大的为待换出的

注:最好的办法是堆栈模拟。

欲知可能的最高命中率及所需的最少主存页数,较好的办法是通过“堆栈模拟法”,求得命中次数随主存页数变化的函数关系。下图就是“堆栈模拟图”,其中“√”表示命中。 P= 4 5 3 2 5 1 3 2 3 5 1 3 命中次数

n=1 0 n=2 1 n=3 3 n=4 7 n=5

7

(1)H max=7/12≈%

(2)n=4

(3)当1次页面访问代表连续1024次该页内存储单元访问时,后1023次单元访问肯定是命中的,而第1次单元访问的命中情况与这1次页面访问的命中情况相同。根据上图中最高命中情况,共有7次页命中(折算为7×1024次单元命中),5次页不命中(折算为5×1023次单元命中,也可写为5×1024-5),单元访问总次数为12×1024,故有:

H cell=(12×1024-5)/(12×1024)=12283/12288≈%

改LRU替换算法:[分析] 由于LRU替换算法是堆栈型的替换算法,因而随着分配给该程序的实页数增加,实页命中率只会上升,至少是不会下降的。但是,当实页数增加到一定程度之后,其命中率就不会再提高了.如耍再增加分配给该道程序的实页数,只会导致实存空间的利用率下降.所以,只要分别求出分配给该道程序不同实页数时的页命中率,找出达到最高命中率时所分配的最少实页数即可.

既然LRU替换算法是堆栈型的替换算法,对虚页地址流只需要用堆栈处理技术处理一次,就可以同时求出不同实页数时各自的命中率.这样,可以大大减少模拟的工作量。

模拟结果表明,使用LRU替换算法替换,对该程序至少应分配4个实页.如果只分配3个实页,其页命中率只有2/12,太低:而分配实页数多于4页后,其页命中率不会再有提高.所以,分配给该程序4个实页即可,其可能的最高命中串为H=7/12.

加1题一个二级存储层次,采用全相联映象和最久没有使用算法,实存共5页,为2道程序分享,页地址流分别如下

P1 = 1 2 3 4 1 3 2 1

P2 = 1 2 3 4 2 2 3 3

试作2个实存分配方案,分别使2道程序满足

(1)命中率相同;

(2)命中次数之和最大。

解:分别为2道程序作“堆栈模拟图”,其中“√”表示命中。

将两图结果综合,得到4个分配方案的命中率情况表如下

结论如下

(1)命中率相同的方案

12(2)命中次数之和最大的方案是n 1= 4而n 2= 1。

(1)区号:12

28

log 2

=?;格式为:|1E|1G|1B|4W| (2)cache 格式为:|组号g :1位|组内块号:1位|块内地址W :4|

P 1 = 1 2 3 4 1 3 2 1 命中次数N (1)

n 1= 1 0 n 1= 2 0 n 1= 3 2 n 1= 4

4

P 2 = 1 2 3 4 2 2 3 3 命中次数N (2)

n 2= 1 2 n 2= 2 2 n 2= 3 4 n 2= 4

4

(3)

(4)通过作“实存状况图”模拟各虚块的调度情况,可获得Cache 的块地址流序列。 此问最容易出错的地方是忽略“组相联”地址约束,将虚页装错实组。另外没有及时标注“*”号也容易导致淘汰对象错误。 (5)

P= 6 2 4 1 4 6 3 0 4 5 7 3

(7)LFU

P= 6 2 4 1 4 6 3 0 4 5 7 3

(6)H=4/12≈33%

(8)做法同题(3)问,H cell =(12×16-8)/(12×16)≈%

(2)一个主存周期从主存中取出数据为:4体交叉×体字长4B=16B ,故cache 块大小为16B ,共1KB/16B=64块,每组4块,故共64/4=16组,故cache 的地址为:

虚存 实页 0 1

2

3 虚组0 0

0 √ √ 1 √ √

虚组1 实组0

2

√ √ 虚 3

√ √

虚组2 1

页 4 √ √ 5 √ √

虚组3

6 √ √

7

√ √

(b) 对应关系表(√为有关系)

P= 6 2 4 1 4 6 3 0 4 5 7 3 入 入 入 入 中 中 替 替 中 替 替 中 C=

2

3

1

2

3

1

1

2

3

|组号g:4位|组内块号b:2位|块内地址W:4位|

(1)主存的块与cache的组是直接映像,故主存每区有16块(cache共16组),每块大小16B,共有区数1MB/16×16B=4K个区。故主存地址为:|区号E:12位|区内块号B:4位|块内地址W:4位|

(3)cache的每一组在块表中要有一行,故要有16行,由于有四个比较电路,故每行如下:

|区号E|块号b|区号E|块号b|区号E|块号b|区号E|块号b|;其中区号E12位,块号b2位

注:块表中并不包含所有的区,只有在cache中的区才在块表中有对应记录。

(4)每个比较电路的位数12位

(5)P183 图

引1:在一个页式二级虚拟存贮器中,采用FIFO算法进行页面替换,发现命中率H太低,因此有下列建议:

(1) 增大辅存容量

(2) 增大主存容量(页数)

(3) 增大主、辅存的页面大小

(4) FIFO改为LRU

(5) FIFO改为LRU,井增大主存容量(页数)

(6) FIFO改为LRU,且增大页面大小

试分析上述各建议对命中率的影响情况。

[解答] (1) 增大辅存容量,对主存命中率H不会有什么影响。因为辅存容量增大,并不是程序空间的增大,程序空间与实主存空间的容量差并未改变。所以,增大物理辅存容量,不会对主存的命中率H有什么影响。

(2) 如果主存容量(页数)增加较多时,将使主存命中率有明显提高的趋势。但如果主存容量增加较少,命中率片可能会略有增大,也可能不变,甚至还可能会有少许下降。这是因为其前提是命中率H太低。如果主存容量显着增加,要访问的程序页面在主存中的机会会大大增加,命中率会显著上升。但如果主存容量(页数)增加较少,加上使用的FIFO替换算法不是堆栈型的替换算法,所以对命中率的提高可能不明显,甚至还可能有所下降。

(3) 因为前提是主存的命中率H很低,在增大主、辅存的页面大小时,如果增加量较小,主存命中率可能没有太大的波动。因为FIFO是非堆栈型的替换算法,主存命中事可能会有所增加,也可能降低或不变。而当页面大小增加量较大时,可能会出现两种相反的情况。当原页面大小较小时,在显著增大了页面大小之后,一般会使主存命中率有较大提高。但当原页面大小已较大时,再显著增大页面大小后,由于在主存中的页面数过少,将会使主存命中宰继续有所下降。

(4) 页面替换算法由FIFO改为LRU后,一般会使主存的命中率提高。因为LRU替换算法比FIFO替换算法能更好地体现出程序工作的局部性特点。然而,主存命中率还与页地址流、分配给主存的实页数多少等有关,所以,主存命中率也可能仍然较低,没有明显改进。

(5) 页面替换算法由FIFO改为LRU,同时增大主存的容量(页数),一般会使主存命中率有较大的提高。因为LRU替换算法比FIFO替换算法更能体现出程序的局部性,又由于原先主存的命中宰太低,现增大主存容量(页数),一般会使主存命中率上升。如果主存容量增加量大些,主存命中率H将会显著上升。

(6) FIFO改为LRU,且增大页面大小时,如果原先页面大小很小,则会使命中率显著上升;如果原先页面大小已经很大了,因为主存页数进一步减少而使命中率还会继续有所下降。引2:采用组相联映象、LRU替换算法的Cache存贮器,发现等效访问速度不高,为此提议:

(1 ) 增大主存容量

(2 ) 增大Cache中的块数(块的大小不变)

(3 ) 增大组相联组的大小(块的大小不变)

(4)增大块的大小(组的大小和Cache总容量不变)

(5)提高Cache本身器件的访问速度

试问分别采用上述措施后,对等效访问速度可能会有什么样的显著变化其变化趋势如何如果采取措施后并未能使等效访问速度有明显提高的话,又是什么原因

[分析] Cache存储器的等效访问时间 t a = H c t c + (1-H c)t m

等效访问速度不高,就是t a太长。要想缩短t a,一是要使H c命中率尽可能提高,这样

(1-H c)t m的分量就会越小,使t a缩短,越来越接近于t c。但如果t a已非常接近于t c时,表明H c已趋于1,还想要提高等效访问速度,则只有减小t c,即更换成更高速的Cache物理芯片,才能缩短t a。另外,还应考虑Cache存贮器内部,在查映象表进行Cache地址变换的过程时,是否是与访物理Cache流水地进行,因为它也会影响到t a。当H c命中率已很高时,内部的查映象表与访Cache由不流水改成流水,会对t c有明显的改进,可缩短近一半的时间。所以,分析时要根据不同情况做出不同的结论。

如果Cache存贮器的等效访问速度不高是由于H c太低引起的,在采用LRU替换算法

的基础上,就要设法调整块的大小、组相联映象中组的大小,使之适当增大,这将会使H c 有所提高.在此基础上再考虑增大Cache的容量.Cache存贮器中,只要Cache的容量比较大时,由于块的大小受调块时间限制不可能太大,增大块的大小一般总能使Cache命中率得到提高.

[解答] (1)增大主存容量,对H c基本不影响.虽然增大主存容量可能会使t m稍微有所加大,如果H c已很高时,这种t m的增大,对t a的增大不会有明显的影响·

(2)增大Cache中的块数,而块的大小不变,这意味着增大Cache的容量.由于LRU替换算法是堆栈型的替换算法,所以,将使H c上升,从而使t a缩短.t a的缩短是否明显还要看当前的H c处在什么水平上.如果原有Cache的块数较少,H c较低,则t a会因H c迅速提高而显著缩短.但如果原Cache的块数已较多,H c已很高了,则增大Cache中的块数,不会使

H c再有明显提高,此时其t a的缩短也就不明显了。

(3)增大组相联组的大小,块的大小不变,从而使组内的块数有了增加,它会使块冲突突概率下降,这也会使Cache块替换次数减少.而当Cache各组组内的位置已全部装满了主存的块之后,块替换次数的减少也就意味着H c的提高。所以,增大组的大小能使H c提高,从而可提高等效访问速度。不过,Cache存贮器的等效访问速度改进是否明显还要看

目前的H c处于什么水平。如果原先组内的块数太少,增大组的大小,会明显缩短t a;如果原先组内块数已较多,则t a的缩短就不明显了。

(4)组的大小和Cache总容量不变,增大Cache块的大小,其对t a影响的分析大致与(3)相同,会使t a缩短,但耍视目前的H c水平而定。如果H c已经很高了,则增大Cache块

的大小对t a的改进也就不明显了。

(5)提高Cache本身器件的访问速度,即减小t a,只有当H c命中率已很高时,才会显

著缩短t a。如果H c命中率较低时,对减小t a的作用就不明显了.

第四章

重点:P238 通道种类

已知中断服务次序为3-2-4-1,。 (1)中断屏蔽字表如下图; (2)中断过程示意图如右图。

(1)f=2×105

字节/秒,T=5us

(2)Ts+Td=5us ,通道时间图如下。作图时注意:至少要画到最慢设备的第二次请求出现,才能确定是否丢失数据(因为响应优先级低的设备较易丢失数据)。

D1 D2 D3 D4 D1 0 1 1 1 D2 0 0 1 0 D3 0 0 0 0 D4

1

1

设优

备先

号级

D1

D2

D3

D4

时间

(us) 0 10 20 30 40 50 60 70 80 90 100 110 120 130 140 150 160 170

(3)5,160,20,40;

(4)D2丢失第一次请求的数据;

(5)参见P245。

100+++20+10

(2)I/O流量:+++4+4+5+6=20MB/S

主存流量的另一部分包含指令的执行带宽需求,执行指令的速度1GIPS×32/4=8GB/S,则取指令和取数据的带宽需求为: 1%×8GB/S=,

综合得,主存的数据传输率应为,周期为

第五章

重点:P285 线性流水线的性能分析

P294 非线性流水线的调度技术

计算机系统结构题库

《计算机系统结构》题库 一.单项选择题(在下列每小题的四个备选答案中,只有一个答案是正确的,请把你认为是正确的答案填入题后的()内,每小题2分) 第一章: 1.计算机系统多级层次中,从下层到上层,各级相对顺序正确的应当是: A.汇编语言机器级---操作系统机器级---高级语言机器级 B.微程序机器级---传统机器语言机器级---汇编语言机器级 C.传统机器语言机器级---高级机器语言机器级---汇编语言机器级 D.汇编语言机器级---应用语言机器级---高级语言机器级 答案:B 分数:2 所属章节1—1 2.汇编语言源程序变成机器语言目标程序是经来实现的。 A. 编译程序解释 B. 汇编程序解释 C. 编译程序翻译 D. 汇编程序翻译 答案:D 分数:2 所属章节1—1 3.直接执行微指令的是: A. 汇编程序 B. 编译程序 C. 硬件 D. 微指令程序 答案:C 分数:2 所属章节1—1 4.对系统程序员不透明的是: A. Cache存储器 B. 系列机各档不同的数据通路宽度 C. 指令缓冲寄存器 D. 虚拟存储器 答案:D 分数:2 所属章节1—2 5.对应用程序员不透明的是: A. 先行进位链 B. 乘法器 C. 指令缓冲器 D. 条件码寄存器 答案:D 分数:2 所属章节1—2 6.对机器语言程序员透明的是: A. 中断字 B. 主存地址寄存器 C. 通用寄存器 D. 条件码 答案:B 分数:2 所属章节1—2 7.计算机系统结构不包括: A. 主存速度 B. 机器工作状态 C. 信息保护 D. 数据表示 答案:A 分数:2 所属章节1—2 8.对计算机系统结构透明的是: A. 字符行运算指令 B. 是否使用通道行I/O处理机 C. 虚拟存储器 D. VLSI技术 答案:D 分数:2 所属章节1—2 9.对汇编语言程序员透明的是: A.I/O方式中的DMA访问方式 B. 浮点数据表示 C. 访问方式保护 D 程序性中断. 答案:A 分数:2 所属章节1—2 10.属计算机系统结构考虑的应是:

计算机体系结构第五章练习题参考解答

第 五 章 5.34 在一个采用组相联映象方式的Cache 存储系统中,主存由B 0~B 7共8块组成,Cache 有2组,每组2块,每块大小为16B 。在一个程序执行过程中,访存的主存块地址流为:B 6,B 2,B 4,B 1,B 4,B 6,B 3,B 0,B 4,B 5,B 7,B 3。 (1)写出主存地址的格式,并标出各字段的长度。 (2)写出Cache 地址的格式,并标出各字段的长度。 (3)指出主存与Cache 之间各个块的映象关系。 (4)若Cache 的4个块号为C 0、C 1、C 2和C 3,列出程序执行过程中的Cache 块地址流。 (5)若采用FIFO 替换算法,计算Cache 的块命中率。 (6)若采用LRU 替换算法,计算Cache 的块命中率。 (7)若改为全相联映象方式,再做(5)和(6)。 (8)若在程序执行过程中,每从主存装入一块到Cache ,平均要对这个块访问16次,计算在这种情况下的Cache 命中率。 解:(1)(2)采用组相联映象时,主存和Cache 地址的格式分别为: 主存按Cache 的大小分区,现主存有8个块,Cache 有2×2=4个块,则主存分为8/4=2 个区,区号E 的长度为1位。又每区有2个组,则组号G 、g 的长度都为1位。而每组有2个块,则块号B 、b 的长度又都为1位。每块大小为16个存储字,故块内地址W 、w 的长度都为4位。 (3)根据组相联映象的规则,主存块0~7与Cache 块0~3之间的映象关系为:主存块0、1、4、5与Cache 块0、1之间全相联,主存块2、3、6、7与Cache 块2、3之间全相联。 (4)根据组相联映象的规则,该主存块地址流相应的一种Cache 块地址流如下表所示(组内替换算法为FIFO )。 时间: 1 2 3 4 5 6 7 8 9 10 11 12 主存块地址流: B 6 B 2 B 4 B 1 B 4 B 6 B 3 B 0 B 4 B 5 B 7 B 3 Cache 块地址流: C 2 C 3 C 0 C 1 C 0 C 2 C 2 C 0 C 0 C 0 C 3 C 2 (5)组内替换算法采用FIFO 时,Cache 块0~3的使用过程如下表所示。 时间: 1 2 3 4 5 6 7 8 9 10 11 12 主存块地址流: B 6 B 2 B 4 B 1 B 4 B 6 B 3 B 0 B 4 B 5 B 7 B 3 Cache 块0 Cache 块1 Cache 块2 Cache 块3 命中 命中 命中 可见命中三次,Cache 块命中率为H i = 3/12 = 0.25。 (6)组内替换算法采用LRU 时,Cache 块0~3的使用过程如下表所示。

计算机系统结构期末考试试题及其答案

计算机科学系《计算机系统结构》期末考试试卷(A卷) 2、此试卷适用于计算机科学与技术本科专业。 一单选题:(10分,每题1分) 1、."启动I/O"指令是主要的输入输出指令,是属于( B ) A.目态指令 B.管态指令 C.目态、管态都能用的指令 D.编译程序只能用的指令 2、输入输出系统硬件的功能对(B )是透明的 A.操作系统程序员 B.应用程序员 C.系统结构设计人员 D.机器语言程序设计员 3、全相联地址映象是指(A) A.任何虚页都可装入主存中任何实页的位置 B.一个虚页只装进固定的主存实页位置 C.组之间固定,组内任何虚页可装入任何实页位置 D.组间可任意装入,组内是固定装入 4、( C ) 属于MIMD系统结构 A.各处理单元同时受一个控制单元的管理 B.各处理单元同时受同个控制单元送来的指令 C.松耦合多处理机和多计算机系统 D.阵列处理机 5、多处理机上两个程序段之间若有先写后读的数据相关,则(B ) A.可以并行执行 B.不可能并行 C.任何情况均可交换串行 D.必须并行执行 6、计算机使用的语言是(B) A.专属软件范畴,与计算机体系结构无关 B.分属于计算机系统各个层次 C.属于用以建立一个用户的应用环境 D.属于符号化的机器指令 7、指令执行结果出现异常引起的中断是(C ) A.输入/输出中断 B.机器校验中断 C.程序性中断 D.外部中断 8、块冲突概率最高的Cache地址映象方式是(A ) A.直接 B.组相联 C.段相联 D.全相联 9、组相联映象、LRU替换的Cache存储器,不影响Cache命中率的是(B ) A.增大块的大小 B.增大主存容量 C.增大组的大小 D.增加Cache中的块数 10、流水处理机对全局性相关的处理不.包括(C) A.猜测法 B.提前形成条件码 C.加快短循环程序的执行 D.设置相关专用通路

2010年4月自考计算机系统结构试题及答案

全国2010年4月自学考试计算机系统结构试题 课程代码:02325 一、单项选择题(本大题共10小题,每小题1分,共10分) 在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。错选、多选或未选均不得分。 1.在计算机系统结构设计中,提高软件功能实现的比例可( ) A.提高解题速度B.减少需要的存储器容量 C.提高系统的灵活性D.提高系统的性能价格比 2.浮点数表示的尾数的基r m=16,尾数长度p=8,可表示的规格化最大正尾数的值是( ) A.1/256 B.1/2 C.15/16 D.255/256 3.下列数据存储空间为隐含寻址方式的是( ) A.CPU中的通用寄存器B.主存储器 C.I/O接口中的寄存器D.堆栈 4.当计算机系统执行通道程序完成输入输出工作时,执行通道程序的是( ) A.CPU B.通道 C.CPU和通道D.指定的外设 5.下列有关中断的叙述正确的是( ) A.中断响应的次序是由硬件决定的B.中断处理的次序是由硬件决定的 C.中断处理的次序是不可改的D.中断响应的次序是可灵活改变的 6.与虚拟存储器的等效访问速度无关 ..的是( ) A.访存页地址流B.页面替换算法 C.主存的容量D.辅存的容量 7.非线性流水线的特征是( ) A.一次运算中使用流水线中的多个功能段 B.一次运算中多次使用流水线中的某些功能段 C.流水线中某些功能段在各次运算中的作用不同 D.流水线的各功能段在不同的运算中可以有不同的连接 8.属于集中式共享存储器结构的SIMD计算机是( ) A.ILLIAC IV B.BSP C.CM-2 D.MP-1 1

计算机系统结构课后答案

1、数据结构和机器的数据表示之间是什么关系?确定和引入数据表示的基本原则是什么? 答:数据表示是能由硬件直接识别和引用的数据类型。数据结构反映各种数据元素或信息单元之间的结构关系。数据结构要通过软件映象变换成机器所具有的各种数据表示实现,所以数据表示是数据结构的组成元素。不同的数据表示可为数据结构的实现提供不同的支持,表现在实现效率和方便性不同。数据表示和数据结构是软件、硬件的交界面。 除基本数据表示不可少外,高级数据表示的引入遵循以下原则:(1)看系统的效率有否提高,是否养活了实现时间和存储空间。(2)看引入这种数据表示后,其通用性和利用率是否高。 2、标志符数据表示与描述符数据表示有何区别?描述符数据表示与向量数据表示对向量数据结构所提供的支持有什么不同? 答:标志符数据表示指将数据类型与数据本身直接联系在一起,让机器中每个数所都带类型樗位。其优点是:(1)简化了指令系统和程序设计;(2)简化了编译程序;(3)便于实现一致性校验;(4)能由硬件自动变换数据类型;(5)支持数据库系统的实现与数据类型无关;(6)为软件调试和应用软件开发提供支持。缺点是:(1)会增加程序所点的主存空间;(2)在微观上对机器的性能(运算速度)不利。 数据描述符指数据的描述与数据分开存放,描述所访问的数据是整块还是单个的,及访问该数据块或数据元素的地址住处它具备标志符数据表示的优点,并减少了标志符数据表示所占的空间,为向量和数组结构的实现提供支持。 数据描述符方法优于标志符数据表示,数据的描述与数据分开,描述所访问的数据是整块还是单个的,及访问该数据块或数据元素的地址信息,减少了樗符数据表示所占的窨。用描述符方法实现阵列数据的索引比用变址方法实现要方便,且便于检查出程序中的阵列越界错误。但它不能解决向量和数组的高速运算问题。而在有向量、数组数据表示的向量处理机上,硬件上设置有丰富的赂量或阵列运算指令,配有流水或阵列方式处理的高速运算器,不仅能快速形成向量、数组的元素地址,更重要的是便于实现把向量各元素成块预取到中央处理机,用一条向量、数组指令流水或同时对整个向量、数组高速处理.如让硬件越界判断与元素运算并行。这些比起用与向量、阵列无关的机器语言和数据表示串行实现要高效的多。 3、堆栈型机器与通用寄存器型机器的主要区别是什么?堆栈型机器系统结构为程序调用的哪些操作提供了支持? 答:有堆栈数据表示的机器称为堆栈机器。它与一般通用寄存器型机器不同。通用寄存器型

计算机系统结构期末考试题目

第一章: 1.计算机系统结构的定义 答:由程序设计者看到的一个计算机系统的属性,即概念性结构和功能特性。 2.透明性概念 答:在计算机技术中,一种本来是存在的事物或属性,但从某种角度看似乎不存在,称为透明性现象。 3.兼容性向后兼容 兼容性:同一个软件可以不加修改地运行于系统结构相同的各档机器,可获得相同的结果,差别只在于不同的运行时间。 向后兼容:按某个时期投入市场的某种型号机器编制的程序,不加修改就能运行于在它之后投入市场的机器。 4.Amdahl定律 答:系统中某一部件由于采用某种更快的执行方式后整个系统性能的提高与这种执行方式的使用频率或占总执行时间的比例有关。 5.CPI 答:每条指令的平均时钟周期数。 6.MIPS 答:每秒百万条指令数!MIPS=时钟频率/(CPI*10^6) 7.MFLOPS 答:每秒百万次浮点操作次数。MFLOPS=程序中的浮点操作次数/(执行时间*10^6) 8.命中率的概念 答: 9.Flynn分类法是按指令流和数据流的多倍性特征进行计算机系统结构的划分 答:①单指令流单数据流SISD ②单指令流多数据流SIMD ③多指令流单数据流MISD (实际不存在)④多指令流多数据流MIMD 10.计算机系统设计的定量原理(四个) 答:①加快经常性事件的速度②Amdahl定律③CPU性能公式④访问的局部性原理11.CPI和加速比的计算 答:CPI=CPU时钟周期数/IC CPU时间=CPU时钟周期数/频率 CPU时间=CPU时钟周期*时钟周期长 加速比=(采用改进措施后的性能)/(没有采用改进措施前的性能) =(没有采用改进措施前执行某任务的时间)/(采用改进措施后执行某任务的时间) 12.软硬件实现的特点 硬件实现:速度快、成本高;灵活性差、占用内存少 软件实现:速度低、复制费用低;灵活性好、占用内存多 13.系统评价的标准 ①运算速度②存储器系统③其他性能④成本标准

计算机体系结构试题汇总

计算机系统结构 姓名:学号: 一、简答题(每小题10分,共20分) 1.简述使用物理地址进行DMA存在的问题,及其解决办法。 2.从目的、技术途径、组成、分工方式、工作方式等5个方面对同构型多处理机和异构型多处理机做一比较(列表)。 二、(60分)现有如下表达式: Y=a ×X 其中:X和Y是两个有64个元素的32位的整数的向量,a为32位的整数。假设在存储器中,X和Y的起始地址分别为1000和5000,a的起始地址为6000。 1.请写出实现该表达式的MIPS代码。 2.假设指令的平均执行时钟周期数为5,计算机的主频为500 MHz,请计算上述MIPS 代码(非流水化实现)的执行时间。 3.将上述MIPS代码在MIPS流水线上(有正常的定向路径、分支指令在译码段被解析出来)执行,请以最快执行方式调度该MIPS指令序列。注意:可以改变操作数,但不能改变操作码和指令条数。画出调度前和调度后的MIPS代码序列执行的流水线时空图,计算调度前和调度后的MIPS代码序列执行所需的时钟周期数,以及调度前后的MIPS流水线执行的加速比。 4.根据3的结果说明流水线相关对CPU性能的影响。 三、(20分)请分析I/O对于性能的影响有多大?假设: 1.I/O操作按照页面方式进行,每页大小为16 KB,Cache块大小为64 B;且对应新页的地址不在Cache中;而CPU不访问新调入页面中的任何数据。 2.Cache中95%被替换的块将再次被读取,并引起一次失效;Cache使用写回方法,平均50%的块被修改过;I/O系统缓冲能够存储一个完整的Cache块。 3.访问或失效在所有Cache块中均匀分布;在CPU和I/O之间,没有其他访问Cache 的干扰;无I/O时,每1百万个时钟周期中,有15,000次失效;失效开销是30个时钟周期。如果替换块被修改过,则再加上30个周期用于写回主存。计算机平均每1百万个周期处理一页。

计算机系统结构_第五章练习 答案

第五章练习 1、描述计算机系统流水线的性能指标有哪些?其定义和定量表达式是什么? 指标主要有吞吐率、加速比、效率。 (1)吞吐率:在单位时间内流水线所完成的任务数量或输出的结果数量。 基本公式:TP=n/Tk,其中,n是任务数,Tk是处理完成n个任务所用的时间。 各个功能段执行时间均相等,输入连续n个任务的一条k段线性流水线的实际吞吐率为:TP=n/[(k+n-1) ?t] (2)加速比:完成一批任务,不使用流水线所用的时间与使用流水线所用的时间之比。 基本公式:S=T0/Tk,其中,T0为不使用流水线所用的时间,Tk为使用流水 线的执行时间。 各个功能段执行时间均相等的一条K段流水线完成n个连续任务时的实际加速比为:s=k*n*?t/[(k+n-1) ?t]=k*n/( k+n-1). (3)效率:指流水线的设备利用率。 在时空图上,流水线的效率定义为n个任务占用的时空区与k个功能段总的时空区之比。即:E=T0/(k*Tk) 各个功能段执行时间均相等,输入连续n个任务的一条k段线性流水线的效率为:E=n/(k+n-1) 2、假设某个流水线由4个功能部件组成,每个功能部件的执行时间都为?t。当 连续输入10个数据后,停顿5?t,又连续输入10个数据,如此重复。 画出时空图,计算流水线的实际吞吐率,加速比和效率。 总时间:Tk=[(4+10-1)+2] *?t*n =15n*?t 实际吞吐率:TP=N/Tk=10n/(15n*?t)=2/(3?t) 不使用流水线所用的时间为T0=4*N*?t =40n*?t 加速比:S=T0/Tk=2.67 效率:E=T0/(k*Tk)=0.67

(完整版)计算机系统结构试题及答案

计算机系统结构复习题 单选及填空: 计算机系统设计的主要方法 1、由上往下的设计(top-down) 2、由下往上的设计(bottom-up) 3、从中间开始(middle-out) Flynn分类法把计算机系统的结构分为以下四类: (1)单指令流单数据流 (2)单指令流多数据流 (3)多指令流单数据流 (4) 多指令流多数据流 堆栈型机器:CPU 中存储操作数的单元是堆栈的机器。 累加器型机器:CPU 中存储操作数的单元是累加器的机器。 通用寄存器型机器:CPU 中存储操作数的单元是通用寄存器的机器。 名词解释: 虚拟机:用软件实现的机器叫做虚拟机,但虚拟机不一定完全由软件实现,有些操作可以由硬件或固件(固件是指具有软件功能的固件)实现。 系列机:由同一厂家生产的具有相同系统结构、但具有不同组成和实现的一系列不同型号的计算机。 兼容机:它是指由不同公司厂家生产的具有相同系统结构的计算机。 流水线技术:将一个重复的时序过程,分解成为若干个子过程,而每一个子过程都可有效地在其专用功能段上与其它子过程同时执行。 单功能流水线:指流水线的各段之间的连接固定不变、只能完成一种固定功能的流水线。 多功能流水线:指各段可以进行不同的连接,以实现不同的功能的流水线。 顺序流水线:流水线输出端任务流出的顺序与输入端任务流入的顺序完全相同。 乱序流水线:流水线输出端任务流出的顺序与输入端任务流入的顺序可以不同,允许后进入流水线的任务先完成。这种流水线又称为无序流水线、错序流水线、异步流水线。 吞吐率:在单位时间内流水线所完成的任务数量或输出结果的数量。 指令的动态调度:

是指在保持数据流和异常行为的情况下,通过硬件对指令执行顺序进行重新安排,以提高流水线的利用率且减少停顿现象。是由硬件在程序实际运行时实施的。 指令的静态调度: 是指依靠编译器对代码进行静态调度,以减少相关和冲突。它不是在程序执行的过程中、而是在编译期间进行代码调度和优化的。 超标量: 一种多指令流出技术。它在每个时钟周期流出的指令条数不固定,依代码的具体情况而定,但有个上限。 超流水:在一个时钟周期内分时流出多条指令。 多级存储层次: 采用不同的技术实现的存储器,处在离CPU不同距离的层次上,各存储器之间一般满足包容关系,即任何一层存储器中的内容都是其下一层(离CPU更远的一层)存储器中内容的子集。目标是达到离CPU最近的存储器的速度,最远的存储器的容量。 写直达法: 在执行写操作时,不仅把信息写入Cache中相应的块,而且也写入下一级存储器中相应的块。写回法: 只把信息写入Cache中相应块,该块只有被替换时,才被写回主存。 集中式共享多处理机: 也称为对称式共享存储器多处理SMP。它一般由几十个处理器构成,各处理器共享一个集中式的物理存储器,这个主存相对于各处理器的关系是对称的, 分布式共享多处理机: 它的共享存储器分布在各台处理机中,每台处理机都带有自己的本地存储器,组成一个“处理机-存储器”单元。但是这些分布在各台处理机中的实际存储器又合在一起统一编址,在逻辑上组成一个共享存储器。这些处理机存储器单元通过互连网络连接在一起,每台处理机除了能访问本地存储器外,还能通过互连网络直接访问在其他处理机存储器单元中的“远程存储器”。 多Cache一致性: 多处理机中,当共享数据进入Cache,就可能出现多个处理器的Cache中都有同一存储器块的副本,要保证多个副本数据是一致的。 写作废协议: 在处理器对某个数据项进行写入之前,它拥有对该数据项的唯一的访问权 。 写更新协议: 当一个处理器对某数据项进行写入时,它把该新数据广播给所有其它Cache。这些Cache用该新数据对其中的副本进行更新。 机群:是一种价格低廉、易于构建、可扩放性极强的并行计算机系统。它由多台同构或异构

计算机体系结构期末考试知识点与答案

体系结构复习重点.doc 1..诺依蔓计算机的特点 答:·若依曼计算机的主要特点如下: 存储程序方式。指令和数据都是以字的方式存放在同一个存储器中,没有区别,由机器状态来确定从存储器读出的字是指令或数据。 指令串行执行,并由控制器集中加以控制、 单元定长的一维线性空间的存储器 使用低级机器语言,数据以二进制形式表示。 单处理机结构,以运算器作为中心。 其实,他最大的特点就是简单易操作。 2. T(C)=所描述的三个层次(8页) 答:3个层次为控制器、算术逻辑部件、基本逻辑部件 3. 计算机系统结构的分类(5页) 4. 计算机系统中的数据表示(38页) 5. 指令系统设计的原则 答:指令系统的设计原则是,应特别注意如何支持编译系统能高效、简易地将源程序翻译成目标代码。 首先是正交性:又称分离原则或互不相干原则。即指令中各个有不同含义的字段之间,在编码时应互相独立、互不相关。 规整性:对相似的操作数做出相同的规定。 可扩充性:要保留一定余量的操作码空间,为以后的扩展所用。 对称性:为了使编译能更加方便,通常希望操作具有对称性。 6. 流水操作中的相关 答:流水操作过程中会出现一下的3个相关:资源或结构相关、数据相关、和控制相关。 资源相关是指当有多条指令进入流水线后在同一机器周期内争用同一功能部件所发生的冲突。 数据相关:这是由于流水线中的各条指令的重叠操作使得原来对操作数的访问顺序发生了变化,从而导致了数据相关的冲突。 控制相关主要是转移指令引起的,比起数据相关来,他会使流水线丧失更多的性能。 7. 向量机中对向量的各种运算可以采用的加工方式(149页) 答:向量机中对向量的各种运算可以采用不同的加工方式,但比较有效的加工方式

计算机系统结构 课后习题答案(第2版)

习题一 1、解释下列术语 计算机系统的外特性:通常所讲的计算机系统结构的外特性是指机器语言程序员或编译程序编写者所看到的外特性,即由他们所看到的计算机的基本属性(概念性结构和功能特性)。 计算机系统的内特性:计算机系统的设计人员所看到的基本属性,本质上是为了将有关软件人员的基本属性加以逻辑实现的基本属性。 模拟:模拟方法是指用软件方法在一台现有的计算机上实现另一台计算机的指令系统。 可移植性:在新型号机出台后,原来开发的软件仍能继续在升级换代的新型号机器上使用,这就要求软件具有可兼容性,即可移植性。可兼容性是指一个软件可不经修改或只需少量修改,便可由一台机器移植到另一台机器上运行,即同一软件可应用于不同环境。 Amdahl定律:系统中对于某一部件采用某种更快的执行方式所能获得的系统性能改进程度,取决于这种执行方式被使用的频度或占总执行时间的比例。 虚拟机(Virtual Machine):指通过软件模拟的具有完整硬件系统功能的、运行在一个完全隔离环境中的完整计算机系统。 6、 7、假定求浮点数平方根的操作在某台机器上的一个基准测试程序中占总执行时间的20%,为了增强该操作的性能,可采用两种不同的方法:一种是增加专门的硬件,可使求浮点数平方根操作的速度提高为原来的20倍;另一种方法是提高所有浮点运算指令的速度,使其为原来的2倍,而浮点运算指令的执行时间在总执行时间中占30%。试比较这两种方法哪一种更好些。 答:增加硬件的方法的加速比Sp1=1.23, 另一种方法的加速比Sp2= 1.176,经计算可知Sp1=方法更好些。 Sp2>Sp2第一种 9、假设高速缓存Cache的工作速度为主存的5倍,且Cache被访问命中的概率 T=为90%,则采用Cache能使整个存储系统获得多高的加速比?答: 加速比

系统结构期末考试试题及答案

得分 评分人 填空题: (20分,每题2 分) 单选题:(10分,每题1分) A.任何虚页都可装入主存中任何实页的位置 B. 一个虚页只装进固定的主存实页位置 《计算机系统结构》期末考试试卷(A ) 得分 注:1、共100分,考试时间120分钟。 2、此试卷适用于计算机科学与技术本科专业。 1、."启动I/O"指令是主要的输入输出指令,是属于( A. 目态指令 B.管态指令 C.目态、管态都能用的指令 D.编译程序只能用的指令 2、 输入输出系统硬件的功能对 (B )是透明的 A.操作系统程序员 B.应用程序员 C.系统结构设计人员 D.机器语言程序设计员 3、 全相联地址映象是指(A ) C. 组之间固定,组内任何虚页可装入任何实页位置 D.组间可任意装入,组内是固定装入 4、( C ) 属于MIMD 系统结构 A.各处理单元同时受一个控制单元的管理 B.各处理单元同时受同个控制单元送来的指令 C.松耦合多处理机和多计算机系统 D. 阵列处理机 5、多处理机上两个程序段之间若有先写后读的数据相关,则( B ) A.可以并行执行 B.不可能并行 C.任何情况均可交换串行 D.必须并行执行 6、 计算机使用的语言是(B ) A.专属软件范畴,与计算机体系结构无关 B.分属于计算机系统各个层次 C.属于用以建立一个用户的应用环境 D. 属于符号化的机器指令 7、 指令执行结果出现异常引起的中断是( C ) A.输入/输出中断 B.机器校验中断 C.程序性中断 D.外部中断 &块冲突概率最高的 Cache 地址映象方式是(A ) A.直接 B .组相联 C .段相联 D .全相联 9、 组相联映象、LRU 替换的Cache 存储器,不影响 Cache 命中率的是(B ) A.增大块的大小 B .增大主存容量 C .增大组的大小 D .增加Cache 中的块数 10、 流水处理机对全局性相关的处理不 包括(C ) A.猜测法 B.提前形成条件码 C.加快短循环程序的执行 D.设置相关专用通路

计算机系统结构考试题库及答案

计算机系统结构试题及答案 一、选择题(50分,每题2分,正确答案可能不只一个,可单选 或复选) 1.(CPU周期、机器周期)是内存读取一条指令字的最短时间。 2.(多线程、多核)技术体现了计算机并行处理中的空间并行。 3.(冯?诺伊曼、存储程序)体系结构的计算机把程序及其操作数 据一同存储在存储器里。 4.(计算机体系结构)是机器语言程序员所看到的传统机器级所具 有的属性,其实质是确定计算机系统中软硬件的界面。 5.(控制器)的基本任务是按照程序所排的指令序列,从存储器取 出指令操作码到控制器中,对指令操作码译码分析,执行指令操作。 6.(流水线)技术体现了计算机并行处理中的时间并行。 7.(数据流)是执行周期中从内存流向运算器的信息流。 8.(指令周期)是取出并执行一条指令的时间。 9.1958年开始出现的第二代计算机,使用(晶体管)作为电子器件。 10.1960年代中期开始出现的第三代计算机,使用(小规模集成电路、 中规模集成电路)作为电子器件。 11.1970年代开始出现的第四代计算机,使用(大规模集成电路、超 大规模集成电路)作为电子器件。 12.Cache存储器在产生替换时,可以采用以下替换算法:(LFU算法、 LRU算法、随机替换)。

13.Cache的功能由(硬件)实现,因而对程序员是透明的。 14.Cache是介于CPU和(主存、内存)之间的小容量存储器,能高 速地向CPU提供指令和数据,从而加快程序的执行速度。 15.Cache由高速的(SRAM)组成。 16.CPU的基本功能包括(程序控制、操作控制、时间控制、数据加 工)。 17.CPU的控制方式通常分为:(同步控制方式、异步控制方式、联合 控制方式)反映了时序信号的定时方式。 18.CPU的联合控制方式的设计思想是:(在功能部件内部采用同步控 制方式、在功能部件之间采用异步控制方式、在硬件实现允许的情况下,尽可能多地采用异步控制方式)。 19.CPU的同步控制方式有时又称为(固定时序控制方式、无应答控 制方式)。 20.CPU的异步控制方式有时又称为(可变时序控制方式、应答控制 方式)。 21.EPROM是指(光擦可编程只读存储器)。 22.MOS半导体存储器中,(DRAM)可大幅度提高集成度,但由于(刷 新)操作,外围电路复杂,速度慢。 23.MOS半导体存储器中,(SRAM)的外围电路简单,速度(快),但 其使用的器件多,集成度不高。 24.RISC的几个要素是(一个有限的简单的指令集、CPU配备大量的 通用寄存器、强调对指令流水线的优化)。

计算机系统结构 第一章自考练习题答案教学内容

第一章计算机系统结构的基本概念 历年真题精选 1. 下列对系统程序员不透明的是()。 A. 乘法器 B. 先行进位链 C. 指令缓冲器 D. 条件码寄存器2.“从中间开始”设计的“中间”目前多数是在( D )。 A. 微程序机器级与汇编语言机器级之间 B. 操作系统机器级与汇编语言机器级之间 C. 传统机器语言机器级与微程序机器级之间 D. 传统机器语言机器级与操作系统机器级之间 3. 开发计算机系统结构并行性的主要技术途径有时间重叠、(资源重复)和(资源 共享)。 4. 计算机系统弗林分类法,把计算机系统分成单指令流单数据流(SISD)、单指令流多数 据流(SIMD)、(多指令流单数据流(MISD))和(多指令流多数据流(MIMD))四大类。 5. 设计指令系统时,以乘法运算为例,简述系统结构设计、计算机组成设计、计算机实现 各应考虑的问题。(P4) 6. 实现软件移植的途径有哪些?各受什么限制?(P14) 同步强化练习 一.单项选择题。 1. 实现汇编语言源程序变换成机器语言目标程序是由( C )。 A. 编译程序翻译 B. 编译程序解释 C. 汇编程序翻译 D. 汇编程序解释

2. 系列机软件应做到( B ) A. 向前兼容,并向下兼容 B. 向后兼容,力争向上兼容 C. 向前兼容,并向上兼容 D. 向后兼容,力争向下兼容 3. 在计算机系统多级层次结构中,机器级由低到高,相对顺序正确的应当是( B )。 A. 传统机器语言、汇编语言、操作系统 B. 微程序、传统机器语言、高级语言 C. 高级语言、汇编语言、传统机器语言 D. 传统机器语言、应用语言、高级语言 4. 可以直接执行微指令的是( C )。 A. 编译程序 B. 微程序 C. 硬件 D. 汇编程序 5. 计算机系统结构不包括( A )。 A. 主存速度 B. 数据表示 C. 机器工作状态 D. 信息保护 6. 对计算机系统结构透明的是()。 A. 是否使用通道型I/0处理机 B. 虚拟存储器 C. 字符行运算指令 D. VLSI技术 7. 在主存设计上,属计算机系统结构考虑的应是( C )。 A. 频宽的确定 B. 多体交叉还是单体 C. 容量和编址单位 D. 用MOS还是TTL 8. 计算机组成设计不考虑( B )。 A. 缓冲技术 B. 功能部件的集成度 C. 专用部件设置 D. 控制机构的组成 9. 下列说法中不正确的是( D ) A. 硬件的生产费用比软件的生产费用高 B.软件设计费用比软件重复生产费用高 C. 硬件功能只需实现一次而软件功能可能要多次重复实现 D. 硬件实际费用比软件设计费用低

《计算机系统结构》与参考答案

2.以下各类中断中,属于自愿中断的是 C. A. 外部中断 B. I/O中断 C. 执行“访管”指令 D. 机器校验中断 3.高速外部设备磁盘机适合连接于 C. A. 选择通道或字节多路通道 B. 数组多路通道或字节多路通道 C.数组多路通道或选择通道 D.任意一种通道 4.页式虚拟存储器页表的作用是 A . A. 反映虚页在主存的存储情况 B.仅反映虚页是否调入主存 C. 反映主存实页与Cache 的对应关系 D. 反映虚页在辅存的存储情况5.软件和硬件的功能在逻辑上是C的 . A.固件优于软件 B.不等价 C.等价 D.软件优于固件 6.计算机中最优化的操作码编码方法是D. A.BCD 码 B.ASCII码 C.扩展操作码 D.哈夫曼编码 7.从计算机系统执行程序的角度看,并行性等级由低到高分为四级A. A .指令内部——指令之间——进程之间——程序之间 B .指令之间——指令内部——进程之间——程序之间 C.进程之间——指令之间——指令内部——程序之间 D .程序之间——进程之间——指令之间——指令内部 8.计算机系统多级层次结构中,操作系统机器级的直接上层是D. A .传统机器级 B .高级语言机器 C.应用语言机器级D.汇编语言机器级 9.全相联地址映像是指A. A. 任何虚页都可装入主存中任何实页的位置 B.一个虚页只装进固定的主存实页位置 C.组之间是固定的,而组内任何虚页可以装入任何实页位置 D.组间可任意装入,组内是固定装入 10.对于同一系列机,必须保证软件能够C. A .向前兼容,并向上兼容 B .向前兼容,并向下兼容C.向后兼容,力争向上兼容D .向后兼容,力争向下兼容11.设有 16 个处理单元的并行处理机系统, 采用共享主存的方式. 若同时存取16 个数据 , 为避免存储器访问冲突, 共享主存的多体数量应该为C才合理 . A. 15 B. 16 C. 17 D. 19 12.软件兼容的根本特征是C. A.向前兼容 B.向后兼容 C. 向上兼容 D. 向下兼容 13.在下列机器中,能够实现软件兼容的机器是 B. A.完全不同种类的机型 B.系统结构相同的机器 C. 宿主机和目标机 D.虚拟机 14.输入输出系统硬件的功能对C是透明的。 A. 操作系统程序员 B. 所有类别的程序员 C. 应用程序员 D. 系统结构设计师 15.在下列各项选择中,对于机器( 汇编 ) 语言程序员透明的是 D. A.通用寄存器 B. 条件码 C.中断字 D.主存储器地址寄存器 一、单项选择题 1.在流水机器中,全局性相关是指 B. A.指令相关 B. 由条件转移指令引起的相关 C “先读后写”相关 D.“先写后读”相关 2.以下不属于多处理机操作系统类型的是A. A .Windows 操作系统B.主从型操作系 C.浮动型操作系统 D .各自独立型操作系统 3.下列不是数据流计算特点的是D. A. 设置状态 B.没有指令计数器 C.没有变量的概念 D.操作结果不产生副作用 4.若输入流水线的指令既无局部性相关,也不存在全局性相关,则B. A. 可获得高的吞吐率和效率 B.出现瓶颈 C.流水线的效率和吞吐率恶化 D.可靠性提高 5.消除“一次重叠”中的“指令相关”最好方法是B. A. 不准修改指令 B.设置相关专用通路 C.推后分析下条指令 D.推后执行下条指令 6.流水线的技术指标不包括A. A. 数据宽度 B.吞吐率 C.加速比 D.效率 7.按照弗林对处理机并行性定义的分类原则,阵列机ILLIAC IV属于B. A.SISD B.SIMD C.MISD D.MIMD 8.设 8 个处理器编号分别为0,1, 2,?,7 用 Cube0 互联函数时,第7 号处理机可以与第D号处理机相联 . A. 0 B. 2 C. 4 D. 6 9.多端口存储器适合于连接 B. A .松耦合多处理机B.紧耦合多处理机C.机数很多的多处理机 D .机数可变的多处理机 10.以下不属于堆栈型替换算法的是A. A .先进先出法B.近期最久未用过法 C.近期最少使用法D.页面失效频率法 11.解决主存空间数相关的办法是C. A.基址值一次相关直接通路法 B.基址值二次相关直接通路法 C.通用寄存器组相关专用通路相关法 D. 推后读法 12. 一般来说 , 以下替换算法中 , 效果最优的替换算法是C. A. LRU 替换算法 B. FIFO 替换算法 C. OPT 替换算法 D. RAND替换算法

计算机系统结构期末考试试题及其答案

计算机系统结构期末考试试题及其答案

《计算机系统结构》期末考试试卷A 卷第 2 页 共 24 页 计算机科学系《计算机系统结构》期末考试试卷(A 卷) 2、此试卷适用于计算机科学与技术本科专业。 一 单选题:(10分,每题1分) 1、 ."启动I/O"指令是主要的输入输出指 令,是属于( B ) A.目态指令 B.管态指令 C.目态、管态都能用的指令 D.编译程序只能用的指令 2、 输入输出系统硬件的功能对(B )是透 明的 A.操作系统程序员 B.应用程序员 C.系统结构设计人员 D.机器语言程序设计员 3、 全相联地址映象是指(A ) A.任何虚页都可装入主存中任何实页的位置 B.一个虚页只装进固定的主存实页位置 C.组之间固定,组内任何虚页可装入任何实页位

置 D.组间可任意装入,组内是固定装入 4、( C ) 属于MIMD系统结构 A.各处理单元同时受一个控制单元的管理 B.各处理单元同时受同个控制单元送来的指令 C.松耦合多处理机和多计算机系统 D.阵列处理机 5、多处理机上两个程序段之间若有先写 后读的数据相关,则(B ) A.可以并行执行 B.不可能并行 C.任何情况均可交换串行 D.必须并行执行 6、计算机使用的语言是(B) A.专属软件范畴,与计算机体系结构无关 B.分属于计算机系统各个层次 C.属于用以建立一个用户的应用环境 D.属于符号化的机器指令 7、指令执行结果出现异常引起的中断是 (C ) A.输入/输出中断 B.机器校验中断 C.程序性中断 D.外部中断 《计算机系统结构》期末考试试卷A卷第 3 页共 24 页

计算机体系结构期末试卷及答案

课程测试试题( A 卷) ----------------------以下为教师填写-------------------- I、命题院(部):信息科学与工程学院 II、课程名称:计算机体系结构 III、测试学期:2014-2015学年度第2学期 IV、测试对象:信息学院计算机、网络专业 2012 级班 V、问卷页数(A4): 3 页 VI、答卷页数(A4): 4 页 VII、考试方式:闭卷(开卷、闭卷或课程小论文,请填写清楚) VIII、问卷内容: 一、填空题(共30分,20空,每空分) 1、现代计算机系统是由()和()组成的十分复杂的系统。 2、计算机系统应能支持软件可移植,实现可移植性的常用方法有3种,即(),(), 统一高级语言。 3、可以将当前大多数通用寄存器型指令集结构进一步细分为3种类型,即()、() 和存储器-存储器型指令集结构。 4、MIPS指令DADDIU R14,R5,#6属于()类型的指令格式;MIPS指令 SD R4,300(R5)属于()类型的指令格式。 5、描述流水线的工作,常采用时空图的方法。在时空图中,横坐标表示(),纵坐 标代表()。 6、在MIPS指令实现的简单数据通路中,在WB周期中,有两大类指令执行操作:() 和()指令。 7、存储器的层次结构中,“Cache-主存”层次是为了弥补主存()的不足,“主 存-辅存”层次是为了弥补主存()的不足。 8、Cache实现的映像规则有全相联映像、()和()三种。 9、反映存储外设可靠性能的参数有可靠性、()和()。 10、根据系统中处理器个数的多少,可把现有的MIMD计算机分为两类,每一类代表 了一种存储器的结构和互连策略。第一类机器称为()结构,第二类机器具有()。 二、判断题(每小题1分,共10分) 1、从计算机语言的角度,系统结构把计算机系统按功能划分成多级层次结构,其中, 第2级是操作系统虚拟机,第3级是汇编语言虚拟机。() 2、计算机系统中提高并行性的3种途径中,资源重复是在并行性概念中引入时间因 素,加快硬件周转而赢得时间。() 3、指令集结构中采用多种寻址方式可能会增加实现的复杂度和使用这些寻址方式的 指令的CPI。() 4、指令条数多,通常超过200条,是设计RISC的原则之一。() 5、根据流水线中各功能段之间是否有反馈回路,可把流水线分为线性流水线和非线 性流水线。() 6、在多级存储体系中,“cache——主存”层次的存储管理实现主要由软件件实现。

《计算机体系结构》期末复习题标准答案

《计算机体系结构》期末复习题答案

————————————————————————————————作者:————————————————————————————————日期:

《计算机体系结构》期末复习题答案 系别_________ 班级_________ 姓名__________ 学号__________ 一、填空题(每空1分) 1.按照弗林(Flynn)分类法,计算机系统可以分为4类:SISD计算机、(SIMD计算机)、(MISD计算机)和(MIMD计算机)。 2. 改进之后的冯?诺依曼计算机的只要特点是存储器为中心,总线结构,分散控制。 3. 当前计算机系统中的存储系统是一个层次结构,其各层分别为:(通用寄存器,高速缓存,主存,辅存,脱机大容量存储器)。 4.高速缓冲存储器的地址映象方式有三种,它们分别是:(全向量方式,直接相联方式,组相联方式)。 5.虚拟存储器的三种管理方式是(段式管理,页式管理和段页式管理)。 6.目前计算机中常用数据有(用户定义数据,系统数据和指令数据)三种类型。 7.通常可能出现的流水线的相关性有(资源相关,数据相关和控制相关)。 8.解决中断引起的流水线断流的方法有(不精确断点法和精确断点法)。 9.目前向量处理机的系统结构有两种:(存储器-存储器型和寄存器-寄存器型)。 10.通用计算机基本指令分为5类,它们分别是:(数据传送类,运算类,程序控制类,输入输出类,处理机控制和调试类)。 11.执行指令x1=x2+x3;x4=x1-x5会引起(RAW)类型的数据相关,执行指令x5=x4*x3;x4=x0+x6会引起(W AR)类型的数据相关,执行指令x6=x1+x2;x6=x4*x5会引起(WA W)类型的数据相关。 12.多计算机网络中,通常出现的4种通信模式是(单播模式,选播模式,广播模式和会议模式)。 13.传统的冯?诺依曼计算机是以控制驱动方式工作,以数据驱动方式工作的典型计算机是(数据流计算机),以需求驱动方式工作的典型计算机是(归约机),以模式匹配驱动方式工作的典型计算机是(人工智能计算机)。 二、名词解释(每题2分) 1.计算机体系结构: 计算机系统结构就是计算机的机器语言程序员或编译程序编写者所看到的外特性,是硬件子系统的概念结构及其功能特性。 2.系列机: 所谓系列机是指同一厂家生产的具有相同的系统结构,但采取了不同的组成和实现的技术方案,形成了不同型号的多种机型。 3.模拟: 模拟是指用软件的方法在一台计算机上,实现另一台计算机的指令系统,被模拟的机器是不存在的,称为虚拟机,执行模拟程序的机器称宿主机。 4.程序的局部性原理: 程序访问局部性原理说明了计算机在程序执行过程中呈现出的一种规律,即程序往往重

吉林大学计算机系统结构题目整合第五章

第五章存储层次 知识点汇总 存储器层次结构、存储层次性能参数(平均每位价格、命中率、平均访存时间)、存储层次4个问题、CPU 访存地址分割、全相联映像、直接映像、组相联映像、查找方法、替换算法(随机、先进先出、最近最少使用法)、写直达法、写回法、按写分配、不按写分配、Cache性能分析、3C失效(强制失效、容量失效、冲突失效)、Victim Cache、伪相联映像Cache、硬件预取、编译器优化(数组合并、内外循环交换、循环融合、分块)、写缓冲合并、单字宽存储器、多字宽存储器、多体交叉存储器、存储体、虚拟存储器(页式、段式)、快表(TLB) 简答题 1.单级存储器的主要矛盾是什么?通常采取什么方法来解决?(知识点:多级存储器) 答:主要矛盾: (1) 速度越快,每位价格就越高。 (2) 容量越大,每位价格就越低。 (3) 容量越大,速度越慢。 采取多级存储层次方法来解决。 2.“Cache-主存”和“主存-辅存”层次的主要区别是什么?(知识点:存储层次)

3.在存储层次中应解决哪四个问题?(知识点:存储层次的四个问题) 答:(1)映像规则:当把一个块调入高一层存储器时,可以放到哪些位置上。 (2)查找算法:当所要访问的块在高一层存储器中时,如何找到该块。 (3)替换算法:当发生失效时,应替换哪一块。 (4)写策略:当进行写访问时,应进行哪些操作。 4.地址映像方法有哪几种?它们各有什么优缺点?(知识点:地址映像) (1)全相联映像。实现查找的机制复杂,代价高,速度慢。Cache空间的利用率较高,块冲突概率较低,因而Cache的失效率也低。 (2)直接映像。实现查找的机制简单,速度快。Cache空间的利用率较低,块冲突概率较高,因而Cache 的失效率也高。 (3)组相联映像。组相联是直接映像和全相联的一种折中。 5.Cache的3C失效是哪三种失效?针对每种失效给出一种降低失效率的方法。(知识点:3C失效) 答:强制性失效、容量失效、冲突失效。 6.简述Cache的两种写策略(知识点:写直达、写回) 写直达法:执行“写”操作时,不仅写入Cache,而且也写入存储器

相关文档
最新文档