77范文网 - 专业文章范例文档资料分享平台

计算机组织与系统结构第六章习题答案(2)

来源:网络收集 时间:2018-11-29 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:或QQ: 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

6. 假定图6.24单周期数据通路对应的控制逻辑发生错误,使得在任何情况下控制信号RegWr、

RegDst、Branch、MemWr、ExtOp、R-type总是为0,则哪些指令不能正确执行?为什么?

参考答案: RegWr 总是0 则所有需写结果到寄存器的指令(如:R-Type指令、load指令等)都不能正确执行,因为寄存器不发生写操作 RegDst Branch MemWr ExtOp

7. 假定图6.24单周期数据通路对应的控制逻辑发生错误,使得在任何情况下控制信号RegWr、

RegDst、Branch、MemWr、ExtOp、R-type总是为1,则哪些指令不能正确执行?为什么? 参考答案:见第6题的表格.

? 161 ?

总是1 不需写结果到寄存器的指令可能会出错(如store,分支,转移指令等) 则所有R-Type指令都不能正确执行,因为目的寄存器指定错误 Branch指令可能出错,因为永远不会发生转移 Store指令不能正确执行,因为存储器不能写入所需数据 需要符号扩展的指令(如Beq、lw/sw,addiu等)发生错误 所有非R-Type指令都不能正确执行 非Branch指令都出错,因为下条指令的地址计算错误 非Store指令都会出错,因为存储器内会写入错误数据 必须0扩展的指令会出错(比如ori)

8. 在MIPS指令集中需要增加一条swap指令,可以使用软件方式用若干条已有指令来实现伪

指令,也可以通过改动硬件来实现。

(1)写出用伪指令方式实现“swap $rs, $rt”时的指令序列

(2)假定用硬件实现时会使一条指令的执行时间增加10%,则swap指令在程序中占多大的比例才值得用硬件方式来实现? 参考答案:

(1) swap指令可用以下三条指令实现。

xor $rs, $rs, $rt

xor $rt, $rs, $rt xor $rs, $rs, $rt

(若使用额外寄存器$rtemp,则$rtemp内容会被破坏,所以伪指令一般不能用额外寄存器)

add $rtemp, $rs, $zero add $rs, $rt, $zero add $rt, $rtemp, $zero

(若使用加减法,,可能溢出。如使用无符号数加减法addu,subu也可以)

add $rs, $rs, $rt sub $rt, $rs, $rt add $rs, $rs, $rt

(2)假定该指令占x%,其他指令占(1-x)%

则用硬件实现该指令时, 程序执行时间为原来的1.1*(x+1-x) =1.1 倍 用软件实现该指令时,程序执行时间为原来的3x+1-x =(2x+1)倍 当1.1 < 2x+1 时,硬件实现才有意义 由此可知,x > 5%

? 162 ?

9. 假定图6.33多周期数据通路对应的控制逻辑发生错误,使得在任何情况下控制信号PCWr、

IRWr、RegWr、BrWr、PCSource、MemWr、MemtoReg、PCWrCond、R-type总是为0,则哪些指令不能正确执行?为什么? 参考答案:

若PCWr=0,则所有指令都不正确,因为无法更新PC

若IRWr=0,则所有指令都不能正确执行,因为IR中不能写入指令

若RegWr=0,则所有需要写结果到寄存器的指令(如:R-Type指令、load指令等)都 不能正确执行,因为寄存器不发生写操作

若BrWr=0,则Branch指令不能正确执行,因为投机计算的分支地址无法送入寄存器 若PCSource=00,则除j之外的其他指令都不能正确得到下条指令地址 若MemWr=0,则Store指令不能正确执行,因为存储器不能写入数据 若MemtoReg=0,则所有Load指令执行错误,因为寄存器写入的是ALU输出 若PCWrCond=0,则Branch指令不能正确执行,因为不能写入转移目标地址到PC

若R-type=0,则所有R-type指令的执行可能出错

10. 假定P.185图6.32多周期数据通路对应的控制逻辑发生错误,使得在任何情况下控制信号

PCWr、IRWr、RegWr、BrWr、PCSource、MemWr、MemtoReg、PCWrCond、R-type总是为1,则哪些指令不能正确执行?为什么? 参考答案:

若PCWr=1,则程序执行顺序失控,因为每个时钟都会更新PC

