DSL modem utilizing low density parity check codes
Download PDFInfo
 Publication number
 US6567465B2 US6567465B2 US09893383 US89338301A US6567465B2 US 6567465 B2 US6567465 B2 US 6567465B2 US 09893383 US09893383 US 09893383 US 89338301 A US89338301 A US 89338301A US 6567465 B2 US6567465 B2 US 6567465B2
 Authority
 US
 Grant status
 Grant
 Patent type
 Prior art keywords
 matrix
 column
 descendant
 ones
 ancestor
 Prior art date
 Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
 Active
Links
Images
Classifications

 H—ELECTRICITY
 H04—ELECTRIC COMMUNICATION TECHNIQUE
 H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
 H04L1/00—Arrangements for detecting or preventing errors in the information received
 H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
 H04L1/0041—Arrangements at the transmitter end

 H—ELECTRICITY
 H03—BASIC ELECTRONIC CIRCUITRY
 H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
 H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
 H03M13/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
 H03M13/05—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
 H03M13/11—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits using multiple parity bits
 H03M13/1102—Codes on graphs and decoding on graphs, e.g. lowdensity parity check [LDPC] codes
 H03M13/1148—Structural properties of the code paritycheck or generator matrix

 H—ELECTRICITY
 H04—ELECTRIC COMMUNICATION TECHNIQUE
 H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
 H04L1/00—Arrangements for detecting or preventing errors in the information received
 H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
 H04L1/0056—Systems characterized by the type of code used
 H04L1/0057—Block codes

 H—ELECTRICITY
 H04—ELECTRIC COMMUNICATION TECHNIQUE
 H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
 H04L27/00—Modulatedcarrier systems
 H04L27/26—Systems using multifrequency codes
 H04L27/2601—Multicarrier modulation systems
 H04L27/2602—Signal structure
