Memory Interface. More Realistic Block Diagram: Issue memory request. Is it a read or a write? Memory asks CPU to wait

Size: px
Start display at page:

Download "Memory Interface. More Realistic Block Diagram: Issue memory request. Is it a read or a write? Memory asks CPU to wait"

Transcription

1 CPU Design

2 Memory Interface More ealistic Block Diagram: Issue memory request Is it a read or a write? PC I equest ead/write Wait M Memory Memory asks CPU to wait LD/ST Data Instructions M B Memory Buffer egister Decouple memory system from internal processor operation

3 Memory Interface No common clock between CPU and memory Follow asynchronous 4-cycle handshake request/wait (ack( ack) protocol 1. equest sserted equest 2. Wait Unasserted ead/write 3. equest Unasserted Data From Memory To Memory 4. Wait sserted Wait ead Cycle Write Cycle Hi-to-Lo transition on Wait implies that data is ready (read) or data has been latched by memory (write)

4 Memory Interface State Diagram Fragments for ead/write Cycles ead Cycle Wait M ddressbus; 1 ead/write; 1 equest; DataBus MB; Wait Write Cycle M ddressbus; 0 ead/write; 1 equest; MB DataBus; Wait Wait Wait 0 equest; Wait 0 equest; Wait Wait State 1: drive address bus assert read request catch data into MB State 2: unassert request hold in state until Wait reasserted Normal Convention: If register transfer op NOT asserted, it need not be mentioned in state diagram

5 Bussing Strategies egister-to-egister Coummunications Point-to-point Single shared bus Multiple special purpose busses Tradeoffs between datapath/control complexity and amount of parallelism supported by the hardware Case study: Four general purpose registers that must be able to exchange their contents Swap instruction must be supported: SWP(i i, j) i -> j; j -> i;

6 Bussing Strategies Point-to-Point Connection Scheme Four registers interconnected via 4:1 Mux's and point-to-point connections Edge-triggered N bit registers controlled by LDi signals N x 4:1 MUXes per register, controlled by Si<1:0> signals S0<1:0> MUX S1<1:0> MUX S2<1:0> MUX S3<1:0> MUX LD0 0 LD1 1 LD2 2 LD3 3 egister transfers 1 -> 0 and 2 -> 3 01 > S0<1:0>; 10 > S3<1:0>; 1 > LD0; 1 > LD3; Enable path from 1 to 0 Enable path from 2 to 3 ssert load for 0 ssert load for 3

7 Bussing Strategies When control signals are asserted and when they take place: X Y 01 S0<1:0>; 10 S3<1:0>; 1 LD0; 1 LD3; Enter state X: Multiplexer control signals asserted 1 outputs arrive at 0 inputs 2 outputs arrive at 3 inputs LD signals asserted Do not take effect until next rising clock On entering state Y: LD signals are synchronous and take effect at the same time as the state transition! Moore Machine State Diagram

8 Bussing Strategies Point-to-Point Scheme Pluses and Minuses: + transfer a new value into each of the four registers at the same time + register swap implemented in a single control state - 5 gates to implement 4:1 MUX 32 bit wide datapath implies (32 bits/registers) x (5 gates/bit) x (4 registers) = 640 gates! very expensive implementation

9 Single Bus Interconnection Bussing Strategies S<1:0> MUX Single Bus LD0 0 LD1 1 LD2 2 LD3 3 per register MUX block replaced by single block 25% hardware cost of previous alternative shared set of pathways is called a BUS Single bus becomes a critical resource -- used by only one transfer at a time

10 Bussing Strategies Example: 1 -> 0 and 2 -> 3 State X: (1 > 0) 01 > S<1:0>; 1 > LD0; State Y: (2 > 3) 10 > S<1:0>; 1 > LD3; Datapath no longer supports two simultaneous transfers! Thus two control states are required to perform the transfers

11 SWP Operation Bussing Strategies special TEMP register must be introduced ("egister 4") MUX's become 5:1 rather than 4:1 State X: (1 > 4) 001 > S<2:0>; 1 > LD4; Three states are required rather than one! plus extra register and wider mux State Y: (2 > 1) 010 > S<2:0>; 1 > LD1; More More control control states states because this this datapath supports less less parallel parallel activity activity State Z: (4 > 2) 100 > S<2:0>; 1 > LD2; Engineering choices made based on how frequently multiple transfers take place at the same time

12 Bussing Strategies lternatives to Multiplexors : Tri-state buffers LD0 S<1:0> D E C O LD1 1 LD2 2 LD3 3 Only one register's contents gated to shared bus at a time

13 Multiple Busses Bussing Strategies eal datapaths are a compromise between the two extremes egister Transfer Diagram Single Bus Design Memory ddress Bus M P C I C BUS B M B Memory Data Bus egister transfer operations: PC > PC > BUS I > BUS C > BUS MB > BUS LU esult > BUS BUS > PC BUS > I BUS > C BUS > MB BUS > LU B BUS > M C > LU ("hardwired")

14 Bussing Strategies egister Transfer for Single Bus Design Instruction Interpretation for "DD Mem[X]" Fetch Operand Cycle 1: I<operand address> > BUS; BUS > M; Cycle 2: Memory ead; Databus > MB; Perform DD Cycle 3: Write esult Cycle 4: MB > BUS; BUS > LU B; C > LU ; DD; LU esult > BUS; BUS > C; equires latch for LU esult 4 cycles are needed

15 Multiple Busses Bussing Strategies Three Bus Design -- Supports more parallelism ddress Bus esult Bus Memory ddress Bus M P C I C B M B Memory Data Bus Memory Bus Single bus replaced by three busses: Memory Bus (MBUS) esult Bus (BUS) ddress Bus (BUS)

16 Bussing Strategies Instruction Interpretation for "DD Mem[X]" Fetch Operand Cycle 1: I<operand address> > BUS; BUS > M; Cycle 2: Memory ead; Databus > MB; Perform DD and Write esult Cycle 3: MB > MBUS; MBUS > LU B; C > LU ; DD; LU esult > BUS; BUS > C; Implemented in three cycles rather than four dvantage of separate BUS: overlap PC > M with instruction execution

17 Processor Specification Instruction Format: Load from memory: Mem[XXX] -> C; Store to memory: C -> Mem[XXX]; dd from memory: C + Mem[XXX] -> C; Op Code 00 = LD 01 = ST 10 = DD 11 = BN Branch if accumulator is negative: C < 0 -> XXX -> PC; ddress Memory Interface: M M B 14 equest ead/write Wait 16 Memory 14 [0:2-1] <15:0>

18 Deriving the State Diagram and Datapath First pass state diagram eset Instruction Fetch Instruction Decode LD ST DD BN Instruction Execution

19 ssume Synchronous Mealy Machine: Transitions associated with arcs rather than states eset State (State 0) and Instruction Fetch Sequence On eset: zero the PC Mem equest unasserted Mem asserts Wait signal Instruction Fetch: issue read request 4 cycle handshake on Wait signal Note: No explicit mention of the busses being used to implement register transfers! eset/ 1 ead/write, 1 equest, M Memory ES IF0 IF1 eset/ PC M, PC + 1 PC eset/0 PC M Memory, 1 ead/write, 1 equest Mem MB IF2 MB I

20 Instruction Decode State ID I<15:14>= LD0 ST0 D0 B0 Four Way Next State Branch based on opcode bits Load (Memory ead) Sequence Store (Memory Write) Sequence dd Sequence Branch Sequence

21 Load (Memory ead) Sequence like IFetch,, except that operand address comes from I and data should be loaded into C 1 ead/write, 1 equest, M Memory ID LD0 LD1 I<15:14>=00/ I<13:0> M M Memory, 1 ead/write, 1 equest Mem MB LD2 MB C ES

22 Store (Memory Write) Sequence ID 0 ead/write, 1 equest, M Memory, MB Memory I<15:14>=01/ I<13:0> M, C MB ST0 M Memory, MB Memory, 0 ead/write, ST1 1 equest ST2 ES

23 dd Sequence Similar to Load sequence dd MB, C rather than simply transfer MB to C ID I<15:14>=10/ I<13:0> M 1 ead/write, 1 equest, M Memory D0 D1 M Memory, 1 ead/write, 1 equest Mem MB D2 ES MB + C C

24 Branch Sequence ID I<15:14> = 11/ B0 C<15> = 1/ I<13:0> PC C<15> = 0/ eplace PC with Operand ddress if C < 0 ES Otherwise, do nothing

25 evised/complete State Diagram Simplify Wait Looping Eliminate some Wait states t this point, Wait must be asserted, so why loop on Wait? ES IF0 IF1 IF2 ID eset LD0 ST0 D0 B0 Why loop on Wait when resync will take place at state IF0? LD1 ST1 D1 LD2 D2

26 State Machine Inputs and Outputs so far: Inputs: eset Wait I<15:14> C<15> Outputs: 0 > PC PC + 1 > PC PC > M M > Memory ddress Bus Memory Data Bus > MB MB > Memory Data Bus MB > I MB > C C > MB C + MB > C I<13:0> > M I<13:0> > PC ead/write equest

27 Processor Signal Flow Memory eset Wait Mem ddr Bus Mem Data Bus C O N T O L ead/write equest 0 PC PC + 1 PC PC M M Memory ddress Bus Memory Data Bus MB MB Memory Data Bus MB I MB C C MB C + MB C I<13:0> M I<13:0> PC I<15:14> C<15> D T P T H

28 Mapping onto datapath operations Specification so far is independent of bussing strategy Implied transfers (point-to-point connection scheme) : Operand Fetch IFetch Branch Store dd Memory ddress Bus M P C I C dd IFetch B dd Load M B Memory Data Bus Observe that instruction fetch and operand fetch take place at different times This implies that I, PC, and M transfers can be implemented by single bus (ddress Bus) Combine MB, I, LU B, and C connections (Memory Bus) Combine LU, C, and MB connections (esult Bus) --> Three bus architecture

29 ddress Bus esult Bus Memory ddress Bus M P C I C B M B Memory Data Bus Memory Bus C has two inputs, BUS and MBUS (Other registers except MB have single input and output) Dual ported configuration is more complex Better idea: reuse existing paths where possible MB > C transfer implemented by PSS B LU operation

30 Detailed implementation of register transfer operations More detailed control operations are called microoperations One register transfer operation = several microoperations Some operations directly implemented by functional units: e.g., 0 -> PC, PC + 1 -> PC Some operations require multiple control operations: e.g., PC -> M implemented as PC -> BUS and BUS -> M ddress Bus M PC LD PC BUS CL CNT Load Input BUS M Tri-state Control 0 PC PC + 1 PC PC implemented by counter with COUNT and CLE inputs

31 Timing of State Changes and Microoperations CLK ES IF0 IF1 Deferred till next clock edge Takes place immediately Deferred till next clock edge eset 0 PC PC + 1 PC PC BUS BUS M PC gets 0 PC on BUS M latches BUS PC gets PC + 1

32 elationship between register transfer and microoperations: egister Transfer Microoperations 0 -> PC 0 -> PC (delayed); PC + 1 -> PC PC -> M M -> ddress Bus Data Bus -> MB MB -> Data Bus MB -> I MB -> C PC + 1 -> PC (delayed); PC -> BUS (immediate), BUS -> M (delayed); M -> ddress Bus (immediate); Data Bus -> MB (delayed); MB -> Data Bus (immediate); MB -> MBUS (immediate), MBUS -> I (delayed); MB -> MBUS (immediate), LU PSS B (immediate), LU esult -> BUS (immediate), BUS -> C (delayed);

33 egister Transfer Microoperations C -> MB C -> LU (immediate), LU PSS (immediate), BUS -> MB (delayed); C + MB -> C C -> LU (immediate), MB -> MBUS (immediate), MBUS -> LU B (immediate), LU DD (immediate), LU esult -> BUS (immediate), BUS -> C (delayed); I<13:0> -> M I -> BUS (immediate), BUS -> M (delayed); I<13:0> -> PC I -> BUS (immediate), BUS -> PC (delayed); 1 -> ead/write ead (immediate); 0 -> ead/write Write (immediate); 1 -> equest equest (immediate); Special microoperations for MB -> MBUS, MBUS -> LU B, C > LU, and LU esult > BUS not strictly necessary (hardwired)

34 evised microoperation signal flow Memory eset Wait Mem ddr Bus Mem Data Bus C O N T O L ead/write equest 0 PC PC + 1 PC PC BUS I BUS BUS M BUS PC M Memory ddress Bus Memory Data Bus MB MB Memory Data Bus MBUS I LU PSS BUS C BUS MB LU DD LU PSS B D T P T H 5 inputs 15 datapath control lines 2 memory control lines I<15:14> C<15>

Moore EECS150. Implement of Processor FSMs. Memory-Register Interface Timing. Processor / Memory Interface. Processor Signal FLow

Moore 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 information

Controller 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. 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 information

EECS150. Implement of Processor FSMs

EECS150. Implement of Processor FSMs EECS5 Section Controller Implementations Fall Implement of Processor FSMs Classical Finite State Machine Design Divide and Conquer Approach: Time-State Method Partition FSM into multiple communicating

More information

Alternative controller FSM implementation approaches based on:

Alternative controller FSM implementation approaches based on: Overview lternative controller FSM implementation approaches based on: classical Moore and Mealy machines jump counters microprogramming (ROM) based approaches branch sequencers horizontal microcode vertical

More information

Alternative Ways to Implement Processor FSMs. Outline. Moore Machine State Diagram. Random Logic. Moore Machine Diagram

Alternative 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 information

Control Unit Implementation

Control Unit Implementation Control Unit Implementation Moore Machine Implementation Reset RES PC IF PC MAR, PC + PC Note capture of MBR in these states IF Wait/ IF2 Wait/ Wait/ MAR Mem, Read/Write, Request, Mem MBR Wait/ IF3 Wait/

More information

Blog -

Blog - . Instruction Codes Every different processor type has its own design (different registers, buses, microoperations, machine instructions, etc) Modern processor is a very complex device It contains Many

More information

Controller Implementation--Part II

Controller Implementation--Part II Controller Implementation--Part II Alternative controller FSM implementation approaches based on: Classical Moore and Mealy machines Time-State: Divide and Conquer Jump counters Microprogramming (ROM)

More information

Computer Organization

Computer Organization Computer Organization! Computer design as an application of digital logic design procedures! Computer = processing unit + memory system! Processing unit = control + datapath! Control = finite state machine

More information

Block diagram view. Datapath = functional units + registers

Block diagram view. Datapath = functional units + registers Computer design an application of digital logic design procedures Computer = processing unit + memory system Processing unit = control + datapath Control = finite state machine inputs = machine instruction,

More information

Module 5 - CPU Design

Module 5 - CPU Design Module 5 - CPU Design Lecture 1 - Introduction to CPU The operation or task that must perform by CPU is: Fetch Instruction: The CPU reads an instruction from memory. Interpret Instruction: The instruction

More information

Chapter 4. The Processor

Chapter 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 information

The von Neuman architecture characteristics are: Data and Instruction in same memory, memory contents addressable by location, execution in sequence.

The von Neuman architecture characteristics are: Data and Instruction in same memory, memory contents addressable by location, execution in sequence. CS 320 Ch. 3 The von Neuman architecture characteristics are: Data and Instruction in same memory, memory contents addressable by location, execution in sequence. The CPU consists of an instruction interpreter,

More information

SISTEMI EMBEDDED. Computer Organization Central Processing Unit (CPU) Federico Baronti Last version:

SISTEMI EMBEDDED. Computer Organization Central Processing Unit (CPU) Federico Baronti Last version: SISTEMI EMBEDDED Computer Organization Central Processing Unit (CPU) Federico Baronti Last version: 20170516 Processing Unit A processor reads program instructions from the computer s memory and executes

More information

EECS Components and Design Techniques for Digital Systems. Lec 20 RTL Design Optimization 11/6/2007

EECS Components and Design Techniques for Digital Systems. Lec 20 RTL Design Optimization 11/6/2007 EECS 5 - Components and Design Techniques for Digital Systems Lec 2 RTL Design Optimization /6/27 Shauki Elassaad Electrical Engineering and Computer Sciences University of California, Berkeley Slides

More information

Systems Architecture

Systems 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 information

Control and Datapath 8

Control and Datapath 8 Control and Datapath 8 Engineering attempts to develop design methods that break a problem up into separate steps to simplify the design and increase the likelihood of a correct solution. Digital system

More information

5-1 Instruction Codes

5-1 Instruction Codes Chapter 5: Lo ai Tawalbeh Basic Computer Organization and Design 5-1 Instruction Codes The Internal organization of a digital system is defined by the sequence of microoperations it performs on data stored

More information

Computer Organization. Structure of a Computer. Registers. Register Transfer. Register Files. Memories

Computer Organization. Structure of a Computer. Registers. Register Transfer. Register Files. Memories Computer Organization Structure of a Computer Computer design as an application of digital logic design procedures Computer = processing unit + memory system Processing unit = control + Control = finite

More information

Digital System Design Using Verilog. - Processing Unit Design

Digital System Design Using Verilog. - Processing Unit Design Digital System Design Using Verilog - Processing Unit Design 1.1 CPU BASICS A typical CPU has three major components: (1) Register set, (2) Arithmetic logic unit (ALU), and (3) Control unit (CU) The register

More information

CHAPTER SIX BASIC COMPUTER ORGANIZATION AND DESIGN

CHAPTER SIX BASIC COMPUTER ORGANIZATION AND DESIGN CHAPTER SIX BASIC COMPUTER ORGANIZATION AND DESIGN 6.1. Instruction Codes The organization of a digital computer defined by: 1. The set of registers it contains and their function. 2. The set of instructions

More information

Introduction to CPU Design

Introduction 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 information

Top-Level View of Computer Organization

Top-Level View of Computer Organization Top-Level View of Computer Organization Bởi: Hoang Lan Nguyen Computer Component Contemporary computer designs are based on concepts developed by John von Neumann at the Institute for Advanced Studies

More information

Lecture1: introduction. Outline: History overview Central processing unite Register set Special purpose address registers Datapath Control unit

Lecture1: introduction. Outline: History overview Central processing unite Register set Special purpose address registers Datapath Control unit Lecture1: introduction Outline: History overview Central processing unite Register set Special purpose address registers Datapath Control unit 1 1. History overview Computer systems have conventionally

More information

FSM Design Problem (10 points)

FSM Design Problem (10 points) Problem FSM Design Problem (5 points) Problem 2 FSM Design Problem ( points). In this problem, you will design an FSM which takes a synchronized serial input (presented LSB first) and outputs a serial

More information

Chapter 3. Top Level View of Computer Function and Interconnection. Yonsei University

Chapter 3. Top Level View of Computer Function and Interconnection. Yonsei University Chapter 3 Top Level View of Computer Function and Interconnection Contents Computer Components Computer Function Interconnection Structures Bus Interconnection PCI 3-2 Program Concept Computer components

More information

THE MICROPROCESSOR Von Neumann s Architecture Model

THE MICROPROCESSOR Von Neumann s Architecture Model THE ICROPROCESSOR Von Neumann s Architecture odel Input/Output unit Provides instructions and data emory unit Stores both instructions and data Arithmetic and logic unit Processes everything Control unit

More information

Chapter 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 Chapter 5. Computer Architecture Organization and Design Computer System Architecture Database Lab, SANGJI University Computer Architecture Organization and Design Instruction Codes Computer Registers

More information

C.P.U Organization. Memory Unit. Central Processing Unit (C.P.U) Input-Output Processor (IOP) Figure (1) Digital Computer Block Diagram

C.P.U Organization. Memory Unit. Central Processing Unit (C.P.U) Input-Output Processor (IOP) Figure (1) Digital Computer Block Diagram C.P.U Organization 1.1 Introduction A computer system is sometimes subdivided into two functional entities "Hardware" and "Software". The H/W of the computer consists of all the electronic components and

More information

Chapter 4. The Processor

Chapter 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 information

Computer Architecture

Computer Architecture Computer Architecture Lecture 1: Digital logic circuits The digital computer is a digital system that performs various computational tasks. Digital computers use the binary number system, which has two

More information

EE 3170 Microcontroller Applications

EE 3170 Microcontroller Applications EE 3170 Microcontroller Applications Lecture 4 : Processors, Computers, and Controllers - 1.2 (reading assignment), 1.3-1.5 Based on slides for ECE3170 by Profs. Kieckhafer, Davis, Tan, and Cischke Outline

More information

Inf2C - Computer Systems Lecture Processor Design Single Cycle

Inf2C - Computer Systems Lecture Processor Design Single Cycle Inf2C - Computer Systems Lecture 10-11 Processor Design Single Cycle Boris Grot School of Informatics University of Edinburgh Previous lectures Combinational circuits Combinations of gates (INV, AND, OR,

More information

COMPUTER ORGANIZATION AND DESIGN

COMPUTER ORGANIZATION AND DESIGN ARM COMPUTER ORGANIZATION AND DESIGN Edition The Hardware/Software Interface Chapter 4 The Processor Modified and extended by R.J. Leduc - 2016 To understand this chapter, you will need to understand some

More information

Examining the complete instruction cycle for one instruction illustrates the operation of the P8 CPU. Assume the following conditions: C C C

Examining the complete instruction cycle for one instruction illustrates the operation of the P8 CPU. Assume the following conditions: C C C 5.0 Operation 5.1 The Instruction Cycle The CPU executes instructions that are stored in memory. The process of retrieving instructions and executing them is called the instruction cycle. Because it is

More information

COMPUTER ORGANIZATION AND DESIGN. 5 th Edition. The Hardware/Software Interface. Chapter 4. The Processor

COMPUTER 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 information

CPE 335 Computer Organization. Basic MIPS Architecture Part I

CPE 335 Computer Organization. Basic MIPS Architecture Part I CPE 335 Computer Organization Basic MIPS Architecture Part I Dr. Iyad Jafar Adapted from Dr. Gheith Abandah slides http://www.abandah.com/gheith/courses/cpe335_s8/index.html CPE232 Basic MIPS Architecture

More information

COMPUTER ORGANIZATION AND DESIGN. 5 th Edition. The Hardware/Software Interface. Chapter 4. The Processor

COMPUTER 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 information

Chapter 4. Instruction Execution. Introduction. CPU Overview. Multiplexers. Chapter 4 The Processor 1. The Processor.

Chapter 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 information

Objective now How are such control statements registers and other components Managed to ensure proper execution of each instruction

Objective now How are such control statements registers and other components Managed to ensure proper execution of each instruction Control and Control Components Introduction Software application similar to familiar nested Russian dolls As we ve observed earlier Application written in some high level programming language C, C++, C#,

More information

Processor (I) - datapath & control. Hwansoo Han

Processor (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 information

Computer Architecture and Organization (CS-507)

Computer Architecture and Organization (CS-507) Computer Architecture and Organization (CS-507) Muhammad Zeeshan Haider Ali Lecturer ISP. Multan ali.zeeshan04@gmail.com https://zeeshanaliatisp.wordpress.com/ Lecture 4 Basic Computer Function, Instruction

More information

Parallel logic circuits

Parallel logic circuits Computer Mathematics Week 9 Parallel logic circuits College of Information cience and Engineering Ritsumeikan University last week the mathematics of logic circuits the foundation of all digital design

More information

COMPUTER ARCHITECTURE AND ORGANIZATION Register Transfer and Micro-operations 1. Introduction A digital system is an interconnection of digital

COMPUTER ARCHITECTURE AND ORGANIZATION Register Transfer and Micro-operations 1. Introduction A digital system is an interconnection of digital Register Transfer and Micro-operations 1. Introduction A digital system is an interconnection of digital hardware modules that accomplish a specific information-processing task. Digital systems vary in

More information

Problem Set # 6 (Assigned 27 February, Due 9 March)

Problem Set # 6 (Assigned 27 February, Due 9 March) University of California at Berkeley College of Engineering Department of Electrical Engineering and Computer Science EECS 150 Spring 2007 R. H. Katz Problem Set # 6 (Assigned 27 February, Due 9 March)

More information

Chapter 16. Control Unit Operation. Yonsei University

Chapter 16. Control Unit Operation. Yonsei University Chapter 16 Control Unit Operation Contents Micro-Operation Control of the Processor Hardwired Implementation 16-2 Micro-Operations Micro-Operations Micro refers to the fact that each step is very simple

More information

Programmable machines

Programmable machines Page 1 of 9 Programmable machines indicates problems that have been selected for discussion in section, time permitting. Problem 1. Consider the following circuit: The heavy lines represent busses, which

More information

Chapter 4. The Processor. Instruction count Determined by ISA and compiler. We will examine two MIPS implementations

Chapter 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 information

CPU Organization (Design)

CPU 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 information

Sequential Circuits. inputs Comb FFs. Outputs. Comb CLK. Sequential logic examples. ! Another way to understand setup/hold/propagation time

Sequential Circuits. inputs Comb FFs. Outputs. Comb CLK. Sequential logic examples. ! Another way to understand setup/hold/propagation time Sequential Circuits! Another way to understand setup/hold/propagation time inputs Comb FFs Comb Outputs CLK CSE 37 Spring 2 - Sequential Logic - Sequential logic examples! Finite state machine concept

More information

Advanced Parallel Architecture Lesson 3. Annalisa Massini /2015

Advanced Parallel Architecture Lesson 3. Annalisa Massini /2015 Advanced Parallel Architecture Lesson 3 Annalisa Massini - 2014/2015 Von Neumann Architecture 2 Summary of the traditional computer architecture: Von Neumann architecture http://williamstallings.com/coa/coa7e.html

More information

BASIC COMPUTER ORGANIZATION AND DESIGN

BASIC COMPUTER ORGANIZATION AND DESIGN 1 BASIC COMPUTER ORGANIZATION AND DESIGN Instruction Codes Computer Registers Computer Instructions Timing and Control Instruction Cycle Memory Reference Instructions Input-Output and Interrupt Complete

More information

Basic Processing Unit: Some Fundamental Concepts, Execution of a. Complete Instruction, Multiple Bus Organization, Hard-wired Control,

Basic Processing Unit: Some Fundamental Concepts, Execution of a. Complete Instruction, Multiple Bus Organization, Hard-wired Control, UNIT - 7 Basic Processing Unit: Some Fundamental Concepts, Execution of a Complete Instruction, Multiple Bus Organization, Hard-wired Control, Microprogrammed Control Page 178 UNIT - 7 BASIC PROCESSING

More information

William Stallings Computer Organization and Architecture

William Stallings Computer Organization and Architecture William Stallings Computer Organization and Architecture Chapter 16 Control Unit Operations Rev. 3.2 (2009-10) by Enrico Nardelli 16-1 Execution of the Instruction Cycle It has many elementary phases,

More information

Pin Description, Status & Control Signals of 8085 Microprocessor

Pin Description, Status & Control Signals of 8085 Microprocessor Pin Description, Status & Control Signals of 8085 Microprocessor 1 Intel 8085 CPU Block Diagram 2 The 8085 Block Diagram Registers hold temporary data. Instruction register (IR) holds the currently executing

More information

UNIT:2 BASIC COMPUTER ORGANIZATION AND DESIGN

UNIT:2 BASIC COMPUTER ORGANIZATION AND DESIGN 1 UNIT:2 BASIC COMPUTER ORGANIZATION AND DESIGN BASIC COMPUTER ORGANIZATION AND DESIGN 2.1 Instruction Codes 2.2 Computer Registers AC or Accumulator, Data Register or DR, the AR or Address Register, program

More information

Micro-programmed Control Ch 15

Micro-programmed Control Ch 15 Micro-programmed Control Ch 15 Micro-instructions Micro-programmed Control Unit Sequencing Execution Characteristics 1 Hardwired Control (4) Complex Fast Difficult to design Difficult to modify Lots of

More information

omputer Design Concept adao Nakamura

omputer Design Concept adao Nakamura omputer Design Concept adao Nakamura akamura@archi.is.tohoku.ac.jp akamura@umunhum.stanford.edu 1 1 Pascal s Calculator Leibniz s Calculator Babbage s Calculator Von Neumann Computer Flynn s Classification

More information

Machine Instructions vs. Micro-instructions. Micro-programmed Control Ch 15. Machine Instructions vs. Micro-instructions (2) Hardwired Control (4)

Machine Instructions vs. Micro-instructions. Micro-programmed Control Ch 15. Machine Instructions vs. Micro-instructions (2) Hardwired Control (4) Micro-programmed Control Ch 15 Micro-instructions Micro-programmed Control Unit Sequencing Execution Characteristics 1 Machine Instructions vs. Micro-instructions Memory execution unit CPU control memory

More information

Micro-programmed Control Ch 15

Micro-programmed Control Ch 15 Micro-programmed Control Ch 15 Micro-instructions Micro-programmed Control Unit Sequencing Execution Characteristics 1 Hardwired Control (4) Complex Fast Difficult to design Difficult to modify Lots of

More information

Computer Science 324 Computer Architecture Mount Holyoke College Fall Topic Notes: Data Paths and Microprogramming

Computer Science 324 Computer Architecture Mount Holyoke College Fall Topic Notes: Data Paths and Microprogramming Computer Science 324 Computer Architecture Mount Holyoke College Fall 2007 Topic Notes: Data Paths and Microprogramming We have spent time looking at the MIPS instruction set architecture and building

More information

Chapter 4 The Von Neumann Model

Chapter 4 The Von Neumann Model Chapter 4 The Von Neumann Model The Stored Program Computer 1943: ENIAC Presper Eckert and John Mauchly -- first general electronic computer. (or was it John V. Atananasoff in 1939?) Hard-wired program

More information

LC-3 Instruction Processing

LC-3 Instruction Processing LC-3 Instruction Processing (Textbookʼs Chapter 4)# Next set of Slides:# Textbook Chapter 10-10.2# Instruction Processing# It is impossible to do all of an instruction in one clock cycle.# Processors break

More information

Faculty of Engineering Systems & Biomedical Dept. First Year Cairo University Sheet 6 Computer I

Faculty of Engineering Systems & Biomedical Dept. First Year Cairo University Sheet 6 Computer I aculty of Engineering Systems & Biomedical Dept. irst Year Cairo University Sheet 6 Computer I 1. Choose rue or alse for each of the following statements a) In a direct addressing mode instruction, the

More information

Microcontroller Systems

Microcontroller Systems µcontroller systems 1 / 43 Microcontroller Systems Engineering Science 2nd year A2 Lectures Prof David Murray david.murray@eng.ox.ac.uk www.robots.ox.ac.uk/ dwm/courses/2co Michaelmas 2014 µcontroller

More information

Advanced Parallel Architecture Lesson 3. Annalisa Massini /2015

Advanced Parallel Architecture Lesson 3. Annalisa Massini /2015 Advanced Parallel Architecture Lesson 3 Annalisa Massini - Von Neumann Architecture 2 Two lessons Summary of the traditional computer architecture Von Neumann architecture http://williamstallings.com/coa/coa7e.html

More information

Computer Organization (Autonomous)

Computer Organization (Autonomous) Computer Organization (Autonomous) UNIT II Sections - A & D Prepared by Anil Kumar Prathipati, Asst. Prof., Dept. of CSE. SYLLABUS Basic Computer Organization and Design: Instruction codes Stored Program

More information

Transistor: Digital Building Blocks

Transistor: Digital Building Blocks Final Exam Review Transistor: Digital Building Blocks Logically, each transistor acts as a switch Combined to implement logic functions (gates) AND, OR, NOT Combined to build higher-level structures Multiplexer,

More information

The Processor: Datapath and Control. Jin-Soo Kim Computer Systems Laboratory Sungkyunkwan University

The 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 information

Computer Architecture and Organization: L06: Instruction Cycle

Computer Architecture and Organization: L06: Instruction Cycle Computer Architecture and Organization: L06: Instruction Cycle By: A. H. Abdul Hafez Abdul.hafez@hku.edu.tr, ah.abdulhafez@gmail.com 1 Outlines 1. Fetch and decode 2. Determine the Type of Instruction

More information

The MIPS Processor Datapath

The MIPS Processor Datapath The MIPS Processor Datapath Module Outline MIPS datapath implementation Register File, Instruction memory, Data memory Instruction interpretation and execution. Combinational control Assignment: Datapath

More information

Lecture 3: The Processor (Chapter 4 of textbook) Chapter 4.1

Lecture 3: The Processor (Chapter 4 of textbook) Chapter 4.1 Lecture 3: The Processor (Chapter 4 of textbook) Chapter 4.1 Introduction Chapter 4.1 Chapter 4.2 Review: MIPS (RISC) Design Principles Simplicity favors regularity fixed size instructions small number

More information

Chapter 4: Processor Design. Block Diagram of 1-Bus SRC

Chapter 4: Processor Design. Block Diagram of 1-Bus SRC 4-1 Chapter 4 Processor Design Chapter 4: Processor Design Topics 4.1 The Design Process 4.2 1-Bus Microarchitecture for the SRC 4.3 Data Path Implementation 4.4 Logic Design for the 1-Bus SRC 4.5 The

More information

The 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. 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 information

Lecture 5: Computer Organization Instruction Execution. Computer Organization Block Diagram. Components. General Purpose Registers.

Lecture 5: Computer Organization Instruction Execution. Computer Organization Block Diagram. Components. General Purpose Registers. Lecture 5: Computer Organization Instruction Execution Computer Organization Addressing Buses Fetch-Execute Cycle Computer Organization CPU Control Unit U Input Output Memory Components Control Unit fetches

More information

Part A Questions 1. What is an ISP? ISP stands for Instruction Set Processor. This unit is simply called as processor which executes machine instruction and coordinates the activities of other units..

More information

CHAPTER 5 Basic Organization and Design Outline Instruction Codes Computer Registers Computer Instructions Timing and Control Instruction Cycle

CHAPTER 5 Basic Organization and Design Outline Instruction Codes Computer Registers Computer Instructions Timing and Control Instruction Cycle CS 224: Computer Organization S.KHABET CHAPTER 5 Basic Organization and Design Outline Instruction Codes Computer Registers Computer Instructions Timing and Control Instruction Cycle Memory Reference Instructions

More information

BASIC COMPUTER ORGANIZATION AND DESIGN

BASIC COMPUTER ORGANIZATION AND DESIGN BASIC COMPUTER ORGANIZATION AND DESIGN Instruction Codes Computer Registers Computer Instructions Timing and Control Instruction Cycle Memory Reference Instructions Input-Output and Interrupt Complete

More information

General FSM design procedure

General FSM design procedure Sequential logic examples Basic design approach: a 4-step design process Hardware description languages and finite state machines Implementation examples and case studies finite-string pattern recognizer

More information

Ch 5: Designing a Single Cycle Datapath

Ch 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 information

EE 2700 Project 2 Microprocessor Design

EE 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 information

CPE300: Digital System Architecture and Design

CPE300: Digital System Architecture and Design CPE300: Digital System Architecture and Design Fall 2011 MW 17:30-18:45 CBC C316 Pipelining 11142011 http://www.egr.unlv.edu/~b1morris/cpe300/ 2 Outline Review I/O Chapter 5 Overview Pipelining Pipelining

More information

Micro-programmed Control Ch 17

Micro-programmed Control Ch 17 Micro-programmed Control Ch 17 Micro-instructions Micro-programmed Control Unit Sequencing Execution Characteristics Course Summary 1 Hardwired Control (4) Complex Fast Difficult to design Difficult to

More information

Processing Unit CS206T

Processing Unit CS206T Processing Unit CS206T Microprocessors The density of elements on processor chips continued to rise More and more elements were placed on each chip so that fewer and fewer chips were needed to construct

More information

LC-3 Instruction Processing. (Textbook s Chapter 4)

LC-3 Instruction Processing. (Textbook s Chapter 4) LC-3 Instruction Processing (Textbook s Chapter 4) Instruction Processing Fetch instruction from memory Decode instruction Evaluate address Fetch operands from memory Usually combine Execute operation

More information

csitnepal Unit 3 Basic Computer Organization and Design

csitnepal Unit 3 Basic Computer Organization and Design Unit 3 Basic Computer Organization and Design Introduction We introduce here a basic computer whose operation can be specified by the resister transfer statements. Internal organization of the computer

More information

Basic Computer Organization - Designing your first computer. Acknowledgment: Most of the slides are adapted from Prof. Hyunsoo Yoon s slides.

Basic Computer Organization - Designing your first computer. Acknowledgment: Most of the slides are adapted from Prof. Hyunsoo Yoon s slides. Basic Computer Organization - Designing your first computer Acknowledgment: Most of the slides are adapted from Prof. Hyunsoo Yoon s slides. 1 This week- BASIC COMPUTER ORGANIZATION AND DESIGN Instruction

More information

The Processor (1) Jinkyu Jeong Computer Systems Laboratory Sungkyunkwan University

The 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 information

Hardwired Control (4) Micro-programmed Control Ch 17. Micro-programmed Control (3) Machine Instructions vs. Micro-instructions

Hardwired Control (4) Micro-programmed Control Ch 17. Micro-programmed Control (3) Machine Instructions vs. Micro-instructions Micro-programmed Control Ch 17 Micro-instructions Micro-programmed Control Unit Sequencing Execution Characteristics Course Summary Hardwired Control (4) Complex Fast Difficult to design Difficult to modify

More information

BASIC COMPUTER ORGANIZATION AND DESIGN

BASIC COMPUTER ORGANIZATION AND DESIGN 1 BASIC COMPUTER ORGANIZATION AND DESIGN Instruction Codes Computer Registers Computer Instructions Timing and Control Instruction Cycle Memory Reference Instructions Input-Output and Interrupt Complete

More information

CENG 3420 Computer Organization and Design. Lecture 06: MIPS Processor - I. Bei Yu

CENG 3420 Computer Organization and Design. Lecture 06: MIPS Processor - I. Bei Yu CENG 342 Computer Organization and Design Lecture 6: MIPS Processor - I Bei Yu CEG342 L6. Spring 26 The Processor: Datapath & Control q We're ready to look at an implementation of the MIPS q Simplified

More information

Basic Computer Organization and Design Part 2/3

Basic Computer Organization and Design Part 2/3 Basic Computer Organization and Design Part 2/3 Adapted by Dr. Adel Ammar Computer Organization Basic Computer Instructions Basic Computer Instruction Format Memory-Reference Instructions (OP-code = 000

More information

The overall datapath for RT, lw,sw beq instrucution

The 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 information

Major and Minor States

Major and Minor States Major and Minor States We now consider the micro operations and control signals associated with the execution of each instruction in the ISA. The execution of each instruction is divided into three phases.

More information

Chapter 3 - Top Level View of Computer Function

Chapter 3 - Top Level View of Computer Function Chapter 3 - Top Level View of Computer Function Luis Tarrataca luis.tarrataca@gmail.com CEFET-RJ L. Tarrataca Chapter 3 - Top Level View 1 / 127 Table of Contents I 1 Introduction 2 Computer Components

More information

Introduction. ENG3380 Computer Organization and Architecture MIPS: Data Path Design Part 3. Topics. References. School of Engineering 1

Introduction. ENG3380 Computer Organization and Architecture MIPS: Data Path Design Part 3. Topics. References. School of Engineering 1 ENG8 Computer Organization and rchitecture MIPS: Data Path Design Part Winter 7 S. reibi School of Engineering University of Guelph Introduction Topics uilding a Complete Data Path for MIPS Multi Cycle

More information

Lecture 5: The Processor

Lecture 5: The Processor Lecture 5: The Processor CSCE 26 Computer Organization Instructor: Saraju P. ohanty, Ph. D. NOTE: The figures, text etc included in slides are borrowed from various books, websites, authors pages, and

More information

Major CPU Design Steps

Major CPU Design Steps Datapath Major CPU Design Steps. Analyze instruction set operations using independent RTN ISA => RTN => datapath requirements. This provides the the required datapath components and how they are connected

More information

ECE260: Fundamentals of Computer Engineering

ECE260: 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 information

CS 31: Intro to Systems Digital Logic. Kevin Webb Swarthmore College February 3, 2015

CS 31: Intro to Systems Digital Logic. Kevin Webb Swarthmore College February 3, 2015 CS 31: Intro to Systems Digital Logic Kevin Webb Swarthmore College February 3, 2015 Reading Quiz Today Hardware basics Machine memory models Digital signals Logic gates Circuits: Borrow some paper if

More information