MIPS processor continued

Slides:



Advertisements
Similar presentations
Pipeline Example: cycle 1 lw R10,9(R1) sub R11,R2, R3 and R12,R4, R5 or R13,R6, R7.
Advertisements

The Processor: Datapath & Control
Levels in Processor Design
ENEE350 Ankur Srivastava University of Maryland, College Park Based on Slides from Mary Jane Irwin ( )
Computer Structure - Datapath and Control Goal: Design a Datapath  We will design the datapath of a processor that includes a subset of the MIPS instruction.
Copyright 1998 Morgan Kaufmann Publishers, Inc. All rights reserved. Digital Architectures1 Machine instructions execution steps (1) FETCH = Read the instruction.
The Processor: Datapath & Control. Implementing Instructions Simplified instruction set memory-reference instructions: lw, sw arithmetic-logical instructions:
Dr. Iyad F. Jafar Basic MIPS Architecture: Multi-Cycle Datapath and Control.
Chapter 4 Sections 4.1 – 4.4 Appendix D.1 and D.2 Dr. Iyad F. Jafar Basic MIPS Architecture: Single-Cycle Datapath and Control.
COSC 3430 L08 Basic MIPS Architecture.1 COSC 3430 Computer Architecture Lecture 08 Processors Single cycle Datapath PH 3: Sections
Computer Architecture and Design – ECEN 350 Part 6 [Some slides adapted from A. Sprintson, M. Irwin, D. Paterson and others]
1 A single-cycle MIPS processor  An instruction set architecture is an interface that defines the hardware operations which are available to software.
MIPS processor continued. In Class Exercise Question Show the datapath of a processor that supports only R-type and jr reg instructions.
ECE-C355 Computer Structures Winter 2008 The MIPS Datapath Slides have been adapted from Prof. Mary Jane Irwin ( )
Chapter 4 From: Dr. Iyad F. Jafar Basic MIPS Architecture: Single-Cycle Datapath and Control.
MIPS processor continued
Datapath and Control AddressInstruction Memory Write Data Reg Addr Register File ALU Data Memory Address Write Data Read Data PC Read Data Read Data.
COM181 Computer Hardware Lecture 6: The MIPs CPU.
MIPS processor continued. Performance Assume that – Memory access: 200ps – ALU and adders: 100 ps – Register file read: 50ps – Register file write: 10ps.
1 Chapter 5: Datapath and Control (Part 2) CS 447 Jason Bakos.
MIPS processor continued. Review Different parts in the processor should be connected appropriately to be able to carry out the functions. Connections.
Chapter 4 From: Dr. Iyad F. Jafar Basic MIPS Architecture: Multi-Cycle Datapath and Control.
Computer Architecture Lecture 6.  Our implementation of the MIPS is simplified memory-reference instructions: lw, sw arithmetic-logical instructions:
Design a MIPS Processor (II)
ECE/CS 552: Single Cycle Control Path
Single-cycle CPU Control
Access the Instruction from Memory
EE204 Computer Architecture
CS Computer Architecture Week 10: Single Cycle Implementation
Exam-like questions.
Single Cycle CPU - Control
Multi-Cycle Datapath and Control
CS161 – Design and Architecture of Computer Systems
Single-Cycle Datapath and Control
Computer Architecture
Multi-Cycle CPU.
Single Cycle Processor
Multi-Cycle CPU.
MIPS Processor.
Design of the Control Unit for Single-Cycle Instruction Execution
Discussion Session Week 10
MIPS processor continued
Designing MIPS Processor (Single-Cycle) Presentation G
CSCI206 - Computer Organization & Programming
Single-Cycle CPU DataPath.
CS/COE0447 Computer Organization & Assembly Language
Design of the Control Unit for One-cycle Instruction Execution
CSCI206 - Computer Organization & Programming
CS/COE0447 Computer Organization & Assembly Language
Systems Architecture II
MIPS Processor.
Datapath & Control MIPS
Levels in Processor Design
Topic 5: Processor Architecture Implementation Methodology
Rocky K. C. Chang 6 November 2017
Composing the Elements
Composing the Elements
The Processor Lecture 3.2: Building a Datapath with Control
Topic 5: Processor Architecture
COSC 2021: Computer Organization Instructor: Dr. Amir Asif
Lecture 14: Single Cycle MIPS Processor
Control Unit (single cycle implementation)
Single Cycle Datapath Lecture notes from MKP, H. H. Lee and S. Yalamanchili.
Control Unit (single cycle implementation)
The Processor: Datapath & Control.
COMS 361 Computer Organization
MIPS Processor.
Processor: Datapath and Control
CS/COE0447 Computer Organization & Assembly Language
Presentation transcript:

