Claims Analysis
Total Claims: 18
Claim 1
Independent Claim
234 words
An apparatus for generating a plurality of groups of CRC data and presenting them one group at a time in synchronism with a group clock on a CRC output bus having a number of conductors equal to the number of bits in one group comprising: means for storing a plurality of groups of CRC bits presented at a data input and having a data output for each said CRC bit; a CRC output bus having one conductor coupled to said data output for each CRC bit in the highest order CRC group; a calculation means having a data outputs coupled to said data inputs of said means for storing and having data inputs coupled to said data outputs of said means for storing and having a raw data input, said calculation means for accepting input data from said means for storing and raw input data at said raw data input and for dividing said raw iaput data by a predetermined binary number and for storing the remainder of said division in said means for storing as said CRC check bits;; and shifting means coupled to said means for storing for outputting said groups of CRC data on said CRC output bus one group at a time by shifting said CRC groups one group at a time in synchronization with said group clock signal into the highest order group position of said means for storing.
Claim 2
Independent Claim
234 words
An apparatus for generating a plurality of groups of CRC data and presenting them one group at a time in synchronism with a group clock on a CRC output bus having a number of conductors equal to the number of bits in one group comprising: means for storing a plurality of groups of CRC bits presented at a data input and having a data output for each said CRC bit; a CRC output bus having one conductor coupled to said data output for each CRC bit in the highest order CRC group; a calculation means having a data outputs coupled to said data inputs of said means for storing and having data inputs coupled to said data outputs of said means for storing and having a raw data input, said calculation means for accepting input data from said means for storing and raw input data at said raw data input and for dividing said raw iaput data by a predetermined binary number and for storing the remainder of said division in said means for storing as said CRC check bits;; and shifting means coupled to said means for storing for outputting said groups of CRC data on said CRC output bus one group at a time by shifting said CRC groups one group at a time in synchronization with said group clock signal into the highest order group position of said means for storing.
Claim 3
Dependent Claim
38 words
An apparatus as defined in claim 1 wherein said calculation means accepts input data one group at a time in synchronization with said group clock and simultaneously calculates CRC bits using all bits of the input data group.
Claim 4
Dependent Claim
162 words
An apparatus as defined in claim 2 wherein said claculation means includes a plurality of rows of shifting links, each shifting link having an input and an output, with one said row for each input data bit, and wherein each shifting link row has its inputs coupled to the outputs of the next least significant shifting links in the previous row except for the least significant shifting link in each row which has its input coupled to the output of the most significant shifting link in the preceding row and except for the first row which has its inputs coupled to said data outputs of said means for storing as if it were a preceding row of shifting links, and wherein the last row of shifting links has its data outputs coupled to said data inputs of said means for storing and wherein predetermined shifting links are gates which perform an exclusive-OR logical operation between their input bits and a predetermined signal.
Claim 5
Dependent Claim
60 words
An apparatus as defined in claim 3 wherein there is a predetermined signal for each said row of said shifting links and each said predetermined signal is generated by an input gate corresponding to that particular row which performs a predetermined logical operation between a predetermined one of said CRC bits and a data bit from said input data group.
Claim 6
Dependent Claim
111 words
An apparatus as defined in claim 4 wherein the input gate corresponding to the first row is a gate which performs an exclusive-OR logical operation between the most significant CRC bit stored in said means for storing and the first data bit which would arrive if the data were input in serial fashion, and wherein the input gate corresponding to the second row is a gate which performs an exclusive-OR operation between the next most significant CRC bit stored in said means for storing and the second bit which would arrive if said input date were input in a serial fashion and so on for each row of said shifting links.
Claim 7
Dependent Claim
122 words
The apparatus of claim 5 wherein said shifting means is a plurality of AND gates, one for each row of said shifting links, each AND gate having one input coupled to the output of the exclusive-OR gate for a particular row and having its output coupled to one of the inputs of the exclusive-OR gates in the particular corresponding row of shifting links and each AND gate having another input for coupling to a source of a SHIFT not signal indicating when no CRC calculation is to be performed and only a shift of said CRC bits in said means for storing is to be performed, said shift being by one group toward the most significant group in said means for storing.
Claim 8
Dependent Claim
109 words
An appratus as defined in claim 1 further comprising a multiplexer having a plurality of data inputs each data input having a plurality of conductors coupled to the date outputs of one of said CRC groups stored in said means for storing, said multiplexer having one data output having the number of conductors equal to the number of bits in one group of CRC bits, and said multiplexer having an input for receiving a group select signal indicating which CRC group to select and means for coupling the input of said multiplexer coupled to the outputs upon which the selected CRC group resides to the output of said multiplexer.
Claim 9
Independent Claim
247 words
An apparatus for generating a plurality of CRC groups and for outputting said CRC groups one at a time in response to a group clock signal onto a bus having a number of conductors equal to the number of bits in one group comprising: means for storing said CRC groups said storing means having a plurality of date inputs, a plurality of data outputs, and a group clock input; a CRC output bus coupled to the data outputs of the highest order group of CRC bits stored in said means for storing; a signal generation means for simultaneously performing an exclusive-OR logical operation on each bit in said highest order group of CRC bits stored in said means for storing with one bit of a group of input data and for simultaneously performing a logical AND operation between each result of the above defined exclusive-OR operations and SHIFT not signal and for generating resultant signals; and means for shifting said CRC bits in said means for storing toward the most significant CRC bit by a number of places equal to the number of bits in said group of input data and for performing an exclusive-OR logical operation between predetermined bits being shifted during predetermined shifts and the resultant signals of predetermined ones of said logical AND operations when said SHIFT not signal is in a predetermined logic state but for only shifting without any exclusive-OR operations when said SHIFT not signal is in the opposite logic state.
Claim 10
Independent Claim
247 words
An apparatus for generating a plurality of CRC groups and for outputting said CRC groups one at a time in response to a group clock signal onto a bus having a number of conductors equal to the number of bits in one group comprising: means for storing said CRC groups said storing means having a plurality of date inputs, a plurality of data outputs, and a group clock input; a CRC output bus coupled to the data outputs of the highest order group of CRC bits stored in said means for storing; a signal generation means for simultaneously performing an exclusive-OR logical operation on each bit in said highest order group of CRC bits stored in said means for storing with one bit of a group of input data and for simultaneously performing a logical AND operation between each result of the above defined exclusive-OR operations and SHIFT not signal and for generating resultant signals; and means for shifting said CRC bits in said means for storing toward the most significant CRC bit by a number of places equal to the number of bits in said group of input data and for performing an exclusive-OR logical operation between predetermined bits being shifted during predetermined shifts and the resultant signals of predetermined ones of said logical AND operations when said SHIFT not signal is in a predetermined logic state but for only shifting without any exclusive-OR operations when said SHIFT not signal is in the opposite logic state.
Claim 11
Dependent Claim
167 words
An apparatus as defined in claim 8 wherein said means for shifting is comprised of an array of shifting links arranged into rows and columns with the first row having inputs couypled to said data outputs of said means for storing and having outputs where the output of each shifting link in the first row is coupled to the input of the next most significant shifting link in the next row except for the most significant shifting link in the first row which has its output coupled to the input of the least significant shifting link in the second row and wherein said second row of shifting links is coupled between said first and third rows in a like fashion as said first row was coupled between said means for storing and said second row and so on for each row, and wherein selected ones of said shifting links are exclusive-OR gates which exclusive-OR their data inputs with said resultant signals generated by said signal generation means.
Claim 12
Dependent Claim
213 words
An apparatus as defined in claim 9 wherein said signal generation means is comprised of a plurality of exclusive-OR gates and a plurality of AND gates wherein said resultant signal for said first row is generated by an exclusive-OR gate having an input coupled to the data output of the most signicicant CRC bit stored in said means for storing and having input for receiving the first bit of said input data group which would arrive if the input data arrived in serial format, the output of said exclusive-OR gate being coupled to one input of an AND gate which has another input for coupling to a source of said SHIFT not signal and which has an output coupled to an input of each exclusive-OR gate in said first row, and said resultant signal for said second row being generated by a similar gating structure as is used to generate the resultant signal for said first row except that the exclusive-OR gate has one input coupled to the second most significant CRC bit data output from said means for storing and a second input for receiving the second bit which would arrive if the input data were input in serial fashion, and so on for generation of the resultant signals for each row.
Claim 13
Dependent Claim
49 words
An apparatus as defined in claim 10 wherein said means for shifting causes shifting of the CRC bits by the number of places equal to the number of bits in one group when said SHIFT not signal is in the logic zero state and said group clock signal occurs.
Claim 14
Independent Claim
500 words
An apparatus for generating a plurality of groups of CRC check bits in synchronization with a group clock signal and for presenting said CRC check bits at a CRC output at a rate of one group of CRC check bits per each group clock cycle through a bus having the same number of conductors as there are bits in a group comprising: a CRC checksum register having a plurality of memory cells arranged to store a plurality of groups of CRC data, each said group comprised of a plurality of CRC bits, and each memory cell having a data input, a data output and a group clock input for coupling to said group clock signal, each said memory cell for storing the data at said data input upon receipt of said group clock signal at said group clock input and for presenting said stored data at said data output; a CRC output bus coupled to said data outputs of the memory cells storing the CRC bits of the highest order group of said CRC data; a plurality of data input exclusive-OR gates, each having one input for coupling to one bit of an input data group and each having one data input coupled to said data output of one of said memory cells coupled to said CRC data output bus and each having a data output; an AND gate for each said data input exclusive-OR gate, said AND gate having a data output and each said AND gate having one input coupled to said data output of one of said data input exclusive-OR gates and each said AND gate having another input for coupling to a SHIFT not signal indicating when a straight shift without any other logical operation is to occur; a plurality of shifting links arranged into an array comprised of a number of rows equal to the number of said data input exclusive-OR gates and a number of columns equal to the number of bits in said CRC data and with each shifting link having an input and an output, said first row having its inputs coupled to the data outputs of said memory cells and said last row having its data outputs coupled to the data inputs of said memory cells, each row of shifting links comprised of a plurality of logical operators, one in each column, each logical operator for performing a shift of the bit in that logical operator's column to the next higher order bit position in the next row, selected logical operators in each row also performing an exclusive-OR operation on their incoming bits with the bit from the output of said AND gate coupled to the data output of said data input exclusive-OR gate corresponding to that row, where the data input exclusive-OR gate coupled to the most significant CRC bit corresponds to the first row and the data input exclusive-OR gate coupled to the next most significant CRC bit corresponds to the second row and so on for each row.
Claim 15
Independent Claim
500 words
An apparatus for generating a plurality of groups of CRC check bits in synchronization with a group clock signal and for presenting said CRC check bits at a CRC output at a rate of one group of CRC check bits per each group clock cycle through a bus having the same number of conductors as there are bits in a group comprising: a CRC checksum register having a plurality of memory cells arranged to store a plurality of groups of CRC data, each said group comprised of a plurality of CRC bits, and each memory cell having a data input, a data output and a group clock input for coupling to said group clock signal, each said memory cell for storing the data at said data input upon receipt of said group clock signal at said group clock input and for presenting said stored data at said data output; a CRC output bus coupled to said data outputs of the memory cells storing the CRC bits of the highest order group of said CRC data; a plurality of data input exclusive-OR gates, each having one input for coupling to one bit of an input data group and each having one data input coupled to said data output of one of said memory cells coupled to said CRC data output bus and each having a data output; an AND gate for each said data input exclusive-OR gate, said AND gate having a data output and each said AND gate having one input coupled to said data output of one of said data input exclusive-OR gates and each said AND gate having another input for coupling to a SHIFT not signal indicating when a straight shift without any other logical operation is to occur; a plurality of shifting links arranged into an array comprised of a number of rows equal to the number of said data input exclusive-OR gates and a number of columns equal to the number of bits in said CRC data and with each shifting link having an input and an output, said first row having its inputs coupled to the data outputs of said memory cells and said last row having its data outputs coupled to the data inputs of said memory cells, each row of shifting links comprised of a plurality of logical operators, one in each column, each logical operator for performing a shift of the bit in that logical operator's column to the next higher order bit position in the next row, selected logical operators in each row also performing an exclusive-OR operation on their incoming bits with the bit from the output of said AND gate coupled to the data output of said data input exclusive-OR gate corresponding to that row, where the data input exclusive-OR gate coupled to the most significant CRC bit corresponds to the first row and the data input exclusive-OR gate coupled to the next most significant CRC bit corresponds to the second row and so on for each row.
Claim 16
Independent Claim
162 words
A method of outputting a plurality of groups of CRC check bits one group at a time on an output bus which is only wide enough to carry one group at a time away from an apparatus for calculating CRC bits using a CRC checksum register and a calculation means comprising the steps of: calculating the CRC check bits using said calculation means and storing them in said checksum register; outputting the highest order group of CRC check bits on said output bus; shifting the second most significant group of CRC check bits into the position in said CRC checksum register formally occupied by the highest order group of CRC check bits while simultaneously shifting all lower order groups one group toward the most significant bit position; outputting the second most significant group of CRC check bits on said output bus; and continuing said shifting and outputting steps until all groups of CRC check bits have been output on said output bus.
Claim 17
Independent Claim
162 words
A method of outputting a plurality of groups of CRC check bits one group at a time on an output bus which is only wide enough to carry one group at a time away from an apparatus for calculating CRC bits using a CRC checksum register and a calculation means comprising the steps of: calculating the CRC check bits using said calculation means and storing them in said checksum register; outputting the highest order group of CRC check bits on said output bus; shifting the second most significant group of CRC check bits into the position in said CRC checksum register formally occupied by the highest order group of CRC check bits while simultaneously shifting all lower order groups one group toward the most significant bit position; outputting the second most significant group of CRC check bits on said output bus; and continuing said shifting and outputting steps until all groups of CRC check bits have been output on said output bus.
Claim 18
Dependent Claim
225 words
The method of claim 13 wherein said calculation means is an array of rows of shifting links having the number of rows equal to the number of bits in a group and a number of columns equal to the number of CRC bits in said CRC checksum register and wherein each said row of shifting links shifts its input data one bit position toward the most significant bit position and supplies the shifted data to the next row except that the first row receives its data from the CRC checksum register and the last row outputs its data to the CRC checksum register and except that the most significant bit position shifting link in each row supplies its output to the least significant bit position shifting link of the next row and wherein selected shifting links are exclusive-OR gates and wherein the steps of shifting the groups of CRC data one group toward the most significant bit position includes the step of rendering each exclusive-OR gate in each row transparent by forcing a logic zero at one input of each exclusive-OR gate in each said row such that data from said CRC checksum register ripples unchanged through all rows of the shifting links and is re-input to the CRC checksum register on the next group clock cycle shifted one group toward the most significant bit.