SUPERSCALAR ARCHITECTURE

Slides:



Advertisements
Similar presentations
Instruction Level Parallelism and Superscalar Processors
Advertisements

CH14 Instruction Level Parallelism and Superscalar Processors
3-Software Design Basics in Embedded Systems
Computer Organization and Architecture
Computer architecture
Computer Architecture Instruction-Level Parallel Processors
ILP: IntroductionCSCE430/830 Instruction-level parallelism: Introduction CSCE430/830 Computer Architecture Lecturer: Prof. Hong Jiang Courtesy of Yifeng.
Instruction-Level Parallel Processors {Objective: executing two or more instructions in parallel} 4.1 Evolution and overview of ILP-processors 4.2 Dependencies.
RISC and Pipelining Prof. Sin-Min Lee Department of Computer Science.
Computer Structure 2014 – Out-Of-Order Execution 1 Computer Structure Out-Of-Order Execution Lihu Rappoport and Adi Yoaz.
Superscalar processors Review. Dependence graph S1S2 Nodes: instructions Edges: ordered relations among the instructions Any ordering-based transformation.
CPE 631: ILP, Static Exploitation Electrical and Computer Engineering University of Alabama in Huntsville Aleksandar Milenkovic,
COMP4611 Tutorial 6 Instruction Level Parallelism
EECC551 - Shaaban #1 Fall 2003 lec# Pipelining and Exploiting Instruction-Level Parallelism (ILP) Pipelining increases performance by overlapping.
Chapter 4 Advanced Pipelining and Intruction-Level Parallelism Computer Architecture A Quantitative Approach John L Hennessy & David A Patterson 2 nd Edition,
Parallell Processing Systems1 Chapter 4 Vector Processors.
Chapter 8. Pipelining. Instruction Hazards Overview Whenever the stream of instructions supplied by the instruction fetch unit is interrupted, the pipeline.
1 Copyright © 2012, Elsevier Inc. All rights reserved. Chapter 3 (and Appendix C) Instruction-Level Parallelism and Its Exploitation Computer Architecture.
Computer Architecture 2011 – Out-Of-Order Execution 1 Computer Architecture Out-Of-Order Execution Lihu Rappoport and Adi Yoaz.
Instruction Level Parallelism (ILP) Colin Stevens.
Superscalar Processors (Pictured above is the DEC Alpha 21064) Presented by Jeffery Aguiar.
EECC551 - Shaaban #1 Fall 2005 lec# Pipelining and Instruction-Level Parallelism. Definition of basic instruction block Increasing Instruction-Level.
Computer Architecture 2011 – out-of-order execution (lec 7) 1 Computer Architecture Out-of-order execution By Dan Tsafrir, 11/4/2011 Presentation based.
ELEC Fall 05 1 Very- Long Instruction Word (VLIW) Computer Architecture Fan Wang Department of Electrical and Computer Engineering Auburn.
EECC551 - Shaaban #1 Spring 2004 lec# Definition of basic instruction blocks Increasing Instruction-Level Parallelism & Size of Basic Blocks.
7/2/ _23 1 Pipelining ECE-445 Computer Organization Dr. Ron Hayne Electrical and Computer Engineering.
Computer Architecture 2010 – Out-Of-Order Execution 1 Computer Architecture Out-Of-Order Execution Lihu Rappoport and Adi Yoaz.
From Essentials of Computer Architecture by Douglas E. Comer. ISBN © 2005 Pearson Education, Inc. All rights reserved. 7.2 A Central Processor.
Chapter 14 Instruction Level Parallelism and Superscalar Processors
Single-Chip Multi-Processors (CMP) PRADEEP DANDAMUDI 1 ELEC , Fall 08.
Chapter One Introduction to Pipelined Processors.
CLEMSON U N I V E R S I T Y AVR32 Micro Controller Unit Atmel has created the first processor architected specifically for 21st century applications that.
1 Sixth Lecture: Chapter 3: CISC Processors (Tomasulo Scheduling and IBM System 360/91) Please recall:  Multicycle instructions lead to the requirement.
Superscalar Processors by
ECEG-3202 Computer Architecture and Organization Chapter 7 Reduced Instruction Set Computers.
1 Lecture 7: Speculative Execution and Recovery Branch prediction and speculative execution, precise interrupt, reorder buffer.
EKT303/4 Superscalar vs Super-pipelined.
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,
Chao Han ELEC6200 Computer Architecture Fall 081ELEC : Han: PowerPC.
Lecture 1: Introduction Instruction Level Parallelism & Processor Architectures.
Out-of-order execution Lihu Rappoport 11/ MAMAS – Computer Architecture Out-Of-Order Execution Dr. Lihu Rappoport.
High Performance Computing1 High Performance Computing (CS 680) Lecture 2a: Overview of High Performance Processors * Jeremy R. Johnson *This lecture was.
Chapter 11 System Performance Enhancement. Basic Operation of a Computer l Program is loaded into memory l Instruction is fetched from memory l Operands.
PipeliningPipelining Computer Architecture (Fall 2006)
Pentium 4 Deeply pipelined processor supporting multiple issue with speculation and multi-threading 2004 version: 31 clock cycles from fetch to retire,
INTRODUCTION TO MULTISCALAR ARCHITECTURE
Advanced Architectures
William Stallings Computer Organization and Architecture 8th Edition
Parallel Processing - introduction
Lynn Choi Dept. Of Computer and Electronics Engineering
Chapter 14 Instruction Level Parallelism and Superscalar Processors
/ Computer Architecture and Design
SUPERSCALAR ARCHITECTURE
Instructional Parallelism
Sequential Execution Semantics
Instruction Level Parallelism and Superscalar Processors
Superscalar Processors & VLIW Processors
Superscalar Pipelines Part 2
EE 445S Real-Time Digital Signal Processing Lab Spring 2014
Instruction Level Parallelism and Superscalar Processors
Coe818 Advanced Computer Architecture
Mattan Erez The University of Texas at Austin
* From AMD 1996 Publication #18522 Revision E
Mattan Erez The University of Texas at Austin
Created by Vivi Sahfitri
Pipelining and Exploiting Instruction-Level Parallelism (ILP)
Presentation transcript:

