group 1 michael bouizza rolando abreu carlos de cossio ricardo urena michael hernandez robert romano...

40
Control Unit Operation Group 1 Michael Bouizza Rolando Abreu Carlos De Cossio Ricardo Urena Michael Hernandez Robert Romano Sun Li Yang

Upload: gwen-tyler

Post on 11-Jan-2016

219 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Group 1 Michael Bouizza Rolando Abreu Carlos De Cossio Ricardo Urena Michael Hernandez Robert Romano Sun Li Yang

Control Unit Operation

Group 1

Michael BouizzaRolando Abreu

Carlos De CossioRicardo Urena

Michael HernandezRobert Romano

Sun Li Yang

Page 2: Group 1 Michael Bouizza Rolando Abreu Carlos De Cossio Ricardo Urena Michael Hernandez Robert Romano Sun Li Yang

Micro-Operations

A computer executes a program

Fetch/execute cycle

Each cycle has a number of steps

Called micro-operations

Atomic operation of CPU

Page 3: Group 1 Michael Bouizza Rolando Abreu Carlos De Cossio Ricardo Urena Michael Hernandez Robert Romano Sun Li Yang

Constituent Elements of Program Execution

Page 4: Group 1 Michael Bouizza Rolando Abreu Carlos De Cossio Ricardo Urena Michael Hernandez Robert Romano Sun Li Yang

Fetch - 4 Registers

Memory Address Register (MAR)

Memory Buffer Register (MBR)

Program Counter (PC)

Instruction Register (IR)

Page 5: Group 1 Michael Bouizza Rolando Abreu Carlos De Cossio Ricardo Urena Michael Hernandez Robert Romano Sun Li Yang

Fetch Sequence

Address of next instruction is in PC

Address (MAR) is placed on address bus

Control unit issues READ command

Result appears on data bus

Data from data bus copied into MBR

PC incremented by 1

Data (instruction) moved from MBR to IR

MBR is now free for further data fetches

Page 6: Group 1 Michael Bouizza Rolando Abreu Carlos De Cossio Ricardo Urena Michael Hernandez Robert Romano Sun Li Yang

Fetch Sequence (symbolic)

t1: MAR <- (PC) t2: MBR <- (memory) PC <- (PC) +1 t3: IR <- (MBR) (tx = time unit/clock cycle)or t1: MAR <- (PC) t2: MBR <- (memory) t3: PC <- (PC) +1 IR <- (MBR)

Page 7: Group 1 Michael Bouizza Rolando Abreu Carlos De Cossio Ricardo Urena Michael Hernandez Robert Romano Sun Li Yang

Rules for Clock Cycle Grouping

Page 8: Group 1 Michael Bouizza Rolando Abreu Carlos De Cossio Ricardo Urena Michael Hernandez Robert Romano Sun Li Yang

Indirect Cycle

Page 9: Group 1 Michael Bouizza Rolando Abreu Carlos De Cossio Ricardo Urena Michael Hernandez Robert Romano Sun Li Yang

Interrupt Cycle

Page 10: Group 1 Michael Bouizza Rolando Abreu Carlos De Cossio Ricardo Urena Michael Hernandez Robert Romano Sun Li Yang

Execute Cycle (ADD)

ADD R1, X

Page 11: Group 1 Michael Bouizza Rolando Abreu Carlos De Cossio Ricardo Urena Michael Hernandez Robert Romano Sun Li Yang

Execute Cycle (ISZ)

ISZ X - increment and skip if zero

Page 12: Group 1 Michael Bouizza Rolando Abreu Carlos De Cossio Ricardo Urena Michael Hernandez Robert Romano Sun Li Yang

Execute Cycle (BSA)

BSA X - Branch and Save Address

Address of instruction following BSA is saved in X

Execution continues from X+1

Page 13: Group 1 Michael Bouizza Rolando Abreu Carlos De Cossio Ricardo Urena Michael Hernandez Robert Romano Sun Li Yang

