Fall 2008, Oct. 31 ELEC 5200-001/6200-001 1 The IBM360 and Tomasulo's Algorithm Joel D. Hewlett.

Slides:



Advertisements
Similar presentations
Spring 2003CSE P5481 Out-of-Order Execution Several implementations out-of-order completion CDC 6600 with scoreboarding IBM 360/91 with Tomasulos algorithm.
Advertisements

The CPU The Central Presentation Unit What is the CPU?
Computer Organization, Bus Structure
COMP375 Computer Architecture and Organization Senior Review.
Real-time Signal Processing on Embedded Systems Advanced Cutting-edge Research Seminar I&III.
ARM Cortex A8 Pipeline EE126 Wei Wang. Cortex A8 is a processor core designed by ARM Holdings. Application: Apple A4, Samsung Exynos What’s the.
© 2006 Edward F. Gehringer ECE 463/521 Lecture Notes, Spring 2006 Lecture 1 An Overview of High-Performance Computer Architecture ECE 463/521 Spring 2006.
Fall 2012SYSC 5704: Elements of Computer Systems 1 MicroArchitecture Murdocca, Chapter 5 (selected parts) How to read Chapter 5.
1 COMP 206: Computer Architecture and Implementation Montek Singh Wed, Oct 19, 2005 Topic: Instruction-Level Parallelism (Multiple-Issue, Speculation)
Dynamic ILP: Scoreboard Professor Alvin R. Lebeck Computer Science 220 / ECE 252 Fall 2008.
Dyn. Sched. CSE 471 Autumn 0219 Tomasulo’s algorithm “Weaknesses” in scoreboard: –Centralized control –No forwarding (more RAW than needed) Tomasulo’s.
Computer Organization and Architecture (AT70.01) Comp. Sc. and Inf. Mgmt. Asian Institute of Technology Instructor: Dr. Sumanta Guha Slide Sources: Based.
1 COMP 206: Computer Architecture and Implementation Montek Singh Mon., Oct. 14, 2002 Topic: Instruction-Level Parallelism (Multiple-Issue, Speculation)
CS 211: Computer Architecture Lecture 5 Instruction Level Parallelism and Its Dynamic Exploitation Instructor: M. Lancaster Corresponding to Hennessey.
CPE 731 Advanced Computer Architecture ILP: Part IV – Speculative Execution Dr. Gheith Abandah Adapted from the slides of Prof. David Patterson, University.
Limits on ILP. Achieving Parallelism Techniques – Scoreboarding / Tomasulo’s Algorithm – Pipelining – Speculation – Branch Prediction But how much more.
1 Tomasulo’s Algorithm and IBM 360 Srivathsan Soundararajan.
Introduction to Systems Architecture Kieran Mathieson.
1 IBM System 360. Common architecture for a set of machines. Robert Tomasulo worked on a high-end machine, the Model 91 (1967), on which they implemented.
Cisc Complex Instruction Set Computing By Christopher Wong 1.
How Computers Work. A computer is a machine f or the storage and processing of information. Computers consist of hardware (what you can touch) and software.
Part 1.  Intel x86/Pentium family  32-bit CISC processor  SUN SPARC and UltraSPARC  32- and 64-bit RISC processors  Java  C  C++  Java  Why Java?
Basic Microcomputer Design. Inside the CPU Registers – storage locations Control Unit (CU) – coordinates the sequencing of steps involved in executing.
CPU Computer Hardware Organization (How does the computer look from inside?) Register file ALU PC System bus Memory bus Main memory Bus interface I/O bridge.
Introduction of Intel Processors
Computers organization & Assembly Language Chapter 0 INTRODUCTION TO COMPUTING Basic Concepts.
Chapter 1 Introduction. Architecture & Organization 1 Architecture is those attributes visible to the programmer —Instruction set, number of bits used.
1 Sixth Lecture: Chapter 3: CISC Processors (Tomasulo Scheduling and IBM System 360/91) Please recall:  Multicycle instructions lead to the requirement.
The Guts. CPU CPU Socket The CPU is generally a 2 inch ceramic square with a silicon chip located inside. The chip usually about the size of a thumbnail.
1 Advanced Computer Architecture Dynamic Instruction Level Parallelism Lecture 2.
Part 1.  Intel x86/Pentium family  32-bit CISC processor  SUN SPARC and UltraSPARC  32- and 64-bit RISC processors  Java  C  C++  Java  Why Java?
Chapter 8 CPU and Memory: Design, Implementation, and Enhancement The Architecture of Computer Hardware and Systems Software: An Information Technology.
2003 Dominic Swayne1 Microsoft Disk Operating System and PC DOS CS-550-1: Operating Systems Fall 2003 Dominic Swayne.
Computer Architecture Memory, Math and Logic. Basic Building Blocks Seen: – Memory – Logic & Math.
1 Lecture 6 Tomasulo Algorithm CprE 581 Computer Systems Architecture, Fall 2009 Zhao Zhang Reading:Textbook 2.4, 2.5.
CSCE 614 Fall Hardware-Based Speculation As more instruction-level parallelism is exploited, maintaining control dependences becomes an increasing.
M. Mateen Yaqoob The University of Lahore Spring 2014.
Computer Structure & Architecture 7b - CPU & Buses.
Computer Architecture 2 nd year (computer and Information Sc.)
ECEG-3202 Computer Architecture and Organization Chapter 7 Reduced Instruction Set Computers.
Professor Nigel Topham Director, Institute for Computing Systems Architecture School of Informatics Edinburgh University Informatics 3 Computer Architecture.
CPU The Central Processing Unit (CPU), has 3 main parts: Control Unit Arithmetic and Logic Unit Registers. These components are connected to the rest.
Lecture on Central Process Unit (CPU)
COMPUTER ORGANIZATIONS CSNB123 NSMS2013 Ver.1Systems and Networking1.
Chapter 2 Data Manipulation © 2007 Pearson Addison-Wesley. All rights reserved.
Copyright © 2005 – Curt Hill MicroProgramming Programming at a different level.
Dataflow Order Execution  Use data copying and/or hardware register renaming to eliminate WAR and WAW ­register name refers to a temporary value produced.
Chapter 11 System Performance Enhancement. Basic Operation of a Computer l Program is loaded into memory l Instruction is fetched from memory l Operands.
COMPUTER BASICS Module 1.1 COP4600 – Operating Systems Richard Newman.
Chapter 3 Getting Started. Copyright © 2005 Pearson Addison-Wesley. All rights reserved. Objectives To give an overview of the structure of a contemporary.
CS203 – Advanced Computer Architecture ILP and Speculation.
Chapter Six.
Topics to be covered Instruction Execution Characteristics
Advanced Architectures
/ Computer Architecture and Design
Step by step for Tomasulo Scheme
CS203 – Advanced Computer Architecture
A Dynamic Algorithm: Tomasulo’s
הכרת המחשב האישי PC - Personal Computer
Lecture 8: ILP and Speculation Contd. Chapter 2, Sections 2. 6, 2
Adapted from the slides of Prof
Lecture 7: Dynamic Scheduling with Tomasulo Algorithm (Section 2.4)
Chapter Six.
November 5 No exam results today. 9 Classes to go!
Adapted from the slides of Prof
What is Computer Architecture?
What is Computer Architecture?
The University of Adelaide, School of Computer Science
Conceptual execution on a processor which exploits ILP
Presentation transcript:

