Code360 powered by Coding Ninjas X Naukri.com. Code360 powered by Coding Ninjas X Naukri.com
Last Updated: Apr 21, 2024
Difficulty: Medium

8085 Microprocessor Architecture

Leveraging ChatGPT - GenAI as a Microsoft Data Expert
Speaker
Prerita Agarwal
Data Specialist @
23 Jul, 2024 @ 01:30 PM

Introduction 

Hello Ninjas, We know in the digital world, microprocessors are used extensively. The microprocessors form the building blocks of many electronic devices. The 8085 microprocessor is one of the most known and commonly used microprocessors.

8085 Microprocessor Architecture

In this article, we will understand the 8085 microprocessor. We will see the 8085 microprocessor architecture. We will also discuss the application of the 8085 microprocessor and its disadvantages.

What is an 8085 Microprocessor?

8085 is an 8-bit microprocessor. It operates 8-bit at a time. The 8085 microprocessor was created using the N-MOS technology. It is the most widely used microprocessor due to its unique characteristics.

8085 microprocessor was developed by Intel in 1977. It was the upgraded version of the 8080 microprocessor with some architectural changes. The size of the data bus used in it is 8 bits. The size of the address bus is 16 bits. As a result, the microprocessor can address 64KB (i.e., 2^16) memory. The ALU(arithmetic logic unit) is 8-bit and can perform 8-bit operations.

8085 holds an advantage over others as it needs a single +5V supply and only one clock signal of width 320ns. 

The following are several control signals available on the microprocessor.

  • RD -  It indicates that the selected memory device is to be read. The data is available on the address bus. It is an active low signal
     
  • WR -  It indicates that the data on the address bus is to be written into a defined memory location. It is an active low signal
     
  • ALE -  It is a signal generated every time the microprocessor begins any operation. It is a positive going signal
     
  • IO/M -  The signal differentiates between IO and memory operations. If the signal is high, it means IO operation. If the signal is low, it means Memory operation
     
  • S1 and S0 -  It is similar to the IO/M operation, which is used to differentiate between many other operations
Get the tech career you deserve, faster!
Connect with our expert counsellors to understand how to hack your way to success
User rating 4.7/5
1:1 doubt support
95% placement record
Akash Pal
Senior Software Engineer
326% Hike After Job Bootcamp
Himanshu Gusain
Programmer Analyst
32 LPA After Job Bootcamp
After Job
Bootcamp

Functional Units of 8085 Microprocessor

The 8085 microprocessor architecture provides the idea of the operations to be executed. It also tells about the working of the operations. The 8085 microprocessor architecture has a Von Neuman architecture. The following are the main functional unit that constitutes the 8085 microprocessor architecture. We will study each of them in detail.

8085 architecture diagram

Arithmetic and Logic Unit (ALU)

The ALU, or the arithmetic and logic unit, performs various operations.

The numerical and logical operations performed are listed below.

  • Addition and Subtraction
     
  • Logical operations like AND, OR, or XOR
     
  • Complement (logical NOT)
     
  • Increment, Decrement
     
  • Left shift, Right Shift
     
  • Clear, etc.
     

The ALI comprises the Accumulator, temporary registers, logic circuits, and flags. The result is always stored in an Accumulator.

Registers

The registers are a set of flip-flops. The register is used to store the data.

The 8085 microprocessor uses the following registers.

  • General Purpose Registers - 8085 microprocessor consists of 6 general purpose registers. The registers are present inside the microprocessor. These registers stores 8-bit data to execute a program. The General purpose registers are denoted as B, C, D, E, H, and L. The registers are used as combined pairs as - BC, DE, and HL for performing 16-bit operations
     
  • Temporary registers - These registers are used to store some temporary data. These registers are used in the ALU and are not accessible by the programmer. It is further subdivided into two categories. The temporary registers and W and Z register

Program Counter (PC)

Program Counters are registers that are used to store program counters. It stores the memory location of the instruction to be performed. The microprocessor uses it to reference an instruction from the memory. 

The program counter is a 16-bit register to store addresses. The microprocessor uses it to sequence the instructions to be executed. 

The function it performs is done using the opcode from one memory location. After that, increment the counter to the next instruction. 

Stack Pointer (SP)

The stack pointer is also a 16-bit register. The data in the stack pointer is stored sequentially. The stack pointer stores the address of the last element input of the stack.

With the addition of new data, the stack pointer is incremented. The stack pointer points to the removed memory location if an element is removed. 

Accumulator

The Accumulator in the 8085 microprocessor is used to perform various operations. The operations can be arithmetic, logical, or Input/Output operations. The Accumulator is connected to the internal Data bus and the ALU. It is an 8-bit register and stores the result of the operations. It is denoted as register A.