SUPERSCALAR ARCHITECTURE Ahmed Faraz Fall 2008 ELEC6200-001

Definition and Characteristics Superscalar processing is the ability to initiate multiple instructions during the same clock cycle. A typical Superscalar processor fetches and decodes the incoming instruction stream several instructions at a time. Superscalar architecture exploit the potential of ILP(Instruction Level Parallelism). Fall 2008 ELEC6200-001

Fetching and dispatching two instructions per cycle Fall 2008 ELEC6200-001

Uninterrupted stream of instructions The outcomes of conditional branch instructions are usually predicted in advance to ensure uninterrupted stream of instructions Instructions are initiated for execution in parallel based on the availability of operand data, rather than their original program sequence. This is referred to as dynamic instruction scheduling. Upon completion instruction results are resequenced in the original order. Fall 2008 ELEC6200-001

Superscalar Execution Example - With Register Renaming for WAR and WAW dependencies. Fall 2008 ELEC6200-001

. Register Renaming Example WAR dependency exist between LD r7,(r3) and SUB r3, r12,r11 instructions With Register Renaming, the first write to r3 maps to hw3,while the second write maps to hw20.This converts four instruction dependency chain into 2 two instructions chains, which can then be executed in parallel if the processor allows out of order execution. Fall 2008 ELEC6200-001

Hardware Organization of a superscalar processor Multiple paths connecting units are used to illustrate a typical level of parallelism. For example, four instructions can be fetched in parallel, two integer/address instruction scan issue in parallel, two floating point instructions can complete in parellel etc. Fall 2008 ELEC6200-001

CONCLUSION It thereby allows faster CPU throughput than would otherwise be possible at the same clock rate. All general-purpose CPUs developed since about 1998 are superscalar. The major problem of executing multiple instructions in a scalar program is the handling of data dependencies. If data dependencies are not effectively handled, it is difficult to achieve an execution rate of more than one instruction per clock cycle. Fall 2008 ELEC6200-001

References THE MICRO ARCHITECTURE OF SUPERSCALAR PROCESSORS BY JAMES E. SMITH, MEMBER, IEEE, AND GURINDAR S. SOHI, SENIOR MEMBER, IEEE http://en.wikipedia.org/wiki/Superscalar http://www.seas.gwu.edu/~bhagiweb/cs211/lectures/superscalar.pdf LIMITATION OF SUPERSCALAR MICROPROCESSOR PERFORMANCE THANG TRAN ,ADVANCED MICRO DEVICES, INC. AUSTIN, TEXAS 78741 AND CHUAN-LIN WU,DEPARTMENT OF ELECTRICAL AND COMPUTER ENGINEERING Fall 2008 ELEC6200-001