Abstract
Description
This application claims priority from U.S provisional application SNo. 60/292,433 filed May 21, 2001.
1. Field of the Invention
The present invention relates generally to telecommunications. More particularly, the present invention relates to DSL modems utilizing low density parity check (LDPC) codes and methods of simply generating such LDPC codes.
2. State of the Art
LDPC codes were invented by R. Gallager in 1963. R. G. Gallager, “LowDensityParityCheck Codes”, MIT Press, Cambridge, Mass. 1963. Over thirty years later, a number of researchers showed that LDPC code is a constructive code which allows a system to approach the Shannon limit. See, e.g., D. J. C. MacKay and R. M. Neal, “Near Shannon limit performance of LDPC codes”, Electron. Letters, Vol. 32, No. 18, August 1996; D. J. C. MacKay, “Good ErrorCorrecting Codes Based on Very Sparse Matrices”, IEEE Transactions on Information Theory, Vol. 45, No. 2, March 1999; D. J. C. MacKay, Simon T. Wilson, and Matthew C. Davey, “Comparison of Constructions of Irregular Gallager Codes”, IEEE Transactions on Communications, Vol. 47, No. 10, October 1999; Marc P. C. Fossorier, Miodrag Michaljevic, and Hideki Imai, “Reduced Complexity Iterative Decoding of LDPC Codes Based on Belief Propagation”, IEEE Transactions on Communications, Vol. 47, No. 5, May 1999; E. Eleftheriou, T. Mittelholzer, and A. Dholakia, “Reducedcomplexity decoding algorithm for LDPC codes”, Electron. Letter, Vol. 37, January 2001. Indeed, these researchers have proved that LDPC code provides the same performance as Turbocode and provides a range of tradeoffs between performance and decoding complexity. As a result, several companies have suggested that LDPC code be used as part of the G.Lite.bis and G.dmt.bis standards. IBM Corp., “LDPC codes for G.dmt.bis and G.lit.bis”, ITUTelecommunication Standardization Sector, Document CF060, Clearwater, Fla., Jan. 812, 2001; Aware, Inc., “LDPC Codes for ADSL”, ITU—Telecommunication Standardization Sector, Document BI068, Bangalore, India, Oct. 2327, 2000; IBM Corp., “LDPC codes for DSL transmission”, ITU—Telecommunication Standardization Sector, Document BI095, Bangalore, India, Oct. 2327, 2000; IBM Corp., “LDPC coding proposal for G.dmt.bis and G.lite.bis”, ITU—Telecommunication Standardization Sector, Document CF061, Clearwater, Fla., Jan. 812, 2001; IBM Corp., Globespan, “G.gen: G.dmt.bis: G.Lite.bis: Reducedcomplexity decoding algorithm for LDPC codes”, ITU—Telecommunication Standardization Sector, Document IC071, Irvine, Calif., Apr. 913, 2001.
LDPC code is determined by its check matrix H. Matrix H is used in a transmitter (encoder) for code words generation and in a receiver (decoder) for decoding the received code block. The matrix consists of binary digits 0 and 1 and has size M_{k}*M_{j}, where M_{k }is the number of columns, and M_{j }is the number of rows. Each row in the matrix defines one of the check equations. If a “1” is located in the kth column of the j'th row, it means that the kth bit of the code block participates in the jth check equation.
Matrix H is a “sparse” matrix in that it does not have many “ones”. Generally, the matrix contains a fixed number of “ones” N in each column and a fixed number of “ones”N_{k }in each row. In this case, design parameters should preferably satisfy the equation:
Although it is convenient to have equal numbers of “ones” in each column and in each row, this is not an absolute requirement. Some variations of design parameters N_{k }and N_{j }are permissible; i.e., N_{k}(j) and N_{j}(k) can be functions of j and k, correspondingly. In addition, another important constraint for matrix design is that the matrix should not contain any rectangles with “ones” in the vertices. This property is sometimes called “elimination of cycles with length 4” or “4cycle elimination”. For purposes herein, it will also be called “rectangle elimination”.
Generally, there are two approaches in the prior art to designing H matrices. The first approach was that proposed by Gallager in his previously cited seminal work, R. G. Gallager, “LowDensityParityCheck Codes”, MIT Press, Cambridge, Mass. 1963, and consists of a random distribution of N_{j }ones within each matrix column. This random distribution is carried out column by column, and each step is accompanied by rectangle elimination within the current column relative to the previous columns. The second approach to Hmatrix design is based on a deterministic procedure. For example, in the previously cited IBM Corp., “LDPC codes for G.dmt.bis and G.lit.bis”, ITU—Telecommunication Standardization Sector, Document CF060, Clearwater, Fla., Jan. 812 2001, a deterministic Hmatrix construction is proposed which includes identity matrices and powers of an initial square permutation matrix.
Both of the prior art approaches to designing H matrices have undesirable characteristics with respect to their implementation in DSL standards. In particular, the random distribution approach of Gallager is not reproducible (as it is random), and thus, the H matrix used by the transmitting modem must be conveyed to the receiving modem. Because the H matrix is typically a very large matrix, the transfer of this information is undesirable. On the other hand, while the deterministic matrix of IBM is reproducible, it is extremely complex and difficult to generate. Thus, considerable processing power must be dedicated to generating such a matrix, thereby adding complexity and cost to the DSL modem. Besides, this approach does not allow constructing a matrix with arbitrary design parameters M_{k }and M_{j. }
It is therefore an object of the invention to provide simple methods of generating reproducible H matrices.
It is another object of the invention to provide DSL modems which utilize simply generated reproducible H matrices.
In accord with these objects which will be discussed in detail below, the DSL modem of the invention generally includes a receiver and a transmitter with the transmitter including a substantially deterministic LDPC encoder. The encoder is a function of a substantially deterministic H matrix (H=AB) which is determined according to the steps and rules set forth below. More particularly, the encoder takes a block of bits and utilizes a generation matrix G=A^{−1}B which is derived from (i.e., is a function of) the H matrix in order to generate redundant parity bits. The redundant bits are appended to the original block of bits to generate a word.
The substantially deterministic H matrix is determined as follows. First, the “ones” of a first column N are assigned randomly or deterministically. Preferably, the ones are distributed evenly within the first column with the first “1” in the first row of the first column according to the algorithm:
Then, beginning with the second column, assignment of “ones” is carried out deterministically with each “1” in a previous (ancestor) column generating a “1” in the next (descendant) column based on the rule that a descendant is placed one position below or one position above an ancestor (it being determined in advance by convention whether the position below is used or the position above is used). As a result, a descending diagonal or an ascending diagonal is generated. Where a descending diagonal is used and the ancestor is in the lowest row of the matrix, the descendant may take any position in the next column, although it is preferable to place the descendant in the highest free position.
When distributing “ones” in any given column, each new descendant should be checked to ensure that no rectangles are generated in conjunction with other “ones” in the current column and previous columns. If a rectangle is generated, the location of the descendant is changed, preferably by shifting the location down or up (by convention) one position at a time until the descendant is in a position where no rectangle is generated. If the position is shifted down and the lowest position is reached without finding a suitable position, the search is continued by shifting the location one position up from the initial descendant position until a suitable position is found.
According to the invention, the descendants may be generated in any given order. Two preferable generation orders correspond to increasing or decreasing ancestor positions in the column. For example, descendants may be generated by first generating a descendant for the ancestor at the bottom of the matrix, then by generating a descendant for the ancestor above that in the column, then by generating a descendant for the ancestor above that one, etc. (also called herein “bottomup”); or by first generating a descendent for the ancestor at the top of the matrix, then by generating a descendant for the ancestor below that in the column, then by generating a descendant for the ancestor below that one, etc. (also called herein “topdown”).
When generating descendants it is possible that one or more descendants can “disappear” because of the lack of free positions satisfying the rectangle elimination criterium. To regenerate the “lost descendant”, it is generally sufficient to change the order of descendant generation for that column. Thus, if the order of descendant generation was conducted “bottomup”, the direction of generation is switched to “topdown” and vice versa; preferably for that column only. If changing the order of descendant generation in a column does not cause a free position to appear, the descendant disappears for that column.
When a descendant disappears it is desirable in the next column to provide a new descendant which does not have an ancestor. In this case, a search of an acceptable position for an “ancestorless” descendant is conducted, preferably from the first row down.
Additional objects and advantages of the invention will become apparent to those skilled in the art upon reference to the detailed description taken in conjunction with the provided figures.
FIG. 1 is a high level block diagram of a DSL modem utilizing LDPC encoding and decoding according to the invention.
FIG. 2 is a high level flow diagram of a manner of using an H matrix in the DSL modem of FIG. 1.
FIG. 3 is a flow chart of a preferred method of generating an H matrix according to the invention.
FIG. 4a is an H matrix of size 20×15 generated using bottomup descendant generation.
FIG. 4b is an H matrix of size 20×15 generated using topdown descendant generation.
FIG. 5 is an H matrix of size 276×69 generated using bottomup descendant generation.
FIG. 6 is an H matrix of size 529×69 generated using bottomup descendant generation
FIGS. 7a7 c are examples of initialization values for the Hmatrix according to a second embodiment of the invention.
Turning to FIG. 1, a high level block diagram of a DSL modem 10 is seen. The modem 10 preferably includes a digital interface 20, a transmitter section 30 and a receiver section 40. The transmitter section preferably includes a scrambler 52 which receives data from the digital interface 20, a LDPC encoder 54, an interleaver 56, a bit distributor 58, a mapper 60, a gain element 62, an infinite fast Fourier transform block (IFFT) 64, a cyclic extension block 66, a digital to analog converter 68 and a front end transmit block 69 which interfaces with a hybrid 70. The receiver section preferably includes a front end receive block 71 which interfaces with the hybrid 70, an analog to digital converter 72, a time equalizer (TEQ) 73, a fast Fourier transform block (FFT) 74, a frequency equalizer (FEQ) 76, a demapper 78, a deinterleaver 80, a LDPC decoder 82, and a descrambler 84 which provides data to the digital interface 20. Other than the details of the LDPC encoder 54 (and decoder 82), the modem 10 is substantially as would be understood by those skilled in the art. In addition, it will be appreciated by those skilled in the art that the modem 10 may be implemented in hardware, software, or a combination thereof.
High level details of the LDPC coder 54 and decoder 82 are seen in FIG. 2. In particular, the LDPC coder 54 and decoder 82 utilize an H matrix which is designed according to the steps and rules set forth below. The H matrix, where H=AB, with A being a square matrix and B being the remaining matrix rectangle, is used for encoding purposes to generate a generation matrix G. Matrix G is defined by G=A^{−1}B, which results from multiplying the inverse of the square A matrix with the rectangular B matrix. The LDPC encoder 54 uses the G matrix and a block of bits received from the scrambler 52 to generate a set of parity bits (also called redundant bits). The parity bits are appended to the block of bits received from the scrambler 52 to generate a word which is forwarded to the interleaver 54 and further processed. If desired, and as suggested by FIG. 2, rather than appending the redundant bits to the block of data, the G matrix may include an “identity matrix” portion so that a multiplication of the G matrix and the block of bits directly provides the resulting word.
The H matrix is likewise used on the decoding side. In particular, deinterleaved words received by the LDPC decoder are subjected to soft decisions (as is known in the art), and then subjected to probabilistic decoding which requires information of the H matrix which was utilized to generate the parity bits.
The H matrix (and G matrix) may be generated by a microprocessor (not shown) and software which may also be used to implement one or more additional elements of the transmitter or receiver of the modem 10. Alternatively, the H matrix (and G matrix) may be implemented in other hardware and/or software in the modem 10. Technically, only the G matrix needs to be available for the transmitter (encoding), while only the H matrix is needed for the receiver (decoding).
According to the invention, the H matrix is a substantially deterministic matrix which, according to a first embodiment, may be determined according to the steps of FIG. 3. First, at step 102 the “ones” of a first column N_{j }are assigned randomly or deterministically. Preferably, the “ones” are distributed evenly within the first column with the first “1” in the first row of the first column according to relationship (2) set forth above:
where M_{j }is the number of rows in the matrix and N_{j }is the number of “ones” in the column. Thus, if the “ones” are assigned deterministically, the first “one” is located at H(1,1) and the remainder of “ones” for the column are evenly distributed in the column. If, on the other hand, the “ones” are assigned randomly, preferably, a “one” is located in a random row of column 1, and the remaining “ones” are evenly distributed. While less preferred, all “ones” in column one can be randomly located.
Returning to FIG. 3, once the “ones” of the first column are assigned, at 103 the next column is addressed. In particular, at 104, each of the “ones” of the next column is generated deterministically (i.e., according to a predetermined set of rules). In particular, a “one” of the second column (called a “descendant”) is generated at 104 by placing the descendant “1” one position below or one position above its “ancestor” “one” of the previous column (it being determined in advance by convention whether the position below is used or the position above is used). As a result, a descending diagonal or an ascending diagonal is generated. Where a descending diagonal is used and the ancestor is in the lowest row of the matrix, the descendant may take any position in the next column, although it is preferable to place the descendant in the highest free position. This may be seen with reference to columns 5 and 6 of FIG. 4b. As seen in FIG. 4b, H(15,5)=1, and accordingly, the descendant is found in the first row of column 6; i.e., H(1,6)=1. Similarly H(15,9) generates H(1,10), and H(15,12) generates H(1,13). Conversely, where an ascending diagonal is used and the ancestor is in the highest row of the matrix, the descendant may take may position in the next column, although it is preferable to place the descendant in the lowest free position.
When distributing “ones” in any given column, at 106, each new descendant is checked to ensure that no rectangles are generated in conjunction with other “ones” in the current column and previous columns. If a rectangle is generated, a command to change the location of the descendant is issued at 108, preferably by shifting the location down or up (by convention) one position at a time (at 104) until the descendant is in a position where no rectangle is generated (as determined at 106). If the position is shifted down and the lowest position is reached without finding a suitable position, the search is continued by shifting the location one position up from the initial descendant position until a suitable position is found.
Rectangle elimination is seen in the matrix of FIG. 4a. In particular, referring to the fifth and sixth columns, according to the rule of descendants, ancestor H(5,5)=1 should generate a descendant H(6,6)=1. However, this descendant would cause a rectangle to appear in conjunction with H(1,6), H(1,1), and H(6,1). Going down in column 6, it is seen that position H(7,6) is also not acceptable as it would cause a rectangle to appear in conjunction with H(7,2), H(12,2) and H(12,6). Thus, the descendant of H(5,5) is found in position H(8,6).
According to the invention, the descendants may be generated in any given order. Two preferable generation orders correspond to increasing or decreasing ancestor positions in the column. For example, descendants may be generated by first generating a descendant for the ancestor at the bottom of the matrix, then by generating a descendant for the ancestor above that in the column, then by generating a descendant for the ancestor above that one, etc. (also called herein “bottomup”). The bottomup technique is seen in FIG. 4a, where a descendant is generated first for H(15,5), then for ancestor H(10,5), and finally for ancestor H(5,5). Alternatively, descendants may generated by first generating a descendent for the ancestor at the top of the matrix, then by generating a descendant for the ancestor below that in the column, then by generating a descendant for the ancestor below that one, etc. (also called herein “topdown”). The topdown technique generates a full diagonal of “ones” from H(1,1) to H(M_{j},M_{j}) as is seen in FIG. 4b. In FIG. 4b, a descendant is generated first for H(5,5), then for ancestor H(10,5), and finally for ancestor H(15,5). Regardless of whether the topdown or bottomup technique is used, at 110, a determination is made as to whether all descendants for a column have assigned. If all descendants for the column have not been assigned, the program cycles through steps 104110. If all descendants for the column have been assigned, unless a determination is made at 112 that the column is the last column, the next column is accessed at 103 for placement of descendant “ones”.
When generating descendants it is possible that one or more descendants can “disappear” because of the lack of free positions satisfying the rectangle elimination criterium. This determination can be made at step 115 (shown in phantom after step 108). To regenerate the “lost descendant”, it is generally sufficient to change the order of descendant generation for that column (step 117—shown in phantom). Thus, if the order of descendant generation was conducted “bottomup”, the direction of generation is switched to “topdown” and vice versa. Preferably, the order of descendant generation is changed only for that column. If changing the order of descendant generation in a column does not cause a free position to appear, the descendant disappears for that column.
When one or more descendants disappear in a column, it is desirable in the next column to provide a new descendant for each descendant which does not have an ancestor. In this case, a search of acceptable positions for each “ancestorless” descendant is conducted, preferably from the first row down.
Generally, as set forth above, the number of “ones” in each column N_{j}is determined by the number of “ones” in the previous column, because a descendant is generated for each ancestor. In the preferred embodiment of the invention, this number is fixed and defined as a design parameter. On the other hand, the number of “ones” in each row (row weight) is preferably limited to a maximum row weight (Max(N_{k})) which is also a design parameter. Thus, if during distribution of “ones” within a particular column, the number of “ones” in some row reaches Max(N_{k}), “ones” should not be inserted in that row (i.e., the remaining part of the row is automatically filled with “zeros”), and the descendant “one” is moved by shifting the location of the descendant one position down or up (by convention).
An implementation in Matlab of the method of H matrix design according to FIG. 3 as described above is as follows:
CheckMatrix initialization  
Mk=input (‘number of matrix columns, code block length  Mk= ’); 
Nj=input (‘number of “ones” in a column, number of checks for bit  Nj= ’); 
Nk=input (‘number of “ones” in a row, number of bits in each check  Nk= ’); 
Mj=input (‘number of matrix rows, number of check equations  Mj= ’); 
C= [];  % CheckMatrix 
wa [0 2= (ones(size (1: (Mk−1))))] ;  
for j=1;Mj  
C= [C;w] ;  
end  
vNk=zeros (size (1:Mj)) ;  % current numbers of “ones” in rows 
vNj=zeros (size (1:Mk)) ;  % current numbers of “ones” in columns 
1st column initialization  
rr=floor (Mj/Nj) ;  
for jr=1:Nj  % evenly distributed ones 
r=1 + (jr−1) *rr;  
C (r, 1) =1 ;  
vNk (r) =1 ;  
end  
vNj (1) =Nj ;  
Matrix Design  
for k=1: (Mk−1)  % column by column “1” assignment 
z=C (:, (k+1)) ;  
for h=1:2  %h=1:search, beginning from the last row 
if h==1  
count=0; counth1=0 ;  % current number of “ones” in the column 
for jj=1:Mj  % row by row assignment, beginning from Mj 
x=0 ;  
j=Mj+1−jj ;  
if j==Mj & C(Mj,k)==1  % transfer “1” from last row to 1st row 
n=0; nn=0 ;  
while nn==0 & n<Mj  
n=n+1 ;  
if C(n, (k+1))==2  
C(n, (k+1))=1 ;  
nn=1: counth1=counth1+1 ;  
end  
end  
x=n ;  
elseif C(j,k)==1 & C((j+1), (k+1))==2  % typical diagonal shift 
C((j+1), (k+1))=1 ;  
x=j+1 ;  
counth1=counth1+1 ;  
elseif C(j,k)==1 & C((j+1), (k+1)) <2  % additional shift 
m=0; nn=0 ;  
while nn==0 & m<(Mj+1)  % searching the acceptable place 
m=m+1 ;  
if (j+1+m) < (Mj+1)  % searching down 
nm=m;  
elseif (j+1+m) >Mj  % searching up 
nm=Mj−j−1−m;  
end  
if C(j+1+nm, (k+1))==2  
C(j+1+nm, (k+1))=1;  
nn=1; counth1=counth1+1;  
end  
end  
x=j+1+nm;  
end  
if x>0  % rectangle elimination 
count=count+1 ;  
kk=k;  
while kk>0  
if C(x,kk)==1  
for jj=1:Mj  
if (C(jj,kk)==1) & (abs(jj−x) >0) & (count<Nj)  
C (jj, (k+1))=0;  
end  
end  
end  
kk=kk−1;  
end  
end  
end  % for jj=1:Mj (end of one column design for h=1) 
elseif h==2 & counth1<Nj  
count=0; counth2=0;  
for jj=1:Mj  % row by row “1” assignment from 1st row 
x=0;  
j=jj;  
if j==Mj & C(Mj,k)==1  % transfer “1” from last row to 1st row 
n=0;nn=0;  
while nn==0 & n<Mj  
n=n+1;  
if z (n) ==2  
z (n) =1;  
nn=1;  
counth2=counth2+1;  
end  
end  
x=n;  
elseif C(j,k)==1 & z(j+1)==2  
z (j+1) =1;  
x=j+1;  
counth2=counth2+1;  
elseif C(j,k)==1 & z(j+1) <2  
m=0;nn=0;  
while nn==0 & m<(Mj−1)  % searching the acceptable place 
m=m+1;  
if (j+1+m) < (Mj+1)  % searching down 
nm=m;  
elseif (j+1+m) >Mj  % searching up 
nm=Mj−j−1−m;  
end  
if z(j+1+nm)==2  
z (j+1+nm)=1;  
nn=1;  
counth2=counth2+1;  
end  
end  
x=j+1+nm;  
end  
if x>0  % rectangle elimination 
count=count+1;  
kk=k;  
while kk>0  
if C(x,kk)==1  
for jj=1:Mj  
if (C(jj,kk)==1) & (abs(jj−x)>0) & (count<Nj)  
z(jj)=0;  
end  
end  
end  
kk=kk−1;  
end  
end  
end  % for jj=1:Mj (end of one column design for h=2) 
if counth2>counth1  
C(: , (k+1))=z;  
end  
end  % if h==1 
end  % for h=1:2 
if vNj (k) <Nj  % ancestor recreation 
qq=0; f=0;  
while f<1 & qq<Mj  
qq=qq+1  
if C(qq, (k+1))==2  
C(qq, (k+1))=1;  
f=f+1  
end  
end  
end  
for jj=1:Mj  
if C(jj, (k+1))==1  
vNk (jj)=vNk (jj)+1;  % calculation of ones in each row 
vNj (k+1)=vNj (k+1) +1;  % calculation of ones in each column 
else  
C (jj, (k+1))=0;  % change “2” to “0” in columns 
end  
if vNk(jj)==Nk  
for kk=(k+2) :Mk  % change “2” to “0’ in rows 
C (jj ,kk)=0;  
end  
end  
end  
end  % for k=1: (Mk−1) (end of columns design) 
C;  % demo:Check Matrix 
vNj  % demo:Number of ones in columns 
vNk  % demo:Number of ones in rows 
It will be appreciated by those skilled in the art that other implementations of generating an H matrix design in Matlab or in other software or hardware are easily obtained.
FIG. 5 is an H matrix of size 276×69 generated using bottomup descendant generation as set forth in the previously listed Matlab program. The H matrix of FIG. 5 has design parameters M_{k=}276, M_{j=}69, N_{k=}12, N_{j}=3. The generated H matrix contains a fixed number of “ones” in columns N_{j}=3, and a fixed number of “ones” in rows N_{k}=12. Similarly, FIG. 6 is an H matrix of size 529×69 generated using the previously listed Matlab program. The H matrix of FIG. 6 has the design parameters M_{k=}529, M_{j}=69, Max(N_{k})=12, N_{j=3}. This H matrix contains a fixed number of “ones” in its columns, N_{j=}3; and a nonfixed, but limited number of “ones” in its rows, 20<N_{k}<25. In FIGS. 5 and 6, a “one” is shown by a dot, while a “zero” is shown by the absence of a dot.
According to a second embodiment of the invention, the design procedure for generating the H matrix may be simplified. In particular, because every column should contain at least one “1”, it is possible to initialize the H matrix with an effectively continuous diagonal. Three such diagonals are shown in FIGS. 7a7 c, with FIG. 7a representing a descending diagonal, FIG. 7b representing an ascending diagonal, and FIG. 7c representing a mixed descendingascending diagonal. Of course, an ascendingdescending diagonal (not shown) could likewise be utilized. With the H matrix initialized as shown, the steps shown in FIG. 3 are carried out only with respect to the “ones” which are distributed in the first column and their descendants, thereby reducing the number of calculations required.
With the substantially deterministic method of generating H matrices set forth above, it will be appreciated that if standard conventions (e.g., deterministic first column, descending diagonal generation, bottomup descendant generation) are agreed upon for all modems, the only information which must be transferred from a transmitting modem to a receiving modem regarding the H matrix includes the matrix size (M_{k}×M_{j}), and the number (or maximum thereof) of “ones” in a row or column; N_{k }and N_{j}. If standard conventions are not used, code representing one or more of: whether descending or ascending diagonals are used, whether bottomup or topdown descendant generation is used, the basis of the first column, etc. will also be required to be sent from the transmitting modem to the receiving modem. Regardless, the generation of the H matrix (and hence the G matrix) will be greatly simplified in both the transmitter and receiver.
There have been described and illustrated herein embodiments of modems utilizing LDPC coders based on particular H matrices, and methods of simply generating such H matrices. While particular embodiments of the invention have been described, it is not intended that the invention be limited thereto, as it is intended that the invention be as broad in scope as the art will allow and that the specification be read likewise. Thus, while particular code has been listed for generating H matrices, it will be appreciated that other software and/or hardware could be utilized. Also, while the H matrix was discussed with reference to a particular DSLtype modem, it will be appreciated that the H matrix could be used in other types of modem or in other applications. Further, while particular preferred conventions were described, it will be appreciated that other conventions could be added or substituted. For example, while a “bottomup” and a “topdown” convention were described, a “middleout” convention could be utilized. Similarly, while the convention of causing the descendant to be located in a row one position down or up from the ancestor of the previous column is preferred, a diagonal can be likewise generated by causing the descendant to be located two, three or n rows up or down from the ancestor of the previous column. In addition, the convention utilized to generate the descendants could change, by convention, from column to column. Furthermore, while rectangle elimination is shown in FIG. 3 to be conducted upon placement of each “1” value in the matrix, it will be appreciated that no checking is required for the first few columns which in principle cannot create a rectangle. Also, while FIG. 3 represents checking for rectangle elimination after each placement of a “1”, it is equivalently possible (and is in fact shown in the Matlab program described above) to determine in advance for each column, into which rows a “1” value cannot be placed due to the rectangle rule. Thus, many equivalent flow charts such as FIG. 3 may be generated which represent methods of generating an H matrix according to the invention. Further yet, while the invention was described as generating a matrix by inserting “1” values into a first column of the matrix and assigning descendant ones in subsequent columns, it will be appreciated that the “1” values could be inserted from left to right, or from right to left in the matrix, and the first column to received the ones could be any column of the matrix. Where, a middle column is selected as the first column to receive the ones, the first and last columns will be perceived to be adjacent each other for purposes of continuing the assignment of descendant ones. It will therefore be appreciated by those skilled in the art that yet other modifications could be made to the provided invention without deviating from its spirit and scope as so claimed.
Claims (50)
Priority Applications (2)
Application Number  Priority Date  Filing Date  Title 

