03.01.2015 Views

80C186EC/80C188EC Microprocessor User's Manual

80C186EC/80C188EC Microprocessor User's Manual

80C186EC/80C188EC Microprocessor User's Manual

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

INTERRUPT CONTROL UNIT<br />

The AD15:13 pins are used for CAS2:0 information only during interrupt acknowledge cycles.<br />

There is no need to latch the AD15:13/CAS2:0 signals during interrupt acknowledge cycles; the<br />

8259A family devices have internal CAS latches that are activated by the INTA signal. The<br />

8259A family devices ignore the state of the CAS lines except during interrupt acknowledge cycles.<br />

The AD15:13/CAS2:0 lines begin driving the Slave ID as soon as it is available internally.<br />

8.6.4.2 Timing Constraints<br />

There are several timing constraints to be aware of when connecting an external 8259 device. The<br />

following discussion is based on an analysis of the 82C59A-2 device specifications. The<br />

82C59A-2 is the fastest 8259A family device currently available from Intel.<br />

Minimum RD/INTA Pulse Width (T RLRH ) can be met for read cycles by inserting wait states (with<br />

the Chip-Select Unit or an external wait state generator). Minimum INTA pulse width can be met<br />

for interrupt acknowledge cycles by inserting wait states as well.<br />

Minimum Write Pulse Width (T WLWH ) and Minimum Data Setup Time (T DVWH ) can be met by inserting<br />

wait states into write cycles to the 82C59A-2.<br />

Data Float After RD or INTA (T RHDZ ) can be guaranteed only below a processor frequency of<br />

11.76 MHz. Above 11.76 MHz, the 82C59A-2 device (or devices) must be buffered with a transceiver<br />

(a 74F245 or the equivalent). Without the transceiver, the 82C59-A2 device does not stop<br />

driving the data bus in time for the next bus cycle, causing bus contention.<br />

Back-to-Back Reads (T RHRL ) and Back-to-Back Writes (T WHWL ) both refer to the recovery time<br />

required by the 82C59A-2 between two accesses of the same type. This recovery time specification<br />

is violated above a processor frequency of 12.5 MHz. The simplest way to solve this problem<br />

is to insert a “software wait state” in the programming code. The most common software wait<br />

state is the “JMP $+2” instruction. “JMP $+2” ensures an uninterruptable delay of 14 clock cycles.<br />

Figure 8-30 shows the use of the “JMP $+2” instruction in a typical programming sequence.<br />

MOV<br />

DX, EXT59_ODD;ACCESS IMR (A0=1)<br />

MOV<br />

AL, 07FH;UNMASK IR7 ONLY<br />

OUT<br />

DX, AL<br />

JMP $+2 ;SOFTWARE WAIT STATE<br />

MOV DX, EXT59_EVN ;READ ISR (A0=1, ISR<br />

;WILL BE SELECTED)<br />

MOV<br />

AL, 0BH;READ ISR COMMAND<br />

OUT<br />

DX, AL<br />

Figure 8-30. Software Wait State for External 82C59A-2<br />

8-46

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!