Method for exchanging messages between a shared memory and communication adapters using an efficient logical protocol
First Claim
1. A method for transmitting interleaved bursts of messages sent from a shared memory subsystem (10) comprising a storage (12) and managing means (14) for managing said storage, to a plurality of communication adapters (20) to which are attached different users (22), said adapters (20) being connected to the subsystem (10) by a bus (30) comprising data lines (30-d), address lines (30-a) and control lines (30-c) controlled by an arbiter (26), said messages being sliced into data bursts (57) of variable sizes, the method characterized in that it comprises the steps of:
- (a) dequeueing a message from said storage (12);
(b) sending a first control information indicating that a message is ready for transmission (MRX) to a communication adapter (20), connected to a user (22) to whom the message is being sent, hereinafter, a selected communication adapter (20) through the bus (30), said first control information comprising at least the identification of the user (22) to whom the message has to be transmitted on said data lines (30-d) with a special code on said address lines (30-a);
(c) providing a second unique data flow control line XBE (36) connecting said selected communication managing means (14) to all said communication adapters (20) and asserted (20) by said managing means (14) to allow said adapters to request the data bursts from the shared memory subsystem (10);
(d) making a bus request to said arbiter (26) by the selected communication adapters (20) that have messages to receive from the shared memory subsystem (10);
(e) generating a second control information Transmit Burst Request (XBR) for requesting the transmission of a burst comprising at least the identification of the connected user and the maximum burst size of the requested data that can be processed by the adapter, said second control information (XBR) is sent on said data lines (30-d) of the bus (30) from the communication adapter (20) authorized by the arbiter (26) with a unique address for all adapters on said address lines (30-a) to the subsystem (10);
(f) fetching the requested data burst whose size must be below the maximum demanded by said selected adapter (20) in the depository storage (12) to store them temporarily in managing means (14);
(g) providing third data flow control lines Transmit Burst Ready (XBY) (32) connecting said managing means (14) to each adapter (20) and asserted by managing means (14) to notify the selected communication adapter (20) to read the requested data burst in managing means (14);
(b) making a bus request to said arbiter (26) by the selected communication adapters (20) that have messages to receive from the shared memory subsystem (10);
(i) sending a burst of data (50) to which is associated a burst control word (52) on said data lines (30-d) of said bus (30) by managing means (14) when said arbiter (26) has granted said bus (30), said control word (52) comprising at least the identification of the user of the data burst;
(j) reading said control word by said selected adapter (20) to check if the data that follow correspond to the requested data burst to send that data burst to the connected user indicated in the control word; and
,(k) sending a third control information End of Message (EOM) indicating if the complete message has been transmitted to the subsystem (10) by said adapter (20), said third control information comprising at least the identification of the user (22) to which the message has been transmitted and the notification of good or bad transmission.
3 Assignments
0 Petitions
Accused Products
Abstract
This invention relates to a protocol implemented in a communication system for exchanging data and control messages between adapters to which are attached different users, and a shared memory subsystem comprising a depository storage, a manager of storage and a microprocessor. Such protocol enables the adapters to be the initiators of the transmission and reception of data by using the control lines that connect the manager of storage to all adapters in the same way as the data bus and the address bus. Moreover, the adapters slice the messages into data bursts to which are associated control words specifying the sizes, the owner and the position of the burst in the message. Consequently, those data bursts may be interleaved when transiting on the data bus without the intervention of the microprocessor for the routing, and they will be stored in or read from the depository storage according to the identification of the user in the control word. Therefore, only the shared memory needs to have a high capacity of storage, whereas the manager of storage and the adapters can operate with a reduced capacity of storage, and the time to send or to access a data burst is much more improved.
-
Citations
5 Claims
-
1. A method for transmitting interleaved bursts of messages sent from a shared memory subsystem (10) comprising a storage (12) and managing means (14) for managing said storage, to a plurality of communication adapters (20) to which are attached different users (22), said adapters (20) being connected to the subsystem (10) by a bus (30) comprising data lines (30-d), address lines (30-a) and control lines (30-c) controlled by an arbiter (26), said messages being sliced into data bursts (57) of variable sizes, the method characterized in that it comprises the steps of:
-
(a) dequeueing a message from said storage (12); (b) sending a first control information indicating that a message is ready for transmission (MRX) to a communication adapter (20), connected to a user (22) to whom the message is being sent, hereinafter, a selected communication adapter (20) through the bus (30), said first control information comprising at least the identification of the user (22) to whom the message has to be transmitted on said data lines (30-d) with a special code on said address lines (30-a); (c) providing a second unique data flow control line XBE (36) connecting said selected communication managing means (14) to all said communication adapters (20) and asserted (20) by said managing means (14) to allow said adapters to request the data bursts from the shared memory subsystem (10); (d) making a bus request to said arbiter (26) by the selected communication adapters (20) that have messages to receive from the shared memory subsystem (10); (e) generating a second control information Transmit Burst Request (XBR) for requesting the transmission of a burst comprising at least the identification of the connected user and the maximum burst size of the requested data that can be processed by the adapter, said second control information (XBR) is sent on said data lines (30-d) of the bus (30) from the communication adapter (20) authorized by the arbiter (26) with a unique address for all adapters on said address lines (30-a) to the subsystem (10); (f) fetching the requested data burst whose size must be below the maximum demanded by said selected adapter (20) in the depository storage (12) to store them temporarily in managing means (14); (g) providing third data flow control lines Transmit Burst Ready (XBY) (32) connecting said managing means (14) to each adapter (20) and asserted by managing means (14) to notify the selected communication adapter (20) to read the requested data burst in managing means (14); (b) making a bus request to said arbiter (26) by the selected communication adapters (20) that have messages to receive from the shared memory subsystem (10); (i) sending a burst of data (50) to which is associated a burst control word (52) on said data lines (30-d) of said bus (30) by managing means (14) when said arbiter (26) has granted said bus (30), said control word (52) comprising at least the identification of the user of the data burst; (j) reading said control word by said selected adapter (20) to check if the data that follow correspond to the requested data burst to send that data burst to the connected user indicated in the control word; and
,(k) sending a third control information End of Message (EOM) indicating if the complete message has been transmitted to the subsystem (10) by said adapter (20), said third control information comprising at least the identification of the user (22) to which the message has been transmitted and the notification of good or bad transmission. - View Dependent Claims (2, 3, 4, 5)
-
Specification