Week 5 8086 Hardware Jan 2018
Week 5 8086 Hardware Jan 2018
“1”-Level
Noise Margin
Guaranteed Forbidden Accepted
Output Levels Forbidden
Region Input Levels
“0”-Level
0 Logic Level Noise Margin
• 8086 can work in two
modes: Minimum
mode and Maximum
mode
• Pins-33 is used to
select mode
• 20-bit address bus & 16 bit
data bus
• Does not have separate
address and data bus
• Multiplexed bus system
• Pins 24 – 31 have different
functions in two modes
Pin-33: Input pin
to select Min/ Max
5
+5V
33 33
GND
AD0-AD15 (Bidirectional)
Address/Data bus
7
Bus Demultiplexing
A19
AD15 ADDRESS BUS
AD0
DATA BUS
8086
• ALE (address latch enable) output: Controls latches.
• 8086 uses ALE to latch the address/status information
that appear briefly on the multiplexed bus. Thus ALE is
used to demultiplex address and data bus.
• This makes the latched address information available
for long enough time for correct interfacing, e.g. to
memory
Bus Buffering
Fan-out is a term that defines the maximum number
of digital inputs that the output of a single logic gate
can feed.
Most transistor-transistor logic ( TTL ) gates can feed
up to 10 other digital gates or devices. Thus, a
typical TTL gate has a fan-out of 10.
Buffering is often needed if more TTL loads are
connected to any bus signal.
Buffering introduces a small delay in the buffered
signals. This is acceptable unless memory or I/O
devices operate close to the maximum bus speed
For demuxed signals: Latches used for demuxing, e.g.
74LS373, can also provide the buffering for the
demuxed lines.
For non-demuxed bidirectional data signals (pin used
for both in and out), buffering is often accomplished
with the 74ALS245 bidirectional bus buffer
ALE
A19
AD15 ADDRESS BUS
AD0
BUS
BUS Trans-
Trans- receiver
DATA BUS
receiver
DEN
DT/R
DEN
DT/R
00001H
00000H
BHE
D7 - D0 D15 - D8
INTR
Input
8086 Device
INTA
• To increase number of devices to be served in
interrupt mode, 8259 IC is used with 8086 and INTR
& INTA pins are used to interface between these.
• To enable IF flag bit, STI instruction is used
• To clear IF flag bit, CLI instruction is used
NMI input: Hardware non-maskable interrupt request.
Served regardless of the status of the IF flag bit.
Application: To detect power failure in small system
To detect parity error while reading data from memory
Test for low
8087
8086
Math
processor TEST Busy Coprocessor
O/P
Synchronizes
processor execution to external events
• TEST input:
• Example: interfacing 8086 with the 8087
math coprocessor. Checked by the WAIT
instruction that precedes each floating point
(FP) instruction. If high, the instruction waits
till input signal goes low and then gives FP
instruction to the math processor
8086
Main Memory
storage/
devices
• HOLD input: Input signal to the processor form the bus masters as a
request to grant the control of the bus. Usually used by the DMA
controller to get the control of the bus. In response, the P stops
execution and places the data, address, and control buses at High Z
state (floats them).
• HLDA output: Acknowledge signal by the processor to the bus
master requesting the control of the bus through HOLD. The
acknowledge is asserted high, when the processor accepts HOLD.
• Acknowledges that the processor has entered a hold state in response to
HOLD.
2.5 MHz
PCLK
Manual Reset
push button
Switch
READY
26
8086 Microprocessor
Pins and Signals Maximum mode signals
27
8086 Microprocessor
Pins and Signals Maximum mode signals
28
• S0,S1,S2 outputs: Used
to interface 8288 bus
controller with 8086
33
running in maximum
mode S2
28
8 S1
0 27
8288
8 26
S0
16-bit
with
#DEN active
Fully DeMuxed and buffered 8086
Minimum and Maximum Modes
• MN/#MX input on 8088/8086 selects min (0V) or max (+V) mode
• Minimum mode is the least expensive way to configure a 8086/8088 system:
– Bus control signals are generated directly by processor
– Good backward compatibility with earlier 8085A 8 bit processor
- Same control signals
- Support same peripherals
• Maximum mode provides greater versatility at higher cost.
– New control signals introduced to support 8087 coprocessor (e.g. QS0 &QS1) and
multiprocessor operation (e.g. #RQ/GT0 & RQ/GT1)
– Control signals omitted must be externally generated using an external bus
controller, e.g. 8288. The controller decodes those control signals from the
now compressed form of 3 control bits (#S0,#S1,#S2)
– Can be used with the 8087 math coprocessor
– Can be used with multiprocessor systems
• Maximum mode no longer supported since 80286
System design using 8086 in minimum mode
System design using 8086 in minimum mode
Use of 8086 in the Minimum Mode
Address
Demultiplexing
Address
Decoding
Direction
Bidirectional
AD Bus Data Buffering
bus
20-Pin Chip
Familiar 8088/8086
Outputs
More specific Outputs,
Selects Replace #RD, #WR,
Mode: M/#IO
1. I/O Bus
2. System Bus
8086 Maximum Mode
8288 Bus Controller chip: Necessary in this mode.
Generates essential control signals not provided directly by P
form the S0-S2 O/Ps