Introduction to Microprocesssors(1)
Introduction to Microprocesssors(1)
Microprocessors
T. Bihi
Introduction
• A microprocessor is a programmable electronics chip that has
computing and decision making capabilities similar to central
processing unit of a computer. Any microprocessor based systems
having limited number of resources are called microcomputers.
Nowadays, microprocessor can be seen in almost all types of
electronics devices like mobile phones, printers, washing machines
etc.
Fig.1 Microprocessor-based system
• Address Bus: It carries the address, which is a unique binary pattern used
to identify a memory location or an I/O port. For example, an eight bit
address bus has eight lines and thus it can address 28 = 256 different
locations. The locations in hexadecimal format can be written as 00H –
FFH.
• Data Bus: The data bus is used to transfer data between memory and
processor or between I/O device and processor. For example, an 8-bit
processor will generally have an 8-bit data bus and a 16-bit processor will
have 16-bit data bus.
• Control Bus: The control bus carry control signals, which consists of signals
for selection of memory or I/O device from the given address, direction of
data transfer and synchronization of data transfer in case of slow devices.
• A typical microprocessor consists of arithmetic and logic unit (ALU) in
association with control unit to process the instruction execution.
• Almost all the microprocessors are based on the principle of store-program
concept. In store-program concept, programs or instructions are
sequentially stored in the memory locations that are to be executed.
• To do any task using a microprocessor, it is to be programmed by the user.
So the programmer must have an idea about its internal resources,
features and supported instructions. Each microprocessor has a set of
instructions, a list which is provided by the microprocessor manufacturer.
The instruction set of a microprocessor is provided in two forms: binary
machine code and mnemonics.
• Microprocessor communicates and operates in binary numbers 0
and 1.
• The set of instructions in the form of binary patterns is called a
machine language and it is difficult for us to understand. Therefore,
the binary patterns are given abbreviated names, called mnemonics,
which forms the assembly language.
• The conversion of assembly-level language into binary machine-level
language is done by using an application called assembler.
Evolution of Microprocessors
• 4-bit Microprocessors
• The first microprocessor was introduced in 1971 by Intel Corp. It was named
Intel 4004 as it was a 4 bit processor. It was a processor on a single chip. It
could perform simple arithmetic and logic operations such as addition,
subtraction, boolean AND and boolean OR. It had a control unit capable of
performing control functions like fetching an instruction from memory,
decoding it, and generating control pulses to execute it. It was able to operate
on 4 bits of data at a time. This first microprocessor was quite a success in
industry. Soon other microprocessors were also introduced. Intel introduced
the enhanced version of 4004, the 4040.
Evolution of Microprocessors
• 8-bit Microprocessors
• The first 8 bit microprocessor which could perform arithmetic and logic
operations on 8 bit words was introduced in 1973 again by Intel. This was Intel
8008 and was later followed by an improved version, Intel 8088. Some other 8
bit processors are Zilog-80 and Motorola M6800.
• 16-bit Microprocessors
• The 8-bit processors were followed by 16 bit processors. They are Intel 8086
and 80286.
Evolution of Microprocessors
• 32-bit Microprocessors
• The 32 bit microprocessors were introduced by several companies but the
most popular one is Intel 80386.
• Pentium Series
• Instead of 80586, Intel came out with a new processor namely Pentium
processor. Its performance is closer to RISC performance. Pentium was
followed by Pentium Pro CPU. Pentium Pro allows multiple CPUs in a single
system in order to achieve multiprocessing. The MMX extension was added to
Pentium Pro and the result was Pentium II.
• The Pentium III provided high performance floating point operations for
certain types of computations by using the SIMD extensions to the instruction
set. These new instructions makes the Pentium III faster than high-end RISC
CPUs.
Evolution of Microprocessors
ARCHITECTURE OF 8085 MICROPROCESSOR
• The 8085 microprocessor is an 8-bit processor available as a 40-pin IC
package and uses +5 V for power. It can run at a maximum frequency
of 3 MHz. Its data bus width is 8-bit and address bus width is 16-bit,
thus it can address 216 = 64 KB of memory. The internal architecture
of 8085 is shown is Fig. 2.
Fig. 2 Internal Architecture of 8085
• Arithmetic and Logic Unit
• The ALU performs the arithmetic and logical operations such as Addition
(ADD), Subtraction (SUB), AND, OR etc. It uses data from memory and from
Accumulator to perform operations. The results of the arithmetic and logical
operations are stored in the accumulator.
• Registers
• The 8085 includes six registers, one accumulator and one flag register, as
shown in Fig. 3. In addition, it has two 16-bit registers: stack pointer and
program counter. They are briefly described as follows.
Fig. 3 Register organisation
• Registers
• The 8085 has six general-purpose registers to store 8-bit data; these are
identified as B, C, D, E, H and L. they can be combined as register pairs - BC,
DE and HL to perform some 16-bit operations. The programmer can use these
registers to store or copy data into the register by using data copy
instructions.
• Accumulator
• The accumulator is an 8-bit register that is a part of ALU. This register is used
to store 8-bit data and to perform arithmetic and logical operations. The
result of an operation is stored in the accumulator. The accumulator is also
identified as register A.
• Flag register
• The ALU includes five flip-flops, which are set or reset after an operation
according to data condition of the result in the accumulator and other
registers. They are called Zero (Z), Carry (CY), Sign (S), Parity (P) and Auxiliary
Carry (AC) flags. Their bit positions in the flag register are shown in Fig. 4. The
microprocessor uses these flags to test data conditions.