Is there something special about PCI interrupt pins - Page 1
Forum section: electronics / general

author: coppice
author_rank: Super Contributor
timestamp: August 04, 2024, 12:05:34 pm
content: Is there something special about the interrupt signals on a PCI bus, which makes them more susceptible than other pins to bad contact?I have had a situation a number of times over the years, which just happened again. I have an old PC that I just put an old PCI (not PCIe) card into for something special I am doing. It seemed to work fine at first, being scanned and registered by the Fedora OS, and its driver loaded and seemingly was working normally. When I went to use the card it wasn't sending anything to the computer. It seemed like the interrupt was not interrupting. I took out the card, gave things a good vacuum clean and a wipe with IPA. Now everything is fine. Quite a few pins have to be working properly for the card to be seen properly by the computer. Its PCI. Its parallel. All those signal pins have to be OK. The odd ground connection could be bad, and you wouldn't notice, but the wide bus needs to work. Yet, if I have a contact problem it always seems to be that the card is not interrupting. Does anyone know why? Are the interrupt pins in a particularly dirt collecting part of the edge connector? Are they more susceptible to some resistance in the contacts?

author: tooki
author_rank: Super Contributor
timestamp: August 04, 2024, 03:16:03 pm
content: Are you reallysureit’s just not interrupting? It seems to me that many conditions could result in a card not appearing to send anything, including many situations where the interrupt lines are perfectly fine.Electrically speaking, apparently the interrupt lines on PCI are open-drain, while the others are push-pull. I suppose that in theory this could create some difference in behavior between the types of lines.I can’t imagine that the difference — if it even exists — has anything to do with the physical position of the lines in the connector, especially in regard to contamination. The airflow patterns in every computer are different, and in fact will be individually influenced by the expansion cards installed. So I would expect contamination-based problems to be highly model-specific.The only possible effect I could see with respect to pin position is that the interrupt lines are practically at the end of the connector (closest to the rear panel, as it happens), and maaaaaybe this affects the angle of the connector as it seats, making it either not seat fully, or to have differences in the wiping action of the contact springs on the contact fingers.

author: Postal2
author_rank: Frequent Contributor
timestamp: August 04, 2024, 04:01:59 pm
content: Quote from: coppice on August 04, 2024, 12:05:34 pmI will tell you my story, it will help you think more competently. I have a SIS motherboard with Athlon 64 on it in socket 754. 2GB RAM (two strips of 1). At first I noticed that if I move the memory strip, the computer freezes. Also, if I knock on the socket, the computer freezes. By the way, this is where the myth about the unreliability of this socket comes from. Then I bought memory modules on Aliexpress. However, along with the memory modules, I ordered polymer capacitors. Replacing the memory modules solved the problem, but I also decided to replace some of the capacitors - and this also solved the problem! Nevertheless, I installed new memory strips. Everything worked well, but I wanted to replace all the capacitors. I bought more capacitors, but according to the measurements, they turned out to be worse than the first ones. I still installed them, and after a short time, my PCI bus began to fall off. I have a simple NEC board with 5 USB ports plugged in, and they gradually stopped working. The PCI slot closest to the processor worked a little longer. I know the problem is in the capacitors, but I'm just too lazy to change them. The board with empty slots works fine, the 4 built-in USBs create some inconvenience, but not very serious.

author: nctnico
author_rank: Super Contributor
timestamp: August 04, 2024, 04:15:58 pm
content: It is also possible there is a cracked component or bad solder joint on the card. When the card is removed, contact is restored until the next thermal cycle opens the contact.

author: magic
author_rank: Super Contributor
timestamp: August 04, 2024, 04:39:24 pm
content: PCI cards are like that. Sometimes they show up but most registers read as 0xffff, or they simply fail to work for unknown other reasons. Pull them out, put back it, they are OK. I doubt that it's only a matter of INT pins, they are flaky all round.

