Thanks to visit codestin.com
Credit goes to www.scribd.com

0% found this document useful (0 votes)
6 views21 pages

Unit Ii and Iii

The 8085 microprocessor is an 8-bit microprocessor developed by Intel, featuring key components such as the accumulator, registers, program counter, and various buses for data transfer. It includes a functional block diagram detailing its architecture, including the arithmetic and logic unit, interrupt control, and serial I/O control. The instruction set is classified into five types: data transfer, arithmetic, logical, branching, and control instructions.

Uploaded by

devasagayamv307
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)
6 views21 pages

Unit Ii and Iii

The 8085 microprocessor is an 8-bit microprocessor developed by Intel, featuring key components such as the accumulator, registers, program counter, and various buses for data transfer. It includes a functional block diagram detailing its architecture, including the arithmetic and logic unit, interrupt control, and serial I/O control. The instruction set is classified into five types: data transfer, arithmetic, logical, branching, and control instructions.

Uploaded by

devasagayamv307
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/ 21

8085 MICROPROCESSOR ARCHITECTURE / FUNCTIONAL BLOCK DIAGRAM :

The 8085 microprocessor is an 8-bit microprocessor was developed by Intel,.The


architecture of the 8085 microprocessor consists of several key components, including the
accumulator, registers, program counter, stack pointer, instruction register, flags register, data bus,
address bus, and control bus.
The accumulator is an 8-bit register that is used to store arithmetic and logical results. It is
the most commonly used register in the 8085 microprocessor and is used to perform arithmetic
and logical operations such as addition, subtraction, and bitwise operations.
GENERAL PURPOSE REGISTER:
 The 8085 microprocessor has six general-purpose registers, including B, C, D, E, H, and
L, which can be combined to form 16-bit register pairs. The B and C registers can be
combined to form the BC register pair, the D and E registers can be combined to form the
DE register pair, and the H and L registers can be combined to form the HL register pair.
These register pairs are commonly used to store memory addresses and other data.
PROGRAM COUNTER:
 The program counter is a 16-bit register that contains the memory address of the next
instruction to be executed. The program counter is incremented after each instruction is
executed, which allows the microprocessor to execute instructions in sequence.
STACK POINTER:
 The stack pointer is a 16-bit register that is used to manage the stack. The stack is a section
of memory that is used to store data temporarily, such as subroutine addresses and other
data. The stack pointer is used to keep track of the top of the stack.
 Stack pointer works in a continuous and contiguous part of the memory. whereas Program
Counter(PC) works in random memory locations. This pointer is very useful in stack-
related operations like PUSH, POP, and nested CALL requests initiated by
Microprocessor.
INSTRUCTION REGISTER:
 The instruction register is an 8-bit register that contains the current instruction being
executed. The instruction register is used by the microprocessor to decode and execute
instructions.
FLAGS REGISTER:
 The flags register is an 8-bit register that contains status flags that indicate the result of an
arithmetic or logical operation. These flags include the carry flag, zero flag, sign flag, and
parity flag. The carry flag is set when an arithmetic operation generates a carry, the zero
flag is set when the result of an arithmetic or logical operation is zero, the sign flag is set
when the result of an arithmetic or logical operation is negative, and the parity flag is set
when the result of an arithmetic or logical operation has an even number of 1 bits.
SYSTEM BUS:
(i) DATA BUS:
 The data bus is an 8-bit bus that is used to transfer data between the microprocessor and
memory or other devices. The data bus is bidirectional, which means that it can be used to
read data from memory or write data to memory.
(ii) ADDRESS BUS:
 The address bus is a 16-bit bus that is used to address memory and other devices. The
address bus is used to select the memory location or device that the microprocessor wants
to access.
(iii) CONTROL BUS:
 The control bus is a set of signals that controls the operations of the microprocessor,
including the read and write operations. The control bus includes signals such as the read
signal, write signal, interrupt signal, and reset signal. The read signal is used to read data
from memory or other devices, the write signal is used to write data to memory or other
devices, the interrupt signal is used to signal the microprocessor that an interrupt has
occurred, and the reset signal is used to reset the microprocessor to its initial state.

8085 is an 8-bit, general-purpose microprocessor. It consists of the following functional units:

ARITHMETIC AND LOGIC UNIT (ALU) :


It is used to perform mathematical operations like addition, multiplication, subtraction, division,
decrement, increment, etc. Different operations are carried out in ALU: Logical operations, Bit-
Shifting Operations, and Arithmetic Operations.

