Variable cyclic redundancy coding method and apparatus for use in a multistage network
First Claim
Patent Images
1. A variable cyclic redundancy code apparatus for use by a multi-stage bufferless switching network, the network comprising:
- a plurality of bufferless switching apparatuses cascaded into stages, each said switching apparatus including a plurality of switch inputs and a plurality of switch outputs, each of the switch outputs of each said switching apparatus coupled to a different switch input of others of said switching apparatuses, switch outputs of last stage switching apparatuses comprising network output ports and switch inputs of first stage switching apparatuses comprising network input ports; and
a plurality of nodes each coupled to one of the network output ports and to one of the network input ports, each said node comprising means for receiving a data message and means for sending a data message including a connection request;
said switching apparatuses each including;
connection means for establishing a communication path between any one of the network input ports and any one of the network output ports in response to said connection request received at said any one of the network input ports, said communication path for transmitting a data message received at said any one of the network input ports to said any one of the network output ports, said connection means including asynchronous connection means for establishing asynchronously a plurality of simultaneously active communication paths between a plurality of network input ports and a plurality of network output ports in response to a plurality of connection requests received separately or simultaneously at said plurality of network input ports, said simultaneously active communication paths for transmitting a plurality of data messages received separately or simultaneously at said plurality of network input ports to said plurality of network output ports;
said variable cyclic redundancy code apparatus comprising;
first buffer means for storing the data message at a sending node;
first generating means for generating a first cyclic redundancy code at the sending node, the cyclic redundancy code comprising a plurality of error checking bits;
appending means coupled to said means for sending a data message for appending to said data message the cyclic redundancy code;
second buffer means for storing the data message at a receiving node;
second generating means for generating a second cyclic redundancy code at the receiving node, the second cyclic redundancy code comprising a plurality of error checking bits; and
comparing means for comparing the first cyclic redundancy code to the second cyclic redundancy code and for indicating a comparison failure.
1 Assignment
0 Petitions
Accused Products
Abstract
An error checking method and apparatus for appending a variable number of redundancy coding information at the end of each data message or packet transmitted over a multi-stage network for the purpose of protecting the data by using an error detecting code. The amount of additional redundancy coding information implemented is variable and increases with the size of the data message or packet to provide a consistent level of protection.
181 Citations
7 Claims
-
1. A variable cyclic redundancy code apparatus for use by a multi-stage bufferless switching network, the network comprising:
-
a plurality of bufferless switching apparatuses cascaded into stages, each said switching apparatus including a plurality of switch inputs and a plurality of switch outputs, each of the switch outputs of each said switching apparatus coupled to a different switch input of others of said switching apparatuses, switch outputs of last stage switching apparatuses comprising network output ports and switch inputs of first stage switching apparatuses comprising network input ports; and a plurality of nodes each coupled to one of the network output ports and to one of the network input ports, each said node comprising means for receiving a data message and means for sending a data message including a connection request; said switching apparatuses each including; connection means for establishing a communication path between any one of the network input ports and any one of the network output ports in response to said connection request received at said any one of the network input ports, said communication path for transmitting a data message received at said any one of the network input ports to said any one of the network output ports, said connection means including asynchronous connection means for establishing asynchronously a plurality of simultaneously active communication paths between a plurality of network input ports and a plurality of network output ports in response to a plurality of connection requests received separately or simultaneously at said plurality of network input ports, said simultaneously active communication paths for transmitting a plurality of data messages received separately or simultaneously at said plurality of network input ports to said plurality of network output ports; said variable cyclic redundancy code apparatus comprising; first buffer means for storing the data message at a sending node; first generating means for generating a first cyclic redundancy code at the sending node, the cyclic redundancy code comprising a plurality of error checking bits; appending means coupled to said means for sending a data message for appending to said data message the cyclic redundancy code; second buffer means for storing the data message at a receiving node; second generating means for generating a second cyclic redundancy code at the receiving node, the second cyclic redundancy code comprising a plurality of error checking bits; and comparing means for comparing the first cyclic redundancy code to the second cyclic redundancy code and for indicating a comparison failure. - View Dependent Claims (2, 3, 4)
-
-
5. A variable cyclic redundancy coding method for use in a multi-stage bufferless switching network, the network comprising:
-
a plurality of bufferless switching apparatuses cascaded into stages, each said switching apparatus including a plurality of switch inputs and a plurality of switch outputs, each of the switch outputs of each said switching apparatus coupled to a different switch input of others of said switching apparatuses, switch outputs of last stage switching apparatuses comprising network output ports and switch inputs of first stage switching apparatuses comprising network input ports; and a plurality of nodes each coupled to one of the network output ports and to one of the network input ports, each said node comprising means for receiving a data message and means for sending a data message including a connection request; said switching apparatuses each including; connection means for establishing a communication path between any one of the network input ports and any one of the network output ports in response to said connection request received at said any one of the network input ports, said communication path for transmitting a data message received at said any one of the network input ports to said any one of the network output ports, said connection means including asynchronous connection means for establishing asynchronously a plurality of simultaneously active communication paths between a plurality of network input ports and a plurality of network output ports in response to a plurality of connection requests received separately or simultaneously at said plurality of network input ports, said simultaneously active communication paths for transmitting a plurality of data messages received separately or simultaneously at said plurality of network input ports to said plurality of network output ports; said variable cyclic redundancy coding method comprising the steps of; a) storing the data message in a buffer; b) generating a cyclic redundancy code at a sending node based on the length of the data message; c) appending the cyclic redundancy code to the data message; d) transmitting the data message over the multistage network; e) regenerating the cyclic redundancy code at a receiving node; f) comparing the cyclic redundancy code appended to the data message with the cyclic redundancy code regenerated at the receiving node; g) determining whether the data message is erroneous based on the comparing step. - View Dependent Claims (6, 7)
-
Specification