0% found this document useful (0 votes)
31 views3 pages

8085 Microprocessor Architecture Overview

Microprocessor
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)
31 views3 pages

8085 Microprocessor Architecture Overview

Microprocessor
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

6/3/2021 Microprocessor - 8085 Architecture - Tutorialspoint

Microprocessor - 8085 Architecture

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.

8085 Microprocessor – Functional Units


8085 consists of the following functional units −

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.

Arithmetic and logic unit

As the name suggests, it performs arithmetic and logical operations like Addition, Subtraction,
AND, OR, etc. on 8-bit data.

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.

Program counter

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.

Stack pointer
[Link] 1/3
6/3/2021 Microprocessor - 8085 Architecture - Tutorialspoint

It is also a 16-bit register works like stack, which is always incremented/decremented by 2


during push & pop operations.

Temporary register

It is an 8-bit register, which holds the temporary data of arithmetic and logical operations.

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

Instruction register and decoder

It is an 8-bit register. When an instruction is fetched from memory then it is stored in the
Instruction register. Instruction decoder decodes the information present in the Instruction
register.

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

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.

[Link] 2/3
6/3/2021 Microprocessor - 8085 Architecture - Tutorialspoint

Serial Input/output control

It controls the serial data communication by using these two instructions: SID (Serial input data)
and SOD (Serial output data).

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.

8085 Architecture

We have tried to depict the architecture of 8085 with this following image −

[Link] 3/3

Common questions

Powered by AI

The flag register in the 8085 microprocessor is an 8-bit register containing five specific flip-flops used to record conditions resulting from operations. Each flip-flop reflects a different operation outcome, directly affecting subsequent operation decisions: the Sign flag (S) indicates negative results if high, the Zero flag (Z) signals a zero result scenario, the Auxiliary Carry flag (AC) supports BCD arithmetic operations by indicating carries out of bit 3, the Parity flag (P) shows even parity if set, and finally the Carry flag (C) reflects carries out of the most significant bit during arithmetic operations, aiding in overflow detection. This register is crucial for decision-making processes in conditional operations and influencing the execution flow based on previous calculations .

The accumulator in the 8085 microprocessor is an 8-bit register initially involved in performing arithmetic, logical, I/O, and LOAD/STORE operations. It is directly connected to the internal data bus and the ALU, allowing it to directly interface with the Arithmetic and Logic Unit for swift computation processes. The accumulator temporarily holds the operands or data outcomes of these operations, ensuring they are accessible for immediate next-step analysis or action. Acting as a pivotal intermediary between input data sources and resultant outputs, the accumulator facilitates high-speed processing essential for the microprocessor's operation, thereby improving overall execution efficiency .

The 8085 microprocessor's key functional components include the accumulator, which is an 8-bit register used for arithmetic and logical operations, an arithmetic and logic unit for executing arithmetic and logical operations, and six 8-bit general-purpose registers (B, C, D, E, H, L) which can form paired 16-bit registers. The program counter, a 16-bit register, holds the address of the next instruction to be executed, ensuring sequential processing of instructions. The stack pointer is another 16-bit register that manages the stack's memory addresses during push/pop operations. A flag register contains five flip-flops (sign, zero, auxiliary carry, parity, and carry) indicating the outcomes of operations. Temporary and instruction registers, along with the instruction decoder, aid in fetching and decoding operations. The timing and control unit generates necessary signals for coordinating both internal and external operations, while the interrupt control manages execution shifts due to interrupts. The serial input/output control facilitates serial data communication, and address/data buses manage data flow and memory addressing. Collectively, these components enable comprehensive processing capabilities in the 8085 .

The 8085 microprocessor's serial input/output control facilitates serial data communication crucial for interfacing with peripherals and devices that support serial communication protocols. It uses two specific instructions: SID (Serial Input Data) for receiving data serially and SOD (Serial Output Data) for transmitting data serially. This control mechanism allows the microprocessor to communicate over a single line, minimizing circuit complexity and enabling devices lacking parallel communication capabilities to still communicate effectively, ensuring broader peripheral support and functionality within embedded systems .

The timing and control unit in the 8085 microprocessor orchestrates the operation of internal and external components by generating coordinated timing and control signals. These include control signals such as READY, RD' (read), WR' (write), and ALE (address latch enable); status signals like S0, S1, and IO/M'; as well as DMA controls including HOLD and HLDA, and RESET signals (RESET IN, RESET OUT) which manage both initialization and halting processes. Additionally, it assigns specific cycles for instruction fetch, decode, execute, and acknowledging interrupts, ensuring synchronization across all data handling and execution stages, ultimately maintaining system stability and functionality .

The 8085 microprocessor handles interrupts by shifting control from the main program to address the interrupt request. Once the interrupt is serviced, control returns to the main program. There are five interrupt signals in the 8085: INTR, RST 7.5, RST 6.5, RST 5.5, and TRAP. TRAP is a non-maskable interrupt with the highest priority and is edge and level triggered, ensuring critical tasks are addressed immediately. RST 7.5 is a maskable vectored interrupt with the second-highest priority and is edge-triggered. RST 6.5 and RST 5.5 are also maskable vectored interrupts, but they operate with lower priorities, during system events considered less critical. INTR is a maskable, lowest-priority interrupt, and unlike the others, requires an external device to provide the RST instruction for its processing .

In the 8085 microprocessor, the address bus is a 16-bit unidirectional bus that establishes connections between the CPU and memory or I/O devices to address them, specifically locating where data will be read or written. The data bus, however, is an 8-bit bidirectional bus that facilitates data transfer to and from the processor. These buses crucially interact with components like the stack pointer and program counter, channeling their memory contents into the buffers for communication. The address bus ensures proper communication pathways for the delivery of commands and retrieval of data, while the data bus completes the data exchange necessary for executing instructions and processes. This interaction ensures seamless operation of the CPU with other peripherals .

The program counter and stack pointer both serve memory management roles in the 8085 microprocessor but function differently. The program counter is a 16-bit register that holds the memory address of the next instruction to be executed, automatically incrementing after each instruction cycle to ensure sequential instruction flow. In contrast, the stack pointer, also a 16-bit register, manages the stack memory by pointing to the top of the stack. It changes during push and pop operations, incrementing or decrementing by 2, facilitating temporary storage and retrieval of data or addresses during subroutine calls or interrupts. The program counter ensures continuous instruction execution, while the stack pointer handles dynamic data storage, making them complementary in process management .

Temporary registers in the 8085 microprocessor serve as intermediary storage for data during arithmetic and logical operations. They temporarily hold data that is being processed or manipulated by the Arithmetic and Logic Unit (ALU), enabling efficient computation without immediate reliance on main memory access. This function streamlines the data handling process, reducing access time and resource use. By holding transient data temporarily, they facilitate faster arithmetic and logic processing, ensuring smooth operation flow and contributing to the processor's overall efficiency .

The instruction register and decoder within the 8085 microprocessor fundamentally integrate with many other components to execute instructions efficiently. Upon fetching instructions from memory, they are stored in the instruction register. The instruction decoder interprets this stored data, determining the required operational steps. This decoded information then informs the control signals generated by the timing and control unit, orchestrating coordinated operations across registers, ALU, and buses, ensuring proper data processing and program execution. The synchrony of instruction decoding with other functional units is vital as it dictates the microprocessor's activities, ensuring correct task execution and efficient internal communications .

You might also like