Microprocessor and Microcontroler Unit 1
Microprocessor and Microcontroler Unit 1
Definitions:
or
Evolution of microprocessors:
Transistor was invented in 1948 (23 December 1947 in Bell lab). IC was invented in 1958
(Fair Child Semiconductors) By Texas Instruments J Kilby. The first microprocessor was
invented by INTEL(INTegrated ELectronics).
Generations of microprocessors:
1. First-generation –
From 1971 to 1972 the era of the first generation came which brought
microprocessors like INTEL 4004 Rockwell international PPS-4 INTEL 8008 etc.
2. Second generation –
The second generation marked the development of 8-bit microprocessors from
1973 to 1978. Processors like INTEL 8085 Motorola 6800 and 6801 etc came into
existence.
3. Third generation –
The third generation brought forward the 16-bit processors like INTEL
8086/80186/80286 Motorola 68000 68010 etc. From 1979 to 1980 this generation
used the HMOS technology.
4. Fourth generation –
The fourth-generation came into existence from 1981 to 1995. The 32-bit
processors using HMOS fabrication came into existence. INTEL 80386 and Motorola
68020 are some of the popular processors of this generation.
5. Fifth-generation –
From 1995 till now we are in the fifth generation. 64-bit processors like PENTIUM,
Celeron, dual, quad, and octa-core processors came into existence.
Types of microprocessors :
Superscalar microprocessor –
These processors can perform many tasks at a time. They can be used for ALUs
and multiplier-like arrays. They have multiple operation units and perform tasks by
executing multiple commands.
Features :
Clock speed: One of the earliest features of microprocessors was the clock speed,
which refers to the speed at which the processor can execute instructions. Over time,
clock speeds have increased, with modern processors capable of speeds in the billions of
cycles per second (GHz).
Cache memory: Microprocessors now include a cache memory, which is a small amount
of high-speed memory that stores frequently used data for quicker access.
3. Easy maintenance
5. Flexible
Disadvantages of microprocessors –
Microcontrollers:
Advantages of Microcontrollers
The flexibility Embedded Operating System are specifying the processor chips that
are due to the programmable nature.
In fact, faster speed of execution is fully integrated into the processor such as a
computer on a chip. These devices are operating at a faster speed to executing the
instructions to the general purpose of microprocessors.
Programming the logical controllers (PLCs) are subsets of the microcontrollers that
will design the set of instructions for manufacturing the robots and also the
industrial equipment planning for specific automated tasks.
More than one task may perform the PLCs and microcontrollers are repetitive for
human attention.
The microcontrollers are controlling the read-only memory that is rather than the
random access memory.
Applications of Microcontrollers
We know that microcontrollers are used for most of the household and industrial
applications. The huge areas of applications are as follows.
Evolution of Microcontrollers measuring the physical quality for example force,
acceleration, stress, pressure, velocity an also strain.
Household appliances for example light control, TV, washing machine, VCR, and
video games.
Class notes:
Architecture of RISC
Architecture of CISC
RISC CISC
small number of large number of
instructions instructions
more speed less speed
small size large size
simple architecture complex architecture
high efficiency less efficiency
Harvard Architecture
main memory
ALU
Control unit
Registers
Storage for program
Input/output unit
MICROPROCESSOR ARCHITECTURE:
ALU memory
registe
rs Input device
Control
unit output
Operations of microprocessor:
ALU
8085 MICROPROCESSOR
ARCHITECTURE:
Functional units of 8085 micrprocessor:
Accumulator
It is an 8-bit register used to perform arithmetic, logical, I/O & LOAD/STORE operations. It
is connected to internal data bus & ALU.
As the name suggests, it performs arithmetic and logical operations like Addition,
Subtraction, AND, OR, etc. on 8-bit data.
There are 6 general purpose registers in 8085 processor, i.e. B, C, D, E, H & L. Each
register can hold 8-bit data.
These registers can work in pair to hold 16-bit data and their pairing combination is like
B-C, D-E & H-L.
Program counter
It is a 16-bit register used to store the memory address location of the next instruction to
be executed. Microprocessor increments the program whenever an instruction is being
executed, so that the program counter points to the memory address of the next
instruction that is going to be executed.
Stack pointer
Temporary register
It is an 8-bit register, which holds the temporary data of arithmetic and logical
operations.
Flag register
It is an 8-bit register having five 1-bit flip-flops, which holds either 0 or 1 depending upon
the result stored in the accumulator.
Sign (S)
Zero (Z)
Parity (P)
Carry (C)
D7 D6 D5 D4 D3 D2 D1 D0
S Z AC P CY
It is an 8-bit register. When an instruction is fetched from memory then it is stored in the
Instruction register. Instruction decoder decodes the information present in the
Instruction register.
Interrupt control
As the name suggests it controls the interrupts during a process. When a microprocessor
is executing a main program and whenever an interrupt occurs, the microprocessor shifts
the control from the main program to process the incoming request. After the request is
completed, the control goes back to the main program.
There are 5 interrupt signals in 8085 microprocessor: INTR, RST 7.5, RST 6.5, RST 5.5,
TRAP.
It controls the serial data communication by using these two instructions: SID (Serial
input data) and SOD (Serial output data).
The content stored in the stack pointer and program counter is loaded into the address
buffer and address-data buffer to communicate with the CPU. The memory and I/O chips
are connected to these buses; the CPU can exchange the desired data with the memory
and I/O chips.
RD indicates that the selected IO or memory device is to be read and is ready to accept
data from the data bus.
WR This signal indicates that the data on the data bus is about to be written into a
specific memory or IO location.
ALE is a positive going pulse generated by the microprocessor when a new operation is
initiated. When the pulse becomes high, it denotes the address. When the pulse falls, it
indicates that data has been received.
CLK (OUT) – This signal can be used by other devices as the system clock.
INTR I (ii) RST 7.5 (iii) RST 6.5 (iv) RST 5.5 (v) TRAP
The INTA signal is used by the microprocessor to acknowledge Interrupt Request. There
are three externally initiated signals in addition to Interrupts: RESET, HOLD, and READY. It
has one signal called HLDA that responds to HOLD requests.
5) Reset Signals
RESET IN -When the signal on this pin is low(0), the program counter is reset, the buses
are tri-stated, and the microprocessor unit is reset.
RESET OUT – Indicates that the MPU is being reset. Other devices can be reset using the
signal.
6) DMA Signals
HOLD – This indicates that another device wants to use the address and data bus. When
a HOLD request is received, the microprocessor relinquishes the use of the buses as soon
as the current machine cycle is completed. Internal processing may be resumed. The
processor regains bus access after the HOLD signal is removed.
HLDA – This is a signal that indicates that a HOLD request has been received. When a
HOLD request is removed, the HLDA goes low.
SID (Serial input data line): When a RIM instruction is executed, the data on this line is
loaded into the accumulator.
The classification of instruction set of 8085 is divided into five main types based on the
function of the instructions:
Arithmetic Instructions
Logical Instructions
o Execute bit-wise logical operations such as AND, OR, XOR, and comparison.
Branching Instructions
Control Instructions
The addressing modes and instruction set of 8085 define how data is accessed for
execution. Each mode provides a unique way to reference data:
Immediate Addressing:
Direct Addressing:
o Example: LDA 2000H (Load data from memory address 2000H into accumulator).
Register Addressing:
o Example: MOV A, M (Copy data from memory location pointed by register pair HL
to A).
Implicit Addressing:
The instruction set of 8085 microprocessor can be understood through the types of
operations it performs:
These instructions move data between registers, memory, or I/O ports. They do not alter
the data but copy it from one location to another.
Examples:
2. Arithmetic Operations
These operations perform arithmetic tasks like addition, subtraction, and increment. The
results are stored in the accumulator by default.
Examples:
3. Logical Operations
Logical instructions manipulate individual bits and perform operations like AND, OR, and
XOR.
Examples:
4. Branching Operations
These instructions alter the normal flow of execution. Conditional and unconditional
jumps allow for branching based on conditions.
Examples:
o JNZ 2050H: Jumps to address 2050H if the zero flag is not set.
5. Control Operations
Control instructions handle processor control tasks like enabling/disabling interrupts and
halting execution.
Examples: