Introduction to Microprocessor: Microprocessor is an electronic chip that functions as the central processing unit (CPU) of a computer. The microprocessor based systems with limited resources are called as microcomputers.
Origin of Microprocessor
The breakthrough in transistor technology led to the introduction of minicomputers of the 1960s and the personal computer revolution of the 1970s.Microprocessors evolution is categorized into five generations i.e.first, second, third, fourth, and fifth generations.
First Generation (1971-73)
The microprocessors that were introduced in 1971 to 1972 were referred to as the first generation systems. Intel Corporation introduced 4-bit 4004 at 108 kHz, the first microprocessor in 1971, co-developed by Busicom, a Japanese manufacturer of calculators. In 1972, Intel made the 8-bit 8008 and 8080 microprocessors.
Second Generation (1974-78)
The second generation marked the beginning of very efficient 8-bit microprocessors. Some of the popular processors are Motorola’s 6800 and 6809 and Intel’s 8085, Zilog’s Z80. The distinction between the first and second generation devices is primarily the use of newer semiconductor technology to fabricate the chips. They were manufactured using NMOS technology.
Third Generation (1979-80)
Introduced in 1978, dominated by Intel’s 8086 and the Zilog Z8000, which were 16-bit processors, have 16-bit arithmetic and pipelined instruction processing.
Fourth Generation (1981-95)
Intel introduced 32 bit processor, 80386 and Motorola 68020/68030. Fabricated using low-power version of the HMOS technology called HCMOS.
Fifth Generation (1995 till date)
Chips carry on-chip functionalities and improvements in the speed of memory and I/O devices. Design surpassed 10 million transistors per chip. Introduction of 64-bit processors.Intel leads the show with Pentium, Celeron and dual and quad core processors working with up to 3.5GHz speed.
Intel 8085 Microprocessor
8085 is an eight bit microprocessor of Intel Corporation, usually called as a general purpose 8-bit processor. It is upward compatible with microprocessor 8080, which is the earlier product of Intel. Several faster versions of 8085 microprocessor are 8085AH, 8085AH-1, and 8085AH-2.
A microprocessor system consists of three functional blocks: central processing unit (CPU), input and output units, memory units. The central processing unit contains several registers, arithmetic logic unit (ALU) and control unit.
Microprocessor is an integrated chip that functions as the central processing unit of a computer. The microprocessor basically performs
• Memory Read: Accept data (instruction) from memory.
• Memory Write: Send data to memory.
• I/O Read: Accept data from input device.
• I/O Write: Send data to output device.
• Controls timing of instruction flow.
Memory includes ROM (read only memory) and RAM (random access memory or read write memory).The memory
• Stores instructions and data.
• Provides the instructions and data to processor.
• Stores results.
The input devices enter instructions and data to processor. The input device includes Key-Board (Hexadecimal / ASCII), Switches, and Analog-to-Digital (A/D) convertor.
The output devices accept data from processor. This includes LED (Light Emitting Diode) display, LCD (Liquid Crystal Diode) display, CRT (Cathode Ray Tube) Screen.It is a 40 pin IC package and uses +5V for power. It can run at a maximum frequency of 3MHz. It is a 8-bit processor which has a data bus of 8-bits wide. It has addressing capability of 16-bit.That is it can address 216 = 64K Bytes of memory (1Kbyte =1024 byte).
The architecture of 8085 processor consists of five functional units: Arithmetic and logic Unit, General purpose registers, Special Purpose Registers, Instruction register/decoder and Timing and control unit.
Register Organization 
Registers: The 8085 has six general purpose registers to store 8-bit data. They are identified as B, C, D, E, H and L. They can be combined as register pairs: B-C, D-E, and H-L to store and perform 16-bit operations.
The 8085 special purpose registers are the Accumulator, Flag register, Program Counter (PC) and Stack Pointer (SP).
Accumulator: This is an 8 bit register that is part of arithmetic and logical unit (ALU).This is used to store 8-bit data and perform arithmetic and logical operations. The result of an operation is stored in the accumulator.
Program Counter (PC): This is a 16-bit register, which always points to the address of next instruction to be fetched.
Stack Pointer (SP): This is a 16-bit register that points to a memory location in R/W memory, called as stack.
Flags: The ALU includes five flip-flops, which are set or reset after an operation according to data conditions of result in the accumulator. They are called as Zero (Z), Carry (CY), Sign (S), Parity (P), and Auxiliary Carry (AC) flags
• Z-Zero: The zero flag is set if the result is zero, otherwise it is reset.
• CY-Carry: If an arithmetic operation results in a carry, the carry flag is set otherwise it is reset.
• S-Sign: The sign flag is set if bit D7 of the result is one, otherwise it is reset.
• AC- Auxiliary Carry: In a BCD arithmetic operation, when a carry results from digit D3 and passes on to digit D4, the AC flag is set.
• P-Parity: If the result has an even number of 1’s, the parity flag is set. For odd number of 1’s, the flag is reset.
Two additional 8-bit temporary registers W and Z are included in the register array. They are not programmable.
The ALU (arithmetic and logic unit)
The arithmetic logic unit of 8085 performs addition, subtraction, increment, decrement and comparison arithmetic operation and logical operations such as AND, OR, exclusive-OR, complement. The ALU includes the accumulator, the temporary register, the arithmetic logic circuits, and five flip-flops. The temporary register is used to hold data during arithmetic logic operation. The result is stored in accumulator, and flags are set or reset according to result of operation.
The 8085 is also called accumulator oriented processor as one of the data in the ALU operation is stored in the accumulator. The other data may be in memory or in register.
Timing and Control unit
The timing and control unit synchronizes all microprocessor operations with clock and generates control and status signals (RD, WR) for communication between microprocessor and peripherals.
Instruction Register and Decoder
The Instruction register/decoder is an 8-bit register that is part of the ALU. When an instruction is fetched from memory, it is loaded in the instruction register. The decoder decodes the instruction. The instruction register is not programmable.
Pins and Signals
Intel 8085 has 40 pins, operates at 3MHz clock and requires +5V for power supply. The pin diagram of 8085 is shown in figure 1.6.The signals can be classified into six groups i.e. Address Bus, Data Bus, Control and Status Signals, Power supply and System Clock, Externally Initiated Signals, and Serial I/O signals.
Address and Data Buses
The 8085 has 16 bit (A15-A0) address lines which are unidirectional and 8-bit (D7-D0) data lines which are bidirectional.
A8 – A15 (Output-3 state: higher order address bus): The most significant 8 bits of the memory address or the 8 bits of the I/0 addresses, tri-stated during Hold and Halt modes.
AD0-AD7 (Input/output- 3 state: multiplexed address/data bus): Lower 8 bits of the memory address (or I/0 address) appear on the bus during the first clock cycle of a machine state. It then becomes the data bus during the second and third clock cycles. Tri- stated during Hold and Halt modes.
Control and Status Signals
ALE (Output) Address Latch Enable:
This output signal indicates the availability of the valid address on the address/data lines. It occurs every time during the first clock cycle of the 8085 machine cycle operation. It is used to latch the low order address from multiplexed bus and generate a separate address (A7-A0).
RD (Output- 3 state) READ:
This is a Read control signal (active low).This indicates that the selected memory or I/O device is to be read and data are available on the data bus.
WR (Output- 3state) WRITE:
This is a Write control signal (active low).This indicates that the data on the data bus is to be written into the selected memory or I/O location.
IO/M (Output: 3 state ):
This is a status signal used to differentiate between I/O and memory operation. When it is high, it indicates an I/O operation. When it is low, it indicates a memory operation.
Externally initiated signals
HOLD (Input):
It is an active high signal used in the direct transfer of data between a peripheral device and memory locations. This type of data transfer is called as direct memory access (DMA).During this transfer, the microprocessor loses control over the address and data buses and these buses are tri-stated.
Logic 1 on the Hold pin indicates that another controller, generally the DMA controller, is requesting the use of the address and data buses.
HLDA (Output): Hold Acknowledge
This is an active high signal, and acknowledges HOLD request.
INTR (Input): Interrupt Request
The INTR is used as a general purpose interrupt.
INTA (Output): Interrupt Acknowledge
This is an active low signal and is used to acknowledge an interrupt.
RST 7.5, RST 6.5, and RST 5.5: Restart Interrupts (input):
These three are hardware vectored interrupt signals.
TRAP (Input) :
This is a non-maskable interrupt and has highest priority.
RESET IN (Input):
When this goes low, the Program Counter is set to zero (0000H),the buses are tri-stated and reset the 8085.
RESET OUT (Output):
This indicates that 8085 is being reset. This can be used to reset other devices.
Power supply and Clock Frequency
X1, X2 (Input):
A Crystal or R-C or L-C network is connected to these two pins. The crystal frequency is internally divided by two to give the operating system frequency.So, to run the microprocessor at 3 MHz, a clock running at 6 MHz should be connected to the X1and X2 pins.
CLK (Output): Clock Output:
This output clock pin is used to provide the clock signal for other devices.
Power supplies:Vcc : +5 V supply; Vss : Ground Reference
Serial I/O Signals
SID and SOD implement serial data transmission.
SID (Input):
Serial input data line. The data on this line is loaded into accumulator bit 7 whenever a RIM instruction is executed.
SOD (output):
Serial output data line. The accumulator bit 7 output on SOD line by the SIM instruction.
Instruction Timing and Execution:
An instruction is a command to a microprocessor to perform a specific task on data. Each instruction consists of two parts: one is operation code (OPCODE), and second one is Operand.


Leave a Reply