Micro-programmed control unit
➔ It uses a sequence of micro instructions in micro programming
language
➔ It acts as a midway between hardware and software
➔ It generates a set of control signals on the basis of control lines
➔ It is easy to design, test and implement
➔ It is flexible to modify
➔ It consist of set of control signals, control variables, control word,
control memory, micro instruction and micro programs
➔ Control signals are group of bits used to select a path e.g. in
multiplexer, encoder or decoder
➔ Control Variable - Binary variables used to specify micro operation
➔ Control Word – Group of control variable
➔ Control memory – Memory which contains control words
➔ Micro instructions contains control words stored in control memory. It
specifies control signals in execution of micro operations
➔ Micro program – Set of micro instructions
Organisation:
➔ The control memory is assumed to be ROM within which all control
information is permanently stored.
➔ The control address register specifies the address of the micro
instruction and the control data register holds the micro instruction read
from the memory ➔ The micro instruction contains a control word that
specifies one or more micro operations for the data processor
➔ Once these operations are executed, the control must determine the
next address
➔ The location of the next microinstruction may be the next one in
sequence or it may be located somewhere else in the control memory
➔ While the micro operations 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 micro instruction
➔Thus a micro instruction contains bits for initiating micro operations in
the data processor part and bits that determine the address sequence for
the control memory
➔The next address generator is sometimes called a micro program
sequencer as it determines the address sequence that is read from
control memory
➔Typical functions of microprogram sequence are:
1. incrementing control address register by one.
2. loading into the control address register an address from the control
memory.
3. transferring an external address.
4. loading an initial address to start the control operations.
5. the control data register holds the present microinstruction while the
next address is computed and read from memory.
6. the data register is sometimes called a pipeline register.
7. it allows execution of microoperations specified by control word
simultaneously with the generation of next micro instruction.
8. this configuration requires a two-phase clock with one clock applied
to the address register and other to the data register.
9. the main advantage of microprogrammed control is if we want to
establish a different control sequence for the system all we need to
do is specify a different set of micro instructions for control memory.
Hardwired Control Unit
➔In this the control signals that are important for instruction execution
are generated by specially designed hardware logical circuits.
➔In this we cannot modify the signal generation method without physical
change of the circuit structure.
➔The operation code of the instruction contains the basic data for control
signal generation.
➔In the instruction decode, the operation code is decoded.
➔ The instruction decoder constitutes a set of many decoders that decode
different fields of instruction opcode.
➔ As a result few o/p lines going out from the instruction decoder obtain
active signal values.
➔ These o/p lines are connected to the inputs of the matrix that
generates control signals for execution unit of computer.
➔ This matrix implements, logical combinations of decoded signals from
instruction opcode with the o/p's from the matrix that generates signals
representing consecutive control unit states .
➔ Hardwired CU uses sequential circuits like gates, flip flops, decoder to
generate control signals.
➔ It is generally faster than micro programmed CU.
➔ This architecture is preferred in Reduced Instruction Set Computer.
➔ RISC uses simple instructions.
Advantages
1. It is fast because control signals are generated by using
combinational circuits.
2. Performance is high.
Disadvantages.
1. control signals required by CPU will be more complex.
2. Modification of control signals is difficult. Difficult to correct mistakes
or add new features in existing design of CU.
➔Instr. Reg is a 16 lit register which gets instruction from memory.
➔It is divided into 3 parts:
a) 1st part (0-11) : indicates
address
b) 2nd part (12 13 14):
indicates opcode
c) 3rd part (2 bit): indicates
direct or indirect. If its 1
indirect, if 0 direct.
➔Fetch the instruction from memory and place it in IR.
➔Address field in IR is connected to the combinational control logic
➔3 bit opcode (type of opcode) is connected to 3:8 decoder. (o/p: D0-D7)
➔the 8 o/p bits of decoder is connected to the combinational control logic.
➔the opcode whatever is fetched will be decoded in the combinational
control logic
➔4 bit sequence counter has 3 i/p’s Increment (INR), clear (CLR), clock.
➔After every instruction execution the sequence counter is cleared to 0
(i.e. start from T0)
➔o/p of 4 bit sequence counter is connected to 4:16 decoder
➔16 o/p's are timings signals.
➔For every clock pulse sequence count is incremented by 1
➔If circuit pulse and INC is enabled the timing signals will be incremented
(T0,T1…T15)