2 8085 Microprocessor Architecture
2 8085 Microprocessor Architecture
The Microcomputer
A microcomputer is a small, relatively inexpensive computer with a microprocessor as its central processing
unit. It includes a microprocessor, memory, and minimal input/output circuitry mounted on a single printed
circuit board. A microcomputer can be designed based on any of the two models:
1. Von Neumann architecture
2. Havard architecture
Von Neumann Architecture
The Von Neumann architecture consists of a single shared memory (primary memory), a single
bus for memory access, an input, and output unit, an arithmetic unit, and a program control unit.
Harvard Architecture
The Harvard architecture is based on the concept where there are separate storage and separate
buses (signal path) for instruction and data. It was basically developed to overcome the bottleneck
of Von Neumann Architecture.
CPU
Input Output
Device (ALU + Register array Device
+ Control Unit)
Memory
1
Fig. 2.3 Block diagram of a microcomputer
8085 Microprocessor
The 8085 microprocessor is an 8-bit microprocessor with a 40 pin dual in line package. The address and
data bus are multiplexed in this processor which helps in providing more control signals. The 8085
microprocessor has 1 Non-maskable interrupt and 3 maskable interrupts. It provides serial interfacing with
serial input data (SID) and serial output data (SOD). Fig. 2.3 shows the pin out diagram of 8085
microprocessor.
8085 Data Registers
The 8085 has a set of registers for performing various operations. These registers include:
Instruction register
Program counter
Store address register
General purpose registers
Accumulator
Stack pointer
ALU
Status register
Arithmetic and Logic Unit (ALU)
This unit perform arithmetic operations like +, -, *, / and logical operations like AND, OR, NOT etc.
2
Fig. 2.4 ALU block diagram
Accumulator
The accumulator is a register which can hold 8-bit data and it aids in storing two quantities:
(1) Stores the data to be processed by arithmetic and logic unit
(2) Stores the result of the operation carried out by the Arithmetic and Logic unit.
The accumulator is also called an 8-bit register. The accumulator is connected to Internal Data bus and
ALU (arithmetic and logic unit). The accumulator can be used to send or receive data from the Internal
Data bus.
3
Fig. 2.5 8085 Pin Diagram
General Purpose Registers
In addition to the accumulator, the 8085 consists of six special types of registers called General Purpose
Registers. These registers are used to hold data like any other registers. The general-purpose registers in the
8085 processors are B, C, D, E, H and L. Each register can hold 8-bit data.
Additionally, these registers can also be used to work in pairs to hold 16-bit data. They can work in pairs
such as B-C, D-E and H-L to store 16-bit data. The H-L pair works as a memory pointer. A memory pointer
holds the address of a particular memory location. They can store 16-bit address as they work in pair.
4
Fig. 2.6 The 8085 Architecture
Stack Pointer (SP)
The SP is also a 16-bit register which is used as a memory pointer. A stack is the portion of RAM (Random
access memory). The SP maintains the address of the last byte that is entered into stack. Each time when
the data is loaded into stack, the SP gets decremented. Conversely it is incremented when data is retrieved
from stack.
The Instruction Register (IR)
The IR is a special purpose register that is used to receive the 8-bit opcode portion of an instruction. This
register is not accessible to the programmer. In other words, there are no instructions by which the
programmer can load this register with values of their values of choice.
Address buffer and Address-Data buffer
The contents of the SP and PC are loaded into the address buffer and address-data buffer. These buffers are
then used to drive the external address bus and address-data bus. As the memory and I/O chips are connected
to these buses, the CPU can exchange desired data to the memory and I/O chips.
The address-data buffer is not only connected to the external data bus but also to the internal data bus which
consists of 8-bits. The address data buffer can both send and receive data from internal data bus.
5
This is an 8-bit register in which five bit positions contain the status of five condition flags. These flags are
Zero (Z), Sign (S), Carry (CY), Parity (P) and Auxiliary carry (AC). The flag register format is shown in
Fig. 2.7.
6
The microprocessor as a processing unit
When the microprocessor executes instructions, it does so in a continuous sequence of fetch, decode and
execute operations.
Machine cycle
These are steps performed by the computer processor for each machine language instruction received.
The machine cycle is a 4-process cycle that includes reading and interpreting the machine language,
executing the code and then storing the results.