FLAG REGISTER:
It is an 8-bit register that stores either 0 or 1 depending upon which value is stored in the
accumulator. Flag Register contains 8-bit out of which 5-bits are important and the rest of 3-bits
are “don’t Care conditions”. The flag register is a dynamic register because after each operation to
check whether the result is zero, positive or negative, whether there is any overflow occurred or
not, or for comparison of two 8-bit numbers carry flag is checked. So for numerous operations to
check the contents of the accumulator and from that contents if we want to check the behavior of
given result then we can use Flag register to verify and check. So we can say that the flag register
is a status register and it is used to check the status of the current operation which is being
carried out by ALU.
Different Fields of Flag Register:
1. Carry Flag
2. Parity Flag
3. Auxiliary Carry Flag
4. Zero Flag
5. Sign Flag
INTERRUPT CONTROL:
Whenever a microprocessor is executing the main program and if suddenly 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 microprocessors: INTR, TRAP, RST 7.5,
RST 6.5, and RST 5.5.
Priorities of Interrupts: TRAP > RST 7.5 > RST 6.5 > RST 5.5 > INTR

ACCUMULATOR:
Accumulator is used to perform I/O, arithmetic, and logical operations. It is connected to
ALU and the internal data bus. The accumulator is the heart of the microprocessor because for
all arithmetic operations Accumulator’s 8-bit pin will always there connected with ALU and in
most-off times all the operations carried by different instructions will be stored in the
accumulator after operation performance.
TIMING AND CONTROL UNIT:
The timing and control unit comes under the CPU section, and it controls the flow of data from
the CPU to other devices. It is also used to control the operations performed by the microprocessor
and the devices connected to it. There are certain timing and control signals like Control signals,
DMA Signals, RESET signals and Status signals.
SERIAL INPUT/OUTPUT CONTROL:
It controls the serial data communication by using Serial input data and Serial output data.
Serial Input/Output control in the 8085 microprocessor refers to the communication of data
between the microprocessor and external devices in a serial manner, i.e., one bit at a time. The
8085 has a serial I/O port (SID/SOD) for serial communication.
8085 MICROPROCESSOR PIN OUT CONFIGURATION:
The 8085 microprocessor is an 8-bit microprocessor was developed by Intel,.The
architecture of the 8085 microprocessor consists of several key components, including the
accumulator, registers, program counter, stack pointer, instruction register, flags register, data bus,
address bus, and control bus.

1. Address Bus and Data Bus:


The address bus is a group of sixteen lines i.e A0-A15. The address bus is unidirectional, i.e.,
bits flow in one direction from the microprocessor unit to the peripheral devices and uses the
high order address bus.
2. Control and Status Signals:

 ALE – It is an Address Latch Enable signal. It goes high during first T state of a machine
cycle and enables the lower 8-bits of the address, if its value is 1 otherwise data bus is
activated.
 IO/M’ – It is a status signal which determines whether the address is for input-output or
memory. When it is high(1) the address on the address bus is for input-output devices.
When it is low(0) the address on the address bus is for the memory.

 SO, S1 – These are status signals. They distinguish the various types of operations such as
halt, reading, instruction fetching or writing.

IO/M’ S1 S0 Data Bus Status

0 1 1 Opcode fetch

0 1 0 Memory read

0 0 1 Memory write

1 1 0 I/O read

1 0 1 I/O write

1 1 1 Interrupt acknowledge

0 0 0 Halt

 RD’ – It is a signal to control READ operation. When it is low the selected memory or
input-output device is read.

 WR’ – It is a signal to control WRITE operation. When it goes low the data on the data bus
is written into the selected memory or I/O location.

 READY – It senses whether a peripheral is ready to transfer data or not. If READY is


high(1) the peripheral is ready. If it is low(0) the microprocessor waits till it goes high. It is
useful for interfacing low speed devices.

3. Power Supply and Clock Frequency:

 Vcc – +5v power supply

 Vss – Ground Reference


 XI, X2 – A crystal is connected at these two pins. The frequency is internally divided by
two, therefore, to operate a system at 3MHZ the crystal should have frequency of 6MHZ.

 CLK (OUT) – This signal can be used as the system clock for other devices.

4. Interrupts and Peripheral Initiated Signals:


The 8085 has five interrupt signals that can be used to interrupt a program execution.
(i) INTR
(ii) RST 7.5
(iii) RST 6.5
(iv) RST 5.5
(v) TRAP
The microprocessor acknowledges Interrupt Request by INTA’ signal. In addition to
Interrupts, there are three externally initiated signals namely RESET, HOLD and READY.
To respond to HOLD request, it has one signal called HLDA.

 INTR – It is an interrupt request signal.

 INTA’ – It is an interrupt acknowledgement sent by the microprocessor after INTR is


received.

5. Reset Signals:

 RESET IN’ – When the signal on this pin is low(0), the program-counter is set to zero, the
buses are tristated and the microprocessor unit is reset.

 RESET OUT – This signal indicates that the MPU is being reset. The signal can be used to
reset other devices.
DMA Signals:

 HOLD – It indicates that another device is requesting the use of the address and data bus.