US29243301 true  20010521  20010521  
US09893383 US6567465B2 (en)  20010521  20010627  DSL modem utilizing low density parity check codes 
Applications Claiming Priority (3)
Application Number  Priority Date  Filing Date  Title 

US09893383 US6567465B2 (en)  20010521  20010627  DSL modem utilizing low density parity check codes 
US09961839 US6950461B2 (en)  20010521  20010924  Modems utilizing low density parity check codes 
PCT/US2002/011835 WO2002095965A1 (en)  20010521  20020416  Dsl modem utilizing low density parity check codes 
Related Child Applications (1)
Application Number  Title  Priority Date  Filing Date 

US09961839 ContinuationInPart US6950461B2 (en)  20010521  20010924  Modems utilizing low density parity check codes 
Publications (2)
Publication Number  Publication Date 

US20020181569A1 true US20020181569A1 (en)  20021205 
US6567465B2 true US6567465B2 (en)  20030520 
Family
ID=26967324
Family Applications (2)
Application Number  Title  Priority Date  Filing Date 

US09893383 Active US6567465B2 (en)  20010521  20010627  DSL modem utilizing low density parity check codes 
US09961839 Active 20230305 US6950461B2 (en)  20010521  20010924  Modems utilizing low density parity check codes 
Family Applications After (1)
Application Number  Title  Priority Date  Filing Date 

US09961839 Active 20230305 US6950461B2 (en)  20010521  20010924  Modems utilizing low density parity check codes 
Country Status (2)
Country  Link 

US (2)  US6567465B2 (en) 
WO (1)  WO2002095965A1 (en) 
Cited By (75)
Publication number  Priority date  Publication date  Assignee  Title 

