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

Convolutional interleaver and deinterleaver

Assignee: Zenith Electronics LLC
•
Filing: 1994-09-29
•
Granted: 1996-11-05
•
Expires: 2014-09-29
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A convolutional interleaver or deinterleaver comprises an address signal generator for repeatedly generating [(B-1)N/2]+1 sequences of address signals, where B is a desired interleave depth and N is a value equal to or greater than the number of data bytes in a R-S block of the data stream. Each of the sequences corresponds to a respective row of a B column matrix, the first column of which comprises [(B-1)N/2]+1 consecutively numbered values. Each remaining column comprises the preceding column rotated by an integer multiple of N/B. The address signals are applied to a memory having [(B-1)N/2]+1 storage locations for reading the data stored at the address memory location and then writing the current data byte to the same memory location.

Inventors

  • 👤 Mark Fimoff
  • 👤 Scott F. Halozan
  • 👤 Raymond C. Hauge

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-04 13:44
CPC Classifications
H; H03; H03M; H03M13/00; H03M13/27; H03M13/2782; H03M13/2785; H03M13/2732; H03M13/276; H04; H04N; H04N19/00; H04N19/85; H04N19/89

Claims Analysis

Total Claims: 41
Claim 1
Independent Claim 127 words
Apparatus for convolutionally interleaving or deinterleaving a data signal comprising: means for generating ((B-1)N/2)+1 sequences of address signals, each of said sequences corresponding to a respective row of a B column matrix, the first column of said matrix comprising (B-1)N/2)+1 consecutively numbered values and each of the remaining columns comprising the preceding column rotated by a selected amount, where B and N are values related respectively to a selected interleave depth and a selected error correction block size of said data signal; memory means having ((B-1)N/2)+1 storage locations; and means for applying each of said address signals to said memory means for initially reading the data stored at the addressed memory location and for subsequently writing current data from said data signal into the addressed memory location.
Claim 2
Dependent Claim 127 words
Apparatus for convolutionally interleaving or deinterleaving a data signal comprising: means for generating ((B-1)N/2)+1 sequences of address signals, each of said sequences corresponding to a respective row of a B column matrix, the first column of said matrix comprising (B-1)N/2)+1 consecutively numbered values and each of the remaining columns comprising the preceding column rotated by a selected amount, where B and N are values related respectively to a selected interleave depth and a selected error correction block size of said data signal; memory means having ((B-1)N/2)+1 storage locations; and means for applying each of said address signals to said memory means for initially reading the data stored at the addressed memory location and for subsequently writing current data from said data signal into the addressed memory location.
Claim 3
Dependent Claim 20 words
The apparatus of claim 1 wherein the first column of said matrix begins with or ends with a zero value.
Claim 4
Dependent Claim 76 words
The apparatus of claim 1 wherein said generating means comprises means for generating said sequences of address signals such that each of said remaining columns of said matrix comprises the preceding column rotated by a factor (B-I)N/B, where I is an index value which increases by unity from a value of 1 to a value of (B-1) or from a value of (B-1) to a value of 1 for each successive one of said remaining columns.
Claim 5
Dependent Claim 11 words
The apparatus of claim 3 wherein N=208 and B=26 or 52.
Claim 6
Dependent Claim 53 words
The apparatus of claim 1 wherein said data signal comprises a plurality of successive data frames, each of said data frames comprising an integral number of R-S blocks characterized by a predetermined number of data bytes, said value N being selected to have a value equal to or greater than said predetermined number.
Claim 7
Dependent Claim 25 words
The apparatus of claim 2 wherein said generating means comprises means for initiating generation of said address signal sequences in synchronism with said data frames.
Claim 8
Dependent Claim 19 words
The apparatus of claim 5 wherein said predetermined number is equal to 207 and N is equal to 208.
Claim 9
Dependent Claim 11 words
The apparatus of claim 3 wherein B is equal to 26.
Claim 10
Dependent Claim 11 words
The apparatus of claim 3 wherein B is equal to 52.
Claim 11
Independent Claim 92 words
A method of convolutionally interleaving or deinterleaving a stream of data bytes comprising: repeatedly developing a first predetermined sequence of numbers; developing a second sequence of numbers, at a lower rate, extending from a first number to a second number; combining each number of said second sequence of numbers with each of the numbers of said first sequence of numbers to generate a sequence of addresses to address memory locations; reading the stored data byte at each addressed memory location; and writing a new data byte to the same addressed memory location.
Claim 12
Independent Claim 92 words
A method of convolutionally interleaving or deinterleaving a stream of data bytes comprising: repeatedly developing a first predetermined sequence of numbers; developing a second sequence of numbers, at a lower rate, extending from a first number to a second number; combining each number of said second sequence of numbers with each of the numbers of said first sequence of numbers to generate a sequence of addresses to address memory locations; reading the stored data byte at each addressed memory location; and writing a new data byte to the same addressed memory location.
Claim 13
Dependent Claim 35 words
The method of claim 10 wherein said first sequence of numbers comprises B numbers and wherein said second sequence of numbers is developed at a rate of 1/B relative to said first sequence of numbers.
Claim 14
Dependent Claim 22 words
The method of claim 11 wherein each of said first sequence of numbers is developed by addressing a memory containing B words.
Claim 15
Dependent Claim 38 words
The method of claim 11 wherein B is equal to a maximum expected interference duration divided by the number of correctable data byte errors in a predetermined number of said data bytes read from said addressed memory locations.
Claim 16
Dependent Claim 32 words
The method of claim 11 including subtracting the maximum of said first and second numbers from each number of said combined sequence exceeding said maximum number for generating said sequence of addresses.
Claim 17
Dependent Claim 13 words
The method of claim 14 wherein said first number is equal to 0.
Claim 18
Dependent Claim 15 words
The method of claim 15 wherein said second number is equal to 2600 or 5304.
Claim 19
Dependent Claim 15 words
The method of claim 14 wherein said first number is equal to 600 or 5304.
Claim 20
Dependent Claim 13 words
The method of claim 17 wherein said second number is equal to 0.
Claim 21
Dependent Claim 163 words
A circuit for convolutionally interleaving or deinterleaving a stream of data bytes comprising: first number generating means for repeatedly developing a first predetermined sequence of B numbers, where B is related to a selected interleave depth of said stream of data bytes; second number generating means for developing a second sequence of ((B-1)N/2)+1 numbers at a slower rate and extending from a first number to a second number, where N is related to a selected error correction block size of said stream of data combining means for combining each number of said second sequence of numbers with each of the numbers of said first sequence of numbers and producing an output; a memory for storing data bytes; means for supplying said stream of data bytes to said memory; and means for sequentially addressing memory locations in said memory under control of said output to read a data byte from said addressed location and to write a data byte to the same addressed location.
Claim 22
Dependent Claim 163 words
A circuit for convolutionally interleaving or deinterleaving a stream of data bytes comprising: first number generating means for repeatedly developing a first predetermined sequence of B numbers, where B is related to a selected interleave depth of said stream of data bytes; second number generating means for developing a second sequence of ((B-1)N/2)+1 numbers at a slower rate and extending from a first number to a second number, where N is related to a selected error correction block size of said stream of data combining means for combining each number of said second sequence of numbers with each of the numbers of said first sequence of numbers and producing an output; a memory for storing data bytes; means for supplying said stream of data bytes to said memory; and means for sequentially addressing memory locations in said memory under control of said output to read a data byte from said addressed location and to write a data byte to the same addressed location.
Claim 23
Dependent Claim 35 words
The circuit of claim 19 wherein B equals a maximum interference duration divided by the number of correctable data byte errors in a predetermined number of said data bytes read from said addressed memory locations.
Claim 24
Dependent Claim 24 words
The circuit of claim 19 wherein said second number generating means operates at a rate of 1/B relative to said first number generating means.
Claim 25
Dependent Claim 23 words
The circuit of claim 20 wherein said addressing means includes a modulo [(B-1)N/2]+1 converter supplied with said output and coupled to said memory.
Claim 26
Dependent Claim 52 words
The circuit of claim 19 wherein said stream of data bytes forms a plurality of successive data frames, each of said data frames comprising a plurality of R-S blocks characterized by a predetermined number of data bytes, N being selected to have a value equal to or greater than said predetermined number.
Claim 27
Dependent Claim 11 words
The circuit of claim 23 wherein N=208 and B=26 or 52.
Claim 28
Dependent Claim 17 words
The circuit of claim 19 wherein said first number generating means comprises a memory containing B words.
Claim 29
Dependent Claim 78 words
The circuit of claim 25, further including: means for generating a byte clock and a divide-by-B first counter; said second number generating means comprising a divide-by-((B-1)N/2)+1 second counter; said first counter, responsive to said byte clock, sequentially addressing said B word memory at the rate of said byte clock for generating said first sequence of B numbers and said first counter clocking said second counter at a rate of byte clock/B for generating said second sequence of numbers.
Claim 30
Dependent Claim 32 words
The circuit of claim 26 wherein said stream of data bytes forms a plurality of successive data frames and including means for resetting said first counter in synchronism with said data frames.
Claim 31
Dependent Claim 20 words
The circuit of claim 26 wherein said first counter comprises an up-counter and said first number is equal to 0.
Claim 32
Dependent Claim 15 words
The circuit of claim 28 wherein said second number is equal to 2600 or 5304.
Claim 33
Dependent Claim 22 words
The circuit of claim 26 wherein said first counter comprises a down-counter and said first number is equal to 2600 or 5304.
Claim 34
Dependent Claim 13 words
The circuit of claim 30 wherein said second number is equal to 0.
Claim 35
Dependent Claim 107 words
A circuit for convolutionally interleaving or deinterleaving a data stream comprising successive equal length blocks of R-S encoded data bytes, said circuit comprising: a divide-by-B counter responsive to a byte clock signal for generating an output count, where B is a selected interleave depth; means for multiplying said output count by the factor N/B, where N is a value equal to or greater than the number of data bytes comprising said R-S blocks; a modulo [(B-1)N/2)+converter; and a combining circuit for combining the output of said multiplying means and the output of said modulo converter and applying said combined signal to the input of said modulo converter.
Claim 36
Dependent Claim 107 words
A circuit for convolutionally interleaving or deinterleaving a data stream comprising successive equal length blocks of R-S encoded data bytes, said circuit comprising: a divide-by-B counter responsive to a byte clock signal for generating an output count, where B is a selected interleave depth; means for multiplying said output count by the factor N/B, where N is a value equal to or greater than the number of data bytes comprising said R-S blocks; a modulo [(B-1)N/2)+converter; and a combining circuit for combining the output of said multiplying means and the output of said modulo converter and applying said combined signal to the input of said modulo converter.
Claim 37
Dependent Claim 11 words
The circuit of claim 32 wherein N=208 and B=26 or 52.
Claim 38
Dependent Claim 39 words
The circuit of claim 32 wherein said stream of R-S encode data bytes is provided in the form of a plurality of successive data frames and including means for resetting said divide-by-B counter in synchronism with said data frames.
Claim 39
Dependent Claim 17 words
The circuit of claim 32 including a latch for applying said combined signal to said modulo converter.
Claim 40
Dependent Claim 30 words
The circuit of claim 32 wherein said divide-by-B counter comprises a down-counter and said combining circuit comprises means for subtracting said output count from the output of said modulo converter.
Claim 41
Dependent Claim 30 words
The circuit of claim 32 wherein said divide-by-B counter comprises an up-counter and said combining circuit comprises means for adding said output count to the output of said modulo converter.

References Cited (Backward Citations)

US5241563A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 1999-11-05 2000-05-06 2000-11-05 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2003-11-05 2004-05-06 2004-11-05 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2007-11-05 2008-05-06 2008-11-05 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag