Claims
- 1. A computer system for message passing, comprising:
an interconnection; a plurality of processor nodes connected to said interconnection; and a credit-based message receive unit coupled to said interconnection for controlling message passages through said processor nodes.
- 2. The computer system of claim 1 wherein said message receive unit comprises a message buffer coupled to a plurality of credit registers.
- 3. The computer system of claim 2 wherein said buffer is constituted by a FIFO having a set of pointers for read/write access.
- 4. The computer system of claim 2 wherein said buffer size satisfies the condition:
- 5. The computer system of claim 2 wherein each of said credit registers in a receiving node corresponds to a sending node.
- 6. The computer system of claim 5 wherein a value in said credit registers controls writing into said buffer.
- 7. The computer system of claim 6 wherein said value constitutes a maximum number of messages that the receiving node can receive from the sending node.
- 8. The computer system of claim 6 wherein accessing messages in said buffer controls said value in said credit registers.
- 9. The computer system of claim 8 wherein said value is preset.
- 10. The computer system of claim 9 wherein each of said processor nodes comprises at least one processor and a memory.
- 11. The computer system of claim 10 wherein said buffer and said credit registers are part of a mesh coherence unit in each of said processor nodes.
- 12. A computer communication method comprising the steps of:
using a buffer for temporarily storing messages from at least one sending node to a receiving node; using credit values stored in credit registers, each value corresponding to the at least one sending node and controlling writing incoming messages from the at least one sending node into said buffer; and determining the number of accesses of the at least one sending node to said buffer in order to adjust said credit value corresponding to the at least one sending node.
- 13. The method of claim 12 comprising the further step of using a sending node ID to select a credit register corresponding to the sending node.
- 14. The method of claim 12 wherein said value in each of said plurality of credit registers determines the maximum number of messages that a receiving node can receive from a sending node.
- 15. The method of claim 12 comprising the further step of determining the arrival of a message by a method selected from the group consisting the steps of receiving an interrupt signal and periodically polling pointer registers of said buffer.
- 16. The method of claim 12 comprising the further step of determining the credit value of a sending node for discarding an incoming message from said sending node.
- 17. The method of claim 12, when a message is discarded because of a lack of credits, comprising the further step selected from a group consisting the steps of generating an interrupt, generating an overflow signal, and logging overflow information.
CROSS-REFERENCE TO CO-PENDING APPLICATIONS
[0001] This application claims the benefit of U.S. Provisional Application No. 60/084,795, filed on May 8, 1998.
[0002] This application is related to co-pending U.S. patent application Ser. No. 09/041,568, entitled “Cache Coherence Unit for Interconnecting Multiprocessor Nodes Having Pipelined Snoopy Protocol,” filed on Mar. 12, 1998; co-pending U.S. patent application Ser. No. 09/003,771, entitled “Memory Protection Mechanism for a Distributed Shared Memory Multiprocessor with Integrated Message Passing Support,” filed on Jan. 7, 1998; co-pending U.S. patent application Ser. No. 09/003,721, entitled “Cache Coherence Unit with Integrated Message Passing and Memory Protection for a Distributed, Shared Memory Multiprocessor System,” filed on Jan. 7, 1998; co-pending U.S. patent application Ser. No. Unknown, entitled “Split Sparse Directory for a Distributed Shared Memory Multiprocessor System,” filed on Mar. 30, 1999; and co-pending U.S. patent application Ser. No. Unknown, entitled “Computer Architecture for Avoiding Deadlock in Network Communications,” filed on Apr. 2, 1999, which are hereby incorporated by reference.
Provisional Applications (1)
|
Number |
Date |
Country |
|
60084795 |
May 1998 |
US |