CPU Design Tradeoffs. Building the Beta. Performance Measure. The Beta ISA MIPS = C.P.I. Clock Frequency (MHz) PUSHING PERFORMANCE...
|
|
- Harvey Nash
- 5 years ago
- Views:
Transcription
1 uilding the eta CPU esign Tradeoffs I wonder where this goes? Maximum Performance: measured by the numbers of instructions executed per second Minimum Cost : measured by the size of the circuit. Lab #5 due Thursday Quiz #3 Friday est Performance/Price: measured by the ratio of MIPS to size. In power-sensitive applications MIPS/Watt is important too. L4 uilding a eta L4 uilding a eta 2 Performance Measure 6 OpCode The eta IS Millions of s per Second MIPS = Clock Frequency (MHz) C.P.I. X X X X Rb (UNUSE) Operate class: Reg[]! Reg[] op Reg[Rb] 6 X X X X Operate class: Reg[]! Reg[] op SXT(C) classes distinguished by OOE: O MEM Transfer of Control PUSHING PERFORMNCE... Clocks per instruction Opcodes, both formats: SU MUL* IV* *optional CMPEQ CMPLE CMPLT N OR XOR SHL SHR SR X X X X TOY: cycle/inst. LTER: more MHz via pipelining L4 uilding a eta 3 L: Reg[]! Mem[Reg[]SXT(C)] ST: Mem[Reg[]SXT(C)]! Reg[] JMP: Reg[]! ;! Reg[] EQ: NE: LR: Reg[]! Mem[ 4 4*SXT(C)] Reg[]! ; if Reg[]= then! *SXT(C) Reg[]! ; if Reg[]" then! *SXT(C) L4 uilding a eta 4
2 pproach: Incremental Featurism Multi-Port s Each instruction class can be implemented using a simple component repertoire. We ll try implementing data paths for each class individually, and merge them (using MUXes, etc). Steps:. Operate instructions 2. Load & Store s 3. Jump & ranch instructions 4. Exceptions 5. Merge data paths Our ag of Components: W R R s Muxes LU R2 (3-port) R2 lack box LU Memories R R/W ata dest clk asel Read Port ite Port Read Port clk s Q Q bsel ite ddress ite Enable ite ata CLK 5 (independent Read addresses) W R 5 5 R R2 (3-port) R2 (Independent Read ata) 2 combinational RE ports*, clocked WRITE port *internal logic ensures Reg[3] reads as L4 uilding a eta 5 L4 uilding a eta 6 Timing Starting point: LU Ops 2 combinational RE ports, clocked WRITE port -bit (4-byte) instruction: R R Reg[] new Reg[] OpCode Rb (unused) CLK t P t P Means, to ET, Reg[R4]! Reg[R2] Reg[R3] W new Reg[] What if (say) W=R??? R reads old value of Reg[R] until next clock edge! t S t h First, we ll need hardware to: Read next -bit instruction ECOE instruction:, SU, XOR, etc RE operands (, Rb) from ; PERFORM indicated operation; WRITE result back into (). L4 uilding a eta 7 L4 uilding a eta 8
3 Fetch/ecode LU Op ata Path! Use a counter to FETCH the next instruction: PROGRM COUNTER () OOE <3:26> INSTRUCTION WOR FIELS CONTROL SIGNLS! use as memory address! add 4 to, load new value at end of cycle! fetch instruction from memory º use some instruction fields directly (register numbers, 6-bit constant) º use bits <3:26> to generate controls LUFN X X X X : <25:2> : <2:6> LUFN W R R Rb (UNUSE) Operate class: Reg[]! Reg[] op Reg[Rb] Rb: <5:> LU R2 R2! L4 uilding a eta 9 L4 uilding a eta LU Operations (w/constant) Load X X X X Operate class: Reg[]! Reg[] op SXT(C) L: Reg[]! Mem[Reg[]SXT(C)] : <2:6> Rb: <5:> : <2:6> Rb: <5:> : <25:2> R W W R R2 R2 : <25:2> R W W R R2 R2 C: SXT(<5:>) C: SXT(<5:>) LUFN LUFN LU SEL LUFN LUFN LU R/W ata dr R 2 SEL L4 uilding a eta L4 uilding a eta 2
4 Store JMP ST: Mem[Reg[]SXT(C)]! Reg[] 2 SEL 4 3 JMP: Reg[]! ;! Reg[] : <2:6> : <25:2> C: SXT(<5:>) R W W R Rb: <5:> : <25:2> R2SEL R2 R2 No! : <25:2> : <2:6> C: SXT(<5:>) R W W R Rb: <5:> : <25:2> R2SEL R2 R2 R2SEL SEL LUFN LUFN LU R/W ata dr R SEL R2SEL SEL LUFN LUFN LU R/W ata dr R 2 SEL 2 SEL L4 uilding a eta 3 L4 uilding a eta 4 SEL EQ/NE s *SXT(C) 4*SXT(<5:>) SEL R2SEL SEL LUFN : <25:2> : <2:6> C: SXT(<5:>) LUFN EQ: Reg[]! ; if Reg[]= then! *SXT(C) NE: R W W R Rb: <5:> LU 2 Reg[]! ; if Reg[]" then! *SXT(C) SEL R2 R2 : <25:2> R2SEL R/W ata dr R Load Relative Hey, WIT MINUTE. What s Load Relative good for anyway??? I thought Code is PURE, i.e. RE-ONLY; and stored in a PROGRM region of memory; ata is RE-WRITE, and stored either On the STCK (local); or In some GLOL VRILE region; or In a global storage HEP. LR: So why an instruction designed to load data that s near the instruction??? ddresses & other large constants Reg[]! Mem[ 4 4*SXT(C)] C: X = X * 23456; ET: L(X, r) LR(c, r) MUL(r, r, r) ST(r, X)... c: LONG(23456) L4 uilding a eta 5 L4 uilding a eta 6
5 SEL IF LR *SXT(C) SEL R2SEL SEL SEL LUFN LR: Reg[]! Mem[ 4 4*SXT(C)] : <25:2> : <2:6> C:SXT( <5:>) R W W SEL LUFN R Rb: <5:> : <25:2> R2SEL LU 2 SEL R2 R2 R/W ata dr R Exceptions What if something happens?! Execution of an illegal op-code! Reference to non-existent memory! ivide by zero Or, maybe, just something unanticipated! User hits a key! packet comes in via the network GOL: handle all these cases (and more) in SOFTWRE:! Treat each such case as an (implicit) procedure call! Procedure handles problem, returns to interrupted program.! TRNSPRT to interrupted program!! Important added capability: handlers for certain errors (illegal opcodes) can extend instruction set using software (Lab 7!). L4 uilding a eta 7 L4 uilding a eta 8 Exception Processing Plan:! Interrupt running program! Invoke exception handler (like a procedure call)! Return to continue execution. Implementation How exceptions work:! on t execute current instruction! Instead fake a forced procedure call! save current (actually current 4)! load with exception vector! x4 for synch. exception, x8 for asynch. exceptions We d like RECOVERLE INTERRUPTS for Synchronous events, generated by CPU or system FULTS (eg, Illegal, divide-by-, illegal mem address) TRPS & system calls (eg, read-a-character) synchronous events, generated by I/O (eg, key struck, packet received, disk transfer complete) KEY: TRNSPRCY to interrupted program.! Most difficult for asynchronous interrupts Question: where to save current 4?! Our approach: reserve a register (R3, aka XP)! Prohibit user programs from using XP. Why? Example: IV unimplemented L(R3,,R) L(R3,,R) IV(R,R,R2) ST(R2,C,R3) Forced by hardware IllOp: PUSH(XP) Fetch inst. at Mem[Reg[XP] 4] check for IV opcode, get reg numbers perform operation in SW, fill result reg P(XP) JMP(XP) L4 uilding a eta 9 L4 uilding a eta 2
6 Xdr ILL Exceptions SEL ad Opcode: Reg[XP]! ;! IllOp Other: Reg[XP]! ;! Xadr *SXT(C) IRQ SEL R2SEL SEL SEL LUFN WSEL XP : <25:2> : <2:6> WSEL C: SXT(<5:>) W W SEL LUFN R R Rb: <5:> : <25:2> R2SEL LU 2 W S E L R2 R2 ata dr W E R F R R/W O L ST JMP LUFN F(op) F(op) "" "" "" SEL WR R2SEL SEL 2? :? : 3 4 SEL WSEL -- EQ NE Implementation choices:! ROM indexed by opcode, external branch & trap logic! PL! random logic (eg, standard cell gates) LR Illop IRQ L4 uilding a eta 2 L4 uilding a eta 22 Xdr ILL eta: Our Final nswer Next Time: Tackling the ottleneck SEL *SXT(C) IRQ XP : <25:2> : <2:6> WSEL C: SXT(<5:>) R W W R Rb: <5:> : <25:2> R2SEL R2 R2 W E R F Is that all there is to building a processor??? No. You ve gotta print up all those little eta Inside stickers. SEL SEL R2SEL SEL SEL LUFN WSEL LUFN LU R/W ata dr R 2 W S E L L4 uilding a eta 23 L4 uilding a eta 24
13. Building the Beta
3. uilding the eta 6.4x Computation Structures Part 2 Computer rchitecture Copyright 25 MIT EECS 6.4 Computation Structures L3: uilding the eta, Slide # CPU esign Tradeoffs Maximum Performance: measured
More informationBuilding the Beta. Handouts: Lecture Slides, PS 7, Lab 6. I wonder where this goes? Spring /5/01. L15- Building the Beta 1 A B
Building the Beta I wonder where this goes? B LU Beta Kit 0 1 Instruction Handouts: Lecture Slides, PS 7, Lab 6 L15- Building the Beta 1 CPU esign Tradeoffs Maximum Performance: measured by the numbers
More informationPipelining the Beta. I don t think they mean the fish...
Pipelining the Beta bet ta ('be-t&) n. ny of various species of small, brightly colored, long-finned freshwater fishes of the genus Betta, found in southeast sia. be ta ( b-t&, be-) n. 1. The second letter
More informationPipeline Issues. This pipeline stuff makes my head hurt! Maybe it s that dumb hat. L17 Pipeline Issues Fall /5/02
Pipeline Issues This pipeline stuff makes my head hurt! Maybe it s that dumb hat L17 Pipeline Issues 1 Recalling Data Hazards PROLEM: Subsequent instructions can reference the contents of a register well
More informationISTD 103 Computation Structures Prof. Tomas Lozano-Perez
ISTD 103 Computation Structures Prof. Tomas Lozano-Perez This file and its contents are provided under license from MIT and the named authors, under the terms of the MIT-SUTD Collaboration. The following
More information6.004 Computation Structures Spring 2009
MIT OpenCourseWare http://ocw.mit.edu 6.4 Computation Structures Spring 29 For information about citing these materials or our Terms of Use, visit: http://ocw.mit.edu/terms. Pipelining the eta bet ta ('be-t&)
More information9. Programmable Machines
9. Programmable Machines 6.004x Computation Structures Part 2 Computer Architecture Copyright 2015 MIT EECS 6.004 Computation Structures L09: Programmable Machines, Slide #1 Example: Factorial factorial(n)
More informationPipelined CPUs. Study Chapter 4 of Text. Where are the registers?
Pipelined CPUs Where are the registers? Study Chapter 4 of Text Second Quiz on Friday. Covers lectures 8-14. Open book, open note, no computers or calculators. L17 Pipelined CPU I 1 Review of CPU Performance
More informationL19 Pipelined CPU I 1. Where are the registers? Study Chapter 6 of Text. Pipelined CPUs. Comp 411 Fall /07/07
Pipelined CPUs Where are the registers? Study Chapter 6 of Text L19 Pipelined CPU I 1 Review of CPU Performance MIPS = Millions of Instructions/Second MIPS = Freq CPI Freq = Clock Frequency, MHz CPI =
More informationDesigning an Instruction Set
Designing an Instruction Set Lab 4 due today NEXT TUESDAY, /22! 6.4 Fall 22 /7/ L2 Instruction Set Let s Build a Simple Computer Data path for computing N*(N-) N A SEL B SEL A LE L.E. A B LE L.E. B * -
More informationCS61C : Machine Structures
CS 61C L path (1) insteecsberkeleyedu/~cs61c/su6 CS61C : Machine Structures Lecture # path natomy: 5 components of any Computer Personal Computer -7-25 This week Computer Processor ( brain ) path ( brawn
More informationDesigning an Instruction Set
Designing an Instruction Set Nerd Chef at work. move flour,bowl add milk,bowl add egg,bowl move bowl,mixer rotate mixer... WARD & HALSTEAD 6.004 NERD KIT Handouts: Lecture Slides, β docs L12 Instruction
More information6.004 Computation Structures Spring 2009
MIT OpenCourseWare http://ocw.mit.edu 6.4 Computation Structures Spring 29 For information about citing these materials or our Terms of Use, visit: http://ocw.mit.edu/terms. Designing an Instruction Set
More informationLearning Outcomes. Spiral 3-3. Sorting: Software Implementation REVIEW
3-3. Learning Outcomes 3-3. Spiral 3-3 Single Cycle CPU I understand how the single-cycle CPU datapath supports each type of instruction I understand why each mux is needed to select appropriate inputs
More informationANEXA la Cursul CN2_2 Procesorul RISC (Beta, fara banda de asamblare) (
ANEXA la Cursul CN2_2 Procesorul RISC (Beta, fara banda de asamblare) (http://6004.csail.mit.edu/) 1 2 3 // Beta PC logic module pc(clk,reset,pcsel,offset,jump_addr,branch_addr,pc,pc_plus_4); input clk;
More informationD. Suppose the following code were running on a Beta implementation with a 5 -stage pipeline, full bypassing and 1 branch delay slot with annulment.
Page 1 of 18 Pipelined Beta indicates problems that have been selected for discussion in section, time permitting. Problem 1. Beta quickies. A. In a 5 -stage pipelined Beta, when does the hardware use
More informationECE260: Fundamentals of Computer Engineering
Datapath for a Simplified Processor James Moscola Dept. of Engineering & Computer Science York College of Pennsylvania Based on Computer Organization and Design, 5th Edition by Patterson & Hennessy Introduction
More informationProcessor (I) - datapath & control. Hwansoo Han
Processor (I) - datapath & control Hwansoo Han Introduction CPU performance factors Instruction count - Determined by ISA and compiler CPI and Cycle time - Determined by CPU hardware We will examine two
More informationChapter 4. The Processor
Chapter 4 The Processor Introduction CPU performance factors Instruction count Determined by ISA and compiler CPI and Cycle time Determined by CPU hardware We will examine two MIPS implementations A simplified
More informationMore CPU Pipelining Issues
More CPU Pipelining Issues What have you been beating your head against? This pipe stuff makes my head hurt! Important Stuff: Study Session for Problem Set 5 tomorrow night (11/11) 5:30-9:00pm Study Session
More informationReview. N-bit adder-subtractor done using N 1- bit adders with XOR gates on input. Lecture #19 Designing a Single-Cycle CPU
CS6C L9 CPU Design : Designing a Single-Cycle CPU () insteecsberkeleyedu/~cs6c CS6C : Machine Structures Lecture #9 Designing a Single-Cycle CPU 27-7-26 Scott Beamer Instructor AI Focuses on Poker Review
More informationIntroduction. Chapter 4. Instruction Execution. CPU Overview. University of the District of Columbia 30 September, Chapter 4 The Processor 1
Chapter 4 The Processor Introduction CPU performance factors Instruction count etermined by IS and compiler CPI and Cycle time etermined by CPU hardware We will examine two MIPS implementations simplified
More informationindicates problems that have been selected for discussion in section, time permitting.
Page 1 of 11 Building the Beta indicates problems that have been selected for discussion in section, time permitting. Problem 1. Beta quickies: A. In an unpipelined Beta implementation, when is the signal
More informationThe overall datapath for RT, lw,sw beq instrucution
Designing The Main Control Unit: Remember the three instruction classes {R-type, Memory, Branch}: a) R-type : Op rs rt rd shamt funct 1.src 2.src dest. 31-26 25-21 20-16 15-11 10-6 5-0 a) Memory : Op rs
More informationChapter 4. The Processor
Chapter 4 The Processor Introduction CPU performance factors Instruction count Determined by ISA and compiler CPI and Cycle time Determined by CPU hardware 4.1 Introduction We will examine two MIPS implementations
More informationEECS Digital Design
EECS 150 -- Digital Design Lecture 11-- Processor Pipelining 2010-2-23 John Wawrzynek Today s lecture by John Lazzaro www-inst.eecs.berkeley.edu/~cs150 1 Today: Pipelining How to apply the performance
More informationCh 5: Designing a Single Cycle Datapath
Ch 5: esigning a Single Cycle path Computer Systems Architecture CS 365 The Big Picture: Where are We Now? The Five Classic Components of a Computer Processor Control Memory path Input Output Today s Topic:
More informationCS61C : Machine Structures
inst.eecs.berkeley.edu/~cs61c CS61C : Machine Structures Lecture #19 Designing a Single-Cycle CPU 27-7-26 Scott Beamer Instructor AI Focuses on Poker CS61C L19 CPU Design : Designing a Single-Cycle CPU
More informationCPU Design Steps. EECC550 - Shaaban
CPU Design Steps 1. Analyze instruction set operations using independent RTN => datapath requirements. 2. Select set of datapath components & establish clock methodology. 3. Assemble datapath meeting the
More informationSystems Architecture
Systems Architecture Lecture 15: A Simple Implementation of MIPS Jeremy R. Johnson Anatole D. Ruslanov William M. Mongan Some or all figures from Computer Organization and Design: The Hardware/Software
More informationUC Berkeley CS61C : Machine Structures
inst.eecs.berkeley.edu/~cs61c UC Berkeley CS61C : Machine Structures Lecture 25 CPU Design: Designing a Single-cycle CPU Lecturer SOE Dan Garcia www.cs.berkeley.edu/~ddgarcia T-Mobile s Wi-Fi / Cell phone
More informationCPU Pipelining Issues
Spring 25 3/24 Lecture page 1 CPU Pipelining Issues What have you been beating your head against? This pipe stuff makes my head hurt! L17 Pipeline Issues 1 :J: T REG IRREG 4-Stage minimips
More informationProgrammable Control Logic
Programmable Control Logic Microsequencers Example: building the micro8 Hardware/Software tradeoff Lab #5 due Thursday, project abstract next Monday 1 Digital Systems = FSMs + Datapath FSM control Datapath:
More informationPipeline design. Mehran Rezaei
Pipeline design Mehran Rezaei How Can We Improve the Performance? Exec Time = IC * CPI * CCT Optimization IC CPI CCT Source Level * Compiler * * ISA * * Organization * * Technology * With Pipelining We
More informationCOMPUTER ORGANIZATION AND DESIGN. 5 th Edition. The Hardware/Software Interface. Chapter 4. The Processor
COMPUTER ORGANIZATION AND DESIGN The Hardware/Software Interface 5 th Edition Chapter 4 The Processor Introduction CPU performance factors Instruction count Determined by ISA and compiler CPI and Cycle
More informationHardware Description Languages. Hardware Description Languages. Hardware Description Languages. Digital Design Using Verilog
4 3 2 0 + Z 0 If (done) $finish; Digital Design Using Verilog Hardware Description Languages always @(posedge clk) PCSEL Xdr OP ILL JT PC 00 +4 Instruction Memory D Ra: Rb: Rc: 0 R2SEL
More informationThe Processor: Datapath and Control. Jin-Soo Kim Computer Systems Laboratory Sungkyunkwan University
The Processor: Datapath and Control Jin-Soo Kim (jinsookim@skku.edu) Computer Systems Laboratory Sungkyunkwan University http://csl.skku.edu Introduction CPU performance factors Instruction count Determined
More informationMark Redekopp and Gandhi Puvvada, All rights reserved. EE 357 Unit 15. Single-Cycle CPU Datapath and Control
EE 37 Unit Single-Cycle CPU path and Control CPU Organization Scope We will build a CPU to implement our subset of the MIPS ISA Memory Reference Instructions: Load Word (LW) Store Word (SW) Arithmetic
More informationMidterm #2 Solutions April 23, 1997
CS152 Computer Architecture and Engineering Computer Science Division Department of Electrical Engineering and Computer Sciences University of California, Berkeley Sp97 D.K. Jeong Midterm #2 Solutions
More informationCSE 141 Computer Architecture Spring Lectures 11 Exceptions and Introduction to Pipelining. Announcements
CSE 4 Computer Architecture Spring 25 Lectures Exceptions and Introduction to Pipelining May 4, 25 Announcements Reading Assignment Sections 5.6, 5.9 The Processor Datapath and Control Section 6., Enhancing
More informationThe Processor. Z. Jerry Shi Department of Computer Science and Engineering University of Connecticut. CSE3666: Introduction to Computer Architecture
The Processor Z. Jerry Shi Department of Computer Science and Engineering University of Connecticut CSE3666: Introduction to Computer Architecture Introduction CPU performance factors Instruction count
More informationCOMPUTER ORGANIZATION AND DESIGN
COMPUTER ORGANIZATION AND DESIGN 5 Edition th The Hardware/Software Interface Chapter 4 The Processor 4.1 Introduction Introduction CPU performance factors Instruction count CPI and Cycle time Determined
More informationMOS 6502 Architecture
MOS 6502 Architecture Lecture 3 Fall 17 1 History Origins lie in the Motorola 6800. Was very expensive for consumers. ($300, or about $1500 in 2017 $s) Chuck Peddle proposes lower-cost, lower-area 6800
More information17. Virtualizing the Processor
17. Virtualizing the Processor 6.004x Computation Structures Part 3 Computer Organization Copyright 2016 MIT EECS 6.004 Computation Structures L17: Virtualizing the Processor, Slide #1 Recap: Virtual Memory
More informationEECS150 - Digital Design Lecture 10- CPU Microarchitecture. Processor Microarchitecture Introduction
EECS150 - Digital Design Lecture 10- CPU Microarchitecture Feb 18, 2010 John Wawrzynek Spring 2010 EECS150 - Lec10-cpu Page 1 Processor Microarchitecture Introduction Microarchitecture: how to implement
More informationCS61C : Machine Structures
inst.eecs.berkeley.edu/~cs61c CS61C : Machine Structures Lecture #18 Introduction to CPU Design 2007-7-25 Scott Beamer, Instructor CS61C L18 Introduction to CPU Design (1) What about overflow? Consider
More informationController Implementation--Part I. Cascading Edge-triggered Flip-Flops. Clock Skew. Cascading Edge-triggered Flip-Flops. Why Gating of Clocks is Bad!
Controller Implementation--Part I lternative controller FSM implementation approaches based on: Classical Moore and Mealy machines Time state: ivide and Jump counters Microprogramming (ROM) based approaches»
More informationChapter 4. The Processor. Computer Architecture and IC Design Lab
Chapter 4 The Processor Introduction CPU performance factors CPI Clock Cycle Time Instruction count Determined by ISA and compiler CPI and Cycle time Determined by CPU hardware We will examine two MIPS
More informationLevels in Processor Design
Levels in Processor Design Circuit design Keywords: transistors, wires etc.results in gates, flip-flops etc. Logical design Putting gates (AND, NAND, ) and flip-flops together to build basic blocks such
More informationCS3350B Computer Architecture Winter 2015
CS3350B Computer Architecture Winter 2015 Lecture 5.5: Single-Cycle CPU Datapath Design Marc Moreno Maza www.csd.uwo.ca/courses/cs3350b [Adapted from lectures on Computer Organization and Design, Patterson
More informationThe Big Picture: Where are We Now? EEM 486: Computer Architecture. Lecture 3. Designing a Single Cycle Datapath
The Big Picture: Where are We Now? EEM 486: Computer Architecture Lecture 3 The Five Classic Components of a Computer Processor Input Control Memory Designing a Single Cycle path path Output Today s Topic:
More informationEECS 151/251A Fall 2017 Digital Design and Integrated Circuits. Instructor: John Wawrzynek and Nicholas Weaver. Lecture 13 EE141
EECS 151/251A Fall 2017 Digital Design and Integrated Circuits Instructor: John Wawrzynek and Nicholas Weaver Lecture 13 Project Introduction You will design and optimize a RISC-V processor Phase 1: Design
More informationCS 61C: Great Ideas in Computer Architecture (Machine Structures) Lecture 28: Single- Cycle CPU Datapath Control Part 1
CS 61C: Great Ideas in Computer Architecture (Machine Structures) Lecture 28: Single- Cycle CPU Datapath Control Part 1 Guest Lecturer: Sagar Karandikar hfp://inst.eecs.berkeley.edu/~cs61c/ http://research.microsoft.com/apps/pubs/default.aspx?id=212001!
More informationCPU Organization (Design)
ISA Requirements CPU Organization (Design) Datapath Design: Capabilities & performance characteristics of principal Functional Units (FUs) needed by ISA instructions (e.g., Registers, ALU, Shifters, Logic
More informationCOMP303 - Computer Architecture Lecture 8. Designing a Single Cycle Datapath
COMP33 - Computer Architecture Lecture 8 Designing a Single Cycle Datapath The Big Picture The Five Classic Components of a Computer Processor Input Control Memory Datapath Output The Big Picture: The
More informationCSE140: Components and Design Techniques for Digital Systems
CSE4: Components and Design Techniques for Digital Systems Tajana Simunic Rosing Announcements and Outline Check webct grades, make sure everything is there and is correct Pick up graded d homework at
More informationChapter 4 The Processor 1. Chapter 4A. The Processor
Chapter 4 The Processor 1 Chapter 4A The Processor Chapter 4 The Processor 2 Introduction CPU performance factors Instruction count Determined by ISA and compiler CPI and Cycle time Determined by CPU hardware
More informationChapter 4. The Processor Designing the datapath
Chapter 4 The Processor Designing the datapath Introduction CPU performance determined by Instruction Count Clock Cycles per Instruction (CPI) and Cycle time Determined by Instruction Set Architecure (ISA)
More informationSingle Cycle Datapath
Single Cycle atapath Lecture notes from MKP, H. H. Lee and S. Yalamanchili Section 4.1-4.4 Appendices B.3, B.7, B.8, B.11,.2 ing Note: Appendices A-E in the hardcopy text correspond to chapters 7-11 in
More informationChapter 9 Computer Design Basics
Logic and Computer Design Fundamentals Chapter 9 Computer Design asics Part 2 A Simple Computer Charles Kime & Thomas Kaminski 2008 Pearson Education, Inc. (Hyperlinks are active in View Show mode) Overview
More informationCS222: Processor Design
CS222: Processor Design Dr. A. Sahu Dept of Comp. Sc. & Engg. Indian Institute of Technology Guwahati Processor Design building blocks Outline A simple implementation: Single Cycle Data pathandcontrol
More informationDarshan Institute of Engineering & Technology for Diploma Studies Unit - 1
Darshan Institute of Engineering & Technology for Diploma Studies Unit - 1 1. Draw and explain 4 bit binary arithmetic or adder circuit diagram. A binary parallel adder is digital function that produces
More informationInstruction Level Parallelism. ILP, Loop level Parallelism Dependences, Hazards Speculation, Branch prediction
Instruction Level Parallelism ILP, Loop level Parallelism Dependences, Hazards Speculation, Branch prediction Basic Block A straight line code sequence with no branches in except to the entry and no branches
More informationCOMPUTER ORGANIZATION AND DESIGN. 5 th Edition. The Hardware/Software Interface. Chapter 4. The Processor
COMPUTER ORGANIZATION AND DESIGN The Hardware/Software Interface 5 th Edition Chapter 4 The Processor COMPUTER ORGANIZATION AND DESIGN The Hardware/Software Interface 5 th Edition The Processor - Introduction
More informationMoore EECS150. Implement of Processor FSMs. Memory-Register Interface Timing. Processor / Memory Interface. Processor Signal FLow
Moore RES PC EECS5 IF PC MR, PC + PC Section Controller Implementations Fall Note capture of MBR in these states IF IF IF3 O MR Mem,,, Mem MBR MBR IR = = = IR MR, L IR MR ST C MBR MR Mem, MR Mem, L, ST,,,
More informationChapter 4. Instruction Execution. Introduction. CPU Overview. Multiplexers. Chapter 4 The Processor 1. The Processor.
COMPUTER ORGANIZATION AND DESIGN The Hardware/Software Interface 5 th Edition COMPUTER ORGANIZATION AND DESIGN The Hardware/Software Interface 5 th Edition Chapter 4 The Processor The Processor - Introduction
More informationChapter 4. The Processor. Instruction count Determined by ISA and compiler. We will examine two MIPS implementations
Chapter 4 The Processor Part I Introduction CPU performance factors Instruction count Determined by ISA and compiler CPI and Cycle time Determined by CPU hardware We will examine two MIPS implementations
More informationChapter 4. The Processor
Chapter 4 The Processor Introduction CPU performance factors Instruction count Determined by ISA and compiler CPI and Cycle time Determined by CPU hardware We will examine two MIPS implementations A simplified
More informationECE170 Computer Architecture. Single Cycle Control. Review: 3b: Add & Subtract. Review: 3e: Store Operations. Review: 3d: Load Operations
ECE7 Computer Architecture Single Cycle Control Review: 3a: Overview of the Fetch Unit The common operations Fetch the : mem[] Update the program counter: Sequential Code: < + Branch and Jump: < something
More informationComputer Architecture 2/26/01 Lecture #
Computer Architecture 2/26/01 Lecture #9 16.070 On a previous lecture, we discussed the software development process and in particular, the development of a software architecture Recall the output of the
More informationDepartment of Computer and IT Engineering University of Kurdistan. Computer Architecture Pipelining. By: Dr. Alireza Abdollahpouri
Department of Computer and IT Engineering University of Kurdistan Computer Architecture Pipelining By: Dr. Alireza Abdollahpouri Pipelined MIPS processor Any instruction set can be implemented in many
More informationSingle Cycle Datapath
Single Cycle atapath Lecture notes from MKP, H. H. Lee and S. Yalamanchili Section 4.-4.4 Appendices B.7, B.8, B.,.2 Practice Problems:, 4, 6, 9 ing (2) Introduction We will examine two MIPS implementations
More informationTDT4255 Computer Design. Lecture 4. Magnus Jahre. TDT4255 Computer Design
1 TDT4255 Computer Design Lecture 4 Magnus Jahre 2 Outline Chapter 4.1 to 4.4 A Multi-cycle Processor Appendix D 3 Chapter 4 The Processor Acknowledgement: Slides are adapted from Morgan Kaufmann companion
More informationCS 61C: Great Ideas in Computer Architecture. MIPS CPU Datapath, Control Introduction
CS 61C: Great Ideas in Computer Architecture MIPS CPU Datapath, Control Introduction Instructor: Alan Christopher 7/28/214 Summer 214 -- Lecture #2 1 Review of Last Lecture Critical path constrains clock
More informationS3.0 : A multicore 32-bit Processor
S3.0 : A multicore 32-bit Processor S3.0 is a multicore version of S2.1 simple processor. This is a typical simple 32-bit processor. It has three-address instructions and 32 registers. Most operations
More informationEI338: Computer Systems and Engineering (Computer Architecture & Operating Systems)
EI338: Computer Systems and Engineering (Computer Architecture & Operating Systems) Chentao Wu 吴晨涛 Associate Professor Dept. of Computer Science and Engineering Shanghai Jiao Tong University SEIEE Building
More informationare Softw Instruction Set Architecture Microarchitecture are rdw
Program, Application Software Programming Language Compiler/Interpreter Operating System Instruction Set Architecture Hardware Microarchitecture Digital Logic Devices (transistors, etc.) Solid-State Physics
More information2 GHz = 500 picosec frequency. Vars declared outside of main() are in static. 2 # oset bits = block size Put starting arrow in FSM diagrams
CS 61C Fall 2011 Kenny Do Final cheat sheet Increment memory addresses by multiples of 4, since lw and sw are bytealigned When going from C to Mips, always use addu, addiu, and subu When saving stu into
More informationHow Computers Work Problem Set 2
Issued: December 7, 2000 How Computers Work Problem Set 2 Problem 1: Warm up Exercises to be done without collaboration. A. Fill in the values of the given control signals for the for the following Beta
More informationEE 2700 Project 2 Microprocessor Design
EE 2700 Project 2 Microprocessor Design This project may be done individually or in teams of two. You may consult others for general questions but not for specific issues. Cheating will not be tolerated
More informationChapter 4. The Processor
Chapter 4 The Processor Introduction CPU performance factors Instruction count Determined by ISA and compiler CPI and Cycle time Determined by CPU hardware We will examine two MIPS implementations A simplified
More informationEECS150 - Digital Design Lecture 9- CPU Microarchitecture. Watson: Jeopardy-playing Computer
EECS150 - Digital Design Lecture 9- CPU Microarchitecture Feb 15, 2011 John Wawrzynek Spring 2011 EECS150 - Lec09-cpu Page 1 Watson: Jeopardy-playing Computer Watson is made up of a cluster of ninety IBM
More informationOperating System Kernel
Operating System Kernel More Virtual Stuff L22 Kernel OS 1 Why an OS? What we ve got: A Single Sequence Machine, capable of doing ONE thing at a time one instruction, one I/O operation, one program. A
More informationMIPS Pipelining. Computer Organization Architectures for Embedded Computing. Wednesday 8 October 14
MIPS Pipelining Computer Organization Architectures for Embedded Computing Wednesday 8 October 14 Many slides adapted from: Computer Organization and Design, Patterson & Hennessy 4th Edition, 2011, MK
More informationOutline. EEL-4713 Computer Architecture Designing a Single Cycle Datapath
Outline EEL-473 Computer Architecture Designing a Single Cycle path Introduction The steps of designing a processor path and timing for register-register operations path for logical operations with immediates
More informationEITF20: Computer Architecture Part2.2.1: Pipeline-1
EITF20: Computer Architecture Part2.2.1: Pipeline-1 Liang Liu liang.liu@eit.lth.se 1 Outline Reiteration Pipelining Harzards Structural hazards Data hazards Control hazards Implementation issues Multi-cycle
More informationSOEN228, Winter Revision 1.2 Date: October 25,
SOEN228, Winter 2003 Revision 1.2 Date: October 25, 2003 1 Contents Flags Mnemonics Basic I/O Exercises Overview of sample programs 2 Flag Register The flag register stores the condition flags that retain
More informationIntroduction to CPU Design
١ Introduction to CPU Design Computer Organization & Assembly Language Programming Dr Adnan Gutub aagutub at uqu.edu.sa [Adapted from slides of Dr. Kip Irvine: Assembly Language for Intel-Based Computers]
More information6.823 Computer System Architecture Datapath for DLX Problem Set #2
6.823 Computer System Architecture Datapath for DLX Problem Set #2 Spring 2002 Students are allowed to collaborate in groups of up to 3 people. A group hands in only one copy of the solution to a problem
More informationThe Processor (1) Jinkyu Jeong Computer Systems Laboratory Sungkyunkwan University
The Processor (1) Jinkyu Jeong (jinkyu@skku.edu) Computer Systems Laboratory Sungkyunkwan University http://csl.skku.edu EEE3050: Theory on Computer Architectures, Spring 2017, Jinkyu Jeong (jinkyu@skku.edu)
More informationCOMP303 - Computer Architecture Lecture 10. Multi-Cycle Design & Exceptions
COP33 - Computer Architecture Lecture ulti-cycle Design & Exceptions Single Cycle Datapath We designed a processor that requires one cycle per instruction RegDst busw 32 Clk RegWr Rd ux imm6 Rt 5 5 Rs
More information361 datapath.1. Computer Architecture EECS 361 Lecture 8: Designing a Single Cycle Datapath
361 datapath.1 Computer Architecture EECS 361 Lecture 8: Designing a Single Cycle Datapath Outline of Today s Lecture Introduction Where are we with respect to the BIG picture? Questions and Administrative
More informationThere are different characteristics for exceptions. They are as follows:
e-pg PATHSHALA- Computer Science Computer Architecture Module 15 Exception handling and floating point pipelines The objectives of this module are to discuss about exceptions and look at how the MIPS architecture
More informationIntroduction. Datapath Basics
Introduction CPU performance factors - Instruction count; determined by ISA and compiler - CPI and Cycle time; determined by CPU hardware 1 We will examine a simplified MIPS implementation in this course
More informationECE 250 / CPS 250 Computer Architecture. Processor Design Datapath and Control
ECE 250 / CPS 250 Computer Architecture Processor Design Datapath and Control Benjamin Lee Slides based on those from Andrew Hilton (Duke), Alvy Lebeck (Duke) Benjamin Lee (Duke), and Amir Roth (Penn)
More informationCS 61C: Great Ideas in Computer Architecture Datapath. Instructors: John Wawrzynek & Vladimir Stojanovic
CS 61C: Great Ideas in Computer Architecture Datapath Instructors: John Wawrzynek & Vladimir Stojanovic http://inst.eecs.berkeley.edu/~cs61c/fa15 1 Components of a Computer Processor Control Enable? Read/Write
More informationChapter 5. Computer Architecture Organization and Design. Computer System Architecture Database Lab, SANGJI University
Chapter 5. Computer Architecture Organization and Design Computer System Architecture Database Lab, SANGJI University Computer Architecture Organization and Design Instruction Codes Computer Registers
More informationinst.eecs.berkeley.edu/~cs61c CS61C : Machine Structures Lecture 18 CPU Design: The Single-Cycle I ! Nasty new windows vulnerability!
inst.eecs.berkeley.edu/~cs61c CS61C : Machine Structures Lecture 18 CPU Design: The Single-Cycle I CS61C L18 CPU Design: The Single-Cycle I (1)! 2010-07-21!!!Instructor Paul Pearce! Nasty new windows vulnerability!
More informationAlternative Ways to Implement Processor FSMs. Outline. Moore Machine State Diagram. Random Logic. Moore Machine Diagram
Outline lternative controller FSM implementation approaches based on: Classical Moore and Mealy machines Time state: ivide and Counter Jump counters Microprogramming (ROM) based approaches» branch sequencers»
More informationCOSC 122 Computer Fluency. Computer Organization. Dr. Ramon Lawrence University of British Columbia Okanagan
COSC 122 Computer Fluency Computer Organization Dr. Ramon Lawrence University of British Columbia Okanagan ramon.lawrence@ubc.ca Key Points 1) The standard computer (von Neumann) architecture consists
More information