Abstract:
A multiprocessor programmable interrupt controller (MPIC) system has an interrupt bus, distinct from the system (memory) bus, for handling interrupt-related messages. I/O device interrupt lines are connected to one or more interrupt delivery units (IDUs) that are each coupled to the interrupt bus for broadcasting of I/O-generated interrupt request messages. Each processor chip has an on-board interrupt acceptance unit (IAU) that can accept interrupt requests from the interrupt bus and can broadcast on the interrupt bus interrupt request messages generated by its associated processor. Each processor can request to read the contents of the IAU control registers that are associated with another target processor. In that case, a remote read request message is generated by the IAU of the local processor and responded to, without software intervention, by the IAU of the target processor. A remote read status field indicates to the local processor the status of the data contained in a remote read register. The remote IAU is expected to respond in a fixed number of interrupt bus cycles. If the remote agent is unable to do so, then the remote read status field becomes "Invalid." If successful, the remote read status resolves to "Valid." The processor polls this field to determine the completion and success of the remote read request. Remote read requests are always successful (although the data may be valid or invalid) in that they are never retried. Remote read requests are primarily a debug feature, and a "hung" remote IAU that is unable to respond to a remote read request should not cause the debugging software to hang on the local processor.
Abstract:
A multiprocessor programmable interrupt controller (MPIC) system has an interrupt bus, distinct from the system (memory) bus, for handling interrupt-related messages. I/O device interrupt lines are connected to one or more interrupt delivery units (IDUs) that are each coupled to the interrupt bus for broadcasting of I/O-generated interrupt request messages. Each processor chip has an on-board interrupt acceptance unit (IAU) that can accept interrupt requests from the interrupt bus and can broadcast on the interrupt bus interrupt request messages generated by its associated processor. Each processor can request to read the contents of the IAU control registers that are associated with another target processor. In that case, a remote read request message is generated by the IAU of the local processor and responded to, without software intervention, by the IAU of the target processor. A remote read status field indicates to the local processor the status of the data contained in a remote read register. The remote IAU is expected to respond in a fixed number of interrupt bus cycles. If the remote agent is unable to do so, then the remote read status field becomes "Invalid." If successful, the remote read status resolves to "Valid." The processor polls this field to determine the completion and success of the remote read request. Remote read requests are always successful (although the data may be valid or invalid) in that they are never retried. Remote read requests are primarily a debug feature, and a "hung" remote IAU that is unable to respond to a remote read request should not cause the debugging software to hang on the local processor.
Abstract:
A multiprocessor programmable interrupt controller (MPIC) system has an interrupt bus, distinct from the system (memory) bus, for handling interrupt-related messages. I/O device interrupt lines are connected to one or more interrupt delivery units (IDUs) that are each coupled to the interrupt bus for broadcasting of I/O-generated interrupt request messages. Each processor chip has an on-board interrupt acceptance unit (IAU) that can accept interrupt requests from the interrupt bus and can broadcast on the interrupt bus interrupt request messages generated by its associated processor. Each processor can request to read the contents of the IAU control registers that are associated with another target processor. In that case, a remote read request message is generated by the IAU of the local processor and responded to, without software intervention, by the IAU of the target processor. A remote read status field indicates to the local processor the status of the data contained in a remote read register. The remote IAU is expected to respond in a fixed number of interrupt bus cycles. If the remote agent is unable to do so, then the remote read status field becomes "Invalid." If successful, the remote read status resolves to "Valid." The processor polls this field to determine the completion and success of the remote read request. Remote read requests are always successful (although the data may be valid or invalid) in that they are never retried. Remote read requests are primarily a debug feature, and a "hung" remote IAU that is unable to respond to a remote read request should not cause the debugging software to hang on the local processor.
Abstract:
A method and apparatus for upgrading a uniprocessor system to a multiprocessing system simply by the insertion of a second microprocessor integrated circuit. The computer system is provided with an upgrade socket for receiving the second processing unit, as well as a private communications bus between the upgrade socket and the existing processor for handling interprocessor communications, bus arbitration and cache coherency, etc. The addition of the second processor is transparent to the system which maintains its memory management unit and caching system and other arrangements as though it were still a uniprocessing system. Therefore, an inexpensive method and apparatus are provided for greatly enhancing the speed of a uniprocessing system to that of a multiprocessing system without the cost traditionally associated with multiprocessing systems.
Abstract:
A method and apparatus for upgrading a uniprocessor system to a multiprocessing system simply by the insertion of a second microprocessor integrated circuit. The computer system is provided with an upgrade socket for receiving the second processing unit, as well as a private communications bus between the upgrade socket and the existing processor for handling interprocessor communications, bus arbitration and cache coherency, etc. The addition of the second processor is transparent to the system which maintains its memory management unit and caching system and other arrangements as though it were still a uniprocessing system. Therefore, an inexpensive method and apparatus are provided for greatly enhancing the speed of a uniprocessing system to that of a multiprocessing system without the cost traditionally associated with multiprocessing systems.
Abstract:
Upgrading a uniprocessor system to a multiprocessing system by inserting a second microprocessor into an upgrade socket. The system has a private communications bus between the upgrade socket and the existing processor for handling interprocessor communications, bus arbitration and cache coherency, etc. The addition of the second processor is transparent to the system, which maintains its memory management unit and caching system and other arrangements as though it were still a uniprocessing system.
Abstract:
A multiprocessor programmable interrupt controller (MPIC) system has an interrupt bus, distinct from the system (memory) bus, for handling interrupt-related messages. I/O device interrupt lines are connected to one or more interrupt delivery units (IDUs) that are each coupled to the interrupt bus for broadcasting of I/O-generated interrupt request messages. Each processor chip has an on-board interrupt acceptance unit (IAU) that can accept interrupt requests from the interrupt bus and can broadcast on the interrupt bus interrupt request messages generated by its associated processor. Each processor can request to read the contents of the IAU control registers that are associated with another target processor. In that case, a remote read request message is generated by the IAU of the local processor and responded to, without software intervention, by the IAU of the target processor. A remote read status field indicates to the local processor the status of the data contained in a remote read register. The remote IAU is expected to respond in a fixed number of interrupt bus cycles. If the remote agent is unable to do so, then the remote read status field becomes "Invalid." If successful, the remote read status resolves to "Valid." The processor polls this field to determine the completion and success of the remote read request. Remote read requests are always successful (although the data may be valid or invalid) in that they are never retried. Remote read requests are primarily a debug feature, and a "hung" remote IAU that is unable to respond to a remote read request should not cause the debugging software to hang on the local processor.
Abstract:
A multiprocessor programmable inter- rupt controller (MPIC) has a distinct three- wire interrupt bus (15) with one clock wire and two data wires for handling interrupt request (IRQ) related messages. Each pro- cessor chip (114) has an on-board interrupt acceptance unit (IAU) coupled to the inter- rupt bus (15) for the acceptance of IRQs. I/O device interrupt lines are connected to one or more interrupt delivery units (IDUs 113) that are each coupled to the interrupt bus (15). A modification to the lowest prior- ity mode arbitration procedure also provides means for uniform distribution of IRQs to eligible processors. The actual servicing of the IRQs is done by means of the system bus (110). An MPIC cluster system provides means for interconnecting individual MPIC systems into an expanded interrupt controller system whenever the interrupt handling ca- pacity of individual MPIC system (cluster) is exceeded by using a cluster manager.
Abstract:
A multiprocessor programmable inter- rupt controller (MPIC) has a distinct three- wire interrupt bus (15) with one clock wire and two data wires for handling interrupt request (IRQ) related messages. Each pro- cessor chip (114) has an on-board interrupt acceptance unit (IAU) coupled to the inter- rupt bus (15) for the acceptance of IRQs. I/O device interrupt lines are connected to one or more interrupt delivery units (IDUs 113) that are each coupled to the interrupt bus (15). A modification to the lowest prior- ity mode arbitration procedure also provides means for uniform distribution of IRQs to eligible processors. The actual servicing of the IRQs is done by means of the system bus (110). An MPIC cluster system provides means for interconnecting individual MPIC systems into an expanded interrupt controller system whenever the interrupt handling ca- pacity of individual MPIC system (cluster) is exceeded by using a cluster manager.