You are on page 1of 19

CONTROL UNIT

[MICROPROGRAMMING APPROACH]

Dr. Sampath Kumar,


Associate Professor
Dept. of ECE,
Manipal Institute of
Technology, Manipal.
1
MICROPROGRAMMING

• Control words are held in a “Control Memory( CM )”


• Execution of Control Program is similar to User Program
• Each Control word contains signals to activate one or more
micro-operations – more flexible than hardwired
• Control words are retrieved from control memory in a
sequence to perform the desired task by activating a set of
micro-operations

Fields in Microinstructions: 1. Control Field 2. Next-Address Field

➢Control Field: To indicate which control lines are to be activated

➢Next-Address Field: To specify the address of the next 2

Microinstruction to be executed
WILKE’S DESIGN
• The decoder and diode matrix
utilize an 8 X 8 ROM
• Each ROM holds an 8-bit control
word
• Higher order 5 positions :
Control Signals
• Lower order 3 positions : Next
Address
• Control Memory Address
Register( CMAR ): holds the
address of contents of the ROM
• The length of the
microinstruction decides the
size and cost of the design

Dr. Sampath Kumar, Dept. of ECE, MIT 3


The length of the microinstruction depends on :
1. The degree of parallelism
2. The control field organization
3. The method of specifying the next microinstruction address.
EX: Unencoded Format
• C0: Outbus= A
• C1: Outbus= B
• C2: Outbus= C
• C3: Outbus= D

A simple Register Transfer


Dr. Sampath Kumar, Dept. of ECE, MIT 4
Encoded Format:
E2 E1 E0
0 0 0 No Operation
0 0 1 Outbus= A
0 1 0 Outbus= B
0 1 1 Outbus= C
1 0 0 Outbus= D

Dr. Sampath Kumar, Dept. of ECE, MIT 5


Encoded Format:
Method 1

Method 2: Parallel encoding

Dr. Sampath Kumar, Dept. of ECE, MIT 6


Classification of Microinstructions:

Horizontal: Vertical:

Long Microinstructions Short Instructions

High degree of Parallelism Low degree of Parallelism

Very little Decoding More Decoding

Dr. Sampath Kumar, Dept. of ECE, MIT 7


General-purpose Micro-programmed Control Organization
(modern microprogrammed control unit)

Dr. Sampath Kumar, Dept. of ECE, MIT 8


Control Memory Buffer Register:
It is a buffer to hold the microinstructions
that are retrieved from memory.
Each Microinstruction has 3 fields:
[Condition select field ]
[Branch address filed]
[Control information filed]
Microprogram Counter(MPC):
It hold the address of the next microinstruction to be executed.
External Condition select MUX:
It selects one of the external conditions according to the contents of the
condition select field of the microinstruction.

Dr. Sampath Kumar, Dept. of ECE, MIT 9


CONDITION SELECT FILED AND ACTION
TAKEN

Dr. Sampath Kumar, Dept. of ECE, MIT 10


Dr. Sampath Kumar, Dept. of ECE, MIT 11
MICROPROGRAMMING APPROACH FOR 4 X 4 BOOTH’S
MULTIPLIER:

12

13 words → require 4 bit branch address field


External Condition Select Multiplexer:
Condition Select Interpretation
Field
000 No Branching
001 Branching if Q[1]=0 & Q[0] = 1
010 Branching if Q[1]=1 & Q[0] = 0
011 Branching if Z = 0
100 Unconditional Branch
Size of a control word = size of the condition select field
+ size of the branch address field
+ number of control functions
Size of a control word = 3 + 4 + 10 = 17 Bits
Size of CMDB = 17 13

Size of CM = 221 (17 x 13)


MICROPROGRAMMING APPROACH FOR 4 X 4
BOOTH’S MULTIPLIER

14

Figure: Micro-programmed Multiplier Control Unit


Dr. Sampath Kumar, Dept. of ECE, MIT
15

Dr. Sampath Kumar, Dept. of ECE, MIT


Condition Select Interpretation
Field
000 No Branching
001 Branching if Q[1]=0 & Q[0] = 1
010 Branching if Q[1]=1 & Q[0] = 0
011 Branching if Z = 0
100 Unconditional Branch
Dr. Sampath Kumar, Dept. of ECE, MIT 17
18

Dr. Sampath Kumar, Dept. of ECE, MIT


Thank you

Dr. Sampath Kumar, Dept. of ECE, MIT 19

You might also like