MPMC Unit 1
MPMC Unit 1
MPMC Unit 1
0 0 Alternate data
0 1 Stack
1 0 Code or none
1 1 data
Signal Descriptions of 8086 cntd..
• These lines float to tri-state off (tri-stated)
during the local bus hold acknowledge
• The status line S6 is always low (logical).
• The address bits are separated from the status
bits using latches controlled by the ALE signal
Signal Descriptions of 8086 cntd..
BHE/S7 – Bus High Enable/Status:
• The bus high enable signal is used to indicate the transfer of data
over the higher order (D15 – D8) data bus as shown in Table
• It goes low for the data transfers over D15 – D8 and is used to
derive chip selects of odd address memory bank or peripherals.
• BHE is low during T1 for read, write and interrupt acknowledge
cycles, whenever a byte is to be transferred on the higher byte of
the data bus. BHE A0 Indication
0 0 Whole word
0 1 Upper byte from or to odd address
1 0 Lower byte from or to even address
1 1 None
Signal Descriptions of 8086 cntd..
• The status information is available during T2,
T3 and T4.
• The signal is active low and is tri-stated during
“Hold”.
• It is low during T1 for the first pulse of the
interrupt acknowledge cycle. S7 is not
currently used.
Signal Descriptions of 8086 cntd..
RD – READ
• Read signal, when low, indicates the
peripherals that the processor is performing a
memory or I/O read operation.
• RD is active low and shows the state for T2,
T3, Tw of any read cycle.
• The signal remains tri-stated during the ‘HOLD
Acknowledge’
Signal Descriptions of 8086 cntd..
READY
• This is the acknowledgement from the slow devices or
memory that they have completed the data transfer.
• This is an input signal to the 8086.
• This signal is active high.
INTR – Interrupt request
• This is a level triggered input
• This is sampled during the last clock cycle of each
instruction to determine the availability of the request
• If any interrupt request is pending the processor enters
the interrupt acknowledge cycle.
Signal Descriptions of 8086 cntd..
• This can be internally masked by resetting the
interrupt enable flag.
• This signal is active high.
TEST
• This input is examined by a ‘wait’ instruction.
• If the TEST input goes low, execution will
continue, else, the processor remains in an
idle state.
Signal Descriptions of 8086 cntd..
NMI – Non-maskable Interrupt.
• This is an edge triggered input which causes a
type 2 interrupt.
• The NMI is not maskable internally by
software.
• A transition from low to high initiates the
interrupt response at the end of the current
instruction.
Signal Descriptions of 8086 cntd..
RESET
• This input causes the processor to terminate the
current activity and start execution from FFFF0H
• The signal is active high and must be active for at least
four clock cycles.
CLK – Clock Input
• The clock input provides the basic timing for processor
operation and bus control activity.
• It’s an asymmetric square wave with 33% duty cycle.
• The range of frequency for different 8086 versions is
from 5 MHz to 10 MHz.
Signal Descriptions of 8086 cntd..
Vcc
• 8086 requires +5V power supply for the
operation of the internal circuit.
GND
• This is the ground for the internal circuit.
MN/MX.
• The logic level at this pin decides whether the
processor is to operate in either minimum (Single
processor) or maximum (multi processor) mode.
Signal Descriptions of 8086 cntd..
The following pin functions are for the minimum
mode operation of 8086.
M/I/O – Memory/IO
• This is a status line logically equivalent to S2 in the
maximum mode.
• Low – I/O operation
High – Memory operation.
• This line becomes active in the previous T4 and
remains active till final T4 of the current cycle.
• It is tri-stated during local bus “hold acknowledge”
Signal Descriptions of 8086 cntd..
INTA – Interrupt acknowledge
• This signal is used as a read strobe for interrupt
acknowledge cycles
• In other words, when it goes low, it means that the
processor has accepted the interrupt.
• It is active low during T2,T3 and Tw of each interrupt
acknowledge cycle.
ALE – Address Latch Enable
• This output signal indicates that availability of the valid
address on the address / data lines, and is connected to
latch enable input of latches
• This signal is active high and is never tri-stated.
Signal Descriptions of 8086 cntd..
DT/R – Data Transmit / Receive
• This output is used to decide the direction of data
flow through the transreceivers (bidirectional
buffers).
• Data transmission – signal is high.
data receiving – signal is low.
• Logically, this is equivalent to S1 in maximum
mode.
• It’s timing is the same as M/I/O.
• This is tri-stated during ‘hold acknowledge’
Signal Descriptions of 8086 cntd..
DEN – Data Enable
• This signal indicates the availability of valid data
over the address / data lines.
• It is used to enable the transreceivers to separate
the data from the multiplexed address / data
signal.
• It is active from the middle of T2 until the middle
of T4.
• DEN is tri-stated during hold acknowledge cycle
Signal Descriptions of 8086 cntd..
HOLD, HLDA – Hold, Hold Acknowledge
• When the HOLD line goes high, it indicates to the
processor that another master is requesting the bus
access.
• The processor, after receiving the HOLD request, issues
the HOLD acknowledge signal on HLDA pin, in the
middle of the next clock cycle after completing the
current bus cycle. At the same time, the processor
floats the local bus and control lines.
• When the processor detects the HOLD line low, it
lowers the HLDA signal.
Signal Descriptions of 8086 cntd..
The following pin functions are applicable for maximum mode
operation of 8086.
S2, S1, S0 – status lines
• These are the status lines which indicate the type of
operation, being carried out by the processor.
• These become active during T4 of the previous cycle and
remain active during T1 and T2 of the current bus cycle.
• The status lines return to passive state during T3 of the
current bus cycle so that they may again become active for
the next bus cycle during T4.
• The various operations indicated by these status lines are
given in the table 1.3.
Signal Descriptions of 8086 cntd..
Table 1.3
S2 S1 S0 Indication
0 0 0 Interrupt acknowledge
0 0 1 Read I/O port
0 1 0 Write I/O port
0 1 1 Halt
1 0 0 Code access
1 0 1 Read Memory
1 1 0 Write Memory
1 1 1 Passive
Signal Descriptions of 8086 cntd..
LOCK
• This output pin indicates that other system bus masters
will be prevented from gaining the system bus, while
LOCK signal is low.
• The LOCK signal is activated by the ‘LOCK’ prefix
instruction and remains active until the completion of
the next instruction.
• This floats to tri-state off during ‘hold acknowledge’
• When CPU is executing a critical instruction which
requires the system bus, the LOCK prefix instruction
ensure that other processors connected in the system
will not gain the control of the bus.
Signal Descriptions of 8086 cntd..
QS1, QS0 – Queue Status
• These lines give information about the status
of the code-prefetch queue.
• These are active during the CLK cycle after
which the queue operation is performed
• These lines indicate various operations as
indicated in the table 1.4.
Signal Descriptions of 8086 cntd..
Table 1.4
QS1 QS0 Indication
0 0 No Operation
0 1 First byte of opcode from the queue
1 0 Empty queue
1 1 Subsequent byte from the queue
The 8086 has two hardware interrupt pins, i.e. NMI and INTR. NMI is a
non-maskable interrupt and INTR is a maskable interrupt having lower
priority. One more interrupt pin associated is INTA called interrupt
acknowledge.
NMI
It is a single non-maskable interrupt pin (NMI) having higher priority
than the maskable interrupt request pin (INTR)and it is of type 2
interrupt.
INTR
• The INTR is a maskable interrupt because the microprocessor will be
interrupted only if interrupts are enabled using set interrupt flag
instruction. It should not be enabled using clear interrupt Flag
instruction.
Software Interrupts