Method and apparatus for maintaining message order in multi-user FIFO stacks
First Claim
1. A network adapter for interconnecting a processor and its associated memory to a network over a bus for sending direct memory access (DMA) and immediate messages from said processor to said network under control of activation commands, comprising:
- an adapter associated memory programmable into a plurality of functional areas, said functional areas includinga send FIFO for storing and forwarding DMA and immediate messages to said network from said processor;
a stack list for ordering the sending of DMA and immediate messages to said send FIFO; and
an adapter program area for storing adapter program instructions which control the storing of DMA messages from said processor'"'"'s associated memory to said send FIFO and for storing immediate messages from said processor;
said processor being operable to store at least one of said DMA messages to its associated memory and to send an activation command to said stack list for each of said DMA messages, thereby commanding the network adapter to read in order said message from the processor'"'"'s associated memory via direct memory access for sending said message to said send FIFO and network;
said processor being further operable to send at least one of said immediate messages to said adapter program store area and an activation command to said stack list for each of said immediate messages directly to the network adapter without storing said messages to its associated memory;
said activation commands for said DMA messages and said activation commands for said immediate messages being queued in strict order into said stack list; and
a controller responsive to activation commands stored in said stack list for transferring immediate messages to send FIFO and for executing said adapter program instructions for transferring DMA messages to said send FIFO, whereby DMA and immediate messages are transferred to said send FIFO in said strict message order without processor intervention.
1 Assignment
0 Petitions
Accused Products
Abstract
A digital parallel processing system wherein a plurality of nodes communicate via messages sent over an interconnection network. Messages are maintained in strict chronological order even though sent by nodes where several sources are generating messages simultaneously. A network adapter is described for interconnecting the processor and its associated memory to a network over a bus. The adapter includes an adapter associated memory programmable into a plurality of functional areas, said functional areas including a send FIFO for storing and forwarding messages to said network from said processor; a stack list for queueing in strict message order activation commands for said send FIFO; and an adapter program area for storing adapter program instructions which control the storing of messages to said send FIFO; and control means responsive to said stack list for executing said adapter program instructions in said strict message order without processor intervention.
-
Citations
16 Claims
-
1. A network adapter for interconnecting a processor and its associated memory to a network over a bus for sending direct memory access (DMA) and immediate messages from said processor to said network under control of activation commands, comprising:
-
an adapter associated memory programmable into a plurality of functional areas, said functional areas including a send FIFO for storing and forwarding DMA and immediate messages to said network from said processor; a stack list for ordering the sending of DMA and immediate messages to said send FIFO; and an adapter program area for storing adapter program instructions which control the storing of DMA messages from said processor'"'"'s associated memory to said send FIFO and for storing immediate messages from said processor; said processor being operable to store at least one of said DMA messages to its associated memory and to send an activation command to said stack list for each of said DMA messages, thereby commanding the network adapter to read in order said message from the processor'"'"'s associated memory via direct memory access for sending said message to said send FIFO and network; said processor being further operable to send at least one of said immediate messages to said adapter program store area and an activation command to said stack list for each of said immediate messages directly to the network adapter without storing said messages to its associated memory; said activation commands for said DMA messages and said activation commands for said immediate messages being queued in strict order into said stack list; and a controller responsive to activation commands stored in said stack list for transferring immediate messages to send FIFO and for executing said adapter program instructions for transferring DMA messages to said send FIFO, whereby DMA and immediate messages are transferred to said send FIFO in said strict message order without processor intervention. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A network adapter for interconnecting a processor and its associated memory to a network over a bus for sending direct memory access (DMA) messages and immediate messages from said processor to said network under control of activation commands, comprising:
-
an adapter memory including a send buffer, a program store, an immediate message store, and a send pointer list; said send buffer storing and forwarding said DMA and immediate messages in order to said network from said processor; said program store storing direct memory access (DMA) programs for controlling the network adapter to read DMA messages from the processor'"'"'s associated memory via direct memory access and to send DMA messages to said send buffer and network, and for storing and holding immediate DMA programs including immediate messages, until said messages are sent in order to said send buffer and network; and said send pointer list queuing activation commands; said processor being operable to store at least one of said DMA messages to its associated memory and to send one of said activation commands to said pointer list for each of said DMA messages; said processor being further operable to send at least one of said immediate messages over said bus directly to said program of said adapter memory and to send one of said activation commands to said pointer list for each of said immediate messages; a plurality of activation commands for said DMA messages and said immediate messages being queued in strict order into said pointer list; and an adapter control responsive to said activation commands for transferring immediate messages to send buffer from said adapter program store and executing DMA programs for transferring DMA messages to said send buffer; whereby said DMA and immediate messages transferred to said send buffer are in strict sequential order without processor intervention. - View Dependent Claims (11, 12, 13)
-
-
14. Method for controlling the transfer of messages from a nodal processor and its associated memory through a network adapter to an interconnection network, said messages including direct memory access (DMA) messages and immediate messages being transferred under control of activation commands, comprising the steps of:
-
storing said DMA messages to said associated memory of said nodal processor; storing said immediate messages in an adapter memory within said network adapter; storing activation commands for said DMA and immediate messages in a send FIFO stacked list within said network adapter; sequentially accessing said send FIFO stacked list to control the storing of said DMA and immediate messages to a send FIFO buffer; and transferring said DMA and immediate messages from said send FIFO buffer to said interconnection network in sequential order. - View Dependent Claims (15, 16)
-
Specification