0% found this document useful (0 votes)
36 views5 pages

8085 Microprocessor - Architecture

The document provides an overview of the 8085 microprocessor, detailing its architecture, functional blocks, and operations. It explains the roles of various components such as the Arithmetic and Logic Unit, registers, instruction decoder, and control circuitry. Additionally, it covers the instruction set, addressing modes, and the significance of different types of registers within the microprocessor system.

Uploaded by

gautamjay1111
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
36 views5 pages

8085 Microprocessor - Architecture

The document provides an overview of the 8085 microprocessor, detailing its architecture, functional blocks, and operations. It explains the roles of various components such as the Arithmetic and Logic Unit, registers, instruction decoder, and control circuitry. Additionally, it covers the instruction set, addressing modes, and the significance of different types of registers within the microprocessor system.

Uploaded by

gautamjay1111
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 5

Class Note: L3 Faculty name-

EC-502 Microprocessors & Microcontrollers Avanish Kumar Jayank


(Dept. of ECE, FOET, University of Lucknow)

UNIT I 8085 MICROPROCESSOR:


Introduction to microprocessor, microprocessor architecture and its operations, address / data bus
multiplexing and demultiplexing. Status and control signal generation, instruction set of 8085
microprocessor, classification of instructions, addressing modes, timing diagram of the instruction.

8085 Microprocessor – Architecture

Fig: Architecture of 8085 microprocessor


8085 consists of various functional blocks as listed below :
•Arithmetic and Logic Unit
•Registers
•Instruction decoder and machine cycle encoder
•Address buffer
•Address/Data buffer
•Incrementer/Decrementer Address Latch
•Interrupt control
•Serial I/O control
•Timing and control circuitry.
Arithmetic and logic unit
ALU performs arithmetic and logical functions on eight bit variables. The arithmetic unit performs
bitwise fundamental arithmetic operations such as addition and subtraction. The logic unit performs
logical operations such as complement, AND, OR and EX-OR, as well as rotate and clear. The ALU
also looks after the branching decisions.
Registers:
It has eight addressable 8-bit registers : A, B, C, D, E, H, L, F, and two 16-bit registers PC and SP.
These registers can be classified as:
1. General Purpose Registers
2. Temporary Registers : a) Temporary data register b) W and Z registers
3. Special Purpose Registers : a) Accumulator b) Flag registers c) Instruction register
4. Sixteen bit Registers : a) Program Counter (PC) b) Stack Pointer (SP)

1. General purpose register


There are 6 general purpose registers in 8085 processor, i.e. B, C, D, E, H & L. Each register can
hold 8-bit data.
These registers can work in pair to hold 16-bit data and their pairing combination is like B-C, D-E
& H-L.

2. Temporary register
a) Temporary data Register: It is an 8-bit register, which holds the temporary data of arithmetic and
logical operations.
b) W and Z registers: These are temporary registers. These registers are used to hold 8-bit data
during execution of some instructions. These registers are not available for programmer, since 8085
Microprocessor Architecture uses them internally.

Use of W and Z registers:


The CALL instruction is used to transfer program control to a subprogram or subroutine. This
instruction pushes the current PC contents onto the stack and loads the given address into the PC.
The given address is temporarily stored in the W and Z registers and placed on the bus for the fetch
cycle. Thus the program, control is transferred to the address given in the instruction. XCHG
instruction exchanges the contents of H with D and L with E, At the time of exchange W and Z
registers are used for temporary storage of data.
3. Special Purpose Registers :
a) Register A (accumulator)
It is an 8-bit register used to perform arithmetic, logical, I/O & LOAD/STORE operations. It is
connected to internal data bus & ALU.

b) Flag register
It is an 8-bit register having five 1-bit flip-flops, which holds either 0 or 1 depending upon the result
stored in the accumulator.
These are the set of 5 flip-flops −
•Sign (S)
•Zero (Z)
•Auxiliary Carry (AC)
•Parity (P)
•Carry (C)
Its bit position is shown in the following table −

D7 D6 D5 D4 D3 D2 D1 D0

S Z AC P CY

S-Sign flag : After the execution of arithmetic or logical operations, if bit D7 of the result is 1, the
sign flag is set. In a given byte if D7 is 1, the number will be viewed as negative number. If D7 is 0,
the number will be considered as positive number.

Z-Zero flag : The zero flag sets if the result of operation in ALU is zero and flag resets if result is
non zero. The zero flag is also set if a certain register content becomes zero following an increment
or decrement operation of that register.

AC-Auxiliary Carry flag : This flag is set if there is an overflow out of bit 3 i.e. carry from lower
nibble to higher nibble (D3 bit to D4 bit). This flag is used for BCD operations and it is not
available for the programmer.

P-Parity flag : Parity is defined by the number of ones present in the accumulator. After an
arithmetic or logical operation if the result has an even number of ones, i.e. even parity, the flag is
set. If the parity is odd, flag is reset.

CY-Carry flag : This flag is set if there is an overflow out of bit 7. The carry flag also serves as a
borrow flag for subtraction.

c) Instruction register (IR)


It is an 8-bit register. In a typical processor operation, the processor first fetches the opcode of
instruction from memory (i.e. it places an address on the address bus and memory responds by
placing the data stored at the specified address on the data bus). The CPU stores this opcode in a
register called the instruction register. This opcode is further sent to the instruction decoder to select
one of the 256 alternatives.
4. Sixteen bit Registers :
a) Program counter (PC)
It is a 16-bit register used to store the memory address location of the next instruction to be
executed. Microprocessor increments the program whenever an instruction is being executed, so
that the program counter points to the memory address of the next instruction that is going to be
executed.

b) Stack pointer(SP)
It is also a 16-bit register works like stack, which is always incremented/decremented by 2 during
push & pop operations. The stack is a reserved area of the memory in the RAM where temporary
information may be stored. Stack pointer is used to hold the address of the most recent stack entry.

Instruction Decoder and machine cycle encoder:


As mentioned earlier, the processor first fetches the opcode of instruction from memory and stores
this opcode in the instruction register. It is then sent to the instruction decoder. The instruction
decoder decodes it and accordingly gives the timing and control signals which control the register,
the data buffers, ALU and external peripheral signals depending on the nature of the instruction.

The 8085 Microprocessor Architecture executes seven different types of machine cycles. It gives
the information about which machine cycle is currently executing in the encoded form on the S 0, S1
and IO/M lines. This task is done by machine cycle encoder.

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.

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.
Incrementer/Decrementer Address Latch:
This 16-bit register is used to increment or decrement the contents of program counter or stack
pointer as a part of execution of instructions related to them.

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.,
and one acknowledge signal INTA
Serial Input/output control
In situations like, data transmission over long distance and communication with cassette tapes or a
CRT terminal, it is necessary to transmit data bit by bit to reduce the cost of cabling. In serial
communication one bit is transferred at a time over a single line.
It controls the serial data communication by using these two instructions: SID (Serial input data)
and SOD (Serial output data).The serial output data (SOD) line is used to send data serially and
serial input data (SID) line is used to receive data serially.

Timing and control circuitry


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’

You might also like