当前位置: 首页 > news >正文

计算机体系结构作业2

1

P108
有一条动态多功能流水线由5段组成(如图3.35所示),加法用1、3、4、5段,乘法用1、2、5段,第2段的时间为2△t,其余各段的时间均为△t,而且流水线的输出可以直接返回输入端或暂存于相应的流水寄存器中。若在该流水线上计算 ∑ i 4 ( A i × B i ) \sum_i^4(A_i×B_i) i4(Ai×Bi),试计算其吞吐率、加速比和效率。
在这里插入图片描述

解:首先以表格形式给出时空图
计算过程为先计算所有乘法,再计算 A 1 × B 1 + A 2 × B 2 A_1\times B_1 + A_2\times B_2 A1×B1+A2×B2,再计算 A 3 × B 3 + A 4 × B 4 A_3 \times B_3 + A_4 \times B_4 A3×B3+A4×B4,最后相加

时钟周期123456789101112131415161718
段1 × \times × × \times × × \times × × \times × + + + + + + + + +
段2 × \times × × \times × × \times × × \times × × \times × × \times × × \times × × \times ×
段3 + + + + + + + + +
段4 + + + + + + + + +
段5 × \times × × \times × × \times × × \times × + + + + + + + + +

总共18个 Δ t \Delta t Δt,输出了7个结果,故吞吐率为 7 18 = 0.389 \frac{7}{18} = 0.389 187=0.389
不用流水线,需要 4 × ( 1 + 2 + 1 ) + 3 × ( 1 + 1 + 1 + 1 ) = 28 Δ t 4 \times(1+2+1) + 3 \times(1 + 1 + 1 + 1) = 28 \Delta t 4×(1+2+1)+3×(1+1+1+1)=28Δt,故加速比为 28 18 = 1.56 \frac{28}{18} = 1.56 1828=1.56
效率为加速比/流水线段数 = 0.312

2

有一个 5 段流水线,各段执行时间均为 Δ t \Delta t Δt,其预约表如下:
在这里插入图片描述

(1)画出流水线任务调度的状态转移图。
(2)分别求出允许不等时间间隔调度和等时间间隔调度的两种最优调度策略,计算这两种调度策略的流水线最大吞吐率。
(3)若连续输入10个任务,分别求采用这两种调度策略的流水线的实际吞吐率和加速比?

解:
(1) 禁止表 F = { 6 , 3 , 1 , 3 , 1 } = { 1 , 3 , 6 } F = \{6, 3, 1, 3, 1\} = \{1, 3, 6\} F={6,3,1,3,1}={1,3,6}
所以冲突向量为 C = 100101 C = 100101 C=100101
状态转移图如下:
外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

(2)

  • 等时间间隔:只有 (5),故吞吐率为 1 5 = 0.2 \frac{1}{5} = 0.2 51=0.2
  • 不等时间间隔:有 (2, 5), (2, 2, 5), (4, 5),所以最优调度为 (2, 2, 5),平均延迟为 3,吞吐率为 1 3 = 0.33 \frac{1}{3} = 0.33 31=0.33

(3)

  • 等时间间隔:10个任务,需要 1 + 45 + 6 = 52 个 Δ t \Delta t Δt,吞吐率为 10 52 = 0.192 \frac{10}{52} = 0.192 5210=0.192, 加速比为 70 52 = 1.346 \frac{70}{52} = 1.346 5270=1.346
  • 不等时间间隔:10个任务,需要 1 + 27 + 6 = 34 个 Δ t \Delta t Δt,吞吐率为 10 34 = 0.294 \frac{10}{34} = 0.294 3410=0.294, 加速比为 70 34 = 2.059 \frac{70}{34} = 2.059 3470=2.059

3

在 MIPS 流水线上运行以下代码序列

LOOP:   LW     R1,0(R2)
        DADDIU R1,R1,#1
        SW     R1,0(R2)
        DADDIU R2,R2,#4
        DSUB   R4,R3,R2
        BNEZ   R4,LOOP

