MIPS Pipeline and Branch Prediction Implementation Shuai Chang.

Slides:



Advertisements
Similar presentations
HDL Programming Fundamentals
Advertisements

Pipeline Computer Organization II 1 Hazards Situations that prevent starting the next instruction in the next cycle Structural hazards – A required resource.
ECE 272 Xilinx Tutorial. Workshop Goals Learn how to use Xilinx to: Draw a schematic Create a symbol Generate a testbench Simulate your circuit.
CSE 378 Computer Hardware Design Prof. Richard E. Haskell – –Tel: –Web site: Follow.
GALAXY Project Final project review IHP, February 4th 2011 Tools Demonstration Dr Lilian Janin, Dr Doug Edwards - University of Manchester.
Term Project Overview Yong Wang. Introduction Goal –familiarize with the design and implementation of a simple pipelined RISC processor What to do –Build.
Prof. John Nestor ECE Department Lafayette College Easton, Pennsylvania ECE Computer Organization Lecture 23 - Course.
Chapter XI Reduced Instruction Set Computing (RISC) CS 147 Li-Chuan Fang.
Sunshine Slam Khian Hao Lim Haywood Ho Soe Myint Leo Ting Ka Hou Chan.
Number One Tom Bozic Ian Nuber Greg Ramsey Henry Romero Matt Unangst.
The Xilinx EDK Toolset: Xilinx Platform Studio (XPS) Building a base system platform.
Lec 17 Nov 2 Chapter 4 – CPU design data path design control logic design single-cycle CPU performance limitations of single cycle CPU multi-cycle CPU.
Shift Instructions (1/4)
1 Chapter 14 Embedded Processing Cores. 2 Overview RISC: Reduced Instruction Set Computer RISC-based processor: PowerPC, ARM and MIPS The embedded processor.
Reconfigurable Computing in the Undergraduate Curriculum Jason D. Bakos Dept. of Computer Science and Engineering University of South Carolina.
The Processor Andreas Klappenecker CPSC321 Computer Architecture.
CS 61C: Great Ideas in Computer Architecture (Machine Structures) Lecture 27: Single-Cycle CPU Datapath Design Instructor: Sr Lecturer SOE Dan Garcia
© 2011 Xilinx, Inc. All Rights Reserved Intro to System Generator This material exempt per Department of Commerce license exception TSU.
Ashley Good David Graziano Tim Meyer Ben Petersen Matt Saladin Advisors Joseph Zambreno Phillip Jones.
Computer Architecture ECE 4801 Berk Sunar Erkay Savas.
Infrastructure design & implementation of MIPS processors for students lab based on Bluespec HDL Students: Danny Hofshi, Shai Shachrur Supervisor: Mony.
1 A Simple but Realistic Assembly Language for a Course in Computer Organization Eric Larson Moon Ok Kim Seattle University October 25, 2008.
ASIC/FPGA design flow. FPGA Design Flow Detailed (RTL) Design Detailed (RTL) Design Ideas (Specifications) Design Ideas (Specifications) Device Programming.
ECE532 Final Project Demo Disparity Map Generation on a FPGA Using Stereoscopic Cameras ECE532 Final Project Demo Team 3 – Alim, Muhammad, Yu Ting.
Spring Introduction  Today’s tutorial focuses on introducing you to Xilinx ISE and Modelsim.  These tools are used for Verilog Coding Simulation.
HW/SW PARTITIONING OF FLOATING POINT SOFTWARE APPLICATIONS TO FIXED - POINTED COPROCESSOR CIRCUITS - Nalini Kumar Gaurav Chitroda Komal Kasat.
SPREE RTL Generator RTL Simulator RTL CAD Flow 3. Area 4. Frequency 5. Power Correctness1. 2. Cycle count SPREE Benchmarks Verilog Results 3. Architecture.
FPGA (Field Programmable Gate Array): CLBs, Slices, and LUTs Each configurable logic block (CLB) in Spartan-6 FPGAs consists of two slices, arranged side-by-side.
1/8/ L20 Project Step 8 - Data Path Copyright Joanne DeGroat, ECE, OSU1 State Machine Design with an HDL A methodology that works for documenting.
ECE 448 – FPGA and ASIC Design with VHDL Lecture 12 PicoBlaze Overview.
CS1104 – Computer Organization PART 2: Computer Architecture Lecture 12 Overview and Concluding Remarks.
FPGA-Based System Design Copyright  2004 Prentice Hall PTR Logic Design Process n Functional/ Non-functional requirements n Mapping into an FPGA n Hardware.
Working with Xilinx Spartan 3 Embedded Systems Lab 2009.
ECE 445 – Computer Organization
Introductory project. Development systems Design Entry –Foundation ISE –Third party tools Mentor Graphics: FPGA Advantage Celoxica: DK Design Suite Design.
Infrastructure design & implementation of MIPS processors for students lab based on Bluespec HDL Students: Danny Hofshi, Shai Shachrur Supervisor: Mony.
Computer Organization & Programming Chapter 6 Single Datapath CPU Architecture.
Yu Du, Yu Long Electrical & Computer Engineering
Hardware Accelerator for Hot-word Recognition Gautam Das Govardan Jonathan Mathews Wasim Shaikh Mojes Koli.
ECE 2372 Modern Digital System Design Section 4.8 Xilinx Schematic Capture Simulation Tutorial.
VHDL and Hardware Tools CS 184, Spring 4/6/5. Hardware Design for Architecture What goes into the hardware level of architecture design? Evaluate design.
1 ECE243 CPU Modification Lab. 2 You will add new insts to a CPU A CPU that implements mini ISA exists –you can compile it, load it onto DE2, run programs.
Out-of-Order OpenRISC 2 semesters project Semester B: OR1200 ISA Extension Final B Presentation By: Vova Menis-Lurie Sonia Gershkovich Advisor: Mony Orbach.
CPU Overview Computer Organization II 1 February 2009 © McQuain & Ribbens Introduction CPU performance factors – Instruction count n Determined.
Prof. John Nestor ECE Department Lafayette College Easton, Pennsylvania ECE Computer Organization Lecture 16 - Multi-Cycle.
Introduction to Computer Organization Pipelining.
ASIC/FPGA design flow. Design Flow Detailed Design Detailed Design Ideas Design Ideas Device Programming Device Programming Timing Simulation Timing Simulation.
VHDL From Ch. 5 Hardware Description Languages. History 1980’s Schematics 1990’s Hardware Description Languages –Increased due to the use of Programming.
Application-Specific Customization of Soft Processor Microarchitecture Peter Yiannacouras J. Gregory Steffan Jonathan Rose University of Toronto Electrical.
New-School Machine Structures Parallel Requests Assigned to computer e.g., Search “Katz” Parallel Threads Assigned to core e.g., Lookup, Ads Parallel Instructions.
Exercise 4.1 Different instructions utilize different hardware blocks in the basic single-cycle implementation. The next three problems in this exercise.
Introduction to the FPGA and Labs
Introduction CPU performance factors
Morgan Kaufmann Publishers
CDA 3101 Spring 2016 Introduction to Computer Organization
A Review of Processor Design Flow
Topics The logic design process..
Figure 13.1 MIPS Single Clock Cycle Implementation.
Computer Architecture
Lecture 4 Single Cycle Machine Prof. Xiaoyao Liang 2015/3/18
RTL Design Methodology
CSCI206 - Computer Organization & Programming
Figure 8.1 Architecture of a Simple Computer System.
Morgan Kaufmann Publishers The Processor
Guest Lecturer TA: Shreyas Chand
Win with HDL Slide 4 System Level Design
RTL Design Methodology
Prof. Onur Mutlu ETH Zurich Spring March 2019
RTL Design Methodology Transition from Pseudocode & Interface
Problem ??: (?? marks) Consider executing the following code on the MIPS pipelined datapath: add $t5, $t6, $t8 add $t9, $t5, $t4 lw $t3, 100($t9) sub $t2,
Presentation transcript:

MIPS Pipeline and Branch Prediction Implementation Shuai Chang

Project Overview ECE 369 Project Single Cycle Datapath ◦ Easy to implement ◦ Poor performance Performance Consideration ◦ Resource utilization ◦ Pipeline implementation ◦ Pipeline + Branch prediction

Original Design

Methodology Implemented in Verilog HDL Simulation ◦ Xilinx ISE 13.2 Hardware ◦ Xilinx Spartan 3E FPGA Devlopment Board

Methodology Implementation ◦ Pipeline ◦ Branch prediction

Methodology Inputs ◦ 2 files: Assembly Program and Data file 32 * 32 Frame 16 * 16 Window X = 0, Y = 8, SAD (Sum of Absolute Difference) = 0 is expected to be returned

Assembly Program Executed

Methodology Outputs ◦ Returned X, Y ◦ SAD ◦ Execution Time = CycleCount * CriticalPathDelay

Results

Start Earlier? Support more instructions Optimize logic Cache implementation

Questions?