MIPS processor continued. Review Different parts in the processor should be connected appropriately to be able to carry out the functions. Connections.

Slides:



Advertisements
Similar presentations
MIPS processor continued. Review Different parts in the processor should be connected appropriately to be able to carry out the functions. Connections.
Advertisements

1 Datapath and Control (Multicycle datapath) CDA 3101 Discussion Section 11.
331 W08.1Spring :332:331 Computer Architecture and Assembly Language Spring 2006 Week 8: Datapath Design [Adapted from Dave Patterson’s UCB CS152.
The Processor: Datapath & Control
1  1998 Morgan Kaufmann Publishers Chapter Five The Processor: Datapath and Control.
Processor II CPSC 321 Andreas Klappenecker. Midterm 1 Tuesday, October 5 Thursday, October 7 Advantage: less material Disadvantage: less preparation time.
Fall 2007 MIPS Datapath (Single Cycle and Multi-Cycle)
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.
The Processor 2 Andreas Klappenecker CPSC321 Computer Architecture.
Chapter Five The Processor: Datapath and Control.
Processor I CPSC 321 Andreas Klappenecker. Midterm 1 Thursday, October 7, during the regular class time Covers all material up to that point History MIPS.
The Processor Data Path & Control Chapter 5 Part 1 - Introduction and Single Clock Cycle Design N. Guydosh 2/29/04.
The Processor: Datapath & Control. Implementing Instructions Simplified instruction set memory-reference instructions: lw, sw arithmetic-logical instructions:
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.
CSCI-365 Computer Organization Lecture Note: Some slides and/or pictures in the following are adapted from: Computer Organization and Design, Patterson.
COSC 3430 L08 Basic MIPS Architecture.1 COSC 3430 Computer Architecture Lecture 08 Processors Single cycle Datapath PH 3: Sections
Chapter 4 CSF 2009 The processor: Building the datapath.
Processor: Datapath and Control
Lec 15Systems Architecture1 Systems Architecture Lecture 15: A Simple Implementation of MIPS Jeremy R. Johnson Anatole D. Ruslanov William M. Mongan Some.
1 COMP541 Multicycle MIPS Montek Singh Apr 4, 2012.
CPS3340 COMPUTER ARCHITECTURE Fall Semester, /19/2013 Lecture 17: The Processor - Overview Instructor: Ashraf Yaseen DEPARTMENT OF MATH & COMPUTER.
CDA 3101 Fall 2013 Introduction to Computer Organization
Computer Organization & Programming Chapter 6 Single Datapath CPU Architecture.
Computer Architecture and Design – ECEN 350 Part 6 [Some slides adapted from A. Sprintson, M. Irwin, D. Paterson and others]
Datapath and Control Unit Design
1. Building A CPU  We’ve built a small ALU l Add, Subtract, SLT, And, Or l Could figure out Multiply and Divide  What about the rest l How do.
MIPS processor continued. In Class Exercise Question Show the datapath of a processor that supports only R-type and jr reg instructions.
COMP541 Multicycle MIPS Montek Singh Mar 25, 2010.
D ATA P ATH OF A PROCESSOR (MIPS) Module 1.1 : Elements of computer system UNIT 1.
Chapter 4 From: Dr. Iyad F. Jafar Basic MIPS Architecture: Single-Cycle Datapath and Control.
Elements of Datapath for the fetch and increment The first element we need: a memory unit to store the instructions of a program and supply instructions.
1  1998 Morgan Kaufmann Publishers Simple Implementation Include the functional units we need for each instruction Why do we need this stuff?
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.
MIPS Processor.
May 22, 2000Systems Architecture I1 Systems Architecture I (CS ) Lecture 14: A Simple Implementation of MIPS * Jeremy R. Johnson Mon. May 17, 2000.
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:
Exam-like questions.
Single-Cycle Datapath and Control
Computer Architecture
Morgan Kaufmann Publishers
Processor Architecture: Introduction to RISC Datapath (MIPS and Nios II) CSCE 230.
MIPS Processor.
Processor (I).
MIPS processor continued
MIPS processor continued
CSCI206 - Computer Organization & Programming
Single-Cycle CPU DataPath.
CS/COE0447 Computer Organization & Assembly Language
CSCI206 - Computer Organization & Programming
MIPS Processor.
MIPS processor continued
Rocky K. C. Chang 6 November 2017
Composing the Elements
Composing the Elements
The Processor Lecture 3.2: Building a Datapath with Control
Datapath: Instruction Store/Fetch & PC Increment
Systems Architecture I
COSC 2021: Computer Organization Instructor: Dr. Amir Asif
Review Fig 4.15 page 320 / Fig page 322
Data Path Diagrams.
MIPS processor continued
CS/COE0447 Computer Organization & Assembly Language
The Processor: Datapath & Control.
MIPS Processor.
Processor: Datapath and Control
Presentation transcript:

MIPS processor continued

Review Different parts in the processor should be connected appropriately to be able to carry out the functions. Connections depending on what we need Learnt R-type, lw, sw, beq

lw & sw?

Data path only for lw and sw (answer)

Data path for both R-type and memory-type instructions add $rd, $rs, $rt, format: opcode (6 bits) rs (5 bits) rt (5 bits) rd (5 bits) funct (6 bits) lw $rt, offset_value($rs): opcode (6 bits) rs (5 bits) rt (5 bits) offset (16 bits) sw $rt, offset_value($rs): opcode (6 bits) rs (5 bits) rt (5 bits) offset (16 bits)

Data path for both R-type and memory-type instructions add $rd, $rs, $rt, format: opcode (6 bits) rs (5 bits) rt (5 bits) rd (5 bits) funct (6 bits) lw $rt, offset_value($rs): opcode (6 bits) rs (5 bits) rt (5 bits) offset (16 bits) sw $rt, offset_value($rs): opcode (6 bits) rs (5 bits) rt (5 bits) offset (16 bits)

Answer

Datapath for R-type, memory, and branch operations

Datapath for R-type, memory, and branch operations (Answer)

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

11/15/2007 5:02:11 PMweek-13-3.ppt11 Jump Instruction Jump instruction seems easy to implement – We just need to replace the lower 28 bits of the PC with the lower 26 bits of the instruction shifted by 2 bits The shift is achieved by simply concatenating 00 to the jump offset

12 Implementing Jumps The one we have supports arithmetic/logic instructions, branch instructions, load and store instructions – We need also to support the jump instruction – What are the changes we need to make? opcode Address 26250

Add j?

14 Supporting Jump Instruction

Questions Which statement is true about the datapath below? a)The data path supports lw. b)The data path supports sw. c)Both of the above. d)None of the above.

