Microprocessors
531
13.3.3 Control Unit
The control unit governs and coordinates the activities of different sections of the processor and I/O
devices. It is responsible for controlling the cycle of fetching machine instructions from memory and
executing them. It also coordinates the activities of input and output devices. It is undoubtedly the
most complex of all functional blocks of the microprocessor and occupies most of the chip area. The
control unit is a sequential logic circuit, which steps the processor through a sequence of synchronized
operations. It sends a stream of control signals and timed pulses to the components and external pins
of the microprocessor. As an illustration, to execute an instruction from the memory, the control unit
sends out a ‘read’ command to the memory and reads the instruction (or data) that comes back on
the data bus. The control unit then decodes the instruction and sends appropriate signals to the ALU,
the general-purpose registers, the multiplexers, the demultiplexers, the program counter and so on. If
the instruction was to store data in the memory, the control unit sends out the address of the memory
location on the address bus, the data to be stored on the data bus and a ‘write’ command on a control line.
Control units are categorized into two types depending upon the way they are built. These include
hard-wired and microcoded control units. Hard-wired controllers are sequential logic circuits, the
states of which correspond to the phases of the instruction execution cycle. In the case of hardwired controllers, there is an electronic circuitry in the control unit to generate control signals for
each instruction. They are very compact and fast, but are difficult to design. This design is also
known as RISC (Reduced Instruction Set Computer) design. Microcoded control units are easy to
design, and execution of an instruction in this case involves executing a microprogram consisting of a
sequence of microinstructions. This design is also known as CISC (Complex Instruction Set Computer)
design. Microcoded control units offer more flexibility than do hard-wired control units but they are
comparatively slower than the latter.
Figure 13.4 shows a more descriptive block diagram of a microprocessor. Multiplexers and
demultiplexers do not represent primary functions and are there to facilitate the flow of data between
different blocks and also between different blocks and the outside world.
13.4 Basic Microprocessor Instructions
Microprocessors perform various basic operations including data transfer instructions, arithmetic
instructions, logic instructions, control transfer instructions and machine control instructions.
13.4.1 Data Transfer Instructions
Data transfer instructions transfer data from one location designated as the source location to another
location designated as the destination. The data transfer could take place from one register to another,
from one memory location to another memory location, from a memory location to a register or from a
register to a memory location, and so on. In fact, they are more correctly referred to as data movement
operations as the contents of the source are not transferred but are copied into the destination register
without modifying the contents of the source. It may be mentioned here that these operations do not
affect the flags. Data transfer operations of the 8085 microprocessor are of three types, namely MOVE,
LOAD and STORE:
MOV destination, source Copy data from the source to the destination location
LDA address
Copy the data byte at the memory location specified by the 16-bit
address into the accumulator
STA address
Copy the data from the accumulator to the memory location specified
by the 16-bit address
531
13.3.3 Control Unit
The control unit governs and coordinates the activities of different sections of the processor and I/O
devices. It is responsible for controlling the cycle of fetching machine instructions from memory and
executing them. It also coordinates the activities of input and output devices. It is undoubtedly the
most complex of all functional blocks of the microprocessor and occupies most of the chip area. The
control unit is a sequential logic circuit, which steps the processor through a sequence of synchronized
operations. It sends a stream of control signals and timed pulses to the components and external pins
of the microprocessor. As an illustration, to execute an instruction from the memory, the control unit
sends out a ‘read’ command to the memory and reads the instruction (or data) that comes back on
the data bus. The control unit then decodes the instruction and sends appropriate signals to the ALU,
the general-purpose registers, the multiplexers, the demultiplexers, the program counter and so on. If
the instruction was to store data in the memory, the control unit sends out the address of the memory
location on the address bus, the data to be stored on the data bus and a ‘write’ command on a control line.
Control units are categorized into two types depending upon the way they are built. These include
hard-wired and microcoded control units. Hard-wired controllers are sequential logic circuits, the
states of which correspond to the phases of the instruction execution cycle. In the case of hardwired controllers, there is an electronic circuitry in the control unit to generate control signals for
each instruction. They are very compact and fast, but are difficult to design. This design is also
known as RISC (Reduced Instruction Set Computer) design. Microcoded control units are easy to
design, and execution of an instruction in this case involves executing a microprogram consisting of a
sequence of microinstructions. This design is also known as CISC (Complex Instruction Set Computer)
design. Microcoded control units offer more flexibility than do hard-wired control units but they are
comparatively slower than the latter.
Figure 13.4 shows a more descriptive block diagram of a microprocessor. Multiplexers and
demultiplexers do not represent primary functions and are there to facilitate the flow of data between
different blocks and also between different blocks and the outside world.
13.4 Basic Microprocessor Instructions
Microprocessors perform various basic operations including data transfer instructions, arithmetic
instructions, logic instructions, control transfer instructions and machine control instructions.
13.4.1 Data Transfer Instructions
Data transfer instructions transfer data from one location designated as the source location to another
location designated as the destination. The data transfer could take place from one register to another,
from one memory location to another memory location, from a memory location to a register or from a
register to a memory location, and so on. In fact, they are more correctly referred to as data movement
operations as the contents of the source are not transferred but are copied into the destination register
without modifying the contents of the source. It may be mentioned here that these operations do not
affect the flags. Data transfer operations of the 8085 microprocessor are of three types, namely MOVE,
LOAD and STORE:
MOV destination, source Copy data from the source to the destination location
LDA address
Copy the data byte at the memory location specified by the 16-bit
address into the accumulator
STA address
Copy the data from the accumulator to the memory location specified
by the 16-bit address
