Special Supplement to IBM Personal Systems Technical
Solutions (p. 74-78)
The drivers for interrupt request lines in PC/XT/AT systems must first pull the request line down to a 0 (zero), then rapidly up to a 1. The circuits that cause this transition come in two types. Type 1 is called a TTL, or totem-pole, driver. The name totem pole comes from the configuration of stacking the driver components serially above one another, as depicted in Figure A.
In Figure A, in the circuit on the left, the top switch is off and the bottom switch is on, which pulls the output down to a 0. This is the situation before the edge-triggered interrupt transition.
In the circuit on the right, the top switch is on and the bottom switch is off, which pulls the output up to a 1. This is the situation after the edge-triggered interrupt transition.
In a system with concurrent I/O, interrupts cannot be shared between two PC/XT/AT cards, or between a PC/XT/AT card and an EISA adapter that is on either the system board or another card.
In Figure B, two PC/XT/AT adapters are connected on the EISA bus to share an interrupt. As before, the circuit on the left has not presented an edge-triggered interrupt, and the circuit on the right has just completed an edge-triggered interrupt transition from low to high. In this condition, a temporary short circuit exists as current flows through components R2, Q2, D2, through the connection on the interrupt request line, and finally through Q3.
The length of time that the short circuit exists is a design variable that is not standardized in PC/XT/AT cards, but in any case, the short circuit rapidly heats the involved components.
Eventually, either months or microseconds later, a component will fail due to the short circuit. The actual time of failure depends on how frequently the interrupts are requested, and how long the components heat each time.
Some PC/XT/AT cards have a second type of driver that is called tri-state or 3-state. This design is a variation of the totem-pole driver design. It allows installation of multiple adapters on the same interrupt request line, but for sequential operation only.
The driver design is called tri-state because it can pull the output either high or low like totem pole, and it offers a third mode that electrically disconnects from its output line. The tri-state driver switches from low to high for only a short time before and after each edge-triggered interrupt transition.
Otherwise, the tri-state design does not connect to the interrupt request line at all. As long as no two adapters operate at the same time, no temporary short circuit will occur. This concept, for example, enables multiple printer adapters to be installed in DOS systems.
But the tri-state concept has a hidden pitfall: it requires the operating system to use these devices sequentially rather than concurrently. This is not a limitation when single-tasking, because only one I/O operation at a time occurs. However, the microcomputer world is moving to multitasking to gain efficiency by using the time when progress is delayed in one operation to make useful progress in another. In this manner, several applications can run concurrently, faster than they can run sequentially.
But concurrent applications typically trigger concurrent I/O operations. Therefore, a multitasking operating system that is installed in a system with PC/XT/AT cards is configured with special software drivers that prevent any I/O device adapters installed on the same interrupt request line from operating concurrently. The alternative is to risk permanent damage to the system in the future (due to the temporary short circuiting) if I/O concurrency were later defined.
Consequently, although a computer may work acceptably when limited to sequential I/0 operations, an EISA computer with ISA adapter cards supporting the I/O will also be restricted to sequential I/O where interrupts are shared in multitasking operating systems. This dilutes one of the major efficiencies of multitasking operating systems: concurrent I/O operation. Net: One task may run efficiently in memory, but then it may have to wait for another task to complete before its I/O operations can begin.
Both Micro Channel systems and pure EISA systems employ another method for signaling interrupts.
This method uses open-collector drivers, as shown in Figure C. Any number of open-collector drivers can operate concurrently on the same interrupt request line.
The open-collector circuit works fine unless a PC/XT/AT totem-pole driver is installed on the same interrupt request line. If the totem pole and open collector are installed on the same line, a short circuit will occur whenever the open-collector driver is active and the totem-pole driver has completed an edge triggered interrupt. This situation is shown in Figure D.
The installation of multiple adapters of a similar type, such as communications adapters, may force the adapters to share the same interrupt request for compatibility with existing application software.
However, if a PC/XT/AT card is installed in an EISA system, and it is configured to share an interrupt request line with EISA adapters, a transient short circuit through R1, Q1, D1, and Q4 and/or Q5 will occur. Q4 and Q5 will be active for extended periods of time for level-sensitive interrupts, allowing prolonged time for heating. If Q4 or Q5 is located on the system board, the expensive system board will be the failing unit.
This fate is likely to occur in EISA systems because EISA systems claim to handle interrupt sharing and they claim PC/XT/AT card compatibility. It is not emphasized that these two functions might not be available at the same time. In contrast, this problem will never occur in Micro Channel systems because the use of PC/XT/AT adapter cards is prohibited by the mechanical design of the Micro Channel Connector.
PC/XT/AT card portability is actually a disadvantage that may impair the advanced functions of EISA. The Micro Channel's prohibition of PC/XT/AT cards is a major system integrity advantage for Micro Channel systems because it enables consistent functionality regardless of configuration.