[comp.sys.ibm.pc] Mysterious Interrupt

keithe@tekgvs.LABS.TEK.COM (Keith Ericson) (04/20/89)

In article <7970@pyr.gatech.EDU> is813cs@pyr.gatech.edu (Cris Simpson) writes:
>I am developing an interrupt driven data collection system running
>on a Compaq 386-25.  It works fine, except that I am getting
>tripped up by an unknown interrupt, which makes my latency high (1.8ms).
>It occurs at about 230Hz.  Can anyone suggest what this might be?


(I'm responding to offer some help, and not to generate flames.  So
back off if you feel so inclined, eh?)

We have been told by sources we hold to be reliable that the AMD
version of the interrupt controller (the 8259 as I recall) can suffer
from a problem with the internal pull-up resistors.  In the process
of doing a die-shrink these resistors became so high in value as to be
inneffective in preventing noise from being interpreted as valid
interrupt inputs.

We have developed a work-around with a SIP resistor package to add
330-ohm (I think it is) resistor to +5 to stiffen up the pull-up
resistors on these interrupt controllers.  You can probably come up
with something as well.  If you know enough to figure it out from
this description you're likely competent enough to do it.  If you
_can't_ figure it out then don't try it and don't ask for more
details - you risk really screwing up your computer.


kEITHe

geoffs@gssc.UUCP (Geoff Shapiro) (04/22/89)

In article <7970@pyr.gatech.EDU> is813cs@pyr.gatech.edu (Cris Simpson) writes:
>I am developing an interrupt driven data collection system running
>on a Compaq 386-25.  It works fine, except that I am getting
>tripped up by an unknown interrupt, which makes my latency high (1.8ms).
>It occurs at about 230Hz.  Can anyone suggest what this might be?
>I'm getting 6000 ints/sec except when I'm in the mystery int?
>

What kind of hardware are you using to do the data collection? Perhaps an
A-to-D card which is generating interrupts at a frequent rate? The reason that
I ask is because I have seen similar behaviors here when running cards in
the bus which are generating too much noise on the interrupt request lines
of the bus.

To understand this you must understand the 8259 and how it handles noisy
interrupt input lines. A little known feature of the 8259 is that when noise
generates a pulse on one or more of any of the interrupt input lines and this
pulse is not of the length or level required for recognition as an unqualified
interrupt source, the 8259 will internally trigger an IR7. Normally, in the
DOS system IR7 is vectored to a null interrupt service handler and therefore
is blown off harmlessly except for the degradation of system throughput
when the lines are real noisy.

I would check this out as a possible source of your problems...

...!{tektronix!verdix}!sequent!gssc!geoffs             Geoff Shapiro
(503) 641-2200                                         Graphic Software Systems
* This space intentionally  *                          9590 S.W. Gemini Dr.
* left blank.               *                          Beaverton, OR  97005