CN102638275A - A method and apparatus for encoding and decoding data using low density parity check code in a wireless communication system - Google Patents

A method and apparatus for encoding and decoding data using low density parity check code in a wireless communication system Download PDF

Info

Publication number
CN102638275A
CN102638275A CN 201210084407 CN201210084407A CN102638275A CN 102638275 A CN102638275 A CN 102638275A CN 201210084407 CN201210084407 CN 201210084407 CN 201210084407 A CN201210084407 A CN 201210084407A CN 102638275 A CN102638275 A CN 102638275A
Authority
CN
China
Prior art keywords
matrix
value
max
basis
size
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.)
Granted
Application number
CN 201210084407
Other languages
Chinese (zh)
Other versions
CN102638275B (en
Inventor
吴旼锡
丁奎赫
赵基亨
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
LG Electronics Inc
Original Assignee
LG Electronics Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by LG Electronics Inc filed Critical LG Electronics Inc
Publication of CN102638275A publication Critical patent/CN102638275A/en
Application granted granted Critical
Publication of CN102638275B publication Critical patent/CN102638275B/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

A method of encoding data using low density parity check (LDPC) code defined by a mxn parity check matrix is disclosed. More specifically, the method includes encoding input source data using the parity check matrix, wherein the parity check matrix comprises a plurality of zxz sub-matrices of which row weights and column weights are '0' or '1 '.

Description

Use the method and apparatus of low density parity check code Code And Decode data in the wireless communication system
The application is that the application number in the entering China national stage of submission on December 20th, 2006 is 200580020419.2 (PCT/KR2005/001988); The applying date is on June 24th, 2005, and denomination of invention is divided an application for the patent application of " using the method and apparatus of low density parity check code Code And Decode data in the wireless communication system ".
Technical field
The present invention relates to the method for a kind of Code And Decode in the wireless communication system, more particularly, relate to the method and apparatus of a kind of use low-density checksum (LDPC) sign indicating number Code And Decode in the wireless communication system.Although the range of application that the present invention is fit to is very big, it is specially adapted to simplify complex operations and effectively utilizes memory space.
Background technology
Usually, coded representation is wherein sent the mistake that takes place in distorted signals and the loss of signal during the data in the transmitting terminal coded data so that receiving terminal can compensate through the air linkage interface, and the process of recovery initial data.Decoding is the process that wherein will revert to its initial data at receiving terminal from the coded data of transmitting terminal.
It is known utilizing the coding method of low-density checksum (LDPC) sign indicating number.The LDPC sign indicating number is a kind of error correcting code of being invented in the thesis for the doctorate at him in 1962 by Robert Gallager.More particularly, the parity check matrix H mainly be made up of " 0 " of its element is a low-density linear zone block code.Because the calculating of high complexity, the LDPC sign indicating number has passed into silence when initial the introduction to a great extent, but it is rediscovered and be proved to be effective in nineteen ninety-five.Also underway (the reference: Robert G.Gallager, " Low-Density Parity-Check Codes (low density parity check code) ", The MIT Press, on September 15th, 1963 of the research of LDPC sign indicating number.[2] D.J.C.Mackay, Good error-correcting codes based on very sparse matrices (based on the good error correcting code of utmost point sparse matrix), IEEE Trans.Inform.Theory, IT-45, pp.399-431 (1999)).
Have in the every row and column of the parity matrix of LDPC sign indicating number few " 1 ".As a result,, also can decode through the decode procedure that repeats even in big block, and if the size of block become very big, the LDPC sign indicating number almost satisfies the channel capacity limit of Shannon as the turbo coding.
The LPDC sign indicating number can be by the parity check matrix H definition of (n-k) * n, and wherein cataloged procedure codeword size is afterwards carried out in " n " expression, and cataloged procedure data bit is before carried out in " k " expression.Generator matrix G can derive from following equality:
H * G=0 [formula 1]
For using LDPC sign indicating number Code And Decode, transmitting terminal uses parity check matrix H and generator matrix G coded data according to formula 2.
C=G * u [formula 2]
In formula 2, symbol " c " is represented code word and " u " expression Frame.
Recently, using the method for coding data of only using parity check matrix H and not using generator matrix G.Coding method for using the LDPC sign indicating number can be thought of as most important factor with parity check matrix H.Because the size of parity check matrix H is about 1000 * 2000 or bigger in practical communication system, so the process need great amount of calculation of Code And Decode, the expression formula of complicacy and big memory space.
Generate after the parity check matrix H, use the source data of the parity check matrix H coding input that generates.
Summary of the invention
Therefore, the present invention relates to a kind of method and apparatus that in wireless communication system, utilizes low-density checksum coding and decoded data, it has solved basically because the restriction of prior art and one or more problems that shortcoming causes.
The purpose of this invention is to provide a kind of use LDPC sign indicating number method of coding data.
Another object of the present invention provides a kind of device of the LDPC of use sign indicating number coded data.
Other advantages of the present invention, purpose and characteristic will partly be set forth in the following description, and below investigating on description or the basis of from practice of the present invention, learning, it is obvious concerning those of ordinary skills, will to become.To realize and obtain the object of the invention and other advantages through the structure that in the description of being write down and its claim and accompanying drawing, particularly points out.
In order to realize these purposes and other advantages according to the object of the invention; As concrete and broadly described at this; The invention discloses the method for a kind of use low-density checksum (LDPC) sign indicating number coding or decoded data, this method comprises the parity matrix of the permutation submatrix of using the zero submatrix that comprises a plurality of z * z and a plurality of z * z.Wherein the capable weighted sum row weighting of the permutation submatrix of a plurality of z * z is " 0 " or " 1 ".
In one aspect of the invention; Use low-density checksum (LDPC) sign indicating number method of coding data is provided; This method comprises provides permutation matrix, null matrix and basis matrix, produces parity matrix through using permutation matrix, null matrix to launch basis matrix; With use parity matrix coding data to be sent.
In another aspect of this invention; Have the permuting information that is used to discern permutation matrix through each element that makes basis matrix and define the method for using low-density checksum (LDPC) sign indicating number coding input source data, form said permutation matrix at the interval of the specific line number of equidirectional superior displacement through every row with the base displacing matrix.In the method, each element of basis matrix is that 96 * 96 permutation matrix and this basis matrix are
2 - 1 19 - 1 47 - 1 48 - 1 36 - 1 82 - 1 47 - 1 15 - 1 X 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 69 - 1 88 - 1 33 - 1 3 - 1 16 - 1 37 - 1 40 - 1 48 - 1 0 0 - 1 - 1 - 1 - 1 - 1 10 - 1 86 - 1 62 - 1 28 - 1 85 - 1 16 - 1 34 - 1 73 - 1 - 1 - 1 0 0 - 1 - 1 - 1 - 1 - 1 28 - 1 32 - 1 81 - 1 27 - 1 88 - 1 5 - 1 56 - 1 37 - 1 - 1 - 1 0 0 - 1 - 1 - 1 23 - 1 29 - 1 15 - 1 30 - 1 66 - 1 24 - 1 50 - 1 62 - 1 - 1 - 1 - 1 - 1 0 0 - 1 - 1 - 1 30 - 1 65 - 1 54 - 1 14 - 1 0 - 1 30 - 1 74 - 1 0 - 1 - 1 - 1 - 1 - 1 0 0 - 1 32 - 1 0 - 1 15 - 1 56 - 1 85 - 1 5 - 1 6 - 1 52 - 1 0 - 1 - 1 - 1 - 1 - 1 0 0 - 1 0 - 1 47 - 1 13 - 1 61 - 1 84 - 1 55 - 1 78 - 1 41 X - 1 - 1 - 1 - 1 - 1 - 1 0
In addition; " 0 " expression unit matrix of 96 * 96, the null matrix of " 1 " expression 96 * 96, the permutation matrix that the integer representation more than or equal to 1 forms through the every row at the unit matrix of equidirectional superior displacement 96 * 96; This identical line number distance is integer " X ", and it is between 0 to 95.
In another aspect of this invention; A kind of encoder is provided; It comprises the parity matrix generation module; Be used for producing parity matrix through launching basis matrix, each element of this basis matrix has the permuting information that is used to discern the permutation matrix that forms through the replacing base permutation matrix; And coding module, it is used for these parity matrix coding input source data.
In another aspect of this invention; The method of a kind of use low-density checksum (LDPC) sign indicating number decoded data is provided; This method comprises provides permutation matrix, null matrix and basis matrix, produces parity matrix through using permutation matrix, null matrix to launch basis matrix; And use this parity matrix decoded data.
In another aspect of this invention; Have the permuting information that is used to discern permutation matrix through each element that makes basis matrix and define the method for using low-density checksum (LDPC) sign indicating number decoding input source data, form said permutation matrix at the interval of the specific line number of equidirectional superior displacement through every row with the base displacing matrix.The method comprises that each element is the following basis matrix of 96 * 96 permutation matrix:
2 - 1 19 - 1 47 - 1 48 - 1 36 - 1 82 - 1 47 - 1 15 - 1 X 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 69 - 1 88 - 1 33 - 1 3 - 1 16 - 1 37 - 1 40 - 1 48 - 1 0 0 - 1 - 1 - 1 - 1 - 1 10 - 1 86 - 1 62 - 1 28 - 1 85 - 1 16 - 1 34 - 1 73 - 1 - 1 - 1 0 0 - 1 - 1 - 1 - 1 - 1 28 - 1 32 - 1 81 - 1 27 - 1 88 - 1 5 - 1 56 - 1 37 - 1 - 1 - 1 0 0 - 1 - 1 - 1 23 - 1 29 - 1 15 - 1 30 - 1 66 - 1 24 - 1 50 - 1 62 - 1 - 1 - 1 - 1 - 1 0 0 - 1 - 1 - 1 30 - 1 65 - 1 54 - 1 14 - 1 0 - 1 30 - 1 74 - 1 0 - 1 - 1 - 1 - 1 - 1 0 0 - 1 32 - 1 0 - 1 15 - 1 56 - 1 85 - 1 5 - 1 6 - 1 52 - 1 0 - 1 - 1 - 1 - 1 - 1 0 0 - 1 0 - 1 47 - 1 13 - 1 61 - 1 84 - 1 55 - 1 78 - 1 41 X - 1 - 1 - 1 - 1 - 1 - 1 0
In the method; The unit matrix of " 0 " expression 96 * 96; The null matrix of " 1 " expression 96 * 96; The permutation matrix that integer representation more than or equal to 1 forms through the every row at the unit matrix of equidirectional superior displacement 96 * 96, and this identical line number is spaced apart integer " X ", and it is between 0 to 95.
In another aspect of this invention; A kind of decoder is provided; It comprises the parity matrix generation module; Be used for producing parity matrix through launching basis matrix, each element of this basis matrix has the permuting information that is used to discern the permutation matrix that forms through the replacing base permutation matrix; And decoder module, be used for these parity matrix coding input source data.
In another aspect of this invention, the device of a kind of use low-density checksum (LDPC) sign indicating number coded data is provided, this device comprises: data source, and it is suitable for providing data to be sent; The LDPC encoder, it is suitable for producing parity matrix through using permutation matrix and null matrix to launch basis matrix, and uses this parity matrix coding data to be sent; Modulation module, its data that are suitable for modulating-coding are to produce the coded data of modulation; And antenna, it is suitable for sending the coded data of modulation.
In another aspect of this invention, the device of a kind of use low-density checksum (LDPC) sign indicating number decoded data is provided, this device comprises: antenna, and it is suitable for receiving the coded data of modulation; Demodulation module, its coded data that is suitable for the demodulation modulation is to produce coded data; With the LDPC decoder, it is suitable for producing parity matrix through using permutation matrix and null matrix to launch basis matrix, and uses the data of this parity matrix decoding and coding.
Should be understood that the present invention above general description and following specific descriptions all are exemplary and indicative, and be intended to provide of the present invention further explanation as claimed in claim.
Description of drawings
Will be in order to provide the accompanying drawing that further understanding of the present invention is comprised to include the application in and to constitute the application's a part, explanation one or more embodiment of the present invention, and be used to explain principle of the present invention with describing.In the accompanying drawings:
Fig. 1 is the sketch map of wireless communication system.
Fig. 2 illustrates H=[H d| H p] relation.
Fig. 3 illustrates the structure of biconjugate angular moment battle array.
Fig. 4 illustrates has 16 sub-matrices, that is, and and (1,1), (1,2) ..., the H of (4,4) (i) d, m=4 wherein.
Fig. 5 illustrates the parity check matrix H when r=1/2.
Fig. 6 illustrates the flow chart that generates parity check matrix H.
Fig. 7 illustrates the permutation matrix that comprises a plurality of z * z or the parity check matrix H of null matrix.
Fig. 8 illustrates basis matrix H b
Fig. 9 illustrates another embodiment of the Code And Decode method of using the LDPC sign indicating number.
Figure 10 a illustrates the instance that generates second basis matrix of 5 * 5 the second base displacing matrix from first basis matrix of 12 * 12 the first base displacing matrix.
Figure 10 b illustrates the method that first basis matrix according to the first base displacing matrix of formula 5 from 12 * 12 generates second basis matrix of 5 * 5 the second base displacing matrix.
Figure 11 is to use the structure chart of preferred embodiment of the coding module of LDPC sign indicating number.
Figure 12 is to use the structure chart of preferred embodiment of the coding module of LDPC sign indicating number.
Figure 13 illustrates the line chart of the emulation of describing the group technology of using model taking method and rounding method downwards.
Figure 14 a-14f illustrates the basis matrix H with function bPreferred embodiment.
Figure 15 illustrates basis matrix H when code check is 1/2 bEmbodiment.
Figure 16 illustrates basis matrix H when code check is 2/3 bAnother embodiment.
Figure 17 illustrates another embodiment of basis matrix when code check is 3/4.
Figure 18 illustrates another embodiment of basis matrix when code check is 1/2.
Figure 19 illustrates another embodiment of basis matrix when code check is 1/2.
Figure 20 illustrates another embodiment of basis matrix when code check is 1/2.
Figure 21 illustrates another embodiment of basis matrix when code check is 2/3.
Figure 22 illustrates another embodiment of basis matrix when code check is 3/4.
Figure 23 illustrates another embodiment of basis matrix when code check is 3/4.
Figure 24 illustrates another embodiment of basis matrix when code check is 2/3.
Figure 25 illustrates another embodiment of basis matrix when code check is 2/3.
Figure 26 illustrates another embodiment of basis matrix when code check is 2/3.
Figure 27 illustrates another embodiment of basis matrix.
Embodiment
Specifically with reference to the preferred embodiments of the present invention, the example is shown in the drawings now.Anywhere, spreading all over accompanying drawing uses identical reference number to indicate same or analogous part.
Fig. 1 is a sketch map of wherein realizing the wireless communication system of embodiments of the invention.In Fig. 1, reflector 10 is communicated by letter through wireless channel 20 with receiver 30.Data source 11 from reflector 10 by the source data " u " of LDPC encoder 13 processing k bits, makes source data be used as the code word of n bit " c " coding and processing., code word " c " sends after being modulated for wireless transmission by modulation module 15 then through antenna 17.Receive the signal that sends through wireless channel 20 by the antenna in the receiver 30 31.After this, in receiver 30, carry out the opposite operation of operation with reflector 10.For example, before the code word c with the n bit is transferred to LDPC decoder 35, demodulation module 33 demodulated received signals.Data transmission/receiving course is not limited to above-mentioned instance.Said process is that the instance simplified is in order to explain embodiments of the invention.
Embodiments of the invention relate to the specific operation that in LDPC encoder 13 and LDPC decoder 35, uses LDPC sign indicating number Code And Decode.In addition, embodiment relates to the specific descriptions such as the encoder of LDPC encoder 13 and LDPC decoder 35.It below is the instantiation of embodiment.
Formula 3 illustrates the calculating of code check.When calculating code check, reflector is considered such as channel status and the factor of sending data volume.
R=k/n [formula 3]
Here, the length of " k " expression source data, and the length of n presentation code data (or code word).
Coded data (or code word) comprises systematic bits and Parity Check Bits.The source data of systematic bits indication precoding, and the Parity Check Bits indication is determined and is doubled by systematic bits and generator matrix to be added to a series of bits at systematic bits rear portion.The bit number that value in the formula " n " indication increases between systematic bits and Parity Check Bits.Reduce the code check of the number of Parity Check Bits, and reduce the code check of the number of systematic bits with reduction LDPC sign indicating number with increase LDPC sign indicating number.
As for the coding method of using the LDPC sign indicating number, can use generator matrix G coding input source data according to formula 1 and formula 2.More particularly, the input source data s of through type 2 coding k bits 1 * kAnd it becomes the code word x of n bit 1 * kCode word x comprises x=[s p]=[s 0, s 1..., s K-1, p 0, p 1..., p M-1].Here, (p 0, p 1..., p M-1) represent Parity Check Bits and (s 0, s 1..., s K-1) the expression systematic bits.
But it is complicated using the coding method of generator matrix G.In order to minimize this complexity, do not rely on generator matrix G, preferably use parity check matrix H direct coding input source data.Because x=[s p] uses Hx=0, Hx=H [s p]=0.From these relations, can obtain Parity Check Bits p, and can confirm code word x=[s p] subsequently.
Generate after the parity check matrix H, use the parity check matrix H coding input source data that generate.
Be similar to the method for using in the receiver 30 among Fig. 1, use following formula decoding and coding data:
Hx=0 [formula 4]
Formula 4 is described how to detect and is separated code error.More particularly, if decoded data x and parity check matrix H multiply each other and the result is 0, then this result representes not have transmission error.But if the result is the number except 0, then there is transmission error in expression.
Figure 11 and 12 is the block diagrams of embodiment of encoder 130 and decoder 350 that are similar to LDPC encoder 13 and the LDPC decoder 35 of Fig. 1 respectively.
In formula 1, can parity check matrix H be expressed as H=[H d| H p], H wherein dHave (n-k) * k dimension and H pHas (n-k) * (n-k) dimension.Fig. 2 illustrates H=[H d| H p] instance of relation, wherein k is illustrated in the LDPC encoder 13 length of the source data (bitwise) of coding, and the length of the code word c of n presentation code (bitwise).
From formula 1 and H=[H d| H p] between relation, can confirm formula G=[I| (H p -1H d) t] tIn addition, LDPC encoder 13 passes through G=[I| (H according to formula 2 p -1H d) t] tMultiply by input source data u and carry out encoding operation.Subsequently, formula 2 can be expressed as following formula 5:
C=[I| (H p -1H d) t] tU [formula 5]
In this formula, if H pHas the double diagonal line form, then as lower triangular matrix easy for calculation H p -1
Except using generator matrix G to carry out encoding operation, also can carry out encoding operation through using parity check matrix H direct coding source data.
Preferably, can and H pUse (n-k) * (n-k) dual diagonal matrix together.No matter the dimension of matrix is how, dual diagonal matrix is represented such matrix: wherein leading diagonal and up or below cornerwise all elements of being close to leading diagonal all be " 1 ", and other elements are " 0 ".Fig. 3 illustrates the structure of the instance of dual diagonal matrix.
In the Code And Decode method of using the LDPC sign indicating number, code check is thought of as important parameter.Particularly, each code check r should be supported by various code word size n.Usually, the value of " r " is r=1/2,2/3 or 3/4, and still the value of " r " is not limited to these values.As for " n ", often use n=24 * z (at this, z=24+4 * i, i=0 wherein, 1,2,3,4 ..., 18).Can use different basis matrixs to optimize the Code And Decode performance to each " r " and " n ".But, if for specific " r " with a basis matrix H bBe used for all " n ", then can reduce the use of memory.Therefore, confirm how will to be included in a basis matrix H bIn permuting information to be modified to the permuting information of other n very important.
Below embodiment provide when using the first basis matrix Code And Decode to have the basis matrix of the second base displacing matrix of other dimensions (z), store first basis matrix and have maximum dimension (z Max) the first base displacing matrix.
Below will describe storage first basis matrix and have maximum dimension (z Max) the instance of the method that generates of the first base displacing matrix and the basis matrix that uses the first basis matrix Code And Decode to have the second base displacing matrix of other dimensions (z).
Fig. 8 illustrates basis matrix H bInstance.Basis matrix shown in Fig. 8 only is an instance, and the basis matrix H that uses in the Code And Decode bActual size bigger.In Fig. 8, z MaxBe 12.Likewise, basis matrix H bHave the base displacing matrix of 12 * 12 dimensions, through on specific direction, the interval of the every capable cyclic shift appointment of base displacing matrix being formed a plurality of permutation matrixes, basis matrix H bAlso has null matrix.For example, basis matrix H bIn the permutation matrix of " 11 " expression through on specific direction, the interval (row or row) of the every capable cyclic shift 11 of base displacing matrix being formed.
Fig. 9 illustrates another embodiment of the Code And Decode method of using the LDPC sign indicating number.The instance of following Fig. 9 is based on the communication system of Fig. 1.In order to carry out encoding operation, the LDPC encoder should comprise having maximum dimension (z Max) the first base displacing matrix and first basis matrix of the first base displacing matrix.The first base displacing matrix is unit matrix preferably.If the fixed matrix such as unit matrix is used as the first base displacing matrix, then the LDPC encoder need not stored the information of the first base displacing matrix.
Reflector 10 can send the input source data through channel after through the H matrix coder input source data of using first basis matrix to generate.But there is trouble in the input source data (code word) with coding after second basis matrix that is using second permutation matrix generates the H matrix when sending to receiver 30.The dimension size of second permutation matrix is " z ", and it is less than maximum dimension z MaxSize.
As basis (H b) d(H b) pDefinition basis matrix H bThe time, preferably to (H b) pUse block biconjugate angular moment battle array.More particularly, (H b) d(H b) pBe by H=[(H b) d| (H b) p] expression basis matrix H bA part.Block biconjugate angular moment battle array has the leading diagonal of whole formation unit matrixs and up or the diagonal of below next-door neighbour leading diagonal and other elements all are " 0 ".If (H b) pBe set to block biconjugate angular moment battle array, then H pPossibly have row weighting " 1 ", and, preferably, should replace unit matrix with one or two null matrix for fear of this situation.
Basis matrix H b(H b) dBy base displacing matrix, being combined to form through a plurality of permutation matrixes that on specific direction, the interval of the specific line number of every capable cyclic shift of base displacing matrix formed and null matrix.When forming basis matrix H through the above-mentioned permutation matrix of combination bThe time, preferably consideration provides the operation of the Code And Decode of optimum performance.
In the H matrix, according to code check (r=k/n), H dCan comprise at least one H (i) d, i=1 wherein, 2 ..., r/ (1-r).Length " n " by source data length " k " and coding codeword " c " is confirmed code check " r ".Usually, can use such as r=1/2,2/3,3/4,4/5 code check.H (i) dBe the matrix of (n-k) * (n-k) dimension, and by H d=[H (1) d| H (2) d| ... | H (r/ (1-r)) d] expression.
Preferably, when with each H (i) dWhen being divided into m * m (n-k)/m * (n-k)/m dimension submatrix, H dThe weighting of every row and column be " 1 ".More particularly, every row and column of submatrix has " a 1 " element and other elements are " 0 ".In addition, if H dAny two the row compare these capable row that overlap each other that do not have more than with " 1 ".At H dIn, when two row have at H pDuring overlapping row, do not have two row to have overlapping " 1 " row.More particularly, if H dAny two the row compare, for example, can have " 1 " at row 7 certain row, and other the row also can have " 1 " at row 7.But, these two capable other row that do not have total " 1 ".If satisfy this condition, identical notion is applied to row.In other words, there are not two row to have overline more than one " 1 ".
Fig. 4 illustrates has 16 sub-matrices when m=4, that is, (1,1), (1,2) ..., (4,4), instance H (i) dEach submatrix has " 1 ", and weighting means in each submatrix, to have only delegation or row to have " 1 " as row weighted sum row, and remaining row and column has " 0 ".Preferably m uses " 4 "-" 12 ", and this scope provides optimum performance.
In another example, H dThe capable weighting or the row weighting of submatrix can be " 0 " or " 1 ".In other words, at H (i) dSubmatrix in, have the submatrix of capable weighted sum row weighting with " 0 " or " 1 ".Likewise, H (i) dPreferably have similar number at H (i) dThe row and column direction on have the submatrix of the capable weighted sum row weighting of " 0 ".
Fig. 5 illustrates the instance of parity check matrix H when r=1/2, H dOn the left side and biconjugate angular moment battle array H pOn the right.In Fig. 5, H dComprise 25 sub-matrices.Here, " 1 " representative of square frame sign has the submatrix of the row and column weighting of " 1 ", and " 0 " representative of square frame sign has the submatrix of the row and column weighting of " 0 ".In Fig. 5, the submatrix of row and column weighting with " 0 " is at H dIn every row and column exist once.
Fig. 6 is the flow chart that the process that generates parity check matrix H is shown.The instance of describing the process that generates parity check matrix H is not limited to the instance of following description.
In first process, for H (i) dSubmatrix (1,1), all row and column weightings should be " 0 " or " 1 " (S51).Such as H (i) dThe submatrix (other submatrixs all from it produce) of submatrix (1,1) be called as the base displacing matrix.In addition, preferably, for base displacing matrix applying unit matrix.
Next, this process comprises carries out replacement operator to the row and column of base displacing matrix, sequentially to generate H (i) dEach submatrix (S51-S53).Preferably, there is not H dTwo row can generate H (i) dEach submatrix in have row more than one have overlapping " 1 ".The submatrix that is formed by the replacement operator of the row and column of base displacing matrix is called as permutation matrix.
In addition, generate (S54) H according to first (S51) and second (S52) process (i) dRemainder (S53).Equally, combination H (i) dAll parts to generate H d(S55).At last, combination H dAnd H pTo generate H (S56).
Fig. 7 illustrates the parity check matrix H that comprises a plurality of z * z permutation matrix or null matrix.In Fig. 7, P I, jExpression z * z permutation matrix or null matrix.
As basis (H b) d(H b) pDefine these basis matrixs H bThe time, to (H b) pPreferably use block biconjugate angular moment battle array.More particularly, (H b) d(H b) pBe by H=[(H b) d| (H b) p] expression basis matrix H bA part.Block biconjugate angular moment battle array have leading diagonal and up or the below be close to the diagonal of leading diagonal, they all form unit matrix and remainder is " 0 ".If with (H b) pBe set as block biconjugate angular moment battle array, H pCan have row weighting " 1 " and, preferably should replace unit matrix with one or two null matrix for fear of this situation.
Basis matrix H b(H b) pBy the base displacing matrix, through on specific direction, the every capable cyclic shift of base displacing matrix being specified being combined to form of a plurality of permutation matrixes that the interval of line number forms and null matrix.When forming basis matrix H through the above-mentioned permutation matrix of combination bThe time, preferably consider to provide the Code And Decode operation of optimum performance.
About basis matrix H b, must be lower than selected first standard value from the difference in the numeral of any two permuting informations of permuting information.In other words, the numeral of each permutation matrix should with basis matrix H bSame or similar.Preferably, the value of first standard value should be very little, but can be between 3-7.
About parity check matrix H, preferably should prevent or minimize the generation of 4-circulation or 6-circulation.Particularly, preferably, parity check matrix H does not have the 4-circulation.In addition, preferably, the 6-circulation that parity check matrix H has is less than selected second standard value.Go when two identical row have " 1 " when any two of parity check matrix H, be called the 4-circulation.Similarly, the 6-circulation is any combination according to two row, when the situation of any triplex row when two identical row have " 1 " of parity matrix.
In addition, about the H in the parity check matrix H d, the weighting of row weighted sum row should rule, and rule refers to because do not reduce performance for the realization of low complex degree, in all row and all row, has identical weighting respectively.If z * z unit matrix is as the base displacing matrix, then parity check matrix H can have the systematicness in the weighting of capable weighted sum row.
Should form basis matrix H bTo realize efficient coding and decoding performance for all code checks and codeword size.When being combined to form basis matrix H according to base displacing matrix, a plurality of permutation matrix and null matrix bThe time, because to the code check and the codeword size of communication system applications variation of being shifted, so should form basis matrix to realize optimal performance to all code checks and codeword size.
Each element of first basis matrix can have two or more permuting informations.More particularly, can be two or more littler scopes with the whole dimension scope division of the base displacing matrix that changes, so that each scope is carried optimum permuting information.For example, if the scope of the dimension z that changes is 10-96, be two littler dimension scopes then with this scope division.First scope comprises 10-53, and second scope comprises 54-96.Subsequently, first basis matrix of optimizing is assigned to each dimension.Although there are two first basis matrixs now, each first basis matrix does not need the information that can be stored two first basis matrixs by the storage and the element of first basis matrix independently.As a result, in the less storage of needs, improved the performance of Code And Decode.
The element of parity check matrix H can be by basis matrix H bExpress H bComprise the permuting information that is used to discern a plurality of permutation matrixes that the displacement by the row and column of base displacing matrix forms.
For the Code And Decode of LDPC encoder 13 among Fig. 1 or the use parity check matrix H in the LDPC decoder 35, can use base displacing matrix and permuting information to launch basis matrix H bGenerate parity check matrix H afterwards.In addition, preferably use the parity matrix that generates to carry out the Code And Decode operation.
Through launching basis matrix H b, mean that z * z matrix of representing permuting information replaces basis matrix H bEach element.Z * z matrix refers to permutation matrix or null matrix.Here, at basis matrix H bThe basis of expansion on, generate parity check matrix H subsequently.
Also can consider to be used for from basis matrix H bGenerate the various process of H matrix.At first, " null matrix " distributed in " 1 " and be not that the every other permuting information of " 1 " is assigned to binary basis matrix H Bin, this binary basis matrix H BinMatrix dimension with have the H of " 1 " appointment bIdentical.In addition, if H BinBe used to generate the H matrix, then add H BinGenerate H bProcess.Obtaining H bThe process that generates the H matrix afterwards is with above identical.
As stated, in change order from the basis of the designation method of at least one base displacing matrix and form a plurality of permutation matrixes.Preferably, the base displacing matrix is a unit matrix.In addition, preferably, at least one base displacing matrix and a plurality of permutation matrix have the row and column weighting of " 1 ".In other words, preferably the element of all row and columns of a plurality of permutation matrixes only has " a 1 " element and other elements are " 0 ".
Can think on specific direction with the every full line of base displacing matrix or the method for row cyclic shift appointed interval it is the method that forms a plurality of permutation matrixes from the base displacing matrix.
Parity check matrix H can be by the basis matrix H that has as the permuting information of the element of the permutation matrix that is used to discern the base displacing matrix or is formed by the displacement of every row of base displacing matrix or row bDefinition.The instance that below provides illustrates such situation, and is for example right or left on specific direction, with the every row or the row cyclic shift appointed interval of base displacing matrix, to form a plurality of permutation matrixes from the base displacing matrix.
Storage is used to have maximum dimension (z Max) the first basis matrix H of base displacing matrix b, and through replacing each permuting information of first basis matrix divided by the remainder of value " z ", and generate other basis matrixs of other base displacing matrixes that are used to have less dimension (z) from first basis matrix with each permuting information of first basis matrix.
According to the size of code word, be necessary to make that in Code And Decode operating period the dimension of base displacing matrix is 5 * 5.In this case, can use mod " mod (A, B) ".Here, (A, B) indication A is divided by the remainder of B for mod.In other words, the base displacing matrix for 5 * 5, basis matrix H bIn " 11 " every row of not representing to have the base displacing matrix of 5 * 5 dimension size be shifted 11 interval.But it is illustrated in will go displacement " mod (11,5)=1 " on the equidirectional.
Following instance illustrates when the dimension of base displacing matrix (or value " z ") changes owing to the change code word size, how more effectively to generate parity check matrix H and carries out the operation of LDPC Code And Decode according to the parity check matrix H that is generated.The instance that is provided relates to through using first basis matrix to generate second basis matrix according to the different dimensions (z) of base displacing matrix.In addition, through generating second basis matrix, thereby and can improve the Code And Decode performance with the similar shift mode of first basis matrix.
In Fig. 9, reflector 10 uses first basis matrix to generate second basis matrix.Use the basis matrix shown in Fig. 8 to explain the generation method of second basis matrix.In Fig. 8, maximum dimension z MaxSize be 12.Therefore, form the first basis matrix H by index information bIndex information comprises 12 * 12 first base displacing matrixes, a plurality of displacements and null matrix through on specific direction, the interval of the specific line number of every capable cyclic shift of base displacing matrix being formed.For example, basis matrix H bIn the permutation matrix of " 11 " representative through on specific direction, the interval of base displacing matrix cyclic shift 11 (row or row) being formed.
Figure 10 a illustrates the method that is used for generating from first basis matrix of 12 * 12 first base displacing matrixes second basis matrix of 5 * 5 second base displacing matrixes.If the size according to code word during the encoding operation in reflector makes that the dimension size (z) of the second base displacing matrix is less, shown in Figure 10 a, then use group technology.In other words, " 0 " of first basis matrix, " 1 " and " 2 " are grouped and are mapped as " 0 " in second basis matrix.Similarly, " 3 " of first basis matrix and " 4 " are grouped and are mapped as " 1 " in second basis matrix, and " 5 " and " 6 " are grouped and are mapped as " 2 ".The grouping and the mapping that repeat model identical make " 7 ", " 8 " and " 9 " be grouped and be mapped as " 3 ", and " 10 " and " 11 " are grouped and are mapped as " 4 ".Result as dividing into groups and shining upon generates second basis matrix.
In group technology, the permutation matrix with first base displacing matrix of adjacent carry digit is mapped to a permutation matrix of the second base displacing matrix.In addition, design this group technology when generating second basis matrix, to keep most of foundation characteristic of first basis matrix.In Figure 10 a, at least two permutation matrixes of the first base displacing matrix are grouped and are mapped to a permutation matrix in the second base displacing matrix.But, can shine upon the permutation matrix of a permutation matrix of the first base displacing matrix to the second base displacing matrix.
For specific group technology, can use the downward bracket function of definition in the formula 6:
Shift (z)=floor (shift (z Max) z/z Max) [formula 6]
In this formula, the between-line spacing number that is shifted in shift (z) expression z * z permutation matrix.Equally in this formula, floor (x) expression toward negative infinity near the integer of x.
Figure 10 b illustrates the method that generates second basis matrix of 5 * 5 second base displacing matrixes according to first basis matrix of the first base displacing matrix of formula 5 from 12 * 12.
For example, mapping generates permutation matrix through permutation matrix to 5 * 5 second base displacing matrixes that the every interval of going displacement 7 with 12 * 12 first base displacing matrixes forms.This displacement can use formula 6 to be expressed as:
Shift(5)=floor(shift(12)×5÷12)=floor(7×5÷12)=floor(2.92)=2
In other words, the permutation matrix that forms through the interval with the every capable cyclic shift 7 of 12 * 12 first basis matrixs is mapped to the permutation matrix at interval of every row displacement 2 of 5 * 5 second permutation matrixes.
Through using above-mentioned generation method, can replace each element of first basis matrix to generate second basis matrix through element with second basis matrix.This can simplify hardware or the software complexity of realizing downward bracket function.
In Fig. 9, after generating second basis matrix (S41), can use the second base displacing matrix and second basis matrix to generate parity check matrix H (S43).Through using the second base displacing matrix and second basis matrix, second basis matrix can generate has z * the big or small parity check matrix H of z dimension.Second basis matrix comprises null matrix, unit matrix or the permutation matrix that forms through all the row cyclic shift appointed intervals with the second base displacing matrix.Can carry out the second basis matrix generative process (S41) and parity check matrix H generative process (S43) simultaneously.Also can replace each element of second basis matrix of through type 6 acquisitions to generate parity check matrix H through respective element with null matrix, base displacing matrix or permutation matrix.And use the parity check matrix H coding input source data (S45) that generated.
As stated, preferably, carry out generating run, at first consider the use of memory in the memory module and only store to have maximum dimension (z for the base displacing matrix Max) first basis matrix of the first base displacing matrix, and in the basis matrix of the second base displacing matrix, use the first basis matrix Code And Decode then with other dimensions sizes (z).The different dimension sizes of base displacing matrix equally preferably, are set according to the change in the code word size.
Figure 13 illustrates the line chart that uses the mod and the emulation of the group technology of downward bracket function.At this, this figure shows that the method for rounding downwards compares the superior function of mod.
Figure 11 is to use the structure chart of preferred embodiment of the coding module of LDPC sign indicating number.Encoder 130 comprises memory module 131, basis matrix generation module 132, parity matrix generation module 133 and coding module 134.Memory module 131 storages are about the information of the first base displacing matrix, the second base displacing matrix and first basis matrix.Basis matrix generation module 132 uses first base displacing matrix and the information of first basis matrix of information stores in memory module 131 to generate second basis matrix.Parity matrix generation module 133 uses second base displacing matrix and the information of second basis matrix that from basis matrix generation module 132 generate of information stores in memory module 131 to generate parity matrix.Coding module 134 uses from the source data of the parity matrix coding input of parity matrix generation module 133 generations.
If code word size does not change, then base displacing matrix information of memory module stores and a basis matrix information and do not need the basis matrix generation module.In addition, if use the simple matrix such as unit matrix in first or second permutation matrix, then memory module 131 needn't be stored the information of the first or second base displacing matrix.Can in software or hardware, realize the function of basis matrix generation module 132, parity matrix generation module 133 and coding module 134 according to the function of each module.
Figure 12 is the structure chart of the preferred embodiment of decoder module.Decoder 350 comprises memory module (351), basis matrix generation module (352), parity matrix generation module (353) and coding module (354).The function of memory module 351, basis matrix generation module 352 and parity matrix generation module 353 is identical with the corresponding module of Figure 11.Coding module 354 is through using the parity matrix coded input data that is generated by parity matrix generation module 353.The explanation about function among Figure 11 that is provided is applicable to Figure 12.
Below be the specific descriptions of base displacing matrix and basis matrix, with the better performance in the Code And Decode method that realizes use LDPC sign indicating number.
Figure 14 a-14f illustrates has the basis matrix H of function as stated bPreferred embodiment.In Figure 14 a-14f, code check is 3/4.When code check is 3/4; For basis matrix; " 0 " expression has the unit matrix of z * z dimension; " 1 " expression has the null matrix of z * z dimension, and the permutation matrix that forms through the every row (or row) at the unit matrix of specific direction (that is a right or left side) cocycle displacement z * z greater than 1 integer representation.The row of displacement or the number of row are corresponding to this integer value.For example, if this integer is 5, the interval of the row (or row) 5 that then is shifted.
As shown in Figure 15, if code check is 1/2, the size of the basis matrix that then size of basis matrix can be by from code check 3/4 time shortens, to form basis matrix H b
Figure 16 is basis matrix H bAnother embodiment.On the basis of code check basis matrix is described 2/3.As above for the description of Figure 14 a-14f, " 0 ", " 1 " and be identical with effect more than or equal to the importance of 1 integer.
Figure 17 illustrates another embodiment of basis matrix when code check is 3/4.In this embodiment, in basis matrix, minimize 4-circulation with the number of 6-circulation and regularly to falling out weighting.In addition, for all code checks and codeword size are obtained optimal performance, each element of basis matrix basic permutation matrix that is shifted.Figure 17 is compared with Figure 14 a-14f, although have 1/4 size, the performance of matrix can with the comparing of Figure 14 a-14f.
Figure 18 illustrates another embodiment of basis matrix when code check is 1/2.In Figure 18, the design basis matrix is more effectively to carry out parallel processing.More particularly, when in basis matrix, the sequential lines preface of (1 → 7 → 2 → 8 → 3 → 9 → 4 → 10 → 5 → 11 → 6 → 12) being set, " non-zero " element of any two row is not overlapping, and simultaneously, element is not overlapping in any row of these two row." non-zero " element refers to the every other element except the element of null matrix in the basis matrix.For example, in Figure 18, if row 8 is compared with row 2 or row 3, then " non-zero " element is not overlapping in any row of contrast row.
Figure 19 illustrates another embodiment of basis matrix when code check is 1/2.For more effective parallel processing, the design basis matrix makes the set of two row, and is not overlapping in any row of these row such as " non-zero " element of (1,7), (2,8), (3,9), (4,10), (5,11), (6,12).Shown in the embodiment of Figure 18 and 19, can during decoding, realize effective parallel processing.
Figure 20-22 illustrates other embodiment of basis matrix when code check is 1/2,2/3 and 3/4 respectively.In these figure, basis matrix provides effective performance after being extended to z * z base displacing.
Figure 23 illustrates another embodiment of the basis matrix when code check is 3/4.Base displacing matrix by all dimensions launches basis matrix.Especially, when z=56, best performance.
Figure 24 and 25 illustrates other embodiment of basis matrix when code check is 2/3.Design this embodiment to have irregular row weighting to improve performance.Especially, Figure 25 illustrates the short code word length such as c=576 or c=672.
Figure 26 illustrates other embodiment of basis matrix when code check is 2/3.The integer of " X " expression from 0 to 95, and preferably, X can be 86,89 or 95.Most preferred value is X=95.Basis matrix among Figure 26 has the parallel processing characteristic and designs it to have effective performance.The parallel processing characteristic can significantly reduce decode operation time and more particularly, and when every row during with 1,2,3,4,5,6,7 and 8 sequential index, " non-zero " element is being nonoverlapping between the row that exchanges the matrix that adjacent row generates." non-zero " element refers to from 0 to 95 number of shift bits, does not comprise-1.In addition, adjacent cells refers to through exchanging nonoverlapping " non-zero " element between first in matrix that row generates and the last row.The instance that satisfies the basis matrix among Figure 26 of above condition is 1-4-7-2-5-8-3-6-(1), and is shown in figure 27.
In Figure 27, all basis matrixs that generate through the row in the exchange basis matrix have the identical LDPC sign indicating number of LDPC sign indicating number that defines with the basis matrix of Figure 26.In addition, for Code And Decode, use basis matrix afterwards even be expert to exchange, the performance of Code And Decode operation also can be identical with the basis matrix of Figure 26.
Under the performance background, good performance and low FER (FER) synonym.
In the following description, introduced transmission and reception method by LDPC sign indicating number coded data.More particularly, the base displacing matrix and the permuting information that are included in the basis matrix are used to launch basis matrix.After generating parity check matrix H, use parity check matrix H coding or decoding input source data.Below the instance that provides for the method for Code And Decode can and relate to reference to IEEE 802.16e standard and in BWA, between mobile subscriber station (MSS) and base station (BS), send the Code And Decode that uses in the data.
When MSS gets into the sub-district, MSS and BS send with reception SBC-REQ and SBC-RSP message to exchange the capacity of MSS and BS.Table 1 and table 2 illustrate the form of SBC-REQ and SBC-RSP message respectively.
Table 1
Grammer Size Note
SBC-REQ_Message_Fromat(){
Management?Message?Type=26 8 bits
TLV?Encoded?Information Variable TLV specifies
}
Table 2
Grammer Size Note
SBC-RSP_Message_Fromat(){
Management_Message?Type=27 8 bits
TLV?Encoded?Information Variable TLV specifies
}
The function of MSS and BS comprises TLV message.The channel coding schemes of being supported by MSS and BS is included in the TLV field.
Table 3 and table 4 illustrate the form of TLV field.Specifically, the indication of table 3 and table 4 can be found in IEEE 802.16e standard demodulator option that is used for the down link data reception and the modulator option that is used for the uplink data transmission.In table 3 and 4, bit value " 0 " indication does not support corresponding demodulation scheme and bit value " 1 " indication to support the corresponding modulation scheme.
Table 3
Table 4
Figure BDA0000147336810000232
Although lower code check generally means higher coding gain, can reduce in the data volume that given bandwidth is sent.In addition, confirm transmission rate according to radio channel state.
In good wireless channel environment, can in given bandwidth, send more multidata through using higher code check to send.Otherwise, in abominable wireless channel environment, increase the transmission success rate through using low code check to send.(CQICH) sends to data sending terminal with channel information from data receiver through the channel quality indicating channel.Transmitting terminal is confirmed modulation order through using such as the method for QPSK (QPSK), 16 quadrature amplitude modulation (QAM) and 64QAM, and confirms code check according to CQICH information and available channel resources.
If MSS sends data to BS after carrying out chnnel coding by the cataloged procedure that uses the LDPC sign indicating number, then MSS is the LDPC chnnel coding through being positioned at data uplink channel descriptor (UCD) burst general introduction coding designation data before.UCD comprises code rate information.BS uses the information decoding data that receive from UCD.Table 5 illustrates the instance of UCD burst general introduction coded format.
Table 5
Figure BDA0000147336810000251
If BS sends the data of LDPC chnnel coding and gives MSS, then BS is LDPC chnnel codings through being positioned at data these data of downlink channel descriptor (DCD) burst general introduction coding instruct MS S before.DCD comprises code check and code rate information.BS uses the information decoding data that receive from DCD.Table 6 illustrates the instance of DCD burst general introduction coded format.
Table 6
It below is the explanation of in the encoder of reflector, using LDPC sign indicating number method of coding data.According to IEEE 802.16e standard, in physical layer, receive data from the upper strata.Before the coding, data comprise filling, data randomization and packet concatenation process through several processes in physical layer.Filling process comprises if the size of the data that receive from the upper strata does not satisfy the size of fixed channel encoding block, then adds " 1 " and arrives the data rear portion to satisfy fixing size.The data randomisation process comprises that sequentially growth data has fixed mode to prevent if import data, when unmodulated symbol occurs during sending, and the problem that when the receiving terminal recovered clock, possibly occur.The packet concatenation process comprises that the size that encoding block is set is to adapt to given amount of bandwidth.The encoding block of confirming through these processes is
{ 36,42,48,54,56,60,63,64,66,72,78,80,81,84,88; 90,96,99,102,104,108,112,114,117,120,128,132,135,136,138; 144,152,153,160,162,168,171,176,180,184,189,192,198,207, one of 216}.After said process, confirm the input source data of transmitting terminal encoder.
Through physical channel coded data is sent to receiving terminal.As for IEEE 802.16e standard, sending before according to OFDM symbol mapped coded data.Specifically, the modulation order of mapping symbols is after the state of the size of considering given bandwidth and transmitting channel, to confirm.
Industrial usability
To one skilled in the art, obviously can under the situation that does not break away from the spirit or scope of the present invention, make various modifications and change to the present invention.Thereby, the invention is intended to cover accompanying claims and interior modification of the present invention and the change of its equivalent scope.

Claims (34)

1. a use is carried out Methods for Coding to data based on low-density checksum (LDPC) sign indicating number for first basis matrix of code check definition in encoder, and said method comprises:
Each integer value through replace said first basis matrix with the matrix of correspondence generates parity matrix, and wherein said first basis matrix is following when code check is 2/3:
2 - 1 19 - 1 47 - 1 48 - 1 36 - 1 82 - 1 47 - 1 15 - 1 X 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 69 - 1 88 - 1 33 - 1 3 - 1 16 - 1 37 - 1 40 - 1 48 - 1 0 0 - 1 - 1 - 1 - 1 - 1 10 - 1 86 - 1 62 - 1 28 - 1 85 - 1 16 - 1 34 - 1 73 - 1 - 1 - 1 0 0 - 1 - 1 - 1 - 1 - 1 28 - 1 32 - 1 81 - 1 27 - 1 88 - 1 5 - 1 56 - 1 37 - 1 - 1 - 1 0 0 - 1 - 1 - 1 23 - 1 29 - 1 15 - 1 30 - 1 66 - 1 24 - 1 50 - 1 62 - 1 - 1 - 1 - 1 - 1 0 0 - 1 - 1 - 1 30 - 1 65 - 1 54 - 1 14 - 1 0 - 1 30 - 1 74 - 1 0 - 1 - 1 - 1 - 1 - 1 0 0 - 1 32 - 1 0 - 1 15 - 1 56 - 1 85 - 1 5 - 1 6 - 1 52 - 1 0 - 1 - 1 - 1 - 1 - 1 0 0 - 1 0 - 1 47 - 1 13 - 1 61 - 1 84 - 1 55 - 1 78 - 1 41 X - 1 - 1 - 1 - 1 - 1 - 1 0
Wherein, " 1 " expression has z Max* z MaxThe null matrix of size, " 0 " expression has z Max* z MaxThe unit matrix of size, and positive integer representes to have z Max* z MaxFirst transposed matrix of size, through the said positive integer of said unit matrix cyclic shift is generated said first transposed matrix, wherein " X " represents from 0 to 95 integer; And
Use the said parity matrix said data of encoding.
2. method according to claim 1, wherein, z MaxBe 96, and " X " is 95.
3. method according to claim 1 wherein, generates said parity matrix and comprises:
Through to generate said second basis matrix corresponding to first value of each element of said first basis matrix corresponding to second value replacement of each element of second basis matrix; Said second value is that expression has the z * null matrix of z size or the integer of second permutation matrix, and wherein z is less than z Max, and based on z, z MaxConfirm each second value with each first corresponding value; And
Generate said parity matrix with second permutation matrix with the big or small correspondence of z * z or each second value that null matrix is replaced said second basis matrix.
4. method according to claim 3 wherein, is nonnegative integer perhaps " 1 " corresponding to said second value of each element of said second basis matrix, and each second value of replacing said second matrix further comprises:
Null matrix to have z * z size replaces with said second value of " 1 ";
Second transposed matrix to have z * z size replaces with said second value of positive integer, and said second transposed matrix is changed according to said positive integer by the unit matrix with z * z size; And
Second transposed matrix to have the big or small unit matrix of z * z replaces with zero said second value.
5. method according to claim 4 wherein, changes said second transposed matrix and comprises a plurality of intervals that each full line of said unit matrix or each permutation cyclic shift equaled said positive integer.
6. method according to claim 3, wherein, each of said first transposed matrix and said second transposed matrix is defined as the capable weighted sum row weighting that has for " 1 ".
7. method according to claim 3, wherein, the quantity that the quantity of the row of said second basis matrix equals to be listed as in the said parity matrix is divided by z and multiply by (1-code check).
8. method according to claim 3, wherein, confirm each second value based on equation:
Shift (z)=floor (shift (z Max) z/z Max), " shift (z wherein Max) " be said first value, " shift (z) " is said second value, and " floor (x) " represents towards negative infinity near the integer of x.
9. method according to claim 3, wherein, when confirming each second value, at least two continuous integers corresponding to said first value are grouped and are mapped to one second value.
10. method according to claim 3 wherein, generates said second basis matrix and comprises that further second value replacement that has a null matrix of z * z size with expression representes to have z Max* z MaxFirst value of the null matrix of size.
11. the method that use is decoded to coded data in decoder based on low-density checksum (LDPC) sign indicating number of first basis matrix that defines for code check, said method comprises:
Each integer value through replace said first basis matrix with the matrix of correspondence generates parity matrix, and wherein said first basis matrix is following when code check is 2/3:
2 - 1 19 - 1 47 - 1 48 - 1 36 - 1 82 - 1 47 - 1 15 - 1 X 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 69 - 1 88 - 1 33 - 1 3 - 1 16 - 1 37 - 1 40 - 1 48 - 1 0 0 - 1 - 1 - 1 - 1 - 1 10 - 1 86 - 1 62 - 1 28 - 1 85 - 1 16 - 1 34 - 1 73 - 1 - 1 - 1 0 0 - 1 - 1 - 1 - 1 - 1 28 - 1 32 - 1 81 - 1 27 - 1 88 - 1 5 - 1 56 - 1 37 - 1 - 1 - 1 0 0 - 1 - 1 - 1 23 - 1 29 - 1 15 - 1 30 - 1 66 - 1 24 - 1 50 - 1 62 - 1 - 1 - 1 - 1 - 1 0 0 - 1 - 1 - 1 30 - 1 65 - 1 54 - 1 14 - 1 0 - 1 30 - 1 74 - 1 0 - 1 - 1 - 1 - 1 - 1 0 0 - 1 32 - 1 0 - 1 15 - 1 56 - 1 85 - 1 5 - 1 6 - 1 52 - 1 0 - 1 - 1 - 1 - 1 - 1 0 0 - 1 0 - 1 47 - 1 13 - 1 61 - 1 84 - 1 55 - 1 78 - 1 41 X - 1 - 1 - 1 - 1 - 1 - 1 0
Wherein, " 1 " expression has z Max* z MaxThe null matrix of size, " 0 " expression has z Max* z MaxThe unit matrix of size, and positive integer representes to have z Max* z MaxFirst transposed matrix of size, through the said positive integer of said unit matrix cyclic shift is generated said first transposed matrix, wherein " X " represents from 0 to 95 integer; And
Use the said parity matrix said coded data of decoding.
12. method according to claim 11, wherein, z MaxBe 96, and " X " is 95.
13. method according to claim 11 wherein, generates said parity matrix and comprises:
Through to generate said second basis matrix corresponding to first value of each element of said first basis matrix corresponding to second value replacement of each element of second basis matrix; Said second value is that expression has the z * null matrix of z size or the integer of second permutation matrix, and wherein z is less than z Max, and based on z, z MaxConfirm each second value with each first corresponding value; And
Generate said parity matrix with second permutation matrix with the big or small correspondence of z * z or each second value that null matrix is replaced said second basis matrix.
14. method according to claim 13 wherein, is nonnegative integer perhaps " 1 " corresponding to said second value of each element of said second basis matrix, and each second value of replacing said second matrix further comprises:
Null matrix to have z * z size replaces with said second value of " 1 ";
Second transposed matrix to have z * z size replaces with said second value of positive integer, and said second transposed matrix is changed according to said positive integer by the unit matrix with z * z size; And
Second transposed matrix to have the big or small unit matrix of z * z replaces with zero said second value.
15. method according to claim 14 wherein, changes said second transposed matrix and comprises a plurality of intervals that each full line of said unit matrix or each permutation cyclic shift equaled said positive integer.
16. method according to claim 13, wherein, each of said first transposed matrix and said second transposed matrix is defined as the capable weighted sum row weighting that has for " 1 ".
17. method according to claim 13, wherein, the quantity that the quantity of the row of said second basis matrix equals to be listed as in the said parity matrix is divided by z and multiply by (1-code check).
18. method according to claim 13 wherein, is confirmed each second value based on equation:
Shift (z)=floor (shift (z Max) z/z Max), " shift (z wherein Max) " be said first value, " shift (z) " is said second value, and " floor (x) " represents towards negative infinity near the integer of x.
19. method according to claim 13, wherein, when confirming each second value, at least two continuous integers corresponding to said first value are grouped and are mapped to one second value.
20. method according to claim 13 wherein, generates said second basis matrix and comprises that further second value replacement that has a null matrix of z * z size with expression representes to have z Max* z MaxFirst value of the null matrix of size.
21. one kind is used low-density checksum LDPC sign indicating number that the input data are carried out apparatus for encoding, said device comprises:
The encoder that uses parity matrix that said input data are encoded, said parity matrix generates from first basis matrix for 2/3 code check definition, and wherein said first basis matrix is following:
2 - 1 19 - 1 47 - 1 48 - 1 36 - 1 82 - 1 47 - 1 15 - 1 X 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 69 - 1 88 - 1 33 - 1 3 - 1 16 - 1 37 - 1 40 - 1 48 - 1 0 0 - 1 - 1 - 1 - 1 - 1 10 - 1 86 - 1 62 - 1 28 - 1 85 - 1 16 - 1 34 - 1 73 - 1 - 1 - 1 0 0 - 1 - 1 - 1 - 1 - 1 28 - 1 32 - 1 81 - 1 27 - 1 88 - 1 5 - 1 56 - 1 37 - 1 - 1 - 1 0 0 - 1 - 1 - 1 23 - 1 29 - 1 15 - 1 30 - 1 66 - 1 24 - 1 50 - 1 62 - 1 - 1 - 1 - 1 - 1 0 0 - 1 - 1 - 1 30 - 1 65 - 1 54 - 1 14 - 1 0 - 1 30 - 1 74 - 1 0 - 1 - 1 - 1 - 1 - 1 0 0 - 1 32 - 1 0 - 1 15 - 1 56 - 1 85 - 1 5 - 1 6 - 1 52 - 1 0 - 1 - 1 - 1 - 1 - 1 0 0 - 1 0 - 1 47 - 1 13 - 1 61 - 1 84 - 1 55 - 1 78 - 1 41 X - 1 - 1 - 1 - 1 - 1 - 1 0
Wherein, " 1 " expression has z Max* z MaxThe null matrix of size, " 0 " expression has z Max* z MaxThe unit matrix of size, and positive integer representes to have z Max* z MaxFirst transposed matrix of size, through the said positive integer of said unit matrix cyclic shift is generated said first transposed matrix, wherein " X " represents from 0 to 95 integer.
22. device according to claim 21, wherein, said encoder comprises:
Memory module is used to store said first basis matrix;
The basis matrix generation module; Be used for through to generate said second basis matrix corresponding to first value of each element of said first basis matrix corresponding to second value replacement of each element of second basis matrix; Said second value is that expression has the z * null matrix of z size or the integer of second permutation matrix, and wherein z is less than z Max
The parity matrix generation module is used for generating said parity matrix with second permutation matrix with the big or small correspondence of z * z or each second value that null matrix is replaced said second basis matrix; And
Coding module uses said parity matrix that said input data are encoded.
23. device according to claim 22 wherein, be nonnegative integer perhaps " 1 " corresponding to said second value of each element of said second basis matrix, and wherein said parity matrix generation module comprises:
Be used for replacing with the device of said second value of " 1 " with null matrix with z * z size;
Be used for replacing with the device of said second value of positive integer with second transposed matrix with z * z size, said second transposed matrix is changed according to said positive integer by the unit matrix with z * z size; And
Be used for replacing with the device of zero said second value with unit matrix with z * z size.
24. device according to claim 23, wherein, said second transposed matrix of being represented by said positive integer is to change through a plurality of intervals that each full line or each permutation cyclic shift with said unit matrix equal said positive integer to get.
25. device according to claim 22, wherein, each of said first transposed matrix and said second transposed matrix is defined as the capable weighted sum row weighting that has for " 1 ".
26. device according to claim 22 wherein, is confirmed each second value based on equation:
Shift (z)=floor (shift (z Max) z/z Max), " shift (z wherein Max) " be said first value, " shift (z) " is said second value, and " floor (x) " represents towards negative infinity near the integer of x.
27. device according to claim 21, wherein, " X " is 95.
28. a device that uses low-density checksum LDPC sign indicating number that coded data is decoded, said device comprises:
The decoder that uses parity matrix that the input data are decoded, said parity matrix generates from first basis matrix for 2/3 code check definition, and wherein said first basis matrix is following:
2 - 1 19 - 1 47 - 1 48 - 1 36 - 1 82 - 1 47 - 1 15 - 1 X 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 69 - 1 88 - 1 33 - 1 3 - 1 16 - 1 37 - 1 40 - 1 48 - 1 0 0 - 1 - 1 - 1 - 1 - 1 10 - 1 86 - 1 62 - 1 28 - 1 85 - 1 16 - 1 34 - 1 73 - 1 - 1 - 1 0 0 - 1 - 1 - 1 - 1 - 1 28 - 1 32 - 1 81 - 1 27 - 1 88 - 1 5 - 1 56 - 1 37 - 1 - 1 - 1 0 0 - 1 - 1 - 1 23 - 1 29 - 1 15 - 1 30 - 1 66 - 1 24 - 1 50 - 1 62 - 1 - 1 - 1 - 1 - 1 0 0 - 1 - 1 - 1 30 - 1 65 - 1 54 - 1 14 - 1 0 - 1 30 - 1 74 - 1 0 - 1 - 1 - 1 - 1 - 1 0 0 - 1 32 - 1 0 - 1 15 - 1 56 - 1 85 - 1 5 - 1 6 - 1 52 - 1 0 - 1 - 1 - 1 - 1 - 1 0 0 - 1 0 - 1 47 - 1 13 - 1 61 - 1 84 - 1 55 - 1 78 - 1 41 X - 1 - 1 - 1 - 1 - 1 - 1 0
Wherein, " 1 " expression has z Max* z MaxThe null matrix of size, " 0 " expression has z Max* z MaxThe unit matrix of size, and positive integer representes to have z Max* z MaxFirst transposed matrix of size, through the said positive integer of said unit matrix cyclic shift is generated said first transposed matrix, wherein " X " represents from 0 to 95 integer.
29. device according to claim 28, wherein, said decoder comprises:
Memory module is used to store said first basis matrix;
The basis matrix generation module; Be used for through to generate said second basis matrix corresponding to first value of each element of said first basis matrix corresponding to second value replacement of each element of second basis matrix; Said second value is that expression has the z * null matrix of z size or the integer of second permutation matrix, and wherein z is less than z Max
The parity matrix generation module is used for generating said parity matrix with second permutation matrix with the big or small correspondence of z * z or each second value that null matrix is replaced said second basis matrix; And
Decoder module uses said parity matrix that the input data are decoded.
30. device according to claim 29 wherein, be nonnegative integer perhaps " 1 " corresponding to said second value of each element of said second basis matrix, and wherein said parity matrix generation module comprises:
Be used for replacing with the device of said second value of " 1 " with null matrix with z * z size;
Be used for replacing with the device of said second value of nonnegative integer with second transposed matrix with z * z size, said second transposed matrix is changed according to said positive integer by the unit matrix with z * z size; And
Be used for replacing with the device of zero said second value with unit matrix with z * z size.
31. device according to claim 30, wherein, said second transposed matrix of being represented by said positive integer is to change through a plurality of intervals that each full line or each permutation cyclic shift with said unit matrix equal said positive integer to get.
32. device according to claim 29, wherein, each of said first transposed matrix and said second transposed matrix is defined as the capable weighted sum row weighting that has for " 1 ".
33. device according to claim 29 wherein, is confirmed each second value based on equation:
Shift (z)=floor (shift (z Max) z/z Max), " shift (z wherein Max) " be said first value, " shift (z) " is said second value, and " floor (x) " represents towards negative infinity near the integer of x.
34. device according to claim 28, wherein, " X " is 95.
CN201210084407.8A 2004-06-24 2005-06-24 A method and apparatus for encoding and decoding data using low density parity check code in a wireless communication system Expired - Fee Related CN102638275B (en)

Applications Claiming Priority (26)

Application Number Priority Date Filing Date Title
KR20040047898 2004-06-24
KR10-2004-0047898 2004-06-24
KR10-2004-0048454 2004-06-25
KR20040048454 2004-06-25
KR10-2004-0085512 2004-10-25
KR20040085512 2004-10-25
KR10-2004-0087361 2004-10-29
KR20040087361 2004-10-29
KR10-2004-0087938 2004-11-01
KR20040087938 2004-11-01
KR20040088807 2004-11-03
KR10-2004-0088807 2004-11-03
KR20040109624 2004-12-01
KR10-2004-0109624 2004-12-21
KR20040110678 2004-12-22
KR10-2004-0110678 2004-12-22
KR10-2004-0111525 2004-12-23
KR20040111525 2004-12-23
KR10-2004-0117136 2004-12-30
KR20040117136 2004-12-30
KR20050000046 2005-01-03
KR20050000244 2005-01-03
KR10-2005-0000244 2005-01-03
KR10-2005-0000046 2005-01-03
KR10-2005-0003296 2005-01-13
KR20050003296 2005-01-13

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
CN2005800204192A Division CN101076946B (en) 2004-06-24 2005-06-24 A method and apparatus for encoding and decoding data using low density parity check code in a wireless communication system

Publications (2)

Publication Number Publication Date
CN102638275A true CN102638275A (en) 2012-08-15
CN102638275B CN102638275B (en) 2015-01-28

Family

ID=38977091

Family Applications (2)

Application Number Title Priority Date Filing Date
CN2005800204192A Expired - Fee Related CN101076946B (en) 2004-06-24 2005-06-24 A method and apparatus for encoding and decoding data using low density parity check code in a wireless communication system
CN201210084407.8A Expired - Fee Related CN102638275B (en) 2004-06-24 2005-06-24 A method and apparatus for encoding and decoding data using low density parity check code in a wireless communication system

Family Applications Before (1)

Application Number Title Priority Date Filing Date
CN2005800204192A Expired - Fee Related CN101076946B (en) 2004-06-24 2005-06-24 A method and apparatus for encoding and decoding data using low density parity check code in a wireless communication system

Country Status (1)

Country Link
CN (2) CN101076946B (en)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017084024A1 (en) * 2015-11-17 2017-05-26 华为技术有限公司 Decoding method and decoder for low-density parity check code
CN110352562A (en) * 2017-06-25 2019-10-18 Lg 电子株式会社 The parity matrix based on LDPC code executes the method for coding and the terminal using it in a wireless communication system
CN113098659A (en) * 2015-11-24 2021-07-09 三星电子株式会社 Method and apparatus for channel encoding/decoding in a communication or broadcast system
CN113472359A (en) * 2016-12-20 2021-10-01 三星电子株式会社 Apparatus and method for channel encoding/decoding in communication system
CN114915380A (en) * 2022-07-19 2022-08-16 中国科学院宁波材料技术与工程研究所 CAN bus-based low-cost high-real-time automatic error correction communication system and method
CN113098659B (en) * 2015-11-24 2024-04-26 三星电子株式会社 Method and apparatus for channel encoding/decoding in a communication or broadcasting system

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101159515B (en) * 2007-11-22 2010-08-25 普天信息技术研究院有限公司 Encoding method and system of variable length low-density parity code
WO2010001565A1 (en) * 2008-07-04 2010-01-07 三菱電機株式会社 Check matrix creation device, check matrix creation method, check matrix creation program, transmission device, reception device, and communication system
CN111669253B (en) * 2015-02-13 2023-11-03 三星电子株式会社 Transmitter and method for generating additional parity thereof
US10784901B2 (en) 2015-11-12 2020-09-22 Qualcomm Incorporated Puncturing for structured low density parity check (LDPC) codes
CN108370284B (en) * 2016-01-04 2021-05-14 苹果公司 Encoding and decoding using low density parity check matrix
US10469104B2 (en) 2016-06-14 2019-11-05 Qualcomm Incorporated Methods and apparatus for compactly describing lifted low-density parity-check (LDPC) codes
CN106788880B (en) * 2016-09-30 2019-08-09 北京展讯高科通信技术有限公司 The data transmission method and device encoded using LDPC
US10340949B2 (en) * 2017-02-06 2019-07-02 Qualcomm Incorporated Multiple low density parity check (LDPC) base graph design

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1407555A1 (en) * 2001-05-09 2004-04-14 Comtech Telecommunications Corp. Low density parity check codes and low density turbo product codes
US7178080B2 (en) * 2002-08-15 2007-02-13 Texas Instruments Incorporated Hardware-efficient low density parity check code for digital communications
KR20040036460A (en) * 2002-10-26 2004-04-30 삼성전자주식회사 LDPC decoding apparatus and method

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017084024A1 (en) * 2015-11-17 2017-05-26 华为技术有限公司 Decoding method and decoder for low-density parity check code
CN107534511A (en) * 2015-11-17 2018-01-02 华为技术有限公司 The interpretation method and decoder of low density parity check code
US10484009B2 (en) 2015-11-17 2019-11-19 Huawei Technologies Co., Ltd. Decoding method and decoder for low-density parity-check code
CN107534511B (en) * 2015-11-17 2020-04-28 华为技术有限公司 Decoding method and decoder for low density parity check code
CN113098659A (en) * 2015-11-24 2021-07-09 三星电子株式会社 Method and apparatus for channel encoding/decoding in a communication or broadcast system
US11799584B2 (en) 2015-11-24 2023-10-24 Samsung Electronics Co., Ltd. Method and apparatus for channel encoding/decoding in a communication or broadcasting system
CN113098659B (en) * 2015-11-24 2024-04-26 三星电子株式会社 Method and apparatus for channel encoding/decoding in a communication or broadcasting system
CN113472359A (en) * 2016-12-20 2021-10-01 三星电子株式会社 Apparatus and method for channel encoding/decoding in communication system
CN110352562A (en) * 2017-06-25 2019-10-18 Lg 电子株式会社 The parity matrix based on LDPC code executes the method for coding and the terminal using it in a wireless communication system
CN110352562B (en) * 2017-06-25 2023-04-25 Lg 电子株式会社 Method for performing encoding based on parity check matrix of LDPC code in wireless communication system and terminal using the same
CN114915380A (en) * 2022-07-19 2022-08-16 中国科学院宁波材料技术与工程研究所 CAN bus-based low-cost high-real-time automatic error correction communication system and method
CN114915380B (en) * 2022-07-19 2022-09-30 中国科学院宁波材料技术与工程研究所 CAN bus-based low-cost high-real-time automatic error correction communication system and method

Also Published As

Publication number Publication date
CN101076946B (en) 2012-05-30
CN101076946A (en) 2007-11-21
CN102638275B (en) 2015-01-28

Similar Documents

Publication Publication Date Title
CN101076946B (en) A method and apparatus for encoding and decoding data using low density parity check code in a wireless communication system
JP5179551B2 (en) Encoding / decoding method and apparatus using low density parity check code in wireless communication system
US8782499B2 (en) Apparatus and method for transmitting and receiving data in communication/broadcasting system
CN102714504B (en) Transmit and receive the method and apparatus of data in a communications system
CN109417392A (en) The decoding method and system of LDPC code
KR100520621B1 (en) Method and apparatus for weighted non-binary repeatative accumulating codes and space-time coding thereof
JPWO2009004773A1 (en) Parity check matrix generator, parity check matrix generation method, encoder, transmitter, decoder, and receiver
CN101997645A (en) Header encoding device and method for single carrier (SC) and/or orthogonal frequency division multiplexing (OFDM)
US20210091884A1 (en) Method and apparatus for channel encoding/decoding in a communication or broadcasting system
US20230421177A1 (en) Apparatus and method for channel encoding/decoding in communication or broadcasting system
US11502781B2 (en) Method and apparatus for channel encoding and decoding in communication or broadcasting system

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20150128

Termination date: 20180624