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

Similar documents
Chapter 16. Control Unit Operation. Yonsei University

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

William Stallings Computer Organization and Architecture

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

Module 5 - CPU Design

Processing Unit CS206T

Advanced Parallel Architecture Lesson 3. Annalisa Massini /2015

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

Advanced Parallel Architecture Lesson 3. Annalisa Massini /2015

Blog -

CHAPTER SIX BASIC COMPUTER ORGANIZATION AND DESIGN

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

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

Chapter 3 : Control Unit

csitnepal Unit 3 Basic Computer Organization and Design

Unit II Basic Computer Organization

MARIE: An Introduction to a Simple Computer

Computer Organization (Autonomous)

Chapter 4. MARIE: An Introduction to a Simple Computer

5-1 Instruction Codes

Major and Minor States

Basic Computer Organization and Design Part 2/3

Programming Level A.R. Hurson Department of Computer Science Missouri University of Science & Technology Rolla, Missouri

CPU Structure and Function

Introduction to CPU Design

Microprocessor Architecture

Chapter 4. MARIE: An Introduction to a Simple Computer. Chapter 4 Objectives. 4.1 Introduction. 4.2 CPU Basics

CPU Structure and Function

Computer Organization II CMSC 3833 Lecture 33

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

BASIC COMPUTER ORGANIZATION AND DESIGN

UNIT:2 BASIC COMPUTER ORGANIZATION AND DESIGN

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

MARIE: An Introduction to a Simple Computer

Computer Architecture

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

Blog -

Lecture 10: Control Unit

Levels in Processor Design

Digital System Design Using Verilog. - Processing Unit Design

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

Lecture 10: Control Unit

William Stallings Computer Organization and Architecture. Chapter 11 CPU Structure and Function

REGISTER TRANSFER LANGUAGE

Chapter 20 - Microprogrammed Control (9 th edition)

BASIC COMPUTER ORGANIZATION AND DESIGN

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

1. INTRODUCTION TO MICROPROCESSOR AND MICROCOMPUTER ARCHITECTURE:

SCRAM Introduction. Philipp Koehn. 19 February 2018

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

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

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

Computer Architecture Programming the Basic Computer

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

CPU Structure and Function. Chapter 12, William Stallings Computer Organization and Architecture 7 th Edition

MICROPROGRAMMED CONTROL

Micro-programmed Control Ch 15

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

Author : Dalbir Singh, Computer Science Deptt. CPU Structure and Functions. 1. Processor Organization

Chapter 2 Logic Gates and Introduction to Computer Architecture

Micro-programmed Control Ch 15

Chapter 12. CPU Structure and Function. Yonsei University

Basics of Microprocessor

CHAPTER 8: Central Processing Unit (CPU)

Chapter 4. Chapter 4 Objectives. MARIE: An Introduction to a Simple Computer

UNIT- 5. Chapter 12 Processor Structure and Function

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

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

Computer Architecture and Organization: L06: Instruction Cycle

BASIC COMPUTER ORGANIZATION AND DESIGN

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

THE MICROPROCESSOR Von Neumann s Architecture Model

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

Micro-programmed Control Ch 17

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

EE 3170 Microcontroller Applications

CC312: Computer Organization


COMPUTER ORGANIZATION

Computer Logic II CCE 2010

Example of A Microprogrammed Computer

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

William Stallings Computer Organization and Architecture

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

Microcomputer Architecture and Programming

CHAPTER 4 MARIE: An Introduction to a Simple Computer

Computer Organization and Design

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

Chapter 14 Design of the Central Processing Unit

MCQ's on Unit-3 Control Unit

Microprocessors/Microcontrollers

ASSEMBLY LANGUAGE MACHINE ORGANIZATION

Where Does The Cpu Store The Address Of The

Fig: Computer memory with Program, data, and Stack. Blog - NEC (Autonomous) 1

Register Transfer and Micro-operations

UNIT-II. Part-2: CENTRAL PROCESSING UNIT

ADVANCED COMPUTER ARCHITECTURE TWO MARKS WITH ANSWERS

IAS Computer. Instructions

Processor design - MIPS

MICROPROCESSOR B.Tech. th ECE

Transcription:

