SlideShare a Scribd company logo
Introduction to Microprocessors, Architecture of 8085, Pin
Configuration and Function, internal register & flag register,
Generation of Control Signals: Bus Timings: Demultiplexing of
address/ data bus; Fetch Cycle, Execute Cycle, Instruction Cycle,
Instruction Timings and Operation Status, Timing Diagram.
UNIT- I: MICROPROCESSOR ARCHITECTURE
1
The following questions will be uncovered:
1. What is a microprocessor?
2. How it is different from a Microcomputer and a Microcontroller?
3. Describe a microprocessor based system.
4. History of development of microprocessor.
5. What are the various components of a microprocessor?
6. Why it is called a microprocessor?
7. Describe the register structure of 8085 microprocessor
8. Describe the construction of flag register of 8085
9. What is bus? Mention the functions of various buses of 8085.
10. Describe the architecture of 8085 and mention the functions of each block
inside 8085.
11. Describe pin functions of 8085
12. Describe multiplexed pins of 8085. how they are demultiplexed?
13. How additional control signals are generated in 8085?
14. Define Timing diagram, T – state, Machine Cycle, Fetch cycle, Execute cycle,
Instruction cycle, Fetch Execute overlap
15. Types of machine cycle supported by 8085
16. Concept of microinstruction
17. How to draw the timing diagram? Some examples including example of FEO.
Introduction to Microprocessor
2
What is a Microprocessor?
The word comes from the combination micro and processor. Processor means a device that
processes whatever is appearing at its input according to the Programme/routine set by the user.
In this context processor means a device that processes numbers, specifically binary numbers,
0’s and 1’s.To process means to manipulate. It is a general term that describes all manipulation.
Again in this content, it means to perform certain operations on the numbers that depend on the
microprocessor’s design.
Introduction
What about micro?
Micro is a new addition. In the late 1960’s, processors were built using discrete elements. These
devices performed the required operation, but were too large and too slow. In the early 1970’s
the microchip was invented. All of the components that made up the processor were now placed
on a single piece of silicon. The size became several thousand times smaller and the speed
became several hundred times faster. The “Micro”Processor was born.
Alternatively, it is also told as the instructions to be executed by the microprocessor are broken
into microinstructions before it is being executed, it is called Microprocessor. 3
Introduction
Was there ever a “mini”-processor?
No. It went directly from discrete elements to a single chip. However, comparing today’s
microprocessors to the ones built in the early 1970’s an extreme increase in the amount of
integration is observed.
Definition of the Microprocessor
The microprocessor is a programmable device that takes in numbers, performs on them
arithmetic or logical operations according to the program stored in memory and then
produces other numbers as a result.
4
Introduction
Programmable device: The microprocessor can perform different sets of operations on the data it
receives depending on the sequence of instructions supplied in the given program. By changing the
program, the microprocessor manipulates the data in different ways.
Instructions: Each microprocessor is designed to execute a specific group of operations. This group of
operations is called an instruction set. This instruction set defines what the microprocessor can and
cannot do.
Takes in: The data that the microprocessor manipulates must come from somewhere. It comes from
what is called “input devices”. These are devices that bring data into the system from the outside world.
These represent devices such as a keyboard, a mouse, switches, and the like.
Numbers: The microprocessor has a very narrow view on life. It only understands binary numbers. A
binary digit is called a bit (which comes from binary digit). The microprocessor recognizes and
processes a group of bits together. This group of bits is called a “word”. The number of bits in a
Microprocessor’s word, is a measure of its “abilities”.
Words, Bytes, etc.: The earliest microprocessor (the Intel 8088 and Motorola’s 6800) recognized 8-bit
words. They processed information 8-bits at a time. That’s why they are called “8-bit processors”. They
can handle large numbers, but in order to process these numbers, they broke them into 8-bit pieces and
processed each group of 8-bits separately. Later microprocessors (8086 and 68000) were designed with
16-bit words. A group of 8-bits were referred to as a “half-word” or “byte”. A group of 4 bits is called a
“nibble”. Also, 32 bit groups were given the name “long word”. Today, all processors manipulate at
least 32 bits at a time and there exists microprocessors that can process 64, 80, 128 bits. 5
Introduction
Arithmetic and Logic Operations: Every microprocessor has arithmetic operations such as add
and subtract as part of its instruction set. Most microprocessors will have operations such as
multiply and divide. Some of the newer ones will have complex operations such as square root.
In addition, microprocessors have logic operations as well. Such as AND, OR, XOR, shift left,
shift right, etc. Again, the number and types of operations define the microprocessor’s instruction
set and depends on the specific microprocessor.
Stored in memory : First, what is memory? Memory is the location where information is kept
while not in current use. Memory is a collection of storage devices. Usually, each storage device
holds one bit. Also, in most kinds of memory, these storage devices are grouped into groups of 8.
These 8 storage locations can only be accessed together. So, one can only read or write in terms
of bytes to and form memory. Memory is usually measured by the number of bytes it can hold. It
is measured in Kilos, Megas and lately Gigas. A Kilo in computer language is 210 =1024. So, a
KB (KiloByte) is 1024 bytes. Mega is 1024 Kilos and Giga is 1024 Mega. When a program is
entered into a computer, it is stored in memory. Then as the microprocessor starts to execute the
instructions, it brings the instructions from memory one at a time. Memory is also used to hold
the data. The microprocessor reads (brings in) the data from memory when it needs it and writes
(stores) the results into memory when it is done.
Produces: For the user to see the result of the execution of the program, the results must be
presented in a human readable form. The results must be presented on an output device. This can
be the monitor, a paper from the printer, a simple LED or many other forms. 6
Introduction
A Microprocessor based system:
Inside the microprocessor: Internally, the microprocessor is made up of 3 main units. (i) The
Arithmetic/Logic Unit (ALU), (ii) The Control Unit and (ii) An array of registers for holding data
while it is being manipulated.
Memory Subsystem:
Memory stores information such as instructions and data in binary format (0 and 1). It provides
this information to the microprocessor whenever it is needed. Usually, there is a memory “sub-
system” in a microprocessor-based system. This sub-system includes:
 The registers inside the microprocessor
 Read Only Memory (ROM) used to store information that does not change.
 Random Access Memory (RAM) (also known as Read/Write Memory) used to store
