Comp 5th Unit
Comp 5th Unit
Intel 8086
o Intel 8086 microprocessor is the enhanced version of Intel 8085
microprocessor. It was designed by Intel in 1976.
o The 8086 microprocessor is a16-bit, N-channel, HMOS microprocessor. Where
the HMOS is used for "High-speed Metal Oxide Semiconductor".
o Intel 8086 is built on a single semiconductor chip and packaged in a 40-pin IC
package. The type of package is DIP (Dual Inline Package).
o Intel 8086 uses 20 address lines and 16 data- lines. It can directly address up
to 220 = 1 Mbyte of memory.
o It consists of a powerful instruction set, which provides operation like division
and multiplication very quickly.
o 8086 is designed to operate in two modes, i.e., Minimum and Maximum
mode.
AD0-AD15 (Address Data Bus): Bidirectional address/data lines. These are low
order address bus. They are multiplexed with data.
When these lines are used to transmit memory address, the symbol A is used instead
of AD, for example, A0- A15.
A16 - A19 (Output): High order address lines. These are multiplexed with status
signals.
PlayNext
Unmute
Duration 18:10
Loaded: 0.37%
Â
Fullscreen
Backward Skip 10sPlay VideoForward Skip 10s
A16/S3, A17/S4: A16 and A17 are multiplexed with segment identifier signals S3
and S4.
BHE/S7 (Output): Bus High Enable/Status. During T1, it is low. It enables the
data onto the most significant half of data bus, D8-D15. 8-bit device connected
is multiplexed
to upper half of the data bus use BHE signal. It
Ready (Input): The addressed memory or I/O sends acknowledgment through this
pin. When HIGH, it denotes that the peripheral is ready to transfer data.
TEST (Input): Wait for test control. When LOW the microprocessor continues
execution otherwise waits.
GND: Ground.
When only one 8086 CPU is to be used in a microprocessor system, the 8086 is used
in the Minimum mode of operation.
In this minimum mode of operation, the pin MN/ MX is connected to 5V D.C. supply
i.e. MN/MX = VCC.
The description about the pins from 24 to 31 for the minimum mode is as
follows:
ALE (Output): Pin no. 25. Address latch enable. It goes HIGH during T1. The
microprocessor 8086 sends this signal to latch the address into the Intel 8282/8283
latch.
DEN (Output): Pin no. 26. Data Enable. When Intel 8287/8286 octal bus transceiver
is used this signal. It is active LOW.
DT/R (output): Pin No. 27 data Transmit/Receives. When Intel 8287/8286 octal bus
transceiver is used this signal controls the direction of data flow through the
transceiver. When it is HIGH, data is sent out. When it is LOW, data is received.
M/IO (Output): Pin no. 28, Memory or I/O access. When this signal is HIGH, the CPU
wants to access memory. When this signal is LOW, the CPU wants to access I/O
device.
WR (Output): Pin no. 29, Write. When this signal is LOW, the CPU performs memory
or I/O write operation.
HLDA (Output): Pin no. 30, Hold Acknowledgment. It is sent by the processor when
it receives HOLD signal. It is active HIGH signal. When HOLD is removed HLDA goes
LOW.
HOLD (Input): Pin no. 31, Hold. When another device in microcomputer system
wants to use the address and data bus, it sends HOLD request to CPU through this
pin. It is an active HIGH signal.
o General Purpose Registers: There are four 16-bit general purpose registers:
AX (Accumulator Register), BX (Base Register), CX (Counter) and DX. Each of
these 16-bit registers are further subdivided into 8-bit registers as shown
below:
AX AH AL
BX BH BL
CX CH CL
DX DH DL
o Index Register: The following four registers are in the group of pointer and
index registers:
o Stack Pointer (SP)
o Base Pointer (BP)
o Source Index (SI)
o Destination Index (DI)
o ALU: It handles all arithmetic and logical operations. Such as addition,
subtraction, multiplication, division, AND, OR, NOT operations.
o Flag Register: It is a 16?bit register which exactly behaves like a flip-flop,
means it changes states according to the result stored in the accumulator. It
has 9 flags and they are divided into 2 groups i.e. conditional and control
flags.
o Conditional Flags: This flag represents the result of the last arithmetic
or logical instruction executed. Conditional flags are:
o Carry Flag
o Auxiliary Flag
o Parity Flag
o Zero Flag
o Sign Flag
o Overflow Flag
o Control Flags: It controls the operations of the execution unit. Control
flags are:
o Trap Flag
o Interrupt Flag
o Direction Flag
Interrupts
Interrupt is a process of creating a temporary halt during program execution and
allows peripheral devices to access the microprocessor.
NMI: NMI is a single Non-Maskable Interrupt having higher priority than the
maskable interrupt.
Software Interrupt
A microprocessor can also be interrupted by internal abnormal conditions such as
overflow; division by zero; etc. A programmer can also interrupt microprocessor by
inserting INT instruction at the desired point in the program while debugging a
program. Such an interrupt is called a software interrupt.
The interrupt caused by an internal abnormal conditions also came under the
heading of software interrupt.
1KB memory acts as a table to contain interrupt vectors (or interrupt pointers), and it
is called interrupt vector table or interrupt pointer table. The 256 interrupt pointers
have been numbered from 0 to 255 (FF hex). The number assigned to an interrupt
pointer is known as type of that interrupt. For example, Type 0, Type 1, Type
2,...........Type 255 interrupt.
The 8086 microprocessors have 8 addressing modes. Two addressing modes have
been provided for instructions which operate on register or immediate data.
Register Addressing: In register addressing, the operand is placed in one of the 16-
bit or 8-bit general purpose registers.
Example
o MOV AX, CX
o ADD AL, BL
o ADD CX, DX
Example
Direct Addressing: In direct addressing mode, the operand?s offset is given in the
instruction as an 8-bit or 16-bit displacement element.
Example
The instruction adds the content of the offset address 0301 to AL. the operand is
placed at the given offset (0301) within the data segment DS.
Register Indirect Addressing: The operand's offset is placed in any one of the
registers BX, BP, SI or DI as specified in the instruction.
Example
Example
Indexed Addressing: The offset of an operand is the sum of the content of an index
register SI or DI and an 8-bit or 16-bit displacement.
Example
Based Indexed Addressing: The offset of operand is the sum of the content of a
base register BX or BP and an index register SI or DI.
Here, BX is used for a base register for data segment, and BP is used as a base
register for stack segment.
Example
Effective Address (Offset) = [BX or BP] + [SI or DI] + 8-bit or 16-bit displacement
Example
There are two approaches of the design of the control unit of a microprocessor i.e.-
CISC Processors:- If the control unit contains a number of micro electronic circuitry
to generate a set of control signals and each micro circuitry is activated by a
microcode, this design approach is called CISC design. This is a software approach of
designing a control unit of the processor.
4. Simple processor circuitry (small number of Complex processor circuitry (more num
transistors) of transistors)
8. Fixed number of clock cycles for executing Variable number of clock cycles for
one instruction instructions
8086 Microprocessor
Following are the features of 8086 microprocessor:
• Data Bus Width: 16
• Addressed Memory Size of: 1M
80286 Microprocessor
Following are the features of 80286 microprocessor:
• Data bus width: 16
• Addressed Memory size of : 16M
• Clock speed is higher and hence some instructions are executed in as little
as 250ns.
• As shown in the figure, 80286 does not have multiplexed address/data bus
lines.
80386 Microprocessor
Following are the features of 80386 microprocessor:
• 32-bit data bus and 32-bit memory address
• It addresses up to 4G bytes of memory.
• 80386SX: address 16M bytes of memory.
• 80386SL: address 32M bytes of memory.
• 80386SLC: address 32M bytes of memory.It contain internal cache memory
which allowed it to process data at higher rates
Figure-2 depicts pin diagrams of 80386DX and 80386SX.
80486 Microprocessor
Following are the features of 80486 microprocessor:
• Data Bus Width: 32 bit
• Address bus : 32 bit
• Memory Size: 4G +16K cache
• The 80486 architecture has been ungraded such that half of its instructions
are executed in 1 clock cycle instead of two clock cycles.
• It has 80386 like microprocessor and 80387 like numeric coprocessor.
Following table compares 80286 vs 80386 vs 80486 and mentions difference
between them.
Cores 1 1 1
Functional Units 4 6 9
Pipeline stages 3 3 5
Cache on chip 0 0 8 KB
The Pentium family of processors originated from the 80486 microprocessor. The term
''Pentium processor'' refers to a family of microprocessors that share a common
architecture and instruction set. It runs at a clock frequency of either 60 or 66 MHz and has
3.1 million transistors. Some of the features of Pentium architecture are:
1. Protected Mode - In this mode all instructions and architectural features are
available, providing the highest performance and capability. This is the
recommended mode that all new applications and operating systems should
target.
2. Real-Address Mode - This mode provides the programming environment of the
Intel 8086 processor, with a few extensions. Reset initialization places the
processor in real mode where, with a single instruction, it can switch to protected
mode.
The Pentium's basic integer pipeline is five stages long, with the stages broken down as
follows:
1. Pre-fetch/Fetch: Instructions are fetched from the instruction cache and aligned in
pre-fetch buffers for decoding.
2. Decode1: Instructions are decoded into the Pentium's internal instruction format.
Branch prediction also takes place at this stage.
3. Decode2: Same as above, and microcode ROM kicks in here, if necessary. Also,
address computations take place at this stage.
4. Execute: The integer hardware executes the instruction.
5. Write-back: The results of the computation are written back to the register file.