Chapter 05: Basic Processing Units Control Unit Design. Lesson 15: Microinstructions

Similar documents
Chapter 05: Basic Processing Units Control Unit Design Organization. Lesson 14: Microprogrammed Control

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

MICROPROGRAMMED CONTROL

Class Notes. Dr.C.N.Zhang. Department of Computer Science. University of Regina. Regina, SK, Canada, S4S 0A2

Micro-Operations. execution of a sequence of steps, i.e., cycles

Digital System Design Using Verilog. - Processing Unit Design

Computer Logic II CCE 2010

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

Computer Architecture Programming the Basic Computer

THE MICROPROCESSOR Von Neumann s Architecture Model

There are four registers involved in the fetch cycle: MAR, MBR, PC, and IR.

Chapter 16. Control Unit Operation. Yonsei University

SCRAM Introduction. Philipp Koehn. 19 February 2018

Module 5 - CPU Design

Advanced Parallel Architecture Lesson 3. Annalisa Massini /2015

Chapter 02: Computer Organization. Lesson 02: Functional units and components in a computer organization- Part 1: Processor

Processing Unit CS206T

Chapter 4 The Von Neumann Model


1. Fundamental Concepts

REGISTER TRANSFER LANGUAGE

Fundamentals of Computer Architecture. 8. Bringing It All Together The Hardware Engineer s Perspective

Computer Architecture

William Stallings Computer Organization and Architecture 8 th Edition. Chapter 16 Micro-programmed Control

Chapter 20 - Microprogrammed Control (9 th edition)

Chapter 08: The Memory System. Lesson 01: Basic Concepts

CS 265. Computer Architecture. Wei Lu, Ph.D., P.Eng.

Advanced Computer Architecture

Advanced Parallel Architecture Lesson 3. Annalisa Massini /2015

Lecture 11: Control Unit and Instruction Encoding

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

Computer Organisation CS303

Introduction to CPU architecture using the M6800 microprocessor

William Stallings Computer Organization and Architecture

Outcomes. Lecture 13 - Introduction to the Central Processing Unit (CPU) Central Processing UNIT (CPU) or Processor

Processing Unit. Unit II

Chapter 3 : Control Unit

Register Transfer and Micro-operations

Memory General R0 Registers R1 R2. Input Register 1. Input Register 2. Program Counter. Instruction Register

What Are The Main Differences Between Program Counter Pc And Instruction Register Ir

Microprogrammed Control

PESIT Bangalore South Campus

Implementing the Control. Simple Questions

CPU Structure and Function

The Stored Program Computer

COSC 243. Computer Architecture 1. COSC 243 (Computer Architecture) Lecture 6 - Computer Architecture 1 1

The Microarchitecture Level

Topics. Computer Organization CS Exam 2 Review. Infix Notation. Reverse Polish Notation (RPN)

Microprogramming is a technique to implement the control system of a CPU using a control store to hold the microoperations.

Week 4: Assignment Solutions

The Processing Unit. TU-Delft. in1210/01-pds 1

CPU ARCHITECTURE. QUESTION 1 Explain how the width of the data bus and system clock speed affect the performance of a computer system.

Basic Processing Unit (Chapter 7)

Blog -

Chapter 4. MARIE: An Introduction to a Simple Computer 4.8 MARIE 4.8 MARIE A Discussion on Decoding

1DT157 Digitalteknik och datorarkitekt. Digital technology and computer architecture, 5p

UNIT-III REGISTER TRANSFER LANGUAGE AND DESIGN OF CONTROL UNIT

AS/A Level Computing Syllabus 2011

ADVANCED COMPUTER ARCHITECTURE TWO MARKS WITH ANSWERS

Micro Programming. Herman Spanjersberg

Chapter 5. Computer Architecture Organization and Design. Computer System Architecture Database Lab, SANGJI University

ASSEMBLY LANGUAGE MACHINE ORGANIZATION

General purpose registers These are memory units within the CPU designed to hold temporary data.

CHAPTER SIX BASIC COMPUTER ORGANIZATION AND DESIGN

DC57 COMPUTER ORGANIZATION JUNE 2013

JNTUWORLD. 1. Discuss in detail inter processor arbitration logics and procedures with necessary diagrams? [15]

Unit 8 - Week 7: Organization and Optimization of Micro-programmed Controlled Control Unit

omputer Design Concept adao Nakamura

ASSIGNMENT ECE514 (COMPUTER ORGANIZATION) ASSIGNMENT NO. 3

Computer Organization II CMSC 3833 Lecture 33

TABLE 8-1. Control Signals for Binary Multiplier. Load. MUL0 Q 0 CAQ sr CAQ. Shift_dec. C out. Load LOADQ. CAQ sr CAQ. Shift_dec P P 1.

The register set differs from one computer architecture to another. It is usually a combination of general-purpose and special purpose registers

CPU Structure and Function

MCQ's on Unit-3 Control Unit

MC9211Computer Organization. Unit 4 Lesson 1 Processor Design

CSE140 L. Instructor: Thomas Y. P. Lee. March 1, Agenda. Computer System Design. Computer Architecture. Instruction Memory design.

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

Introduction to CPU Design

ENGG3380: Computer Organization and Design Lab5: Microprogrammed Control

Micro-programmed Control Ch 15

CHETTINAD COLLEGE OF ENGINEERING AND TECHNOLOGY COMPUTER ARCHITECURE- III YEAR EEE-6 TH SEMESTER 16 MARKS QUESTION BANK UNIT-1

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

BASIC COMPUTER ORGANIZATION AND DESIGN

Example of A Microprogrammed Computer

2. (a) Compare the characteristics of a floppy disk and a hard disk. (b) Discuss in detail memory interleaving. [8+7]

