VHDL Development for ELEC7770 VLSI Project Chris Erickson Graduate Student Department of Electrical and Computer Engineering Auburn University, Auburn,

Slides:



Advertisements
Similar presentations
Adding the Jump Instruction
Advertisements

1 Datapath and Control (Multicycle datapath) CDA 3101 Discussion Section 11.
CIS 314 Fall 2005 MIPS Datapath (Single Cycle and Multi-Cycle)
Multicycle Datapath & Control Andreas Klappenecker CPSC321 Computer Architecture.
Microprocessor Design Multi-cycle Datapath Nia S. Bradley Vijay.
CS-447– Computer Architecture Lecture 12 Multiple Cycle Datapath
The Processor: Datapath & Control
PCPC addr instr INSTR MEM R1 R2 WR W Data R Data 1 R Data 2 ALU DATA MEM ALU CTRL rs rt op +4 shift 2 zero BRANCH CTRL muxmux sign extend immed 1632 ADDADD.
L14 – Control & Execution 1 Comp 411 – Fall /04/09 Control & Execution Finite State Machines for Control MIPS Execution.
Chapter 5 The Processor: Datapath and Control Basic MIPS Architecture Homework 2 due October 28 th. Project Designs due October 28 th. Project Reports.
Fall 2007 MIPS Datapath (Single Cycle and Multi-Cycle)
ENEE350 Ankur Srivastava University of Maryland, College Park Based on Slides from Mary Jane Irwin ( )
10/18/2005Comp 120 Fall October Questions? Instruction Execution.
L15 – Control & Execution 1 Comp 411 – Spring /25/08 Control & Execution Finite State Machines for Control MIPS Execution.
331 W10.1Spring :332:331 Computer Architecture and Assembly Language Spring 2005 Week 10 Building a Multi-Cycle Datapath [Adapted from Dave Patterson’s.
1 The Processor: Datapath and Control We will design a microprocessor that includes a subset of the MIPS instruction set: –Memory access: load/store word.
Class 9.1 Computer Architecture - HUJI Computer Architecture Class 9 Microprogramming.
1  1998 Morgan Kaufmann Publishers CH5 Datapath review.
The Multicycle Processor CPSC 321 Andreas Klappenecker.
Dr. Iyad F. Jafar Basic MIPS Architecture: Multi-Cycle Datapath and Control.
Computing Systems The Processor: Datapath and Control.
COSC 3430 L08 Basic MIPS Architecture.1 COSC 3430 Computer Architecture Lecture 08 Processors Single cycle Datapath PH 3: Sections
Princess Sumaya Univ. Computer Engineering Dept. Chapter 5:
Datapath and Control: MultiCycle Implementation. Performance of Single Cycle Machines °Assume following operation times: Memory units : 200 ps ALU and.
1 COMP541 Multicycle MIPS Montek Singh Apr 4, 2012.
CPE232 Basic MIPS Architecture1 Computer Organization Multi-cycle Approach Dr. Iyad Jafar Adapted from Dr. Gheith Abandah slides
1 CS/COE0447 Computer Organization & Assembly Language Multi-Cycle Execution.
C HAPTER 5 T HE PROCESSOR : D ATAPATH AND C ONTROL M ULTICYCLE D ESIGN.
CDA 3101 Fall 2013 Introduction to Computer Organization Multicycle Datapath 9 October 2013.
Computer Architecture and Design – ECEN 350 Part 6 [Some slides adapted from A. Sprintson, M. Irwin, D. Paterson and others]
COMP541 Multicycle MIPS Montek Singh Mar 25, 2010.
ECE-C355 Computer Structures Winter 2008 The MIPS Datapath Slides have been adapted from Prof. Mary Jane Irwin ( )
Datapath and Control AddressInstruction Memory Write Data Reg Addr Register File ALU Data Memory Address Write Data Read Data PC Read Data Read Data.
Fall 2015, Sep ELEC / Lecture 5 1 ELEC / Computer Architecture and Design Fall 2015 Datapath and Control (Chapter.
Datapath and Control AddressInstruction Memory Write Data Reg Addr Register File ALU Data Memory Address Write Data Read Data PC Read Data Read Data.
Datapath and Control AddressInstruction Memory Write Data Reg Addr Register File ALU Data Memory Address Write Data Read Data PC Read Data Read Data.
Multicycle datapath.
1 CS/COE0447 Computer Organization & Assembly Language Chapter 5 Part 3.
Chapter 4 From: Dr. Iyad F. Jafar Basic MIPS Architecture: Multi-Cycle Datapath and Control.
1 CS/COE0447 Computer Organization & Assembly Language Chapter 5 Part 3.
Computer Architecture Lecture 6.  Our implementation of the MIPS is simplified memory-reference instructions: lw, sw arithmetic-logical instructions:
Access the Instruction from Memory
CS161 – Design and Architecture of Computer Systems
Control & Execution Finite State Machines for Control MIPS Execution.
Systems Architecture I
Five Execution Steps Instruction Fetch
Single Cycle Processor
Multi-Cycle CPU.
ECS 154B Computer Architecture II Spring 2009
CS/COE0447 Computer Organization & Assembly Language
Control & Execution Finite State Machines for Control MIPS Execution.
CS/COE0447 Computer Organization & Assembly Language
CSCI206 - Computer Organization & Programming
CSCE 212 Chapter 5 The Processor: Datapath and Control
Multicycle Approach Break up the instructions into steps
A Multiple Clock Cycle Instruction Implementation
Systems Architecture I
The Processor Lecture 3.2: Building a Datapath with Control
Vishwani D. Agrawal James J. Danaher Professor
Multicycle Approach We will be reusing functional units
COSC 2021: Computer Organization Instructor: Dr. Amir Asif
Processor: Multi-Cycle Datapath & Control
Multicycle Design.
Review Fig 4.15 page 320 / Fig page 322
5.5 A Multicycle Implementation
Systems Architecture I
COMS 361 Computer Organization
Processor: Datapath and Control
CS161 – Design and Architecture of Computer Systems
ELEC / Computer Architecture and Design Spring 2015 Pipeline Control and Performance (Chapter 6) Vishwani D. Agrawal James J. Danaher.
Presentation transcript:

VHDL Development for ELEC7770 VLSI Project Chris Erickson Graduate Student Department of Electrical and Computer Engineering Auburn University, Auburn, AL

Objectives Logically perform the designed functions Be efficient –Code length –Routines –Signal utilization Perform the functions appropriately per cycle

Component Development All components designed & developed independently Instruction Register Instruction Register Program Counter Program Counter Register File Register File Data Register Data Register Multiplexers Multiplexers Test RS Test RT Test RD Test RegWrite Register File B A

Multicycle Datapath Cycles per instruction (CPI): Load Word5 Load Word5 Store Word4 Store Word4 Register-type4 Register-type4 Branch3 Branch3 Jump3 Jump3

3 to 5 Cycles per instruction StepR-type (4 cycles) Mem. Ref. (4 or 5 cycles) Branch type (3 cycles) J-type Instruction fetch IR ← Memory[PC]; PC ← PC+1 Instruction decode/ Register fetch A ← Reg(IR[25-21]); B ← Reg(IR[20-16]) Execution, Branch & Jump completion ALUOut ← A op B ALUOut ← A+sign extend IR[15-0] If (A=B) then thenPC←ALUOut PC←PC[31- 26] & IR[25-0] Mem. Access or R-type completion Reg(IR[15-11]) ← ALUOut MDR←M[ALUout] or M[ALUOut]←B Memory read completion Reg(IR[20-16]) ← MDR

Control FSM Instruction decode ALU operation Write PC on branch condition Write memory data Write PC on jump Write register Read memory data Instruction fetch Compute memory addr. Write register lw or sw lw sw R B J Start State

Code Initialize, set state = 0 If state = 0 then Set state 0 signals Set state = 1 for next clock cycle If state = 1 then Set state 1 signals Set state = 2 for next clock cycle If state = 2, depending on opcode, we will either go down path of register-type, load word, store word, branch, or jump instruction.

Cycle Boundaries Multiplexers are handled at the end of each cycle Multiplexer outputs serve as “variables” to be used as inputs for the next clock cycle Either a multiplexer or another stand-alone component must have a steady-state output to serve as input for the next cycle

Multicycle Datapath PC Instr. reg. (IR) Mem. Data (MDR) ALUOut Reg. A Reg. B Reg. ALU Register file Memory Addr. Data 1 Sign extend Shift left 2 Opcode Shift left

Completed !! Any Question? Comments?