The architecture of Microprocessor 8085
8085 CPU Architecture (Functional Block Diagram of 8085)
Explanation of the architecture:
1. Arithmetic and Logical group: This group costs ALU, register, temporary register, and flag register.
- ALU: The ALU performs arithmetic such as addition, and subtraction and logical operations such as ANDing, ORing, EXORing, etc.
- Accumulator: The accumulator is an 8 but general-purpose to the internal data bus and to ALU It is also called A register. connected as one of the inputs to ALU, it is used in most of the arithmetic and logic instructions After performing an operation the ALU places its real m internal data bus, and from there it is generally stored in the accumulator.
- Temporary register: The other input to ALU is given temporarily This register is not available for the user It is only used internally by the microprocessor To perform arithmetic and logical operations microprocessor assumes one data is available in the accumulator and takes another data f another register (depends on instruction) into a temporary register and the performs operation on the 2 data bytes.
- Flags: The ALU includes five flip-flops, which are set or rest hit an operation according to data conditions of the result in the accumulate and other registers.
They are called Zero (Z), Carry (CY), Sign (5), Panty (P), and Auxiliary Carry (AC) flags. The most commonly used flags are Zero, Carry, and Sign. The microprocessor uses these flags to test data conditions.
- Register Group:
This group consists of 3 types of registers
- Temporary registers (W and Z): The W and Z registers are not available for the user. They are used by microprocessor for internal operations such as to store operands, immediate operands, or address of memory.
- General purpose registers: The 8085 contains 6 general purpose registers of 8 bits each, named as B, C, D, E, H, and L. These can be used to store 8 bits of data or can be used to form a register pair to store 16 bits of data. The register pairs available are BC, DE, and HL. These registers are programmable by the user User can store any data in these registers and use it to perform different operations.
- Special purpose registers: The 8085 contains 3 special purpose registers such as program counter, incrementer/decrementer latch, and stack pointer.
(a) Program counter: This is a 16-bit register used for the execution of the program. This register always points to the address of memory from where the next instruction is to be fetched and executed. When the microprocessor performs the operation of taking instructions ie fetching, the PC contents are automatically incremented by one point next location.
The program counter is 16 bits. The main reason behind this is that the 8085 contains 16 address lines. By using 16 address lines one can select any memory location in the memory map of 8085.
(b) Stack pointer This is a 16-bit register used to define the stack starting address. Stack is a reserved portion of memory where register pair information can be stored or taken back under software control. The stack pointer is used to keep track of data stored on the stack.
(c) Incrementer/Decrementer latch This 16-bit register is used to increment or decrement the contents of PC and SP registers. In coordination with these registers, 2 buffers are used:
- Instruction register, decoder, and control circuit:
(i) Instruction register: When an instruction is fetched from memory it is loaded in the instruction register These contents are then provided to the decoder for decoding. This register is only activated when an instruction code or opcode is available on the internal data bus. It is a non-programmable register e not available for programmer’s use Remember it accepts only the opcode of the instruction, operands are not accepted by this, instead, they are stored in registers.
(ii) Instruction decoder: This accepts a bit pattern from the instruction register decodes it and gives the decoded information to control logic The information includes what operation is to be performed, who is going to perform it, how many operand bytes the instruction contains etc.
(ii) Timing and control circuit: It is a synchronous sequential logic circuit. It controls all internal and external circuits. It operates with reference to a clock signal. The decoded information contains all the details of the operation to be performed. The timing and control draught only perform the operations specified by decoded information.
With the development of microprocessor devices, there was a huge transition and changeover in the lives of many people across multiple industries and domains. As because of the device’s cost-effectiveness, minimal weight, and usage of minimal power, these microprocessors are in huge usage these days. Today, let us consider the applications of the 8085 microprocessor architecture.
As the 8085 microprocessor architecture is included with the instructional set which has multiple basic instructions like Jump, Add, Sub, Move, and others. With this instructional set, instructions are composed in a programming language that is understandable by the operational device and performs numerous functionalities like addition, division, multiplication, moving to carry, and many. Even more complicated can also be done through these microprocessors.