US20020112649A1 (en) *  20001220  20020822  Brian Robson  Material for use in metal casting 
US20030089123A1 (en) *  20011112  20030515  Tomoji Tarutani  Swash plate type compressor 
US20040054959A1 (en) *  20020918  20040318  Yufei Blankenship  Method and apparatus for encoding data 
US20040054960A1 (en) *  20020703  20040318  Mustafa Eroz  Method and system for providing low density parity check (LDPC) encoding 
US20040093549A1 (en) *  20021107  20040513  Hongwei Song  Encoding method using a low density parity check code with a column weight of two 
US20040148561A1 (en) *  20030123  20040729  BaZhong Shen  Stopping and/or reducing oscillations in low density parity check (LDPC) decoding 
US20040186992A1 (en) *  20011227  20040923  Wataru Matsumoto  Ldpc code inspection matrix generation method 
US20040199859A1 (en) *  20020228  20041007  Wataru Matsumoto  Ldpc code inspection matrix generation method and inspection matrix generation device 
US20040252791A1 (en) *  20030613  20041216  BaZhong Shen  LDPC (Low Density Parity Check) coded modulation hybrid decoding using nonGray code maps for improved performance 
US20040255229A1 (en) *  20030613  20041216  BaZhong Shen  Iterative metric updating when decoding LDPC (Low Density Parity Check) coded signals and LDPC coded modulation signals 
US20040255228A1 (en) *  20030613  20041216  Broadcom Corporation A, California Corporation  LDPC (low density parity check) coded modulation symbol decoding 
US20040255231A1 (en) *  20030613  20041216  BaZhong Shen  LDPC (Low Density Parity Check) coded modulatiion symbol decoding using nonGray code maps for improved performance 
US20040258177A1 (en) *  20030613  20041223  BaZhong Shen  Multidimensional space Gray code maps for multidimensional phase modulation as applied to LDPC (Low Density Parity Check) coded modulation 
US20050026572A1 (en) *  20030728  20050203  Texas Instruments Incorporated  Noise determiner, a DSL modem including a noise determiner and a method of determining noise in a communications system 
US20050028071A1 (en) *  20030729  20050203  BaZhong Shen  LDPC (Low Density Parity Check) coded modulation hybrid decoding 
US20050063484A1 (en) *  20020726  20050324  Mustafa Eroz  Satellite communincation system utilizing low density parity check codes 
US20050078765A1 (en) *  20031013  20050414  Samsung Electronics Co., Ltd.  Method and apparatus for spacetime coding using lifting low density parity check codes in a wireless communication system 
US20050100102A1 (en) *  20030804  20050512  Gazdzinski Robert F.  Errorcorrected wideband holographic communications apparatus and methods 
US20050135262A1 (en) *  20031201  20050623  Pfister Henry D.  Lowcomplexity, capacityachieving code for communication systems 
US20050149844A1 (en) *  20020815  20050707  Tran Hau T.  Decoding LDPC (low density parity check) code with new operators based on min* operator 
US20050149843A1 (en) *  20020531  20050707  Broadcom Corporation, A California Corporation  Bandwidth efficient coded modulation scheme based on MLC (multilevel code) signals having multiple maps 
US20050154958A1 (en) *  20040112  20050714  Bo Xia  Method and apparatus for varying lengths of low density party check codewords 
US20050166132A1 (en) *  20040110  20050728  BaZhong Shen  IPHD (iterative parallel hybrid decoding) of various MLC (multilevel code) signals 
US20050210357A1 (en) *  20040322  20050922  Canon Kabushiki Kaisha  Channel encoding adapted to error bursts 
US20050246618A1 (en) *  20020815  20051103  Tran Hau T  Efficient design to implement min**/min** or max**/max** functions in LDPC (low density parity check) decoders 
US20050246606A1 (en) *  20040503  20051103  Cameron Kelly B  Decoding LDPC (Low Density Parity Check) code and graphs using multiplication (or addition in logdomain) on both sides of bipartite graph 
US20050262421A1 (en) *  20020531  20051124  Tran Hau T  Efficient front end memory arrangement to support parallel bit node and check node processing in LDPC (Low Density Parity Check) decoders 
US20050262408A1 (en) *  20000912  20051124  Tran Hau T  Fast min*  or max*  circuit in LDPC (Low Density Parity Check) decoder 
US20050268206A1 (en) *  20020815  20051201  Hau Thien Tran  Common circuitry supporting both bit node and check node processing in LDPC (Low Density Parity Check) decoder 
US20050271160A1 (en) *  20020703  20051208  Mustafa Eroz  Bit labeling for amplitude phase shift constellation used with low density parity check (LDPC) codes 
US20050289437A1 (en) *  20040624  20051229  Lg Electronics Inc.  Method and apparatus of encoding and decoding data using low density parity check code in a wireless communication system 
US20060041821A1 (en) *  20040818  20060223  BaZhong Shen  Short length LDPC (Low Density Parity Check) code and modulation adapted for high speed Ethernet applications 
US20060045213A1 (en) *  20040825  20060302  BaZhong Shen  Decoding error correcting codes transmitted through multiple wire twisted pair cables with uneven noise on the wires 
US20060045197A1 (en) *  20040825  20060302  Gottfried Ungerboeck  LDPC (Low Density Parity Check) coded 128 DSQ (Double Square QAM) constellation modulation and associated labeling 
US20060107179A1 (en) *  20040928  20060518  BaZhong Shen  Amplifying magnitude metric of received signals during iterative decoding of LDPC (Low Density Parity Check) code and LDPC coded modulation 
US20060109821A1 (en) *  20041124  20060525  Bo Xia  Apparatus and method capable of a unified quasicyclic lowdensity paritycheck structure for variable code rates and sizes 
US20060123318A1 (en) *  20041123  20060608  Samsung Electronics Co Ltd.  Method and apparatus for decoding low density parity check code using united node processing 
US20060156169A1 (en) *  20050110  20060713  BaZhong Shen  LDPC (Low Density Parity Check) coding and interleaving implemented in MIMO communication systems 
US20060156183A1 (en) *  20041201  20060713  Samsung Electronics Co., Ltd.  Method and apparatus for generating a lowdensity parity check code 
US20060156168A1 (en) *  20050110  20060713  BaZhong Shen  Construction of irregular LDPC (low density parity check) codes using RS (ReedSolomon) codes or GRS (generalized ReedSolomon) code 
US20060195754A1 (en) *  20050226  20060831  BaZhong Shen  AMP (accelerated message passing) decoder adapted for LDPC (low density parity check) codes 
US7107511B2 (en)  20020815  20060912  Broadcom Corporation  Low density parity check (LDPC) code decoder using min*, min**, max* or max** and their respective inverses 
US20060224935A1 (en) *  20050401  20061005  Cameron Kelly B  System correcting random and/or burst errors using RS (ReedSolomon) code, turbo/LDPC (Low Density Parity Check) code and convolutional interleave 
US7139964B2 (en)  20020531  20061121  Broadcom Corporation  Variable modulation with LDPC (low density parity check) coding 
US7149953B2 (en)  20040203  20061212  Broadcom Corporation  Efficient LDPC code decoding with new minus operator in a finite precision radix system 
US20060291571A1 (en) *  20050624  20061228  Dariush Divsalar  Encoders for blockcirculant LDPC codes 
US20070033497A1 (en) *  20050718  20070208  Broadcom Corporation, A California Corporation  Efficient construction of LDPC (Low Density Parity Check) codes with corresponding parity check matrix having CSI (Cyclic Shifted Identity) submatrices 
US20070033480A1 (en) *  20050718  20070208  Broadcom Corporation, A California Corporation  Efficient construction of LDPC (Low Density Parity Check) codes with corresponding parity check matrix having CSI (Cyclic Shifted Identity) submatrices 
US20070127387A1 (en) *  20051205  20070607  Lee Tak K  Partialparallel implementation of LDPC (low density parity check) decoders 
US20070157061A1 (en) *  20060103  20070705  Broadcom Corporation, A California Corporation  Submatrixbased implementation of LDPC (Low Density Parity Check ) decoder 
US20070157062A1 (en) *  20060103  20070705  Broadcom Corporation, A California Corporation  Implementation of LDPC (Low Density Parity Check) decoder by sweeping through submatrices 
US20070162814A1 (en) *  20060109  20070712  Broadcom Corporation, A California Corporation  LDPC (low density parity check) code size adjustment by shortening and puncturing 
US7281192B2 (en)  20040405  20071009  Broadcom Corporation  LDPC (Low Density Parity Check) coded signal decoding using parallel and simultaneous bit node and check node processing 
US20070300138A1 (en) *  20060621  20071227  Broadcom Corporation, A California Corporation  Minimal hardware implementation of nonparity and parity trellis 
US20080022191A1 (en) *  20040908  20080124  Nokia Corporation  System And Method For Adaptive LowDensity ParityCheck (Ldpc) Coding 
US20080052593A1 (en) *  20060726  20080228  Broadcom Corporation, A California Corporation  Combined LDPC (Low Density Parity Check) encoder and syndrome checker 
US20080077843A1 (en) *  20041222  20080327  Lg Electronics Inc.  Apparatus and Method for Decoding Using Channel Code 
US20080082895A1 (en) *  20020726  20080403  The Directv Group, Inc.  Method and system for generating low density parity check codes 
US20080082868A1 (en) *  20061002  20080403  Broadcom Corporation, A California Corporation  Overlapping submatrix based LDPC (low density parity check) decoder 
US7398455B2 (en)  20020703  20080708  The Directv Group, Inc.  Method and system for decoding low density parity check (LDPC) codes 
US20080178065A1 (en) *  20070124  20080724  Qualcomm Incorporated  Ldpc encoding and decoding of packets of variable sizes 
US7409628B2 (en)  20020815  20080805  Broadcom Corporation  Efficient design to implement LDPC (Low Density Parity Check) decoder 
US7447984B2 (en)  20050401  20081104  Broadcom Corporation  System correcting random and/or burst errors using RS (ReedSolomon) code, turbo/LDPC (Low Density Parity Check) code and convolutional interleave 
US7447972B2 (en)  20040805  20081104  Samsung Electronics Co., Ltd.  Methods and apparatus for constructing lowdensity parity check (LDPC) matrix 
US20080282129A1 (en) *  20070507  20081113  Broadcom Corporation, A California Corporation  Operational parameter adaptable LDPC (Low Density Parity Check) decoder 
US20080294969A1 (en) *  20070523  20081127  Dariush Divsalar  Ratecompatible protograph ldpc code families with linear minimum distance 
US20090006906A1 (en) *  20070629  20090101  Noah Jacobsen  Method and system for encoding data using ratecompatible irregular LDPC codes based on edge growth and parity splitting 
US20090013238A1 (en) *  20070702  20090108  Broadcom Corporation  Multicode LDPC (Low Density Parity Check) decoder 
US20090013237A1 (en) *  20070702  20090108  Broadcom Corporation  Distributed processing ldpc (low density parity check) decoder 
US20090013239A1 (en) *  20070702  20090108  Broadcom Corporation  LDPC (Low Density Parity Check) decoder employing distributed check and/or variable node architecture 
US7536629B2 (en)  20050110  20090519  Broadcom Corporation  Construction of LDPC (Low Density Parity Check) codes using GRS (Generalized ReedSolomon) code 
US7617439B2 (en)  20050110  20091110  Broadcom Corporation  Algebraic construction of LDPC (Low Density Parity Check) codes with corresponding parity check matrix having CSI (Cyclic Shifted Identity) submatrices 
US20110099454A1 (en) *  20061220  20110428  Lsi Corporation  Low Complexity LDPC Encoding Algorithm 
US8091009B2 (en)  20060323  20120103  Broadcom Corporation  Symbol by symbol map detection for signals corrupted by colored and/or signal dependent noise 
US20160197701A1 (en) *  20130722  20160707  Samsng Electronics Co., Ltd.  Apparatus and Method for Receiving Signal in Communication System Supporting Low Density Parity Check Code 
Families Citing this family (22)
Publication number  Priority date  Publication date  Assignee  Title 

