WO2008129195A1 - Codage et decodage de signaux de donnees de rendements variables - Google Patents

Codage et decodage de signaux de donnees de rendements variables Download PDF

Info

Publication number
WO2008129195A1
WO2008129195A1 PCT/FR2008/050410 FR2008050410W WO2008129195A1 WO 2008129195 A1 WO2008129195 A1 WO 2008129195A1 FR 2008050410 W FR2008050410 W FR 2008050410W WO 2008129195 A1 WO2008129195 A1 WO 2008129195A1
Authority
WO
WIPO (PCT)
Prior art keywords
matrix
decoding
parity
systematic
line
Prior art date
Application number
PCT/FR2008/050410
Other languages
English (en)
Inventor
Jean-Baptiste Dore
Marie-Hélène HAMON
Pierre Penard
Original Assignee
France Telecom
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 France Telecom filed Critical France Telecom
Publication of WO2008129195A1 publication Critical patent/WO2008129195A1/fr

Links

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, 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/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error 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/11Error 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

Definitions

  • the present invention relates to correcting codes for encoding and decoding data signals, particularly in the field of digital communication and in the field of data storage.
  • correction codes can notably be implemented by different communication protocols such as those intended for wireless local area networks.
  • Today's best-performing digital communication systems rely on systems where data is protected by high-performance channel coding and is iteratively decoded by a weighted output decoder.
  • the main function of error correcting codes is to allow the removal of ambiguities made by the channel on the transmitted message.
  • the gain in performance provided by these codes can be assigned to the reduction of terminal consumption, to the increase in the volume of information transmitted or to a greater flexibility in the management of the size of the transmission cells.
  • communication systems are required to have a high flexibility in data signal coding efficiency to optimize communication based on a multitude of factors such as ambient noise and the type of data to be transmitted.
  • a low complexity decoder capable of handling many efficiencies is difficult to implement.
  • One known embodiment of a flexible decoder in performance is to integrate as many processors as necessary yields to cover the entire range of required yields. This solution is simple to implement to treat one or two different yields. When the number of returns becomes large this solution becomes too expensive in terms of resources.
  • Another embodiment of a flexible decoder concerns the construction of a computing processor capable of processing a maximum number of input elements.
  • a neutral value is associated with processor inputs that are not used. This neutral value is processed in the decoding, but does not influence the result.
  • the processor processes all the neutral and non-neutral elements which introduces a surplus of processing of the neutral elements and therefore a processing latency when few data are needed.
  • Another embodiment of a decoder that is flexible in coding efficiencies consists in building processors operating in series. Initially In the meantime, the processors serially load a known number of data to be processed within the limit of a predetermined maximum number. In a second step, the result of the decoding associated with each data loaded is output in series. This solution has the advantage of being very flexible, but because of the calculations made in series, remains limited in flow.
  • a last known method consists of cascading np decoding processors each capable of processing k data input.
  • This cascading method has the advantage of processing J input data, with J> k.
  • J k rip
  • each processor processes the k data and thus operates optimally.
  • J ⁇ k np it is necessary to add a new processor in cascade.
  • the latter is either capable of processing a greater or lesser number of data, or comprises as input neutral values thus introducing a surplus of treatment.
  • the present invention overcomes the disadvantages mentioned above by a code determination method by means of a construction of a coding matrix and a decoding matrix depending on each other, the coding matrix being composed of a systematic coding matrix and a partially bi-diagonal parity coding matrix, and the decoding matrix being composed of a systematic decoding matrix and a bi-diagonal parity decoding matrix.
  • the method is characterized in that: at least one line of the encoding matrix is decomposed into a row number of the sub-multiple decoding matrix of the number of "1" elements included in the systematic encoding matrix and in said at least one line, and a line of the systematic decoding matrix resulting from the decomposition of said at least one line comprises elements a "1" having ranks identical to the ranks of the elements a "1" in said at least one line and in sub-multiple number of number of element a "1” in said at least one line, elements a "1” in lines of the systematic decoding matrix resulting from the decomposition of said at least one line having different ranks.
  • the lines of the encoding and decoding matrices correspond to parity equations.
  • the elements a "1" of each line of the systematic coding and decoding matrices correspond to the coefficients of the data variables in the corresponding parity equations.
  • a parity equation relating to the coding matrix is broken down according to the invention into several parity equations of the decoding matrix.
  • Each of the parity equations derived from the decomposition of said parity equation of the encoding matrix has the same number of data variables and has different data variables from those in the other or the other parity equations.
  • the data variables in the parity equation derived from the decomposition are thus positioned at different ranks of the data variables in the other or the other parity equations derived from the decomposition, i.e., belong to columns of systematic coding and decoding matrices different from those including the data variables in the other or the other parity equations derived from the decomposition.
  • the rank of a data variable in a row or column is the position of this variable in this row or column.
  • each coding matrix and the generic codewords by means of the coding matrix depends on the number of variables composing each parity equation of the matrix. Code words having different efficiencies are advantageously decoded according to the invention by means of decoding matrices having all their lines having at least the same number of elements a "1".
  • all the lines of the systematic decoding matrix have the same number of elements a
  • all the lines of the systematic decoding matrix advantageously have a number of elements a "1" equal has a common divisor with different element numbers a "1".
  • all the lines of the systematic decoding matrices respectively depending on said two different systematic coding matrices advantageously have a number of element a "1" equal to a divider common to the number of element a "1" different.
  • the decoder device of the invention then comprises only decoding means for solve parity equations whose number of data variable is equal to a common divisor.
  • the systematic decoding matrix comprises an additional column having elements a "1" in number equal to those in said at least one column and distributed according to the decomposition of the rows of the systematic coding matrix. This realization implies that the number of elements "a" in each line of the systematic decoding matrix including the additional column may be different from one line to the other.
  • the invention also relates to a coding method and a decoding method according to the determined code of a signal.
  • a decoding matrix the coding matrix being composed of a systematic coding matrix and a partially bi-diagonal parity coding matrix
  • the decoding matrix being composed of a systematic decoding matrix and a bi-diagonal parity decoding matrix
  • at least one line of the coding matrix is decomposed into a row number of the sub-multiple decoding matrix of the number of "1" element included in the systematic coding matrix and in said at least one line
  • line of the systematic decoding matrix resulting from the decomposition of the said at least one line comprises elements a "1" having ranks identical to the ranks of the elements a "1" in the said at least one line and in number of the number of element a "1” in said at least one line, elements a "1" in lines of the systematic decoding matrix resulting from the
  • the method of decoding a coded data signal including data variables and parity variables, based on a coding matrix dependent on a decoding matrix, the coding matrix being composed of a systematic coding matrix and of a partially bi-diagonal parity encoding matrix, and the decoding matrix being composed of a systematic decoding matrix and a bi-diagonal parity decoding matrix, is characterized in that: lines of the decoding matrix are derived from a decomposition of a line of the coding matrix and are in sub-multiple number of the number of element a "1" included in the systematic coding matrix and in said one line of the matrix of coding, a line of the systematic decoding matrix resulting from the decomposition of said one line comprises elements a "1" having ranks identical to the ranks of the elements at "1" in said a line and in sub-multiple number of the element number a "1” in said one line, the elements a "1” in lines of the systematic decoding matrix resulting from the decomposition of said one line having different ranks,
  • the invention also relates to an encoder device and a decoder device for respectively encoding a data signal and decoding a coded data signal.
  • the encoder device for encoding a signal including data variables into a signal including data variables and parity variables comprising means for solving parity equations whose coefficients respectively correspond to the lines of a code-dependent coding matrix.
  • a decoding matrix the coding matrix being composed of a systematic coding matrix and a partially bi-diagonal parity coding matrix, and the decoding matrix being composed of a systematic decoding matrix and a bi-diagonal parity decoding matrix, is characterized in that: at least one line of the coding matrix is decomposed into a row number of the sub-multiple decoding matrix of the number of "1" element included in the systematic coding matrix and in said at least one line, and line of the systematic decoding matrix resulting from the decomposition of the said at least one line comprises elements at "1" having ranks identical to the ranks of the elements at "1" in the said at least one line and in a number of sub-multiples of the number of element at "1” in said at least one line, the elements at "1" in lines of
  • the decoder device for decoding a coded data signal including data variables and parity variables comprising means for solving parity equations whose coefficients respectively correspond to the lines of a decoding matrix dependent on a coding matrix , the coding matrix being composed of a systematic coding matrix and a partially bi-diagonal parity coding matrix, and the decoding matrix being composed of a systematic decoding matrix and a decoding matrix of bi-diagonal parity, is characterized in that: lines of the decoding matrix are derived from a decomposition of a line of the coding matrix and are in sub-multiple number of the number of element to "1" included in the systematic coding matrix and in said one line of the coding matrix, a line of the systematic decoding matrix resulting from the decomposition of said one line has elements at "1" having ranks identical to the ranks of the elements at "1" in said one line and in submultiple number of the number of elements at "1” in said one line, the elements at "1” in lines of the systematic decoding matrix resulting from
  • the decoder device comprising decoding matrices according to the invention offers a unique architecture processing parity equations having a constant number of data variables.
  • the architecture of the decoder device according to the invention remains unchanged.
  • the invention relates to computer programs downloadable from a communication network and / or stored on a computer readable medium and / or executable by a processor.
  • the programs include instructions for respectively implementing the method of encoding a data signal and the method of decoding a coded data signal according to the invention.
  • FIG. 1 is a schematic block diagram of a communication system including an encoder device and a decoder device according to the invention
  • FIG. 2 is a schematic representation of a coding matrix according to the invention.
  • FIG. 3 is a schematic representation of a decoding matrix according to the invention
  • FIGS. 4 and 5 are diagrammatic representations of an example respectively of a coding matrix and of a decoding matrix depending on one another according to a first embodiment of the invention
  • FIG. 6 is a schematic representation of the decoding matrix divided into decoding windows
  • FIG. 7 is a representative block diagram of the architecture of the decoder device according to the first embodiment of the invention
  • FIG. 8 is a decoding algorithm according to the invention
  • FIGS. 9 and 10 are diagrammatic representations of an example respectively of a coding matrix and of a decoding matrix dependent on each other according to a second embodiment of the invention.
  • FIG. 11 is a block diagram representative of the architecture of the device decoder according to the second embodiment of the invention.
  • the method of the invention consists in determining a flexible error correction code for the yields by means of the construction of a coding matrix and a decoding matrix which are "equivalent", that is to say which depend on each other.
  • a communication system comprises one or more entities emett ⁇ ce s of which only one EM is shown in Figure 1, and a receiver entity ER.
  • Each transmitting entity transmits data via a CT transmission channel to the receiver entity ER.
  • An EM emitting entity comprises a source unit SC which generates data sequences each represented by a data vector C supplied to a CD encoder device.
  • the encoder device determines a parity vector P code according to a correction code generated from a parity check matrix, called encoding matrix HC, described in relation to FIG. 2.
  • the two vectors C and P relating to a sequence of data form a codeword X. Codewords from data sequences are successively generated by the encoder device to form a coded data signal.
  • the variables are bits "0" or "1".
  • RC coding efficiency may be different according to the encoding matrix HC implemented in the encoder device CD and from which is generated the correction code.
  • Each encoder device comprises an encoding matrix HC having its own RC coding efficiency.
  • an encoder device contains a plurality of different HC encoding matrices.
  • the coded data signal containing the code word X is transmitted by the transmitting entity EM via the transmission channel CT to the receiving entity ER.
  • the latter receives a reception code signal which is deformed with respect to the transmission code signal.
  • the transmission channel also known as the propagation channel, may be an overhead channel or any other type of channel such as a cable. Due to transmission channel disturbances, each code word X distorts and becomes a Y distorted word included in the data signal received at the input of the receiver entity ER.
  • the code word Y is composed of the vector C deforms having K variables of data co a ck- 1 deformed, and the parity vector P deforms having M parity variables po to PM-I deformed.
  • the transmission channel behaves as a non-deterministic distorting application between the channel input coded data signal and the channel output coded data signal.
  • the receiving entity ER has a DC decoder device which determines a best estimate of each received data vector to form a valued code signal including estimated data vectors.
  • the decoder device DC iteratively decodes each received word Y according to a decoding algorithm containing a correction code generated from an HD decoding matrix described in relation to FIG. 3 and depending on the coding matrix HC implemented in the device. encoder of the EM issue entity.
  • the HD decoding matrix has a decoding efficiency RD equal to or different from the coding efficiency RC of the coding matrix HC.
  • the decoder device estimates a substantially identical vector to the data vector C generated by the source SC of the EM emitting entity. Each code signal containing the estimated vector is supplied to an information receiver RI, for example a sound reproduction device with a loudspeaker.
  • the decoder device comprises several decoding matrices which are each equivalent to one or more different encoding matrices HC implemented in emitting entities.
  • each parity equation whose coefficients are the elements of a line of the matrix HC comprises variables corresponding to elements a "1" of said line, and each variable relative to a column of the matrix HC is involved in dv parity equations corresponding to dv elements a "1" of said column.
  • the coding matrix HC is composed of two matrices: a systematic coding matrix HC C also called non-bi-diagonal coding matrix, of size MxK, with K the number of data variables co a c ⁇ -1 of the data vector C , and a parity encoding matrix HCp, also called bi-diagonal coding matrix, of size MxM with M the number of parity variables po to PM-I of the parity vector P.
  • the parity coding matrix HCp is partially bi-diagonal. This second embodiment is described later with reference to FIG. 9.
  • equation (1) decomposing into M equations of equation eqo a eq M -l •
  • a protection vector V including protection variables vo a v ⁇ -i is defined by the following relation:
  • parity variables po to PM-I of the parity vector P are derived from the previous relationships (1) and (2) in the CD encoder device.
  • the systematic coding matrix HC C matches the data variables CJC-I of the data vector C to the projection variables vo a VM-I of the projection vector V, and comprises JC m element at the state "1". for each line m of the matrix.
  • the parity encoding matrix HCp which is constant, matches the projection variables vo avi-i of the projection vector V to the parity variables po to PM-I of the parity vector P.
  • the elements a "1" in the parity matrix HCp are bi-diagonally arranged, i.e., in the central diagonal and a subdiagonal adjacent and parallel to the central diagonal in the matrix HCp.
  • the form of the parity matrix HCp defines a code of the family of irregular accumulative codes IRA ("Irregular Repeat-Accumulate" in English). This code is a series accumulation of parity codes and a recursive convolutional code to a flip-flop. This bi-diagonal form allows for simple encoding of data variables.
  • the HD decoding matrix is of similar shape to the coding matrix HC on which it depends, and is of size MxNO, namely MO lines of ranks 1 to 0 and NO columns of ranks 1 to 12.
  • the HD decoding matrix is also composed of two matrices.
  • a first systematic decoding matrix HD C also called non-bi-diagonal decoding matrix, is of size MOxK, with K the number of data variables CQ a c ⁇ -i of data vector C of the code word Y, and MO the number of equations of parity Eqo a Eq M OI-
  • the systematic decoding matrix HD C matches the data variables co a c ⁇ -i deformed of the data vector C a projection variables vo av ⁇ -i of a projection vector V, as defined by the relation (2).
  • the systematic decoding matrix HD C comprises, according to a first embodiment of the invention, JD element a "1" for each row of the matrix.
  • JD is a constant and submultiple number of the elements JC 1 of element a "1" in the rows of the systematic coding matrix HC C.
  • JC m T m JD, with m corresponding to the line index of the matrix HC C.
  • Each line m of the systematic coding matrix HC C is decomposed into T m rows of the systematic decoding matrix HD C.
  • Each of the lines of the systematic decoding matrix resulting from the decomposition of a line of the coding matrix comprises JD elements a "1" positioned in columns having ranks that are identical to ranks of element a "1" in the line of the systematic coding matrix and which are different from the ranks of element a "1" of the other lines of the systematic decoding matrix resulting from the decomposition of the line of the coding matrix.
  • the number JD corresponds to a common divisor of the numbers JC m of element a "1" relating to the systematic coding matrix.
  • the second matrix is of size MOxMO, with MO the sum of the number M of parity variables po to PM-I of the parity vector P deforms the code word Y and numbers To-I, T m -1, TM-II of intermediate variables and m, ⁇ u say hidden parity variables, with 0 ⁇ t m ⁇ T m -1 and 0 ⁇ m ⁇ MI.
  • the parity decoding matrix HDp matches the vo to VM-I projection variables of the projection vector V to parity variables po to PM-I of the parity vector P and to the hidden parity variables and m, m introduced between each variable. parity p m .
  • T m -1 hidden parity variables and m , m corresponding to columns of the matrix precede the parity variable p m in the parity decoding matrix.
  • the parity variable p m is positioned at the same column rank in the parity coding matrix as that of the line decomposed in the coding matrix, and the additional number of columns is equal to T m -i ⁇ 1.
  • the sets of To ⁇ la TM-I ⁇ 1 hidden parity variables are associated with the parity variables po a PM-I according to an accumulation relation relative to the bi-diagonal form of the parity decoding matrix.
  • ⁇ U ⁇ or s (i, m) is the position of the nonzero element "1" of the line m in the systematic coding matrix HC C.
  • P2 Pl + co + C2 + C3 + C4 + C6 + C7.
  • Each line m of the coding matrix HC corresponds to T m lines in the systematic decoding matrix HD C and T m -1 hidden parity variables and t m, m in the parity decoding matrix HD p .
  • the introduction of the hidden parity variables into the HD decoding matrix increases the size of the codeword to be decoded which includes the data variables c1, parity variables p m and hidden parity variables and m , n
  • the decoding efficiency RD associated with the decoding matrix is smaller than the coding efficiency RC associated with the coding matrix HC.
  • the decoding process according to the invention is based on a turbo serial decoding algorithm per window, in order to optimize the decoding of a coded data signal received at the input of the decoder device DC.
  • Another representation of the decoding matrix is illustrated in FIG. 6 to introduce the windowing of the parity equations composing the decoding matrix.
  • the systematic decoding matrix HD C consists of submajector AxK ⁇ O a IA-I each having z lines with 0 ⁇ a ⁇ A-1.
  • the parity decoding matrix HDp is composed of A sub-matrices of size z ⁇ M0.
  • the HD decoding matrix is divided into z decoding windows each having a number A of parity equations.
  • Each decoding window F f of index f, with 0 ⁇ f ⁇ z-1, comprises the following equations: Eqf, Eq ( z + f ),, Eq ( az + f ) / ,
  • a decoding window F f comprises a parity equation per row of sub-matrices of size z xNO.
  • the decoding of a coded data signal divided into decoding windows F f has the advantage of improving the convergence of the decoding algorithm. Variables determined during the decoding of a window F f a A parity equations are used for the decoding of the A equations of parity of the following decoding window F (f + i ) .
  • the CD encoder device of the EM emitting entity comprises two CD1 and CD2 encoders each corresponding to a processor having generated a code for encoding from an HC encoding matrix.
  • the code of the coder CD1 determines the variables vo av ii of the projection vector V according to the relation (2) as a function of the systematic coding matrix HC C and the variables co a c k-1 of the vector of data C generated by the source. SC.
  • the code of the coder CD2 determines the variables po to PM-I of the parity vector P according to the Relation (3) as a function of the parity encoding matrix HCp and the variables vo to v ⁇ -i of the projection vector V previously determined by the coder CD1.
  • the code word X at the output of the encoder device CD is formed from the variables co to CR-I of the data vector C and the variables po to PM-I of the parity vector P.
  • the variables involved in the coding of the data sequence are binary values "0" or "1".
  • the binary variables of the vectors C and P are for some also distorted and erroneous.
  • the latter estimates at each iteration i of the data variables, hereinafter referred to as "variables". likelihood ", which will form the estimated code signal. After a predefined number of iterations, the likelihood variables are used to determine the estimated vector C closest to the generated vector C.
  • the decoding algorithm implemented in the DC decoder device is based on the belief propagation algorithm BP ("Belief Propagation" in English) which is an iterative algorithm with flexible inputs.
  • the decoder device DC implementing the decoding algorithm relating to the first embodiment of the invention comprises three decoders DC1, DC2 and DC3, memories MR1, MR2 and MP and a control unit UC. which controls all the elements of the DC decoder device. All these elements are represented in the form of functional blocks, most of which provide functions relating to the invention and can correspond to software and / or hardware modules.
  • LLR Log Likehood Ratio
  • the decoders DC1, DC2, DC3 and the memories of the decoder device DC are controlled by the control unit UC which manages the access to the memories and the scheduling of the operation of the decoders according to the content of the HD decoding matrix and the decoders. decode windows Fo to F z -] _.
  • the unit UC comprises or is connected to an MRC control memory containing several HDh decoding matrices and their hidden parity variables, with the index h such that 1 ⁇ h ⁇ H, associated with an identifier such as the coding efficiency RC of the coding matrix HC.
  • the decoding matrices HD1 to HDH are each dependent on a coding matrix and have for each parity equation an identical number JD of data variables C ⁇ , JD being equal to a common divisor of the element numbers at "1" lines of coding matrices.
  • the memory MRC comprises a single HD decoding matrix and the concealed parity variables etm, m associated therewith.
  • the operation of the three decoders of the invention is substantially similar to the operation of the decoders described in the French patent application 0654864 filed November 13 2006 by the applicant.
  • the three decoders DC1, DC2 and DC3 are processors each comprising part of the decoding instructions according to the decoding algorithm, established in dependence on the HD decoding matrix.
  • the DCl decoders and DC3 have the particularity of treating parity equations JD intrinsic data variables m c c ⁇ - the oam obtained from observation of the transmission channel CT, by applying a systematic decoding matrix HDH c .
  • the decoder DC2 is a Forward Backward Algorithm (FBA) decoder and processes the parity equations of the HDhp parity decoding matrix according to the intrinsic parity variables m p oamp ( M - 1). ) obtained from observation of the CT transmission channel and intrinsic hidden parity variables m e 0.0 a
  • FBA Forward Backward Algorithm
  • the memory MR1 comprises at least one memory space Mcv containing, for each processing of a decoding window F f , first extrinsic variables ml ck , vm determined by the decoder DCl and exchanged between the decoder DC1 and the decoder DC3, with the index ck such that cO ⁇ ck ⁇ c (KI) and the index vm such that vO ⁇ vm ⁇ v (MO-I).
  • the memory MR2 comprises a memory space Mvc containing for each iteration i second extrinsic variables m2 vm, c k determined by the decoder DC3 and exchanged between the decoder DC3 and the decoder DCl, with the indices vm and ck such that vO ⁇ vm ⁇ v (MO-1) and c0 ⁇ ck ⁇ c (KI).
  • the memory MR2 also includes a data memory space MC containing the intrinsic data variables m c oam c ( K- I) and likelihood variables m C Q a m c ( K -I) estimated by the decoder DC3 at each iteration 1 and to correspond to the data variables transmitted co a ck-i-
  • the parity memory MP accessible by the decoder DC2, comprises the intrinsic parity variables m p o and m P M-1 and the hidden parity variables m e 0.0 am e (T (MI) -2), MI corresponding to the HD decoding matrix from which the correction code is generated.
  • M -I are weighted variables of the LLR (Log Likehood Ratio) type.
  • the decoding algorithm shown in FIG. 8 and relating to the first embodiment of the invention comprises steps E1 to E13.
  • step E1 during the preparation of the data communication between the emitting entity EM and the receiving entity ER, the sending entity EM transmits to the receiver entity ER a signal S1 containing communication parameters whose performance coding method RC relative to the encoding matrix HC of the encoding device CD of the transmitting entity EM.
  • control unit UC of the decoder DC searches in the memory MRC the decoding matrix HDh depending on the coding matrix of the emitting entity whose coding efficiency is RC.
  • the unit UC generates a correction code from the decoding matrix HDh and implements this code in the decoders DC1, DC2 and
  • the unit UC also stores the intrinsic hidden parity variables m e 0.0 (T ( M -I) -2), M -I relating to the hidden parity variables ⁇ Q, O a e ( T ( M -I) -2), M -I associated with the decoding matrix HDh, in the memory MP has a neutral value which in the case of the weighted variables of the LLR type is zero.
  • the EM initiating entity starts transmitting signals containing X code words to the receiving entity ER.
  • the control unit UC of the decoder device DC determines in step E4 intrinsic data variables m c oam c ( K -I) from the transmitted variables of the data vector C deforms, and the intrinsic parity variables m po amp (m - l) from the transmitted variables of the P parity vector deformed.
  • the intrinsic variables of data and parity are respectively stored in the memory space MC of the memory MR2 and in the memory MP.
  • the decoder device DC processes the z decoding windows.
  • the decoding algorithm comprises three distinct decoding steps E6, E7 and E8 respectively processed in decoders DC1, DC2 and DC3 of the decoder device DC.
  • the unit UC authorizes the decoders to access write and read in the memories MR1, MR2 and MP to read and write variables involved respectively in the equations of the window F f depending on the elements of the HD decoding matrix read in the memory MRC during decoding.
  • the first decoding step E6 implemented in the decoder DCl, activated by the control unit UC, consists of solving the A equations of the window parity F f defined by the systematic decoding matrix HD C and each containing variable DDs. C k .
  • the decoder DCl determines first extrinsic variables m lc k , vf associated respectively with the parity variables C i involved in the parity equation, and necessary for the determination of a first weighted projection variable. Vl vf relative to the equation of parity Eq f .
  • Each first extrinsic variable ml ck , v f is determined by applying a function ga to the intrinsic data variable m ck stored in the memory space MC and to second extrinsic variables m2 v j , c k associated with the projection variables vj , with the index j different from the index f, relating to the parity equations Eq ⁇ of the systematic coding matrix which contain the data variable c ⁇ .
  • These second extrinsic variables m2 v j , c k are determined by the decoder DC3 during the previous iteration I-1 and are stored in the memory space Mvc of the memory MR2.
  • the first extrinsic variables ml c k, v f resulting from the resolution of the equations of the window F f for iteration from the systematic matrix HD C are determined simultaneously and are stored in the memory M cv .
  • the decoder DC1 determines the first weighted projection variables Vl v f relating to the parity equations of the window F f .
  • the first associated weighted projection variable Vl vf is determined by applying the function g to all the first extrinsic variables ml ck , v f associated respectively with the parity variables C k contained in the equation of parity Eq f .
  • the decoder DC1 supplies the decoder DC2 with the first weighted projection variables Vlvf determined during the resolution of the equations of the window F f . Then the control unit UC deactivates the decoder DCl.
  • the second decoding step E7 implemented in the decoder DC2 activated by the control unit UC consists in determining the internal code, that is to say solving the A equations of parity of the window F f defined by the parity decoding matrix HDp from the a first weighted projection variables Vl vf generated by the DCl decoder and a intrinsic parity variables m pf and intrinsic hidden parity me t m, f to obtain a second intermediate variables, said second weighted projection variables V2 vf provide a third decoder DC3.
  • the decoder DC2 is a differential decoder and uses a known decoding technique of convolutional code with an output weighted according to the content of the parity matrix HDp, such as FBA (Forward Backward Algorithm) "round trip" algorithms such as algontnme. BCJR (Bahl-Cocke-Jelinek-Raviv).
  • FBA Forward Backward Algorithm
  • BCJR Bahl-Cocke-Jelinek-Raviv
  • the third decoding step E8 implemented in the decoder DC3 activated by the control unit UC consists in checking the A equations of window parity F f defined by the systematic matrix HD C by determining second intrinsic variables m2 v f , c k - Each second extrinsic variable m2 vf , c k is determined by applying the function g to the second weighted projection variable V2 vf relative to I 1 equation of parity Eq f and provided by the decoder DC2, and on the first extrinsic variables ml Cj , v f associated with data variables cj, with j different from k, contained in the parity equation Eqf and determined by the decoder DC1 during the first decoding step E6.
  • the second extrinsic variables m2 vf , c k resulting from the resolution of the equations of the window F f for iteration ia from the systematic matrix HD C are determined simultaneously and are stored in the memory M vc .
  • step E9 the control unit UC checks whether all z decoding windows are processed. In the opposite case, another decoding window is implemented at step E10 and is processed in steps E6 to E8.
  • the control unit UC activates the decoder DC3 at step EI1 to estimate the likelihood variables m c oam c ( K -I) -
  • Each likelihood variable m ck is estimated per application of the function g on the associated intrinsic variable m c k and stored in the memory space MC and on the second extrinsic variables m2 vf , c k associated with the data variable CK and stored in the memory space Mcv of the memory MR2.
  • step E12 the control unit UC checks whether all I iterations are executed. In the opposite case, another iteration i is implemented in step E5 and the z decoding windows are processed again in steps E6 to E9.
  • control unit UC establishes an estimated data signal containing the likelihood variables m c oamc ( K - i) substantially corresponding to the data variables generated by the source source SC of the emitting entity EM, and provides the estimated data signal to the information receiver RI of the receiving entity ER, at step E13.
  • the numbers of elements a "1" are different in the lines of the systematic decoding matrix HD C. At least the numbers of elements JD j is "1" in two separate lines of the HD matrix C are different. More generally, J numbers JDi to JDj of elements a "1" can be different in distinct lines of the matrix HD C , with the integer j such that 0 ⁇ j ⁇ JI.
  • the irregularity profile relating to the variation of the number of element a "1" for certain lines of the systematic decoding matrix HD C corresponds to the irregularity profile of the coding matrix HC. This irregularity is more particularly due to the parity coding matrix which is partially bi- diagonal.
  • the systematic HD C decoding matrix thus enlarged comprises an initial part relating to the decomposition of the lines of the systematic coding matrix whose JD number of element a "1" in this line is a sub-multiple of the number of JC elements. m relative to the systematic coding matrix, and an additional part comprising the additional column or columns corresponding to the irregular column (s) of the parity coding matrix.
  • the additional columns of the systematic decoding matrix have the same number of elements a "1" as the irregular columns of the parity coding matrix, these elements being distributed according to the decomposition of each line of the systematic coding matrix into the number of lines of the systematic decoding matrix.
  • the number JO j of element a "1" in one of the lines of the enlarged systematic decoding matrix HD C resulting from the decomposition of a line of the coding matrix is equal to the sum of the element number JD a "1" of the line belonging to the initial part of the matrix HD C and the number of element a "1" on the same line and in the additional columns of the matrix HD C.
  • the irregular columns of the parity matrix are considered as additional columns of the enlarged systematic decoding matrix HD c , where po is then considered as a data variable.
  • the decoder device of the second embodiment is analogous to the decoder device of the first embodiment, except for the decoders DC1 and DC3, each divided into as many sub-decoders as there are numbers JD j of element a "1" different in the lines of the HD decoding matrix.
  • the decoders DC1 and DC3 are divided into two sub-decoders.
  • a first sub-decoder processes the parity equations at JOD data variables.
  • the second sub-decoder processes the parity equations at JDi data variables.
  • the decoding algorithm is analogous to the decoding algorithm relating to the first embodiment, the J-I sub-decoders of the decoders DC1 and DC3 operating simultaneously.
  • each parity equation m comprises a number JC m of data variables multiple of the number JD of data variables contained in the parity equations of the systematic decoding matrix processed by decoders DC1 and DC3.
  • an encoding matrix HC is dependent on several HD decoding matrices each associated with different coding efficiencies, and corresponds to the decoding matrix having the lowest coding efficiency.
  • the transmitting entity punctures parity variables in the code word to transmit the code word in a first coding performance.
  • the decoder On receiving the deformed code word Y, the decoder selects the decoding matrix associated with the first coding efficiency and estimates the transmitted data variables as a function of the transmitted parity variables and the hidden parity variables corresponding to the decoding matrix. If the decoder can not decode the data variables based on the only parity variables sent, it requests the sending entity to transmit one or more parity variables among the punched parity variables. Providing at least one additional parity variable to the previously transmitted codeword changes the code performance. The decoder thus selects another decoding matrix associated with the modified code output and performs another estimate of the data variables based on the previously transmitted parity variables, said at least one additional parity variable, and hidden parity variables corresponding to the other decoding matrix.
  • the invention described here relates to a determination of a code by means of a construction of dependent coding and decoding matrices, encoding and encoder apparatus for encoding a data signal, a decoding and a decoder device for decoding an encoded data signal.
  • the steps of the method of the invention are determined by the computer program instructions incorporated in the encoder and decoder devices.
  • the programs include program instructions which, when said programs are executed respectively in the encoder device and the decoder device whose operation is then controlled by the execution of the programs, carry out the coding and decoding steps according to the invention.
  • the invention also applies to computer programs, in particular computer programs recorded on or in a computer-readable information carrier and any data encoding and decoding device, adapted to implement the invention.
  • These programs may use any programming language, and be in the form of source code, object code, or intermediate code between source code and object code such as in a partially compiled form, or in any other form desirable to implement the method according to the invention.
  • the information carrier may be any entity or device capable of storing programs.
  • the medium may comprise storage means or recording medium on which are recorded the computer programs according to the invention, such as a ROM, for example a CD ROM or a microelectronic circuit ROM, or a USB key, or a means of recording magnetic, for example a floppy disk or a hard disk.
  • the information medium may be a transmissible medium such as an electrical or optical signal, which may be conveyed via an electrical or optical cable, by radio or by other means.
  • the programs according to the invention may in particular be downloaded on an Internet-type network.
  • the information carrier may be an integrated circuit in which the programs are incorporated, the circuit being adapted to execute or to be used in the execution of the method according to the invention.