Instruction Cycle

Each phase decomposed into sequence of elementary micro-operations

Such as fetch, indirect, and interrupt cycles. Execute cycle

One sequence of micro-operations for each opcode

Assume new 2-bit register Instruction cycle code (ICC) designates which

part of cycle processor is in▪ 00: Fetch▪ 01: Indirect▪ 10: Execute▪ 11: Interrupt

Page 14: Group 1 Michael Bouizza Rolando Abreu Carlos De Cossio Ricardo Urena Michael Hernandez Robert Romano Sun Li Yang

Data Flow - Fetch Cycle

Page 15: Group 1 Michael Bouizza Rolando Abreu Carlos De Cossio Ricardo Urena Michael Hernandez Robert Romano Sun Li Yang

Data Flow – Indirect Cycle

Page 16: Group 1 Michael Bouizza Rolando Abreu Carlos De Cossio Ricardo Urena Michael Hernandez Robert Romano Sun Li Yang

Data Flow – Interrupt Cycle

Page 17: Group 1 Michael Bouizza Rolando Abreu Carlos De Cossio Ricardo Urena Michael Hernandez Robert Romano Sun Li Yang

Execute Cycle

Can take many forms, depending on the instruction located in the IR.

May Involve transferring data among registers, read/write from memory or I/O, and

This cycle may involve transferring data among registers, read or write from memory or I/O.

Page 18: Group 1 Michael Bouizza Rolando Abreu Carlos De Cossio Ricardo Urena Michael Hernandez Robert Romano Sun Li Yang

Functional Requirements

Define basic elements of processor Describe micro-operations processor

performs Determine functions control unit

must perform

Page 19: Group 1 Michael Bouizza Rolando Abreu Carlos De Cossio Ricardo Urena Michael Hernandez Robert Romano Sun Li Yang

CPU with the System Bus

Page 20: Group 1 Michael Bouizza Rolando Abreu Carlos De Cossio Ricardo Urena Michael Hernandez Robert Romano Sun Li Yang

Basic Elements of a Processor

ALU Registers Internal data paths External data paths Control Unit

Page 21: Group 1 Michael Bouizza Rolando Abreu Carlos De Cossio Ricardo Urena Michael Hernandez Robert Romano Sun Li Yang

Types of Micro-operation Transfer data between registers

Transfer data from register to external

Transfer data from external to register

Perform arithmetic or logical ops

Page 22: Group 1 Michael Bouizza Rolando Abreu Carlos De Cossio Ricardo Urena Michael Hernandez Robert Romano Sun Li Yang

Functions of Control Unit

Sequencing Causing the CPU to step through a series

of micro-operations

Execution Causing the performance of each micro-

op

Page 23: Group 1 Michael Bouizza Rolando Abreu Carlos De Cossio Ricardo Urena Michael Hernandez Robert Romano Sun Li Yang

Control Signals

Page 24: Group 1 Michael Bouizza Rolando Abreu Carlos De Cossio Ricardo Urena Michael Hernandez Robert Romano Sun Li Yang

Control Signals Output

Electronic Signals that execute instructions

In CPU Causes Data Transfer Executes Instructions

In Control Bus Sends instructions out to I/O devices

Ex: Modem, Soundcard & Video card Sends signals to Memory

Page 25: Group 1 Michael Bouizza Rolando Abreu Carlos De Cossio Ricardo Urena Michael Hernandez Robert Romano Sun Li Yang

Modern I/O Controllers

Serial ATA Raid Controller on PCI Express

Page 26: Group 1 Michael Bouizza Rolando Abreu Carlos De Cossio Ricardo Urena Michael Hernandez Robert Romano Sun Li Yang

Control Signal Sequence – Fetch

MAR to PC Opens Communication Between PC and

MAR MBR to Memory

Steps Listed: Opens Communication Between MAR

and Address Bus Memory gets Read Control Signal Communication open Between Data Bus