Fall 2008, Oct. 31 ELEC / The IBM360 and Tomasulo's Algorithm Joel D. Hewlett

The IBM360 The IBM 360 The IBM 360 is a family of mainframe computers introduced by IBM in Fall 2008, Oct. 31 ELEC /

Key Features Affordable –Upgradeable Common Instruction Set Microcoded CPU Unlimited Storage Instruction Level Parallelism –Tomasulo's Algorithm Fall 2008, Oct. 31 ELEC /

Common Instruction Set The IBM 360 used a common expandable instruction set, which meant: –Reduced financial risk –Affordable upgrades –Forward compatibility –Simple transition from one system to the next Fall 2008, Oct. 31 ELEC /

CPU Microcoding Facilitated the use of a common instruction set for the entire IBM 360 line. Also allowed emulation of instruction sets from some non-IBM 360 machines. Fall 2008, Oct. 31 ELEC / Fall 2008, Oct. 31 ELEC /

Unlimited Storage Expandable Memory –Disk –Drum –Tape (low cost) No Reprogramming Fall 2008, Oct. 31 ELEC / Fall 2008, Oct. 31 ELEC /

A short aside... “Big, fast disk drives were one of the strengths of IBM. In 1973, the big mainframe disk drive was model : 400 MB for $111,600 or $279/MB. By 1980, you could get the 3380: 2.5GB for $87,500 or $35/MB. DRAM prices were dropping, too: In 1979 the price was cut from $75,000/MB to $50,000/MB.”

Tomasulo's Algorithm In 1967 IBM set out to design a model of the IBM 360 capable of non-sequential execution of instructions. Problem: in order to maintain the compatibility with the rest of the IBM 360 line, the IBM 360/91 needed to handle non- sequential execution without requiring changes to existing code. Solution: Tomasulo's algorithm.

Tomasulo's Algorithm Tomasulo's algorithm handles dependencies on a hardware level. No changes to software are required. Key Features: –Reservation Stations (RS) –Common Data Bus (CDB) Fall 2008, Oct. 31 ELEC / Fall 2008, Oct. 31 ELEC /

Reservation Stations Set of registers (control,sink,source) associated with each ALU unit. –Control register: identifies the operation to be performed (multiply/divide add/subtract). –Sink register: register where result is to be stored. –Source register: holds operands used in computation.

Common Data Bus The CDB is connected to all execution units. When the result from an operation is available, it is placed on the CDB. Any dependent operations may read the result from the CDB into their source registers.

3-Stage Process Stage 1: Issue –Load instruction unto a free RS. Stage 2: Execute –Once all source dependencies are resolved the operation in the corresponding RS is executed. Stage 3: Write –After execution, the result is written to the CDB. –In the case of a store, result is also written to memory.

Data Paths

Tomasulo's Algorithm RSs inherently resolve structural hazards. The CDB solves dependencies –By using CDB, the RSs automatically perform register renaming!

Impact Tomasulo's algorithm was the first commercial use of instruction level parallelism. The algorithm is still used today. All superscalar processors are based on Tomasulo's hardware algorithm. –Power PC, Intel, AMD

References