information supplied by the user such as programs and data.
Memory Map and Addresses
The memory map is a picture representation of the address range and shows where the different
memory chips are located within the address range.
7
Bulk Memory remains outside the CPU
Introduction
Memory:
To execute a program, the user enters its instructions in binary format into the memory. The
microprocessor then reads these instructions and whatever data is needed from memory, executes
the instructions and places the results either in memory or produces it on an output device.
The three cycle instruction execution model
To execute a program, the microprocessor “reads” each instruction from memory, “interprets” it,
then “executes” it.
To use the right names for the cycles: The microprocessor fetches each instruction, decodes it,
Then executes it. This sequence is continued until all instructions are performed.
Machine Language:
The number of bits that form the “word” of a microprocessor is fixed for that particular
processor. These bits define a maximum number of combinations. For example an 8-bit
microprocessor can have at most 28 = 256 different combinations. However, in most
microprocessors, not all of these combinations are used. Certain patterns are chosen and assigned
specific meanings. Each of these patterns forms an instruction for the microprocessor. The
complete set of patterns makes up the microprocessor’s machine language.
8
Introduction
The 8085 Machine Language:
The 8085 (from Intel) is an 8-bit microprocessor. The 8085 uses a total of 246 bit patterns to form
its instruction set.
These 246 patterns represent only 74 instructions. The reason for the difference is that some
(actually most) instructions have multiple different formats. Because it is very difficult to enter
the bit patterns correctly, they are usually entered in hexadecimal instead of binary. For example,
the combination 0011 1100 which translates into “increment the number in the register called the
accumulator”, is usually entered as 3C.
9
Introduction
Assembly Language:
Entering the instructions using hexadecimal is quite easier than entering the binary combinations.
However, it still is difficult to understand what a program written in hexadecimal does. So, each
company defines a symbolic code for the instructions. These codes are called “mnemonics”. The
mnemonic for each instruction is usually a group of letters that suggest the operation performed.
Using the same example from before, 00111100 translates to 3C in hexadecimal (OPCODE). Its
mnemonic is: “INR A”. INR stands for “increment register” and A is short for accumulator.
Another example is: 1000 0000,Which translates to 80 in hexadecimal. Its mnemonic is “ADD
B”. “Add register B to the accumulator and keep the result in the accumulator”.
It is important to remember that a machine language and its associated assembly language are
completely machine dependent. In other words, they are not transferable from one
microprocessor to a different one. For example, Motorolla has an 8-bit microprocessor called the
6800. The 8085 machine language is very different from that of the 6800. So is the assembly
language. A program written for the 8085 cannot be executed on the 6800 and vice versa.
“Assembling” The Program
How does assembly language get translated into machine language? There are two ways:
1st there is “hand assembly”. The programmer translates each assembly language instruction into
its equivalent hexadecimal code (machine language). Then the hexadecimal code is entered into
memory.
The other possibility is a program called an “assembler”, which does the translation
automatically. 10
Architecture of 8085
11
What is Computer Architecture?
 The visual interface of computer.
 Logical terms as seen by the programmer.
 Computer architecture will answer you how do I design a computer.
 Example: instruction sets, instruction formats, data types, addressing modes.
What is Computer Organization?
 Organization refers the components of the computer hardware system: processor
and data path, storage and caching, input/output and interrupts.
How Architecture is different from Organization?
 Computer organization mainly deals with how a particular hardware works in a