Timing & Control Unit

The Timing and Control units generate the signals. The generated signals are necessary for the execution of the instructions. The work of the Time and Control unit is listed below.

  • Controlling the data flow between the CPU and the other devices. It can also be used to control memory
     
  • It provides the timing signals, control, and status requires to operate memory and I/O devices
     

Some of the timing and control signals are the DMA signal, RESET signal, and STATUS signal

Also read, microprogrammed control unit

Instruction Register and Decoder

The instruction register and decoder are temporary storage devices. It stores the current instruction of a program. It is an 8-bit register. The instruction to be executed is sent here before execution. The decoder takes the instruction and interprets the instruction. The decoded instruction is then passed to the next stage.

Interrupt Control

The interrupt control is a signal to control interruption during a process. Here, during the execution of a main program, an interruption might occur. The microprocessor shifts the program control from the main to interrupting the process. 

After executing the interrupting process, the control returns to the main program. The five main interrupt signals in the 8085 microprocessor are.

  • INTR
     
  • RST 7.5
     
  • RST 6.5
     
  • RST 5.5
     
  • TRAP

Serial Input/Output Control

Serial Input and Output Control are used to control the data communication. The communication is serial. The two instructions are:

  • SID - Serial Input Data 
     
  • SOD - Serial Output Data.
     

The 8085 microprocessor uses a serial I/O port. The SID is used for serial input, and SOD is used for serial output.

Address Bus and Data Bus

The address bus is a 16-bit bus. The address bus size determines the memory size which can be used. The address bus is unidirectional. It can only send data from the microprocessor to memory. The address bus transfers the memory address of the data to be used.

The data bus is an 8-bit bus. The data bus size determines what arithmetic operations can be done. The data bus also carries instructions from memory to the microprocessor. The microprocessor then decodes the fetched instruction code from memory.

Both address and data bus is used in 8085, facilitating communication in it. They help to perform various operations and communications with external devices.

Flags

The Flag registers are used to define the status of the current result generated by the ALU. It does not hold the result. Thus, the flags are used to test the data conditions. The flag is an 8-bit register storing either 0 or 1.

The flag registers used in 8085 microprocessors are:

  • Carry Flag (CY)
     
  • Parity Flag (P)
     
  • Auxiliary Carry Flag (AC)
     
  • Zero Flag (Z)
     
  • Sign Flag (S)
     

The position of the flags is shown in the table below.

D7

D6

D5

D4

D3

D2

D1

D0

S

Z

 

AC

 

P

 

CY

Also read, MVVM Architecture Android

Instruction Cycle in 8085 Architecture

Introduced by Intel in 1976, 8085 architecture is a 8 bit microprocessor, that has a set of instructions to be executed and these instructions for the execution has a set of series known as instruction cycle. 

The four basic steps are discussed below: 

  • Fetch: The CPU retrieves the memory-based instruction. 
     
  • Decode: To determine the operation, the fetched instruction is decoded. 
     
  • Execute: The CPU carries out the instruction's specified function. 
     
  • Store: Memory or registers are used to store results. 

    This cycle is repeated for every instruction, enabling the tasks of the program to be executed in order.

Uses of 8085 microprocessor

Because of flexibility and security, the 8085 microprocessor has been utilized extensively in many different applications. Among the frequent applications are:

  • Embedded Systems: In embedded systems, the 8085 is frequently utilized to control machinery and devices in consumer electronics, automotive electronics, and industrial automation. 
     
  • Education: It is used in schools to instruct students about digital systems design, assembly language programming, and microprocessor architecture. 
     
  • Instrumentation: For data gathering, signal processing, and control, scientific instruments and laboratory equipment employ the 8085. 
     
  • Communication Systems: It is utilized in networking devices, modems, and routers to process and handle data. 
     
  • Control Systems: In manufacturing, power generation, and aerospace applications, control systems employ the 8085 to monitor and regulate processes.
     

All things considered, the 8085 microprocessor is still very much in use today, promoting innovation and technology across a wide range of sectors and applications.

Applications of 8085 Microprocessor

The development of microprocessors and their use has seen tremendous improvement growth in recent years. The Microprocessors provide cost-effectiveness, minimum weight, and minimum power consumption. Therefore the 8085 Microprocessor has found wide areas of application. The popular applications of the 8085 microprocessor are listed below.

  • Engineering Applications -  The 8085 microprocessor has found a use in a wide variety of engineering applications. It is used in traffic management devices, systems servers, protection systems, lifts, high machinery, and in some automatic entry and exit lock systems
     
  • Medical Domain - It is used in the medical industry in insulin pumps, where the microprocessor regulates the device. The microprocessor performs functionalities like storage calculations and information processing received by the biosensors
     
  • Communication - It is most prominently used in the communication domain. The microprocessor is used in satellite systems. Railway and airline communication uses the microprocessor.  It is also used in telephonic systems, data cables, and modems to initiate communication
     
  • Electronics - The CPU is made up of microprocessors. The microprocessors are implemented in various systems ranging from microcomputers to supercomputers.

