System for transmitting data between systems using selected subsets of plural interconnecting bus lines and including selection of a compatible transmission speed
First Claim
1. A method for transmitting data between a plurality of nodes of a communications network, each node having a maximum speed for receiving data words, said plurality of nodes connected on a communication bus having a bus width at least equal to a data word within a data packet and comprising a plurality of bus subsets of bus lines connecting the plurality of nodes, each bus subset comprising at least two bus lines, each node being directly connected to every bus line of every bus subset, the plurality of bus subsets in aggregate comprising the communication bus, the method comprising the steps ofdetermining, at a transmitting node, at least one of said plurality of bus subsets over which the transmitting node can communicate with an intended destination node receiving said data,selecting, at the transmitting node, a speed at which to send said data words, within a range of the maximum speeds which said nodes can receive data words, based on a highest maximum speed at which only nodes acceptably determined to communicate with said transmitting node can receive said data words,sending each data word within said data packet as a sequence of multibit subwords over said at least one of said plurality of bus subsets selected from said plurality of bus subsets acceptably determined to communicate with said transmitting node, andsaid destination node, sending over a bus subset control line, during a data transmission of said data packet, a warning signal for informing the transmitting node of an overflow condition at the destination node.
6 Assignments
0 Petitions
Accused Products
Abstract
A method and apparatus for transmitting data between nodes connected to a communications bus, preferably a computer backbone, divides a full bus width into a plurality of sub-buses. Each sub-bus can be independently operated, and each node on the network can connect to one or more of the sub-buses. The apparatus provides, at a transmitting node, a determination of which sub-buses are available to transmit a data packet to one or more receiving nodes. The data words are divided into sub-words, thereby reducing the memory access time requirements and saving memory costs. In accordance with a particular embodiment, the header, at the beginning of the data packet, and the error check control, provided at the end of the data packet, are sent at a slower speed than the data information portion of the packet. The data information portion of the packet is sent at the highest speed compatible with the receiving node or nodes. In case one sub-bus fails, a node can transmit data over the other sub-buses available to it.
-
Citations
23 Claims
-
1. A method for transmitting data between a plurality of nodes of a communications network, each node having a maximum speed for receiving data words, said plurality of nodes connected on a communication bus having a bus width at least equal to a data word within a data packet and comprising a plurality of bus subsets of bus lines connecting the plurality of nodes, each bus subset comprising at least two bus lines, each node being directly connected to every bus line of every bus subset, the plurality of bus subsets in aggregate comprising the communication bus, the method comprising the steps of
determining, at a transmitting node, at least one of said plurality of bus subsets over which the transmitting node can communicate with an intended destination node receiving said data, selecting, at the transmitting node, a speed at which to send said data words, within a range of the maximum speeds which said nodes can receive data words, based on a highest maximum speed at which only nodes acceptably determined to communicate with said transmitting node can receive said data words, sending each data word within said data packet as a sequence of multibit subwords over said at least one of said plurality of bus subsets selected from said plurality of bus subsets acceptably determined to communicate with said transmitting node, and said destination node, sending over a bus subset control line, during a data transmission of said data packet, a warning signal for informing the transmitting node of an overflow condition at the destination node.
-
13. Apparatus for transmitting data between a plurality of nodes of a communications network, each node having a maximum speed for receiving data words, said plurality of nodes connected on a communication bus, said bus having a bus width at least equal to a data word within a data packet, comprising
a plurality of bus subsets of bus lines, said bus subsets in aggregate comprising the communication bus and each bus subset comprising at least two bus lines, each node being directly connected to every bus line of every bus subset, means for determining, at a transmitting node, at least one of said plurality of bus subsets over which the transmitting node can communicate with an intended destination node receiving said data, means for selecting, at the transmitting node, a speed at which to send said data words, within a range of the maximum speeds which said nodes can receive data words, based on a highest maximum speed at which only nodes acceptably determined to communicate with said transmitting node can receive said data words, and means for sending each data word within said data packet as a sequence of multibit subwords over said at least one of said bus subsets selected from said plurality of bus subsets acceptably determined to communicate with said transmitting node, and means for sending, from the destination node during a data transmission of said data packet, a warning signal over a bus subset control line, for informing the transmitting node of an overflow condition at the destination node.
-
22. Apparatus for transmitting data between a plurality of nodes of a communications network, each node having a maximum speed for receiving data words, said plurality of nodes connected on a communication bus, said bus having a bus width at least equal to a data word within a data packet, comprising
a plurality of bus subsets of bus lines, said bus subsets in aggregate comprising the communication bus and each bus subset comprising at least two bus lines including at least one control line and at least one data line, each node being directly connected to every bus line of every bus subset, bus selection circuitry connected within a transmitting node, to determine at least one of said plurality of bus subsets over which the transmitting node can communicate with an intended destination node receiving said data, said bus selection circuitry randomly selecting, from those acceptable determined bus subsets, at least one of the bus subsets to be used for transmitting said data, said data words comprising a header including a sequence of destination node identification symbols, and appended at the end of said sequence of data words, error checking information data, a destination node, using the error information data to determine that said data words are received without error, transmitter circuitry connected within said transmitting node, to send each data word as a sequence of subwords over the at least one data line of the bus subset selected from those acceptable determined bus subsets, overflow detection circuitry connected within said intended destination node to send, during a data transmission, a warning signal over the at least one control line of the bus subset selected for informing the transmitting node of an overflow condition at the destination node, said transmitter circuitry stopping transmission of said data packet upon receipt of said warning signal, and speed selection circuitry, connected within a transmitting node, for selecting a speed to send said data words, within a range of the maximum speeds which said nodes can receive data words based on a highest maximum speed at which all nodes acceptably determined to communicate with said transmitting node can receive said data words, said speed selection circuitry, sending all header information at a bus speed slower than the highest maximum speed at which the data words are sent, said header information readable by all nodes connected to the bus subset.
-
23. A method for transmitting data between a plurality of nodes of a communications network, each node having a maximum speed for receiving data words, said plurality of nodes connected to a communication bus having a bus width at least equal to a data word within the packet, and comprising a plurality of bus subsets of a plurality of bus lines, each bus subset including at least one control line and at least one data line, the plurality of bus subsets in aggregate comprising the communication bus, with each node being directly connected to every bus line of every bus subset, the method comprising the steps of
determining, at a transmitting node, at least one of said plurality of bus subsets over which the transmitting node can communicate with-an intended destination node receiving said data, randomly selecting, from those acceptable determined bus subsets, at least one of said bus subsets to be used for transmitting said data, appending as a header to said data words, a sequence of destination node identification symbols, appending, at the end of said sequence of data words, error checking information data, said intended destination node, using the error information data to determine that said data words are received without error, selecting, at the transmitting node, a speed at which to send said data words, within a range of the maximum speeds which said nodes can receive data words based on a highest maximum speed at which all nodes acceptably determined to communicate with said transmitting node can receive said data words, sending each data word within said data packet as a sequence of multibit subwords over the at least one data line of a bus subset selected from those acceptable determined bus subsets, sending over the at least one control line of a selected bus subset, from the destination node during a data transmission, an overflow error signal for informing the transmitting node of an overflow error condition at the destination node, sending all header information at a bus speed slower than the highest maximum speed at which the data words are sent, said header information readable by all nodes connected to the bus subset, stopping transmission of said data packet upon receipt of said overflow error signal, restarting transmission of said stopped data packet when said overflow signal is removed from an overflow control within a predetermined period of time.
Specification