The 8085 is one of Intel’s earliest microprocessors. It has a 40 pin IC and is an 8-bit microprocessor. This means that the microprocessor has an 8-bit data bus. Which indicates that the microprocessor is capable of handling 8 bits of data. The 8085 can move 8-bits of data in a bidirectional direction. This processor has one of those hallmark architectures that a student can easily grasp. The architecture and the register design, in particular, will allow you to understand how a microprocessor works. Let’s start off with understanding the functions of each of the pins of this IC.
Do I need to remember the pin diagram of the 8085? How can I memorize the pins of the 8085 IC?
You don’t have to memorize the pin diagram for your career prospects. You can always pull up a datasheet of the component that you are using. However, if you are taking an exam you might have to remember the pin diagram or functions of certain pins.
Now, speaking from personal experience, it is quite tricky to remember the correct order of the pins and all their names. A simple method that you can use is to use mnemonics. It’s a fun exercise. For example, consider the first three pins (X1, X2, RESET OUT). You can remember this as two of your eXes coming into your life but then you RESET your system by sending them OUT. It’s crude but effective! You can remember the positions of all the pins by making up a story in your mind.
A method that you can employ to remember all the pins (their names) is by their groups. Below you will see nine groups that hold the forty pins. This classification is done on the basis of the signal types.
How are the pins of the 8085 microprocessor classified and grouped?
- Address and Data Bus
- Status signals
- Control Signals
- Interrupt Signals
- Clock Signals
- Reset signals
- DMA request signals
- Serial I/O signals
- Power supply signals
Here is a diagram representing the classification of the forty pins according to their nine signal groups. This is also known as the logic pinout.
How many pins are there in 8085? What is the use of each pin in 8085?
There are a total of 40 pins on the 8085. Check out the pin diagram below. Subsequently, we will take a look at the function of each pin.
Address and Data Bus (Pins AD0-AD7 and Pins A8-A15)
- AD0-AD7 (Lower-order address/Data Bus)- These pins are multiplexed. Basically, that means that they perform dual tasks. The address bus is used to connect with IO devices or memory. The 8085 has another pin which helps in demultiplexing these 8 pins. That is the ALE pin. So for the first machine cycle, you can access the address lines. These are then latched to an external latch. The 74LS373 IC is used to hold on to these 8 bits. So at the second machine cycle, the 8 address bits are latched and saved at the 74LS373 latch, and we source the data lines from the AD0-AD7 pins. In short, you have 16 bits of data sourced from 8 pins of the 8085 microprocessor.
- A8-A15 (Higher-order address Bus) – The remaining higher-order 8 bits of the 16-bit address access capability of the 8085 are sourced from these 8 pins. So you have A0A1A2A3A4A5A6A7 (from AD0-AD7 pins) A8A9A10A11A12A13A14A15 (from A8-A15 pins). A total of 16 bits.
Status Signals (Pins ALE, S1, and S0)
- ALE (Address Latch Enable) – The address latch enable is a positive pulse that activates the external latch IC in the first machine cycle. This basically tells the external latch to wake up, address lines incoming! The latch responds and demultiplexes the AD0-AD7 pins to A0-A7 and D0-D7.
- S1 and S0 (Status signals) – These are basic status signals that indicate the operation that the microprocessor is performing at any given stage.
Control Signals (Pins , , IO/)
- (Read) – This is an active low input. When it goes low, the microprocessor reads data from either the IO device or from memory. In simple terms, the microprocessor takes data input by placing the data from a source (IO/Memory) on the data bus.
- (Write) – Another active low pin that does the opposite work as the previous pin. When it goes low, the data on the data bus is written to a memory location or an I/O device.
- IO/ (Input Output/Memory) – This is just a status signal. Like the S0 and S1 status signal. In fact, it can be used in tandem with the S1 and S0 pins to give an idea about which machine cycle is being processed. This is quite nifty! Check out the table below. Now as we saw in the above two pins, the data will be sourced either from a memory location or an IO device. The addresses of both of these locations are different. It helps distinguish between which address is being used to source the data from, the I/O or the memory.
Interrupt Signals (Pins TRAP, RST 7.5, RST 6.5, RST 5.5, INTR, and )
- TRAP, RST 7.5, RST 6.5, RST 5.5 – These are the maskable vectored interrupts for a microprocessor. The interrupt is used to transfer data from peripherals. A different program stored in a different location starts executing once a signal is given to any of these pins. However, these can be masked using code. Check out the table below for the priority of these interrupts. If two simultaneous interrupts are received, the microprocessor executes them according to this priority level.
- INTR (Interrupt Request) – Other interrupts, the ones above, actually interrupt the normal functioning of the microprocessor. However, INTR, which has the lowest priority, executes on the completion of the current program. Once the interrupt signal from INTR is acknowledged, the INTA signal is issued.
- (Interrupt Acknowledge) – Just a signal that is given out after the INTR is received.
|TRAP||Highest (1)||Level and Edge||Non-Maskable|
Clock Signals (Pins X1, X2, and CLKOUT)
- X1, X2 – These are the pins where you can connect the external crystal oscillator (or an LC or RC network). The 8085 has an internal clock generator. Intel was actually trying to move away from external clock generators when they introduced the 8085. So they built an internal clock generator. This clock generator is powered by the external oscillating circuit. The internal clock, however, divides the input at X1, X2 by two. So if you want the 8085 to operate at 6MHz, the input at X1, X2 has to be 12MHz. The division by two is just a precaution to get clean and evenly spaced clock cycles. As you will learn, clock cycles are very important for the execution of instructions in a microprocessor. Or any digital logic devices for that matter.
- CLKOUT (Clock Out) – This is the clock signal that you can use for other ICs or peripherals to sync them up with the microprocessor. The frequency available here is the same as the frequency that the microprocessor clock generator generates.
Reset Signals (Pins and RESET OUT)
- – The bar on top of the pin indicates that this is an active low pin. Which means that it is active when it is given a low (zero) input. When a high (one) input is given, it’s off. The function of this pin is to reset the microprocessor. The program counter (which increases as programs execute) sets to 0. A fresh start. Once the low input is removed, the microprocessor begins executing instructions from 0000H address. The state of the flags and internal registers is unpredictable on the application of this signal.
- RESET OUT – This signal is used to a) indicate that the microprocessor is being reset. b) Reset external peripherals or CPUs.
DMA (Direct Memory Access) Signals (Pins HOLD and HLDA)
- HOLD – The HOLD pin can be used to communicate to the microprocessor control mechanism that an external device is requesting the use of the address and data bus. Suppose a shift register IC is using the address and the data bus at a particular instant. Suddenly, a wild Counter appears and send a signal to the HOLD pin. The microprocessor says hang on! let me finish my current machine cycle. Once the microprocessor does that, it gives up control of the buses to the counter. And send out an acknowledge signal via the HLDA pin.
- HLDA (HOLD Acknowledge) – The HOLD Acknowledge pin goes high when the microprocessor surrenders its control of the buses in response to the HOLD call. Once the HOLD request is attended to, the HLDA pin goes low, and the processor takes over the buses.
Serial I/O Signals (Pins SID and SOD)
- SID (Serial Input Data) – Ths pins accepts serial input data. The data transfers from the pin to the 7th bit of the accumulator when a RIM instruction executes.
- SOD (Serial Output Data) – This pin outputs serial data onto the 7th bit of the accumulator when a SIM instruction is executed. We will take a look at the SIM and RIM instructions in the post on the instruction set of the 8085.
Power Supply Signals (Pins Vcc and Vss)
- Vcc – 5V power input
- Vss – Ground
Is the 8085 still used?
The 8085 is still seen in college classrooms and labs. It is still an excellent architecture for students to understand. It gives an excellent insight into microprocessor architecture. Additionally, it also is a great tool to get into assembly language programming. The simple design helps you understand about interfacing, simulation, and circuit design. Hence, like the 8051 is still relevant to students, the 8085 is a great resource to start learning about microprocessors.