From: Keith R. Williams
Subject: Re: ISA IRQ signal active how long?
Date: Sat, 5 Oct 2002 22:00:09 -0400
X-Newsreader: MicroPlanet Gravity v2.60
In article , email@example.com says...
> Ralph Wade Phillips wrote in message
> > Howdy!
> > "Norm Dresner" wrote in message
> > news:STnn9.firstname.lastname@example.org...
> > > > You've not worked much with the ISA IRQ crap design, have
> > > It's
> > > > active HIGH. It's SUPPOSED to be totem-pole.
> > > >
> > > > Yes, it's crap. It's worse than crap, it's what happens when
> > you
> > > > feed crap to a horse - you get double-crap. But it IS. Sigh.
> > > >
> > > > (Yes, the proper way to handle IRQs is active-low
> > level-sensitive
> > > > with open-collector drivers. Not how IBM did it, however.)
> > > >
> > >
> > > Regardless of your opinion of the design, it is what it is.
> > Yep.
> > >
> > > Also, if the interrupt is to be shared -- and it *does* work --
> > OC
> > > is the only way.
> > OK. So - you have device A and device B both using IRQ 4, say.
> > Both are OC devices. So, both turn on the outputs so that they can pull
> > line low (remember - PC ISQ IRQs are active-high edge-triggered!).
> > Exactly HOW does device A signal an IRQ? Device B has the line
> > LOW - so there's no edge to trigger the PIC.
> > "Well, reset it!"
> > And promptly screw up OTHER cards on the ISA bus.
> > I don't disagree that OC is the way to go for shared IRQs. But
> > you go OC, you just destroyed ANY possibility of having the IRQ work
> > if it IS shared ... TriState, and activate ONLY when not being IRQed is
> > way to do it. That, or forget ISA and use something with a rational
> > interrupt design ...
> > RwP
> When I've used shared interrupts on an ISA-bus they were devices that were
> _never_, _ever_ active at the same time.
Cool! Then they aren't "shared" are they?
You must admit that interrupts that are "_never_, _ever_ active
at the same time" is a rather large restriction to put on a
> Perhaps a serial line and an
> industrial counter/timer card or some other such combination. I'm not
> advocating setting all of your ISA devices to IRQ9 the way Windoze does it,
> but it is possible to share.
No it is *not*. It you attempt it, well I hope your boss doesn't
care about reliability or serviceability.
> In practice it works with edge-triggered
> IRQ's where the line is pulled high by a resistor and either device can
> pull it low momentarily and then let it go high to trigger the interrupt.
Not reliably. Again, you wouldn't want me as your team lead!
Lost interrupts can cause all sorts of hell. There is no way to
guarantee there won't be a lost interrupt with such a stupid
The ISA bus was designed by lame-brains. There is no excuse for
supporting their *stupid* design.