FR2826216B1 (en) *  20010618  20030912  Cit Alcatel  digital signal transmission system 
US20030152158A1 (en) *  20020211  20030814  Vocal Technologies, Ltd.  Method of asymmetrical forward error correction in a communication system. application to wireless local area networks (WLAN) using turbo codes and low density parity check codes 
KR20040036460A (en) *  20021026  20040430  삼성전자주식회사  LDPC decoding apparatus and method 
JP4225163B2 (en)  20030513  20090218  ソニー株式会社  Decoding apparatus and decoding method, and program 
JP4224777B2 (en) *  20030513  20090218  ソニー株式会社  Decoding method and a decoding apparatus, and program 
DE60332501D1 (en) *  20030528  20100617  Mitsubishi Electric Corp  Neuübertragungssteuerverfahren and communicator 
US8208499B2 (en) *  20030613  20120626  Dtvg Licensing, Inc.  Framing structure for digital broadcasting and interactive services 
US7369633B2 (en) *  20030613  20080506  The Directv Group, Inc.  Method and apparatus for providing carrier synchronization in digital broadcast and interactive systems 
KR100809619B1 (en)  20030826  20080305  삼성전자주식회사  Apparatus and method for coding/decoding block low density parity check code in a mobile communication system 
KR100975061B1 (en) *  20031128  20100811  삼성전자주식회사  Method for generating parity information using Low density parity check 
US20050193320A1 (en) *  20040209  20050901  President And Fellows Of Harvard College  Methods and apparatus for improving performance of information coding schemes 
KR100981503B1 (en) *  20040213  20100910  삼성전자주식회사  Apparatus and method for encoding/decoding low density parity check code with maximum error correction/error detection capacity 
US7395490B2 (en)  20040721  20080701  Qualcomm Incorporated  LDPC decoding methods and apparatus 
US7143333B2 (en) *  20040809  20061128  Motorola, Inc.  Method and apparatus for encoding and decoding data 
CA2563642C (en)  20040810  20131001  Samsung Electronics Co., Ltd.  Apparatus and method for encoding and decoding a block low density parity check code 
KR20060108959A (en) *  20050413  20061019  삼성전자주식회사  Method and apparatus for generating low density parity check matrix by block and recording medium thereof 
KR20060135451A (en) *  20050625  20061229  삼성전자주식회사  Method and apparatus of low density parity check encoding 
KR100975695B1 (en) *  20070202  20100812  삼성전자주식회사  Apparatus and method for receiving signal in a communication system 
US7885176B2 (en) *  20070601  20110208  Samsung Electronics Co., Ltd.  Methods and apparatus for mapping modulation symbols to resources in OFDM systems 
FR2917920B1 (en) *  20070622  20091009  Centre Nat Rech Scient  Method for authentication using an error correcting code of decoding from a public matrix 
US8903092B2 (en) *  20100604  20141202  Maxim Integrated Products, Inc.  High speed digital to analog converter with reduced spurious outputs 
CN104917587A (en) *  20140313  20150916  钜泉光电科技(上海)股份有限公司  Data block interleaving and deinterleaving method in communication equipment and device thereof 
Citations (4)
Publication number  Priority date  Publication date  Assignee  Title 

US4295218A (en) *  19790625  19811013  Regents Of The University Of California  Errorcorrecting coding system 
US4334309A (en) *  19800630  19820608  International Business Machines Corporation  Error correcting code system 
US5872798A (en) *  19940216  19990216  U.S. Philips Corporation  Error correctable data transmission method and device based on semicyclic codes 
US6138125A (en) *  19980331  20001024  Lsi Logic Corporation  Block coding method and system for failure recovery in disk arrays 
Family Cites Families (4)
Publication number  Priority date  Publication date  Assignee  Title 

CA2348700C (en) *  20000526  20080311  Andrew W. Hunt  Highperformance errorcorrecting codes with skew mapping 
EP1290802A1 (en) *  20000616  20030312  Aware, Inc.  Systems and methods for ldpc coded modulation 
US20030033570A1 (en) *  20010509  20030213  Khannanov Roman R.  Method and apparatus for encoding and decoding low density parity check codes and low density turbo product codes 
US6633856B2 (en) *  20010615  20031014  Flarion Technologies, Inc.  Methods and apparatus for decoding LDPC codes 
Patent Citations (4)
Publication number  Priority date  Publication date  Assignee  Title 

US4295218A (en) *  19790625  19811013  Regents Of The University Of California  Errorcorrecting coding system 
US4334309A (en) *  19800630  19820608  International Business Machines Corporation  Error correcting code system 
US5872798A (en) *  19940216  19990216  U.S. Philips Corporation  Error correctable data transmission method and device based on semicyclic codes 
US6138125A (en) *  19980331  20001024  Lsi Logic Corporation  Block coding method and system for failure recovery in disk arrays 
NonPatent Citations (16)
Title 

Aware, Inc., "LDPC Codes for ADSL", ITUTelecommunication Standardization Sector, Document BI068, Bangalore, India, Oct. 2327, 2000. 
Aware, Inc., "LDPC Codes for ADSL", ITU—Telecommunication Standardization Sector, Document BI068, Bangalore, India, Oct. 2327, 2000. 
D.J.C. MacKay and R.M. Neal, "Near Shannon limit performance of LDPC codes", Electron. Letters, vol. 32, No. 18, Aug. 1996. 
D.J.C. MacKay, "Good ErrorCorrecting Codes Based on Very Sparse Matrices", IEEE Transactions on Information Theory, vol. 45, No. 2, Mar. 1999. 
D.J.C. MacKay, Simon T. Wilson, and Matthew C. Davey, "Comparison of Constructions of Irregular Gallager Codes", IEEE Transactions on Communications, vol. 47, No. 10, Oct. 1999. 
E. Eleftheriou, T. Mittelholzer, and A. Dholakia, "Reducedcomplexity decoding algorithm for LDPC codes", Electron. Letter, vol. 37, Jan. 2001. 
IBM Corp., "LDPC codes for DSL transmission", ITUTelecommunication Standardization Sector, Document BI095, Bangalore, India, Oct. 2327, 2000. 
IBM Corp., "LDPC codes for G.dmt.bis and G.lit.bis", ITUTelecommunication Standardization Sector, Document CF060, Clearwater, Florida, Jan. 812, 2001. 
IBM Corp., "LDPC coding proposal for G.dmt.bis and G.lite.bis", ITUTelecommunication Standardization Sector, Document CF061, Clearwater, Florida, Jan. 812, 2001. 
IBM Corp., "LDPC codes for DSL transmission", ITU—Telecommunication Standardization Sector, Document BI095, Bangalore, India, Oct. 2327, 2000. 
IBM Corp., "LDPC codes for G.dmt.bis and G.lit.bis", ITU—Telecommunication Standardization Sector, Document CF060, Clearwater, Florida, Jan. 812, 2001. 
IBM Corp., "LDPC coding proposal for G.dmt.bis and G.lite.bis", ITU—Telecommunication Standardization Sector, Document CF061, Clearwater, Florida, Jan. 812, 2001. 
IBM Corp., Globespan, "G.gen: G.dmt.bis: G.Lite.bis: Reducedcomplexity decoding algorithm for LDPC codes", ITUTelecommunication Standardization Sector, Document IC071, Irvine, California, Apr. 913, 2001. 
IBM Corp., Globespan, "G.gen: G.dmt.bis: G.Lite.bis: Reducedcomplexity decoding algorithm for LDPC codes", ITU—Telecommunication Standardization Sector, Document IC071, Irvine, California, Apr. 913, 2001. 
Marc P.C. Fossorier, Miodrag Michaljevic, and Hideki Imai, "Reduced Complexity Iterative Decoding of LDPC Codes Based on Belief Propagation", IEEE Transactions on Communications, vol. 47, No. 5, May 1999. 
R.G. Gallager, "LowDensityParityCheck Codes", MIT Press, Cambridge, MA 1963. 
Cited By (160)
Publication number  Priority date  Publication date  Assignee  Title 

