计算机体系结构王志英(第二版第三章)课后答案

在一台单流水线多操作部件的处理机上执行下面的程序,取指令、指令译码各需要一个时钟周期,MOVE、ADD和MUL操作分别需要2个、3个和4个时钟周期,每个操作都在第一个时钟周期从通用寄存器中读操作数,在最后一个时钟周期把运算结果写到通用寄存器中。

K:MOVE  R1,R0 ;R1← (R0)
K+1:MUL  R0,R2,R1R0← (R2)×(R1)
K+2:ADD  R0,R2,R3R0← (R2)+(R3)

就程序本身而言,可能有哪几种数据相关?

  就程序本身而言,可能有三种数据相关。若3条指令顺序流动,则k指令对R1寄存器的写与k+1指令对R1寄存器的读形成的“先写后读”相关。若3条指令异步流动,则k指令对R0寄存器的读与k+1指令对R0寄存器的写形成的“先读后写”相关,k+2指令对R0寄存器的写与k+1指令对R0寄存器的写形成的“写一写”相关。

在程序实际执行过程中,哪几种数据相关会引起流水线停顿?

  在程序实际执行过程中,二种数据相关会引起流水线停顿。一是“ 先写后读 ”相关,k指令对R1的写在程序执行开始后的第四个时钟:k+1指令对R1的读对指令本身是第三个时钟,但k+1指令比k指令晚一个时钟进入流水线,则在程序执行开始后的第四个时钟要读R1。不能在同一时钟周期内读写同一寄存器,因此k+1指令应推迟一个时钟进入流水线,产生了流水线停顿。二是“写后写”相关,k+1指令对R0的写对指令本身是第六个时钟,而要求该指令进入流水线应在程序执行开始后的第三个时钟,所以对R0的写是在程序执行开始后的第八个时钟。k+2指令对R0的写对指令本身是第五个时钟,而k+2指令比k+1指令晚一个时钟进入流水线,则在程序执行开始后的第四个时钟,所以对R0的写是在程序执行开始后的第八个时钟。不能在同一时钟周期内写写同一寄存器,因此k+2指令应推迟一个时钟进入流线,产生了流水线停顿。另外,可分析“先读后写”相关不会产生流水线的停顿。

画出指令执行过程的流水线时空图,并计算完成这3条指令共需要多少个时钟周期?

  由题意可认位该指令流水线由六个功能段取指、译码、取数、运一、运二和存数等组成,则程序指令执行过程的流水线时空图如下图所示。若3条指令顺序流动,共需要9个时钟周期。

在这里插入图片描述

  • 3
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
1.1名词解释: 1.层次结构——计算机系统可以按语言的功能划分为多级层次结构,每一层以不同的语 言为特征。 计算机系统结构(第三版)张晨曦 课后答案 2.翻译——(基于层次结构)先把N+1级程序全部变换成N级程序之后,再去执行N 级程序,在执行过程中,N+1级程序不再被访问。 3.解释——每当一条N+1级指令被译码后,就直接去执行一串等效的N级指令,然后 再去取下一条N+1级指令,依此重复执行。 4.体系结构——程序员所看到的计算机的属性,即概念性结构与功能特性。 5.透明性——在计算机技术中,对本来存在的事物或属性,从某一角度来看又好像不存 在的概念称为透明性。 6.系列机——在一个厂家生产的具有相同的体系结构,但具有不同的组成和实现的一系 列不同型号的机器。 7.软件兼容——同一个软件可以不加修改地运行于体系结构相同的各档机器上,而且它 们所获得的结果一样,差别只在于运行的时间不同。 8.兼容机——不同厂家生产的、具有相同体系结构的计算机。9.计算机组成——计算机体系结构的逻辑实现。10.计算机实现——计算机组成的物理实现。 11.存储程序计算机(冯·诺依曼结构)——采用存储程序原理,将程序和数据存放在同 一存储器中。指令在存储器中按其执行顺序存储,由指令计数器指明每条指令所在的单元地址。 12.并行性——在同一时刻或同一时间间隔内完成两种或两种以上性质相同或不同的工 作。 13.时间重叠——在并行性中引入时间因素,即多个处理过程在时间上相互错开,轮流重 叠地使用同一套硬件设备的各个部分,以加快硬件周转而赢得速度。 14.资源重复——在并行性中引入时间因素,是根据“以数量取胜”的原则,通过重复设

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值