若IRWr=1,则所有指令都可能不能正确执行,因为写入IR的可能不是当前指令

若RegWr=1,则所有不需写结果到寄存器的指令(如:sw、beq等)都不能正确执行 若BrWr=1,则Branch指令不能正确执行,因为运算阶段的ALU输出也会放入寄存器,成为错误的分支转移目标地址。

若PCSource=01,则j和Branch指令不能正确得到下条指令地址 若MemWr=1,则除Store指令外的所有指令都不能正确执行 若MemtoReg=1,则除Load外的所有指令执行错误

若PCWrCond=1,则除Branch外的其他指令可能不能正确执行

若R-type=1,则所有非R-type指令的执行可能出错

? 163 ?

12. 假定某计算机字长16位,标志寄存器Flag中的ZF、NF和VF分别是零、负和溢出标志,采

用双字节定长指令字。假定Bgt (大于零转移) 指令的第一个字节指明操作码和寻址方式,第二个字节为偏移地址Imm8,其功能是:

若(ZF+(NF⊕VF)=0) 则 PC=PC+2+Imm8 否则 PC=PC+2 (1) 该计算机的编址单位是什么? (2) 画出实现Bgt指令的数据通路。 参考答案:

(1)该计算机的编址单位是字节。

因为PC的增量是2,且每条指令占2个字节,所以编址单位是字节。 (2)实现Bgt指令的数据通路如下

根据“大于”条件判断表达式,可以看出该bgt指令实现的是带符号整数比较。因为无符号数比较时,其判断表达式中没有溢出标志OF。偏移地址Imm8为补码表示,转移目标地址可能在bgt指令之前,也可能在bgt指令之后。计算转移目标地址时,偏移量为Imm8, 范围为-128~127,故转移目标地址的范围是PC+2+(-128)~PC+2+127

如果偏移量为Imm8x2, 转移目标地址的范围是PC+2+(-128×2)~PC+2+127×2,其实意味着相对于bgt指令的前127条指令到后128条指令之间。

IR

OP MOD Imm8 PC +2 ZF NF VF 1 0 Bgt

? 164 ?

13. 对于多周期MIPS处理器,假定将访问数据的过程分成两个时钟周期可使时钟频率从

4.8GHz提高到5.6GHz,但会使得lw和sw指令增加时钟周期数。已知基准程序CPUint 2000中各类指令的频率为:Load: 25%,Store: 10%,Branch: 11%,Jump: 2%,ALU: 52%。以基准程序CPUint 2000为标准计算时钟频率提高后处理器的性能提高了多少?若将取指令过程再分成两个时钟周期,则可进一步使时钟频率提高到6.4GHz,此时,时钟频率的提高是否也能带来处理器性能的提高?为什么? 参考答案:

三种频率的机器上,各类指令的百分比和 CPI M1 4.8GHz M2 5.6GHz M3 6.4GHz

三种机器的平均CPI和MIPS

CPIofM1=25%x5+10%x4+11%x3+2%x3+52%x4=4.12 CPIofM2=25%x6+10%x5+11%x3+2%x3+52%x4=4.47 CPIofM3=25%x7+10%x6+11%x4+2%x4+52%x5=5.47

MIPSofM1=4.8G / 4.12 =1165 MIPSofM2=5.6G / 4.47 = 1253 MIPSofM3=6.4 G / 5.47 = 1170

由此可见,数据存取改为双周期的做法效果较好。进一步把取指令改为双周期的做法反而使MIPS数变小了,所以不可取。因为数据存取只涉及到load/Store指令,而指令存取涉及到所有指令,使得CPI显著提高。

Load 25% 5 6 7 Store 10% 4 5 6 Branch 11% 3 3 4 Jump 2% 3 3 4 ALU 52% 4 4 5

? 165 ?

百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库计算机组织与系统结构第六章习题答案(2)在线全文阅读。

计算机组织与系统结构第六章习题答案(2).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.77cn.com.cn/wenku/zonghe/323080.html(转载请注明文章来源)
Copyright © 2008-2022 免费范文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ: 邮箱:tiandhx2@hotmail.com
苏ICP备16052595号-18
× 注册会员免费下载(下载后可以自由复制和排版)
注册会员下载
全站内容免费自由复制
注册会员下载
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: