Patent US3918693A successfully refreshed from Google Patents.
← Back to Patent Explorer
US5268908A Expired / Lapsed US ⏱️ 0.0 years remaining

Low data delay triple coverage code apparatus for on-the-fly error correction

Assignee: Storage Technology Corp
•
Filing: 1991-06-19
•
Granted: 1993-12-07
•
Expires: 2011-06-19
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract The low-data-delay triple-coverage code for on-the-fly error correction apparatus allows on-the-fly error correction with fewer redundancy bytes than needed for a non-overlaid data redundancy structure thereby producing corrected data with a low data delay. The present apparatus divides a received block of data into a plurality of fixed size sub-blocks with the last sub-block size being smaller than or equal to the fixed sub-block size. Three predefined error correcting code generator polynomials are used to accumulate redundancy values for the sub-blocks. At the end of each sub-block one of the three pre-defined error correcting code generator polynomials will have accumulated a redundancy value across the present sub-block data and the previous two sub-blocks of data and redundancy. After the accumulated redundancy has been output as write data the predefined error correcting code generator polynomial is reset. Therefore, the redundancy information contained in each sub-block covers that sub-block's data in addition to the data and redundancy in the previous two sub-blocks.

Inventors

  • 👤 Neal Glover
  • 👤 David R. Hieb
  • 👤 Trent O. Dudley
  • 👤 Dennis L. Baker

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-05 17:04
CPC Classifications
G; G06; G06F; G06F11/00; G06F11/07; G06F11/08; G06F11/10; H; H03; H03M; H03M13/00; H03M13/29

Claims Analysis

Total Claims: 22
Claim 1
Independent Claim 171 words
A multibyte error code generation system, operable to identify errors in each sub-block of a block of data, said block having a plurality of sub-blocks, each of which has at least one codeword, each codeword consisting of a unique combination of data and check bytes, said system comprising: first syndrome generating means for producing a first set of check bytes, corresponding to the modulo 2 sum of bit positions of (n+2)nd, (n+1)st and (n)th sub-blocks selected systematically in accordance with a predetermined parity check matrix; second syndrome generating means for producing a second set of check bytes, corresponding to the modulo 2 sum of bit positions of said (n+1)st, (n)th and (n-1)st sub-blocks selected systematically in accordance with a predetermined parity check matrix; third syndrome generating means for producing a third set of check bytes, corresponding to the modulo 2 sum of bit positions of said (n)th, (n-1)st and (n-2)nd sub-blocks selected systematically in accordance with a predetermined parity check matrix; means for appending said generated check bytes to said sub-blocks.
Claim 2
Dependent Claim 171 words
A multibyte error code generation system, operable to identify errors in each sub-block of a block of data, said block having a plurality of sub-blocks, each of which has at least one codeword, each codeword consisting of a unique combination of data and check bytes, said system comprising: first syndrome generating means for producing a first set of check bytes, corresponding to the modulo 2 sum of bit positions of (n+2)nd, (n+1)st and (n)th sub-blocks selected systematically in accordance with a predetermined parity check matrix; second syndrome generating means for producing a second set of check bytes, corresponding to the modulo 2 sum of bit positions of said (n+1)st, (n)th and (n-1)st sub-blocks selected systematically in accordance with a predetermined parity check matrix; third syndrome generating means for producing a third set of check bytes, corresponding to the modulo 2 sum of bit positions of said (n)th, (n-1)st and (n-2)nd sub-blocks selected systematically in accordance with a predetermined parity check matrix; means for appending said generated check bytes to said sub-blocks.
Claim 3
Dependent Claim 59 words
The system of claim 1 wherein said appending means includes: means for appending said third set of check bytes to said codewords of said (n)th sub-block, means for appending said second set of check bytes to said codewords of said (n+1)st sub-block, and means for appending said first set of check bytes to said codewords of said (n+2)nd sub-block.
Claim 4
Dependent Claim 77 words
The system of claim 2 further including: means, responsive to the receipt of the last sub-block of said block of data for sequentially activating said first, second and third syndrome generating means to produce said first, second and third sets of check bytes, respectively; means, responsive to said activating means, for appending said first, second and third sets of check bytes, generated in response to said activating means to said last sub-block of said block of data.
Claim 5
Dependent Claim 209 words
A multibyte error code generation system, operable to identify errors in each sub-block of a block of data, said block having a plurality of sub-blocks, each of which has at least one codeword, each codeword consisting of a unique combination of data and check bytes, said system comprising: first syndrome generating means for producing a first set of check bytes, corresponding to the modulo 2 sum of bit positions of (n+2)nd, (n+1)st and (n)th sub-blocks selected systematically in accordance with a predetermined parity check matrix; means for appending said first set of check bytes to said codewords of said (n+2)nd sub-block; second syndrome generating means for producing a second set of check bytes, corresponding to the modulo 2 sum of bit positions of said (n+1)st, (n)th and (n-1)st sub-blocks selected systematically in accordance with a predetermined parity check matrix; means for appending said second set of check bytes to said codewords of said (n+1)st sub-block; third syndrome generating means for producing a third set of check bytes, corresponding to the modulo 2 sum of bit positions of said (n)th, (n-1)st and (n-2)nd sub-blocks selected systematically in accordance with a predetermined parity check matrix; means for appending said third set of check bytes to said codewords of said (n)th sub-block.
Claim 6
Dependent Claim 209 words
A multibyte error code generation system, operable to identify errors in each sub-block of a block of data, said block having a plurality of sub-blocks, each of which has at least one codeword, each codeword consisting of a unique combination of data and check bytes, said system comprising: first syndrome generating means for producing a first set of check bytes, corresponding to the modulo 2 sum of bit positions of (n+2)nd, (n+1)st and (n)th sub-blocks selected systematically in accordance with a predetermined parity check matrix; means for appending said first set of check bytes to said codewords of said (n+2)nd sub-block; second syndrome generating means for producing a second set of check bytes, corresponding to the modulo 2 sum of bit positions of said (n+1)st, (n)th and (n-1)st sub-blocks selected systematically in accordance with a predetermined parity check matrix; means for appending said second set of check bytes to said codewords of said (n+1)st sub-block; third syndrome generating means for producing a third set of check bytes, corresponding to the modulo 2 sum of bit positions of said (n)th, (n-1)st and (n-2)nd sub-blocks selected systematically in accordance with a predetermined parity check matrix; means for appending said third set of check bytes to said codewords of said (n)th sub-block.
Claim 7
Dependent Claim 77 words
The system of claim 4 further including: means responsive to the receipt of the last sub-block of said block of data for sequentially activating said first, second and third syndrome generating means to produce said first, second and third sets of check bytes, respectively; means responsive to said activating means, for appending said first, second and third sets of check bytes, generated in response to said activating means to said last sub-block of said block of data.
Claim 8
Dependent Claim 255 words
A multibyte error code generation system, operable to identify up to t 1 errors in each sub-block of a block of data and up to t 2 errors in said block, where t 1 and t 2 are positive integers and t 2 >t 1 , said block having a plurality of sub-blocks, each of which has at least one codeword containing up to 2 b -1 b-bit character positions, where b is a positive integer, each codeword consisting of a unique combination of data and 2t 1 +t 3 check bytes, where t 3 is a positive integer greater than or equal to t 1 , said system comprising: first syndrome generating means for producing 2t 1 +t 3 check bytes, each containing b bits, corresponding to the modulo 2 sum of bit positions of said codewords in the (n+2)nd, (n+1)st and (n)th sub-blocks selected systematically in accordance with a predetermined parity check matrix; second syndrome generating means for producing 2t 1 +t 3 check bytes, each containing b bits, corresponding to the modulo 2 sum of bit positions of said codewords in the (n+1)st, (n)th and (n-1)st sub-blocks selected systematically in accordance with a predetermined parity check matrix; third syndrome generating means for producing 2t 1 +t 3 check bytes, each containing b bits, corresponding to the modulo 2 sum of bit positions of said codewords in the (n)th, (n-1)st and (n-2)nd sub-blocks selected systematically in accordance with a predetermined parity check matrix; means for appending said generated check bytes to said sub-block.
Claim 9
Dependent Claim 255 words
A multibyte error code generation system, operable to identify up to t 1 errors in each sub-block of a block of data and up to t 2 errors in said block, where t 1 and t 2 are positive integers and t 2 >t 1 , said block having a plurality of sub-blocks, each of which has at least one codeword containing up to 2 b -1 b-bit character positions, where b is a positive integer, each codeword consisting of a unique combination of data and 2t 1 +t 3 check bytes, where t 3 is a positive integer greater than or equal to t 1 , said system comprising: first syndrome generating means for producing 2t 1 +t 3 check bytes, each containing b bits, corresponding to the modulo 2 sum of bit positions of said codewords in the (n+2)nd, (n+1)st and (n)th sub-blocks selected systematically in accordance with a predetermined parity check matrix; second syndrome generating means for producing 2t 1 +t 3 check bytes, each containing b bits, corresponding to the modulo 2 sum of bit positions of said codewords in the (n+1)st, (n)th and (n-1)st sub-blocks selected systematically in accordance with a predetermined parity check matrix; third syndrome generating means for producing 2t 1 +t 3 check bytes, each containing b bits, corresponding to the modulo 2 sum of bit positions of said codewords in the (n)th, (n-1)st and (n-2)nd sub-blocks selected systematically in accordance with a predetermined parity check matrix; means for appending said generated check bytes to said sub-block.
Claim 10
Dependent Claim 59 words
The system of claim 6 wherein said appending means includes: means for appending said third set of check bytes to said codewords of said (n)th sub-block; means for appending said second set of check bytes to said codewords of said (n+1)st sub-block, and means for appending said second set of check bytes to said codewords of said (n+2)nd sub-block.
Claim 11
Dependent Claim 77 words
The system of claim 7 further including: means, responsive to the receipt of the last sub-block of said block of data for sequentially activating said first, second and third syndrome generating means to produce said first, second and third sets of check bytes, respectively; means, responsive to said activating means, for appending said first, second and third sets of check bytes, generates in response to said activating means to said last sub-block of said block of data.
Claim 12
Dependent Claim 167 words
In a multibyte error code generation system, operable to identify errors in each sub-block of a block of data, said block having a plurality of sub-blocks, each of which has at least one codeword, each codeword consisting of a unique combination of data and check bytes, a method of identifying errors in said block of data comprising the steps of: producing a first set of check bytes, corresponding to the modulo 2 sum of bit positions of (n+2)nd, w(n+1 w)st and (n)th sub-blocks selected systematically in accordance with a predetermined parity check matrix; producing a second set of check bytes, corresponding to the modulo 2 sum of bit positions of said (n+1)st, (n)th and (n-1)st sub-blocks selected systematically in accordance with a predetermined parity check matrix; producing a third set of check bytes, corresponding to the modulo 2 sum of bit positions of said (n)th, (n-1)st and (n-2)nd sub-blocks selected systematically in accordance with a predetermined parity check matrix; appending said generated check bytes to said sub-blocks.
Claim 13
Dependent Claim 167 words
In a multibyte error code generation system, operable to identify errors in each sub-block of a block of data, said block having a plurality of sub-blocks, each of which has at least one codeword, each codeword consisting of a unique combination of data and check bytes, a method of identifying errors in said block of data comprising the steps of: producing a first set of check bytes, corresponding to the modulo 2 sum of bit positions of (n+2)nd, w(n+1 w)st and (n)th sub-blocks selected systematically in accordance with a predetermined parity check matrix; producing a second set of check bytes, corresponding to the modulo 2 sum of bit positions of said (n+1)st, (n)th and (n-1)st sub-blocks selected systematically in accordance with a predetermined parity check matrix; producing a third set of check bytes, corresponding to the modulo 2 sum of bit positions of said (n)th, (n-1)st and (n-2)nd sub-blocks selected systematically in accordance with a predetermined parity check matrix; appending said generated check bytes to said sub-blocks.
Claim 14
Dependent Claim 54 words
The method of claim 9 wherein said step of appending includes: appending said third set of check bytes to said codewords of said (n)th sub-block, appending said second set of check bytes to said codewords of said (n+1)st sub-block, and appending said second set of check bytes to said codewords of said (n+2)nd sub-block.
Claim 15
Dependent Claim 62 words
The method of claim 10 further including the steps of: sequentially producing, in response to the receipt of the last sub-block of said block of data, said first, second and third sets of check bytes, respectively; appending, in response to said step of activating, said first, second and third sets of check bytes, to said last sub-block of said block of data.
Claim 16
Dependent Claim 200 words
In a multibyte error code generation system, operable to identify errors in each sub-block of a block of data, said block having a plurality of sub-blocks, each of which has at least one codeword, each codeword consisting of a unique combination of data and check bytes, a method of identifying errors in said block of data comprising the steps of: producing a first set of check bytes, corresponding to the modulo 2 sum of bit positions of (n+2)nd, (n+1)st and (n)th sub-blocks selected systematically in accordance with a predetermined parity check matrix; appending said first set of check bytes to said codewords of said (n+2)nd sub-block; producing a second set of check bytes, corresponding to the modulo 2 sum of bit positions of said (n+1)st, (n)th and (n-1)st sub-blocks selected systematically in accordance with a predetermined parity check matrix; appending said second set of check bytes to said codewords of said (n+1)st sub-block; producing a third set of check bytes, corresponding to the modulo 2 sum of bit positions of said (n)th, (n-1)st and (n-2)nd sub-blocks selected systematically in accordance with a predetermined parity check matrix; appending said third set of check bytes to said codewords of said (n)th sub-block.
Claim 17
Dependent Claim 200 words
In a multibyte error code generation system, operable to identify errors in each sub-block of a block of data, said block having a plurality of sub-blocks, each of which has at least one codeword, each codeword consisting of a unique combination of data and check bytes, a method of identifying errors in said block of data comprising the steps of: producing a first set of check bytes, corresponding to the modulo 2 sum of bit positions of (n+2)nd, (n+1)st and (n)th sub-blocks selected systematically in accordance with a predetermined parity check matrix; appending said first set of check bytes to said codewords of said (n+2)nd sub-block; producing a second set of check bytes, corresponding to the modulo 2 sum of bit positions of said (n+1)st, (n)th and (n-1)st sub-blocks selected systematically in accordance with a predetermined parity check matrix; appending said second set of check bytes to said codewords of said (n+1)st sub-block; producing a third set of check bytes, corresponding to the modulo 2 sum of bit positions of said (n)th, (n-1)st and (n-2)nd sub-blocks selected systematically in accordance with a predetermined parity check matrix; appending said third set of check bytes to said codewords of said (n)th sub-block.
Claim 18
Dependent Claim 62 words
The method of claim 12 further including the steps of: sequentially generating, in response to the receipt of the last sub-block of said block of data, said first, second and third sets of check bytes, respectively; appending, in response to said step of activating, said first, second and third sets of check bytes to said last sub-block of said block of data.
Claim 19
Dependent Claim 250 words
In a multibyte error code generation system, operable to identify up to t 1 errors in each sub-block of a block of data and up to t 2 errors in said block, where t 1 and t 2 are positive integers and t 2 >t 1 , said block having a plurality of sub-blocks, each of which has at least one codeword containing up to 2 b -1 b-bit character positions, where b is a positive integer, each codeword consisting of a unique combination of data and 2t 1 +t 3 check bytes, where t 3 is a positive integer greater than or equal to t 1 , a method of identifying errors in said block of data comprising the steps of: producing 2t 1 +t 3 check bytes, each containing b bits, corresponding to the modulo 2 sum of bit positions of said codewords in the (n+2)nd, (n+1)st and (n)th sub-blocks selected systematically in accordance with a predetermined parity check matrix; producing 2t 1 +t 3 check bytes, each containing b bits, corresponding to the modulo 2 sum of bit positions of said codewords in the (n+1)st, (n)th and (n-1)st sub-blocks selected systematically in accordance with a predetermined parity check matrix; producing 2t 1 +t 3 check bytes, each containing b bits, corresponding to the modulo 2 sum of bit positions of said codewords in the (n)th, (n-1)st and (n-2)nd sub-blocks selected systematically in accordance with a predetermined parity check matrix; appending said generated check bytes to said sub-block.
Claim 20
Dependent Claim 250 words
In a multibyte error code generation system, operable to identify up to t 1 errors in each sub-block of a block of data and up to t 2 errors in said block, where t 1 and t 2 are positive integers and t 2 >t 1 , said block having a plurality of sub-blocks, each of which has at least one codeword containing up to 2 b -1 b-bit character positions, where b is a positive integer, each codeword consisting of a unique combination of data and 2t 1 +t 3 check bytes, where t 3 is a positive integer greater than or equal to t 1 , a method of identifying errors in said block of data comprising the steps of: producing 2t 1 +t 3 check bytes, each containing b bits, corresponding to the modulo 2 sum of bit positions of said codewords in the (n+2)nd, (n+1)st and (n)th sub-blocks selected systematically in accordance with a predetermined parity check matrix; producing 2t 1 +t 3 check bytes, each containing b bits, corresponding to the modulo 2 sum of bit positions of said codewords in the (n+1)st, (n)th and (n-1)st sub-blocks selected systematically in accordance with a predetermined parity check matrix; producing 2t 1 +t 3 check bytes, each containing b bits, corresponding to the modulo 2 sum of bit positions of said codewords in the (n)th, (n-1)st and (n-2)nd sub-blocks selected systematically in accordance with a predetermined parity check matrix; appending said generated check bytes to said sub-block.
Claim 21
Dependent Claim 54 words
The method of claim 14 wherein said step of appending includes: appending said third set of check bytes to said codewords of said (n)th sub-block, appending said second set of check bytes to said codewords of said (n+1)st sub-block, and appending said second set of check bytes to said codewords of said (n+2)nd sub-block.
Claim 22
Dependent Claim 62 words
The method of claim 15 further including the steps of: sequentially producing, in response to the receipt of the last sub-block of said block of data, said first, second and third sets of check bytes, respectively; appending, in response to said step of activating, said first, second and third sets of check bytes, to said last sub-block of said block of data.

References Cited (Backward Citations)

US4494234A Cited
US4525838A Cited
US4706250A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 1996-12-06 1997-06-07 1997-12-07 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2000-12-06 2001-06-07 2001-12-07 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2004-12-06 2005-06-07 2005-12-07 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag