Topic 6: Pipelining and Pipelined Architecture

Slides:



Advertisements
Similar presentations
Instruction Level Parallelism and Superscalar Processors
Advertisements

Machine cycle.
CMPE 421 Advanced Parallel Computer Architecture Pipeline datapath and Control.
PipelineCSCE430/830 Pipeline: Introduction CSCE430/830 Computer Architecture Lecturer: Prof. Hong Jiang Courtesy of Prof. Yifeng Zhu, U of Maine Fall,
PIPELINING AND VECTOR PROCESSING
Computer Organization and Architecture
CSCI 4717/5717 Computer Architecture
Lecture Objectives: 1)Define pipelining 2)Calculate the speedup achieved by pipelining for a given number of instructions. 3)Define how pipelining improves.
CMPT 334 Computer Organization
Chapter 3 Pipelining. 3.1 Pipeline Model n Terminology –task –subtask –stage –staging register n Total processing time for each task. –T pl =, where t.
Computer ArchitectureFall 2007 © October 31, CS-447– Computer Architecture M,W 10-11:20am Lecture 17 Review.
Appendix A Pipelining: Basic and Intermediate Concepts
Pipelining Basics Assembly line concept An instruction is executed in multiple steps Multiple instructions overlap in execution A step in a pipeline is.
Chapter 2 Summary Classification of architectures Features that are relatively independent of instruction sets “Different” Processors –DSP and media processors.
Parallel architecture Technique. Pipelining Processor Pipelining is a technique of decomposing a sequential process into sub-processes, with each sub-process.
CSE 340 Computer Architecture Summer 2014 Basic MIPS Pipelining Review.
ECE 252 / CPS 220 Pipelining Professor Alvin R. Lebeck Compsci 220 / ECE 252 Fall 2008.
Chapter One Introduction to Pipelined Processors
3/12/2013Computer Engg, IIT(BHU)1 CONCEPTS-1. Pipelining Pipelining is used to increase the speed of processing It uses temporal parallelism In pipelining,
Introduction to Computer Organization Pipelining.
Chapter One Introduction to Pipelined Processors.
Computer Architecture Lecture 7: Microprogrammed Microarchitectures Prof. Onur Mutlu Carnegie Mellon University Spring 2013, 1/30/2013.
Lecture 18: Pipelining I.
Computer Organization
Pipelining Chapter 6.
William Stallings Computer Organization and Architecture 8th Edition
William Stallings Computer Organization and Architecture 8th Edition
Performance of Single-cycle Design
CMSC 611: Advanced Computer Architecture
Pipelining.
Chapter 14 Instruction Level Parallelism and Superscalar Processors
Single Clock Datapath With Control
Appendix C Pipeline implementation
Chapter One Introduction to Pipelined Processors
CDA 3101 Spring 2016 Introduction to Computer Organization
\course\cpeg323-08F\Topic6b-323
Design of the Control Unit for Single-Cycle Instruction Execution
Pipelining.
Pipelining: Advanced ILP
Chapter 4 The Processor Part 2
Instruction Level Parallelism and Superscalar Processors
Pipelining Chapter 6.
Instruction Level Parallelism and Superscalar Processors
Pipelined Datapath The MIPS Example 2018/11/29
Serial versus Pipelined Execution
A Multiple Clock Cycle Instruction Implementation
Systems Architecture II
\course\cpeg323-05F\Topic6b-323
Topic 5: Processor Architecture Implementation Methodology
The Processor Lecture 3.4: Pipelining Datapath and Control
Single Cycle vs. Multiple Cycle
An Introduction to pipelining
Pipeline Principle A non-pipelined system of combination circuits (A, B, C) that computation requires total of 300 picoseconds. Comb. logic.
Topic 5: Processor Architecture
Topic 6: Pipelining and Pipelined Architecture
Designing a Pipelined CPU
Pipelining: Basic Concepts
ECE 352 Digital System Fundamentals
COMPUTER ARCHITECTURES FOR PARALLEL ROCESSING
Created by Vivi Sahfitri
Pipelining Appendix A and Chapter 3.
Morgan Kaufmann Publishers The Processor
Introduction to Computer Organization and Architecture
This module covers the following topics.
Guest Lecturer: Justin Hsia
COMPUTER ORGANIZATION AND ARCHITECTURE
Pipelining.
Pipelining and Superscalar Techniques
Presentation transcript:

Topic 6: Pipelining and Pipelined Architecture 2018/11/20 \course\cpeg323-05F\Topic6-323.ppt

Reading List Slides: Topic6x Henn & Patt: Chapter 6 Other papers as assigned in class or homeworks 2018/11/20 \course\cpeg323-05F\Topic6-323.ppt

Pipelining What is pipelining - basic concepts Pipelined datapath: A case study of MIPS Pipeline control Pipeline hazard resolution 2018/11/20 \course\cpeg323-05F\Topic6-323.ppt

Pipelining – the basic concepts 2018/11/20 \course\cpeg323-05F\Topic6-323.ppt

Basic Concept Pipeline: multiple instructions are simultaneously in execution Pipeline is divided into “segments” or “stages” Machine cycle: Time required to move through one stage Machine cycle is determined by the slowest stage in the pipe Often Machine Clock cycle cycle = 2018/11/20 \course\cpeg323-05F\Topic6-323.ppt

In a perfectly balanced pipelined machine instruction time = In a normal machine (1) is not true, i.e. - stage time does not equal there is overhead but it can be very close to 10% within (1) non-pipe time # of pipe stages (1) 2018/11/20 \course\cpeg323-05F\Topic6-323.ppt

Pipelining as an Architecture Technique Generally may be invisible to user Scalar pipelined machine vs. vector machine 2018/11/20 \course\cpeg323-05F\Topic6-323.ppt

# of instructions cycle completed Pipeline throughout So pipeline increases throughout, but the time for execution of each instruction remains unchanged. Clock rate of a pipelined machine is limited by: latch time clock skew the delay time required for clock signals to propagate on a chip. # of instructions completed cycle 2018/11/20 \course\cpeg323-05F\Topic6-323.ppt

Performance Limitations of a Pipeline Rate cannot exceed the slowest stage Complexities in reality different processing time for different stages interaction/dependencies between stages - may be data dependent (dynamic) 2018/11/20 \course\cpeg323-05F\Topic6-323.ppt

The most important factors on “pipe beat” (cycle time) STAGE 1 LACHES Combinational Logic STAGE 2 LACHES STAGE 3 LACHES STAGE n LACHES (b) The most important factors on “pipe beat” (cycle time) latch delay and clock skew 2018/11/20 \course\cpeg323-05F\Topic6-323.ppt

Overlap vs. Pipeline Pipeline: tightly coupled subfunctions fixed basic stage time independent basic function evaluation Overlap Loosely coupled subfunctions variable basic stage time dependency between function evaluation 2018/11/20 \course\cpeg323-05F\Topic6-323.ppt

CPU/I/O Overlapping Common memory Computational processor (stage 1) Input/output processor (stage 2) 1 Task 1 Task 2 Task 1 Task 3 . . . 2 Task 2 Task 1 Task 3 Task 1 Time =Idle time CPU/I/O Overlapping 2018/11/20 \course\cpeg323-05F\Topic6-323.ppt

Static vs. Dynamic Pipeline - only repeated evaluations of the same function with different data are performed - no dynamic data dependencies between initiations - fixed pattern of initiations Dynamic: opposite to static (asynchronous) (overlapping) Example of static pipeline: Float-point addition pipeline 2018/11/20 \course\cpeg323-05F\Topic6-323.ppt

Uni-Function vs. Multi-Function Pipeline Uni-function pipe example: addition pipe Multi-Function pipe example arithmatic pipe Vector Pipe Programmable pipe control (Vector instruction determines the function and inputs) 2018/11/20 \course\cpeg323-05F\Topic6-323.ppt

MIPS Pipeline Pipeline stages: IF ID (decode + Reg fetch) EX MEM Write back On each clock cycle another instruction is fetched and begins its five-step execution. If an instruction is started every clock cycle, the performance will be five times that of a machine that is not pipelined. 2018/11/20 \course\cpeg323-05F\Topic6-323.ppt

MIPS Pipeline - Another Representation 2018/11/20 \course\cpeg323-05F\Topic6-323.ppt