US7383485B2 (en)  20000912  20080603  Broadcom Corporation  Fast min* or max*circuit in LDPC (low density parity check) decoder 
US20050262408A1 (en) *  20000912  20051124  Tran Hau T  Fast min*  or max*  circuit in LDPC (Low Density Parity Check) decoder 
US20020112649A1 (en) *  20001220  20020822  Brian Robson  Material for use in metal casting 
US20030089123A1 (en) *  20011112  20030515  Tomoji Tarutani  Swash plate type compressor 
US7516388B2 (en) *  20011227  20090407  Mitsubishi Electric Corporation  LDPC code inspection matrix generation method 
US20040186992A1 (en) *  20011227  20040923  Wataru Matsumoto  Ldpc code inspection matrix generation method 
US20040199859A1 (en) *  20020228  20041007  Wataru Matsumoto  Ldpc code inspection matrix generation method and inspection matrix generation device 
US7089479B2 (en) *  20020228  20060808  Mitsubishi Denki Kabushiki Kaisha  LDPC code inspection matrix generation method and inspection matrix generation device 
US7139964B2 (en)  20020531  20061121  Broadcom Corporation  Variable modulation with LDPC (low density parity check) coding 
US7197690B2 (en)  20020531  20070327  Broadcom Corporation  Bandwidth efficient coded modulation scheme based on MLC (multilevel code) signals having multiple maps 
US20050262421A1 (en) *  20020531  20051124  Tran Hau T  Efficient front end memory arrangement to support parallel bit node and check node processing in LDPC (Low Density Parity Check) decoders 
US20050149843A1 (en) *  20020531  20050707  Broadcom Corporation, A California Corporation  Bandwidth efficient coded modulation scheme based on MLC (multilevel code) signals having multiple maps 
US7587659B2 (en)  20020531  20090908  Broadcom Corporation  Efficient front end memory arrangement to support parallel bit node and check node processing in LDPC (Low Density Parity Check) decoders 
US8102947B2 (en)  20020703  20120124  Dtvg Licensing, Inc.  Bit labeling for amplitude phase shift constellation used with low density parity check (LDPC) codes 
US7954036B2 (en)  20020703  20110531  Dtvg Licensing, Inc.  Method and system for providing low density parity check (LDPC) encoding 
US20070168834A1 (en) *  20020703  20070719  Mustafa Eroz  Method and system for routing in low density parity check (LDPC) decoders 
US7424662B2 (en)  20020703  20080909  The Directv Group, Inc.  Method and system for providing low density parity check (LDPC) encoding 
US20050271160A1 (en) *  20020703  20051208  Mustafa Eroz  Bit labeling for amplitude phase shift constellation used with low density parity check (LDPC) codes 
US20040054960A1 (en) *  20020703  20040318  Mustafa Eroz  Method and system for providing low density parity check (LDPC) encoding 
US6963622B2 (en) *  20020703  20051108  The Directv Group, Inc.  Bit labeling for amplitude phase shift constellation used with low density parity check (LDPC) codes 
US7191378B2 (en)  20020703  20070313  The Directv Group, Inc.  Method and system for providing low density parity check (LDPC) encoding 
US7962830B2 (en)  20020703  20110614  Dtvg Licensing, Inc.  Method and system for routing in low density parity check (LDPC) decoders 
US20070113142A1 (en) *  20020703  20070517  Mustafa Eroz  Method and system for providing low density parity check (LDPC) encoding 
US20090187811A1 (en) *  20020703  20090723  The Directv Group, Inc.  Method and system for providing low density parity check (ldpc) encoding 
US20040086059A1 (en) *  20020703  20040506  Hughes Electronics  Bit labeling for amplitude phase shift constellation used with low density parity check (LDPC) codes 
US7398455B2 (en)  20020703  20080708  The Directv Group, Inc.  Method and system for decoding low density parity check (LDPC) codes 
US7577207B2 (en)  20020703  20090818  Dtvg Licensing, Inc.  Bit labeling for amplitude phase shift constellation used with low density parity check (LDPC) codes 
US20050063484A1 (en) *  20020726  20050324  Mustafa Eroz  Satellite communincation system utilizing low density parity check codes 
US8095854B2 (en)  20020726  20120110  Dtvg Licensing, Inc.  Method and system for generating low density parity check codes 
US7864869B2 (en)  20020726  20110104  Dtvg Licensing, Inc.  Satellite communication system utilizing low density parity check codes 
US20080082895A1 (en) *  20020726  20080403  The Directv Group, Inc.  Method and system for generating low density parity check codes 
US20050246618A1 (en) *  20020815  20051103  Tran Hau T  Efficient design to implement min**/min** or max**/max** functions in LDPC (low density parity check) decoders 
US7447985B2 (en)  20020815  20081104  Broadcom Corporation  Efficient design to implement min**/min** or max**/max** functions in LDPC (low density parity check) decoders 
US20050149844A1 (en) *  20020815  20050707  Tran Hau T.  Decoding LDPC (low density parity check) code with new operators based on min* operator 
US7350130B2 (en)  20020815  20080325  Broadcom Corporation  Decoding LDPC (low density parity check) code with new operators based on min* operator 
US7107511B2 (en)  20020815  20060912  Broadcom Corporation  Low density parity check (LDPC) code decoder using min*, min**, max* or max** and their respective inverses 
US7409628B2 (en)  20020815  20080805  Broadcom Corporation  Efficient design to implement LDPC (Low Density Parity Check) decoder 
US7395487B2 (en)  20020815  20080701  Broadcom Corporation  Common circuitry supporting both bit node and check node processing in LDPC (Low Density Parity Check) decoder 
US20050268206A1 (en) *  20020815  20051201  Hau Thien Tran  Common circuitry supporting both bit node and check node processing in LDPC (Low Density Parity Check) decoder 
US6785863B2 (en) *  20020918  20040831  Motorola, Inc.  Method and apparatus for generating paritycheck bits from a symbol set 
US20040054959A1 (en) *  20020918  20040318  Yufei Blankenship  Method and apparatus for encoding data 
WO2004027616A1 (en) *  20020918  20040401  Motorola, Inc.  Method and apparatus for encoding data 
US7058873B2 (en) *  20021107  20060606  Carnegie Mellon University  Encoding method using a low density parity check code with a column weight of two 
US20040093549A1 (en) *  20021107  20040513  Hongwei Song  Encoding method using a low density parity check code with a column weight of two 
US7296216B2 (en)  20030123  20071113  Broadcom Corporation  Stopping and/or reducing oscillations in low density parity check (LDPC) decoding 
US20040148561A1 (en) *  20030123  20040729  BaZhong Shen  Stopping and/or reducing oscillations in low density parity check (LDPC) decoding 
US20040252791A1 (en) *  20030613  20041216  BaZhong Shen  LDPC (Low Density Parity Check) coded modulation hybrid decoding using nonGray code maps for improved performance 
US7436902B2 (en)  20030613  20081014  Broadcom Corporation  Multidimensional space Gray code maps for multidimensional phase modulation as applied to LDPC (Low Density Parity Check) coded modulation 
US7216283B2 (en)  20030613  20070508  Broadcom Corporation  Iterative metric updating when decoding LDPC (low density parity check) coded signals and LDPC coded modulation signals 
US7383493B2 (en)  20030613  20080603  Broadcom Corporation  LDPC (Low Density Parity Check) coded modulation hybrid decoding using nonGray code maps for improved performance 
US20040258177A1 (en) *  20030613  20041223  BaZhong Shen  Multidimensional space Gray code maps for multidimensional phase modulation as applied to LDPC (Low Density Parity Check) coded modulation 
US20040255231A1 (en) *  20030613  20041216  BaZhong Shen  LDPC (Low Density Parity Check) coded modulatiion symbol decoding using nonGray code maps for improved performance 
US20040255228A1 (en) *  20030613  20041216  Broadcom Corporation A, California Corporation  LDPC (low density parity check) coded modulation symbol decoding 
US7322005B2 (en)  20030613  20080122  Broadcom Corporation  LDPC (Low Density Parity Check) coded modulation symbol decoding using nonGray code maps for improved performance 
US20040255229A1 (en) *  20030613  20041216  BaZhong Shen  Iterative metric updating when decoding LDPC (Low Density Parity Check) coded signals and LDPC coded modulation signals 
US7159170B2 (en)  20030613  20070102  Broadcom Corporation  LDPC (low density parity check) coded modulation symbol decoding 
US20050026572A1 (en) *  20030728  20050203  Texas Instruments Incorporated  Noise determiner, a DSL modem including a noise determiner and a method of determining noise in a communications system 
US7185270B2 (en)  20030729  20070227  Broadcom Corporation  LDPC (low density parity check) coded modulation hybrid decoding 
US20050028071A1 (en) *  20030729  20050203  BaZhong Shen  LDPC (Low Density Parity Check) coded modulation hybrid decoding 
US20050100102A1 (en) *  20030804  20050512  Gazdzinski Robert F.  Errorcorrected wideband holographic communications apparatus and methods 
WO2005036774A1 (en) *  20031013  20050421  Samsung Electronics Co., Ltd.  Method and apparatus for spacetime coding using lifting low density parity check codes in a wireless communication system 
US20050078765A1 (en) *  20031013  20050414  Samsung Electronics Co., Ltd.  Method and apparatus for spacetime coding using lifting low density parity check codes in a wireless communication system 
US7729437B2 (en)  20031013  20100601  Samsung Electronics Co., Ltd  Method and apparatus for spacetime coding using lifting low density parity check codes in a wireless communication system 
KR100955952B1 (en)  20031013  20100519  삼성전자주식회사  Method and apparatus for spacetime coding using lifting low density parity check codes in a wireless communication system 
US7458003B2 (en) *  20031201  20081125  Qualcomm Incorporated  Lowcomplexity, capacityachieving code for communication systems 
US20050135262A1 (en) *  20031201  20050623  Pfister Henry D.  Lowcomplexity, capacityachieving code for communication systems 
US20050166132A1 (en) *  20040110  20050728  BaZhong Shen  IPHD (iterative parallel hybrid decoding) of various MLC (multilevel code) signals 
US7383487B2 (en)  20040110  20080603  Broadcom Corporation  IPHD (iterative parallel hybrid decoding) of various MLC (multilevel code) signals 
US7263651B2 (en) *  20040112  20070828  Intel Corporation  Method and apparatus for varying lengths of low density party check codewords 
US20050154958A1 (en) *  20040112  20050714  Bo Xia  Method and apparatus for varying lengths of low density party check codewords 
US7149953B2 (en)  20040203  20061212  Broadcom Corporation  Efficient LDPC code decoding with new minus operator in a finite precision radix system 
US7461329B2 (en) *  20040322  20081202  Canon Kabushiki Kaisha  Channel encoding adapted to error bursts 
US20050210357A1 (en) *  20040322  20050922  Canon Kabushiki Kaisha  Channel encoding adapted to error bursts 
US7281192B2 (en)  20040405  20071009  Broadcom Corporation  LDPC (Low Density Parity Check) coded signal decoding using parallel and simultaneous bit node and check node processing 
US20050246606A1 (en) *  20040503  20051103  Cameron Kelly B  Decoding LDPC (Low Density Parity Check) code and graphs using multiplication (or addition in logdomain) on both sides of bipartite graph 
US7243287B2 (en)  20040503  20070710  Broadcom Corporation  Decoding LDPC (Low Density Parity Check) code and graphs using multiplication (or addition in logdomain) on both sides of bipartite graph 
US8201059B2 (en) *  20040624  20120612  Lg Electronics Inc.  Method and apparatus of encoding and decoding data using low density parity check code in a wireless communication system 
US20120185746A1 (en) *  20040624  20120719  Lg Electronics Inc.  Method and apparatus of encoding and decoding data using low density parity check code in a wireless communication system 
US20090228767A1 (en) *  20040624  20090910  Min Seok Oh  Method and apparatus of encoding and decoding data using low density parity check code in a wireless communication system 
US8276050B2 (en) *  20040624  20120925  Lg Electronics Inc.  Method and apparatus of encoding and decoding data using low density parity check code in a wireless communication system 
US8185807B2 (en) *  20040624  20120522  Lg Electronics Inc.  Method and apparatus of encoding and decoding data using low density parity check code in a wireless communication system 
US20050289437A1 (en) *  20040624  20051229  Lg Electronics Inc.  Method and apparatus of encoding and decoding data using low density parity check code in a wireless communication system 
US8286062B2 (en) *  20040624  20121009  Lg Electronics Inc.  Method and apparatus of encoding and decoding data using low density parity check code in a wireless communication system 
US20090199067A1 (en) *  20040624  20090806  Min Seok Oh  Method and apparatus of encoding and decoding data using low density parity check code in a wireless communication system 
US7581157B2 (en) *  20040624  20090825  Lg Electronics Inc.  Method and apparatus of encoding and decoding data using low density parity check code in a wireless communication system 
US20090199068A1 (en) *  20040624  20090806  Min Seok Oh  Method and apparatus of encoding and decoding data using low density parity check code in a wireless communication system 
US7447972B2 (en)  20040805  20081104  Samsung Electronics Co., Ltd.  Methods and apparatus for constructing lowdensity parity check (LDPC) matrix 
US20060041821A1 (en) *  20040818  20060223  BaZhong Shen  Short length LDPC (Low Density Parity Check) code and modulation adapted for high speed Ethernet applications 
US7559010B2 (en)  20040818  20090707  Broadcom Corporation  Short length LDPC (Low Density Parity Check) code and modulation adapted for high speed Ethernet applications 
US7587008B2 (en)  20040825  20090908  Broadcom Corporation  Decoding error correcting codes transmitted through multiple wire twisted pair cables with uneven noise on the wires 
US20060045197A1 (en) *  20040825  20060302  Gottfried Ungerboeck  LDPC (Low Density Parity Check) coded 128 DSQ (Double Square QAM) constellation modulation and associated labeling 
US7515642B2 (en)  20040825  20090407  Broadcom Corporation  LDPC (Low Density Parity Check) coded 128 DSQ (Double Square QAM) constellation modulation and associated labeling 
US20060045213A1 (en) *  20040825  20060302  BaZhong Shen  Decoding error correcting codes transmitted through multiple wire twisted pair cables with uneven noise on the wires 
US7689892B2 (en) *  20040908  20100330  Nokia Corporation  System and method for adaptive lowdensity paritycheck (LDPC) coding 
US20080022191A1 (en) *  20040908  20080124  Nokia Corporation  System And Method For Adaptive LowDensity ParityCheck (Ldpc) Coding 
US20060107179A1 (en) *  20040928  20060518  BaZhong Shen  Amplifying magnitude metric of received signals during iterative decoding of LDPC (Low Density Parity Check) code and LDPC coded modulation 
US7401283B2 (en)  20040928  20080715  Broadcom Corporation  Amplifying magnitude metric of received signals during iterative decoding of LDPC (Low Density Parity Check) code and LDPC coded modulation 
US20060123318A1 (en) *  20041123  20060608  Samsung Electronics Co Ltd.  Method and apparatus for decoding low density parity check code using united node processing 
US7454685B2 (en) *  20041123  20081118  Samsung Electronics Co., Ltd.  Method and apparatus for decoding low density parity check code using united node processing 
US20060109821A1 (en) *  20041124  20060525  Bo Xia  Apparatus and method capable of a unified quasicyclic lowdensity paritycheck structure for variable code rates and sizes 
US7752520B2 (en) *  20041124  20100706  Intel Corporation  Apparatus and method capable of a unified quasicyclic lowdensity paritycheck structure for variable code rates and sizes 
US7536623B2 (en) *  20041201  20090519  Samsung Electronics Co., Ltd.  Method and apparatus for generating a lowdensity parity check code 
US20060156183A1 (en) *  20041201  20060713  Samsung Electronics Co., Ltd.  Method and apparatus for generating a lowdensity parity check code 
US8438459B2 (en)  20041222  20130507  Lg Electronics Inc.  Apparatus and method for decoding using channel code 
US20080077843A1 (en) *  20041222  20080327  Lg Electronics Inc.  Apparatus and Method for Decoding Using Channel Code 
US7617439B2 (en)  20050110  20091110  Broadcom Corporation  Algebraic construction of LDPC (Low Density Parity Check) codes with corresponding parity check matrix having CSI (Cyclic Shifted Identity) submatrices 
US8407556B2 (en) *  20050110  20130326  Broadcom Corporation  LDPC (low density parity check) coding and interleaving implemented in MIMO communication systems 
US20060156168A1 (en) *  20050110  20060713  BaZhong Shen  Construction of irregular LDPC (low density parity check) codes using RS (ReedSolomon) codes or GRS (generalized ReedSolomon) code 
US7536629B2 (en)  20050110  20090519  Broadcom Corporation  Construction of LDPC (Low Density Parity Check) codes using GRS (Generalized ReedSolomon) code 
US7549105B2 (en)  20050110  20090616  Broadcom Corporation  Construction of irregular LDPC (low density parity check) codes using RS (ReedSolomon) codes or GRS (generalized ReedSolomon) code 
US20060156169A1 (en) *  20050110  20060713  BaZhong Shen  LDPC (Low Density Parity Check) coding and interleaving implemented in MIMO communication systems 
US7516390B2 (en)  20050110  20090407  Broadcom Corporation  LDPC (Low Density Parity Check) coding and interleaving implemented in MIMO communication systems 
US20060195754A1 (en) *  20050226  20060831  BaZhong Shen  AMP (accelerated message passing) decoder adapted for LDPC (low density parity check) codes 
US7500172B2 (en)  20050226  20090303  Broadcom Corporation  AMP (accelerated message passing) decoder adapted for LDPC (low density parity check) codes 
US20060224935A1 (en) *  20050401  20061005  Cameron Kelly B  System correcting random and/or burst errors using RS (ReedSolomon) code, turbo/LDPC (Low Density Parity Check) code and convolutional interleave 
US7447984B2 (en)  20050401  20081104  Broadcom Corporation  System correcting random and/or burst errors using RS (ReedSolomon) code, turbo/LDPC (Low Density Parity Check) code and convolutional interleave 
US7447981B2 (en)  20050401  20081104  Broadcom Corporation  System correcting random and/or burst errors using RS (ReedSolomon) code, turbo/LDPC (Low Density Parity Check) code and convolutional interleave 
US20060291571A1 (en) *  20050624  20061228  Dariush Divsalar  Encoders for blockcirculant LDPC codes 
US7499490B2 (en)  20050624  20090303  California Institute Of Technology  Encoders for blockcirculant LDPC codes 
US20070033480A1 (en) *  20050718  20070208  Broadcom Corporation, A California Corporation  Efficient construction of LDPC (Low Density Parity Check) codes with corresponding parity check matrix having CSI (Cyclic Shifted Identity) submatrices 
US7617442B2 (en)  20050718  20091110  Broadcom Corporation  Efficient construction of LDPC (Low Density Parity Check) codes with corresponding parity check matrix having CSI (Cyclic Shifted Identity) submatrices 
US7617441B2 (en)  20050718  20091110  Broadcom Corporation  Efficient construction of LDPC (Low Density Parity Check) codes with corresponding parity check matrix having CSI (Cyclic Shifted Identity) submatrices 
US20070033497A1 (en) *  20050718  20070208  Broadcom Corporation, A California Corporation  Efficient construction of LDPC (Low Density Parity Check) codes with corresponding parity check matrix having CSI (Cyclic Shifted Identity) submatrices 
US20070127387A1 (en) *  20051205  20070607  Lee Tak K  Partialparallel implementation of LDPC (low density parity check) decoders 
US7661055B2 (en)  20051205  20100209  Broadcom Corporation  Partialparallel implementation of LDPC (Low Density Parity Check) decoders 
US20070157062A1 (en) *  20060103  20070705  Broadcom Corporation, A California Corporation  Implementation of LDPC (Low Density Parity Check) decoder by sweeping through submatrices 
US20070157061A1 (en) *  20060103  20070705  Broadcom Corporation, A California Corporation  Submatrixbased implementation of LDPC (Low Density Parity Check ) decoder 
US7617433B2 (en)  20060103  20091110  Broadcom Corporation  Implementation of LDPC (low density parity check) decoder by sweeping through submatrices 
US7530002B2 (en)  20060103  20090505  Broadcom Corporation  Submatrixbased implementation of LDPC (Low Density Parity Check) decoder 
US7631246B2 (en)  20060109  20091208  Broadcom Corporation  LDPC (low density parity check) code size adjustment by shortening and puncturing 
US20100083071A1 (en) *  20060109  20100401  Broadcom Corporation  LDPC (Low Density Parity Check) code size adjustment by shortening and puncturing 
US8473817B2 (en) *  20060109  20130625  Broadcom Corporation  LDPC (low density parity check) code size adjustment by shortening and puncturing 
US20070162814A1 (en) *  20060109  20070712  Broadcom Corporation, A California Corporation  LDPC (low density parity check) code size adjustment by shortening and puncturing 
US8091009B2 (en)  20060323  20120103  Broadcom Corporation  Symbol by symbol map detection for signals corrupted by colored and/or signal dependent noise 
US7689896B2 (en)  20060621  20100330  Broadcom Corporation  Minimal hardware implementation of nonparity and parity trellis 
US20070300138A1 (en) *  20060621  20071227  Broadcom Corporation, A California Corporation  Minimal hardware implementation of nonparity and parity trellis 
US20080052593A1 (en) *  20060726  20080228  Broadcom Corporation, A California Corporation  Combined LDPC (Low Density Parity Check) encoder and syndrome checker 
US7752529B2 (en)  20060726  20100706  Broadcom Corporation  Combined LDPC (low density parity check) encoder and syndrome checker 
US20080082868A1 (en) *  20061002  20080403  Broadcom Corporation, A California Corporation  Overlapping submatrix based LDPC (low density parity check) decoder 
US20100138721A1 (en) *  20061002  20100603  Broadcom Corporation  Overlapping submatrix based LDPC (Low Density Parity Check) decoder 
US8230298B2 (en) *  20061002  20120724  Broadcom Corporation  Overlapping submatrix based LDPC (low density parity check) decoder 
US7644339B2 (en)  20061002  20100105  Broadcom Corporation  Overlapping submatrix based LDPC (low density parity check) decoder 
US8327221B2 (en) *  20061002  20121204  Broadcom Corporation  Overlapping submatrix based LDPC (low density parity check) decoder 
US20110099454A1 (en) *  20061220  20110428  Lsi Corporation  Low Complexity LDPC Encoding Algorithm 
US8433984B2 (en)  20070124  20130430  Qualcomm Incorporated  LDPC encoding and decoding of packets of variable sizes 
US8578249B2 (en)  20070124  20131105  Qualcomm Incorporated  LDPC encoding and decoding of packets of variable sizes 
US20080178065A1 (en) *  20070124  20080724  Qualcomm Incorporated  Ldpc encoding and decoding of packets of variable sizes 
RU2443053C2 (en) *  20070124  20120220  Квэлкомм Инкорпорейтед  Coding and decoding of ldpc packages of variable sizes 
US20080282129A1 (en) *  20070507  20081113  Broadcom Corporation, A California Corporation  Operational parameter adaptable LDPC (Low Density Parity Check) decoder 
US8151171B2 (en)  20070507  20120403  Broadcom Corporation  Operational parameter adaptable LDPC (low density parity check) decoder 
US8117523B2 (en)  20070523  20120214  California Institute Of Technology  Ratecompatible protograph LDPC code families with linear minimum distance 
US20080294969A1 (en) *  20070523  20081127  Dariush Divsalar  Ratecompatible protograph ldpc code families with linear minimum distance 
US7966548B2 (en)  20070629  20110621  AlcatelLucent Usa Inc.  Method and system for encoding data using ratecompatible irregular LDPC codes based on edge growth and parity splitting 
US20090006906A1 (en) *  20070629  20090101  Noah Jacobsen  Method and system for encoding data using ratecompatible irregular LDPC codes based on edge growth and parity splitting 
US20090013238A1 (en) *  20070702  20090108  Broadcom Corporation  Multicode LDPC (Low Density Parity Check) decoder 
US20090013237A1 (en) *  20070702  20090108  Broadcom Corporation  Distributed processing ldpc (low density parity check) decoder 
US20090013239A1 (en) *  20070702  20090108  Broadcom Corporation  LDPC (Low Density Parity Check) decoder employing distributed check and/or variable node architecture 
US7958429B2 (en)  20070702  20110607  Broadcom Corporation  Distributed processing LDPC (low density parity check) decoder 
US8010881B2 (en)  20070702  20110830  Broadcom Corporation  Multicode LDPC (low density parity check) decoder 
US20160197701A1 (en) *  20130722  20160707  Samsng Electronics Co., Ltd.  Apparatus and Method for Receiving Signal in Communication System Supporting Low Density Parity Check Code 
Also Published As
Publication number  Publication date  Type 