Micro-programmed Control Ch 15

REGISTER TRANSFER AND MICROOPERATIONS

PROBLEMS. 7.1 Why is the Wait-for-Memory-Function-Completed step needed when reading from or writing to the main memory?

Course Description: This course includes concepts of instruction set architecture,

Microprogrammed Control Approach

Blog -

CONTROL UNIT CONTROL UNIT. CONTROL vs DATA PATH. Instruction Sequencing. Two main operations of Control Unit can be identified:

CS 2461: Computer Architecture I

Department of Computer Science and Engineering CS6303-COMPUTER ARCHITECTURE UNIT-I OVERVIEW AND INSTRUCTIONS PART A

Chapter 4 The Von Neumann Model

5.7. Microprogramming: Simplifying Control Design 5.7

CC 311- Computer Architecture. The Processor - Control

William Stallings Computer Organization and Architecture 8 th Edition. Micro-programmed Control

2 MARKS Q&A 1 KNREDDY UNIT-I

4. MICROPROGRAMMED COMPUTERS

Transcription:

Chapter 05: Basic Processing Units Control Unit Design Lesson 15: Microinstructions 1

Objective Understand that an instruction implement by sequences of control signals generated by microinstructions in microprogram concept Learn how the microinstructions store a sequence of micro-operations that are used to implement the instruction Learn how the three fields at each microinstruction, function select, data route select and storing input-output unit select field 2

Microprogram concept 3

Microprogram concept Hardware does not directly execute an instruction without a large number of logic gates Instead, the hardware executes very simple microoperations defined by microinstructions stored at control memory Each instruction specifies a sequence of microinstructions that are used to implement the instruction 4

Microprogram concept Each instruction translated into a short program of microinstructions by the hardware Similar to the way a compiler translates each instruction in a high-level language program into a sequence of assembly-language instructions 5

Microinstructions for ADD r1, r2, r3 instruction 6

Micro instruction operation to execute the ADD r1, r2, r3 instruction Actions (micro-operations) for the data path and control sequences Fetch the instruction from memory address I pointed by PC (i) Microinstruction j: PC MAR (ii) Microinstruction j + 1: PC PC + 4 for 32 bits memory word alignments 7

Fetch instruction operation (iii) Microinstruction j + 2: Activate signal ALE for one cycle. (iv) Microinstruction j + 3: Activate signal MEMRD (v) Microinstruction j + 4: M[I] MDR (vi) Microinstruction j + 5: Deactivate signal MEMRD (vii) Microinstruction j + 6: MDR IR 8

Microprogrammed translation of the instruction ADD r1, r2, r3 Six micro-operations to perform add arithmetic operation: 1. Microinstruction i: r2 X. (read value of r2) 2. Microinstruction i + 1: X ALU (send it one input of the adder) 3. Microinstruction i + 2: r3 Y (reads the value of r3) 9

Micro-operations to perform add arithmetic operation 4. Microinstruction i + 3: Y ALU input of the adder 5. Microinstruction i + 4: Selects through gates j an operation for ADD using ID for instruction received at IR during a microinstructions j to j +6, (Z) ALU (gets the addition result) and transfers status flags generated, carry and overflow to status register. (Status Register) ALU (the carry and overflow) 6. Microinstruction i + 5: r1 Z. (send the addition result in r1) 10

Microprogram of ADD r1, r2, r3 instruction at control memory addresses a i to a i+5 Address a i a i+1 a i+2 a i+3 a i+4 a i+5 Microinstruction Symbolic representation r2 X X ADDER r3 Y Y ADDER Z ADDER, Status C and OV ADDER r1 Z 11

Each micro-operation taking one control clock cycle Instruction requires six control clock cycles to complete Here, one processor control clock cycle period equals the period of one step after the increment of the Control Sequence address incremental/ Counter The PC after the end of the microprogram points to the next instruction due to the microinstruction j + 2 The processor fetches the next instruction from the memory by the microinstructions j to j + 6 12

Stored Microprogram for generating control signals for ADD r1, r2, r3 Let a i, a i+1,.. be the sequence of address outputs for executing the microprogram Let s1 to s12 be the storing unit control signals at successive addresses 13

Stored Microinstructions 1. Storing register r1 output control 2. Storing register r1 input control 3. Storing register r2 output control 4. Storing register r2 input control 5. Storing register r3 output control 6. Storing register r3 input control 14

Stored Microinstructions 7. Input for arithmetic unit X output control 8. Input for arithmetic unit X input control 9. Input for arithmetic unit Y output control 10. Input for arithmetic unit Y input control 11. Arithmetic unit output Z output control 12. Z input control 15

Stored Microinstructions Let f1 to f2 be the function select control signals 1. Data transfer 2. Add 16

Data route internal bus select control signal Let d1 be the data route internal bus select control signal Let 0 represent inactive, and 1 active 17

Stored microinstructions at each address for the microprogram for ADD r1, r2, r3 Address f1f2d1s1s2s3s4s5s6s7s8s9s10s11s12 a i 1 0 1 0 0 1 0 0 0 0 1 0 0 0 0 a i+1 1 0 1 0 0 0 0 0 0 1 0 0 0 0 0 a i+2 1 0 1 0 0 0 0 1 0 0 0 0 1 0 0 a i+3 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0 a i+4 0 1 0 0 0 0 0 0 0 0 0 0 0 0 1 a i+5 1 0 1 0 1 0 0 0 0 0 0 0 0 1 0 18

Three fields at a microinstruction word in control memory 19

Summary

We learnt Microinstructions Microinstruction at each address has Three fields at each microinstruction Function select field Data route select field Storing input-output unit select field

End of Lesson 15 on Microinstructions