Queued interrupt mechanism with supplementary command/status/message information
First Claim
Patent Images
1. A circuit for passing interrupt information between a first and second device, comprising:
- a memory device having a first plurality of sequentially addressed storage locations for storing items of interrupt information being passed from said first device to said second device, said first plurality of sequentially addressed storage locations having a beginning address in said sequence of addresses, an ending address in said sequence of addresses, and a size equal to said ending address minus said beginning address plus one;
a first register having an addressed storage location for storing said beginning address in said sequence of memory addresses of said first plurality of sequentially addressed storage locations; and
a second register having an addressed storage location for storing said size of said first plurality of sequentially addressed storage locations.
5 Assignments
0 Petitions
Accused Products
Abstract
A bidirectional interrupt technique and mechanism is described for handling programmable length interrupt messages between two devices, preferably both processors, through dual, programmably defined memory queues. The technique and mechanism automatically updates a read and write address counter, a queue count register, and an interrupt count register for each direction of the flow of interrupts.
95 Citations
11 Claims
-
1. A circuit for passing interrupt information between a first and second device, comprising:
-
a memory device having a first plurality of sequentially addressed storage locations for storing items of interrupt information being passed from said first device to said second device, said first plurality of sequentially addressed storage locations having a beginning address in said sequence of addresses, an ending address in said sequence of addresses, and a size equal to said ending address minus said beginning address plus one; a first register having an addressed storage location for storing said beginning address in said sequence of memory addresses of said first plurality of sequentially addressed storage locations; and a second register having an addressed storage location for storing said size of said first plurality of sequentially addressed storage locations. - View Dependent Claims (2, 3)
-
-
4. A circuit for passing interrupt information between a first and second device, said first and second devices connected to said circuit by a system bus including an address bus, a data bus, and a control signal bus, said circuit comprising:
-
a memory device having a first plurality of sequentially addressed storage locations for storing items of interrupt information being passed from said first device to said second device, said first plurality of sequentially addressed storage locations having a beginning address in said sequence of addresses, an ending address in said sequence of addresses, and a size equal to said ending address minus said beginning address plus one; a first write address counter having an addressed storage location initially storing said beginning address of said first plurality of sequentially addressed storage locations; a first interrupt counter having an addressed storage location initially storing an interrupt count of zero; a first queue counter having an addressed storage location initially storing an item of interrupt information count of zero; and control logic connected to said memory device, said first write counter, said first interrupt counter, said first queue counter, and by said system bus, to said first and second devices, wherein said control logic causes an item of interrupt information received from said first device over said data bus to be stored in said first plurality of sequentially addressed storage locations, an address stored in said first write counter to be incremented to a next address in said sequence of addresses of said first plurality of sequentially addressed storage locations, and an item of interrupt information count stored in said first queue counter to be incremented by one, if said control logic receives a write signal over said control signal bus and a first or second pseudo register address over said address bus, and also causes an interrupt count stored in said first interrupt counter to be incremented by one, if said control logic receives said second pseudo register address over said address bus. - View Dependent Claims (5, 6, 7)
-
-
8. A method of receiving interrupt information from a first device, queuing said interrupt information in a memory device, signaling a second device after said queuing, and transmitting said queued interrupt information to said second device upon request by said second device, comprising the steps of:
-
(a) receiving a write signal from a control signal bus, an item of interrupt information from a data bus, and a pseudo register address from an address bus, wherein said pseudo register address indicates from which device said item of interrupt information is being sent; (b) retrieving a memory address from a first selected one of a plurality of registers in response to said write signal and said pseudo register address; (c) causing said item of interrupt information to be stored in said memory device at said retrieved memory address; (d) updating the memory address stored in said first selected one of said plurality of registers; and incrementing, if said pseudo register address is a first or second pseudo register address, a queue counter containing a count of the number of items of unread interrupt information that have been passed from said first device to said second device and stored in said memory device, and also incrementing, if said pseudo register address is said second pseudo register address, an interrupt counter containing a count of the number of unread interrupts that have been initiated by said first device for said second device. - View Dependent Claims (9, 10, 11)
-
Specification