计算机系统结构计算题答案PPT课件
计算机系统结构习题解答
1. 假设一条指令的执行过程分为“取指令”、“分析”和“执行”三段;每一段的时间分别是△t 、2△t 和3△t..在下列各种情况下;分别写出连续执行n 条指令所需要的时间表达式.. ⑴ 顺序执行方式..⑵ 仅“取指令”和“执行”重叠.. ⑶ “取指令”、“分析”和“执行”重叠.. 答:⑴ 顺序执行方式12......12 12T =∑=++n1i i i i )t t t (执行分析取址=n △t +2△t +3△t =6n △t⑵ 仅“取指令”和“执行”重叠12......12 12T =6△t +∑=+1-n 1i i i )t t (执行分析=6△t +n-12△t +3△t =5n +1△t⑶ “取指令”、“分析”和“执行”重叠△2△t3△t△2△t3△t1 2 34......1 234 1234T =6△t +∑=1-n 1i i )t (执行=6△t +n-13△t =3n +3△t2. 一条线性流水线有4个功能段组成;每个功能段的延迟时间都相等;都为△t..开始5个任务;每间隔一个△t 向流水线输入一个任务;然后停顿2个△t;如此重复..求流水线的实际吞吐率、加速比和效率.. 答:1 2 3 4 5 6 7 8 9 10 11 12 13 14 15...1 2 3 4 56 7 8 9 1011 12 13 14 151 2 3 4 5 6 7 8 9 10 11 12 13 14 151 2 3 4 56 7 8 9 1011 12 13 14 151 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23我们可以看出;在7n+1Δt 的时间内;可以输出5n 个结果;如果指令的序列足够长n →∞;并且指令间不存在相关;那么;吞吐率可以认为满足:加速比为:从上面的时空图很容易看出;效率为:3. 用一条5个功能段的浮点加法器流水线计算∑==101i i A F ..每个功能段的延迟时间均相等;流水线的输出端与输入端之间有直接数据通路;而且设置有足够的缓冲寄存器..要求用尽可能短的时间完成计算;画出流水线时空图;计算流水线的实际吞吐率、加速比和效率..答:首先需要考虑的是“10个数的和最少需要做几次加法”;我们可以发现;加法的次数是不能减少的:9次;于是我们要尽可能快的完成任务;就只有考虑如何让流水线尽可能充满;这需要消除前后指令之间的相关..由于加法满足交换律和结合律;我们可以调整运算次序如以下的指令序列;我们把中间结果寄存器称为R;源操作数寄存器称为A;最后结果寄存器称为F;并假设源操作数已经在寄存器中;则指令如下:I1:R1←A1+A2I2:R2←A3+A4I3:R3←A5+A6I4:R4←A7+A8I5:R5←A9+A10I6:R6←R1+R2I7:R7←R3+R4I8:R8←R5+R6I9:F←R7+R8这并不是唯一可能的计算方法..假设功能段的延迟为Δt..时空图如下图中的数字是指令号:1234567891234567891234567891234567891 2 3 4 5 6 7891 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21整个计算过程需要21Δt;所以吞吐率为: 加速比为: 效率为:4. 一条线性静态多功能流水线由6个功能段组成;加法操作使用其中的1、2、3、6功能段;乘法操作使用其中的1、4、5、6功能段;每个功能段的延迟时间均相等..流水线的输出端与输入端之间有直接数据通路;而且设置有足够的缓冲寄存器..用这条流水线计算向量点积i 60i i b a B A ⨯=⨯∑=;画出流水线时空图;计算流水线的实际吞吐率、加速比和效率.. 答:我们安排运算次序如下:把中间结果寄存器称为R;源操作数寄存器称为A 、B;最后结果寄存器称为F;并假设源操作数已经在寄存器中;则指令如下:I1: R0←A0B0 I8: R7←R0+R1 I2: R1←A1B1 I9:R8←R2+R3I3: R2←A2B2 I10: R9←R4+R5 I4: R3←A3B3 I11: R10←R6+R7 I5: R4←A4B4 I12: R11←R8+R9 I6: R5←A5B5I13: F ←R10+R11I7: R6←A6B6假设功能段的延迟为Δt..时空图如下图中的数字是指令号:1 2 3 4 5 6 7 8 9 101112131 2 3 4 5 6 71 2 3 4 5 6 78 9 10 11 12138 9 1011 12131 2 3 4 5 6 78 9 10 11 12131 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 整个计算过程需要24Δt;所以吞吐率为: 加速比为: 效率为:5. 一条有三个功能段的流水线如下图..每个功能段的延迟时间均相等;都为△t..其中功能段S 2的输出要返回到它自己的输入端循环一次..⑴ 如果每间隔一个△t 向流水线的输入端连续输入新任务;问这条流水线会发生什么情况⑵ 求这条流水线能够正常工作的最大吞吐率、加速比和效率.. ⑶ 有什么办法能够提高这条流水线的吞吐率;画出新的流水线.. 答:△t △t △t⑴如果每间隔一个△t向流水线的输入端连续输入新任务;流水线S2功能段存在资源冲突..见下表:⑵每间隔两个△t向流水线的输入端连续输入新任务如见下表所示可获得最佳性能..我们可以看出:在2n+2Δt的时间内;可以输出n个结果;如果指令的序列足够长n→∞;并且指令间不存在相关;那么;吞吐率为:加速比为:效率为:⑶如要提高这条流水线的吞吐率;可采用:将功能段S2重复设置一次;见下图:6. 一条有4个功能段的非线性流水线;每个功能段的延迟时间都相等;都为20ns;它的预约表如下:⑴ 写出流水线的禁止向量和初始冲突向量.. ⑵ 画出调度流水线的状态图..⑶ 求流水线的最小启动循环和最小平均启动距离.. ⑷ 求平均启动距离最小的恒定循环.. ⑸ 求流水线的最大吞吐率..⑹ 按照最小启动循环连续输入10个任务;求流水线的实际吞吐率.. ⑺ 画出该流水线各功能段之间的连接图.. 答: ⑴禁止向量F=6;4;2;冲突向量C=101010..输入△t⑵⑶∴流水线的最小启动循环为:1;7或3;5或5;3;最小平均启动距离为4..⑷由上表可知:平均启动距离最小的恒定循环为5..⑸采用最小平均启动距离为4的最小启动循环可获得流水线的最大吞吐率;以1;7为例:其他类似;最大吞吐率皆相同当任务数为偶数2n 时: 当任务数为奇数2n+1时: ∴ 流水线的最大吞吐率为:)s /(M 5.12ns2041t 41任务=⨯=∆ ⑹10个任务的实际吞吐率:利用上式可得偶数个任务TP 10=1/4△t=12.5M 任务/s.. ⑺该流水线的连接图为:7.一条由4个功能段组成的非线性流水线的预约表如下;每个功能段的延迟时间都为10ns..47⑴ 写出流水线的禁止向量和初始冲突向量.. ⑵ 画出调度流水线的状态图..⑶ 求流水线的最小启动循环和最小平均启动距离..⑷ 在流水线中插入一个非计算延迟功能段后;求该流水线的最佳启动循环及其最小平均启动距离..⑸ 画出插入一个非计算延迟功能段后的流水线预约表5行8列.. ⑹ 画出插入一个非计算延迟功能段后的流水线状态变换图.. ⑺ 分别计算在插入一个非计算延迟功能段前、后的最大吞吐率.. ⑻ 如果连续输入10个任务;分别计算在插入一个非计算延迟功能段前、后的实际吞吐率.. 答: ⑴禁止向量F=5;2;1;冲突向量C=10011..⑵⑶i=466最小启动循环为3;最小平均启动距离为3..⑷插入一个非计算延迟功能段后;最小平均启动距离为2因为预约表中每行至多2个×;相应地可改进最小启动循环为2..⑸⑹流水线的禁止向量为1;3;7;流水线的冲突向量为1000101;流水线的状态图如下:6C0-C065C0-C2-C255;4C0-C2 4.55;6C0-C2 5.5流水线的最小启动循环为2;最小平均启动距离为2..⑺插入前:插入后:⑻连续输入10个任务;插入前的实际吞吐率为:连续输入10个任务;插入后的实际吞吐率为:8. 在流水线处理机中;有独立的加法操作部件和乘法操作部件各一个;加法操作部件为4段流水线;乘法操作部件6段流水线;都在第一段从通用寄存器读操作数;在最后一段把运算结果写到通用寄存器中..每段的时间长度都相等;都是一个时钟周期..每个时钟周期发出一条指令..问可能发生哪几种数据相关写出发生相关的指令序列;分析相关发生的原因;并给出解决相关的具体办法..答:可能的数据相关性有:⑴“先写后读”RAW相关Read After 加法写..原因:还没有写好就已经读取寄存器中的数据了..DADD R1;R2;R3 ;R2+R3→R1DSUB R4;R1;R5 ;R1-R5→R4Read After 乘法写..原因:还没有写好已经读取寄存器中的数据了..DMUL R1;R2;R3 ;R2×R3→R1DSUB R4;R1;R5 ;R1-R5→R4本相关在流水线顺序执行和乱序执行时都可能发生..解决的方法是:利用编译程序调整指令的次序方法;延迟执行是避免数据相关最简单的方法;建立寄存器之间的专用路径..⑵“写—写”WAW相关Write After 乘法写..原因:后写的反而早执行乘法所化的时间长;后面一个写任务反而先完成;使最后写入的内容不正确..DMUL R1;R2;R3 ;R2×R3→R1DSUB R1;R4;R5 ;R4-R5→R1本相关只有在流水线乱序执行时才可能发生..解决的方法是:寄存器换名..⑶“先读后写”WAR相关Write After 任何读..原因:前面的读操作因为某种原因被推迟;要读的内容被后面的写操作修改了..DSUB R4;R1;R5 ;R1-R5→R4DADD R1;R2;R3 ;R2+R3→R1本相关只有在流水线乱序执行时才可能发生..解决的方法是:寄存器换名..9. 在下列不同结构的处理机上运行8×8的矩阵乘法C=A×B;计算所需要的最短时间..只计算乘法指令和加法指令的执行时间;不计算取操作数、数据传送和程序控制等指令的执行时间..加法部件和乘法部件的延迟时间都是3个时钟周期;另外;加法指令和乘法指令还要经过一个“取指令”和“指令译码”的时钟周期;每个时钟周期为20ns;C 的初始值为“0”..各操作部件的输出端有直接数据通路连接到有关操作部件的输入端;在操作部件的输出端设置有足够容量的缓冲寄存器..⑴处理机内只有一个通用操作部件;采用顺序方式执行指令..⑵单流水线标量处理机;有一条两个功能的静态流水线;流水线每个功能段的延迟时间均为一个时钟周期;加法操作和乘法操作各经过3个功能段..⑶多操作部件处理机;处理机内有独立的乘法部件和加法部件;两个操作部件可以并行工作..只有一个指令流水线;操作部件不采用流水线结构..⑷单流水线标量处理机;处理机内有两条独立的操作流水线;流水线每个功能段的延迟时间均为一个时钟周期..⑸超标量处理机;每个时钟周期同时发射一条乘法指令和一条加法指令;处理机内有两条独立的操作流水线;流水线的每个功能段的延迟时间均为一个时钟周期..⑹超流水线处理机;把一个时钟周期分为两个流水级;加法部件和乘法部件的延迟时间都为6个流水级;每个时钟周期能够分时发射两条指令;即每个流水级能够发射一条指令..⑺超标量超流水线处理机;把一个时钟周期分为两个流水级;加法部件和乘法部件延迟时间都为6个流水级;每个流水级能够同时发射一条乘法指令和一条加法指令..答:要完成上面的矩阵乘法;需要完成的乘法数目为8×8×8=512次;需要完成的加法数目为8×8×7=448次;下面分析处理机的结构会给性能带来什么样的影响..⑴通用操作部件采用顺序方式执行顺序执行时;每个乘法和加法指令都需要5个时钟周期取指令、指令分析、指令执行;所以所需要的时间为:⑵单流水线标量处理机;有一条两个功能的静态流水线因为有足够的缓冲寄存器;所以我们可以首先把所有的乘法计算完;并通过调度使加法流水线不出现停顿;所以所需要的时间为:123456785135145155165175189639649659661=①+②、2=1+③、3=2+④、4=3+⑤、5=4+⑥、6=5+⑦、7=6+⑧⑶多操作部件处理机;只有一条指令流水线由于只有一条指令流水线;所以只能一个时钟周期发射一条指令;由于操作部件不采用流水线;对于结果C矩阵的第一个元素;首先执行2次乘法;然后乘法和加法并行执行7次;此时C矩阵的第一个元素出来了;然后加法运算停顿3个时钟周期;再开始与乘法并行执行运算7次;如此下去;直到C的64个元素都出来..故执行时间为:⑷单流水线标量处理机;处理机内有两条独立的操作流水线由于只有一条指令流水线;所以只能一个时钟周期发射一条指令;对于乘法运算不存在数据相关;对于加法运算有数据相关;由于存在足够的缓冲寄存器;我们可以通过合适的调度消除加法的数据相关..因此;最佳情况下的执行时间为:12345678910111213141516171819202122 1=①+②、2=1+③、3=2+④、4=3+⑤、5=4+⑥、6=5+⑦、7=6+⑧⑸超标量处理机同一时钟周期可以有一条乘法指令和一条加法指令同时发射;对于乘法运算不存在数据相关性;对于加法运算有数据相关性;由于存在足够的缓冲寄存器;当运算完所有的乘法运算后;还要做一次加法运算..因此执行时间为:12345678910111213141516171819202122 1=①+②、2=1+③、3=2+④、4=3+⑤、5=4+⑥、6=5+⑦、7=6+⑧⑹超流水线处理机每个时钟周期发射两条指令;加法部件和乘法部件都为6个流水级..事实上相当于将时钟周期变成了10ns;而加法和乘法流水线变成了6级..因此执行时间为:⑺超标量超流水线处理机一个时钟周期分为两个流水级;加法部件和乘法部件都为6个流水级;每个流水级能同时发射一条加法和一条乘法指令..综合⑸和⑹的分析;我们可以知道;执行时间为:。
计算机组成与系统结构教材习题参考答案(陈书开)
习题参考答案习题1参考答案1.6、计算题,解:假设某机器指令系统按指令周期长短分为4种,t 1=10ns ,t 2=15ns ,t 3=16ns ,t 4=20ns ,这4种指令在程序中出现的概率分别为ƒ1=20%,ƒ2=16%,ƒ3=40%,ƒ4=24%,计算出平均运算速度是多少MIPS ?解:由式(1.1)先计算出T m 。
m T =ini t fi ⨯∑=1=10×0.2+15×0.16+16×0.4+20×0.24=15.6 ns由式(1.2)求得平均运算速度为V m =1/T m =1/(15.6×10-9)=64.10(MIPS )习题2参考答案2、11010111,327,D73、12.5,28.875,205.43754、原码:-127~+127;补码:-128~+127;反码:-127~+127。
7、0.1110,1.00101,1.01110 8、0.1101,-0.0001,-0.1111 9、10101101,00010011 10、[x]补 =a 0.a 1a 2…a 6 解法一、(1)若a 0=0, 则x>0, 满足x>-0.5,此时a 1…a 6可任意 (2)若a 0=1, 则x<=0,要满足x>-0.5, 需a 1=1 即a 0=1, a 1=1, a 2…a 6有一个不为0 解法二、-0.5=-0.1(2)=-0.100000=1,100000 (1)若x>=0, 则a 0=0, a 1…a 6任意即可 [x]补=x=a 0.a 1a 2…a 6 (2)若x<0,则x>-0.5只需-x<0.5,-x>0[x]补=-x,[0.5]补=01000000 即[-x]补<01000000即a 0a 1=11,a 2…a 6不全为0或至少有一个为1(但不是“其余取0”)11.字长32位浮点数,阶码10位,用移码表示,尾数22位,用补码表示,基为2,(1)最大的二进制数表示 E=111111111Ms = 0, M = 11…1(全1) 表示为: 11…1 011…1 10个 21个即:(2)最小的二进制数E=111111111Ms=1,M=00…0(全0)(注意:用10….0来表示尾数-1)表示为: 11...1 100 010个 21个即:(3)规格化范围正数最大 E = 11…1,M = 11…1,Ms = 010个 21个即:正数最小 E = 00…0,M=100…0, Ms = 010个 20个即:负数最大 E = 00…0,M = 011…1, Ms = 110个 20个(最接近0的负数)即:负数最小 E = 11…1, M = 00…0, Ms =1,即:10个 21个规格化所表示的范围用集合表示为:[ , ][,](4)最接近于0的正规格化数、负规格化数(由上题可得出)正规格化数 E = 00…0, M = 100…0, Ms = 0,即10个 20个负规格化数 E = 00…0, M = 011…1, Ms = 1,即10个20个12、假设浮点数格式如下:(1)阶码补码: 1 11尾数补码:0 1101 1000机器数:1110 1101 1000(2)阶码补码: 1 11尾数补码: 1 0010 1000机器数:1110 0010 100013、(1) 1 (2) 014、需5个检验位。
计算机系统结构课件
2.1.1.1 浮点数的组成 浮点数的组成与人们通常所说的“科学记数法”非常相似,唯一不同的是各部分 均为有限位数,如下所示
它的主要参数有8个:
m ── 尾数,一般为纯小数,符合规格化原则(即最高位的绝对值不为0), 用原码或补码表示;
e ── 阶码,整数,常用移码表示(见下文解释);
= 1.25×80%×ICA×1.1×CYCLEA = 1.1×ICA×CYCLEA < Te_A 这时B机器快一些。
Sn
• 题12 (P33)
20
Amdahl定律公式,代入已知量
Se=20变成一元函数
10.5
Sn=20/(20-19Fe)
用三点作图法作出关系曲线。
1.8
1
0
0.5
2001.9.1
计算机系统结构
•
= 1.25×80%×ICA×1.25×CYCLEA
•
= 1.25×ICA×CYCLEA > Te_A
• 显然A机器快一些。
2001.9.1
计算机系统结构
17
例题选讲(5)
• 例1.5(P12) Te公式,改动上题中CYCLEB =1.1 ×CYCLEA,则最后
Te_B = 1.25×ICB ×CYCLEB
汇编语言机器
汇编语言程序员 (使用汇编语言)
(经汇编程序翻译成机器语言、操作系统原语)
操作系统语言机器 操作系统用户 (使用操作系统原语)
(经原语解释子程序翻译成机器语言)
传统机器语言机器 传统机器程序员(使用二进制机器语言)
(由微程序解释成微指令序列)
微指令语言机器 微指令程序员 (使用微指令语言)
计算机系统结构(第2版(课后习题答案
word 文档下载后可自由复制编辑你计算机系统结构清华第 2 版习题解答word 文档下载后可自由复制编辑1 目录1.1 第一章(P33)1.7-1.9 (透明性概念),1.12-1.18 (Amdahl定律),1.19、1.21 、1.24 (CPI/MIPS)1.2 第二章(P124)2.3 、2.5 、2.6 (浮点数性能),2.13 、2.15 (指令编码)1.3 第三章(P202)3.3 (存储层次性能), 3.5 (并行主存系统),3.15-3.15 加 1 题(堆栈模拟),3.19 中(3)(4)(6)(8)问(地址映象/ 替换算法-- 实存状况图)word 文档下载后可自由复制编辑1.4 第四章(P250)4.5 (中断屏蔽字表/中断过程示意图),4.8 (通道流量计算/通道时间图)1.5 第五章(P343)5.9 (流水线性能/ 时空图),5.15 (2种调度算法)1.6 第六章(P391)6.6 (向量流水时间计算),6.10 (Amdahl定律/MFLOPS)1.7 第七章(P446)7.3 、7.29(互连函数计算),7.6-7.14 (互连网性质),7.4 、7.5 、7.26(多级网寻径算法),word 文档下载后可自由复制编辑7.27 (寻径/ 选播算法)1.8 第八章(P498)8.12 ( SISD/SIMD 算法)1.9 第九章(P562)9.18 ( SISD/多功能部件/SIMD/MIMD 算法)(注:每章可选1-2 个主要知识点,每个知识点可只选 1 题。
有下划线者为推荐的主要知识点。
)word 文档 下载后可自由复制编辑2 例 , 习题2.1 第一章 (P33)例 1.1,p10假设将某系统的某一部件的处理速度加快到 10倍 ,但该部件的原处理时间仅为整个运行时间的40%,则采用加快措施后能使整个系统的性能提高多少?解:由题意可知: Fe=0.4, Se=10,根据 Amdahl 定律S n To T n1 (1Fe )S n 1 10.6 0.4100.64 Fe Se 1.56word 文档 下载后可自由复制编辑例 1.2,p10采用哪种实现技术来求浮点数平方根 FPSQR 的操作对系统的性能影响较大。
第一章计算机系统结构习题PPT
计算机系统结构习题
【例3】假设高速缓存Cache的工作速度为主存的5倍,且
Cache被访问命中的概率为90%,那么,采用Cache后能使整
假设4个程序都分别执行100*106条指令,计算这4个程序 分别在计算机A、B、C上执行的MIPS。根据这些速率值,你 能否直接评价这3台计算机相对性能的优劣?如果不能,你能 否找到一种方法对3台计算机的相对性能进行排序?
计算机系统结构习题分析
• 1-6 【分析】 所谓透明就是看不到,不属于其管理的部分 。对计算机系统结构是否是透明,首先要弄清楚教材有关 计算机系统结构的定义和所包含的属性内容。简单来说, 凡是编写机器语言和汇编语言程序要用到的数据表示、指 令系统、寻址方式、寄存器组织、机器级I/O结构、存贮 容量及其编址方式、中断机构、系统管态和目态间的切换 、信息保护方式和机构等对计算机系统结构都是不透明的 。而全部由硬件实现,或是在机器语言、汇编语言编程中 不会出现和不需要了解的部分,以及只影响机器的速度和 价格的逻辑实现(计算机组成)和物理实现(计算机实现 )的那些部分,对计算机系统结构都是透明的。
概论
• 2.目的 • 通过对本课程的学习,使我们能进一步树立和 加深对计算机系统的整体概念,特别着眼于正确 掌握有关计算机系统结构的基本概念、基本原理 ,了解目前采用的比较成熟的基本结构,掌握结 构设计的基本思想和方法,提高分析问题和解决 问题的能力。同时,通过对本课程的学习,了解 到近20年里,在并行处理和系统结构技术上的一 些重要进展及今后可能的发展趋势。
第2章计算机系统结构PPT课件
(2)I/O中断
中央处理器按程序规定的顺序执行指令,当中央处理器执 行到一条“启动外设(启动I/O)”指令时,就按指令中给定的 参数启动指定的设备,并把设备的控制权交给输入输出控制系 统。由输入/输出控制系统控制外围设备与主存储器之间的信息 传送,外围设备独立工作,不再需要中央处理器的干预,于是 中央处理器可以继续执行其他程序。(中央处理器和外设便可 以并行工作)
2.2.1 计算机系统的硬件环境之并行工作
1、CPU与外设并行工作的I/O中断(P17) 在现代通用计算机系统中,输入/输出控制系统负责完成外围设备与
主存储器之间的信息传送。 (1)CPU与外设并行工作
各种外设连接到相应的设备控制器上,通过通道把设备控制器连接 到公共的系统总线上,这种结构允许CPU与外设并行工作。
这些寄存器都是处理器的工作寄存器,当处理器执行程序时, 每次从主存储器中读出一条指令,并把它存入“指令寄存器”中, 然后分析指令,根据指令中指定的地址,从主存储器读出操作数, 存入“通用寄存器”,根据指令中的操作码,对操作数进行运算, 并将所得的结果或暂存在通用寄存器中或存储到主存储器中,利用 控制寄存器来保证各程序交替占用处理器时能正确执行,保证系统 安全。
但由于外围设备是由中央处理器根据程序的要求而启动的, 故当外围设备工作结束后,应反馈该设备的工作情况,形成一 个“输入/输出操作结束的事件”,由中断完成,硬件识别该事 件后就急触发一个I/O中断,并暂停当前占用中央处理器的程序 的执行,让操作系统的处理程序来处理这个“输入/输出操作结 束”事件,操作系统进行分析后就可以知道该外围设备的工作 情况,从而确定启动该外围设备的程序的工作状态。
▪ 如果没有找到,就从主存中读取,同时把这个数据复制到高速 缓存中
计算机系统结构习题答案(李学干)
计算机系统结构习题解答第一章习题一1.2一台经解释实现的计算机,可以按照功能划分成4级。
每一级为了执行一条指令需要下一级的N条指令解释。
若执行第1级的一条指令需K纳秒时间,那么执行第2、3、4级的一条指令个需要多少时间?解:①分析:计算机按功能分级时,最底层的为第1级。
向上一次是第2 、3、4级。
解释执行是在低级机器级上,用它的一串指令或语句来解释执行高一级上的一条指令的功能。
是逐条解释的。
②解答:执行第2、3、4级的一条指令各需KNns,KN2ns,KN3ns的时间。
1.3操作系统机器级的某些指令就用传统机器级的指令,这些指令可以用微程序直接实现,而不由操作系统自己来实现。
根据你对习题1.2的回答,你认为这样做有哪两个好处?答:可以加快操作系统操作命令解释的速度。
同时也节省了存放解释操作命令这部分解释程序所占用的空间。
简化了操作系统机器级的设计。
也有利于减少传统机器级的指令条数。
1.5硬件和软件在什么意义上是等效的?在什么意义上是不等效的?试举例说明。
答:硬件和软件在逻辑意义上是等效的。
在物理意义上是不等效的。
①在原理上,用硬件或固件实现的功能完全可以用软件来完成。
用软件实现的功能也可以用硬件或固件来完成。
功能一样。
②只是反映在速度、价格、实现的难易程度上,这两者是不同的。
性能不同。
③例如,浮点运算在80386以前一直是用软件实现的。
到了80486,将浮点运算器集成到了CPU中,可以直接通过浮点运算指令用硬件实现。
但速度却高的多。
1.9下列哪些对系统程序员是透明的?哪些对应用程序员是透明的?系列机各档不同的数据通路宽度;虚拟存储器;Cache存储器;程序状态字;“启动I/O”指令;“执行”指令;指令缓冲器。
答:①对系统程序员和应用程序员均透明的:是全用硬件实现的计算机组成所包含的方面。
有:数据通路宽度、Cache存储器、指令缓冲器。
②仅对应用程序员透明的:是一些软硬件结合实现的功能。
有:虚拟存储器、程序状态字、“启动I/O”指令。
计算机系统结构 第一章 计算机系统结构的基础知识PPT课件
总结说明:
➢各个层之间通过翻译或解释实现的,翻译是指通过编译 器把高一级的语言程序转换成低一级的等效的语言程序, 并运行。
➢物理机
➢虚拟机是用软件实现的,但不一定完全用软件,也可以 用硬件加固件来实现。固件是指具有软件功能的硬件。
1.1.2计算机系统结构定义
1.计算机系统结构定义一:
➢ 系统结构:程序设计者所看到的一个计算机系统的属性, 即概念性结构和功能特性。Amdahl(阿姆达尔)等人于 1964年提出的。
第 6级:应用程序 第 5级:高级语言 第 4级:汇编语言 第 3级:操作系统 第 2级:机器语言 第 1级:微程序 第 0级:硬联逻辑
应用软件 系统软件 软硬件分界 硬件
第0级机器由硬件实现是 机器的硬件内核 第1级机器由微程序(固 件)实现,它根据各种指 令操作所需要的控制时序 吗,配备一套微指令,编 写出微程序,控制信息在 各寄存器之间的传送。
1.1.4.1弗林(Flynn)分类法 1.1.4.2冯氏分类法 1.1.4.3汉德勒(Händler)分类法
1.1.4.1 弗林(Flynn)分类法
弗林(Flynn)分类法按照指令流(Instruction stream,IS) 和数 据流(Data stream,DS)的多倍性进行分类。
指令流:计算机执行的指令序列。 数据流:由指令流调用的数据系列。 多倍性:在系统最受限的部件上,同n)分类法把计算机系统结构分为以下四类: 1.单指令流单数据流SISD(Single IS Single DS) 2.单指令流多数据流SIMD(Single IS Multiple DS) 3.多指令流单数据流MISD(Multiple IS Single DS) 4.多指令流多数据流MIMD(Multiple IS Multiple DS)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第1章
作1.2 如有一个经解释实现的计算机,可以按功 能划分成4级。每一级为了执行一条指令需要 下一级的N条指令解释。若执行第一级的一条 指令需K(ns)时间,那么执行第2、3、4级的一 条指令各需要用多少时间(ns)?
∵第二级的一条指令需第1级的N条指令解释 ∴第二级的一条指令执行时间为NKns; 第三级的一条指令执行时间为N2Kns; 第四级的一条指令执行时间为N3Kns。
f new CPI new106
30106 1.9106
15.79
改进后性能提高情况可用CPU时间之比表示:
TCPU (old )
/ TCPU (new)
CPIoldI N CPInewI N
/ /
f old f new
1.58
作1.15 假定利用增加向量模块来提高计算机的运 算速度。计算机处理向量的速度比其通常的运 算要快20倍,将可用向量处理部分所花费的时 间占总时间的百分比称为可向量化百分比。
分析:有关系统结构属性所包括的内容,对系统结构 都不透明。
• 对于计算机系统结构透明的是:存储器的模m交 叉存取、数据总线宽度、阵列运算部件、通道是 采用结合型还是独立型、PDP-11系列的单总线结 构、串行、重叠还是流水控制方式、Cache存储 器。
• 对于计算机系统结构不透明的是:浮点数据表示、
1 0.28
3.57
作1.11 某工作站采用时钟频率为15MHz、处理速率为 10MIPS的处理机来执行一个巳知混合程序。假定每次 存储器存取为1周期延迟、试问:
(1) 此计算机的有效CPI是多少? (2) 假定将处理机的时钟提高到30MHz,但存储器子
系统速率不变。这样,每次存储器存取需要两个时钟 周期。如果30%指令每条只需要一次存储存取,而另 外5%每条需要两次存储存取,还假定已知混合程序 的指令数不变,并与原工作站兼容,试求改进后的处 理机性能。
本题有两个问题应特别注意:第一个问题是“上 一级”与“下一级”的关系,即哪是上一级,哪 是下一级?在图1.1中第3级是第2级的“上一级”, 第1级又是第2级的“下一级”。第二个问题是该 计算机是一个“经解释实现的计算机”,上一级 的程序在下一级上实现不是经翻译完成,只能是 解释。
上级 下级
第4级 第3级 第2级 第1级
SP
Te To
1 (1 0.6) 0.4 /10
1 0.64
1.56
作1.13 假设高速缓存Cache工作速度为主存 的5倍,且Cache被访问命中的概率为90%, 则采用Cache后,能使整个存储系统获得多高 的加速比?
解:fe=0.9 ,re=5
SP
Te To
1 (1 0.9) 0.9 / 5
一条指令 N条指令解释 N2条指令解释 N3条指令解释
作1.3 有一个计算机系统可按功能划分成4级,各级的 指令都不相同,每一级的指令都比其下一圾的指令在 效能上强M倍,即第i级的一条指令能完成第i-1级的M 条指令的计算量。现若需第i级的N条指令解释第i+1级 的一条指令,而有一段第1级的程序需要运行Ks,问在 第2、3和4级上的一段等效程序各需要运行多长时间 (s)?
解
(1)
CPI old
f old MIPS 106
15 106 10106
1.5
(2) 依题意可知:30%的指令需要一次存储存取,则 这些指令在处理器提高时钟频率之后需要增加1个时 钟周期;另外5%的指令需要增加2个时钟周期。
CPInew CPIold 30%1 5%2 1.9
MIPSnew
(1)求出加速比S和向量化百分比之间的关系式。
(2)当要得到加速比为2时的可向量化百分比F为 多少?
(3)为了获得在向量模式所得到的最大加速比的 一半,可向量化百分比F为多少?
(2) 由(1)式有
解(1): S 由Amdahl定律知(1
1
F) (F / 20)
Hale Waihona Puke 2020 19* F(1)
2
1
(1 F ) ( F / 20)
解:
Sp
(1
fe1
1 fe2 ) fe1
/ re1
fe1
/
re1
例1.2 用一台4OMHz处理机执行标准测试程序,
它含的混合指令数和相应所需的时钟周期数如 下:
指令类型
指令条数
时钟周期数
整数运算
45000
1
数据传送
F 10 0.53 19
(3) 由题意可知
10
1
(1 F ) ( F / 20)
F 18 0.95 19
题1.1 某计算机系统同时采用两种措施改进性能, 使得两个功能部件的性能分别提高到原来的re1 倍和re2 ,这两个部件在运行时使用的时间比例 分别为fe1和fe2 。试分析系统性能提高的总体加 速比。
答:对机器语言程序员透明,指的是这些器件是 机器语言程序员不可修改、不可控制。因此指令 缓冲器,时标发生器,乘法器,先行进位链,移 位器。
作1.6 什么是透明性概念?对计算机系统结构,下列 哪些是透明的?哪些是不透明的?
存贮器的模m交叉存取;浮点数据表示;I/O系统 是采用通道方式还是外围处理机方式;数据总线宽 度;字符行运算指令;阵列运算部件;通道是采用 结合型的还是独立型的;PDP一1l系列中的单总线结 构;访问方式保护;程序性中断;串行、重叠还是 流水控制方式;堆栈指令;存贮嚣最小编址单位; Cache存贮器。
I/O系统是采用通道方式还是外围处理机方式、字 符型运算指令、访问方式保护、程序性中断、堆 栈指令、存储器最小编址单位。
例1.1 假设将某系统的某一部件的处理速度加 快到10倍,但该部件的原处理时间仅为整 个运行时间的40%,则采用加快措施后能使 整个系统的性能提高多少?
解:由题意可知 fe=0.4, re=10, 根据Amdahl定律
解:
第2级上的一段等效程序运行时间为:
N M
K (s)
第3级上的一段等效程序运行时间为:(
N M
)2
K
(
s)
第4级上的一段等效程序运行时间为:( N )3 K (s)
M
作1.7 从机器(汇编)语言程序员看,哪些对应 用程序员透明?
指令地址寄存器,指令缓冲器,时标发生器,条 件码寄存器,乘法器,主存地址寄存器,磁盘外 设,先行进位链,移位器,通用寄存器,中断字 寄存器。