Questions Which statement is true about the datapath below? a)The data path supports lw. b)The data path supports sw. c)Both of the above. d)None of the above.

Questions The following datapath supports R-type, lw, sw, and beq. Which of the following statements is true if we decide to support less instructions? a)If only to support R-type and lw, we need exactly MUX. b)If only to support R-type and beq, we need exactly MUX. c)Both of the above. d)None of the above.

Questions Consider the MIPS processor that supports the R-type, lw, sw, and beq instructions. Suppose $t0 is holding 9, $t1 is holding 4, the data memory location 4*i is holding value i, when we encounter the following instruction: beq $t0, $t1, L1 where L1 is the 4 th instruction after the beq instruction. Suppose the control signal for a 2-1 MUX is 0 if we do not care about its value. What will be the stable values showing at ports WriteData of the register file and WriteData of the data memory during the execution of this instruction? (a) 1 and 9. (b) 5 and 4. (c) 20 and 4. (d) None of the above.

11/25/ :54:43 PMweek-14-1.ppt19 In Class Exercise – Supporting Jump Register and R-type

Performance Assume that – Memory access: 200ps – ALU and adders: 100 ps – Register file read: 50ps – Register file write: 10ps (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 PC ready instruction ready register ready ALU ready register written So, the clock needs to be at least = 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 = 570ps Figure not to the exact scale PC ready instruction ready register ready ALU ready register written Data mem ready

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

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