US6950461B2 (en)  20050927  grant 
US20020186759A1 (en)  20021212  application 
US20020181569A1 (en)  20021205  application 
WO2002095965A1 (en)  20021128  application 
Similar Documents
Publication  Publication Date  Title 

Bonnecaze et al.  Quaternary quadratic residue codes and unimodular lattices  
Lin et al.  Error control coding  
US6347385B1 (en)  Interleavers for turbo code  
US6718508B2 (en)  Highperformance errorcorrecting codes with skew mapping  
US7143333B2 (en)  Method and apparatus for encoding and decoding data  
US7502987B2 (en)  Apparatus and method for encoding and decoding block low density parity check codes with a variable coding rate  
US6334197B1 (en)  Turbo code interleaver with near optimal performance  
Rankin et al.  Single parity check product codes  
US20080126908A1 (en)  Universal error control coding system for digital communication and data storage systems  
Zhang et al.  On finite precision implementation of low density parity check codes decoder  
Bennatan et al.  On the application of LDPC codes to arbitrary discretememoryless channels  
US7313752B2 (en)  Apparatus and method for coding/decoding block low density parity check code in a mobile communication system  
US20050283709A1 (en)  Apparatus and method for coding and decoding semisystematic block low density parity check codes  
US6628723B1 (en)  Coding rate reduction for turbo codes  
US7343548B2 (en)  Method and apparatus for encoding and decoding data  
US7895500B2 (en)  Systems and methods for reduced complexity LDPC decoding  
US20080178065A1 (en)  Ldpc encoding and decoding of packets of variable sizes  
US6638318B1 (en)  Method and device for coding sequences of data, and associated decoding method and device  
US8369448B2 (en)  Bit mapping scheme for an LDPC coded 32APSK system  
US20090249159A1 (en)  Ldpc encoder and decoder and ldpc encoding and decoding methods  
US6766489B1 (en)  Device and method of adapting turbocoders and the associated decoders to sequences of variable length  
US20050246617A1 (en)  Apparatus and method for coding/decoding block low density parity check code with variable block length  
US7814393B2 (en)  Apparatus and method for coding/decoding block low density parity check code with variable block length  
US6895547B2 (en)  Method and apparatus for low density parity check encoding of data  
EP0928071A1 (en)  Interleaver for turbo encoder 
Legal Events
Date  Code  Title  Description 