MIPS processor continued

In Class Exercise – Supporting Jump Register 11/25/2007 10:54:43 PM week-14-1.ppt

Supporting jr Instruction

Performance Assume that How fast is Memory access: 200ps ALU and adders: 100 ps Register file read: 50ps Register file write: 50ps (the clk-to-q delay) PC update: 10ps (the clk-to-q delay) The setup time of DFFs: 10ps Other parts do not have delay How fast is An R-type instruction? A lw instruction? A sw instruction? A beq instruction? Need to find the critical path – the longest path

R-type So, the clock needs to be at least 10+200+50+100+10 = 370ps PC ready instruction ready register ready ALU ready register written So, the clock needs to be at least 10+200+50+100+10 = 370ps Will there be a problem if the next instruction is also an R-type instruction, considering that the register is written and stable only after the next rising edge of the clock? Figure not to the exact scale

lw So, the clock needs to be at least 10+200+50+100+200+10 = 570ps PC ready instruction ready register ready ALU ready Data mem ready register written So, the clock needs to be at least 10+200+50+100+200+10 = 570ps Figure not to the exact scale

beq So, it is 10+200+50+100+10 = 370ps Figure not to the exact scale PC ready instruction ready register ready ALU ready Adder 1 ready Adder 2 ready So, it is 10+200+50+100+10 = 370ps Figure not to the exact scale

Clock cycle So, how long should the clock cycle be? Is it efficient?

Control Signals Control signals include ALUCtrl and the signals to control the 2-1 selectors They are generated according to the current instruction, using the opcode [31-27] and the funct [5-0] field in the instruction.

Datapath for Memory, R-type and Branch Instructions, plus the control signals

The Effect of Control Signals Signal name Effect when deasserted Effect when asserted RegDst The register destination number for the Write register comes the rt field (20:16) The register destination number for the Write register comes the rd field (15:11) RegWrite None. The register on the Write register input is written with the value on the Write data input. ALUSrc The second ALU operand comes from the second register file output The second ALU operand is the sign-extended, lower 16 bits of the instruction PCSrc The PC is replaced by the output of the adder that computes the value of PC + 4 The PC is replaced by the output of the adder that computes the branch target MemRead Data memory contents designated by the address input are out on the Read data output. MemWrite Data memory contents designated by the address input are replaced by the value on the Write data input. MemtoReg The value fed to the register Write data input comes from the ALU The value fed to the register Write data input comes from the data memory

Table for Control Line Setting Note: Branch is anded with ALU zero output to produce PCSrc Instruction RegDst ALUSrc Memto- Reg Write Mem Read Branch ALUOp1 ALUOp0 R-format Lw Sw beq

Table for Control Line Setting Instruction RegDst ALUSrc Memto- Reg Write Mem Read Branch ALUOp1 ALUOp0 R-format 1 lw sw X beq

Truth Table for Control Function

Implementation Using PLA R lw sw beq The way to read this -- There are only 4 possible combination of inputs

MIPS ALU unit

ALU Control Use Opcode to get ALUOp, then combine ALUOp with Funct Two levels of decoding, more efficient Assume ALUOp has been determined as such for each instruction 11/15/2007 5:02:13 PM week-13-3.ppt

One Implementation ALU control bit 3 is always 0 for this set of instructions

Supporting Jump Instruction