and MBR

Page 27: Group 1 Michael Bouizza Rolando Abreu Carlos De Cossio Ricardo Urena Michael Hernandez Robert Romano Sun Li Yang

Data Paths and Control Signals

Page 28: Group 1 Michael Bouizza Rolando Abreu Carlos De Cossio Ricardo Urena Michael Hernandez Robert Romano Sun Li Yang

Internal Organization

Single internal bus

Gates used in order to move through the buss

Control Signals will send out electronics

signals to guide the transfer of information

from the external systems bus

Temporary storage in registers are used for

the proper functionality of ALU

Page 29: Group 1 Michael Bouizza Rolando Abreu Carlos De Cossio Ricardo Urena Michael Hernandez Robert Romano Sun Li Yang

CPU with Internal Bus

Page 30: Group 1 Michael Bouizza Rolando Abreu Carlos De Cossio Ricardo Urena Michael Hernandez Robert Romano Sun Li Yang

Intel 8085 CPU Block Diagram

Page 31: Group 1 Michael Bouizza Rolando Abreu Carlos De Cossio Ricardo Urena Michael Hernandez Robert Romano Sun Li Yang

Intel 8085 Pin Configuration

Page 32: Group 1 Michael Bouizza Rolando Abreu Carlos De Cossio Ricardo Urena Michael Hernandez Robert Romano Sun Li Yang

Intel 8085 OUT InstructionTiming Diagram

Page 33: Group 1 Michael Bouizza Rolando Abreu Carlos De Cossio Ricardo Urena Michael Hernandez Robert Romano Sun Li Yang

Hardwired Implementation

The control unit inputs signals are a combination of: Opcode Bits. Other signals such as interrupts, or

condition codes. Timing info (T1 to Tn). These signals

are essential for timing for proper sequencing through instruction cycles.

Page 34: Group 1 Michael Bouizza Rolando Abreu Carlos De Cossio Ricardo Urena Michael Hernandez Robert Romano Sun Li Yang

Control Unit with Decoded Inputs

Page 35: Group 1 Michael Bouizza Rolando Abreu Carlos De Cossio Ricardo Urena Michael Hernandez Robert Romano Sun Li Yang

Hardwired Implementation

Instruction register the part of the CPU’s control unit

that stores the instruction currently being executed or decoded.

Op-code causes different control signals for each different instruction

Unique logic for each op-code Decoder takes encoded input and

produces single output n binary inputs and 2n outputs

Page 36: Group 1 Michael Bouizza Rolando Abreu Carlos De Cossio Ricardo Urena Michael Hernandez Robert Romano Sun Li Yang

Hardwired Implementation

Clock Repetitive sequence of pulses Useful for measuring duration of micro-

ops Must be long enough to allow signal

propagation Different control signals at different

times within instruction cycle Need a counter with different control

signals for t1, t2 etc.

Page 37: Group 1 Michael Bouizza Rolando Abreu Carlos De Cossio Ricardo Urena Michael Hernandez Robert Romano Sun Li Yang

Problems With Hard Wired Designs

Complex sequencing & micro-operation logic

Difficult to design and test Inflexible design Difficult to add new instructions

Page 38: Group 1 Michael Bouizza Rolando Abreu Carlos De Cossio Ricardo Urena Michael Hernandez Robert Romano Sun Li Yang

Questions

What are a micro operations ?

Why should you not read and write from the

same register at the same time ?

what are the basic elements of a processor ?

what happens when interupts are enabled ?

Name 3 sub-cycles for the instruction cycles

Page 39: Group 1 Michael Bouizza Rolando Abreu Carlos De Cossio Ricardo Urena Michael Hernandez Robert Romano Sun Li Yang

More Questions

How many types of micro-operation?

What are the inputs of the control signals?

List modern I/O Devices

What sends an electronic signals that

organizes various processor unit to execute an

instruction ?

What are advantages of hardware

implementation ?