8085 Microprocessor Example

We will see example to add the two number in 8085 Microprocessor.

Suppose we want to store the result at memory address 2002H and the first number is saved at memory location 2000H and the second number is put at memory position 2001H.

Address    Data       Mnemonics  
200005MVI B, 05
200206MVI C, 06
2004 ADD B
2005 MOV D, A
2006 STA 2002H
2009 HLT

 

Explanation:

  • MVI B, 05: The command loads the value 05 into the B register. The first number is shown here
  • MVI C, 06: The value 06 is loaded into the C register by this instruction. The second number is represented by this
  • ADD B: This command adds the first number, which is contained in the B register, to the accumulator. The accumulator holds the outcome
  • MOV D, A: The instruction "MOV D, A" moves the contents of the accumulator, which at this point contains the sum, to the D register
  • STA 2002H: We want to save the outcome at memory location 2002H, so we use the instruction STA 2002H to put the contents of the accumulator there
  • HLT: The program is stopped by this instruction

Issues with 8085 Microprocessor

Even the demand for the 8085 Microprocessor is very high. We must always consider some of the significant disadvantages of the 8085 Microprocessor. Below we have discussed some of the significant disadvantages of the 8085 microprocessor.

  • The 8085 microprocessor requires a stable power supply. If the supply fluctuates at any point, the microprocessor can malfunction
     
  • Using the 8085 microprocessor for a long duration can cause heating. Without a proper cooling system, the microprocessor could cause overheating. Overheating may result in damage to the circuit and to the microprocessor
     
  • Microprocessor programming is tricky and often results in syntax errors and logic. Errors 
     
  • Due to the availability of two buses for communication. The microprocessor can malfunction if there is a memory interference issue. The issue can be faulty memory chips or address decoding errors
     
  • The microprocessor relies on time for smooth operations. The noise or interference in timing can cause the microprocessor to perform abnormally

Frequently Asked Questions

What is 8085 microprocessor architecture?

The 8085 microprocessor architecture is a single-chip, 8-bit CPU with a maximum clock frequency of 3 MHz. It can execute arithmetic, logic, and control operations in a computer system thanks to its different registers, ALU, control and status registers, and instruction decoder.

What is bus architecture in 8085?

The set-up of the data, address, and control buses in the 8085 microprocessor allows for easier communication between the CPU, memory, and I/O devices. This arrangement is referred to as bus architecture. It is composed of control signals, a 16-bit address bus, and an 8-bit data bus.

What are the features of 8085?

The 8085 microprocessor has an instruction set with 74 instructions, an 8-bit data bus, a 16-bit address bus, different addressing modes, an accumulator, a flag, and a general-purpose register, as well as support for interrupt and direct memory access (DMA).

Is 8085 architecture RISC or CISC?

The 8085 architecture is considered to be CISC(Complex Instruction Set Computer). Being a CISC architecture, it has a complete instruction set with a range of complicated instructions made to carry out different operations directly.

Conclusion

In this article, we have learned about the 8085 microprocessor. We have discussed the  8085 microprocessor architecture in detail. We also discussed the application and disadvantages of the 8085 microprocessor.

You can check out our other blogs to learn more about 8085 Microprocessor architecture.

Topics covered
1.
Introduction 
2.
What is an 8085 Microprocessor?
3.
Functional Units of 8085 Microprocessor
3.1.
Arithmetic and Logic Unit (ALU)
3.2.
Registers
3.3.
Program Counter (PC)
3.4.
Stack Pointer (SP)
3.5.
Accumulator
3.6.
Timing & Control Unit
3.7.
Instruction Register and Decoder
3.8.
Interrupt Control
3.9.
Serial Input/Output Control
3.10.
Address Bus and Data Bus
3.11.
Flags
4.
Instruction Cycle in 8085 Architecture
5.
Uses of 8085 microprocessor
6.
Applications of 8085 Microprocessor
7.
8085 Microprocessor Example
8.
Issues with 8085 Microprocessor
9.
Frequently Asked Questions
9.1.
What is 8085 microprocessor architecture?
9.2.
What is bus architecture in 8085?
9.3.
What are the features of 8085?
9.4.
Is 8085 architecture RISC or CISC?
10.
Conclusion