24-09-2021
Microprogrammed Control
Organization
Types of control units
The function of the control unit in a digital computer is to
initiate sequences of microoperations.
When the control signals are generated by hardware using
conventional logic design techniques, the control unit is said
to be Hardwired.
Microprogramming is a second alternative for designing the
control unit of a digital computer.
The control function that specifies a microoperation is a
binary variable.
When it is in one binary state, the corresponding
miicrooperation is executed.
1
24-09-2021
Types of control units
The control unit initiates a series of sequential steps of
microoperations.
During any given time, certain microoperations are to be initiated,
while others remain idle.
The control function that specifies a microoperation is a binary
variable.
The control variables at any given time can be represented by a
string of 1's and 0's called a control word. As such, control words
can be programmed to perform various operations on the
components of the system.
A control unit whose binary control variables are stored in
memory is called a microprogrammed control unit .
Microinstruction and Microprogram
Each word in control memory contains within it a
Microinstruction.
The microinstruction specifies one or more microoperations
for the system.
A sequence of microinstructions constitutes a
Microprogram.
2
24-09-2021
Control Memory
Since alterations of the microprogram are not needed once
the control unit is in operation, the control memory can be a
read-only memory (ROM).
The content of the words in ROM are fixed and cannot be
altered by simple programming since no writing capability is
available in the ROM.
ROM words are made permanent during the hardware
production of the unit.
A memory that is part of a control unit is referred to as a
control memory.
Control Memory
A computer that employs a microprogrammed control unit will have
two separate memories: a main memory and a control memory.
Main Memory:
The main memory is available to the user for storing the programs. The
contents of main memory may alter when the data are manipulated and
every time that the program is changed.
The user's program in main memory consists of machine instructions and
data.
Control Memory:
It holds a fixed microprogram that cannot be altered by the occasional user.
The microprogram consists of microinstructions that specify various internal
control signals for execution of register microoperations.
Each machine instruction initiates a series of microinstructions in control
memory.
These microinstructions generate the microoperations to fetch the
instruction from main memory; to evaluate the effective address, to execute
the operation specified by the instruction, and to return control to the fetch
phase in order to repeat the cycle for the next instruction.
3
24-09-2021
Microprogrammed control organization
The control memory is assumed to be a ROM, within
which all control information is permanently stored.
The control data register:
The register that holds the microinstruction read from
memory.
The microinstruction contains a control word that specifies one
or more microoperations for the data processor.
Once these operations are executed, the control must
determine the next address.
Microprogrammed control organization
The location of the next microinstruction may be the one next in
sequence, or it may be located somewhere else in the control
memory.
For this reason it is necessary to use some bits of the present
microinstruction to control the generation of the address of the
next microinstruction. The next address may also be a function of
external input conditions. While the microoperations are being
executed, the next address is
computed in the next address generator circuit and then
transferred into the control address register to read the next
microinstruction.
Thus a microinstruction contains bits for initiating
microoperations in the data processor part and bits that determine
the address sequence for the control memory.
4
24-09-2021
Sequencer
The next address generator is sometimes called
microprogram sequencer.
The address of the next microinstruction can be specified in
several ways, depending on the sequencer inputs.
Typical functions of a microprogram sequencer are
Incrementing the control address register by one, loading into
the control address register an address from control memory,
Transferring an external address, or loading an initial address to
start the control operations.
Address Sequencing
10
5
24-09-2021
11
Mapping from instruction code to
microinstruction address
12
6
24-09-2021
Computer hardware configuration
13
Microinstruction format
20 bits
14