中国科学技术大学:《计算机体系结构》课程教学资源(PPT课件讲稿)第3章 流水线技术

第三章流水绲技术 31流水线的基本概念 32 DLX MIPS)基本流水线 33流水线的相关 34异常处理 35DLX(MIPS)中多周期操作的处理 36 MIPSR4000流水线 中国科学技术大学 chapter2
第三章 流水线技术 3.1流水线的基本概念 3.2 DLX(MIPS)基本流水线 3.3 流水线的相关 3.4 异常处理 3.5 DLX (MIPS)中多周期操作的处理 3.6 MIPS R4000流水线 中国科学技术大学 chapter03.2

Review:性能评测 ·平均cP? 每类指令的使用频度 pe CPli for type Frequency CPl; X freql Arith/LOgIc 40% 1.6 Load 30% 1.5 Store 10% 0.4 branch 20% 0.6 Average CPl: 4.1 中国科学技术大学 chapter3.3
中国科学技术大学 chapter3.3 Review:性能评测 • 平均CPI? – 每类指令的使用频度 Type CPIi for type Frequency CPIi x freqIi Arith/Logic 4 40% 1.6 Load 5 30% 1.5 Store 4 10% 0.4 branch 3 20% 0.6 Average CPI:4.1

是否可以使cP|<41? ·在一条指令执行过程中下图有许多空闲部件 可以让指令重叠执行?? PCWrCond CSRc Zero or MemWr IRWr RegL aluSela Zero R RAdr rb b Reg file Memory 0 WrAd RW Din Dout bus busH Mux ALU Control Imm Extend 16 ALEc 技术大 Mento reg ALUSelB chapter3. 4
中国科学技术大学 chapter3.4 是否可以使 CPI < 4.1? Ideal Memory WrAdr Din RAdr 32 32 32 Dout MemWr 32 ALU 32 32 ALUOp ALU Control 32 IRWr Instruction Reg 32 Reg File Ra Rw busW Rb 5 5 32 busA busB 32 RegWr Rs Rt Mux 0 1 Rt Rd PCWr ALUSelA 1 Mux 0 RegDst Mux 0 1 32 PC MemtoReg Extend ExtOp Mux 0 1 32 0 1 2 3 4 16 Imm 32 << 2 ALUSelBMux 1 0 32 Zero Zero PCWrCond PCSrc 32 IorD Mem Data Reg ALU Out B A • 在一条指令执行过程中下图有许多空闲部件 – 可以让指令重叠执行??

31流水线的基本概念 ·洗衣为例 A BCC D Ann Brian cathy dave 每人进行洗衣的动作 wash, dry, and fold washer需要30 minutes Dryer需要40 minutes ·“ Folder”需要20 minutes 中国科学技术大学 chapter3.5
中国科学技术大学 chapter3.5 • 洗衣为例 • Ann, Brian, Cathy, Dave 每人进行洗衣的动作: wash, dry, and fold • washer需要 30 minutes • Dryer 需要 40 minutes • “Folder” 需要 20 minutes A B C D 3.1 流水线的基本概念

Sequential Laundry 6PM 7 8 9 10 11 Midnight Time 304020304020304020304020 Task order AB2C2D 顺序完成这些任务需要6小时 如果采用流水作业,需要多长时间? 中国科学技术大学 chapter 3.6
中国科学技术大学 chapter3.6 Sequential Laundry • 顺序完成这些任务需要 6 小时 • 如果采用流水作业, 需要多长时间? A B C D 30 40 20 30 40 20 30 40 20 30 40 20 6 PM 7 8 9 10 11 Midnight T a s k O r d e r Time

流水线作业:尽可能让任务重叠进行 6 PM 7 9 10 11 Midnight Time 3040404040 20 A askorde B D 流水作业完成四人的洗衣任务只需要35 hours 中国科学技术大学 chapter3.7
中国科学技术大学 chapter3.7 流水线作业: 尽可能让任务重叠进行 • 流水作业完成四人的洗衣任务只需要 3.5 hours A B C D 6 PM 7 8 9 10 11 Midnight T a s k O r d e r Time 30 40 40 40 40 20