其中,R3的初值是R2+396。假设:在整个代码序列的执行过程中,所有的存储器访问都是命中的,并且在一个时钟周期中对同一个寄存器的写操作和读操作可以通过分别把它们安排在前半个时钟周期和后半个时钟周期来实现。请问:
(1) 在没有任何其他定向(或旁路)硬件的支持下,请画出该指令序列执行的流水线时空图。假设采用排空流水线的策略处理分支指令,且所有的存储器访问都命中Cache,那么执行上述循环需要多少个时钟周期?
(2) 假设该流水线有正常的定向路径,请画出该指令序列执行的流水线时空图。假设采用预测分支失败的策略处理分支指令,且所有的存储器访问都命中Cache,那么执行上述循环需要多少个时钟周期?
(3) 假设该流水线有正常的定向路径和一个单周期延迟分支,请对该循环中的指令进行调度,你可以重新组织指令的顺序,也可以修改指令的操作数,但是注意不能增加指令的 条数。请画出该指令序列执行的流水线时空图,并计算执行上述循环所需要的时钟周期数。

解:
(1)
这里我们采用最简单的流水线,如下图所示:

时钟周期12345678910111213141516171819202122
LWIFIDEXMWB
DADDIUIFSSIDEXMWB
SWIFSSIDEXMWB
DADDIUIFIDEXMWB
DSUBIFSSIDEXMWB
BNEZIFSSIDEXMWB
LWIFSSIFIDEXMWB

396/4 = 99
(注意在PC寄存器还需要一个clock,故在MEM段才能写入)
总共需要 (17*98) + 18 = 1684 个时钟周期

(2)
采用定向路径,那么得分情况讨论

  • 若是ALU指令,那么在MEM段就能重定向到EX段
  • 若是LW指令,那么强制令在WB段才能重定向到EX段

预测失败即为每次都预测错误。

这里假设分支指令在M段解决(如上图):

时钟周期12345678910111213141516
LWIFIDEXMWB
DADDIUIFIDSEXMWB
SWIFSIDEXMWB
DADDIUIFIDEXMWB
DSUBIFIDEXMWB
BNEZIFIDEXMWB
LWmissmissmissIFIDEXMWB

总共需要 (10*98) + 11 = 991 个时钟周期

(3)
调整为

LOOP:   LW     R1,0(R2)
        DADDIU R2,R2,#4
        DADDIU R1,R1,#1// change the order
        DSUB   R4,R3,R2
        BNEZ   R4,LOOP
        SW     R1,-4(R2)// remember to change the offset
时钟周期123456789101112131415
LWIFIDEXMWB
DADDIUIFIDEXMWB
DADDIUIFIDEXMWB
DSUBIFIDEXMWB
BNEZIFIDEXMWB
SWIFIDEXMWB
LWmissmissmissIFIDEXMWB

总共需要 (8*98) + 10 = 803 个时钟周期

相关文章:

  • dfs(二十四)47. 全排列 II
  • 【项目合集】基于ESP32的智能盲人饮水机
  • Pygame实现记忆拼图游戏14
  • 价值流图分析VSM(75页PPT)(文末有下载方式)
  • 前端项目中应该如何选择正确的图片格式
  • 高并发编程有哪些规范?
  • LeetCode hot 100 每日一题(12)——238.除自身以外数组的乘积
  • 单调队列【C/C++】
  • 在 Linux 系统上部署 Deepseek AI 的全面指南‌
  • (* IOB = “FORCE“ *) 的使用分享
  • 鸿蒙NEXT项目实战-百得知识库04
  • 【机器学习】什么是逻辑回归
  • ES如果要查10条数据需要从各个分片上各取多少条数据?
  • 部分标签数据集生成与过滤特定标签方法
  • 旋转位置编码(Rotary Positional Encoding, RoPE):中文公式详解与代码实现
  • 论文阅读:2024-NAACL Semstamp、2024-ACL (Findings) k-SemStamp
  • 10-- 网络攻击防御原理全景解析 | 从单包攻防到DDoS军团作战(包你看一遍全记住)
  • Servlet
  • 关于波士顿动力2025年3月的人形机器人最新视频
  • 获取MSVC链接过程的详细信息
  • 上海国际碳中和博览会下月举办,首次打造民营经济专区
  • 上海市税务局:收到对刘某某存在涉税问题的举报,正依法依规办理
  • 国防部:中方愿与俄方不断增强两军关系良好发展势头
  • 中国海警舰艇编队5月14日在我钓鱼岛领海巡航
  • 习近平同巴西总统卢拉会谈
  • 共情场域与可持续发展——关于博物馆、美术馆运营的新思考