19-11-2012, 04:49 PM
Microprogrammed Control
1Microprogrammed.pdf (Size: 1.27 MB / Downloads: 227)
Introduction
• An alternative to a hardwired control unit is
a microprogrammed control unit(specified
by a microprogram)
• Microprogrammed control unit
– Sequencing through microinstructions
– Generating control signals to execute each
microinstruction
• A control signals are used to cause register
transfers and ALU operations
• An approach to control unit design that was
organized and systematic and avoid the
complexities of a hardwired implementation
Microinstructions
• To implement a control unit as an
interconnection of basic logic elements is
no easy task
• An alternative, which is quite common in
contemporary CISC processors, is to
implement a microprogrammed control unit.
• Microprogramming language
• Microinstruction
– A sequence of instructions is a microprogram, or
firmware
– Easier to design in firmware than hardware
– More difficult to write a firmware than a software
Interpretation of Microinstruction
• To execute this microinstruction, turn on all
the control lines indicated by a 1 bit; leave off
all control lines indicated by a 0 bit. -> one or
more micro-operations to be performed
• If the condition indicated by the condition bits
is false, execute the next microinstruction in
sequence
• If true, the next microinstruction to be
executed is indicated in the address field.
Control Memory
• A concise description of the complete
operation of the control unit
• The sequence of micro-operations to be
performed during each cycle (fetch, indirect,
execute, interrupt)
• It specifies the sequencing of these cycles
Microprogrammed Control Unit
• The control memory contains the set of
microinstructions
• The control address register contains the
address of the next microinstruction to be
read
• When a microinstruction is read from the
control memory, it is transferred to the
control buffer register
• Reading a microinstruction from the control
memory is the same as executing that
microinstruction
Control Unit Functions
• To execute an instruction sequencing logic unit
issues a READ command to the control memory
• The word whose address is specified in the control
address register is read into the control buffer
register
• The content of the control buffer register generates
control signals and next-address information for the
sequencing logic unit
• The sequencing logic unit loads a new address into
the control address register based on the nextaddress
information from the control buffer register
and the ALU flags
• All this happens during one clock pulse