computer where as computer architecture deals with how to design a circuit for
such hardware.
 Organization is the study from Software point of view while architecture is study
from hardware point of view
Organization give us abstract view while architecture give us depth details of system.
Organization is the study of programmer point of view while architecture is h/w
designer point of view.
 Computer architecture comes before computer organization.
 Architecture is more deep rooted. Goes into transistors and logic gates. Its how to
relay all that information between components.
Architecture of 8085
12
Various Groups within a microprocessor:
1. ALU Group
2. Bus Group
3. Register Group
4. Interrupt Control Group
5. Serial I/O control Group
6. Instruction Handling, Timing and Control Group
7. External Interface Group
Architecture of 8085
13
ALU Group
Function: Responsible for performing all sorts of Arithmetic and Logical operations
Components:
 Accumulator
 TMP Register
 Flag Register
 ALU
Accumulator: Accumulator denoted by the letter ‘A’ is an eight bit
register. It is acting as one of the inputs to the ALU as well as after
ALU operation, the result is stored in it. It is a special purpose
register of 8085.
TMP Register: It is an eight bit register. It is acting as one of the
inputs to the ALU. It is used for temporary storage of data. It can
not accessed by the user. It is a temporary register of 8085.
Flag Register: It is an eight bit register out of which five bits are used namely, Sign, Zero,
Auxiliary Carry, Carry and parity. It is associated to the ALU. The contents get modified
whenever an ALU operation is performed. Normally users do not have access into it.
ALU: It is Arithmetic logic unit of the
microprocessor. It is used for the
manipulation and processing of the data. It is
consisted of combinational as well as
sequential circuits. It has two inputs in the
form of ‘A’ and TMP but for some
instructions it can act as single input INR and
DCR) as well as three inputs (ADC, ACI,
SBB, SBI). The output is always tagged to A
for double input operation.
Architecture of 8085
14
Bus Group
Function: Responsible for carrying signals as data or address or controls from one block to
another block inside the CPU as el as outside the CPU
Types:
 Address Bus
 Address/Data Bus
 Control Bus
Address Bus: It is of eight bits. It is designated as A8 – A15. It is meant for carrying the
higher order byte of the address. It is unidirectional, i.e., always it act as output from the
CPU
Address/Data Bus: It is of eight bits. It is designated as AD0 – AD7. It is meant for carrying
the lower order byte of the address as well as data. It is multiplexed in time so that it can
carry either data or lower byte of the address at a time. It is bi-directional in nature and can
be tristated. In order to restrict the number of pins of 8085 to 40, it has been multiplexed.
Control Bus: It is meant for carrying the carrying the control signals being generated by
the Timing & Control unit of the CPU to various blocks inside the CPU so that proper
timing and sequence can be maintained.
Architecture of 8085
15
Register Group
Function: Responsible for storing data temporarily for performing various types of
operations. These are accessible to the users
The registers in 8085 are divided into THREE functional categories:
General Purpose : B, C, D, E, H, L (all 8bits)
Special Purpose : A, F, PC, SP, Incrementer / Decrementer
address latch
Temporary : TMP, W & Z
General features of the registers:
 They are all controlled registers.
 They are PIPO type
 They are either of 8 bit or 16 bit
Register Structure of 8085
General Purpose:
Six general purpose registers
They are all 8-bit registers
Three valid pairs (BC, DE & HL) are available to handle 16 bit data/address
B, D & H are Higher order registers whereas C, E & L are Lower order registers
HL is a special pair since it participates in more user friendly activities than the other
register pair
They are all accessible to the user for different activities.
16
Special Purpose Registers:
Accumulator (A): An 8-bit register used as one of the inputs to the CPU as well as for storing
the result after ALU operation. It can directly communicate with memory or I/O devices. Due the
dependency of the CPU on Accumulator, 8085 is often called as Accumulator based CPU.
Flag Register (F): It is an 8-bit register associated to ALU
Programme Counter (PC): It is a 16-bit register used to point to the memory location of the
next instruction
Stack Pointer (SP): It is a 16-bit register used to point to the top of the stack location
Incrementer/Decrementer Address Latch: It is a 16-bit register used increment or decrement a
16 bit data or addres. The contents of Program Counter (PC) and Stack Pointer (SP) are auto
incremented or auto decemented by this register. However, instructions like INX and DCX are
also executed by this register.
Architecture of 8085
17
Temporary Registers:
There are three temporary register which are all of 8-bits
TMP is one of the temporary registers which acts as one of the inputs of the ALU.
W & Z are a pair of temporary register which are used for temporary storage of 16 bit data
or address.
Interrupt Control Group:
This group is responsible for handling the interrupts being supported by 8085
microprocessor. All such interrupts are of hardware type, i.e., they will appear at
specific pins of 8085. Such pins are TRAP, RST 7.5, RST 6.5 and RST 5.5. In order
to extend the interrupt facilities being supported by 8085, two more pins are provided
and they are INTR and INTA.
Register Structure of 8085
18
X1
X2
CLK READY RD WR ALE S0 S1 IO/M HOLD HLDA RESET RESET
OUT IN OUT
A8-A15 AD0-AD7
Pin Functions of 8085
19
Groups of Pins:
Pin
No.
Name Type
1,2 X1, X2 Input
3 RESET OUT Output
4 SOD Output
5 SID Input
6 TRAP Input
7 RST 7.5 Input
8 RST 6.5 Input
9 RST 5.5 Input
10 INTR Input
11 INTA Output
12-19 AD0 – AD7 Bidirectional
(I/O)
20 VSS
Pin
No.
Name Type
21-28 A8 – A15 Output
29 S0 Output
30 ALE Output
31 WR Output
32 RD Output
33 S1 Output
34 IO/M Output
35 READY Input
36 RESET IN Input
37 CLK OUT Output
38 HLDA Output
39 HOLD Input
40 VCC
Pin Functions of 8085
20
Classification of Pins
Address Bus
Reset Signals
Data Bus
Status Signals
Control signals
Power Supply
Clock Signals
Serial I/O Signals
DMA Request Signals
Interrupt Signals

