microprocessor is a
programmable semiconductor device that is used for executing
to process digital data or exercise digital control over other devices. It
primarily as the
processing unit (CPU)
of a computer
system. The complexity of present-day microprocessors make even a
modest description of how they work beyond the scope of this page.
Thus, what is presented below is the architecture of a typical
microprocessor from a couple of decades ago. The following discussion,
simple as it is, nonetheless gives a reasonable
understanding of how microprocessors in general work.
mentioned, a microprocessor is used to execute a series of steps or
instructions, which collectively constitutes a
Every microprocessor has a unique set of instructions that it can execute.
This set of instructions is known as its, well,
Every instruction on the instruction set does something unique, and has
different requirements in terms of which
microprocessor to utilize or what
to work on.
microprocessor circuit has the following
Logic Unit (ALU),
which is where the arithmetic and logic operations of the microprocessor
take place; 2) a
data that need to be processed are transported; 3) an
system that provides the address of the memory location being accessed; 4)
for orchestrating the program execution of the microprocessor; 5) an
where instructions are loaded one at a time and 'interpreted'; 6) a
indicates the memory address where the next instruction will come from;
and 7) various
microprocessor executes a program stored in memory by
the instructions of the program (and whatever data they require) one at a
time and performing these instructions. Memory in this context
basically refers to external memory devices that complement the
microprocessor and the input/output devices of the computer system. The
manner in which the next instruction will be executed depends on the
results of the last operation. Thus, the output of the
microprocessor depends on the
provided to it.
with different ALU designs have different
arithmetic and logic capabilities. For instance, some ALU's can
handle all the basic arithmetic functions directly, while the simplest
ones only perform addition and shift operations, which are also the steps
used to emulate all other arithmetic functions such as multiplication and
division. The logic capability of the ALU also varies from one
microprocessor to another, but almost all ALU's can perform the AND,
OR and EXOR.
instructions being followed by a microprocessor come in the form of
instruction codes. Instruction execution can not
occur haphazardly, and must be controlled precisely as it happens. The
of the microprocessor is the
one responsible for controlling the sequencing of events needed for the
execution of an instruction, as well as the timing of this sequence of
events. The control unit is complemented by a clock or timing
generator that helps it trigger the occurrence of each event at the
correct point in time.
of a microprocessor indicates where the next instruction bytes are located in
memory. It is indexed by the control unit by 1 every time an
instruction code is transferred from memory to the microprocessor.
microprocessor uses the
to store the instruction code last fetched from memory. The first
byte of an instruction code is fed by the instruction register to the
which 'decodes' it to determine which operation must be carried out, how many
bytes of data will be processed, and where to get these data. After
instruction decoding, the execution of the instruction proceeds.
are elements composed of a set of flip-flops where data are stored
temporarily for subsequent processing or transfer, as the microprocessor
goes about its task of executing its instructions one at a time. The
is a special register used by the microprocessor for holding operands, or
data to be manipulated by the ALU. Aside from the accumulator,
are also available to the microprocessor for holding data that need to be
which are really just special registers for storing the state of a
condition that results from a previous operation. Examples of status
flags include: 1) the
which indicates if there's a need to do a 'carry' after addition or a
'borrow' after subtraction; 2) the
which indicates if a given operation in the ALU results in a 'zero'; 3)
which indicates whether the result of an ALU operation is negative or
positive; 4) the
which indicates if an operation produces a result that can't fit into the
specified word length; and 5) the
flag (used in error detection) that is set if the result of an operation
contains an even number of 1's.
microprocessor has been around for more than two decades already.
It now comes in many forms, sizes and levels of sophistication, powering
all kinds of applications that rely on 'computer control'. Although it
is the central processing unit of a computer system, it also needs to
interact with other semiconductor devices in order to perform its
functions. These 'other' devices include the memory and
input/output devices that constitute the rest of the computer system.
What is a
Semiconductor?; DSP's; SRAMs; DRAMs
All Rights Reserved.