Landscapes

  • Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Error Detection And Correction (AREA)

Abstract

Les codage et décodage d'un signal (X) incluant des variables de données et de parité sont basés sur des matrices de codage (HC) et décodage (HD) dépendantes. La matrice de codage comprend une matrice de codage systématique et une matrice de codage de parité partiellement bi-diagonale (HCC, HCp). La matrice de décodage comprend une matrice de décodage systématique et une matrice de décodage de parité bi-diagonale (HDC, HDp). Pour traiter des matrices de rendements différents, une ligne de codage est décomposée en un nombre de ligne de décodage sous-multiple du nombre d'élément à "1" de la ligne de codage systématique, et une ligne de décodage systématique issue de la décomposition comporte des éléments à "1" ayant des rangs identiques à ceux dans la ligne de codage et en nombre sous-multiple du nombre d'élément à "1" dans la ligne de codage.

Description

Codage et décodage de signaux de données de rendements variables
La présente invention concerne des codes correcteurs pour coder et décoder des signaux de données notamment dans le domaine de la communication numérique et dans le domaine du stockage de données.
Plus particulièrement, elle a trait à des codes correcteurs flexibles au traitement de signaux de données ayant des rendements de codage variables sans complexifier les systèmes de codage et décodage.
Ces codes correcteurs peuvent notamment être mis en œuvre par différents protocole s de communication tel que ceux destinés aux réseaux locaux sans fil
(WLAN ("Wireless Local Area Network" en anglais)) à très haut débit ou encore tel que le protocole WIMAX
Mobile ("World wide Interoperability Microwave
Access" en anglais) ) .
Les systèmes de communication numérique les plus performants à l'heure actuelle s'appuient sur des systèmes où les données sont protégées par un codage de canal très performant et décodées itérativement par un décodeur à sortie pondérée.
Dans le domaine des transmissions numériques
(radioélectrique, filaire ou autre...) , la fonction principale des codes correcteurs d'erreurs est de permettre la levée des ambiguïtés apportées par le canal sur le message transmis. Le gain en performance apporté par ces codes peut être affecté à la réduction de consommation des terminaux, à l'augmentation du volume d'informations transmis ou encore à une plus grande flexibilité dans la gestion de la taille des cellules de transmission. II est de plus en plus souvent demande aux systèmes de communications une grande flexibilité de rendement de codage de signaux de données pour optimiser la communication en fonction d'une multitude de facteurs tels que le bruit ambiant et le type de données a transmettre. Cependant, dans le cas gênerai des codes correcteurs d'erreur de type LDPC, un décodeur de faible complexité capable de traiter de nombreux rendements est difficile a implementer.
Une réalisation connue de décodeur flexible en rendement est d'intégrer autant de processeurs que de rendements nécessaires pour couvrir toute la gamme des rendements requis. Cette solution est simple a mettre en œuvre pour traiter un ou deux rendements différents. Lorsque le nombre de rendements devient important cette solution devient trop coûteuse en termes de ressources.
Une autre réalisation de décodeur flexible concerne la construction d'un processeur de calcul capable de traiter un nombre maximal d'éléments en entrée. Lors de la resolution d'un nombre d'élément inférieur au nombre maximal, une valeur neutre est associée aux entrées du processeur qui ne sont pas utilisées. Cette valeur neutre est traitée dans le décodage, mais n'influence pas le résultat. Cependant, a chaque décodage de données en entrée, le processeur traite tous les éléments neutres et non neutres ce qui introduit un surplus de traitement des éléments neutres et par conséquent une latence de traitement lorsque peu de données sont nécessaires.
Une autre réalisation de décodeur flexible aux rendements de codage consiste a construire des processeurs fonctionnant en série. Dans un premier temps, les processeurs chargent en série un nombre connus de données à traiter dans la limite d'un nombre maximum prédéterminé. Dans un deuxième temps, le résultat du décodage associé à chaque donnée chargée est sorti en série. Cette solution a l'avantage d'être très flexible, mais du fait des calculs réalisés en série, reste limitée en débit.
Un dernier procédé connu consiste à cascader np processeurs de décodage chacun capable de traiter k données en entrée. Ce procédé en cascade a pour avantage de traiter J données en entrée, avec J > k. Dans le cas où J = krip, chaque processeur traite les k données et fonctionne ainsi de manière optimale. Dans le cas où J Φ knp, il faut rajouter un nouveau processeur en cascade. Celui-ci est, soit capable de traiter un nombre supérieur ou inférieur de données, soit comprend en entrée des valeurs neutres introduisant de ce fait un surplus de traitement.
La présente invention remédie aux inconvénients évoqués ci-dessus par un procédé de détermination de code au moyen d'une construction d'une matrice de codage et d'une matrice de décodage dépendant l'une de l'autre, la matrice de codage étant composée d'une matrice de codage systématique et d'une matrice de codage de parité partiellement bi-diagonale, et la matrice de décodage étant composée d'une matrice de décodage systématique et d'une matrice de décodage de parité bi-diagonale. Le procédé est caractérisé en ce que : au moins une ligne de la matrice de codage est décomposée en un nombre de ligne de la matrice de décodage sous-multiple du nombre d'élément à "1" inclus dans la matrice de codage systématique et dans ladite au moins une ligne, et une ligne de la matrice de décodage systématique issue de la décomposition de ladite au moins une ligne comporte des éléments a "1" ayant des rangs identiques aux rangs des éléments a "1" dans ladite au moins une ligne et en nombre sous-multiple du nombre d'élément a "1" dans ladite au moins une ligne, les éléments a "1" dans des lignes de la matrice de décodage systématique issues de la décomposition de ladite au moins une ligne ayant des rangs différents.
Les lignes des matrices de codage et de décodage correspondent a des équations de parité. Les éléments a "1" de chaque ligne des matrices de codage et de décodage systématiques correspondent aux coefficients des variables de données dans les équations de parité correspondantes. Ainsi une équation de parité relative a la matrice de codage se décompose selon l'invention en plusieurs équations de parité de la matrice de décodage. Chacune des équations de parité issues de la décomposition de ladite équation de parité de la matrice de codage a le même nombre de variables de données et présente des variables de données différentes de celles dans l'autre ou les autres équations de parité. Les variables de données dans l' équation de parité issues de la décomposition sont ainsi positionnées a des rangs différents des variables de données dans l'autre ou les autres équations de parité issues de la décomposition, c'est-a-dire appartiennent a des colonnes des matrices de codage et décodage systématiques différentes de celles incluant les variables de données dans l'autre ou les autres équations de parité issues de la décomposition. Le rang d'une variable de donnée dans une ligne ou colonne est la position de cette variable dans cette ligne ou colonne .
Le rendement relatif a chaque matrice de codage et aux mots de code génères au moyen de la matrice de codage dépend du nombre de variables composant chaque équation de parité de la matrice. Des mots de code ayant des rendements différents sont avantageusement décodes selon l'invention au moyen de matrices de décodage ayant toutes leurs lignes présentant au moins le même nombre d'élément a "1".
Selon une première réalisation et afin de simplifier l'architecture d'un dispositif décodeur selon l'invention, toutes les lignes de la matrice de décodage systématique ont le même nombre d'élément a
Dans le même but, lorsqu'au moins deux lignes de la matrice de codage systématique ont des nombres d'élément a "1" différents, toutes les lignes de la matrice de décodage systématique ont avantageusement un nombre d'élément a "1" égal a un diviseur commun aux nombres d'élément a "1" différents.
Lorsque notamment deux matrices de codage avec des rendements différents sont utilisées pour générer des mots de code, c'est-a-dire lorsqu'au moins deux lignes dans deux matrices de codage systématiques différentes ont des nombres d'élément a "1" différents, toutes les lignes des matrices de décodage systématiques dépendant respectivement des dites deux matrices de codage systématiques différentes ont avantageusement un nombre d'élément a "1" égal a un diviseur commun aux nombres d'élément a "1" différents. Le dispositif décodeur de l'invention ne comprend alors qu'un moyen de décodage pour résoudre des équations de parité dont le nombre de variable de données est égal a un diviseur commun.
Selon une deuxième réalisation, au moins une colonne de la matrice de codage de parité n'appartient pas a une partie bi-diagonale de celle- ci et est transférée en tant que colonne dans la matrice de décodage systématique. Dans cette réalisation, la matrice de décodage systématique comporte une colonne supplémentaire ayant des éléments a "1" en nombre égal a ceux dans ladite au moins une colonne et repartis selon la décomposition des lignes de la matrice de codage systématique. Cette réalisation implique que le nombre d'éléments a "1" dans chaque ligne de la matrice systématique de décodage comportant la colonne supplémentaire peut être différent d'une ligne a l'autre.
L'invention concerne également un procède de codage et un procède de décodage selon le code détermine d'un signal.
Le procède de codage d'un signal incluant des variables de données en un signal incluant les variables de données et des variables de parité, comprenant une resolution d'équations de parité dont les coefficients correspondent respectivement aux lignes d'une matrice de codage dépendant d'une matrice de décodage, la matrice de codage étant composée d'une matrice de codage systématique et d'une matrice de codage de parité partiellement bi- diagonale, et la matrice de décodage étant composée d'une matrice de décodage systématique et d'une matrice de décodage de parité bi-diagonale, est caractérise en ce que : au moins une ligne de la matrice de codage est décomposée en un nombre de ligne de la matrice de décodage sous-multiple du nombre d'élément à "1" inclus dans la matrice de codage systématique et dans ladite au moins une ligne, et une ligne de la matrice de décodage systématique issue de la décomposition de ladite au moins une ligne comporte des éléments a "1" ayant des rangs identiques aux rangs des éléments a "1" dans ladite au moins une ligne et en nombre sous-multiple du nombre d'élément a "1" dans ladite au moins une ligne, les éléments a "1" dans des lignes de la matrice de décodage systématique issues de la décomposition de ladite au moins une ligne ayant des rangs différents.
Le procède de décodage d'un signal de données codées incluant des variables de données et des variables de parité, fonde sur une matrice de codage dépendant d'une matrice de décodage, la matrice de codage étant composée d'une matrice de codage systématique et d'une matrice de codage de parité partiellement bi-diagonale, et la matrice de décodage étant composée d'une matrice de décodage systématique et d'une matrice de décodage de parité bi-diagonale, est caractérise en ce que : des lignes de la matrice de décodage sont issues d'une décomposition d'une ligne de la matrice de codage et sont en nombre sous-multiple du nombre d'élément a "1" inclus dans la matrice de codage systématique et dans ladite une ligne de la matrice de codage, une ligne de la matrice de décodage systématique issue de la décomposition de ladite une ligne comporte des éléments a "1" ayant des rangs identiques aux rangs des éléments à "1" dans ladite une ligne et en nombre sous-multiple du nombre d'élément a "1" dans ladite une ligne, les éléments a "1" dans des lignes de la matrice de décodage systématique issues de la décomposition de ladite une ligne ayant des rangs différents, et un nombre de colonne supplémentaire correspondant a une variable de parité cachée de valeur neutre pour le décodage du signal précède une colonne de la matrice de décodage de parité correspondant a une variable de parité ayant le même rang dans la matrice de codage de parité que celui de la ligne décomposée de la matrice de codage, le nombre de colonne supplémentaire augmente de un étant égal audit nombre sous-multiple . Le nombre de colonne supplémentaire peut être strictement égal ou supérieur a 1.
L'invention a aussi pour objet un dispositif encodeur et un dispositif décodeur pour respectivement coder un signal de données et décoder un signal de données codées.
Le dispositif encodeur pour coder un signal incluant des variables de données en un signal incluant les variables de données et des variables de parité, comprenant des moyens pour résoudre des équations de parité dont les coefficients correspondent respectivement aux lignes d'une matrice de codage dépendant d'une matrice de décodage, la matrice de codage étant composée d'une matrice de codage systématique et d'une matrice de codage de parité partiellement bi-diagonale, et la matrice de décodage étant composée d'une matrice de décodage systématique et d'une matrice de décodage de parité bi-diagonale, est caractérise en ce que : au moins une ligne de la matrice de codage est décomposée en un nombre de ligne de la matrice de décodage sous-multiple du nombre d'élément à "1" inclus dans la matrice de codage systématique et dans ladite au moins une ligne, et une ligne de la matrice de décodage systématique issue de la décomposition de ladite au moins une ligne comporte des éléments à "1" ayant des rangs identiques aux rangs des éléments à "1" dans ladite au moins une ligne et en nombre sous-multiple du nombre d'élément à "1" dans ladite au moins une ligne, les éléments à "1" dans des lignes de la matrice de décodage systématique issues de la décomposition de ladite au moins une ligne ayant des rangs différents.
Le dispositif décodeur pour décoder un signal de données codées incluant des variables de données et des variables de parité, comprenant des moyens pour résoudre des équations de parité dont les coefficients correspondent respectivement aux lignes d'une matrice de décodage dépendant d'une matrice de codage, la matrice de codage étant composée d'une matrice de codage systématique et d'une matrice de codage de parité partiellement bi-diagonale, et la matrice de décodage étant composée d'une matrice de décodage systématique et d'une matrice de décodage de parité bi-diagonale, est caractérisé en ce que : des lignes de la matrice de décodage sont issues d'une décomposition d'une ligne de la matrice de codage et sont en nombre sous-multiple du nombre d'élément à "1" inclus dans la matrice de codage systématique et dans ladite une ligne de la matrice de codage, une ligne de la matrice de décodage systématique issue de la décomposition de ladite une ligne comporte des éléments à "1" ayant des rangs identiques aux rangs des éléments à "1" dans ladite une ligne et en nombre sous-multiple du nombre d'élément à "1" dans ladite une ligne, les éléments à "1" dans des lignes de la matrice de décodage systématique issues de la décomposition de ladite une ligne ayant des rangs différents, et un nombre de colonne supplémentaire correspondant à une variable de parité cachée de valeur neutre pour le décodage du signal précède une colonne de la matrice de décodage de parité correspondant à une variable de parité ayant le même rang dans la matrice de codage de parité que celui de la ligne décomposée de la matrice de codage, le nombre de colonne supplémentaire augmenté de un étant égal audit nombre sous-multiple.
Le dispositif décodeur comportant des matrices de décodage selon l'invention offre une architecture unique traitant des équations de parité ayant un nombre de variables de données constant. Ainsi à chaque changement de rendement de codage et par conséquent à chaque utilisation d'une autre matrice de codage avec un rendement de codage différent, l'architecture du dispositif décodeur selon l'invention demeure inchangée.
Enfin l'invention se rapporte à des programmes d'ordinateur téléchargeables depuis un réseau de communication et/ou stockés sur un support lisible par ordinateur et/ou exécutables par un processeur. Les programmes comprennent des instructions pour la mise en œuvre respectivement du procédé de codage d'un signal de données et du procédé de décodage d'un signal de données codées selon l'invention. D'autres caractéristiques et avantages de la présente invention apparaîtront plus clairement a la lecture de la description suivante de plusieurs réalisations de l'invention données a titre d'exemples non limitatifs, en référence aux dessins annexes correspondants dans lesquels :
- la figure 1 est un bloc-diagramme schématique d'un système de communication incluant un dispositif encodeur et un dispositif décodeur selon l'invention ;
- la figure 2 est une représentation schématique d'une matrice de codage selon l'invention;
- la figure 3 est une représentation schématique d'une matrice de décodage selon l'invention; - les figures 4 et 5 sont des représentations schématiques d'un exemple respectivement d'une matrice de codage et d'une matrice de décodage dépendant l'une de l'autre selon une première réalisation de l'invention; - la figure 6 est une représentation schématique de la matrice de décodage découpée en fenêtres de décodage; la figure 7 est un bloc-diagramme représentatif de l'architecture du dispositif décodeur selon la première réalisation de 1 ' invention; la figure 8 est un algorithme de décodage selon l'invention;
- les figures 9 et 10 sont des représentations schématiques d'un exemple respectivement d'une matrice de codage et d'une matrice de décodage dépendant l'une de l'autre selon une deuxième réalisation de l'invention; et la figure 11 est un bloc-diagramme représentatif de l'architecture du dispositif décodeur selon la deuxième réalisation de 1 ' invention .
Le procède de l'invention consiste a déterminer un code correcteur d'erreur flexible aux rendements au moyen de la construction d'une matrice de codage et d'une matrice de décodage qui sont "équivalentes", c ' est-a-dire qui dépendent l'une de l'autre.
En référence a la figure 1, un système de communication selon l'invention comprend une ou plusieurs entités emettπce s dont une seule EM est représentée a la figure 1, et une entité réceptrice ER. Chaque entité emettrice émet des données via un canal de transmission CT vers l' entité réceptrice ER.
Une entité emettrice EM comprend une unité source SC qui génère des séquences de données chacune représentée par un vecteur de données C fourni a un dispositif encodeur CD. Le dispositif encodeur détermine un vecteur de parité P code suivant un code correcteur génère a partir d'une matrice de contrôle de parité, dite matrice de codage HC, décrite en relation avec la figure 2. Les deux vecteurs C et P relatifs a une séquence de données forment un mot de code X. Des mots de code issus de séquences de données sont produits successivement par le dispositif encodeur pour constituer un signal de données codées.
Le mot de code X en sortie de l' entité emettrice EM comprend N = K + M variables dont K variables d'information ou de données CQ a cκ-l formant un vecteur de données C, et M variables de parité po a PM-I formant un vecteur de parité P. Les variables sont des bits "0" ou "1". Le rendement de codage RC est le rapport RC = K/N. Le rendement de codage RC peut être différent selon la matrice de codage HC implementee dans le dispositif encodeur CD et a partir de laquelle est génère le code correcteur. Chaque dispositif encodeur comporte une matrice de codage HC ayant son propre rendement de codage RC.
En variante, un dispositif encodeur contient plusieurs matrices de codage HC différentes.
Le signal de données codées contenant le mot de code X est transmis par l' entité emettrice EM via le canal de transmission CT a l 'entité réceptrice ER. Cette dernière reçoit alors un signal code de réception qui est déforme par rapport au signal code de transmission. Le canal de transmission, dit également canal de propagation, peut être un canal aérien ou tout autre type de canal tel qu'un câble. A cause de perturbations du canal de transmission, chaque mot de code X subit des distorsions et devient un mot déforme Y inclus dans le signal de données reçu en entrée de l' entité réceptrice ER. Le mot de code Y est compose du vecteur C déforme comportant K variables de données co a cκ-l déformées, et du vecteur de parité P déforme comportant M variables de parité po a PM-I déformées. Le canal de transmission se comporte comme une application déformante non déterministe entre le signal de données codées en entrée du canal et le signal de données codées en sortie du canal.
Afin de compenser les effets dus a la transmission, l 'entité réceptrice ER comporte un dispositif décodeur DC qui détermine une meilleure estimation de chaque vecteur de données reçu pour former un signal de code estime comportant des vecteurs de données estimes. Le dispositif décodeur DC décode de manière itérative chaque mot reçu Y suivant un algorithme de décodage contenant un code correcteur génère a partir d'une matrice de décodage HD décrite en relation avec la figure 3 et dépendant de la matrice de codage HC implementee dans le dispositif encodeur de l' entité emettπce EM. La matrice de décodage HD a un rendement de décodage RD égal ou différent du rendement de codage RC de la matrice de codage HC. Le rendement de décodage RD correspond également au nombre de variables de données K inclus dans le mot de code Y sur le nombre de variables totales NO intervenant lors du décodage du mot de code Y : RD = K/NO . Le dispositif décodeur estime un vecteur sensiblement identique au vecteur de données C génère par la source SC de l' entité emettrice EM. Chaque signal de code contenant le vecteur estime est fourni a un récepteur d'information RI, par exemple un dispositif de reproduction sonore dote d'un haut- parleur.
En variante le dispositif décodeur comprend plusieurs matrices de décodage qui sont chacune équivalente a une ou des matrices de codage HC différentes implementees dans des entités emettrices.
Selon une première réalisation de l'invention en référence a la figure 2, une matrice de codage HC de taille MxN, soit M lignes de rangs 1 a M et N = K+M colonnes de rangs I a N, fait correspondre les N variables du mot de code X aux M équations de parité eqo a eqM-i- Ainsi, chaque équation de parité dont les coefficients sont les éléments d'une ligne de la matrice HC comporte de variables correspondant aux de éléments a "1" de ladite ligne, et chaque variable relative a une colonne de la matrice HC est impliquée dans dv équations de parité correspondant aux dv éléments a "1" de ladite colonne.
La matrice de codage H C est composée de deux matrices : une matrice de codage systématique HCC dite également matrice de codage non bi-diagonale, de taille MxK, avec K le nombre de variables de données co a cκ-1 du vecteur de données C, et une matrice de codage de parité HCp, dite également matrice de codage bi-diagonale, de taille MxM avec M le nombre de variables de parité po a PM-I du vecteur de parité P.
Selon une deuxième réalisation de l'invention, la matrice de codage de parité HCp est partiellement bi-diagonale . Cette deuxième réalisation est décrite ultérieurement en référence a la figure 9.
Le mot de code X est décompose de la façon suivante X = [C P] et respecte l' équation :
-,T
HC X = [HCC HCp J = oJ (D
T T T ou X , C et P sont les transposées des vecteurs X,
C et P, l 'équation (1) se décomposant en M équations de parité eqo a eqM-l •
Un vecteur de protection V comprenant des variables de protection vo a v^-i est défini par la relation suivante :
V = HCr C (2)
Les variables de parité po a PM-I du vecteur de parité P sont déduites des relations précédentes (1) et (2) dans le dispositif encodeur CD
= HCp 1VT (31 La matrice de codage systématique HCC fait correspondre les variables de données co a CJC-I du vecteur de données C aux variables de projection vo a VM-I du vecteur de projection V, et comprend JCm élément a l'état "1" pour chaque ligne m de la matrice .
La matrice de codage de parité HCp qui est constante, fait correspondre les variables de projection vo a v^-i du vecteur de projection V aux variables de parité po a PM-I du vecteur de parité P. Selon la première réalisation, les éléments a "1" dans la matrice de parité HCp sont disposes bi- diagonalement, c'est-a-dire dans la diagonale centrale et une sous-diagonale jouxtant et parallèle a la diagonale centrale dans la matrice HCp. La forme de la matrice de parité HCp définit un code de la famille des codes accumulatifs irreguliers IRA ("Irregular Repeat-Accumulate" en anglais) . Ce code est une accumulation série de codes de parité et d'un code convolutif recursif a une bascule. Cette forme bi-diagonale permet un encodage simple des variables de données .
En référence a la figure 3, la matrice de décodage HD est de forme similaire a la matrice de codage HC dont elle dépend, et est de taille MOxNO, soit MO lignes de rangs 1 a MO et NO colonnes de rangs 1 a NO .
La matrice de décodage HD est composée également de deux matrices. Une première matrice de décodage systématique HDC, appelée également matrice de décodage non bi-diagonale, est de taille MOxK, avec K le nombre de variables de données CQ a cκ-i du vecteur de données C du mot de code Y, et MO le nombre d'équations de parité Eqo a EqMO-I- La matrice de décodage systématique HDC fait correspondre les variables de données co a cκ-i déformées du vecteur de données C a des variables de projection vo a v^-i d'un vecteur de projection V, tel que défini par la relation (2) . La matrice de décodage systématique HDC comprend, selon une première réalisation de l'invention, JD élément a "1" pour chaque ligne de la matrice. JD est un nombre entier constant et sous- multiple des nombres JC1 d'élément a "1" dans les lignes de la matrice de codage systématique HCC. Ainsi JCm = Tm JD, avec m correspondant a 1 ' indice de ligne de la matrice HCC. Chaque ligne m de la matrice de codage systématique HCC se décompose en Tm lignes de la matrice de décodage systématique HDC. Chacune des lignes de la matrice de décodage systématique issues de la décomposition d'une ligne de la matrice de codage comporte JD éléments a "1" positionnes dans des colonnes ayant des rangs qui sont identiques a des rangs d'élément a "1" dans la ligne de la matrice de codage systématique et qui sont différents des rangs d'élément a "1" des autres lignes de la matrice de décodage systématique issues de la décomposition de la ligne de la matrice de codage. Le nombre JD correspond a un diviseur commun des nombres JCm d'élément a "1" relatifs a la matrice de codage systématique .
La deuxième matrice, dite matrice de décodage de parité HDp ou encore matrice bi-diagonale, est de taille MOxMO, avec MO la somme du nombre M de variables de parité po a PM-I du vecteur de parité P déforme du mot de code Y et de nombres To-I, Tm-1, TM-I-I de variables intermédiaires etm,πu dites variables de parité cachées, avec 0 ≤ tm < Tm-1 et 0 < m ≤ M-I. Les variables de parité cachées etm,πu avec 0 ≤ tm < Tm-1 précèdent la variable de parité respective pm, de sorte que tous les éléments à "1" dans la matrice de parité HDp soient disposés bi- diagonalement .
La matrice de décodage de parité HDp fait correspondre les variables de projection vo à VM-I du vecteur de projection V aux variables de parité po à PM-I du vecteur de parité P et aux variables de parité cachées etm,m introduites entre chaque variable de parité pm.
Selon un exemple représenté aux figures 4 et 5 et relatif à la première réalisation, la matrice de codage HC comprend M = 3 lignes et N = 11 colonnes , avec pour les deux premières lignes de la matrice systématique JCo = JCi = 4 éléments à "1", et pour la troisième ligne JC2 = 6 éléments à "1". La matrice de décodage HD, représentée à la figure 5, comprend MO = 7 lignes et NO = 15 colonnes. Chaque ligne de la matrice de décodage systématique HDC a un nombre constant JD = 2 d'éléments à "1". La première et la deuxième ligne de la matrice HC se décompose chacune en To = Ti = 2 lignes de la matrice de décodage, c'est-à-dire respectivement en les deux premières lignes et les deux lignes suivantes de la matrice HD. De même, la troisième ligne de la matrice HC se décompose en T2 = 3 lignes de la matrice de décodage qui sont les trois dernières lignes de la matrice HD.
Pour obtenir une décomposition d'une ligne systématique de codage en Tm lignes systématiques de décodage, Tm-1 variables de parité cachées etm,m correspondant a des colonnes de la matrice précèdent la variable de parité pm dans la matrice de décodage de parité. La variable de parité pm est positionnée au même rang de colonne dans la matrice de codage de parité que celui de la ligne décomposée dans la matrice de codage, et le nombre de colonne supplémentaire est égal a Tm-i~l. Les ensembles de To~l a TM-I~1 variables de parité cachées sont associes aux variables de parité po a PM-I selon une relation d'accumulation relative a la forme bi- diagonale de la matrice de décodage de parité.
Cette relation est exprimée, par exemple, en référence a la forme bi-diagonale de la matrice de codage de parité HCp. Chaque équation de parité eqm de la matrice HC permet d'obtenir la variable de parité pm telle que :
JCm-I
Pm = Pm-I + ∑cs(i,m) i=0
ΘΓUΘ ou s(i,m) est la position du i élément non nul "1" de la ligne m dans la matrice de codage systématique HCC.
Puisque JCm = Tm JD, la relation précédente s'écrit également en faisant apparaître la somme de JD bits telle que :
Figure imgf000021_0001
D=0 I=DJD
Cette relation s'écrit également par l'intermédiaire des variables de parité cachées : JD-I e0,m = Pm-I + Z^ Cs(i,m) i =0
2JD -1 el,m = e0, m + Z^1 cs(i,m) i =JD
(vtu mm
Figure imgf000022_0001
'tm, , mm = etumm -1 ,m + 2J Cs(i,m) x=tmJD
(Tm -I)JD-I θTm-2,m = ΘTm-3,n + Z^Cs(i,m)
I=(T1n -2)JD
TmJD-l
P^mm =- eemTm _2,m + Z-j cs(i,m) i =(T1n-I)JD
JD-I eO,m+l = Pm + ZJ Cs(i,m+l) . x =0
En référence a l'exemple illustre a la figure 4, les M = 3 variables de parité po a p2 obtenues a partir des équations de parité eqo a eq2 de la matrice de codage HC sont : PO = co + C2 + C4 + C6 pi = po + Ci + C3 + C5 + C7
P2 = Pl + co + C2 + C3 + C4 + C6 + C7.
D'après les relations décrites précédemment pour
JD = 2, les égalités précédentes sont réécrites en introduisant des variables de parité cachées etm,m précédant respectivement les M variables de parité Pm pour obtenir sept équations de parité formant la matrice de décodage HD représentée a la figure 5 : eo,O = co + C2 PO = eo,o + C4 + CQ eo,i PO + ci + C3 Pl = eo,i + es + C7 eo,2 = Pl + co + C2 ei,2 = eo,2 + C3+ 04 P2 = ei,2 + C6 + C7.
A chaque ligne m de la matrice de codage HC correspond Tm lignes dans la matrice de décodage systématique HDC et Tm-1 variables de parité cachées etm,m dans la matrice de décodage de parité HDp. L'introduction des variables de parité cachées dans la matrice de décodage HD augmente la taille du mot de code a décoder qui comprend les variables de données c]ς,, les variables de parité pm et les variables de parité cachées etm,n- En conséquence, le rendement de décodage RD associe a la matrice de décodage est inférieur au rendement de codage RC associe a la matrice de codage HC .
Pour l'exemple des figures 4 et 5, le rendement de codage RC est égale a K/N = 8/11 avec K = 8 et N = 11, alors que le rendement de décodage RD est égale a K/NO = 8/15, avec K = 8 et NO = 15 qui correspond a la somme des nombres des variables de données cj{, des variables de parité pm et des variables de parité cachées etm,m»
Le procède de décodage selon l'invention s'appuie sur un algorithme de décodage de type turbo série par fenêtre, afin d'optimiser le décodage d'un signal de données codées reçu en entrée du dispositif décodeur DC. Une autre représentation de la matrice de décodage est illustrée a la figure 6 pour introduire le fenêtrage des équations de parité composant la matrice de décodage. La matrice de décodage systématique HDC est constituée de AxK sous -matrices ∑O a IA-I comportant chacune z lignes avec 0 ≤ a < A- 1. La matrice de décodage de parité HDp est composée de A sous-matrices de taille zχM0.
La matrice de décodage HD est découpée en z fenêtres de décodage comportant chacune un nombre A d'équations de parité. Chaque fenêtre de décodage Ff d'indice f, avec 0 < f < z-1, comprend les A équations suivantes : Eqf, Eq(z+f), , Eq(az+f) / ,
Eq ( (A-I) z+f) • Une fenêtre de décodage Ff comprend une équation de parité par ligne de sous-matrices de taille z xNO.
Le décodage d'un signal de données codées divise en fenêtres de décodage Ff a pour avantage d'améliorer la convergence de l'algorithme de décodage. Des variables déterminées lors du décodage d'une fenêtre Ff a A équations de parité sont utilisées pour le décodage des A équations de parité de la fenêtre de décodage suivante F(f+i).
En se référant de nouveau a la figure 1, le dispositif encodeur CD de l 'entité emettrice EM comprend deux codeurs CDl et CD2 correspondant chacun a un processeur ayant génère un code pour coder a partir d'une matrice de codage HC. Le code du codeur CDl détermine les variables vo a v^i-i du vecteur de projection V selon la relation (2) en fonction de la matrice de codage systématique HCC et des variables co a cκ-1 du vecteur de données C générées par la source SC. Le code du codeur CD2 détermine les variables po a PM-I du vecteur de parité P selon la relation (3) en fonction de la matrice de codage de parité HCp et des variables vo à v^-i du vecteur de projection V précédemment déterminées par le codeur CDl. Le mot de code X en sortie du dispositif encodeur CD est formé des variables co à CR-I du vecteur de données C et des variables po à PM-I du vecteur de parité P. Les variables impliquées dans le codage de la séquence de données sont des valeurs binaires "0" ou "1".
A la réception du signal de données codées déformé, les variables binaires des vecteurs C et P sont pour certaines également déformées et erronées . Pour obtenir des variables de données similaires à celles générées par l'unité source SC du dispositif encodeur CD, en sortie du dispositif décodeur DC, celui-ci estime à chaque itération i des variables de données, appelées dans la suite de la description "variables de vraisemblance", qui formeront le signal de code estimé. Après un nombre prédéfini I d'itérations, les variables de vraisemblance sont utilisées pour déterminer le vecteur C estimé se rapprochant le plus du vecteur C généré. L'algorithme de décodage mis en œuvre dans le dispositif décodeur DC est basé sur l'algorithme de propagation de croyance BP ("Belief Propagation" en anglais) qui est un algorithme itératif à entrées souples.
Toutes les variables impliquées dans l'algorithme de décodage sont des variables pondérées par exemple du type LLR ("Log Likehood Ratio" en anglais), comportant chacune un signe définissant la valeur binaire dure "0" ou "1" de la variable et une valeur souple précisant la fiabilité de cette valeur binaire dure. En référence à la figure 7, le dispositif décodeur DC mettant en œuvre l'algorithme de décodage relatif à la première réalisation de l'invention comprend trois décodeurs DCl, DC2 et DC3, des mémoires MRl, MR2 et MP et une unité de contrôle UC qui contrôle l'ensemble des éléments du dispositif décodeur DC. Tous ces éléments sont représentés sous forme de blocs fonctionnels dont la plupart assurent des fonctions ayant un lien avec l'invention et peuvent correspondre à des modules logiciels et/ou matériels .
Les décodeurs DCl, DC2, DC3 et les mémoires du dispositif décodeur DC sont contrôlées par l'unité de contrôle UC qui gère l'accès aux mémoires et l'ordonnancement du fonctionnement des décodeurs en fonction du contenu de la matrice de décodage HD et des fenêtres de décodage Fo à Fz-]_. L'unité UC comprend ou est reliée à une mémoire de contrôle MRC contenant plusieurs matrices de décodage HDh et leurs variables de parité cachées, avec l'indice h tel que 1 < h < H, associées à un identificateur tel que le rendement de codage RC de la matrice de codage HC. Les matrices de décodage HDl à HDH sont chacune dépendantes d'une matrice de codage et ont pour chaque équation de parité un nombre identique JD de variables de données C^, JD étant égal à un diviseur commun des nombres d'élément à "1" des lignes des matrices de codage.
En variante la mémoire MRC comprend une unique matrice de décodage HD et les variables de parité cachées etm,m associées.
Le fonctionnement des trois décodeurs de l'invention est sensiblement similaire au fonctionnement des décodeurs décrits dans la demande de brevet français 0654864 déposée le 13 novembre 2006 par le demandeur. Les trois décodeurs DCl, DC2 et DC3 sont des processeurs comportant chacun une partie des instructions de décodage selon l'algorithme de décodage, établies en dépendance de la matrice de décodage HD.
Les décodeurs DCl et DC3 ont la particularité de traiter des équations de parité a J D variables de données intrinsèques m co a m cκ-l obtenues a partir de l'observation du canal de transmission CT, par application d'une matrice de décodage systématique HDhc.
Le décodeur DC2 est un décodeur d' "aller retour" FBA ("Forward Backward Algorithm" en anglais) et traite les équations de parité de la matrice de décodage de parité HDhp en fonction des variables de parité intrinsèques m po a m p(M-l) obtenues a partir de l'observation du canal de transmission CT et de variables de parité cachées intrinsèques m e0,0 a
0 m e (T(M-I) -2) ,M-I- La mémoire MRl comprend au moins un espace mémoire Mcv contenant pour chaque traitement d'une fenêtre de décodage Ff, des premières variables extrinsèques ml ck,vm déterminées par le décodeur DCl et échangées entre le décodeur DCl et le décodeur DC3, avec l'indice ck tel que cO < ck < c (K-I) et l'indice vm tel que vO < vm < v (MO-I) .
La mémoire MR2 comprend un espace mémoire Mvc contenant pour chaque itération i des deuxièmes variables extrinsèques m2 vm,ck déterminées par le décodeur DC3 et échangées entre le décodeur DC3 et le décodeur DCl, avec les indices vm et ck tels que vO < vm < v(MO-l) et cO < ck < c (K-I) . La mémoire MR2 comprend également un espace mémoire de données MC contenant les variables de données intrinsèques m co a m c (K-I) et des variables de vraisemblance m CQ a m c (K-I) estimées par le décodeur DC3 a chaque itération 1 et devant correspondre aux variables de données émises co a cκ-i-
La mémoire de parité MP, accessible par le décodeur DC2, comprend les variables de parité intrinsèques m po et m PM-1 et les variables de parité cachées m e0,0 a m e (T (M-I) -2) ,M-I correspondant a la matrice de décodage HD a partir de laquelle le code correcteur est génère. Les variables ml ck,vπu m co a m cκ-l/ ^2^^^, î i 0 0 ^ O 0 m co a m C(K-1), m po a m P(M-1) et m e0,0 a m e (T (M-I) -
2), M-I sont des variables pondérées de type LLR ("Log Likehood Ratio" en anglais) .
L'algorithme de décodage représente a la figure 8 et relatif a la première réalisation de l'invention comprend des étapes El a E13.
A l'étape El, lors de la préparation de la communication de données entre l' entité emettrice EM et 1 'entité réceptrice ER, 1 'entité emettrice EM transmet a l' entité réceptrice ER un signal SI contenant des paramètres de communication dont le rendement de codage RC relatif a la matrice de codage HC du dispositif encodeur CD de l' entité emettrice EM.
A la réception du signal SI a l'étape E2, 1' unité de contrôle UC du décodeur DC recherche dans la mémoire MRC la matrice de décodage HDh dépendant de la matrice de codage de 1 'entité emettrice dont le rendement de codage est RC. L 'unité UC génère un code correcteur a partir de la matrice de décodage HDh et implemente ce code dans les décodeurs DCl, DC2 et
DC3. L 'unité UC mémorise également les variables de parité cachées intrinsèques m e0,0 a m e (T (M-I) -2) ,M-I relatives aux variables de parité cachées ΘQ,O a e (T (M-I) -2) ,M-I associées a la matrice de décodage HDh, dans la mémoire MP a une valeur neutre qui dans le cas des variables pondérées de type LLR est zéro.
Puis a l'étape E3, l' entité emettrice EM débute la transmission de signaux contenant des mots de code X a 1 'entité réceptrice ER. A la réception d'un signal de transmission contenant le mot de code déforme Y issu du mot de code X transmis, l' unité de contrôle UC du dispositif décodeur DC détermine a l'étape E4 des variables de données intrinsèques m co a m c (K-I) a partir des variables transmises du vecteur de données C déforme, et les variables de parité intrinsèques m po a m p(M-l) a partir des variables transmises du vecteur de parité P déforme. Les variables intrinsèques de données et de parité sont respectivement mémorisées dans l'espace mémoire MC de la mémoire MR2 et dans la mémoire MP.
A chaque itération i aux étapes E5 a E13, le dispositif décodeur DC traite les z fenêtres de décodage. Lors du traitement d'une fenêtre de décodage Ff comprenant A équations de parité contenant chacune JD variables de données Ck, avec 0 < f < z-1, l'algorithme de décodage comprend trois étapes distinctes de décodage E6, E7 et E8 traitées respectivement dans les décodeurs DCl, DC2 et DC3 du dispositif décodeur DC.
A chaque traitement d'une fenêtre de décodage Ff, l' unité UC autorise les décodeurs a accéder en écriture et lecture dans les mémoires MRl, MR2 et MP pour y lire et écrire des variables impliquées respectivement dans les A équations de la fenêtre Ff en dépendance des éléments de la matrice de décodage HD lue dans la mémoire MRC, au cours du décodage. La première étape de décodage E6 mise en œuvre dans le décodeur DCl, activée par l' unité de contrôle UC, consiste a résoudre les A équations de parité de la fenêtre Ff définies par la matrice de décodage systématique HDC et contenant chacune JD variables Ck. Pour chaque équation de parité Eq f, le décodeur DCl détermine des premières variables extrinsèques ml ck, vf associées respectivement aux variables de parité C^ intervenant dans l' équation de parité, et nécessaires a la détermination d'une première variable de projection pondérée Vl vf relative a 1' équation de parité Eqf. Chaque première variable extrinsèque ml ck,vf est déterminée par application d'une fonction g a la variable de données intrinsèque m ck mémorisée dans l'espace mémoire MC et a des deuxièmes variables extrinsèques m2 vj,ck associées aux variables de projection vj , avec l'indice j différent de l'indice f, relatives aux équations de parité Eq^ de la matrice de codage systématique qui contiennent la variable de donnée c^. Ces deuxièmes variables extrinsèques m2 vj,ck sont déterminées par le décodeur DC3 lors de l' itération précédente î-l et sont mémorisées dans l'espace mémoire Mvc de la mémoire MR2. La fonction g peut être telle que : g(xχ, Xq, XQ) = sign(xi) sign(Xg) sign (XQ) min ( | XI | , I xq | , I XQ I ) , ou "sign" est la fonction signe définissant la valeur binaire dure "0" ou "1" d'une variable xα et Xq une valeur souple positive précisant la fiabilité de cette valeur binaire dure.
Les premières variables extrinsèques ml ck,vf résultant de la resolution des A équations de la fenêtre Ff pour l' itération i a partir de la matrice systématique HDC sont déterminées simultanément et sont mémorisées dans la mémoire Mcv. Le décodeur DCl détermine ensuite les premières variables de projection pondérées Vl vf relatives aux équations de parité de la fenêtre Ff. Pour chaque équation de parité Eqf, la première variable de projection pondérées associée Vl vf est déterminée par application de la fonction g sur toutes les premières variables extrinsèques ml ck,vf associées respectivement aux variables de parité Ck contenues dans l' équation de parité Eqf.
Le décodeur DCl fournit au décodeur DC2 les premières variables de projection pondérées Vl vf déterminées lors de la resolution des A équations de la fenêtre Ff. Puis 1 'unité de contrôle UC desactive le décodeur DCl.
La deuxième étape de décodage E7 mise en œuvre dans le décodeur DC2 active par l' unité de contrôle UC consiste a déterminer le code interne, c'est-a- dire a résoudre les A équations de parité de la fenêtre Ff définies par la matrice de décodage de parité HDp a partir des A premières variables de projection pondérées Vl vf produites par le décodeur DCl et des A variables de parité intrinsèques m pf et de parité cachées intrinsèques m etm, f pour obtenir A deuxièmes variables intermédiaires, dites deuxièmes variables de projection pondérées V2 vf a fournir au troisième décodeur DC3.
Le décodeur DC2 est un décodeur différentiel et utilise une technique de décodage connue de code convolutif a sortie pondérée selon le contenu de la matrice de parité HDp, comme les algorithmes d' "aller retour" FBA (Forward Backward Algorithm) tels que l'algontnme BCJR (Bahl-Cocke-Jelinek-Raviv) . La troisième étape de décodage E8 mise en œuvre dans le décodeur DC3 active par l' unité de contrôle UC consiste a vérifier les A équations de parité de la fenêtre Ff définies par la matrice systématique HDC en déterminant des deuxièmes variables intrinsèques m2 vf,ck- Chaque deuxième variable extrinsèque m2 vf,ck est déterminée par application de la fonction g sur la deuxième variable de projection pondérée V2 vf relative a I1 équation de parité Eqf et fournie par le décodeur DC2, et sur les premières variables extrinsèques ml Cj,vf associées a des variables de données cj, avec j différent de k, contenues dans l' équation de parité Eqf et déterminées par le décodeur DCl lors de la première étape de décodage E6.
Les deuxièmes variables extrinsèques m2 vf,ck résultant de la resolution des A équations de la fenêtre Ff pour l' itération i a partir de la matrice systématique HDC sont déterminées simultanément et sont mémorisées dans la mémoire Mvc .
Ces deuxièmes variables extrinsèques seront impliquées dans la détermination des premières variables extrinsèques dans le décodeur DCl lors de 1' itération suivante î+l .
A l'étape E9, l'unité de contrôle UC vérifie si toutes les z fenêtres de décodage sont traitées. Dans le cas contraire, une autre fenêtre de décodage est implementee a l'étape ElO et est traitée aux étapes E6 a E8.
Si les z fenêtres de décodage sont traitées, 1 'unité de contrôle UC active le décodeur DC3 a l'étape EIl pour estimer les variables de vraisemblance m co a m c (K-I)- Chaque variable de vraisemblance m ck est estimée par application de la fonction g sur la variable intrinsèque m ck associée et mémorisée dans l'espace mémoire MC et sur les deuxièmes variables extrinsèques m2 vf,ck associées a la variable de données CK et mémorisées dans l'espace mémoire Mcv de la mémoire MR2.
A l'étape E12, l' unité de contrôle UC vérifie si toutes les I itérations sont exécutées. Dans le cas contraire, une autre itération i est implementee a l'étape E5 et les z fenêtres de décodage sont a nouveau traitées aux étapes E6 a E9.
Si les I itérations sont traitées, 1 'unité de contrôle UC établit un signal de données estime contenant les variables de vraisemblance m co a m c(K- i) correspondant sensiblement aux variables de données générées par la source SC de l' entité emettrice EM, et fournit le signal de données estimées au récepteur d'information RI de l' entité réceptrice ER, a l'étape E13.
Selon une deuxième réalisation de l'invention, les nombres d'éléments a "1" sont différents dans les lignes de la matrice de décodage systématique HDC. Au moins les nombres JD j d'éléments a "1" dans deux lignes distinctes de la matrice HDC sont différents. Plus généralement, J nombres JDi a JDj d'éléments a "1" peuvent être différents dans des lignes distinctes de la matrice HDC, avec l'entier j tel que 0 ≤ j < J-I. Le profil d'irrégularité relatif a la variation du nombre d'élément a "1" pour certaines lignes de la matrice de décodage systématique HDC correspond au profil d'irrégularité de la matrice de codage HC. Cette irrégularité est plus particulièrement due a la matrice de codage de parité qui est partiellement bi- diagonale. Une ou des colonnes de la matrice de codage de parité n'appartient pas a une partie bi- diagonale de celle-ci et sont considérées comme irregulieres . Dans le dispositif décodeur, la ou les colonnes irregulieres sont transférées en tant que colonne dans la matrice systématique de décodage. La matrice de décodage systématique HDC ainsi agrandie comporte une partie initiale relative a la décomposition des lignes de la matrice de codage systématique dont le nombre JD d'élément a "1" dans cnaque ligne est un sous-multiple du nombre d'élément JCm relatif a la matrice de codage systématique, et une partie supplémentaire comportant la ou les colonnes supplémentaire s correspondant a la ou les colonnes irregulieres de la matrice de codage de parité. Les colonnes supplémentaires de la matrice de décodage systématique ont le même nombre d'élément a "1" que les colonnes irregulieres de la matrice de codage de parité, ces éléments étant repartis selon la décomposition de chaque ligne de la matrice de codage systématique en le nombre de ligne de la matrice de décodage systématique.
Le nombre JOj d'élément a "1" dans l'une des lignes de la matrice de décodage systématique agrandie HDC issues de la décomposition d'une ligne de la matrice de codage est égal a la somme du nombre JD d'élément a "1" de la ligne appartenant a la partie initiale de la matrice HDC et du nombre d'élément a "1" sur la même ligne et dans les colonnes supplémentaires de la matrice HDC.
Selon un exemple représente a la figure 9, la matrice de codage HC de rendement RC = 8/12 = 2/3, comprend une matrice de codage de parité HCp irreguliere dont une partie des colonnes est de forme bi-diagonale, par exemple les colonnes associées aux variables de parité pi à p3, et dont une partie des colonnes est irrégulière, par exemple la première colonne associée à la variable de parité po comprenant trois "1". Pour obtenir une matrice de décodage de parité bi-diagonale HDp, les colonnes irrégulières de la matrice de parité sont considérées comme des colonnes supplémentaires de la matrice de décodage systématique agrandie HD c, po étant alors considéré comme une variable de données.
Les équations de parité de la matrice de codage HC sont : co + C2 + C4 + C6 + po + pi = 0 ci + C3 + C5 + C7 + po + pi + P2 = 0 co + C3 + C4 + Cβ + p2 + P3 = 0 ci + C2 + C5 + C7 + po + P3 = 0.
En remarquant que la matrice de décodage HD dépend de la matrice de codage HC, la variable po est une variable de données et chaque ligne de la matrice systématique agrandie HDC de la matrice de décodage comprend soit JDo = 2, soit JDi = 3 éléments à "1", les équations de parité de la matrice de décodage sont : eO,l = C0 + C2 + po ei,l = eo,i + C4 + Cβ
Pl = ei,i + ci + C3 eo,2 = pi + C5 + C7 + po
P2 = eo,2 + co + C3 eo,3 = P2 + C4 + C6
P3 = eo,3 + ci + C2
P3 = C5 + C7 + po
Les première, quatrième et huitième équations contiennent JDi = 3 variables de données (cj^, po) • Les autres équations contiennent JDo = 2 variables de données cjς.
En référence a la figure 11, le dispositif décodeur de la deuxième réalisation est analogue au dispositif décodeur de la première réalisation, excepte les décodeurs DCl et DC3 divises chacun en autant de sous-decodeurs qu'il y a de nombre s JD j d'élément a "1" différents dans les lignes de la matrice de décodage HD.
Selon l'exemple précèdent, les décodeurs DCl et DC3 sont divises en deux sous-decodeurs. Un premier sous-decodeur traite les équations de parité a JDo variables de données. Le deuxième sous-decodeur traite les équations de parité a JDi variables de données .
L'algorithme de décodage est analogue a l'algorithme de décodage relatif a la première réalisation, les J-I sous-decodeurs des décodeurs DCl et DC3 fonctionnant simultanément.
A partir d'une architecture figée du dispositif décodeur, celui-ci décode tout mot de code de rendement différent génère a partir de matrices de codage HC dont chaque équation de parité m comprend un nombre JCm de variables de données multiple du nombre JD de variables de données contenues dans les équations de parité de la matrice de décodage systématique traitées par les décodeurs DCl et DC3.
L'invention s'applique dans le domaine des transmissions a redondance incrémentale ("incrémental redundancy" en anglais). Pour ce type d'application, une matrice de codage HC est dépendante de plusieurs matrices de décodage HD chacune associée a des rendements de codage différents, et correspond à la matrice de décodage présentant le plus faible rendement de codage. Après le codage d'une séquence de données, l'entité émettrice poinçonne des variables de parité dans le mot de code pour transmettre le mot de code selon un premier rendement de codage.
A la réception du mot de code déformé Y, le décodeur sélectionne la matrice de décodage associée au premier rendement de codage et estime les variables de données transmises en fonction des variables de parité transmises et des variables de parité cachées correspondant à la matrice de décodage. Si le décodeur ne peut décoder les variables de données en fonction des seules variables de parité envoyées, il demande à l'entité émettrice de lui transmettre une ou des variables de parité supplémentaires parmi les variables de parité poinçonnées. L'apport d'au moins une variable de parité supplémentaire au mot de code précédemment transmis modifie le rendement de code. Le décodeur sélectionne donc une autre matrice de décodage associée au rendement de code modifié et exécute une autre estimation des variables de données en fonction des variables de parité précédemment transmises, de ladite au moins une variable de parité supplémentaire et des variables de parité cachées correspondant à l'autre matrice de décodage.
D'autres variables de parité supplémentaires sont transmises par l'entité émettrice tant que le décodeur n'a pas estimé correctement les variables de données .
L'invention décrite ici concerne une détermination d'un code au moyen d'une construction de matrices de codage et de décodage dépendantes, un codage et un dispositif encodeur pour coder un signal de données, un décodage et un dispositif décodeur pour décoder un signal de données codées. Selon une implementation, les étapes du procède de l'invention sont déterminées par les instructions de programmes d'ordinateur incorpores dans les dispositifs encodeur et décodeur. Les programmes comportent des instructions de programme qui, lorsque lesdits programmes sont exécutes respectivement dans le dispositif encodeur et le dispositif décodeur dont le fonctionnement est alors commande par l'exécution des programmes, réalisent les étapes du codage et décodage selon l'invention. En conséquence, l'invention s'applique également a des programmes d'ordinateur, notamment des programmes d'ordinateur enregistres su r ou dans un support d'informations lisible par un ordinateur et tout dispositif de codage et de décodage de données, adapte a mettre en œuvre l'invention. Ces programmes peuvent utiliser n'importe quel langage de programmation, et être sous la forme de code source, code objet, ou de code intermédiaire entre code source et code objet tel que dans une forme partiellement compilée, ou dans n'importe quelle autre forme souhaitable pour implementer le procède selon l'invention.
Le support d'informations peut être n'importe quelle entité ou dispositif capable de stocker les programmes. Par exemple, le support peut comporter un moyen de stockage ou support d'enregistrement sur lequel sont enregistres les programmes d'ordinateur selon l'invention, tel qu'une ROM, par exemple un CD ROM ou une ROM de circuit microelectronique, ou encore une cle USB, ou un moyen d'enregistrement magnétique, par exemple une disquette (floppy dise) ou un disque dur.
D'autre part, le support d'informations peut être un support transmissible tel qu'un signal électrique ou optique, qui peut être acheminé via un câble électrique ou optique, par radio ou par d'autres moyens. Les programmes selon l'invention peuvent être en particulier téléchargés sur un réseau de type internet. Alternativement, le support d'informations peut être un circuit intégré dans lequel les programme s sont incorporés, le circuit étant adapté pour exécuter ou pour être utilisé dans l'exécution du procédé selon l'invention.

Claims

REVENDICATIONS
1 - Procède de détermination de code au moyen d'une construction d'une matrice de codage (HC) et d'une matrice de décodage (HD) dépendant l'une de l'autre, la matrice de codage étant composée d'une matrice de codage systématique et d'une matrice de codage de parité partiellement bi-diagonale (HCC, HCp), et la matrice de décodage étant composée d'une matrice de décodage systématique et d'une matrice de décodage de parité bi-diagonale (HDC, HDp) , caractérise en ce que : au moins une ligne de la matrice de codage (HC) est décomposée en un nombre de ligne de la matrice de décodage (HD) sous-multiple du nombre d'élément a "1" inclus dans la matrice de codage systématique et dans ladite au moins une ligne, et une ligne de la matrice de décodage systématique (HDC) issue de la décomposition de ladite au moins une ligne comporte des éléments a "1" ayant des rangs identiques aux rangs des éléments a "1" dans ladite au moins une ligne et en nombre sous-multiple (Tm) du nombre d'élément a "1" (JCm) dans ladite au moins une ligne, les éléments a "1" dans des lignes de la matrice de décodage systématique issues de la décomposition de ladite au moins une ligne ayant des rangs différents.
2 - Procède de détermination de code conforme a la revendication 1, selon lequel toutes les lignes de la matrice de décodage systématique (HDC) ont le même nombre d'élément a "1" (JD) .
3 - Procède de détermination de code conforme a la revendication 1 ou 2, selon lequel au moins deux lignes de la matrice de codage systématique (HCC) ont des nombres d'élément a "1" différents et toutes les lignes de la matrice de décodage systématique ont un nombre d'élément a "1" égal a un diviseur commun aux nombres d'élément a "1" différents.
4 - Procède de détermination de code conforme a la revendication 1 ou 2, selon lequel au moins deux lignes dans deux matrices de codage systématiques différentes ont des nombres d'élément a "1" différents et toutes les lignes des matrices de décodage systématiques dépendant respectivement des dites deux matrices de codage systématiques différentes ont un nombre d'élément a "1" égal a un diviseur commun aux nombres d'élément a "1" différents .
5 - Procède de détermination de code conforme a l'une quelconque des revendications 1 a 4, selon lequel au moins une colonne (po) de la matrice de codage de parité (HCp) n'appartient pas a une partie bi-diagonale de celle-ci et est transférée en tant que colonne dans la matrice de décodage systématique (HDC) , et la matrice de décodage systématique comporte une colonne supplémentaire ayant des éléments a "1" en nombre égal a ceux dans ladite au moins une colonne et repartis selon la décomposition des lignes de la matrice de codage systématique.
6 - Procède de codage d'un signal incluant des variables de données (cjj en un signal incluant les variables de données et des variables de parité (pm) , comprenant une resolution d'équations de parité (eqo - eqM-i) dont les coefficients correspondent respectivement aux lignes d'une matrice de codage (HC) dépendant d'une matrice de décodage (HD), la matrice de codage étant composée d'une matrice de codage systématique et d'une matrice de codage de parité partiellement bi-diagonale (HCC, HCp) , et la matrice de décodage étant composée d'une matrice de décodage systématique et d'une matrice de décodage de parité bi-diagonale (HDC, HDp) , caractérise en ce que : au moins une ligne de la matrice de codage est décomposée en un nombre de ligne de la matrice de décodage sous-multiple du nombre d'élément a "1" inclus dans la matrice de codage systématique et dans ladite au moins une ligne, et une ligne de la matrice de décodage systématique issue de la décomposition de ladite au moins une ligne comporte des éléments a "1" ayant des rangs identiques aux rangs des éléments a "1" dans ladite au moins une ligne et en nombre sous-multiple (Tm) du nombre d'élément a "1" (JCm) dans ladite au moins une ligne, les éléments a "1" dans des lignes de la matrice de décodage systématique issues de la décomposition de ladite au moins une ligne ayant des rangs différents.
7 - Procède de décodage d'un signal de données codées incluant des variables de données (cyj et des variables de parité (pm) , fonde sur une matrice de codage (HC) dépendant d'une matrice de décodage, la matrice de codage étant composée d'une matrice de codage systématique et d'une matrice de codage de parité partiellement bi-diagonale (HCC, HCp) , et la matrice de décodage étant composée d'une matrice de décodage systématique et d'une matrice de décodage de parité bi-diagonale (HDC, HDp) , caractérise en ce que : des lignes de la matrice de décodage sont issues d'une décomposition d'une ligne de la matrice de codage et sont en nombre sous-multiple du nombre d'élément à "1" inclus dans la matrice de codage systématigue et dans ladite une ligne de la matrice de codage, une ligne de la matrice de décodage systématique issue de la décomposition de ladite une ligne comporte des éléments à "1" ayant des rangs identiques aux rangs des éléments à "1" dans ladite une ligne et en nombre sous-multiple (Tm) du nombre d'élément à "1" (JCm) dans ladite une ligne, les éléments à "1" dans des lignes de la matrice de décodage systématique issues de la décomposition de ladite une ligne ayant des rangs différents, et un nombre de colonne supplémentaire correspondant à une variable de parité cachée (etm,m) de valeur neutre pour le décodage du signal précède une colonne de la matrice de décodage de parité correspondant à une variable de parité (pm) ayant le même rang dans la matrice de codage de parité que celui de la ligne décomposée de la matrice de codage, le nombre de colonne supplémentaire augmenté de un étant égal audit nombre sous-multiple.
8 - Dispositif encodeur pour coder un signal incluant des variables de données {cyj en un signal incluant les variables de données et des variables de parité (pm) , comprenant des moyens (CDl, CD2) pour résoudre des équations de parité (eql - eqM) dont les coefficients correspondent respectivement aux lignes d'une matrice de codage (HC) dépendant d'une matrice de décodage, la matrice de codage étant composée d'une matrice de codage systématique et d'une matrice de codage de parité partiellement bi-diagonale (HCC, HCp), et la matrice de décodage étant composée d'une matrice de décodage systématique et d'une matrice de décodage de parité bi-diagonale (HDC, HDp) , caractérise en ce que : au moins une ligne de la matrice de codage est décomposée en un nombre de ligne de la matrice de décodage sous-multiple du nombre d'élément a "1" inclus dans la matrice de codage systématique et dans ladite au moins une ligne, et une ligne de la matrice de décodage systématique issue de la décomposition de ladite au moins une ligne comporte des éléments a "1" ayant des rangs identiques aux rangs des éléments a "1" dans ladite au moins une ligne et en nombre sous-multiple (Tm) du nombre d'élément a "1" (JCm) dans ladite au moins une ligne, les éléments a "1" dans des lignes de la matrice de décodage systématique issues de la décomposition de ladite au moins une ligne ayant des rangs différents.
9 - Dispositif décodeur pour décoder un signal de données codées incluant des variables de données
(Ck) et des variables de parité (pm) , comprenant des moyens (DCl, DC2, DC3) pour résoudre des équations de parité (Eqo a Eq^o-l) dont les coefficients correspondent respectivement aux lignes d'une matrice de décodage (HD) dépendant d'une matrice de codage, la matrice de codage étant composée d'une matrice de codage systématique et d'une matrice de codage de parité partiellement bi-diagonale (HCC, HCp) , et la matrice de décodage étant composée d'une matrice de décodage systématique et d'une matrice de décodage de parité bi-diagonale (HDC, HDp) , caractérise en ce que : des lignes de la matrice de décodage sont issues d'une décomposition d'une ligne de la matrice de codage et sont en nombre sous-multiple du nombre d'élément a "1" inclus dans la matrice de codage systématique et dans ladite une ligne de la matrice de codage, une ligne de la matrice de décodage systématique issue de la décomposition de ladite une ligne comporte des éléments a "1" ayant des rangs identiques aux rangs des éléments a "1" dans ladite une ligne et en nombre sous-multiple (Tm) du nombre d'élément a "1" (JCm) dans ladite une ligne, les éléments a "1" dans des lignes de la matrice de décodage systématique issues de la décomposition de ladite une ligne ayant des rangs différents, et un nombre de colonne supplémentaire correspondant a une variable de parité cachée (etm,m) de valeur neutre pour le décodage du signal précède une colonne de la matrice de décodage de parité correspondant a une variable de parité (Pm) ayant le même rang dans la matrice de codage de parité que celui de la ligne décomposée de la matrice de codage, le nombre de colonne supplémentaire augmente de un étant égal audit nombre sous-multiple .
10 - Programme d'ordinateur téléchargeable depuis un reseau de communication et/ou stocke sur un support lisible par ordinateur et/ou exécutable par un processeur, caractérise en ce qu'il comprend des instructions pour la mise en œuvre du procède de codage d'un signal incluant des variables de données conforme a la revendication 6.
11 - Programme d'ordinateur téléchargeable depuis un reseau de communication et/ou stocke sur un support lisible par ordinateur et/ou exécutable par un processeur, caractérisé en ce qu'il comprend des instructions pour la mise en œuvre du procédé de décodage d'un signal de données codées conforme à la revendication 7.
12 - Support d'enregistrement lisible par un dispositif encodeur, caractérisé en ce que sur ledit support d'enregistrement est enregistré un programme d'ordinateur comportant des instructions qui, lorsque le programme est chargé et exécuté dans ledit dispositif encodeur, réalisent le procédé de codage d'un signal incluant des variables de données conforme à la revendication 6.
13 - Support d'enregistrement lisible par un dispositif décodeur, caractérisé en ce que sur ledit support d'enregistrement est enregistré un programme d'ordinateur comportant des instructions qui, lorsque le programme est chargé et exécuté dans ledit dispositif décodeur, réalisent le procédé de décodage d'un signal de données codées conforme à la revendication 7.
PCT/FR2008/050410 2007-03-13 2008-03-11 Codage et decodage de signaux de donnees de rendements variables WO2008129195A1 (fr)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR0753801A FR2913836A1 (fr) 2007-03-13 2007-03-13 Codage et decodage de signaux de donnees de rendements variables
FR0753801 2007-03-13

Publications (1)

Publication Number Publication Date
WO2008129195A1 true WO2008129195A1 (fr) 2008-10-30

Family

ID=38951316

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/FR2008/050410 WO2008129195A1 (fr) 2007-03-13 2008-03-11 Codage et decodage de signaux de donnees de rendements variables

Country Status (2)

Country Link
FR (1) FR2913836A1 (fr)
WO (1) WO2008129195A1 (fr)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2953666A1 (fr) * 2009-12-09 2011-06-10 Commissariat Energie Atomique Procede de codage ldpc a redondance incrementale
CN108270450A (zh) * 2018-01-19 2018-07-10 南开大学 一种高码率下的规则准循环ldpc码的构造方法

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
CAIRE G ET AL: "Design Methods for Irregular Repeat-Accumulate Codes", IEEE TRANSACTIONS ON INFORMATION THEORY, IEEE SERVICE CENTER, PISCATAWAY, NJ, US, vol. 50, no. 8, August 2004 (2004-08-01), pages 1711 - 1727, XP011115239, ISSN: 0018-9448 *
DIVSALAR D ET AL: "CODING THEOREMS FOR TURBO-LIKE CODES", PROCEEDINGS OF THE ANNUAL ALLERTON CONFERENCE ON COMMUNICATION, CONTROL AND COMPUTING, XX, XX, 1998, pages 201 - 210, XP000901692 *
MANSOUR M M: "Unified decoder architectures for repeat-accumulate and LDPC codes", SIGNALS, SYSTEMS AND COMPUTERS, 2004. CONFERENCE RECORD OF THE THIRTY-EIGHTH ASILOMAR CONFERENCE ON PACIFIC GROVE, CA, USA NOV. 7-10, 2004, PISCATAWAY, NJ, USA,IEEE, 7 November 2004 (2004-11-07), pages 527 - 531, XP010780371, ISBN: 0-7803-8622-1 *
ROUMY A ET AL: "Design methods for irregular repeat accumulate codes", PROCEEDINGS 2003 IEEE INTERNATIONAL SYMPOSIUM ON INFORMATION THEORY. ISIT 03. YOKOHAMA, JAPAN, JUNE 29 - JULY 4, 2003, IEEE INTERNATIONAL SYMPOSIUM ON INFORMATION THEORY, NEW YORK, NY : IEEE, US, 29 June 2003 (2003-06-29), pages 2 - 2, XP010657030, ISBN: 0-7803-7728-1 *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2953666A1 (fr) * 2009-12-09 2011-06-10 Commissariat Energie Atomique Procede de codage ldpc a redondance incrementale
US8527832B2 (en) 2009-12-09 2013-09-03 Commissariat A L'energie Atomique Et Aux Energies Alternatives LDPC coding process with incremental redundancy
CN108270450A (zh) * 2018-01-19 2018-07-10 南开大学 一种高码率下的规则准循环ldpc码的构造方法
CN108270450B (zh) * 2018-01-19 2021-05-14 南开大学 一种高码率下的规则准循环ldpc码的构造方法

Also Published As

Publication number Publication date
FR2913836A1 (fr) 2008-09-19

Similar Documents

Publication Publication Date Title
EP0827284B1 (fr) Procédé de transmission de bits d&#39;information avec codage correcteur d&#39;erreurs, codeur et décodeur pour la mise en oeuvre de ce procédé
EP0481549B1 (fr) Système et procédé de codage/décodage de signaux numériques transmis en modulation codée
EP0808538B1 (fr) Dispositif de reception de signaux numeriques a structure iterative, module et procede correspondants
FR2909499A1 (fr) Procede et dispositif de decodage pour codes ldpc, et appareil de communication comprenant un tel dispositif
EP0827285A1 (fr) Procédé de transmission de bits d&#39;information avec codage correcteur d&#39;erreurs, codeur et décodeur pour la mise en oeuvre de ce procédé
EP2092651B1 (fr) Codage et decodage d&#39;un signal de donnees en fonction d&#39;un code correcteur
FR2905209A1 (fr) Procede et dispositif de decodage de blocs encodes avec un code ldpc
FR2849514A1 (fr) Code de geometrie algebrique adapte aux erreurs en rafale
EP0848501A1 (fr) Système et procédé de transmission numérique comportant un code produit combiné à une modulation multidimensionnelle
EP0995272A1 (fr) Decodage iteratif de codes produits
EP1959572B1 (fr) Procédé de décodage à passage de messages et à convergence forcée
EP0848524A1 (fr) MAQ à codage perforé en trellis, avec décodage itératif
FR3006133A1 (fr) Procede de decodage d&#39;un code correcteur, par exemple un turbo-code, par analyse du spectre etendu des mots du code
EP2833555B1 (fr) Procede ameliore de decodage d&#39;un code correcteur avec passage de message, en particulier pour le decodage de codes ldpc ou codes turbo
WO2008129195A1 (fr) Codage et decodage de signaux de donnees de rendements variables
FR2884661A1 (fr) Procede et dispositif de decodage d&#39;un code a longueur variable prenant en compte une information de probabilite a priori
WO2003088504A1 (fr) Procede de codage et/ou de decodage de codes correcteurs d&#39;erreurs, dispositifs et signal correspondants.
FR2838580A1 (fr) Procedes et dispositifs de faible cout pour le decodage de codes produits
FR2972878A1 (fr) Procede d&#39;encodage correcteur d&#39;erreur, procede de decodage et dispositifs associes.
FR2796780A1 (fr) Procede et dispositif de codage a au moins deux codages en parallele et permutation amelioree, et procede et dispositif de decodage correspondants
FR3022651A1 (fr) Procedes et dispositifs de codage et de decodage correcteur d&#39;erreurs, et programme d&#39;ordinateur correspondant.
FR2972877A1 (fr) Procede d&#39;encodage correcteur d&#39;erreur, procede de decodage et dispositifs associes.
FR2847398A1 (fr) Codes sesqui-rs doubles et leur decodage
FR3016760A1 (fr) Procede et dispositif de decodage de symboles codes a l&#39;aide d&#39;un code correcteur d&#39;erreurs lineaires, procede et dispositif de codage, et programme d&#39;ordinateur correspondants
FR3097388A1 (fr) Codage ldpc à protection différenciée

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 08775711

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 08775711

Country of ref document: EP

Kind code of ref document: A1