VHDL Synthesis of a MIPS-32 Processor Bryan Allen Dave Chandler Nate Ransom.

Slides:



Advertisements
Similar presentations
B1011 Machine Code ENGR xD52 Eric VanWyk Fall 2012.
Advertisements

MIPS assembly. Review  Lat lecture, we learnt  addi,  and, andi, or, ori, xor, xori, nor,  beq, j, bne  An array is stored sequentially in the memory.
CS153 Greg Morrisett. Quick overview of the MIPS instruction set.  We're going to be compiling to MIPS assembly language.  So you need to know how to.
Comp Sci instruction encoding 1 Instruction Encoding MIPS machine language Binary encoding of instructions MIPS instruction = 32 bits Three instruction.
CPE 731 Advanced Computer Architecture Instruction Set Principles Dr. Gheith Abandah Adapted from the slides of Prof. David Patterson, University of California,
EECS 362 Group 2: Kevin Cheung Michael Glowacki Alex Romine Dave Sexton.
MIPS Assembler Programming
1 CS 430 Computer Architecture Clap if you like pizza! Pointless Poll.
ECE 15B Computer Organization Spring 2010 Dmitri Strukov Lecture 6: Logic/Shift Instructions Partially adapted from Computer Organization and Design, 4.
MIPS on FLEET Amir Kamil. Goals Run most MIPS assembly code on FLEET  Attempt to duplicate level of support in SPIM interpreter  MIPS assembly translated.
L6 – Simulator 1 Comp 411 – Fall /12/06 Adventures in Assembly Land What is an Assembler ASM Directives ASM Syntax Intro to SPIM Simple examples.
L5 – Simulator 1 Comp 411 – Fall /16/09 Adventures in Assembly Land What is an Assembler ASM Directives ASM Syntax Intro to SPIM/MARS Simple examples.
83 Assembly Language Readings: Chapter 2 ( , 2.8, 2.9, 2.13, 2.15), Appendix A.10 Assembly language Simple, regular instructions – building blocks.
IT253: Computer Organization Lecture 5: Assembly Language and an Introduction to MIPS Tonga Institute of Higher Education.
Computer Organization and Design Instruction Sets Montek Singh Wed, Sep 12, 2012 Lecture 5.
Eng. Mohammed Timraz Electronics & Communication Engineer University of Palestine Faculty of Engineering and Urban planning Software Engineering Department.
IT 251 Computer Organization and Architecture More MIPS Control Instructions Chia-Chi Teng.
Chapter 10 The Assembly Process. What Assemblers Do Translates assembly language into machine code. Assigns addresses to all symbolic labels (variables.
Computer Organization and Design Assembly & Simulation
Lecture # 1 SPIM & MIPS Programming. SPIM SPIM is a MIPS32 simulator that reads and executes assembly language program written for SPIM. Platform -Unix,
Computer Organization and Design Assembly & Simulation Montek Singh Mon, Feb 7, 2011 Lecture 5.
CPE 232 MIPS Arithmetic1 CPE 232 Computer Organization MIPS Arithmetic – Part I Dr. Gheith Abandah [Adapted from the slides of Professor Mary Irwin (
MIPS Assembly Language Chapter 13 S. Dandamudi To be used with S. Dandamudi, “Introduction to Assembly Language Programming,” Second Edition, Springer,
EEL5708/Bölöni Lec 3.1 Fall 2006 Sept 1, 2006 Lotzi Bölöni EEL 5708 High Performance Computer Architecture Lecture 3 Review: Instruction Sets.
CMPUT Computer Organization and Architecture I1 CMPUT229 - Fall 2003 Topic6: Logic, Multiply and Divide Operations José Nelson Amaral.
MIPS Assembly Language Chapter 15 S. Dandamudi To be used with S. Dandamudi, “Fundamentals of Computer Organization and Design,” Springer, 2003.
MIPS Instruction Set Architecture Prof. Sirer CS 316 Cornell University.
Computer Organization and Design Assembly & Simulation Montek Singh Wed, Sep 26, 2012 Lecture 7.
COM181 Computer Hardware Lecture 6: The MIPs CPU.
Computer Arthmetic Chapter Four P&H. Data Representation Why do we not encode numbers as strings of ASCII digits inside computers? What is overflow when.
Computer Organization and Design Assembly & Simulation Montek Singh Feb 22, 2016 Lecture 6.
EEL5708/Bölöni Lec 3.1 Fall 2004 Sept 1, 2004 Lotzi Bölöni Fall 2004 EEL 5708 High Performance Computer Architecture Lecture 3 Review: Instruction Sets.
CSE 340 Computer Architecture Spring 2016 MIPS Arithmetic Review.
Instruction Set Architecture of MIPS Processor Presentation B
Single Cycle CPU - Control
Instructor: Prof. Hany H Ammar, LCSEE, WVU
Digital Logic Design Alex Bronstein
Computer Arthmetic Chapter Four P&H.
Computer Organization and Design Assembly & Simulation
Computer Organization and Design Instruction Sets - 2
Instructions: Language of the Computer
Computer Organization and Design Instruction Sets - 2
These are slides from Comp411
32-bit MIPS ISA.
ENGR 3410 – Computer Architecture Mark L. Chang Fall 2006
Computer Organization and Design Instruction Sets
Designing MIPS Processor (Single-Cycle) Presentation G
Adventures in Assembly Land
Instruction Execution in Simple Computer
Han Wang CS3410, Spring 2012 Computer Science Cornell University
Team Brian Leslie Stephen Brenner Brian Leslie Ben Whitcher
ECE232: Hardware Organization and Design
Today’s Lecture Quick Review of Last Lecture
Computer Organization and Design Assembly & Simulation
Part II Instruction-Set Architecture
/ Computer Architecture and Design
Part IV Data Path and Control
A 1-Bit Arithmetic Logic Unit
Team Stephen Brenner Brian Leslie Ben Whitcher
Assembly and Simulation
MIPS Instruction Set Architecture
MIPS assembly.
CS352H Computer Systems Architecture
Reduced Instruction Set Computer (RISC)
Adventures in Assembly Land
MIPS Assembly.
Adventures in Assembly Land
Pointless Poll Clap if you like pizza!.
7/6/
MIPS instructions.
Presentation transcript:

VHDL Synthesis of a MIPS-32 Processor Bryan Allen Dave Chandler Nate Ransom

Completed Project 5-stage Pipelined MIPS-32 Processor Hazard Detection Data Forwarding Project Goal: Efficient VHDL Coding for Small- Area Synthesis

Subset of Instructions (the full MIPS-32 instruction set will not be implemented) add, addU, addI, addIU and, andI div, divU mult, multU nor, or, ori, xor, xori sll, sra, srl sub, subu lui slt, sltU, sltI, sltIU beq, bgez, bgtz, blez, bltz, bne j, jr lb, lw, lbu sb, sw mfhi, mflo, mthi, mtlo

Dataflow – Pipelining w/o Forwarding

Dataflow - Pipelining with Forwarding

Architecture - Control

Architecture – Pipeline with Forwarding

Architecture - Hazard Detection

Main Components Control Unit Registers and Memory Hazard Detection Unit Forwarding Unit ALU

Simulation Results - 1

Simulation Results - 2

Simulation Results - 3

Synthesis Results

Data Memory Forwarding Unit ALU Hazard Detection Unit Register Bank Sign Extender Control Instruction Memory Program Counter WriteBack Stage Memory Stage Execute Stage Instruction Decode Stage Instruction Fetch Stage CPU (Top Level) Speed (ns)Area(nm 2 )Module

Final Results Violations: None Speed: 200 MHz Area: 896,546 gates Critical Path: Program Counter to Instruction Memory Register ns Max Input Delay: 1 ns Max Output Delay: 0.1 ns Max Input Capacitance: pF Max Output Capacitance: pF

Questions?