Microprogrammed Control
Microprogrammed Control
PROGRAMMED
CONTROL
ASHUTOSH
•PRAJAPATI
Making Presentation
• Searching the topics
• Researching the
resources
GAURAV
• Researching topics
from different
sources
CONTROL UNIT
Control unit generates timing and control signals for the
operations of the computer.
(groups of bits that select the paths in multiplexers, decoders,
and arithmetic logic units)
Next-address information
Sequencer
• Determine the address sequence that is read from control
memory.
1.• Incrementing
Next addressthe
of the nextregister
control microinstruction
2. Loadingcanan be specified
address fromseveral
control
way depending
memory ontothe sequencer
CAR. input.
3. Loading an initial address
Functions:
1. Incrementing the control register
2. Loading an address from control memory to CAR.
3. Loading an initial address
Control Address Register
Specify the address of the microinstruction
Control memory
(ROM)
CAR INCREMENT
JMP/CALL
MAPPING
SUBROUTINE
RETURN
CONTROL
ADDRESS
REGISTER
CAR Receive The Address
from 4 Different Paths
Incrementer
Mapping Logic
UNCONDITIONAL BRANCH
1 0 1 1 Address
INSTRUCTION Instruction
Mapping bits 0 x x x x 0 0
DIRECT MAPPING
MICROPROGRAM
EXAMPLE
COMPUTER CONFIGURATION
CONTROL MEMORY :
• 4 registers are associated with
processor unit (PC,AR,DR,AC)
• 2 registers are associated with
the control unit (CAR,SBR)
MICROINSTRUCTION FORMAT
SYMBOLS BINARY FORMAT
SYMBOLS BINARY FORMAT
Each line of the assembly language
microprogram defines a symbolic
microinstruction.
Each symbolic microinstruction is divided
into five fields:
Labels
• The label field may be
empty or it may specify
SYMBOLIC a symbolic address.
• A label is terminated
MICRO- with a colon (:).
INSTRUCTIONS
Each line of the assembly language
microprogram defines a symbolic
microinstruction.
Each symbolic microinstruction is divided
into five fields:
Labels
MICRO-
INSTRUCTIONS
Each line of the assembly language
microprogram defines a symbolic
microinstruction.
Each symbolic microinstruction is divided
into five fields:
Labels
Micro-ops
• Consists of one of the letters
U, I, S, Z
SYMBOLIC CD
Where U: Unconditional Branch
MICRO- I : Indirect address bit
S: Sign of AC
INSTRUCTIONS Z: Zero value in AC
Each line of the assembly language
microprogram defines a symbolic
microinstruction.
Each symbolic microinstruction is divided
intoLabels
five fields:
Micro-ops
CD
SYMBOLIC
BR • One of JMP, CALL, RET, MAP
MICRO-
INSTRUCTIONS
Each line of the assembly language
microprogram defines a symbolic
microinstruction.
Each symbolic microinstruction is divided
intoLabels
five fields:
Micro-ops
CD
SYMBOLIC BR
Microinstructions needed for the fetch routine: Symbolic Microprogram for fetch routine:
AR <- PC ORG 64
DR <-M[AR], PC <- PC + 1 PCTAR U JMP NEXT
AR <- DR(0-10), CAR(2-5) <- DR(l l-14), CAR(0, 1,6) <- READ,INCPC U JMP NEXT
0 DRTAR U MAP
Binary
Equivalents
Translated by an
Assembler
INDIRECT SUBROUTINE
SYMBOLIC
MICROPROGRAM
BINARY MICROPROGRAM
DESIGN OF
CONTROL UNIT
The bits of microinstruction are
usually divided into fi elds, with each
fi eld defi ning a distinct, separate
function.
The various fi elds available in the
instruction format provide control
bits to initiate the microoperation.
MUX 2:
• Test a status bit and the result of the test is
applied to an input logic circuit
• One of 4 Status bit is selected by Condition
bit (CD)
Input Logic
» Select one of the source address (S0 , S1) for CAR
» Enable the load input(L) in SBR
BR Load
FIELD Input MUX 1 SBR
Input Logic Truth Table:
I1 I0 T S1 S0 L
Input :
0 0 0 0 0 0 0 0
> I0 , I 1 from Branch bit (BR )
> T from MUX 2 ( T) 0 0 0 0 1 0 1 0
Output :
0 1 0 1 0 0 0 0
>MUX 1 Select signal ( S 0 , S 1 )
S1 = I 1 I0 ’ + I 1 I0 0 1 0 1 1 0 1 1
= I 1 (I0 ’ + I0)
=I1 1 0 1 0 X 1 0 0
S0 = I 1 ’ I0’T + I 1 ’ I0 T + I 1 I0 CALL
1 1 1 1 X 1 1 0
= I 1’T (I0 ’ + I0 ) + I 1 I0
= I 1 ’T + I 1 I0
>SBR Load signal ( L)
L = I 1’ I0 T
REFERENCES
• Morris Mano
• SlideShare
THANK YOU