2. Introduction
“The microprocessor is a multipurpose, clock driven,
register based, digital-integrated circuit which
accepts binary data as input, processes it
according to instructions stored in its memory, and
provides results as output.”
“Microprocessor is a computer Central Processing
Unit (CPU) on a single chip that contains millions
of transistors connected by wires.”
3. Components of Microprocessor
– Microprocessor is capable of performing various
computing functions and making decisions to
change the sequence of program execution.
– The microprocessor can be divided into three
segments as shown in the figure, Arithmetic/logic
unit (ALU), register array, and control unit.
– These three segment is responsible for all
processing done in a computer
5. • Arithmetic and logic unit (ALU)
– It is the unit of microprocessor where various
computing functions are performed on the data.
– It performs arithmetic operations such as
addition, subtraction, and logical operations such
as OR,AND, and Exclusive-OR.
– It is also known as the brain of the computer
system.
6. • Register array
– It is the part of the register in microprocessor which
consists of various registers identified by letters such as B,
C, D, E, H, and L.
– Registers are the small additional memory location which
are used to store and transfer data and programs that are
currently being executed.
• Control unit
– The control unit provides the necessary timing and control
signals to all the operations in the microcomputer.
– It controls and executes the flow of data between the
microprocessor, memory and peripherals.
– The control bus is bidirectional and assists the CPU in
synchronizing control signals to internal devices and
external components.
– This signal permits the CPU to receive or transmit data
from main memory
8. • System bus (data, address and control bus).
– This network of wires or electronic pathways is
called the 'Bus'.
– A system bus is a single computer bus that
connects the major components of a computer
system.
– It combines the functions of a data bus to carry
information, an address bus to determine where it
should be sent, and a control bus to determine its
operation.
– The technique was developed to reduce costs and
improve modularity.
9. • Address Bus
– It is a group of wires or lines that are used to transfer
the addresses of Memory or I/O devices.
– It is unidirectional.
– The width of the address bus corresponds to the
maximum addressing capacity of the bus, or the
largest address within memory that the bus can work
with.
– The addresses are transferred in binary format, with
each line of the address bus carrying a single binary
digit.
– Therefore the maximum address capacity is equal to
two to the power of the number of lines present
(2^lines).
10. • Data Bus
– It is used to transfer data within Microprocessor and
Memory/Input or Output devices.
– It is bidirectional as Microprocessor requires to send or receive
data.
– Each wire is used for the transfer of signals corresponding to a
single bit of binary data.
– As such, a greater width allows greater amounts of data to be
transferred at the same time.
• Control Bus
– Microprocessor uses control bus to process data,
i.e. what to do with the selected memory location.
– Some control signals are Read, Write and Opcode fetch etc.
– Various operations are performed by microprocessor with the
help of control bus.
– This is a dedicated bus, because all timing signals are generated
according to control signal.
13. • First generation –
From 1971 to 1972 the era of the first generation came which
brought microprocessors like INTEL 4004 Rockwell international
PPS-4 INTEL 8008 etc.
• Second generation –
The second generation marked the development of 8 bit
microprocessors from 1973 to 1978. Processors like INTEL 8085
Motorola 6800 and 6801 etc came into existence.
• Third generation –
The third generation brought forward the 16 bit processors like
INTEL 8086/80186/80286 Motorola 68000 68010 etc. From 1979 to
1980 this generation used the HMOS technology.
• Fourth generation –
The fourth generation came into existence from 1981 to 1995. The
32 bit processors using HMOS fabrication came into existence.
INTEL 80386 and Mororola 68020 are some of the popular
processors of this generation.
• Fifth generation –
From 1995 till now we are in the fifth generation. 64 bit processors
like PENTIUM, celeron, dual, quad and octa core processors came
into existence.
14. Types of microprocessors:
Complex instruction set microprocessor
Reduced instruction set microprocessor
Super scalar microprocessor
Application specific integrated circuit
Digital signal multiprocessor
15. Complex instruction set
microprocessor
• The processors are designed to minimize the number of
instructions per program and ignore the number of cycles
per instructions.
• The compiler is used to translate a high level language to
assembly level language because the length of code is
relatively short and an extra RAM is used to store the
instructions.
• These processors can do tasks like downloading, uploading
and recalling data from memory.
• Apart from these tasks these microprocessor can perform
complex mathematical calculation in a single command.
Example: IBM 370/168, VAX 11/780
16. Reduced instruction set
microprocessor
These processor are made according to function. They
are designed to reduce the execution time by using the
simplified instruction set.
They can carry out small things in specific commands.
These processors complete commands at faster rate.
They require only one clock cycle to implement a result
at uniform execution time.
There are less number of registers and less number of
transistors.
To access the memory location LOAD and STORE
instructions are used.
Example: Power PC 601, 604, 615, 620
17. • Super scalar microprocessor –
These processors can perform many tasks at a
time. They can be used for ALUs and multiplier
like array. They have multiple operation unit and
perform tasks by executing multiple commands.
• Application specific integrated circuit –
These processors are application specific like for
personal digital assistant computers. They are
designed according to proper specification.
• Digital signal multiprocessor –
These processors are used to convert signals like
analog to digital or digital to analog. The chips of
these processors are used in many devices such
as RADAR SONAR home theatres etc.
18. Features of 8085 Microprocessor:
• It is an 8-bit microprocessor i.e. it can accept, process, or provide 8-
bit data simultaneously.
• It operates on a single +5V power supply connected at Vcc; power
supply ground is connected to Vss.
• It operates on clock cycle with 50% duty cycle.
• It has on chip clock generator. This internal clock generator requires
tuned circuit like LC, RC or crystal. The internal clock generator
divides oscillator frequency by 2 and generates clock signal, which
can be used for synchronizing external devices.
• It can operate with a 3 MHz clock frequency. The 8085A-2 version
can operate at the maximum frequency of 5 MHz.
• It has 16 address lines, hence it can access (216) 64 Kbytes of
memory.
• It provides 8 bit I/O addresses to access (28 ) 256 I/O ports.
20. 8085
• 8085 is pronounced as "eighty-eighty-five" microprocessor. It is an
8-bit microprocessor designed by Intel in 1977 using NMOS
technology.
• It has the following configuration −
• 8-bit data bus
• 16-bit address bus, which can address upto 64KB
• A 16-bit program counter
• A 16-bit stack pointer
• Six 8-bit registers arranged in pairs: BC, DE, HL
• Requires +5V supply to operate at 3.2 MHZ single phase clock
• It is used in washing machines, microwave ovens, mobile phones,
etc.
21. 8085 Microprocessor – Functional
Units
• Registers
• ALU
• Instruction register and decoder
• Timing and control unit
• Interrupt control
• Serial Input/output control
• Address buffer and address-data buffer
• Address bus and data bus
22. 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.
23. 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.
• 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.
24.
25. 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.
26. 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.
28. Program Counter (PC)
• This 16-bit register deals with sequencing the
execution of instructions. This register is a
memory pointer. The microprocessor uses this
register to sequence the execution of the
instructions. The function of the program counter
is to point to the memory address from which the
next byte is to be fetched. When a byte is being
fetched, the program counter is automatically
incremented by one to point to the next memory
location.
29. Stack Pointer (SP)
• The stack pointer is also a 16-bit register, used
as a memory pointer. It points to a memory
location in R/W memory, called stack. The
beginning of the stack is defined by loading
16-bit address in the stack pointer.
30. Instruction Register/Decoder
• It is an 8-bit register that temporarily stores
the current instruction of a program. Latest
instruction sent here from memory prior to
execution. Decoder then takes instruction and
decodes or interprets the instruction.
Decoded instruction then passed to next
stage.
31. Timing and control unit
• It provides timing and control signal to the
microprocessor to perform operations.
Following are the timing and control signals,
which control external and internal circuits −
• Control Signals: READY, RD’, WR’, ALE
• Status Signals: S0, S1, IO/M’
• DMA Signals: HOLD, HLDA
• RESET Signals: RESET IN, RESET OUT
32. Interrupt control
• As the name suggests it controls the interrupts
during a process. When a microprocessor is
executing a main program and whenever an
interrupt occurs, the microprocessor shifts the
control from the main program to process the
incoming request. After the request is completed,
the control goes back to the main program.
• There are 5 interrupt signals in 8085
microprocessor: INTR, RST 7.5, RST 6.5, RST 5.5,
TRAP.
33. Serial Input/output control
• It controls the serial data communication by
using these two instructions: SID (Serial input
data) and SOD (Serial output data).
34. Address buffer and address-data
buffer
• The content stored in the stack pointer and
program counter is loaded into the address
buffer and address-data buffer to
communicate with the CPU. The memory and
I/O chips are connected to these buses; the
CPU can exchange the desired data with the
memory and I/O chips.
35. Address bus and data bus
• Data bus carries the data to be stored. It is
bidirectional, whereas address bus carries the
location to where it should be stored and it is
unidirectional. It is used to transfer the data &
Address I/O devices.
37. The pins of a 8085 microprocessor can be classified into seven groups −
Address bus
• A15-A8, it carries the most significant 8-bits of memory/IO address.
Data bus
• AD7-AD0, it carries the least significant 8-bit address and data bus.
Control and status signals
• These signals are used to identify the nature of operation. There are 3 control
signal and 3 status signals.
Three control signals are RD, WR & ALE.
• RD − This signal indicates that the selected IO or memory device is to be read and
is ready for accepting data available on the data bus.
• WR − This signal indicates that the data on the data bus is to be written into a
selected memory or IO location.
• ALE − It is a positive going pulse generated when a new operation is started by the
microprocessor. When the pulse goes high, it indicates address. When the pulse
goes down it indicates data.
• Three status signals are IO/M, S0 & S1.
38. IO/M
• This signal is used to differentiate between IO and Memory operations, i.e. when it
is high indicates IO operation and when it is low then it indicates memory
operation.
S1 & S0
• These signals are used to identify the type of current operation.
Power supply
• There are 2 power supply signals − VCC & VSS. VCC indicates +5v power supply and
VSS indicates ground signal.
• Clock signals
There are 3 clock signals, i.e. X1, X2, CLK OUT.
• X1, X2 − A crystal (RC, LC N/W) is connected at these two pins and is used to set
frequency of the internal clock generator. This frequency is internally divided by 2.
• CLK OUT − This signal is used as the system clock for devices connected with the
microprocessor.
39. • Interrupts & externally initiated signals
• Interrupts are the signals generated by external devices to request the
microprocessor to perform a task. There are 5 interrupt signals, i.e. TRAP, RST 7.5,
RST 6.5, RST 5.5, and INTR. We will discuss interrupts in detail in interrupts section.
• INTA − It is an interrupt acknowledgment signal.
• RESET IN − This signal is used to reset the microprocessor by setting the program
counter to zero.
• RESET OUT − This signal is used to reset all the connected devices when the
microprocessor is reset.
• READY − This signal indicates that the device is ready to send or receive data. If
READY is low, then the CPU has to wait for READY to go high.
• HOLD − This signal indicates that another master is requesting the use of the
address and data buses.
• HLDA (HOLD Acknowledge) − It indicates that the CPU has received the HOLD
request and it will relinquish the bus in the next clock cycle. HLDA is set to low
after the HOLD signal is removed.
40. Serial I/O signals
• There are 2 serial signals, i.e. SID and SOD and
these signals are used for serial communication.
• SOD (Serial output data line) − The output SOD is
set/reset as specified by the SIM instruction.
• SID (Serial input data line) − The data on this line
is loaded into accumulator whenever a RIM
instruction is executed.