流水线工作原理精选ppt
合集下载
6计算机组成原理第6章流水线原理
1)对存储器的频繁访问 ① 有哪些访问:取指令、取操作 数、存放执行结果, I/O通道访问. ② 希望存储器为多体结构,以适 应多种访问源的需要。 ③ 当存储器为单体结构时,需要 将访问源排队,先后顺序为: 取指令、取数据、I/O通道访问、存
结果
6.1 先行控制技术
• 先行控制(look-ahead)技术最早在IBM公司研制的 STRETCH机器中采用。目前,许多处理机中都已经采 用了这种技术,包括超流水处理机和超标量处理机等。
6.4 线性流水线性能分析
衡量流水线的主要指标有吞吐率,加速比和效率。
6.4.1 吞吐率TP
吞吐率(TP ── ThroughPut)指流水线在单位时间内执行的任务数, 可以用输入任务数或输出任务数表示。
TP n Tk
其中k表示流水线划分的段数。
当满足 ti 条t 件时,有 Tk (n k 1) t。
第6章 流水线原理及其 §1 重叠方式
通常提高指令执行速度的途径有如下三种: 1. 提高处理机的工作主频。 2. 采用更好的算法和设计更好的功能部件。 3. 多条指令并行执行,称为指令级并行技术。
• 可以从两个方面来开发处理机内部的并行性:
– 空间并行性:即在一个处理机内设置多个独 立的操作部件,并让这些操作部件并行工作, 这种处理机称为多操作部件处理机或超标量 处理机;
• 超长指令字技术VLIW:指让一条指令包含多个独立的操 作字段,并且分别控制多个功能部件并行工作的技术。
一.重叠解释方式
1.一条指令的几个过程段
1)取指令:根据PC(指令计数器)从M(存储器)取 出指令送到IR(指令寄存器)
2)译码分析:译出指令的操作性质,准备好所需数 据
3)执行:将准备好的数按译出性质进行处理,主要 涉及ALU(算术逻辑运算部件)
结果
6.1 先行控制技术
• 先行控制(look-ahead)技术最早在IBM公司研制的 STRETCH机器中采用。目前,许多处理机中都已经采 用了这种技术,包括超流水处理机和超标量处理机等。
6.4 线性流水线性能分析
衡量流水线的主要指标有吞吐率,加速比和效率。
6.4.1 吞吐率TP
吞吐率(TP ── ThroughPut)指流水线在单位时间内执行的任务数, 可以用输入任务数或输出任务数表示。
TP n Tk
其中k表示流水线划分的段数。
当满足 ti 条t 件时,有 Tk (n k 1) t。
第6章 流水线原理及其 §1 重叠方式
通常提高指令执行速度的途径有如下三种: 1. 提高处理机的工作主频。 2. 采用更好的算法和设计更好的功能部件。 3. 多条指令并行执行,称为指令级并行技术。
• 可以从两个方面来开发处理机内部的并行性:
– 空间并行性:即在一个处理机内设置多个独 立的操作部件,并让这些操作部件并行工作, 这种处理机称为多操作部件处理机或超标量 处理机;
• 超长指令字技术VLIW:指让一条指令包含多个独立的操 作字段,并且分别控制多个功能部件并行工作的技术。
一.重叠解释方式
1.一条指令的几个过程段
1)取指令:根据PC(指令计数器)从M(存储器)取 出指令送到IR(指令寄存器)
2)译码分析:译出指令的操作性质,准备好所需数 据
3)执行:将准备好的数按译出性质进行处理,主要 涉及ALU(算术逻辑运算部件)
《二讲流水线介绍》课件
成本低
软件实现通常只需支付软件开发和授 权费用,成本相对较低。
可移植性强
软件可以在不同硬件平台和操作系统 上运行,具有较强的可移植性。
性能可能受限
相对于硬件实现,软件实现可能存在 性能上的限制。
结合硬件与软件的优势
性能与灵活性兼备
资源共享
结合硬件和软件可以实现高性能和灵活性 ,满足不同场景的需求。
05 二讲流水线的未来发展
更高层次的并行处理
总结词
随着技术的不断进步,二讲流水线将向更高层次的并行处理发展,以提高处理速 度和效率。
详细描述
通过增加流水线的数量和每个流水线内部的并行度,可以实现更高效的数据处理 能力。这将有助于提高系统的吞吐量和响应速度,满足日益增长的计算需求。
结合人工智能技术
高效性
硬件实现通常具有较高的执行速度,适用于 对性能要求高的场景。
高成本
硬件实现通常需要较高的投资,包括设备购 买、维护和更新成本。
可扩展性
通过硬件升级或更换更强大的硬件设备,可 以扩展流水线的处理能力。
灵活性不足
硬件设备一旦设计完成并部署,更改相对困 难,灵活性较差。
软件实现
灵活性高
软件实现可以根据需求灵活调整,易 于修改和扩展。
到最终结果。
应用场景
数据处理
在大数据分析、图像处理等领 域,利用二讲流水线并行处理
大量数据。
科学计算
在物理模拟、化学计算等领域 ,利用二讲流水线加速计算过 程。
游戏开发
在游戏渲染、物理模拟等领域 ,利用二讲流水线提高游戏运 行效率。
并行算法
在并行算法中,利用二讲流水 线实现算法的并行化,提高算
法执行效率。
解决方案
流水线(Pipeline)介绍PPT课件
❖ 写后读(RAW) ❖ 写后写 (WAW) ❖ 读后写 (WAR)
.
16
写后读冒险(RAW: Read After Write)
❖ 在 i 写入之前,j 先去读。j 会错误的获取旧 值。
❖ 这对应“真数据相关”,为了确保j可以得到 正确的i值,必须保持程序的顺序。
i: DSUB R1,R2,R3 j: DADD R4,R1,R3ຫໍສະໝຸດ DSUB R4,R1,R5
IM
Reg
DM
Reg
XOR R6,R1,R7
IM
Reg
DM
AND R8,R1,R9
IM
Reg
OR R10,R1,R11
IM
Reg
AND,OR操作不会暂停,但是DSUB,XOR指
令需要等待DADD在WB阶段写回数据后才
可以执行。
.
15
2.4 数据冒险的解决办法
❖ 根据指令中读写访问的顺序,可以将数据冒 险分为三类。分别是:
处理器流水线相 关技术
报告人:Hardy
.
1
流水线技术
❖1.流水线的概念 ❖2.流水线的冒险和冒险的解决办法 ❖3.多发射处理器
.
2
1.流水线的概念
❖ 流水线技术:
把一个重复的过程分解为若干个子过程,每个子过 程由专门的功能部件来实现。将多个处理过程在时 间上错开,依次通过各功能段,这样,每个子过程 就可以与其他子过程并行进行。
.
5
采用相同的功能模块,指令顺序执行和按照流水线
技术执行,在时间上可以看出流水线指令的执行速
度提高了4倍。
.
6
流水线的基本作用
流水线增大了CPU的指令吞吐量—即单位时 间执行指令的条数,但是它未减少指令各自 的执行时间。实际上流水线技术要对流水线 附加一些控制,因而了增加开销,使单条指 令执行时间略有增加。吞吐量的增大意味着 程序运行的更快,总的执行时间变短,尽管 没有一条指令的执行变快。
.
16
写后读冒险(RAW: Read After Write)
❖ 在 i 写入之前,j 先去读。j 会错误的获取旧 值。
❖ 这对应“真数据相关”,为了确保j可以得到 正确的i值,必须保持程序的顺序。
i: DSUB R1,R2,R3 j: DADD R4,R1,R3ຫໍສະໝຸດ DSUB R4,R1,R5
IM
Reg
DM
Reg
XOR R6,R1,R7
IM
Reg
DM
AND R8,R1,R9
IM
Reg
OR R10,R1,R11
IM
Reg
AND,OR操作不会暂停,但是DSUB,XOR指
令需要等待DADD在WB阶段写回数据后才
可以执行。
.
15
2.4 数据冒险的解决办法
❖ 根据指令中读写访问的顺序,可以将数据冒 险分为三类。分别是:
处理器流水线相 关技术
报告人:Hardy
.
1
流水线技术
❖1.流水线的概念 ❖2.流水线的冒险和冒险的解决办法 ❖3.多发射处理器
.
2
1.流水线的概念
❖ 流水线技术:
把一个重复的过程分解为若干个子过程,每个子过 程由专门的功能部件来实现。将多个处理过程在时 间上错开,依次通过各功能段,这样,每个子过程 就可以与其他子过程并行进行。
.
5
采用相同的功能模块,指令顺序执行和按照流水线
技术执行,在时间上可以看出流水线指令的执行速
度提高了4倍。
.
6
流水线的基本作用
流水线增大了CPU的指令吞吐量—即单位时 间执行指令的条数,但是它未减少指令各自 的执行时间。实际上流水线技术要对流水线 附加一些控制,因而了增加开销,使单条指 令执行时间略有增加。吞吐量的增大意味着 程序运行的更快,总的执行时间变短,尽管 没有一条指令的执行变快。
流水线的组织及其平面布局讲义(PPT59张)
(5)按照“设计程序”要求,给出工作地作业分配表;
工作地作业分配表
工作地 1
剩余时间 (分钟) 够资格分 配的作业 适合分配 的作业 作业分配 (时间) 闲置时间 (分钟)
2
3 4
1.2 1.0 0.2 0 1.2 0.6 0.3 1.2 0.2 1.2 0.8 0.5
a ,c c ,b b ,d e ,d e ,d e f f g g h
该作业的最小可能节拍为
1.0(分/件),按此节拍
8小时产量可达到480件,
超过了所需400件的产量要
求。因此生产该产品可行。
(2)依据作业表,画出作业顺序图:
a c
b d
e f g h
(3)计算生产节拍:R=F/N=8×60/400=1.2(分/件) (4)计算最少所需工作地数量: a、作业总时间:0.2+0.2+0.8+0.6+0.3+1.0+0.4 +0.3= 3.8(分) b、工作地数量:3.8/1.2=3.17=(取整数)= 4(个)
F F e 0 r N N 1) 0 /(
流水线节拍的计算
• 例1 某产品计划产量3000件,计划期工作时间为4周, 每周工作5天,采用两班制,每班工作8小时,时间利用 系数为0.95,废品率为3%,试计算流水线节拍。 • 解:
F F 5 4 8 2 0 . 9 5 6 0 e 0 r 5 . 9 (/ 分 件 N N / ( 1 ) 3 0 0 0 / ( 1 3 % ) 0
5)计算工作地的时间损失系数εL。 S×r-∑ti ε L= ———— ×100% S×r 工作地的时间损失系数或设备负荷率,决定了流 水线运行过程的连续程度。
流水线生产介绍课件
可以将复杂的菜品制作过程拆分为简单的步骤,并由不同的厨师负责每
个步骤,从而提高菜品制作效率和质量。
03
医疗行业
在医疗行业中,流水线生产也有应用。例如,医院的后勤部门可以将复
杂的清洁过程拆分为简单的步骤,并由不同的清洁工负责每个步骤,从
而提高清洁效率和质量。
案例分析
汽车制造
汽车制造过程中的流水线生产非常典型。从零部件的采购、组装、涂装、总装到出厂检测,每个环节都有明确的 分工和流程,确保了每辆汽车的质量和性能的一致性。同时,通过流水线生产,汽车制造的效率大大提高,降低 了生产成本。
定制化生产
未来的流水线生产将更加注重定制化生产,通过灵活的生产线和定 制化的产品满足消费者不同的需求,提高产品的附加值和市场竞争 力。
绿色环保生产
未来的流水线生产将更加注重绿色环保生产,采用环保材料和节能技 术,降低生产过程中的环境污染,实现可持续发展。
谢谢
THANKS
个性化生产
随着消费者需求的多样化,流水线生产将更加注重个性化 生产,通过灵活的生产线和定制化的产品满足消费者不同 的需求。
绿色环保
随着社会对环保意识的提高,流水线生产将更加注重绿色 环保,采用环保材料和节能技术,降低生产过程中的环境 污染。
展望
高度自动化和智能化
未来的流水线生产将实现高度自动化和智能化,通过先进的工业机 器人、人工智能等技术,实现生产过程的自动化和智能化控制。
特点
连续性:流水线生产 具有较高的生产连续 性,各道工序之间相 互衔接,能够高效地 运转。
高效性:通过合理的 生产流程设计和设备 布局,流水线生产能 够提高生产效率,减 少生产成本。
规模化:流水线生产 适合大规模、大批量 生产,能够快速地满 足市场需求。
流水线管理PPT精选文档
节奏性
强制节拍流水线
自由节拍流水线
粗略节拍流水线
机械化程度
自动线
机械化流水线
手工流水线Βιβλιοθήκη 4专业化的优点缺点
• 专业化:工作具有非常窄的范围。 • 优点: • 对管理者来说:简化培训\生产率高\支付低工资 • 对劳动者来说:对教育的技能的要求低\少负责任\
需要的脑力劳动少 • 缺点: • 对管理者来说:难以提高质量激励\工人的不满情
第六章 流水线管理
1
1、流水生产线简介
• 大量生产类型与流水生产的发展
•
在现代化社会大生产中,以汽车、家电等
产品为代表的大量生产方式是一种主要的生产类
型。现代流水生产方式起源于福特制。美国福特
汽车公司创始人亨利 ·福特(Henry Ford)于20
世纪20年代创立了汽车工业的流水生产线。
• 福特制的主要内容如下:
• 1. 实施零件以及产品的标准化、设备以及工具 的专业化和工场专业化。
• 2. 创造了流水作业的生产方法,建立了传送带 式的流水生产线。
2
流水生产的基本概念
• 流水生产是指劳动对象按照一定的工艺 路线,顺序地通过各个工作地,并按照一 定的生产速度(节拍)完成工艺作业的连 续重复生产的一种生产组织形式。
• 解答: • T0 = 1350(分钟)
根据平均节拍的计算公式: r =2.18分/件 实际加工件数:N=618件/日 此时流水线的工作节拍r=2.097分/件
9
3、装配线平衡
• 在流水线上,通常是按一定的节拍往下流动的。 干得最慢的人就是决定流水线最终效率的人。如
何解决这个问题?这就要讲到流水线平衡的问题, 以干得最慢的人为标准,比如30分钟,乘以所有 的工序,这就是需要的总时间。
第三章流水线技术.ppt
ExtOp
MemtoReg
ALUSelB
chapter3.3
3.1 流水线的基本概念
• 洗衣为例 • Ann, Brian, Cathy, Dave 每人进行洗衣的动作: wash, dry, and fold • washer需要 30 minutes • Dryer 需要 40 minutes • “Folder” 需要 20 minutes A B C D
– 45 ns/cycle x 1 CPI x 100 inst = 4500 ns
• 多周期机器
– 10 ns/cycle x 4.6 CPI (due to inst mix) x 100 inst = 4600 ns
• 理想流水线机器
– 10 ns/cycle x (1 CPI x 100 inst + 4 cycle drain) = 1040 ns
32
WrAdr 32 Din Dout
Ideal Memory
Rt 0 Rd
Reg File
busA A
32
2019/3/18
Mux
32
4 B
32
Mem Data Reg
0
1 Mux 0
Mux
1
32
1
2 3
32 32
<< 2
ALU Control
Imm 16
Extend
32
ALUOp
中国科学技术大学
• Step 2 step
ID - instruction decode and register fetch
– A <-- Regs[IR6..10] – B <-- Regs[IR11..16]
流水线的形式与设计介绍(ppt 35页)
成组流水线:在一定时间内顺序生产固定在流水线上的 几种制品,在变换品种时基本上不需要重新调整设备和 工艺装备。
混合流水线:是在流水线上同时生产多个品种,各品种 均匀混合流送,组织相间性的投产。一般多用于装配阶 段生产。
4 .按流水线连续程度分:
连续流水线:
制品从投入到产出在工序间是连续进行的 没有等待和间断时间。 间断流水线:
混合流水线
连续程度
连续流水线
间断流水线
节奏性 机械化程度
强制节拍流水线 自由节拍流水线
自动线
机械化流水线
粗略节拍流水线 手工流水线
1 .按加工对象移动方式分:
123
固定流水线
移动流水线
固定流水线:加工对象固定,生产工人携带工具移动. 移动流水线:加工对象移动,工人和设备固定。
2 .按加工对象数目分:
RA =α A T效/QA =24000×41.67%/2000=5(分/件)
RB =α B T效/QB =24000 ×31.25%/1875=4 (分/件)
RC =α C T效/QC =24000×27.08%/1857=3.5 (分/件)
2、混合流水线的组织设计
定义:将工艺流程、生产作业方法基本 相同的若干品种,在一条流水线上编排投 产顺序,实行有节奏、按比例地混合连续 流水生产方式。
流水生产组织
一、流水线含义
指劳动对象按照一定的工艺 路线,顺序的通过各个工作 地,并按照统一的生产速 度(节拍)完成工艺作业 的连续的重复的生产过程。
二、流水线的形式
分类标志
流水线
对象移动方式 对象数目
对象变换方式
固定流水线 单品种流水线 不变流水线
移动流水线 多品种流水线 可变流水线 成组流水线
混合流水线:是在流水线上同时生产多个品种,各品种 均匀混合流送,组织相间性的投产。一般多用于装配阶 段生产。
4 .按流水线连续程度分:
连续流水线:
制品从投入到产出在工序间是连续进行的 没有等待和间断时间。 间断流水线:
混合流水线
连续程度
连续流水线
间断流水线
节奏性 机械化程度
强制节拍流水线 自由节拍流水线
自动线
机械化流水线
粗略节拍流水线 手工流水线
1 .按加工对象移动方式分:
123
固定流水线
移动流水线
固定流水线:加工对象固定,生产工人携带工具移动. 移动流水线:加工对象移动,工人和设备固定。
2 .按加工对象数目分:
RA =α A T效/QA =24000×41.67%/2000=5(分/件)
RB =α B T效/QB =24000 ×31.25%/1875=4 (分/件)
RC =α C T效/QC =24000×27.08%/1857=3.5 (分/件)
2、混合流水线的组织设计
定义:将工艺流程、生产作业方法基本 相同的若干品种,在一条流水线上编排投 产顺序,实行有节奏、按比例地混合连续 流水生产方式。
流水生产组织
一、流水线含义
指劳动对象按照一定的工艺 路线,顺序的通过各个工作 地,并按照统一的生产速 度(节拍)完成工艺作业 的连续的重复的生产过程。
二、流水线的形式
分类标志
流水线
对象移动方式 对象数目
对象变换方式
固定流水线 单品种流水线 不变流水线
移动流水线 多品种流水线 可变流水线 成组流水线
流水线技术 ppt课件
▪反映了单位时间内完成的任务数 n
T P T 1 T 2 T K(n 1 ) M a x(T 1,T 2, T K )
▪K为流水线段数,Ti为第i段所需要的时间
❖指令流水线的吞吐率
单位时间内流水线所完成的指令数
n TP
kT (n 1)T
▪N为通过流水线的指令数 ▪T为指令流水线各个流水段的时间 ▪kT为指令流水线的填充时间
ADD R1, R2, R3 ; (R1) + (R2) → R3 OR R3, R2, R6 ; (R2) ^ (R3) → R6 SUB R3, R4, R5 ; (R4) - (R3) → R5
时钟周期 1 2 3 4
5
6
ADD IF ID EX —— WB
OR
IF ID EX —— WB
6
❖最大吞吐率
当流水线充满之后,理想情况下每个周期都有一条指令完成
1 T P max
T
❖最大吞吐率和实际吞吐率之间的关系
TPkT(n n1)Tkn n1T 11k 11TPm ax n
当n>>k时,TP≈TPmax
❖MIPS与吞吐率
TPMIPS106
MIPS:单位时间内所完成的指令数
7
❖加速比
时钟周期 1 2 3 4 5
6
7
8
指令1 IF ID EX MEM WB
指令2
IF ID EX MEM WB
指令3
IF ID EX MEM WB
指令4
IF ID EX MEM WB
13
❖争用同一个硬件资源,又称资源相关、冲突
时钟周期 1 2 3 4
5
6
7
8
指令1 Ik时,Sp≈k 增加流水线深度可以提高加速比
T P T 1 T 2 T K(n 1 ) M a x(T 1,T 2, T K )
▪K为流水线段数,Ti为第i段所需要的时间
❖指令流水线的吞吐率
单位时间内流水线所完成的指令数
n TP
kT (n 1)T
▪N为通过流水线的指令数 ▪T为指令流水线各个流水段的时间 ▪kT为指令流水线的填充时间
ADD R1, R2, R3 ; (R1) + (R2) → R3 OR R3, R2, R6 ; (R2) ^ (R3) → R6 SUB R3, R4, R5 ; (R4) - (R3) → R5
时钟周期 1 2 3 4
5
6
ADD IF ID EX —— WB
OR
IF ID EX —— WB
6
❖最大吞吐率
当流水线充满之后,理想情况下每个周期都有一条指令完成
1 T P max
T
❖最大吞吐率和实际吞吐率之间的关系
TPkT(n n1)Tkn n1T 11k 11TPm ax n
当n>>k时,TP≈TPmax
❖MIPS与吞吐率
TPMIPS106
MIPS:单位时间内所完成的指令数
7
❖加速比
时钟周期 1 2 3 4 5
6
7
8
指令1 IF ID EX MEM WB
指令2
IF ID EX MEM WB
指令3
IF ID EX MEM WB
指令4
IF ID EX MEM WB
13
❖争用同一个硬件资源,又称资源相关、冲突
时钟周期 1 2 3 4
5
6
7
8
指令1 Ik时,Sp≈k 增加流水线深度可以提高加速比
流水线工作原理 - 副本1
流水线方式工作的加速比
n m t0 m Sp mt0 (n 1)t0 1 m 1 n
9
流水线工作原理
c) 效率
流水线的效率是指流水线中的设备实际使用时间占整个 运行时间之比,也称流水线设备的时间利用率。由于流水线 存在有建立时间和排空时间(最后一个任务流入到流出的时间), 在连续完成n个任务的时间里,各段并不总是满负荷工作的。 如果是线性流水线,且各段经过时间相同,如图3 那样, 则在T时间里,流水线各段的效率都相同,均为η0,即
11
流水线工作原理
3. 流水处理的相关性 流水线不能连续工作的原因,除了编 译形成的程序不能发挥流水线的作用或存 储器供应不上为连续流动所需的指令和数 据以外,还因为出现了“相关”情况或遇 到了程序转移指令。 有时避免不了产生不能连续工作的情 况,这种现象称为流水线阻塞或产生了 “气泡”。
12
流水线工作原理
14 个时间单位
4
流水线工作原理
2. 流水线处理机的主要性能指标
a) 吞吐率
吞吐率是流水线单位时间里能流出的任务数或结果数。
在图5的流水线例子中,各个子过程经过的时间都是 Δt2,
满负荷后,流水线每隔 Δ t 2 解释完一条指令,其最大吞吐率
TPmax 为 1/Δ t 2 。实际上,各个子过程进行的工作不相同,所经 过的时间也就不一定相同,所以前述在子过程间设置了接口锁
指令 4
指令 5 指令 6 指令 7 指令 8
FI
DI
FI
CO
DI FI
FO
CO DI FI
EI
FO CO DI FI
WO
EI FO CO DI WO EI WO FO CO EI WO FO EI WO
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一、指令流水原理
1. 指令的串行执行
取指令 1 执行指令 1 取指令 2 执行指令 2 取指令 3 执行指令 3 …
取指令 取指令部件 完成 总有一个部件 空闲 执行指令 执行指令部件 完成
2. 指令的二级流水
取指令 1 执行指令 1
取指令 2 执行指令 2
指令预取
取指令 3 执行指令 3
若 取指 和 执行 阶段时间上 完全重叠
完成 一条指令 串行执行 六级流水
6 个时间单位
6 × 9 = 54 个时间单位
14 个时间单位
注释
.
二、流水线性能
1. 吞吐率 单位时间内 流水线所完成指令 或 输出结果 的 数量
设 m 段的流水线各段时间为Δ t
• 最大吞吐率
Tpmax
=
1
Δt
• 实际吞吐率
连续处理 n 条指令的吞吐率为
Tp
=
➢ 执行指令(EI):执行指令所需的操作,并 将结果存于目的位置(寄存器中)。
➢ 写操作数(WO):将结果存入存储器。
.
返回
R8=R5+R6
R7=R3+R4
.
F=R7+R8
整个计算过程需要21Δt,所以吞吐率为:
Tp 9 21t
加速比为: 效率为:
S95t 452.14 2 1t 21
E95t 42.86% 52 1t
.
课后思考
15
F Ai i 1
20
F Ai i 1
100
F Ai i 1
1000
F Ai i 1
[分析]首先需要考虑的是,10个数的的和最少需要做几次加法。
我们可以发现,加法的次数是不能减少的:9次;
于是我们要尽可能快的完成任务,就只有考虑如何让流水线 尽可能充满,这需要消除前后指令之间的相关。
由于加法满足交换率和结合率,我们可以调整运算次序如以下的指令序列 ,我们把中间结果寄存器称为R,源操作数寄存器称为A,最后结果寄存 器称为F,并假设源操作数已经在寄存器中,则指令如下:
指令周期 减半 速度提. 高 1 倍
3. 影响指令流水效率加倍的因素
(1) 执行时间 > 取指时间
取指令 部件
指令部件 缓冲区
执行指令 部件
(2) 条件转移指令 对指令流水的影响 必须等 上条 指令执行结束,才能确定 下条 指令的地址, 造成时间损失 猜测法
解决办法 ?
.
4. 指令的六级流水
t 1 2 3 4 5 6 7 8 9 10 11 12 13 14
指令 1 FI 指令 2 指令 3 指令 4 指令 5 指令 6 指令 7 指令 8 指令 9
DI CO FO EI WO FI DI CO FO EI WO
FI DI CO FO EI WO FI DI CO FO EI WO FI DI CO FO EI WO FI DI CO FO EI WO FI DI CO FO EI WO FI DI CO FO EI WO FI DI CO FO EI WO
.
3. 效率
流水线中各功能段的 利用率 由于流水线有 建立时间 和 排空时间 因此各功能段的 设备不可能 一直 处于 工作 状态
S空间
空间
S4
1 2 3 4 5 … … … n-1 n
S3
1 2 3 4 5 … … … n-1 n
S2
1 2 3 4 5 … … … n-1 n
S1 1 2 3 4 5 … … … n-1 n
n m ·Δt+ (n-1)
·Δ
t
.
2. 加速比 Sp
m 段的 流水线的速度 与等功能的 非流水线的速度 之比
设流水线各段时间为 Δ t
完成 n 条指令在 m 段流水线上共需
T = m ·Δt + (n-1) Δ· t
完成 n 条指令在等效的非流水线上共需
T′= nm ·Δt
则
nm ·Δt
nm
Sp = m Δ· t +(n-1) Δ· t = m + n -1
mΔt
. (n-1) Δt
T时间
3. 效率
流水线中各功能段的 利用率
效率 =
=
S空间
空间
流水线各段处于工作时间的时空区
流水线中各段总的时空区
mnΔt m(m + n -1) Δt
S4
1 2 3 4 5 … … … n-1 n
S3
1 2 3 4 5 … … … n-1 n
S2
1 2 3 4 5 … … … n-1 n
.
✓ I1:
R1←A1+A2
✓ I2:
R2←A3+A4
✓ I3:
R3←A5+A6
✓ I4:
R4←A7+A8
✓ I5:
R5←A9+A10
✓ I6:
R6←R1+R2
✓ I7:
R7←R3+R4
✓ I8:
R8←R5+R6
✓ I9:
F←R7+R8
这并不是唯一可能的计算方法。假设功能段的延迟为Δt。时 -空图如下,图中的数字是指令号。
S1 1 2 3 4 5 … … … n-1 n
mΔt
. (n-1) Δt
T时间
举例 用一条5个功能段的浮点加法器流水线计算
10
F Ai i 1
每个功能段的延迟时间均相等,流水线的输出端和输入端之 间有直接数据通路,而且设置有足够的缓冲寄存器。要求用 尽可能短的时间完成计算,画出流水线时空图,并计算流水 线的实际吞吐率、加速比和效率。
.
部件m
R2 R4
R1 R3 R5 R6 R7
R8
F
5
1 2 34 5 6 7
8
9
4
1 2 34 5 6 7
8
9
3
1 2 34 5 6 7
8
9
2 1 2 34 5 6 7
9
11 2 34 5 6 7
8
9
时间
21Δt
R1=A1+A2 R2=A3+A4 R3=A5+A6 R4=A7+A8
R5=A9+A10 R6=R1+R2
.
本课到此结束
谢谢大家
.
➢ 取指(FI):从存储器取出一条指令并暂时 存入指令部件的缓冲区。
➢ 指令译码(DI):确定操作性质和操作数地 址的形成方式。
➢ 计算操作数地址(CO):计算操作数的有效 地址,涉及到寄存器间址、间址、变址、基 址、相对寻址等各种地址计算方式。
➢ 取操作数(FO): 从存储器中取操作数(若 操作数在寄存器中,则无需此阶段)。
1. 指令的串行执行
取指令 1 执行指令 1 取指令 2 执行指令 2 取指令 3 执行指令 3 …
取指令 取指令部件 完成 总有一个部件 空闲 执行指令 执行指令部件 完成
2. 指令的二级流水
取指令 1 执行指令 1
取指令 2 执行指令 2
指令预取
取指令 3 执行指令 3
若 取指 和 执行 阶段时间上 完全重叠
完成 一条指令 串行执行 六级流水
6 个时间单位
6 × 9 = 54 个时间单位
14 个时间单位
注释
.
二、流水线性能
1. 吞吐率 单位时间内 流水线所完成指令 或 输出结果 的 数量
设 m 段的流水线各段时间为Δ t
• 最大吞吐率
Tpmax
=
1
Δt
• 实际吞吐率
连续处理 n 条指令的吞吐率为
Tp
=
➢ 执行指令(EI):执行指令所需的操作,并 将结果存于目的位置(寄存器中)。
➢ 写操作数(WO):将结果存入存储器。
.
返回
R8=R5+R6
R7=R3+R4
.
F=R7+R8
整个计算过程需要21Δt,所以吞吐率为:
Tp 9 21t
加速比为: 效率为:
S95t 452.14 2 1t 21
E95t 42.86% 52 1t
.
课后思考
15
F Ai i 1
20
F Ai i 1
100
F Ai i 1
1000
F Ai i 1
[分析]首先需要考虑的是,10个数的的和最少需要做几次加法。
我们可以发现,加法的次数是不能减少的:9次;
于是我们要尽可能快的完成任务,就只有考虑如何让流水线 尽可能充满,这需要消除前后指令之间的相关。
由于加法满足交换率和结合率,我们可以调整运算次序如以下的指令序列 ,我们把中间结果寄存器称为R,源操作数寄存器称为A,最后结果寄存 器称为F,并假设源操作数已经在寄存器中,则指令如下:
指令周期 减半 速度提. 高 1 倍
3. 影响指令流水效率加倍的因素
(1) 执行时间 > 取指时间
取指令 部件
指令部件 缓冲区
执行指令 部件
(2) 条件转移指令 对指令流水的影响 必须等 上条 指令执行结束,才能确定 下条 指令的地址, 造成时间损失 猜测法
解决办法 ?
.
4. 指令的六级流水
t 1 2 3 4 5 6 7 8 9 10 11 12 13 14
指令 1 FI 指令 2 指令 3 指令 4 指令 5 指令 6 指令 7 指令 8 指令 9
DI CO FO EI WO FI DI CO FO EI WO
FI DI CO FO EI WO FI DI CO FO EI WO FI DI CO FO EI WO FI DI CO FO EI WO FI DI CO FO EI WO FI DI CO FO EI WO FI DI CO FO EI WO
.
3. 效率
流水线中各功能段的 利用率 由于流水线有 建立时间 和 排空时间 因此各功能段的 设备不可能 一直 处于 工作 状态
S空间
空间
S4
1 2 3 4 5 … … … n-1 n
S3
1 2 3 4 5 … … … n-1 n
S2
1 2 3 4 5 … … … n-1 n
S1 1 2 3 4 5 … … … n-1 n
n m ·Δt+ (n-1)
·Δ
t
.
2. 加速比 Sp
m 段的 流水线的速度 与等功能的 非流水线的速度 之比
设流水线各段时间为 Δ t
完成 n 条指令在 m 段流水线上共需
T = m ·Δt + (n-1) Δ· t
完成 n 条指令在等效的非流水线上共需
T′= nm ·Δt
则
nm ·Δt
nm
Sp = m Δ· t +(n-1) Δ· t = m + n -1
mΔt
. (n-1) Δt
T时间
3. 效率
流水线中各功能段的 利用率
效率 =
=
S空间
空间
流水线各段处于工作时间的时空区
流水线中各段总的时空区
mnΔt m(m + n -1) Δt
S4
1 2 3 4 5 … … … n-1 n
S3
1 2 3 4 5 … … … n-1 n
S2
1 2 3 4 5 … … … n-1 n
.
✓ I1:
R1←A1+A2
✓ I2:
R2←A3+A4
✓ I3:
R3←A5+A6
✓ I4:
R4←A7+A8
✓ I5:
R5←A9+A10
✓ I6:
R6←R1+R2
✓ I7:
R7←R3+R4
✓ I8:
R8←R5+R6
✓ I9:
F←R7+R8
这并不是唯一可能的计算方法。假设功能段的延迟为Δt。时 -空图如下,图中的数字是指令号。
S1 1 2 3 4 5 … … … n-1 n
mΔt
. (n-1) Δt
T时间
举例 用一条5个功能段的浮点加法器流水线计算
10
F Ai i 1
每个功能段的延迟时间均相等,流水线的输出端和输入端之 间有直接数据通路,而且设置有足够的缓冲寄存器。要求用 尽可能短的时间完成计算,画出流水线时空图,并计算流水 线的实际吞吐率、加速比和效率。
.
部件m
R2 R4
R1 R3 R5 R6 R7
R8
F
5
1 2 34 5 6 7
8
9
4
1 2 34 5 6 7
8
9
3
1 2 34 5 6 7
8
9
2 1 2 34 5 6 7
9
11 2 34 5 6 7
8
9
时间
21Δt
R1=A1+A2 R2=A3+A4 R3=A5+A6 R4=A7+A8
R5=A9+A10 R6=R1+R2
.
本课到此结束
谢谢大家
.
➢ 取指(FI):从存储器取出一条指令并暂时 存入指令部件的缓冲区。
➢ 指令译码(DI):确定操作性质和操作数地 址的形成方式。
➢ 计算操作数地址(CO):计算操作数的有效 地址,涉及到寄存器间址、间址、变址、基 址、相对寻址等各种地址计算方式。
➢ 取操作数(FO): 从存储器中取操作数(若 操作数在寄存器中,则无需此阶段)。