We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF or read online on Scribd
You are on page 1/ 4
Experiment no :-7 Ci
Objective :- Design the control unit of a computer using either hardwiring or
microprogramming based on its register transfer language description.
Theory: -
Control Unit is the part of the computer's central processing unit (CPU), which
directs the operation of the processor. It was included as part of the Von Neumann
Architecture by John von Neumann. It is the responsibility of the Control Unit to tell the
computer's memory, arithmetic/logic unit and input and output devices how to respond
to the instructions that have been sent to the processor. It fetches internal instructions
of the programs from the main memory to the processor instruction register, and based
on this register contents, the control unit generates a control signal that supervises the
execution of these instructions.
A control unit works by receiving input information to which it converts into control
signals, which are then sent to the central processor. The computer's processor then
tells the attached hardware what operations to perform. The functions that a control unit
performs are dependent on the type of CPU because the architecture of CPU varies
from manufacturer to manufacturer. Examples of devices that require a CU are:
+ Control Processing Units(CPUs)
+ Graphics Processing Units(GPUs)
‘lock Diagram of the Control Unit
Types of Control Unit —
There are two types of control units: Hardwired control unit and Microprogrammable
control unit,
1, Hardwired Control Unit —
In the Hardwired control unit, the control signals that are important for instruction
execution control are generated by specially designed hardware logical circuits, in
which we can not modify the signal generation method without physical change of
the circuit structure. The operation code of an instruction contains the basic data
for control signal generation. In the instruction decoder, the operation code is
decoded. The instruction decoder constitutes a set of many decoders that decode
different fields of the instruction opcode.As a result, few output lines going out from the instruction decoder obta. (—*
signal values. These output lines are connected to the inputs of the
generates control signals for executive units of the computer. Th
implements logical combinations of the decoded signals from the instruction
opcode with the outputs from the matrix that generates signals representing
consecutive control unit states and with signals coming from the outside of the
processor, e.g. interrupt signals. The matrices are built in a similar way as a
programmable logic arrays.
‘sartioien
Block diagram of a hardwired contrat unit of a computer
Control signals for an instruction execution have to be generated not in a single
time point but during the entire time interval that corresponds to the instruction
execution cycle. Following the structure of this cycle, the suitable sequence of
internal states is organized in the control unit.
Anumber of signals generated by the control signal generator matrix are sent
back to inputs of the next control state generator matrix. This matrix combines
these signals with the timing signals, which are generated by the timing unit
based on the rectangular patterns usually supplied by the quartz generator. When
@ new instruction arrives at the control unit, the control units is in the initial state of
new instruction fetching. Instruction decoding allows the control unit enters the
first state relating execution of the new instruction, which lasts as long as the
timing signals and other input signals as flags and state information of the
computer remain unaltered. A change of any of the earlier mentioned signals
‘stimulates the change of the control unit state.
This causes that a new respective input is generated for the control signal
generator matrix. When an external signal appears, (e.g. an interrupt) the control
unit takes entry into a next control state that is the state concerned with the
reaction to this external signal (e.g. interrupt processing). The values of flags and
state variables of the computer are used to select suitable states for the
instruction execution cycle,
The last states in the cycle are control states that commence fetching the next
instruction of the program: sending the program counter content to the mainmemory address buffer register and next, reading the instruction word to c
instruction register of computer. When the ongoing instruction is the stop
instruction that ends program execution, the control unit enters an operat
system state, in which it waits for a next user directive.
. Microprogrammable control unit —
The fundamental difference between these unit structures and the structure of the
hardwired control unit is the existence of the control store that is used for storing
words containing encoded control signals mandatory for instruction execution.
In microprogrammed control units, subsequent instruction words are fetched into
the instruction register in a normal way. However, the operation code of each
instruction is not directly decoded to enable immediate control signal generation
‘but it comprises the initial address of a microprogram contained in the control
store,
+ With a single-level contro! store:
In this, the instruction opcode from the instruction register is sent to the
control store address register. Based on this address, the first
microinstruction of a microprogram that interprets execution of this instruction
is read to the microinstruction register. This microinstruction contains in its
‘operation part encoded control signals, normally as few bit fields. In a set
microinstruction field decoders, the fields are decoded. The microinstruction
also contains the address of the next microinstruction of the given instruction
microprogram and a control field used to control activities of the
microinstruction address generator.
Microprogrammed control unit with @ single level contro! store
‘+ The last mentioned field decides the addressing mode (addressing operation) to
be applied to the address embedded in the ongoing microinstruction. In
microinstructions along with conditional addressing mode, this address is refined
by using the processor condition flags that represent the status of computations
in the current program. The last microinstruction in the instruction of the given
microprogram is the microinstruction that fetches the next instruction from the
main memory to the instruction register,+ With a two-level control store: +
In this, in a control unit with a two-level control store, besides the contra
memory for microinstructions, a nano-instruction memory is included. In
control unit, microinstructions do not contain encoded control signals. The
operation part of microinstructions contains the address of the word in the nano-
instruction memory, which contains encoded control signals. The nano-
instruction memory contains all combinations of control signals that appear in
microprograms that interpret the complete instruction set of a given computer,
written once in the form of nano-instructions,
Microprogrammed contol unit with a two-level canto! store:
In this way, unnecessary storing of the same operation parts of microinstructions is
avoided. In this case, microinstruction word can be much shorter than with the single
level control store. It gives a much smaller size in bits of the microinstruction memory
and, as a result, a much smaller size of the entire control memory. The microinstruction
memory contains the control for selection of consecutive microinstructions, while those
control signals are generated at the basis of nano-instructions. In nano-instructions,
control signals are frequently encoded using 1 bit/ 1 signal method that eliminates
decoding.
Result :- The control unit design is verified trom this output signal..