Computer Architecture: Intro Lecture 7- Enhancing performance via pipelining; ASMs as an alternative SM design tool J. Schmalzel S. Mandayam.

Slides:



Advertisements
Similar presentations
1 A latch is a pair of cross-coupled inverters –They can be NAND or NOR gates as shown –Consider their behavior (each step is one gate delay in time) –From.
Advertisements

Lecture 13: Sequential Circuits
General Sequential Design
Finite State Machines (FSMs)
Control path Recall that the control path is the physical entity in a processor which: fetches instructions, fetches operands, decodes instructions, schedules.
Give qualifications of instructors: DAP
Digital Logic Chapter 5 Presented by Prof Tim Johnson
Digital Logic Circuits (Part 2) Computer Architecture Computer Architecture.
EKT 221 : Digital 2 ASM.
CS 151 Digital Systems Design Lecture 37 Register Transfer Level
3/20/20091 More State Machines. Multiple processes.
10/20/20081 Lab 6 – More State Machines. Multiple processes.
Overview Part 1 – Datapaths Part 2 – A Simple Computer
Embedded Systems Hardware:
Computer Architecture: Intro Lecture 8- The Control Path J. Schmalzel S. Mandayam.
1 COMP541 Sequencing – III (Sequencing a Computer) Montek Singh April 9, 2007.
1 EECS Components and Design Techniques for Digital Systems Lec 21 – RTL Design Optimization 11/16/2004 David Culler Electrical Engineering and Computer.
Computer Architecture: Intro Anatomy of a CPU J. Schmalzel S. Mandayam.
CPEN Digital System Design Chapter 9 – Computer Design
Embedded Systems Hardware: Storage Elements; Finite State Machines; Sequential Logic.
George Mason University ECE 448 – FPGA and ASIC Design with VHDL Finite State Machines State Diagrams, State Tables, Algorithmic State Machine (ASM) Charts,
1 KU College of Engineering Elec 204: Digital Systems Design Lecture 20 Datapath and Control Datapath - performs data transfer and processing operations.
Lecture 10 Topics: Sequential circuits Basic concepts Clocks
CS3350B Computer Architecture Winter 2015 Lecture 5.2: State Circuits: Circuits that Remember Marc Moreno Maza [Adapted.
Lecture 5. Sequential Logic 3 Prof. Taeweon Suh Computer Science Education Korea University 2010 R&E Computer System Education & Research.
Algorithmic State Machines.  1) Create an algorithm, using pseudocode, to describe the desired operation of the device. 2) Convert the pseudocode into.
Chap 8. Sequencing and Control. 8.1 Introduction Binary information in a digital computer –data manipulated in a datapath with ALUs, registers, multiplexers,
Computer Design Basics
Modern VLSI Design 4e: Chapter 8 Copyright  2008 Wayne Wolf Topics Basics of register-transfer design: –data paths and controllers; –ASM charts. Pipelining.
EKT221 ELECTRONICS DIGITAL II CHAPTER 4: Computer Design Basics
Chap 7. Register Transfers and Datapaths. 7.1 Datapaths and Operations Two types of modules of digital systems –Datapath perform data-processing operations.
Chapter 4 Computer Design Basics. Chapter Overview Part 1 – Datapaths  Introduction  Datapath Example  Arithmetic Logic Unit (ALU)  Shifter  Datapath.
Computer Architecture Lecture 4 Sequential Circuits Ralph Grishman September 2015 NYU.
A Simple Computer Architecture Digital Logic Design Instructor: Kasım Sinan YILDIRIM.
Instructor: Yuzhuang Hu Midterm The midterm is schedule on June 17 th, 17:30-19:30 pm. It covers the following:  VHDL Programming. 
Charles Kime & Thomas Kaminski © 2004 Pearson Education, Inc. Terms of Use (Hyperlinks are active in View Show mode) Terms of Use Chapter 10 – Computer.
Multiple-Cycle Hardwired Control Digital Logic Design Instructor: Kasım Sinan YILDIRIM.
Computer Organization & Programming Chapter 5 Synchronous Components.
CoE3DJ4 Digital Systems Design
EKT 221 : Chapter 4 Computer Design Basics
Algorithmic state machines
Datapath - performs data transfer and processing operations The control unit sends: – Control signals – Control outputs The control unit receives: – External.
Lecture 10: Computer Design Basics: The ALU and the Shifter Soon Tee Teoh CS 147.
Sept. 2005EE37E Adv. Digital Electronics Lesson 4 Synchronous Design Architectures: Control Unit Design (part three)
Lecture 15: Pipelined Datapath Soon Tee Teoh CS 147.
ECE 448 Lecture 6 Finite State Machines State Diagrams vs. Algorithmic State Machine (ASM) Charts.
ECE DIGITAL LOGIC LECTURE 21: FINITE STATE MACHINE Assistant Prof. Fareena Saqib Florida Institute of Technology Fall 2015, 11/24/2015.
CS 61C: Great Ideas in Computer Architecture Sequential Elements, Synchronous Digital Systems 1 Instructors: Vladimir Stojanovic & Nicholas Weaver
EE3A1 Computer Hardware and Digital Design Lecture 9 Pipelining.
Lecture 23: 11/26/2002CS170 Fall CS170 Computer Organization and Architecture I Ayman Abdel-Hamid Department of Computer Science Old Dominion University.
1 KU College of Engineering Elec 204: Digital Systems Design Lecture 23 Introduction Computer Specification –Instruction Set Architecture (ISA) - the specification.
EKT 221 : Digital 2 Computer Design Basics Date : Lecture : 2 hrs.
CS 61C: Great Ideas in Computer Architecture Finite State Machines, Functional Units 1 Instructors: Vladimir Stojanovic and Nicholas Weaver
Processor Organization and Architecture Module III.
CS 110 Computer Architecture Lecture 9: Finite State Machines, Functional Units Instructor: Sören Schwertfeger School of.
Lecture 4. Sequential Logic #3 Prof. Taeweon Suh Computer Science & Engineering Korea University COSE221, COMP211 Logic Design.
1 CS 352 Introduction to Logic Design Lecture 6 Ahmed Ezzat Latches, Flip/Flops, Registers, and Counters Ch-11 + Ch-12.
Digital Design with SM Charts
Computer Architecture: Intro Anatomy of a CPU J. Schmalzel S. Mandayam.
Overview Part 1 - Storage Elements and Sequential Circuit Analysis
Computer Architecture Chapter (14): Processor Structure and Function
ECE 448 Lecture 6 Finite State Machines State Diagrams, State Tables, Algorithmic State Machine (ASM) Charts, and VHDL Code.
Lecture: Pipelining Basics
Overview Instruction Codes Computer Registers Computer Instructions
ECE 448 Lecture 6 Finite State Machines State Diagrams vs. Algorithmic State Machine (ASM) Charts.
CSC 220: Computer Organization
ASM and Micro-programmed State Machines
ECE 448 Lecture 6 Finite State Machines State Diagrams, State Tables, Algorithmic State Machine (ASM) Charts, and VHDL code ECE 448 – FPGA and ASIC Design.
Advanced Computer Architecture Lecture 1
Instructor: Michael Greenbaum
Presentation transcript:

