3 Microprocessor 8086
3 Microprocessor 8086
3 Microprocessor 8086
Genesis: Microprocessor
1971: First Generation Microprocessor Intel
4004, four bit
1972: First generation Microprocessor Intel 8008,
8 bit, PMOS (slower)
1973: Second generation microprocessor Intel
8080, 8 bit, NMOS (faster)
1975: Second generation microprocessor Intel
8085, 8 bit, NMOS, Single power pin (+5 V)
1978: Third generation microprocessor Intel
8086 and 8088, 16 bit
Fourth Generation Microprocessor: 80386, 32 bit
Fifth Generation: Intel Pentium
2
FEATURES
40 PIN DIL HMOS WITH 29000 Transistors, INTEL IC, +5V, 3rd Generation, 1978, for
PCs
Clock Frequency: 5-10 MHz (8086A: 10MHz) with 33% Duty cycle. Needs external
clock generator IC Intel 8284.
16 bit 3rd Generation ALU (Signed number range: -32768d to 32767d, Unsigned
number range: 0-65535d)
Address Bus 20 Bit-> 1MB memory can be interfaced
Follows logical Addressing scheme (Memory segmentation, Multiprogramming,
Dynamic relocation)
Multiprocessor mode
Instruction Queue for prefetching instruction bytes and fetch execution overlap,
leading to much higher execution speed as compared to 8085
External physical Memory interfaced in two memory banks
3
DIFFERENCES WITH INTEL 8085
8085 MICROPROCESSOR 8086 MICROPROCESSOR
40 Pin IC, NMOS 6200 Transistors 40 Pin IC, HMOS 29,000 Transistors
Clock frequency is 3-5 MHz. 50% Duty Clock frequency is 5-10 MHz. It does not
cycle Internal crystal oscillator have an internal oscillator, needs and
external clock generator IC 8284 to
generate clock pulses. Needs a clock
pulse of duty cycle 33%
Data Bus width: 8 bits Data Bus width: 16 bits
Address bus width: 16 bits. Hence Address bus width: 20 bits. Hence
maximum memory that can be connected maximum memory that can be interfaced
is of 64 KB is 1 MB
Memory ICs or IO ports with word size of 8 Memory ICs or IO ports with word size of 8
bits are connected with the 8 bit data bus bits are connected with 16 bit data bus of
of microprocessor in single bank microprocessor in 2 banks (high and low
banks) 4
DIFFERENCES WITH INTEL 8085
8085 MICROPROCESSOR 8086 MICROPROCESSOR
IO port address is of 8 bits (00H to FFH). IO port address is of 16 bits from 0000H to
Thus 256 IO devices can be connected FFFFH. Hence theoretically 65535 IO ports
can be implemented
Memory access follows physical addressing Memory access follows logical addressing
scheme scheme
Physical memory is not divided into Physical memory is divided into 4 logical
segments segments namely; Code memory segment
(CMS), data memory segment (DMS), Extra
memory segment (EMS) and Stack Memory
segment (SMS)
Do Not contain instruction queue. Hence Contains six registers of 8 bits in an
fetch and execute overlap of instructions instruction queue. Hence there is fetch
is very limited execute overlap leading to very fast
program execution
Used in single processor system Designed to operate in multiprocessor
environment (minimum and maximum
5
mode)
DIFFERENCES WITH INTEL 8085
8085 MICROPROCESSOR 8086 MICROPROCESSOR
It is slower It is faster
6
CPU ARCHITECTURE
7
Architecture
8
BUS INTERFACE UNIT (BIU)
9
EXECUTION UNIT (EU)
Performs instruction execution and also tells BIU where to fetch instructions
and data during different machine cycles
Reads instruction opcodes from register 1 of IQ and decodes and executes this
instruction
Performs internal arithmetic, logical and data transfer operations
Tells to BIU the memory address from where the data or next instruction
needs to be fetched as a part of instruction execution during OF and Memory
read/Write machine cycles.
10
ARITHMETIC AND LOGIC UNIT (ALU)
11
REGISTERS
12
GENERAL PURPOSE REGISTERS
13
Effective DEFAULT
Physical Logical address SEGMENT
MEMORY REGISTERS address MEMORY POINTER
Address (SBA:EA) REGISTER
Memory segmentation
(EA) REGISTER
00000H
00001H
FFFFFH
Different types of addresses
Physical Address: The 20 bit address that is physically loaded on the address bus
of 8086 system.
Segment Base address (SBA): Upper 16 bits of the 20 bit physical address of the
starting location of a memory segment. SBA is available from the designated
segment register of the memory segment to be accessed.
Base address: The physical address of the starting location of a memory segment.
The last 4 bits of the base address is always 0000 binary.
Effective address/Displacement address (EA): The number of memory locations
after which a given memory register occurs from the starting location of a memory
segment. In other words, the displacement of a given memory location with
respect to the base address of a memory segment is known as effective address.
EA is available either from the designated memory pointer register dedicated for a
given task (e.g. code fetch/PUSH-POP/Data read-write operation) or as mentioned
in the instruction being executed.
A program refers to a memory location as logical address pairs; i.e. in terms of
SBA and EA (symbolically denoted as: SBA:EA)
During execution of the program, the Physical address generator (PAG) converts
the logical address into 20 bit physical address; that is loaded on address bus.
15
Pin Diagram of 8086
Common pins/signals
AD15-AD0, A19/S6, A18/S5, A17/S4,
A16/S3, CLK, GnD, Vss, NMI, INTR, BHE-
bar/S7, MN/MX-bar, RD-bar, TEST-bar,
READY, RESET
Minimum mode signals/pins
HOLD, HLDA, WR-bar, M/IO-bar, DT/R-
bar, DEN-bar, ALE, INTA-bar
Maximum mode signals/Pins
RQ0-bar/GT0-bar, RQ1-bar/GT1-bar,
LOCK-bar, S2-bar, S1-bar, S0-bar, QS0,
QS1
16
de-multiplexing of Address data and
Control pins using ALE
17
DT/R-bar
and DEN-
bar signals
used for
buffered
systems
18
Deriving Active low extended memory control
signals (using M/IO-bar, WR-bar and RD-bar)
M/IO-bar RD-bar WR-bar Control
Operation
0 0 1 I/O Read
0 1 0 I/O Write
1 0 1 Memory Read
1 1 0 Memory write
19
20
The 8086
Minimum
Mode system
21
Bus activity/Timing
diagram for the
minimum mode
operation of 8086
(MRMC and MWMC) with
one WAIT state in each
bus cycle (observe
READY=0).
The M/IO-bar signal has
logic state 1 and is not
shown in the diagram
22
BHE-bar/S7
Bank High Enable/Bus High The S7 state is always 0 for 8086 and
enable available from T2 onwards
During T1 clock state, the BHE- The BHE signal is used to enable data onto
bar/S7 pin carries BHE-bar signal the most significant half of the data bus:
that varies according to D15-D8
following rule: The eight bit oriented devices tied to the
upper half of the data bus uses BHE signal
to derive chip select signals
4 Odd 0 1 1 Odd
23
D15-D8
Word
Even 1 0 1 Even D7-D0
CS bar from BHE/S7
24
HOLD and HLDA HOLD HRQ
26
LOCK bar pin (output)
27