More Related Content

PPT
Raspberry Pi
PPT
Arduino Base Door Automation System.ppt
PPTX
Intel core presentation mnk
PPT
Microprocessor
PPTX
Home automation system
PPTX
History of intel microprocessors ppt
PPT
Evolution Of Microprocessor
PPTX
computer organisation architecture.pptx
Raspberry Pi
Arduino Base Door Automation System.ppt
Intel core presentation mnk
Microprocessor
Home automation system
History of intel microprocessors ppt
Evolution Of Microprocessor
computer organisation architecture.pptx

What's hot (20)

PPTX
Edge computing
PPTX
PIC18 TIMER PROGRAMMING IN ASSEMBLY AND C
PPT
Speaker ppt
PPSX
Evolution of microprocessors
PPT
ATM Security by using Fingerprint Recognition And GSM
PPT
The Intel 8086 microprocessor
PPTX
Autobahn primer
PPTX
Types of Microprocessor 8085 and 8086
PPSX
8051 microcontroller and embedded system
PPTX
Embedded System basic and classifications
PPT
Embedded system
PPTX
8051 Microcontroller Tutorial and Architecture with Applications
PPTX
Pipelining of Processors Computer Architecture
PPTX
Intel I3,I5,I7 Processor
PPTX
Chapter 7 memory & i/o
PPTX
Pll in lpc2148
PPTX
Paper presentation of mini project
PPTX
Microprocessor 8086
DOC
8086 class notes-Y.N.M
PPT
Chap1 chipset
Edge computing
PIC18 TIMER PROGRAMMING IN ASSEMBLY AND C
Speaker ppt
Evolution of microprocessors
ATM Security by using Fingerprint Recognition And GSM
The Intel 8086 microprocessor
Autobahn primer
Types of Microprocessor 8085 and 8086
8051 microcontroller and embedded system
Embedded System basic and classifications
Embedded system
8051 Microcontroller Tutorial and Architecture with Applications
Pipelining of Processors Computer Architecture
Intel I3,I5,I7 Processor
Chapter 7 memory & i/o
Pll in lpc2148
Paper presentation of mini project
Microprocessor 8086
8086 class notes-Y.N.M
Chap1 chipset
Ad

Similar to Introduction to 8085 Microprocessor (20)

DOCX
Basic concepts of microprocessors jahid
PDF
8085 microprocessor ramesh gaonkar
PDF
8085 microprocessor ramesh gaonkar
PDF
8085 microprocessor ramesh gaonkar
PDF
8085 microprocessor ramesh gaonkar
PDF
8085 microprocessor ramesh gaonkar
PDF
8085 microprocessor ramesh gaonkar
PDF
8085 micro processor book
PDF
Microprocessor 8085-Ramesh Gaonkar_250806_175733.pdf
PPTX
mICROPROCESSOR UNIT 1 ALL.pptx
PDF
mICROPROCESSOR UNIT 1 ALL.pptx.pdf
PDF
Week 2 Course Material.pdf
PPTX
8085 Microprocessor - Ramesh Gaonkar.pdf-27 (1).pptx
PDF
MICROCONTROLLRES NOTES.pdf
PDF
Lecture notes on microprocessor and microcomputer
PDF
IC technology integration and circuit logic families
PPTX
MPMC UNIT 1 MPMC UNIT 1 MPMC UNIT 1 MPMC UNIT 1
PPTX
MPMC UNIT 1 MPMC UNIT 1 MPMC UNIT 1 MPMC UNIT 1 MPMC UNIT 1
PDF
Introduction to Microprocessors
PPTX
4CS3-MPI-Unit-1.pptx
Basic concepts of microprocessors jahid
8085 microprocessor ramesh gaonkar
8085 microprocessor ramesh gaonkar
8085 microprocessor ramesh gaonkar
8085 microprocessor ramesh gaonkar
8085 microprocessor ramesh gaonkar
8085 microprocessor ramesh gaonkar
8085 micro processor book
Microprocessor 8085-Ramesh Gaonkar_250806_175733.pdf
mICROPROCESSOR UNIT 1 ALL.pptx
mICROPROCESSOR UNIT 1 ALL.pptx.pdf
Week 2 Course Material.pdf
8085 Microprocessor - Ramesh Gaonkar.pdf-27 (1).pptx
MICROCONTROLLRES NOTES.pdf
Lecture notes on microprocessor and microcomputer
IC technology integration and circuit logic families
MPMC UNIT 1 MPMC UNIT 1 MPMC UNIT 1 MPMC UNIT 1
MPMC UNIT 1 MPMC UNIT 1 MPMC UNIT 1 MPMC UNIT 1 MPMC UNIT 1
Introduction to Microprocessors
4CS3-MPI-Unit-1.pptx
Ad