Computer Architecture: Intro Lecture 7- Enhancing performance via pipelining; ASMs as an alternative SM design tool J. Schmalzel S. Mandayam

Simple Model Data Path (7-18) Dbus n-bit bus Signal Dbus Dout Aout FS Status DA AA RW Const MB MD Register File Function Unit MuxB MuxD Din BA

Maximum Clock Rate Consider delays through each functional element—e.g., Register File: 1.4 ns Mux’s: 0.6 ns Function Unit: 2.0 ns F max = 1/T total where T total =  T i For the above example, F max = 1/4.0 = 250 MHz

Considerations for Ti §Combinatorial delays l Propagation delay (numbers of gate levels) l Rise times and fall times §Sequential delays l Propagation delay l Setup and hold times (w.r.t. clock edge)

How to Speed Up Architecture? §Brute force: l Technology speed up (scaling, power) l Parallelism §Architecture alternatives: l Pipelining

Pipeline Registers Insert pipeline register between each significant architectural element Pipeline Register DP Element 3DP Element 2DP Element 1 Speedup is due to sequential clocking through each stage of the pipeline: F max = 1/(T max + T PR ) If we use the same time delays from before, and assume T PR = 0.6 ns, F max = 1/( ) = 385 MHz

4-Stage Pipeline Diagram CK1CK2CK3CK4CK5CK6CK7CK8CK9 1A1B1C1D 2A2B2C2D 3A3B3C3D 4A4B4C4D 5A5B5C5D -- Pipeline fills: CK1-CK3; Pipeline is full: CK4-CK5; Pipeline is emptying: CK6-CK8 Opn # Clock #

Description of Pipeline Diagram §Each stage of the pipeline is denoted as A, B, C, D… §Each operation presented to the pipeline is numbered—e.g., 1, 2, 3… §Each clock is numbered: CK1, CK2… §Flush operation is indicated by “—” which suggests nothing is presented to start of pipeline. In actuality, some other operation sequence would be started, but what is shown emphasizes the fact that it takes 3 additional clock cycles to finish what was started.

Pipeline Issues §Delays due to pipeline filling: No useful output for an N-stage pipeline until N clocks §Highest performance when pipeline is full §Periodic need to flush (empty) the pipeline to accommodate branching, etc.

Algorithmic State Machines (ASMs) §State blocks for Moore (1-hot) machines include a State box and Decision box(es). §State boxes correspond to state bubbles on a SD. §Output list is provided in state box §Outputs of input decision box exit the state block and enter other state boxes. Decision boxes correspond to the input test shown on SD arcs into and out of SD bubbles.

Direct Implementation of 1-hot ASMs §State boxes map to D-F/F’s §State block entries map to OR gates §Decision boxes map to AND gates

Control Path §Hard-wired control §Sequencer §Microprogramming (also may see “Microsequencer”)

Questions, Comments, Discussion