AS  Assignment 
Owner name: PC TEL INC., CALIFORNIA Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:GOLDSTEIN, YURI;OKUNEV, YURI;DRUCKER, VITALY;REEL/FRAME:012354/0219 Effective date: 20010629 

AS  Assignment 
Owner name: CONEXANT SYSTEMS, INC., CALIFORNIA Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:PCTEL, INC.;REEL/FRAME:016745/0977 Effective date: 20050825 

FPAY  Fee payment 
Year of fee payment: 4 

AS  Assignment 
Owner name: BANK OF NEW YORK TRUST COMPANY, N.A., THE, ILLINOI Free format text: SECURITY AGREEMENT;ASSIGNOR:BROOKTREE BROADBAND HOLDING, INC.;REEL/FRAME:018573/0337 Effective date: 20061113 Owner name: BANK OF NEW YORK TRUST COMPANY, N.A., THE,ILLINOIS Free format text: SECURITY AGREEMENT;ASSIGNOR:BROOKTREE BROADBAND HOLDING, INC.;REEL/FRAME:018573/0337 Effective date: 20061113 

AS  Assignment 
Owner name: THE BANK OF NEW YORK TRUST COMPANY, N.A., AS COLLA Free format text: SECURITY AGREEMENT;ASSIGNOR:CONEXANT SYSTEMS, INC.;REEL/FRAME:018855/0035 Effective date: 20061113 

AS  Assignment 
Owner name: CONEXANT SYSTEMS, INC., CALIFORNIA Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.;REEL/FRAME:023134/0285 Effective date: 20090821 Owner name: BROOKTREE BROADBAND HOLDING, INC, CALIFORNIA Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.;REEL/FRAME:023134/0285 Effective date: 20090821 Owner name: CONEXANT SYSTEMS, INC.,CALIFORNIA Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.;REEL/FRAME:023134/0285 Effective date: 20090821 Owner name: BROOKTREE BROADBAND HOLDING, INC,CALIFORNIA Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.;REEL/FRAME:023134/0285 Effective date: 20090821 

AS  Assignment 
Owner name: IKANOS COMMUNICATIONS, INC., CALIFORNIA Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:CONEXANT SYSTEMS, INC.;CONEXANT, INC.;BROOKTREE BROADBAND HOLDING INC.;REEL/FRAME:023163/0723 Effective date: 20090824 Owner name: IKANOS COMMUNICATIONS, INC.,CALIFORNIA Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:CONEXANT SYSTEMS, INC.;CONEXANT, INC.;BROOKTREE BROADBAND HOLDING INC.;REEL/FRAME:023163/0723 Effective date: 20090824 

FPAY  Fee payment 
Year of fee payment: 8 

FPAY  Fee payment 
Year of fee payment: 12 

AS  Assignment 
Owner name: ALCATELLUCENT USA, INC., NEW JERSEY Free format text: NOTICE OF GRANT OF SECURITY INTEREST IN PATENTS;ASSIGNOR:IKANOS COMMUNICATIONS, INC.;REEL/FRAME:035581/0710 Effective date: 20150430 

AS  Assignment 
Owner name: SILICON VALLEY BANK, CALIFORNIA Free format text: SECURITY INTEREST;ASSIGNOR:IKANOS COMMUNICATIONS, INC.;REEL/FRAME:035874/0351 Effective date: 20150602 

AS  Assignment 
Owner name: IKANOS COMMUNICATIONS, INC., CALIFORNIA Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:ALCATELLUCENT USA, INC.;REEL/FRAME:036732/0876 Effective date: 20150929 Owner name: IKANOS COMMUNICATIONS, INC., CALIFORNIA Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:SILICON VALLEY BANK;REEL/FRAME:036733/0031 Effective date: 20150930 