Having received HOLD request the microprocessor relinquishes the use of the buses as
soon as the current machine cycle is completed. Internal processing may continue. After the
removal of the HOLD signal the processor regains the bus.

 HLDA – It is a signal which indicates that the hold request has been received after the
removal of a HOLD request, the HLDA goes low.

7. Serial I/O Ports:


Serial transmission in 8085 is implemented by the two signals,
 SID and SOD – SID is a data line for serial input where as SOD is a data line for serial
output.

Advantages of the 8085 microprocessor pin diagram:

 The pin diagram is easy to understand and remember because of its logical and systematic
arrangement.

 It has a simple structure with fewer pins compared to other microprocessors, making it easy
to design and implement in electronic circuits.

 It has a dedicated pin for interrupt handling, which makes it easy to interface with external
devices that require interrupt-driven communication.

Disadvantages of the 8085 microprocessor pin diagram:

 It has limited addressing capability due to its 8-bit architecture, which can limit its use in
applications that require large amounts of memory.

 It has a limited number of pins, which can be a constraint in designing complex systems
that require more input/output devices or peripherals.

It has separate pins for input/output and memory access, which can make it more difficult to
design memory-mapped input/output circuits.
Classification of Instruction Set of 8085
The instruction set of 8085 microprocessor is classified into five types which include
the following.

Classification of Instruction Set of 8085 Microprocessor


 Data Transfer Instruction
 Arithmetic Instruction
 Logical Instruction
 Branching Instruction
 Control Instruction
Data Transfer Instruction
An instruction that is used to transfer the data from one register to another is known
as data transfer instruction. So, the data transfer can be done from source to
destination without changing the source contents. Data transfer mainly occurs from
one register to another register, from memory location to register, register to
memory, and between an I/O device & accumulator. Following are the list of Data
Transfer Instruction
Mov r, M
This data transfer instruction is used to transfer data present within the memory (M)
to the register (r). But, the memory location address must be there within the HL
register.

Example: MOV r, 1020H


Mov M, Data
This type of instruction specifies the data transfer immediately to a location of
memory. This memory location address can be specified at the H-L registers.

Example: MOV M, 28H

MVI r, Data (Move Immediate)


In this type of instruction, the transmission of data can be done immediately toward
the particular register.

Example: MVI r, 32H

LDA address (Load Accumulator)


LDA is a load accumulator instruction that is mainly used for copying the data
available in the address of memory indicated as the instruction’s operand to the
accumulator. Particularly, in this case, the available data in the 16-bit address
memory is transferred toward the accumulator.

Example: LDA 500H

LDAX (LoaD Accumulator by eXtended Register Pair)


It is a load accumulator from an address in the register pair. In this type of data
transfer instruction, the register holds the address of the data that needs to be loaded
to the accumulator.

Example: LDAX C/D

LHLD (Load H & L Registers Direct)


LHLD instruction is a direct load instruction, where it loads the H-L register with
the data from the memory. In this type of instruction, the data which is available in
the address specified is copied to the L register first and then the available data within
the next memory location will be loaded in the H register.

Example: LHLD 2500H

STA Address (Store Accumulator Contents in Memory)


STA stands for stored accumulator direct instruction. Once this instruction is
accepted, then the available data within the accumulator can be transferred to the
address of memory indicated within the operand.
Example: STA 2030H

In the above example data stored in the accumulator will be stored to memory
location 2030. LSB followed by MSB will be stored in the memory location.

STAX Register (Store Accumulator by Extended Register)


It is a stored accumulator indirect instruction. In this instruction, the register is
available as the operand that holds a memory address. Thus, the accumulator data
can be copied to that specific memory location.

Example: STAX D

XCHG (Exchange)
This type of data transfer instruction can be used to exchange the data available
within two registers.

Example: XCHG H-L & D-E. In this, the contents of H & D and L & E are
exchanged.

SPHL (Stack Pointer HL Register)


In this data transfer instruction, the data of H &L can be moved to the stack pointer.

PCHL (Program Counter with HL Data)


Similar to SPHL instruction, this PCHL instruction simply copies the H-L register’s
data into the SP by loading the high order bytes at H & low order bytes at L.

PUSH
In this type of instruction, the stack can be loaded with the available data within the
register provided in the operand. Initially, the stack pointer gets decreased & high
order bytes are copied to the stack. Further stack pointer gets decreased to load the
low order register bytes.

Example: PUSH D

POP
This instruction indicates the data transfer from the top of the stack to the register
provided as the operand.
Example: POP C

OUT
In this type of data transfer instruction, the data available at the accumulator can be
copied toward the I/O port. An 8-bit port address at the operand is present.

Example: OUT 36 H

IN
This type of instruction is used to load the data available at the I/O port to the
accumulator. The operand simply holds the port address from where the data can be
copied.

Example: IN, 6B H

You might also like