CS 320 Ch. 20 The Control Unit Instructions are broken down into fetch, indirect, execute, and interrupt cycles. Each of these cycles, in turn, can be broken down into microoperations where a microoperation is an "atomic" operation of the processor typically done in hardware or firmware. There are four registers involved in the fetch cycle: MAR, MBR, PC, and IR. The fetch cycle can typically be broken down into four microoperations: MAR PC, MBR M, PC PC + 1, IR MBR. Note that the PC is incremented in the fetch cycle. Instructions are stored in sequence so PC is set to point to next instruction. The PC PC + 1 microoperation is somewhat independent of the others in the sequence. This means that it can be done in parallel with some of the other operations. Microoperations can be grouped in three time slots, t1, t2, and t3. t1 must be MAR PC. MBR M and IR MBR are the next two. PC PC + 1 can go with t2 or t3. Note that PC PC + 1 involves an addition. This is done in hardware at the PC register or it can be done by the ALU. The indirect cycle is not needed by all instructions. This cycle is to fetch additional operands from memory. The microoperations in the indirect cycle are: t1: MAR (IR(Address)) t2: MBR Memory t3: IR(Address) (MBR(Address)). The interrupt cycle begins at the end, after the instruction has been complete and the registers are stable. At the end of the instruction cycle the hardware polls the interrupt bit to see if there is an interrupt. The microoperations for the interrupt cycle are: t1: MBR (PC) t2: MAR Save_Address, PC ISR_Address t3: Memory (MBR). The Save_Address typically from the Stack Pointer. This may involve multiple steps in which the stack pointer registers is altered.

The execute cycle different from the previous three cycles in that it performs a different set of microoperations depending on the on the op code. The others are mostly uniform. 15. For a simple instruction such as ADD R1, x, the microoperations in the instruction cycle are: t1: MAR (IR(address)) t2: MBR Memory t3: R1 (R1) + (MBR). In this sequence (IR(Address)) is the address in the address field of the instruction register. Consider the following sequence of microoperations for the Increment and Skip if Zero instruction. ISZ x. t1: MAR (IR(address)) t2: MBR Memory t3: MBR (MBR) + 1 t4: Memory (MBR) If ((MBR) == 0) then (PC PC + 1) To do the if statement in hardware as a microoperation the bits of MBR go to a NAND gate. If the MBR has all zeros then the NAND gate will output a one. This one is ANDed with a clock pulse to the PC.

See Figure 19.3 below: The block marked ICC is the Instruction Cycle Code 00 = fetch, 01 = indirect, 10 = execute, and 11 = interrupt. The indirect cycle seems to be very simple. It puts the indirect address into the IR address field thereby making it a direct address. It then goes directly to the execute cycle. The block marked Opcode has many lines coming out of it that go nowhere. That part of the flow chart is dependent on the op code. All microoperations fall into one of four categories. A) Transfer data between registers B) Transfer data from a register to an external bus C) Transfer data from an external bus to a register D) Perform arithmetic or logical operations using registers for input and output. In hardware a register consists of a collection of flip-flops with a common clock. Each flip-flop input connects to a bus line and each output connects to a bus line via a tri-state gate. The tri-state control is common for all flip-flops.

A microoperation transfers data from one register to another by setting the tri-state control of one register to allow its output to get on the bus and it sets the clock of the other to clock the data from the bus.

The control unit outputs microoperations in a proper time sequence. This is generally referred to as sequencing and the control unit may be called a sequencer. The inputs to the control unit are the clock, IR, flags, control signals from the control bus. The flags are the condition codes set by ALU ops. They allow the control unit to do such things as conditional branching. Effectively the flags hold a one-bit history of past operations. The control unit need to have an input from the IR: This is the op code that determines what operation the control unit is to perform. Control bus lines might include: Interrupt line, memory busy. The outputs from the control unit are control signals to units within the CPU, and Control signals to the control bus. Control signals go from the control unit to the control bus are: Memory read, memory write, I/O read write, interrupt acknowledge, etc.

An example of control signals that go from the control unit to inside the CPU include lines to the ALU, lines to transfer data between registers, lines to test flag bits. See Figure 19.5 below: The control points on say the IR (C4 and C13) are: C4 is the common clock signal on the IR register and C13 is the signal to the tri-state gates. The control signals for the fetch sequence: t1: MAR (PC) C2 t2: MBR Memory PC (PC) + 1 C5, CR (CR is Memory read) t3: IR (MBR) C4

The Intel 8085 Hard wired control means that the controller is implemented without software. The controller is a sequential machine. Microprogrammed control means that the control words are stored in a read only memory and accessed as needed for control of the processor.