Sigals 8086
Sigals 8086
Sigals 8086
0 1 Stack
1(HIGH) 0 Code or None
1 1 Data
This information indicates which relocation register is
S6 isused
presently being 0 (LOW)
for data accessing.
These lines float to 3-state OFF during local bus “hold
acknowledge”.
Status Pins S0-S7
38 S3
37 S4
36 S5
35 S6
8086 34 S7
28
27
26
Continued…
Pin Description
Continued…
S2* S1* S0* Characteristics
These0(LOW)
signals float
0 to03-state Interrupt
OFF in “hold acknowledge”.
acknowledge
These status lines are encoded as shown.
0 0 1 Read I/O Port
0 1 0 Write I/O Port
0 1 1 Halt
1(HIGH) 0 0 Code Access
1 0 1 Read Memory
1 1 0 Write Memory
1 1 1 Passive
Continued…
Status Details Indication
0 0 0 Interrupt Acknowledge
Continued…
----- Value of Interrupt Enable flag
31 HOLD
30 HLDA
29
28
8086
27
26
25 ALE
24
Continued…
Pin Description
HOLD, HLDA – Pin no. 31, 30 – Type I/O
HOLD: indicates that another master is requesting a local
bus “hold”. To be acknowledged, HOLD must be active
HIGH. The processor receiving the “hold” request will issue
HLDA (HIGH) as an acknowledgement in the middle of a T1
clock cycle. Simultaneous with the issuance of HLDA the
processor will float the local bus and control lines. After
HOLD is detected as being LOW, the processor will LOWer
the HLDA, and when the processor needs to run another
cycle, it will again drive the local bus and control lines.
The same rules as apply regarding when the local bus will
be released.
HOLD is not an asynchronous input. External Continued…
synchronization should be provided if the system can not
otherwise guarantee the setup time.
WR* - Pin no. 29 – Type O
Write: indicates that the processor is performing a write
memory or write I/O cycle, depending on the state of the
M/IO* signal. WR* is active for T2, T3 and TW of any write
cycle. It is active LOW, and floats to 3-state OFF in local bus
“hold acknowledge”.
30
29
28
8086
27
26
25 QS0
24 QS1
Continued…
Pin Description:
RQ*/GT0*, RQ*/GT1* - Pin no. 30, 31 – Type I/O
Request /Grant: pins are used by other local bus masters to
force the processor to release the local bus at the end of the
processor’s current bus cycle. Each pin is bidirectional with
RQ*/GT0* having higher priority than RQ*/GT1*. RQ*/GT* has
an internal pull up resistor so may be left unconnected. The
request/grant sequence is as follows:
Continued…
1. A pulse of 1 CLK wide from another local bus master
indicates a local bus request (“hold”) to the 8086 (pulse 1)
2. During a T4 or T1 clock cycle, a pulse 1 CLK wide from the
8086 to the requesting master (pulse 2), indicates that the
8086 has allowed the local bus to float and that it will enter
the “hold acknowledge” state at the next CLK. The CPU’s
bus interface unit is disconnected logically from the local
bus during “hold acknowledge”.
3. A pulse 1 CLK wide from the requesting master indicates
to the 8086 (pulse 3) that the “hold” request is about to end
and that the 8086 can reclaim the local bus at the next
CLK. Continued…
Each master-master exchange of the local bus is a sequence
of 3 pulses. There must be one dead CLK cycle after each
bus exchange. Pulses are active LOW.
If the request is made while the CPU is performing a memory
cycle, it will release the local bus during T4 of the cycle when
all the following conditions are met:
• Request occurs on or before T2.
• Current cycle is not the low byte of a word (on an odd
address)
• Current cycle is not the first acknowledge of an interrupt
acknowledge sequence.
• A locked instruction is not currently executing. Continued…
LOCK* - Pin no. 29 – Type O
LOCK* : output indicates that other system bus masters are not
to gain control of the system bus while LOCK* is active LOW.
The LOCK* signal is activated by the “LOCK” prefix instruction
and remains active until the completion of the next instruction.
This signal is active LOW, and floats to 3-state OFF in “hold
acknowledge”.
QS1, QS0 – Pin no. 24, 25 – Type O
Queue Status: the queue status is valid during the CLK cycle
after which the queue operation is performed.
QS1 and QS0 provide status to allow external tracking of the
internal 8086 instruction queue.
Continued…
QS1 QS0 Characteristics
0(LOW) 0 No operation
0 1 First Byte of Op Code from
Queue
1 (HIGH) 0 Empty the Queue
Continued…
Pin Description:
Continued…
BHE* A0 Characteristics
BHE*/S7-0 Pin No. 034 – Type O word
Whole
Bus High Enable / Status: During T1 the Bus High Enable signal (BHE*)
0 used to enable
should be 1 Upper
data bytethe
onto from
most/ tosignificant
odd addresshalf of the data bus,
pins D15-D8.
1 Eight0bit oriented
Lowerdevices
byte fromtied/ to the
even upper half of the bus would
address
normally use BHE* to condition chip select functions. BHE* is LOW during T1
1 1 None
for read, write, and interrupt acknowledge cycles when a byte is to be
transferred on the high portion of the bus. The S,7 status information is
available during T2, T3 and T4. The signal is active LOW and floats to 3-state
OFF in “hold”. It is LOW during T1 for the first interrupt acknowledge cycle.
Continued…
MN/MX* - Pin no. 33 – Type - I
Minimum / Maximum: indicates what mode the processor
is to operate in.
If the local bus is idle when the request is made the two
possible events will follow:
• Local bus will be released during the next clock.
• A memory cycle will start within 3 clocks. Now the four
rules
for a currently active memory cycle apply with condition
number 1 already satisfied.