第三章流水线技术

相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

2020/10/10
中国科学技术大学
chapter3.4
Sequential Laundry
6 PM 7
8
9
10 11 Midnight
Time
30 40 20 30 40 20 30 40 20 30 40 20
T
aA
s
k
B
O
r d
C
e
rD
• 顺序完成这些任务需要 6 小时 • 如果采用流水作业, 需要多长时间?
– A <-- Regs[IR6..10] – B <-- Regs[IR11..16]
» 可能读取的寄存器值没有用,但没有关系,译码后如果无用,以 后操作就不用
– Imm ((IR16)16 ## IR16-31
2020/10/10
中国科学技术大学
chapter3.10
基本操作-Step 3, 执行阶段
根据译码的结果,有四种情况
• Memory Reference
– ALUOutput <-- A + (IR16)16 ## IR16..31--------- effective address – SMD <-- B ---------- data to be written if it is a STORE -- SMD (store mem
第三章 流水线技术
3.1 流水线的基本概念 3.2 DLX的基本流水线 3.3 流水线的相关 3.4 异常处理 3.5 DLX中多周期操作的处理 3.6 MIPS R4000流水线
Review:性能评测
• 平均CPI?
– 每类指令的使用频度
Type Arith/Logic Load Store branch
2020/10/10
中国科学技术大学
chapter3.5
流水线作业: 尽可能让任务重叠进行
6 PM 7
8
9
10 11 Midnight
Time
30 40 40 40 40 20
T
aA
s
k
B
O
r
dC
e
rD
• 流水作业完成四人的洗衣任务只需要 3.5 hours
2020/10/10
中国科学技术大学
chapter3.6
Mux
是否可以使 CPI < 4.1?
• 在一条指令执行过程中下图有许多空闲部件
– 可以让指令重叠执行??
PCWr
PCWrCond Zero
IorD MemWr IRWr
32
PC
0 32
32 RAdr
32 1
32 32
Ideal Memory
WrAdr 32
Din Dout
PCSrc
RegDst RegWr
CPIi for type 4 5 4 3
Frequency CPIi x freqIi
40%
1.6
30%
1.5
10%
0.4
20%
0.6
Average CPI:4.1
2020/10/10
中国科学技术大学
chapter3.2
ALU Out ALU Mux Mux
Mux Mem Data Reg Instruction Reg
2020/10/10
中国科学技术大学
chapter3.7
3.2 DLX的基本流水线
• 指令流水线:CPU执行大量的指令,指令吞吐率非常重要
• DLX 的指令格式
Register-Register (R-type)
ADD R1, R2, R3
31
26 25 2120 16 15 1110 6 5
0
Op rs
流水线技术要点
• 流水线技术并不能提高单个任务的执行效率,它可以 提高整个系统的吞吐率
• 流水线中的瓶颈——最慢的那一段 • 多个任务同时执行,但使用不同的资源 • 其潜在的加速比=流水线的级数 • 流水段所需时间不均衡将降低加速比 • 流水线存在装入时间和排空时间,使得加速比降低 • 由于存在相关问题,会导致流水线停顿
▪所有指令相同长度Baidu Nhomakorabea▪在指令格式中寄存器位于同一位置 ▪只有Loads和Stores可以对存储器操作
2020/10/10
中国科学技术大学
chapter3.8
DLX数据通路一种简单实现
Inst
Adder Memory
Address
Instruction Fetch
Next PC
4
Instr. Decode Execute Reg. Fetch Addr. Calc
• Step 1 - IF
– IR <-- Mem[PC] --------- fetch the next instruction from memory – NPC <-- PC + 4 ---------- compute the new PC
• Step 2 - ID - instruction decode and register fetch step
rt
rd
func
Register-Immediate (I-type)
SUB R1, R2, #3
31
26 25 2120 16 15
0
Op rs
rt
immediate
Jump / Call (J-type)
JUMP end
31
26 25
Op
0
offset added to PC
(jump, jump and link, trap and return from exception)
ALUSelA 1
32
Rs
32 Rt
5
Rt 0 5
Rd 1
1 Mux 0
Ra
Rb busA A
Reg File
32
4
Rw
B
busW busB
32
<< 2
00
Zero
32 1
0 32
1 32
2
3
ALU
Control
2020/10/10
Imm 16
Extend
32
中E国xt科O学p 技术大学MemtoReg
ALUOp ALUSelB
chapter3.3
3.1 流水线的基本概念
• 洗衣为例
• Ann, Brian, Cathy, Dave 每人进行洗衣的动作: wash, dry, and fold
• washer需要 30 minutes
ABCD
• Dryer 需要 40 minutes
• “Folder” 需要 20 minutes
data) = MDR
• Register - Register ALU instruction
Memory Write Access Back
MUX
MUX
Data Memory
Next SEQ PC
RS1 RS2
Zero?
ALU
MUX MUX
Reg File
RD
L
M
D
Imm
Sign Extend
WB Data
2020/10/10
中国科学技术大学
chapter3.9
基本操作(Step 1 & 2)
相关文档
最新文档