2. • A control memory is a part of the control unit.
• Control Memory is the storage in the microprogrammed control unit
to store the microprogram.
• Any computer that involves microprogrammed control consists of
two memories.
• They are the main memory and the control memory.
• Programs are usually stored in the main memory by the users.
Whenever the programs change, the data is also modified in the
main memory.
• They consist of machine instructions and data.
2
3. • The control memory consists of microprograms that are fixed
and cannot be modified frequently.
• They contain microinstructions that specify the internal control
signals required to execute register micro-operations.
3
5. • The Control memory address register specifies the address of the
micro-instruction.
• The Control memory is assumed to be a ROM, within which all
control information is permanently stored.
• The control register holds the microinstruction fetched from the
memory.
• The micro-instruction contains a control word that specifies one or
more micro-operations for the data processor.
• 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 microinstruction.
• The next address generator is often referred to as a micro-program
sequencer, as it determines the address sequence that is read from
control memory.
5
7. What is address sequencing in
computer architecture?
• Addressing sequence is able to increment the CAR (Control
address register).
• It provides the facility for subroutine calls and returns.
• A mappings process is provided by the addressing sequence from
the instructions bits to a control memory address.
7
8. What is address sequencing in
microprogrammed control?
• Microinstructions are stored in control memory in groups, with
each group specifying a routine.
• Each computer instruction has its own microprogram routine in
control memory to generate the microoperations that execute the
instruction.
8
11. Program Control Instructions
• A program control instruction changes address value in the PC and
hence the normal flow of execution.
• Change in PC causes a break in the execution of instructions.
• It is an important feature of the computers since it provides the control
over the flow of the program and provides the capability to branch to
different program segments.
11
13. Typical Program Control Instructions
• Branch (BR) and Jump (JMP) instructions are used sometimes
interchangeably but, they are different.
• Branch and Jump instructions usually differ in addressing modes.
• Usually Jump is used to refer to unconditional version of branch.
• Skip (SKP) instructions is used to skip one(next) instruction.
• It can be conditional or unconditional. It does not need an address
field.
13
14. • A conditional branch instruction is a branch instruction that may or
may not cause a transfer of control depending on the value of stored
bits in the PSR (processor status register).
• Each conditional branch instruction tests a different combination of
Status bits for a condition.
• If the condition is true, control is transferred to the effective address
(PC←Add). If the condition is false, the program continues with the
next instruction (PC←PC+1).
• Below is a list of Conditional Branch instructions, letter ‘N’ stands for
NOT.
14
15. Conditional Branch Instructions
• ‘C’ represents the carry, or borrow after arithmetic addition or
subtraction.
• ‘N’ represents the leftmost bit of the result of the operation i.e. sign
bit.
• ‘V’ is for overflow i.e. if the sign of the result is changed (inverted).
• ‘Z’ is for zero i.e., to check whether the result of an operation is zero
(Z=1) or not zero (Z=0).
15
17. • This mapping consists of placing a 0 in the most significant
bit of the address, transferring the four operation code bits,
and clearing the two least significant bits of the control
address register.
• This provides for each computer instruction a micro-program
routine with a capacity of four microinstructions.
17
20. Subroutine
• A set of instructions that are used repeatedly in a program can be
referred to as Subroutine.
• Only one copy of this Instruction is stored in the memory. When a
Subroutine is required it can be called many times during the Execution
of a particular program.
20
22. • Control Unit is the part of the computer's central processing unit
(CPU), which directs the operation of the processor.
22
23. What are the characteristics of a control
unit?
• The control unit uses circuitry to control the actions of the processor.
• The control unit handles all input and output to and from the
processor.
• It interprets and executes instructions sequentially, guides data flow,
regulates and controls timing, and sends and receives control signals
from other devices.
23
24. What is the purpose of control unit?
• The control unit controls and monitors communications between the
hardware attached to the computer.
• It controls the input and output of data, checks that signals have been
delivered successfully, and makes sure that data goes to the correct place
at the correct time.
24
25. What is the control unit used for?
The Function of Control Unit
• It coordinates the flow of data out of, into, and between the various
subunits of a processor.
• It understands commands and instructions.
• It regulates the flow of data within the processor.
• It accepts external commands or instructions, which it turns into a series
of control signals.
25
26. • CPU is the brain of the computer.
• All types of data processing operations and all the important functions of a
computer are performed by the CPU.
• It helps input and output devices to communicate with each other and perform
their respective operations.
• It also stores data which is input, intermediate results in between processing, and
instructions.
26
27. What is CPU organization in computer
architecture?
CPU is organized with
• Program Counter (PC),
• Instruction Register (IR),
• Instruction Decoder,
• Control Unit,
• Arithmetic Logic Unit (ALU),
• Registers,
• Buses.
27
28. What are 3 types of registers in CPU?
• memory address register (MAR)
• memory data register (MDR)
• current instruction register (CIR)
28
33. • A register is a unique high-speed storage area in the CPU.
• Registers implement two important functions in the CPU operation:
• It can support a temporary storage location for data and fast access to
the data if required.
• It can save the status of the CPU and data about the implementing
program.
33
34. Major Components of CPU:
1. Storage Components-register
2.Execution Components-ALU
3.Transfer Components-Bus
4.Control Components: Control Unit
34
35. • Generally CPU has seven general registers.
• Register organization show how registers are selected and data flow
between register and ALU.
35
37. Example:
• To perform the operation R3=R1+R2 We need to provide following
binary selection variable to the select inputs
• MUX A Selector( SELA): 001 –To place the contents of R1 into bus A
• MUX B Selector(SELB):010- To place the contents of R2 into bus B
• ALU operation Selector(OPR): To perform the arithmetic addition A+B
• Decoder Destination Selector(SEL D):011-To place the result available on
output bus in R3
37
39. Control Word:
• The combined value of a binary selection inputs specifies the control
word.
• Control words for all micro operation are stored in the control
memory.
• It consist of four fields SELA, SELB, and SELD contains three bit each
and OPR field contains five bits.
• Therefore, the total bits in the control word are 14
39