流水线技术要点 流水线技术并不能提高单个任务的执行效率,它可以 提高整个系统的吞吐率 ·流水线中的瓶颈——最慢的那一段 多个任务同时执行,但使用不同的资源 ·其潜在的加速比=流水线的级数 流水段所需时间不均衡将降低加速比 流水线存在装入时间和排空时间,使得加速比降低 ·由于存在相关问题,会导致流水线停顿 中国科学技术大学 chapter 3.8
中国科学技术大学 chapter3.8 流水线技术要点 • 流水线技术并不能提高单个任务的执行效率,它可以 提高整个系统的吞吐率 • 流水线中的瓶颈——最慢的那一段 • 多个任务同时执行,但使用不同的资源 • 其潜在的加速比=流水线的级数 • 流水段所需时间不均衡将降低加速比 • 流水线存在装入时间和排空时间,使得加速比降低 • 由于存在相关问题,会导致流水线停顿

32DLX(MPS)的基本流水线 指令流水线:cPU执行大量的指令,指令吞吐率非常重要 ·DLX的指令格式 Register-Register(R-type ADD R1 R2 R3 056101115162021252631 LOpes⊥ rtrd func Register-Immediate(I-type SUBR1R2.#3 0 5610111516 31 LOpLrsrt immediate Jump/Call (J-type) JUMP end 0 31 LOp offset added to pc Gump, jump and link, trap and return from exception) 所有指令相同长度 在指令格式中寄存器位于同一位置 只有 Loads和 Stores可以对存储器操作 中国科学技术大学 chapter 3.9
中国科学技术大学 chapter3.9 • 指令流水线:CPU执行大量的指令,指令吞吐率非常重要 • DLX 的指令格式 3.2 DLX (MIPS)的基本流水线 Op 0 5 6 10 11 15 16 31 rs rt immediate Op 0 5 31 Op 0 5 6 10 11 15 16 31 rs rt offset added to PC rd Register-Register (R-type) ADD R1, R2, R3 20 21 25 26 Register-Immediate (I-type) SUB R1, R2, #3 Jump / Call (J-type) JUMP end func (jump, jump and link, trap and return from exception) ▪所有指令相同长度 ▪在指令格式中寄存器位于同一位置 ▪只有Loads和Stores可以对存储器操作 6

DLX(MIPS)数据通路一种简单实现 Instruction:工ns↑r. Decode氵 Execute Memory Write Fetch Reg. Fetch氵Addr.calc氵 Access氵Back Next pc Next SEQ PC Zero? RS1 RS2元 3o WB Data 中国科学技术大学 chapter3. 15
中国科学技术大学 chapter3.10 DLX(MIPS)数据通路一种简单实现 Memory Access Write Back Instruction Fetch Instr. Decode Reg. Fetch Execute Addr. Calc L M D ALU MUX Memory Reg File MUX MUX Data Memory MUX Sign Extend 4 Adder Zero? Next SEQ PC Address Next PC WB Data Inst RD RS1 RS2 Imm

基本操作(Step1&2) 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 A <--Regsir-10 B<- RegsIr1…s 可能读取的寄存器值没有用,但没有关系,译码后如果无用,以 后操作就不用 Imm∈(IR16)16#IR163 Op Rs Rt5 Rd5 sa funct Rs5 Rt5 immediate 16 Op immediate 中国科学技术大学 chapter3. 11
中国科学技术大学 chapter3.11 基本操作(Step 1 & 2) • 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 – A <-- Regs[IR6 ..10] – B <-- Regs[IR11..15] » 可能读取的寄存器值没有用,但没有关系,译码后如果无用,以 后操作就不用 – Imm ((IR16) 16 ## IR16-31
按次数下载不扣除下载券;
注册用户24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
- 合肥学院:《数据库原理与应用》课程教学资源(PPT课件)第4章 数据库的创建与管理.ppt
- 四川大学:《数据库技术》课程教学资源(PPT课件讲稿)第9章 数据库系统开发工具VB.ppt
- 上海交通大学:IT项目管理(PPT讲稿)讲座6 软件项目工作量估算.ppt
- 《操作系统》课程PPT教学课件(英文)内存管理 Memory Management.ppt
- 湖南生物机电职业技术学院:《电子商务概论》课程教学资源(PPT课件)第八章 电子商务安全.ppt
- 电子科技大学:《计算机操作系统》课程教学资源(PPT课件讲稿)第四章 设备管理 Device Management and Disk Scheduling.ppt
- 南京大学:模型检测(PPT课件讲稿)Model Checking.pptx
- 《计算机网络》课程教学大纲 Computer Networks.pdf
- 中国科学技术大学:《Linux操作系统分析》课程教学资源(PPT课件讲稿)Linux的进程(1/3).ppt
- 合肥工业大学:《数据库系统概论》课程教学资源(PPT课件)第四章 并发控制.ppt
- Phase Change Memory Aware Data Management and Application.pptx
- 《高级程序语言》课程教学资源(PPT课件讲稿)第09章 平台无关语言.ppt
- 并行算法 Parallel Algorithms(PPT讲稿)现状与展望 status and prospects.ppt
- 上海交通大学:Network Coding for Wireless Networks(PPT讲稿).pptx
- 西安电子科技大学:《现代密码学》课程教学资源(PPT课件讲稿)第七章 密码协议.pptx
- 北京大学:网络搜索引擎原理(PPT讲稿)Web Graph & Link Analysis.ppt
- 《数据结构 Data Structure》课程教学资源(PPT课件讲稿)第二章 线性表.ppt
- 大庆职业学院:《计算机网络技术基础》课程电子教案(PPT教学课件)第3章 网络体系结构与协议.ppt
- 《微型计算机原理及应用》课程教学资源(PPT课件讲稿)第6章 输入输出与中断.ppt
- 信息化技术中心:网络安全意识培训(PPT讲稿).pptx
- 系统软件与软件安全(PPT讲稿)构造安全、高效的系统软件.pptx
- 计算机问题求解(PPT讲稿)图的计算机表示以及遍历.pptx
- 《The C++ Programming Language》课程教学资源(PPT课件讲稿)Lecture 03 Standard Template Library & Generic Programming.ppt
- Scanning Electron Microscopy(SEM).ppt
- 《C语言程序设计》课程教学资源(PPT课件)第6章数据类型和表达式.ppt
- 面向对象编程 Object-Oriented Programming(PPT课件讲稿)继承 Inheritance.ppt
- 《单片机应用技术》课程PPT教学课件(C语言版)第7章 定时器/计数器.ppt
- 清华大学:《计算机导论》课程电子教案(PPT教学课件)第8章 计算机领域的典型问题.ppt
- 《网站设计与建设 Website design and developments》课程教学资源(PPT课件讲稿)第三部分 网站设计技术 第10章 HTML基础.ppt
- 山东大学:《面向对象程序设计》课程教学资源(PPT课件讲稿)第四章 编写对象接口.ppt
- 中国科学技术大学:《机器学习》课程PPT教学课件(讲稿)第二章 模型评估与选择.pptx
- 《C语言程序设计》课程电子教案(PPT课件)第三章 控制语句.ppt
- 安徽理工大学:《计算机网络》课程PPT教学课件(第4版)第1章 概述(编著:谢希仁).ppt
- 中国人民大学:《数据库系统概论 An Introduction to Database System》课程教学资源(PPT课件讲稿)第九章 关系查询处理和查询优化.ppt
- 《人工智能技术导论》课程教学资源(PPT课件讲稿)第8章 不确定性知识的表示与推理.ppt
- 福建工程学院:《C#程序设计》课程教学资源(实验指导书).doc
- 《计算机网络技术》课程教学资源(PPT课件讲稿)Chapter 03 物理层.ppt
- 沈阳理工大学:《网站建设与维护》课程教学资源(PPT课件讲稿)第四章 动态网页基础.ppt
- 东南大学:《操作系统概念 Operating System Concepts》课程教学资源(PPT课件讲稿)13 文件系统 I/O Systems.ppt
- 《C语言程序设计》课程教学资源(PPT课件讲稿)第6章 函数.ppt