Recently uploaded (20)

PDF
August 2025 - Top 10 Read Articles in Network Security & Its Applications
PDF
Visual Aids for Exploratory Data Analysis.pdf
PPT
INTRODUCTION -Data Warehousing and Mining-M.Tech- VTU.ppt
PDF
Level 2 – IBM Data and AI Fundamentals (1)_v1.1.PDF
PPTX
Fundamentals of Mechanical Engineering.pptx
PPTX
Feature types and data preprocessing steps
PPTX
Graph Data Structures with Types, Traversals, Connectivity, and Real-Life App...
PDF
III.4.1.2_The_Space_Environment.p pdffdf
PPTX
Sorting and Hashing in Data Structures with Algorithms, Techniques, Implement...
PDF
737-MAX_SRG.pdf student reference guides
PPTX
Safety Seminar civil to be ensured for safe working.
PPTX
Module 8- Technological and Communication Skills.pptx
PDF
R24 SURVEYING LAB MANUAL for civil enggi
PPTX
introduction to high performance computing
PDF
Human-AI Collaboration: Balancing Agentic AI and Autonomy in Hybrid Systems
PDF
Design Guidelines and solutions for Plastics parts
PDF
Accra-Kumasi Expressway - Prefeasibility Report Volume 1 of 7.11.2018.pdf
PDF
Automation-in-Manufacturing-Chapter-Introduction.pdf
PDF
PREDICTION OF DIABETES FROM ELECTRONIC HEALTH RECORDS
PDF
A SYSTEMATIC REVIEW OF APPLICATIONS IN FRAUD DETECTION
August 2025 - Top 10 Read Articles in Network Security & Its Applications
Visual Aids for Exploratory Data Analysis.pdf
INTRODUCTION -Data Warehousing and Mining-M.Tech- VTU.ppt
Level 2 – IBM Data and AI Fundamentals (1)_v1.1.PDF
Fundamentals of Mechanical Engineering.pptx
Feature types and data preprocessing steps
Graph Data Structures with Types, Traversals, Connectivity, and Real-Life App...
III.4.1.2_The_Space_Environment.p pdffdf
Sorting and Hashing in Data Structures with Algorithms, Techniques, Implement...
737-MAX_SRG.pdf student reference guides
Safety Seminar civil to be ensured for safe working.
Module 8- Technological and Communication Skills.pptx
R24 SURVEYING LAB MANUAL for civil enggi
introduction to high performance computing
Human-AI Collaboration: Balancing Agentic AI and Autonomy in Hybrid Systems
Design Guidelines and solutions for Plastics parts
Accra-Kumasi Expressway - Prefeasibility Report Volume 1 of 7.11.2018.pdf
Automation-in-Manufacturing-Chapter-Introduction.pdf
PREDICTION OF DIABETES FROM ELECTRONIC HEALTH RECORDS
A SYSTEMATIC REVIEW OF APPLICATIONS IN FRAUD DETECTION

Introduction to 8085 Microprocessor

  • 1. Introduction to Microprocessors, Architecture of 8085, Pin Configuration and Function, internal register & flag register, Generation of Control Signals: Bus Timings: Demultiplexing of address/ data bus; Fetch Cycle, Execute Cycle, Instruction Cycle, Instruction Timings and Operation Status, Timing Diagram. UNIT- I: MICROPROCESSOR ARCHITECTURE 1
  • 2. The following questions will be uncovered: 1. What is a microprocessor? 2. How it is different from a Microcomputer and a Microcontroller? 3. Describe a microprocessor based system. 4. History of development of microprocessor. 5. What are the various components of a microprocessor? 6. Why it is called a microprocessor? 7. Describe the register structure of 8085 microprocessor 8. Describe the construction of flag register of 8085 9. What is bus? Mention the functions of various buses of 8085. 10. Describe the architecture of 8085 and mention the functions of each block inside 8085. 11. Describe pin functions of 8085 12. Describe multiplexed pins of 8085. how they are demultiplexed? 13. How additional control signals are generated in 8085? 14. Define Timing diagram, T – state, Machine Cycle, Fetch cycle, Execute cycle, Instruction cycle, Fetch Execute overlap 15. Types of machine cycle supported by 8085 16. Concept of microinstruction 17. How to draw the timing diagram? Some examples including example of FEO. Introduction to Microprocessor 2
  • 3. What is a Microprocessor? The word comes from the combination micro and processor. Processor means a device that processes whatever is appearing at its input according to the Programme/routine set by the user. In this context processor means a device that processes numbers, specifically binary numbers, 0’s and 1’s.To process means to manipulate. It is a general term that describes all manipulation. Again in this content, it means to perform certain operations on the numbers that depend on the microprocessor’s design. Introduction What about micro? Micro is a new addition. In the late 1960’s, processors were built using discrete elements. These devices performed the required operation, but were too large and too slow. In the early 1970’s the microchip was invented. All of the components that made up the processor were now placed on a single piece of silicon. The size became several thousand times smaller and the speed became several hundred times faster. The “Micro”Processor was born. Alternatively, it is also told as the instructions to be executed by the microprocessor are broken into microinstructions before it is being executed, it is called Microprocessor. 3
  • 4. Introduction Was there ever a “mini”-processor? No. It went directly from discrete elements to a single chip. However, comparing today’s microprocessors to the ones built in the early 1970’s an extreme increase in the amount of integration is observed. Definition of the Microprocessor The microprocessor is a programmable device that takes in numbers, performs on them arithmetic or logical operations according to the program stored in memory and then produces other numbers as a result. 4
  • 5. Introduction Programmable device: The microprocessor can perform different sets of operations on the data it receives depending on the sequence of instructions supplied in the given program. By changing the program, the microprocessor manipulates the data in different ways. Instructions: Each microprocessor is designed to execute a specific group of operations. This group of operations is called an instruction set. This instruction set defines what the microprocessor can and cannot do. Takes in: The data that the microprocessor manipulates must come from somewhere. It comes from what is called “input devices”. These are devices that bring data into the system from the outside world. These represent devices such as a keyboard, a mouse, switches, and the like. Numbers: The microprocessor has a very narrow view on life. It only understands binary numbers. A binary digit is called a bit (which comes from binary digit). The microprocessor recognizes and processes a group of bits together. This group of bits is called a “word”. The number of bits in a Microprocessor’s word, is a measure of its “abilities”. Words, Bytes, etc.: The earliest microprocessor (the Intel 8088 and Motorola’s 6800) recognized 8-bit words. They processed information 8-bits at a time. That’s why they are called “8-bit processors”. They can handle large numbers, but in order to process these numbers, they broke them into 8-bit pieces and processed each group of 8-bits separately. Later microprocessors (8086 and 68000) were designed with 16-bit words. A group of 8-bits were referred to as a “half-word” or “byte”. A group of 4 bits is called a “nibble”. Also, 32 bit groups were given the name “long word”. Today, all processors manipulate at least 32 bits at a time and there exists microprocessors that can process 64, 80, 128 bits. 5
  • 6. Introduction Arithmetic and Logic Operations: Every microprocessor has arithmetic operations such as add and subtract as part of its instruction set. Most microprocessors will have operations such as multiply and divide. Some of the newer ones will have complex operations such as square root. In addition, microprocessors have logic operations as well. Such as AND, OR, XOR, shift left, shift right, etc. Again, the number and types of operations define the microprocessor’s instruction set and depends on the specific microprocessor. Stored in memory : First, what is memory? Memory is the location where information is kept while not in current use. Memory is a collection of storage devices. Usually, each storage device holds one bit. Also, in most kinds of memory, these storage devices are grouped into groups of 8. These 8 storage locations can only be accessed together. So, one can only read or write in terms of bytes to and form memory. Memory is usually measured by the number of bytes it can hold. It is measured in Kilos, Megas and lately Gigas. A Kilo in computer language is 210 =1024. So, a KB (KiloByte) is 1024 bytes. Mega is 1024 Kilos and Giga is 1024 Mega. When a program is entered into a computer, it is stored in memory. Then as the microprocessor starts to execute the instructions, it brings the instructions from memory one at a time. Memory is also used to hold the data. The microprocessor reads (brings in) the data from memory when it needs it and writes (stores) the results into memory when it is done. Produces: For the user to see the result of the execution of the program, the results must be presented in a human readable form. The results must be presented on an output device. This can be the monitor, a paper from the printer, a simple LED or many other forms. 6
  • 7. Introduction A Microprocessor based system: Inside the microprocessor: Internally, the microprocessor is made up of 3 main units. (i) The Arithmetic/Logic Unit (ALU), (ii) The Control Unit and (ii) An array of registers for holding data while it is being manipulated. Memory Subsystem: Memory stores information such as instructions and data in binary format (0 and 1). It provides this information to the microprocessor whenever it is needed. Usually, there is a memory “sub- system” in a microprocessor-based system. This sub-system includes:  The registers inside the microprocessor  Read Only Memory (ROM) used to store information that does not change.  Random Access Memory (RAM) (also known as Read/Write Memory) used to store information supplied by the user such as programs and data. Memory Map and Addresses The memory map is a picture representation of the address range and shows where the different memory chips are located within the address range. 7 Bulk Memory remains outside the CPU
  • 8. Introduction Memory: To execute a program, the user enters its instructions in binary format into the memory. The microprocessor then reads these instructions and whatever data is needed from memory, executes the instructions and places the results either in memory or produces it on an output device. The three cycle instruction execution model To execute a program, the microprocessor “reads” each instruction from memory, “interprets” it, then “executes” it. To use the right names for the cycles: The microprocessor fetches each instruction, decodes it, Then executes it. This sequence is continued until all instructions are performed. Machine Language: The number of bits that form the “word” of a microprocessor is fixed for that particular processor. These bits define a maximum number of combinations. For example an 8-bit microprocessor can have at most 28 = 256 different combinations. However, in most microprocessors, not all of these combinations are used. Certain patterns are chosen and assigned specific meanings. Each of these patterns forms an instruction for the microprocessor. The complete set of patterns makes up the microprocessor’s machine language. 8
  • 9. Introduction The 8085 Machine Language: The 8085 (from Intel) is an 8-bit microprocessor. The 8085 uses a total of 246 bit patterns to form its instruction set. These 246 patterns represent only 74 instructions. The reason for the difference is that some (actually most) instructions have multiple different formats. Because it is very difficult to enter the bit patterns correctly, they are usually entered in hexadecimal instead of binary. For example, the combination 0011 1100 which translates into “increment the number in the register called the accumulator”, is usually entered as 3C. 9
  • 10. Introduction Assembly Language: Entering the instructions using hexadecimal is quite easier than entering the binary combinations. However, it still is difficult to understand what a program written in hexadecimal does. So, each company defines a symbolic code for the instructions. These codes are called “mnemonics”. The mnemonic for each instruction is usually a group of letters that suggest the operation performed. Using the same example from before, 00111100 translates to 3C in hexadecimal (OPCODE). Its mnemonic is: “INR A”. INR stands for “increment register” and A is short for accumulator. Another example is: 1000 0000,Which translates to 80 in hexadecimal. Its mnemonic is “ADD B”. “Add register B to the accumulator and keep the result in the accumulator”. It is important to remember that a machine language and its associated assembly language are completely machine dependent. In other words, they are not transferable from one microprocessor to a different one. For example, Motorolla has an 8-bit microprocessor called the 6800. The 8085 machine language is very different from that of the 6800. So is the assembly language. A program written for the 8085 cannot be executed on the 6800 and vice versa. “Assembling” The Program How does assembly language get translated into machine language? There are two ways: 1st there is “hand assembly”. The programmer translates each assembly language instruction into its equivalent hexadecimal code (machine language). Then the hexadecimal code is entered into memory. The other possibility is a program called an “assembler”, which does the translation automatically. 10
  • 11. Architecture of 8085 11 What is Computer Architecture?  The visual interface of computer.  Logical terms as seen by the programmer.  Computer architecture will answer you how do I design a computer.  Example: instruction sets, instruction formats, data types, addressing modes. What is Computer Organization?  Organization refers the components of the computer hardware system: processor and data path, storage and caching, input/output and interrupts. How Architecture is different from Organization?  Computer organization mainly deals with how a particular hardware works in a computer where as computer architecture deals with how to design a circuit for such hardware.  Organization is the study from Software point of view while architecture is study from hardware point of view Organization give us abstract view while architecture give us depth details of system. Organization is the study of programmer point of view while architecture is h/w designer point of view.  Computer architecture comes before computer organization.  Architecture is more deep rooted. Goes into transistors and logic gates. Its how to relay all that information between components.
  • 12. Architecture of 8085 12 Various Groups within a microprocessor: 1. ALU Group 2. Bus Group 3. Register Group 4. Interrupt Control Group 5. Serial I/O control Group 6. Instruction Handling, Timing and Control Group 7. External Interface Group
  • 13. Architecture of 8085 13 ALU Group Function: Responsible for performing all sorts of Arithmetic and Logical operations Components:  Accumulator  TMP Register  Flag Register  ALU Accumulator: Accumulator denoted by the letter ‘A’ is an eight bit register. It is acting as one of the inputs to the ALU as well as after ALU operation, the result is stored in it. It is a special purpose register of 8085. TMP Register: It is an eight bit register. It is acting as one of the inputs to the ALU. It is used for temporary storage of data. It can not accessed by the user. It is a temporary register of 8085. Flag Register: It is an eight bit register out of which five bits are used namely, Sign, Zero, Auxiliary Carry, Carry and parity. It is associated to the ALU. The contents get modified whenever an ALU operation is performed. Normally users do not have access into it. ALU: It is Arithmetic logic unit of the microprocessor. It is used for the manipulation and processing of the data. It is consisted of combinational as well as sequential circuits. It has two inputs in the form of ‘A’ and TMP but for some instructions it can act as single input INR and DCR) as well as three inputs (ADC, ACI, SBB, SBI). The output is always tagged to A for double input operation.
  • 14. Architecture of 8085 14 Bus Group Function: Responsible for carrying signals as data or address or controls from one block to another block inside the CPU as el as outside the CPU Types:  Address Bus  Address/Data Bus  Control Bus Address Bus: It is of eight bits. It is designated as A8 – A15. It is meant for carrying the higher order byte of the address. It is unidirectional, i.e., always it act as output from the CPU Address/Data Bus: It is of eight bits. It is designated as AD0 – AD7. It is meant for carrying the lower order byte of the address as well as data. It is multiplexed in time so that it can carry either data or lower byte of the address at a time. It is bi-directional in nature and can be tristated. In order to restrict the number of pins of 8085 to 40, it has been multiplexed. Control Bus: It is meant for carrying the carrying the control signals being generated by the Timing & Control unit of the CPU to various blocks inside the CPU so that proper timing and sequence can be maintained.
  • 15. Architecture of 8085 15 Register Group Function: Responsible for storing data temporarily for performing various types of operations. These are accessible to the users The registers in 8085 are divided into THREE functional categories: General Purpose : B, C, D, E, H, L (all 8bits) Special Purpose : A, F, PC, SP, Incrementer / Decrementer address latch Temporary : TMP, W & Z General features of the registers:  They are all controlled registers.  They are PIPO type  They are either of 8 bit or 16 bit
  • 16. Register Structure of 8085 General Purpose: Six general purpose registers They are all 8-bit registers Three valid pairs (BC, DE & HL) are available to handle 16 bit data/address B, D & H are Higher order registers whereas C, E & L are Lower order registers HL is a special pair since it participates in more user friendly activities than the other register pair They are all accessible to the user for different activities. 16 Special Purpose Registers: Accumulator (A): An 8-bit register used as one of the inputs to the CPU as well as for storing the result after ALU operation. It can directly communicate with memory or I/O devices. Due the dependency of the CPU on Accumulator, 8085 is often called as Accumulator based CPU. Flag Register (F): It is an 8-bit register associated to ALU Programme Counter (PC): It is a 16-bit register used to point to the memory location of the next instruction Stack Pointer (SP): It is a 16-bit register used to point to the top of the stack location Incrementer/Decrementer Address Latch: It is a 16-bit register used increment or decrement a 16 bit data or addres. The contents of Program Counter (PC) and Stack Pointer (SP) are auto incremented or auto decemented by this register. However, instructions like INX and DCX are also executed by this register.
  • 17. Architecture of 8085 17 Temporary Registers: There are three temporary register which are all of 8-bits TMP is one of the temporary registers which acts as one of the inputs of the ALU. W & Z are a pair of temporary register which are used for temporary storage of 16 bit data or address. Interrupt Control Group: This group is responsible for handling the interrupts being supported by 8085 microprocessor. All such interrupts are of hardware type, i.e., they will appear at specific pins of 8085. Such pins are TRAP, RST 7.5, RST 6.5 and RST 5.5. In order to extend the interrupt facilities being supported by 8085, two more pins are provided and they are INTR and INTA.
  • 18. Register Structure of 8085 18 X1 X2 CLK READY RD WR ALE S0 S1 IO/M HOLD HLDA RESET RESET OUT IN OUT A8-A15 AD0-AD7
  • 19. Pin Functions of 8085 19 Groups of Pins: Pin No. Name Type 1,2 X1, X2 Input 3 RESET OUT Output 4 SOD Output 5 SID Input 6 TRAP Input 7 RST 7.5 Input 8 RST 6.5 Input 9 RST 5.5 Input 10 INTR Input 11 INTA Output 12-19 AD0 – AD7 Bidirectional (I/O) 20 VSS Pin No. Name Type 21-28 A8 – A15 Output 29 S0 Output 30 ALE Output 31 WR Output 32 RD Output 33 S1 Output 34 IO/M Output 35 READY Input 36 RESET IN Input 37 CLK OUT Output 38 HLDA Output 39 HOLD Input 40 VCC
  • 20. Pin Functions of 8085 20 Classification of Pins Address Bus Reset Signals Data Bus Status Signals Control signals Power Supply Clock Signals Serial I/O Signals DMA Request Signals Interrupt Signals