author: coppice
author_rank: Super Contributor
timestamp: August 04, 2024, 04:55:43 pm
content: Quote from: nctnico on August 04, 2024, 04:15:58 pmYep, that's pretty typical of edge connectors. In the 70s we used to be unplugging, cleaning, and reseating PCBs in edge connectors all the time. These days they are much more reliable, even though superficially they look much cruder and cheaper. So, why does a 32 bit bus seem to have all 32 bits working fine, and its just the interrupt giving trouble on numerous bits of hardware?

author: coppice
author_rank: Super Contributor
timestamp: August 04, 2024, 05:03:37 pm
content: Quote from: magic on August 04, 2024, 04:39:24 pmIf I were observing random pins failing due to dirt, and remembering only the times the interrupt pin was to blame, because it gave more subtle proiblems, I would be looking at the interrupt issue being less than 3% of all the times a PCI didn't work properly. I haven't been counting over the years, but it sure doesn't feel like that's the case.

author: magic
author_rank: Super Contributor
timestamp: August 04, 2024, 05:11:19 pm
content: But you haven't verified that it's an interrupt issue. Drivers may be getting stuck for any number of reasons, hardware may be getting stuck for any number of reasons, and even interrupts may not happen for any number of reasons, such as basically nothing reaches the card besides the simplest configuration space accesses used to recognize it and load the right driver.Next time it happens scan the bus with a continuity tester(And remember that INTx pins are swapped on different slots.)

author: coppice
author_rank: Super Contributor
timestamp: August 04, 2024, 05:15:43 pm
content: Quote from: tooki on August 04, 2024, 03:16:03 pmI'm not sure. I didn't electrically verify things with a scope. However, if the registers are functioning normally, with no flakiness, and things sent to the card and read back all do the right things, the bulk of the signal lines must be functioning OK.Quote from: tooki on August 04, 2024, 03:16:03 pmThat's the kind of thing I was thinking might have some subtle behaviour, but I'm not sure what.Quote from: tooki on August 04, 2024, 03:16:03 pmThe interrupt pins are near one end of the connector, but they are not the very last pins. JTAG, +-12V and 5V come after. Most times you won't be relying on JTAG or +-12V, and if one or two of the 5V pins aren't working a low consumption card is going to work fine. It doesn't seem to create much significance in the interrupt pin's position, though.

author: nctnico
author_rank: Super Contributor
timestamp: August 04, 2024, 05:19:46 pm
content: Quote from: coppice on August 04, 2024, 04:55:43 pmI'm writing: the card is broken. Especially when it misbehaves in different PCs. PCI slots have limited mating cycles (30 or so) so it is possible to wear a PCI slot connector (been there, done that). But if a problem moves along with a PCI card, then the problem isn't the motherboard but the card itself. And more specifically, a limited number of pins to components. Not the PCI edge connector itself.

author: coppice
author_rank: Super Contributor
timestamp: August 04, 2024, 05:20:17 pm
content: Quote from: magic on August 04, 2024, 05:11:19 pmIn the case that happened this week the drivers aren't stuck. Status read from the card was read correctly. Things written to the card were going out correctly. It was only when an interrupt was involved for incoming data that things didn't work. I've seen this behaviour a number of times over the years, when a vacuum cleaner and IPA solved the problem.

author: coppice
author_rank: Super Contributor
timestamp: August 04, 2024, 05:22:17 pm
content: Quote from: nctnico on August 04, 2024, 05:19:46 pmYou misunderstand. I am not talking about a single card, a single computer, or a single model of either. If the problem were broken cards, why would they all be broken in the same way?

author: Postal2
author_rank: Frequent Contributor
timestamp: August 04, 2024, 05:25:35 pm
content: Quote from: coppice on August 04, 2024, 05:20:17 pmYou probably think I didn't do it. Don't make my mistakes, change the capacitors.

author: coppice
author_rank: Super Contributor
timestamp: August 04, 2024, 05:33:57 pm
content: Quote from: Postal2 on August 04, 2024, 05:25:35 pmAnother deranged "capacitors are the cause of all human ills" nut job. Most capacitors are fine upstanding citizens, doing a bang up job.