DE102014208996B3 - Procedure for recovering lost and / or corrupted data - Google Patents
Procedure for recovering lost and / or corrupted data Download PDFInfo
- Publication number
- DE102014208996B3 DE102014208996B3 DE102014208996.4A DE102014208996A DE102014208996B3 DE 102014208996 B3 DE102014208996 B3 DE 102014208996B3 DE 102014208996 A DE102014208996 A DE 102014208996A DE 102014208996 B3 DE102014208996 B3 DE 102014208996B3
- Authority
- DE
- Germany
- Prior art keywords
- degree
- nodes
- variable nodes
- separated
- code
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 23
- 230000005540 biological transmission Effects 0.000 claims abstract description 8
- 239000011159 matrix material Substances 0.000 claims description 16
- 238000009826 distribution Methods 0.000 description 9
- 238000004891 communication Methods 0.000 description 3
- 238000012937 correction Methods 0.000 description 3
- 238000007476 Maximum Likelihood Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 230000008033 biological extinction Effects 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 230000008030 elimination Effects 0.000 description 1
- 238000003379 elimination reaction Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/37—Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
- H03M13/373—Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35 with erasure correction and erasure determination, e.g. for packet loss recovery or setting of erasures for the decoding of Reed-Solomon codes
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/033—Theoretical methods to calculate these checking codes
- H03M13/036—Heuristic code construction methods, i.e. code construction or code search based on using trial-and-error
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
- H03M13/11—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits using multiple parity bits
- H03M13/1102—Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/37—Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
- H03M13/3761—Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35 using code combining, i.e. using combining of codeword portions which may have been transmitted separately, e.g. Digital Fountain codes, Raptor codes or Luby Transform [LT] codes
Landscapes
- Physics & Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Error Detection And Correction (AREA)
Abstract
Die Erfindung betrifft ein Verfahren zum Übertragen von Daten über einen verlustbehafteten Übertragungskanal, wobei Daten durch einen LDPC-Code kodierte werden. Der verwendete LDPC-Code ist durch einen bipartiten Graphen darstellbar. Die Erfindung ist dadurch gekennzeichnet, dass die Anzahl der Variable Nodes mit einem Grad von 2 V2 kleiner als m/2 ist, wobei m die Anzahl der Paritätssymbole ist, die durch den Code erzeugt werden, wobei diese Variable Nodes mit einem Grad von 2 voneinander getrennt sind, d. h. nicht durch Kanten mit gemeinsamen Check Nodes verbunden sind, wobei die Anzahl der voneinander getrennten Variable Nodes mit einem Grad von 3 V3_S = floor ((m – 2 V2)/3) ist, wobei diese Variable Nodes mit einem Grad von 3 voneinander getrennt sind, d. h. nicht durch Kanten mit gemeinsamen Check Nodes verbunden sind.The invention relates to a method for transmitting data over a lossy transmission channel, wherein data is coded by an LDPC code. The LDPC code used can be represented by a bipartite graph. The invention is characterized in that the number of variable nodes having a degree of 2V2 is smaller than m / 2, where m is the number of parity symbols generated by the code, these variables being nodes of degree 2 from each other are separated, d. H. are not connected by edges to common check nodes, where the number of separate variable nodes is to a degree of 3 V3_S = floor ((m-2 V2) / 3), these variable nodes being separated by a degree of 3 , d. H. not connected by edges with common check nodes.
Description
Die Erfindung betrifft ein Verfahren zum Wiederherstellen verlorengegangener und/oder beschädigter Daten.The invention relates to a method for restoring lost and / or damaged data.
Aus dem Stand der Technik ist es bekannt, Daten, die über einen sogenannten Packet-Erasure-Channel (PEC) übermittelt werden, durch Fehlerkorrekturverfahren zu schützen. Beispielsweise ist Packet-Level-Coding eine einfache Methode, um eine verlässliche Übertragung in einem Kommunikationssystem zu gewährleisten. Die zu übertragenden Informationen sollen ferner geschützt werden, indem Pakete in höheren Schichten codiert werden. Das Grundprinzip des Packet-Level-Coding ist in
Zunächst wird die übertragene Nachricht in k Informationspakete aufgeteilt und in n Codewortpakete codiert. Dies geschieht durch einen (n, k)-Code, wobei n die Codewortlänge und k die Blockgröße angibt. Somit werden m = n – k Paritätspakete durch den Packet-Level-Encoder erzeugt.First, the transmitted message is divided into k information packets and coded in n codeword packets. This is done by a (n, k) code, where n is the codeword length and k is the block size. Thus, m = n-k parity packets are generated by the packet-level encoder.
Weiterhin werden die n Codewortpakete im Physical Layer durch Fehlerkorrekturcodes (z. B. Turbo, LDPC...), Fehlererkennungscodes (z. B. Cyclic Redundancy Check) geschützt und anschließend übermittelt.Furthermore, the n codeword packets in the physical layer are protected by error correction codes (eg Turbo, LDPC, etc.), error detection codes (eg cyclic redundancy check) and then transmitted.
Anschließend wird auf der Empfängerseite für jedes Paket im Physical Layer eine Fehlerkorrektur durchgeführt, so dass verbleibende Fehler durch den Fehlererkennungscode erkannt werden. Wenn Fehler erkannt werden, wird das Datenpaket als verlorengegangen angesehen und entsprechend markiert. Somit sehen die Schichten über dem Physical Layer das Kommunikationsmedium als einen Packet-Erasure-Channel an, über den Pakete entweder korrekt empfangen oder mit einer bestimmten Auslöschungswahrscheinlichkeit ε verlorengehen.Subsequently, an error correction is performed on the receiver side for each packet in the physical layer, so that remaining errors are recognized by the error detection code. If errors are detected, the data packet is considered lost and marked accordingly. Thus, the layers above the physical layer view the communication medium as a packet erasure channel over which packets are either received correctly or lost with a certain probability of cancellation ε.
Wenn eine ausreichend große Menge an Paketen empfangen wurde, stellt der Packet-Level-Decoder die Originalnachricht wieder her.When a sufficient amount of packets has been received, the packet level decoder recovers the original message.
Die Codierprozedur wird üblicherweise bitweise unter Verwendung des Encoders eines binären oder nicht binären Codes durchgeführt. Das Dekodieren wird durchgeführt durch Lösen des Gleichungssystems, das durch die Parity-Check-Matrix H des Codes gegeben ist.The coding procedure is usually performed bitwise using the encoder of a binary or non-binary code. The decoding is performed by solving the system of equations given by the parity check matrix H of the code.
Softwareimplementierungen von Packet-Level-Encodern und Decodern sind besonders vorteilhaft, da sie keinen großen Aufwand hinsichtlich des Designs oder der Implementierung erfordern und ferner flexibler im Vergleich zu Hardwareimplentierungen sind. Softwaremodule können auf einfache Weise in eine Hardwarearchitektur integriert werden, die nicht speziell entwickelt wurde, um Packet-Level-Coding zu unterstützen.Software implementations of packet level encoders and decoders are particularly advantageous because they do not require much design or implementation overhead and are also more flexible in comparison to hardware implementations. Software modules can be easily integrated into a hardware architecture that has not been specifically designed to support packet-level coding.
Informationen über den Stand der Technik können den folgenden Veröffentlichungen entnommen werden:
- [1] J. Byers, M. Luby, M. Mitzenmacher, und A. Rege, ”A digital fountain approach to reliable distribution of bulk data”, SIGCOMM Comput. Commun. Rev., vol. 28, no. 4, Seiten 56–67, Okt. 1998
- [2] G. Garrammone, B. Matuz, ”Short Erasure Correcting LDPC IRA Codes over GF(q)”, GLOBECOM 2010, Seiten 1–5
- [3] G. Garrammone, E. Paolini, B. Matuz, G. Liva, M. Chiani, ”Non-Binary Low-Density Parity-Check Codes for the q-ary Erasure Channel”, IEEE International Conference on Communications (ICC), Jun. 2013, Budapest, Ungarn
- [4] C. Di, ”Asymptotic and Finite-Length Analysis of Low-Density Parity-Check Codes” PhD Thesis, EPFL, Lausanne, Schweiz
- [5] T. Richardson, A. Shokrollahi, R. Urbanke, ”Finite-length Analysis of various low-density parity-check codes for the binary erasure channel”, IEEE International Symposium on Information Theory (ISIT), 2002, Lausanne, Schweiz
- [6]
DE 10 2013 213 778 B3 - [7] ”Kanalkodierung”, 3. Auflage, Prof. Dr.-Ing. Martin Bossert, Oldenburg Wissenschaftsverlag 2013, Seiten 126–129
- [8] ”Low-Density-Parity-Check-Codes” – Eine Einführung, Tilo Strutz, 2010–2013, 26. Februar 2013
- [1] J. Byers, M. Luby, M. Mitzenmacher, and A. Rege, "A digital fountain approach to reliable distribution of bulk data", SIGCOMM Comput. Commun. Rev., vol. 28, no. 4, pages 56-67, Oct. 1998
- [2] G. Garrammone, B. Matuz, "Short Erasure Correcting LDPC IRA Codes over GF (q)", GLOBECOM 2010, pages 1-5
- [3] G. Garrammone, E. Paolini, B. Matuz, G. Liva, M. Chiani, "Non-Binary Low-Density Parity-Check Codes for the q-ary Erasure Channel", IEEE International Conference on Communications (ICC ), Jun. 2013, Budapest, Hungary
- [4] C. Di, "Asymptotic and Finite-Length Analysis of Low-Density Parity Check Codes" PhD Thesis, EPFL, Lausanne, Switzerland
- [5] T. Richardson, A. Shokrollahi, R. Urbanke, "Finite-length Analysis of Various Low-Density Parity-check Codes for the Binary Erasure Channel", IEEE International Symposium on Information Theory (ISIT), 2002, Lausanne, Switzerland
- [6]
DE 10 2013 213 778 B3 - [7] "Channel Coding", 3rd edition, Prof. Dr.-Ing. Martin Bossert, Oldenburg Science Publishing 2013, pages 126-129
- [8] "Low Density Parity Check Codes" - An Introduction, Tilo Strutz, 2010-2013, February 26, 2013
Es ist möglich, einen LDPC-Code mittels eines zweiteiligen Graphs darzustellen, welcher der Paritätsprüfmatrix H zugeordnet ist. Der zweiteilige Graph besteht aus einem Satz variabler Knoten (VNs), einem Satz von Prüf-Knoten (CNs) und einem Satz von Kanten, welche die VNs mit den CNs verbinden. Variable Knoten sind den Spalten von H zugeordnet, und CNs sind den Reihen von H zugeordnet. Eine Kante verbindet einen VN mit einem CN, wenn in der entsprechenden Position der Paritätsprüfmatrix [7 und 8] ein nicht null betragender Eintrag existiert.It is possible to represent an LDPC code by means of a two-part graph associated with the parity check matrix H. The two-part graph consists of a set of variable nodes (VNs), a set of check nodes (CNs), and a set of edges connecting the VNs to the CNs. Variable nodes are assigned to the columns of H, and CNs are assigned to the rows of H. An edge connects one VN with a CN if there is a nonzero entry in the corresponding position of the parity check matrix [7 and 8].
In
Der Grad eines VN (bzw. eines CN) wird definiert als die Anzahl der von ihm ausgehenden Kanten. Die kanten-orientierten Grad-Verteilungs-Polynome sind definiert als wobei λi und pi die Bruchteile von Kanten sind, die mit den VNs und CNs des Grads i verbunden sind, dv,max der maximale VN-Grad ist und dc,max der maximale CN-Grad ist.The degree of a VN (or a CN) is defined as the number of edges emanating from it. The edge-oriented degree distribution polynomials are defined as where λ i and p i are the fractions of edges associated with the VNs and CNs of degree i, d v, max is the maximum VN degree, and d c, max is the maximum CN degree.
In
In der Praxis beginnt die Konzipierung eines LDPC-Codes mit der Suche nach eine geeigneten Gesamtheit von LDPC-Codes, welche die aufgrund der Grad-Verteilungs-Polynome gegebenen Beschränkungen erfüllt. Tatsächlich werden Gesamtheiten von LDPC-Codes durch die Grad-Verteilungs-Polynome parametrisiert. Generell werden unstrukturierte Gesamtheiten in Betracht gezogen, bei denen jede Permutation der Kanten unter den VNs und CNs zulässig ist, sofern die durch die Grad-Verteilungs-Polynome gegebenen Beschränkungen erfüllt sind [3].In practice, the design of an LDPC code begins with the search for an appropriate set of LDPC codes which satisfies the constraints imposed by the degree distribution polynomials. In fact, sets of LDPC codes are parameterized by the degree distribution polynomials. Generally, unstructured ensembles are considered in which any permutation of the edges among the VNs and CNs is allowed, provided the constraints given by the degree-distribution polynomials are met [3].
Es wurde auch eine teilweise strukturierte Gesamtheit binärer LDPC-Codes untersucht. Insbesondere wurden in Hinblick auf die Grad-Verteilungs-Polynome nicht sämtliche Kanten-Permutationen zugelassen. Es wurde insbesondere die Konnektivität einiger VNs des Grads 2 geprüft. Eine derartige Gesamtheit wurde in [5] erwogen, um die Error-Floor-Leistung binärer LDPC-Codes zu verbessern. Nach bestem Wissen der Erfinder wurde jedoch bisher eine ähnliche Teilstruktur noch nicht für nichtbinäre LDPC-Code-Gesamtheiten in Betracht gezogen.A partially structured set of binary LDPC codes was also examined. In particular, not all edge permutations were allowed with respect to the degree distribution polynomials. In particular, the connectivity of some Grade 2 VNs was examined. Such a set was considered in [5] to improve the error floor performance of binary LDPC codes. However, to the best of the inventors' knowledge, a similar substructure has not yet been considered for nonbinary LDPC code entities.
Auf der Empfängerseite wird ein Maximum-Likelihood-(ML-)Dekodieren durch Lösen der linearen Gleichungssysteme durchgeführt, wobei ein Vektor ist, der die gelöschten Codewort-Pakete enthält, xk ein Vektor ist, der die korrekt empfangenen Codewort-Pakete enthält, die Sub-Matrix ist, die aus den Spalten in der Paritätsprüfmatrix zusammengesetzt ist, die den gelöschten Codewort-Paketen entsprechen, und Hk die Sub-Matrix ist, die aus den Spalten in der Paritätsprüfmatrix zusammengesetzt ist, die den empfangenen Codewort-Paketen entsprechen. Anzumerken ist, dass die rechte Seite des Systems in der Gleichung (1) bekannt ist und es sich bei ihr um einen die Länge (n – k) aufweisenden Vektor von Paketen mit jeweils L Bits handelt, oder äquivalent dazu jeweils mit L/log2q Feld-Symbolen. Das System in Gleichung (1) kann mittels des Gaußschen Eliminations-Algorithmus durch Operationen gelöst werden, die an dem Galois-Feld vorgenommen werden, an dem der Code gebildet ist.At the receiver side, maximum likelihood (ML) decoding is achieved by solving the systems of linear equations performed, where is a vector containing the deleted codeword packets, x k is a vector containing the correctly received codeword packets, is the sub-matrix composed of the columns in the parity check matrix corresponding to the deleted codeword packets, and H k is the sub-matrix composed of the columns in the parity check matrix corresponding to the received codeword packets , It should be noted that the right side of the system is known in equation (1) and is a vector of packets of L bits each having the length (n-k), or equivalently each with L / log 2 q field symbols. The system in equation (1) can be solved by the Gaussian elimination algorithm through operations performed on the Galois field where the code is formed.
Aufgabe der Erfindung ist es, eine Verfahren zum Wiederherstellen verlorengegangener und/oder beschädigter Daten bereitzustellen, das eine verbesserte Leistungsfähigkeit, insbesondere eine verbesserte Codeword Error Rate (CER) aufweist.The object of the invention is to provide a method for recovering lost and / or damaged data, which has improved performance, in particular an improved codeword error rate (CER).
Die Lösung der Aufgabe erfolgt erfindungsgemäß durch die Merkmale des Anspruch 1. The object is achieved according to the invention by the features of claim 1.
Das erfindungsgemäße Verfahren dient dem Wiederherstellen verlorengegangener und/oder beschädigter Daten, die von einer Sendevorrichtung über einen Übertragungskanal an eine Empfangsvorrichtung übermittelt werden. Das Verfahren weist die folgenden Schritte auf:
- – Die Daten werden durch einen mit der Sendevorrichtung verbundenen Encoder codiert.
- – Anschließend werden sie von der Sendevorrichtung über einen Übertragungskanal an die Empfangsvorrichtung übermittelt.
- – Die Daten werden durch einen mit der Empfangsvorrichtung verbundenen Decoder decodiert, wobei verlorengegangene und/oder beschädigte Daten während des Decodierens wieder hergestellt werden.
- The data is encoded by an encoder connected to the transmitting device.
- - Then they are transmitted from the transmitting device via a transmission channel to the receiving device.
- The data is decoded by a decoder connected to the receiving device, whereby lost and / or damaged data are restored during decoding.
Das Codieren und Dekodieren findet unter Verwendung eines Low-Density-Parity-Check-Codes statt.Coding and decoding takes place using a low-density parity check code.
Der verwendete LDPC-Code ist in der Darstellungsform eines bipartiten Graphen darstellbar in Form von Check Nodes und Variable Nodes, die durch Kanten miteinander verbunden sind. Sofern ein Check Node durch eine Kante mit einem Variable Node im bipartiten Graphen verbunden ist, weist die Parity Check Matrix des verwendeten Codes an der korrespondierenden Stelle einen Nicht-Null-Eintrag aus dem Galoisfeld auf, aus dem der Code erzeugt wurde. Erfindungsgemäß ist die Anzahl V2 der Variable Nodes mit einem Grad von 2 kleiner als m/2, sodass gilt: V2 < m/2. Hierbei ist m die Anzahl der Paritätssymbole oder -pakete, die durch den Code erzeugt werden. Diese Variable Nodes mit einem Grad von 2 sind voneinander getrennt, d. h. sie sind nicht durch Kanten mit gemeinsamen Check Nodes verbunden. Anders ausgedrückt sind sämtliche Check Nodes, mit denen ein Variable Node mit einem Grad von 2 verbunden ist, unterschiedlich von den Check Nodes, mit denen ein anderer Variable Node mit einem Grad von 2 verbunden ist.The LDPC code used can be represented in the form of a bipartite graph in the form of check nodes and variable nodes that are connected by edges. If a check node is connected by an edge to a variable Node in the bipartite graph, the parity check matrix of the code used at the corresponding location has a non-zero entry from the Galois field from which the code was generated. According to the invention, the number V 2 of the variable nodes with a degree of 2 is smaller than m / 2, so that V 2 <m / 2. Where m is the number of parity symbols or packets generated by the code. These variable nodes with a degree of 2 are separated from each other, ie they are not connected by edges with common check nodes. In other words, all check nodes to which a variable node is connected with a degree of 2 are different from the check nodes to which another variable node with a degree of 2 is connected.
Weiterhin ist erfindungsgemäß die Anzahl VS der voneinander getrennten Variable Nodes mit einem Grad von 3
Auch die Variable Nodes mit einem Grad von 3 sind voneinander getrennt, d. h. nicht durch Kanten mit gemeinsamen Check Nodes verbunden. Durch die Floor-Funktion wird das Argument auf die nächst niedrigere Ganzzahl abgerundet.Also the variable nodes with a degree of 3 are separated from each other, i. H. not connected by edges with common check nodes. The floor function rounds off the argument to the next lower integer.
Erfindungsgemäß wird somit eine spezielle Klasse von LDPC-Codes vorgeschlagen, die eine besondere Konnektivität der Variable Nodes mit kleinen Graden (2 oder 3) aufweist. Auch die Anzahl dieser Variable Nodes mit kleinen Graden wird im Rahmen des erfindungsgemäßen Verfahrens kontrolliert. Durch das erfindungsgemäße Verfahren kann, wie im Weiteren dargestellt, die Codeword Error Rate (CER) verringert werden und insbesondere ein niedriger Error Floor erreicht werden.Thus, according to the invention, a special class of LDPC codes is proposed which has a particular connectivity of the variable nodes with small degrees (2 or 3). Also, the number of these variable nodes with small degrees is controlled in the context of the method according to the invention. As a result of the method according to the invention, the codeword error rate (CER) can be reduced and, in particular, a lower error floor can be achieved.
Es ist bevorzugt, dass Variable Nodes mit einem Grad ≠ 2, die nicht zu den voneinander getrennten Variable Nodes mit einem Grad von 3 gehören, durch einen Interleaver π mit den Check Nodes verbunden sind, sodass Kantenpermutationen zugelassen sind. Dies bedeutet, dass die Check Nodes, mit denen diese Variable Nodes durch die Kanten verbunden sind, variiert werden können, was bedeutet, dass die Position der Nicht-Null-Einträge in der Parity Check Matrix variiert wird. Das erfindungsgemäße Verfahren ist somit nicht auf einem bestimmten LDPC-Code (mit einer genau definierten Parity Check Matrix) limitiert. Vielmehr ist das erfindungsgemäße Verfahren auf eine Vielzahl verschiedener LDPC-Codes anwendbar, die die in Anspruch 1 genannten Anforderungen hinsichtlich der Anzahl getrennter Variable Nodes mit einem Grad von 2 und 3 erfüllen. Durch diese Anforderungen werden bestimmte Einträge der Parity Check Matrix des Codes festgelegt, sodass bzgl. der Variable Nodes, die diesen Einträgen entsprechen, keine Kantenpermuationen zugelassen sind. Alle übrigen Nicht-Null-Positionen der Parity Check Matrix können jedoch variiert werden.It is preferred that variable nodes with a degree ≠ 2 that do not belong to the separate variable nodes with a degree of 3 are connected to the check nodes through an interleaver π, so that edge permutations are allowed. This means that the check nodes to which these variable nodes are connected by the edges can be varied, which means that the position of the non-zero entries in the parity check matrix is varied. The method according to the invention is thus not limited to a specific LDPC code (with a precisely defined parity check matrix). Rather, the inventive method is applicable to a variety of different LDPC codes that meet the requirements mentioned in claim 1 in terms of the number of separate variable nodes with a degree of 2 and 3. These requirements specify certain entries of the code's Parity Check Matrix, so that no edge permutations are allowed with respect to the variable nodes corresponding to these entries. All other non-zero positions of the Parity Check Matrix, however, can be varied.
Weiterhin ist bevorzugt, dass die übrigen Variable Nodes mit einem Grad > 3 voneinander getrennt sind oder nicht voneinander getrennt sind. Weiterhin können Variable Nodes mit einem Grad von 3 existieren, die nicht voneinander getrennt sind und deren Anzahl somit nicht durch die Floor-Funktion gemäß Anspruch 1 definiert wird. Diese Floor-Funktion definiert die maximale Anzahl getrennter Variable Nodes mit einem Grad von 3.Furthermore, it is preferred that the remaining variable nodes are separated by a degree> 3 or are not separated from each other. Furthermore, variable nodes with a degree of 3 may exist which are not separated from one another and whose number is thus not defined by the floor function according to claim 1. This floor function defines the maximum number of separate variable nodes with a degree of 3.
Weiterhin ist es bevorzugt, dass der verwendete LDPC-Code ein nicht binärer LDPC-Code ist.Furthermore, it is preferable that the LDPC code used is a non-binary LDPC code.
Im Folgenden wird die Erfindung anhand von Figuren näher beschrieben.In the following the invention will be described in more detail with reference to figures.
Es zeigen: Show it:
Die
In
Auf der linken unteren Seite der
Die oberen Variable Nodes in
Die Notwendigkeit, Variable Nodes mit einem Grad von 3 vorzusehen, resultiert aus der Tatsache, dass Gradverteilungen, die sich an die Kapazität annähern, einen gewissen Anteil an Variable Nodes mit einem Grad von 3 verlangen. Forschungsarbeiten der Anmelderin haben ergeben, dass eine hohe Leistungsfähigkeit erzielt werden kann, sofern eine Anzahl von V3_S = floor ((m – 2 V2)/3) an voneinander getrennten Variable Nodes mit einem Grad von 3 vorgesehen werden. Tatsächlich ist es nicht möglich, eine größere Anzahl an solchen getrennten Variable Nodes mit einem Grad von 3 vorzusehen.The need to provide variable nodes with a degree of 3 results from the fact that degree distributions approaching capacity demand a certain level of variable nodes with a degree of 3. Research by the applicant have revealed that a high efficiency can be achieved, provided that a number of V 3_ S = floor ((m - 2 V 2) / 3) may be provided at separate variable nodes with a degree of third In fact, it is not possible to provide a larger number of such separate variable nodes with a degree of 3.
In
Die durch eine Simulation erlangten Performancekurven werden mit der Singleton-Grenze verglichen. Wir erkennbar ist, kann auch für kurze Codeword-Längen von n = 400 eine Performance nahe der Singleton-Grenz erreicht werden. Ferner ist kein Error Floor für die Codeword Error Rate bis mindestens 10–6 erkennbar.The performance curves obtained by a simulation are compared with the singleton limit. As can be seen, even for short codeword lengths of n = 400, a performance close to the singleton limit can be achieved. Furthermore, no Error Floor for the Codeword Error Rate is recognizable to at least 10 -6 .
Die vorgeschlagene Klasse nichtbinärer LDPC-Codes kann in jedem kommerziellen drahtlosen und drahtgebundenen Übertragungssystem verwendet werden. Wie hier aufgezeigt wurde, bietet das vorgeschlagene Übertragungsschema bereits bei Galois-Feldern niedriger Ordnung, d. h. mit niedriger Komplexität, hohe Leistungen, so dass es auch bei Plattformen mit niedriger Rechenleistung angewendet werden kann.The proposed class of non-binary LDPC codes can be used in any commercial wireless and wireline transmission system. As pointed out here, the proposed transmission scheme already offers low-order Galois fields, i. H. with low complexity, high performance, so that it can be applied even on platforms with low computing power.
Claims (5)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102014208996.4A DE102014208996B3 (en) | 2014-05-13 | 2014-05-13 | Procedure for recovering lost and / or corrupted data |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102014208996.4A DE102014208996B3 (en) | 2014-05-13 | 2014-05-13 | Procedure for recovering lost and / or corrupted data |
Publications (1)
Publication Number | Publication Date |
---|---|
DE102014208996B3 true DE102014208996B3 (en) | 2015-11-05 |
Family
ID=54326236
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE102014208996.4A Active DE102014208996B3 (en) | 2014-05-13 | 2014-05-13 | Procedure for recovering lost and / or corrupted data |
Country Status (1)
Country | Link |
---|---|
DE (1) | DE102014208996B3 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117459076A (en) * | 2023-12-22 | 2024-01-26 | 国网湖北省电力有限公司经济技术研究院 | MP decoding-based LDPC erasure code decoding method, system, equipment and storable medium |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102013213778B3 (en) * | 2013-07-15 | 2014-12-11 | Deutsches Zentrum für Luft- und Raumfahrt e.V. | A method for transmitting a message from a transmitter to a receiver via a communication medium by means of packet-level coding |
-
2014
- 2014-05-13 DE DE102014208996.4A patent/DE102014208996B3/en active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102013213778B3 (en) * | 2013-07-15 | 2014-12-11 | Deutsches Zentrum für Luft- und Raumfahrt e.V. | A method for transmitting a message from a transmitter to a receiver via a communication medium by means of packet-level coding |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117459076A (en) * | 2023-12-22 | 2024-01-26 | 国网湖北省电力有限公司经济技术研究院 | MP decoding-based LDPC erasure code decoding method, system, equipment and storable medium |
CN117459076B (en) * | 2023-12-22 | 2024-03-08 | 国网湖北省电力有限公司经济技术研究院 | MP decoding-based LDPC erasure code decoding method, system, equipment and storable medium |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE102009017540B4 (en) | Procedure for recovering lost and / or damaged data | |
DE102010035210B4 (en) | Method for recovering lost data and correcting corrupted data | |
DE602005004863T2 (en) | Method for puncturing LDPC channel codes | |
DE102014208996B3 (en) | Procedure for recovering lost and / or corrupted data | |
DE102013213778B3 (en) | A method for transmitting a message from a transmitter to a receiver via a communication medium by means of packet-level coding | |
DE102012203653B3 (en) | Method for restoring lost or damaged data, involves carrying-out operations, which are carried on equations that have common equation systems to be solved, once instead of certain times, so that decoding complexity is reduced | |
DE102014204828B4 (en) | Procedure for recovering lost and / or corrupted data | |
DE102013201422B3 (en) | Method for restoring lost and/or damaged data transmitted from transmitting device to receiving device, involves replacing current entry of LDPC parity check matrix with entry of Galois field until entry in matrix is modified | |
DE102011102503B3 (en) | Method for correcting corrupted data, involves generating tanner graph as representation of parity check-matrix of linear block code, and setting all variable nodes of tanner graph in unverified status | |
DE102013218311B4 (en) | Procedure for recovering lost and / or damaged data | |
DE102014214451B4 (en) | Procedure for recovering lost and / or corrupted data | |
DE102016222007B4 (en) | Method for transmitting data | |
DE102013223413B4 (en) | Procedure for recovering lost and / or corrupted data | |
DE102014216143B4 (en) | Procedure for recovering lost and / or corrupted data | |
DE102016201408B4 (en) | Method for transmitting data | |
DE102011111835B4 (en) | Procedure for recovering lost and / or damaged data | |
DE102017206718B4 (en) | Method for generating a class of non-binary LDPC codes | |
DE102013223801B4 (en) | Procedure for recovering lost and / or corrupted data | |
DE102011115100B3 (en) | Method for restoring lost and/or corrupted data, involves fragmenting output symbols of encoder to fit frame in physical layer, such that received fragments are set as output symbols of parallel encoders | |
DE102014210955B4 (en) | Procedure for recovering lost and / or corrupted data | |
DE102011015811B3 (en) | Device for coding k8L information-bits in e.g. universal mobile telecommunications system-applications, has coder for receiving m-symbol-parity-vector from m-symbol-vector, where elements in main-diagonals are formed as non-zero-elements | |
DE102013219863B4 (en) | A method of transmitting a message from a sender to a receiver via a communication medium using packet-level encoding | |
DE102010029113A1 (en) | Method for channel encoding of digital data in transmission system, involves determining random linear combination of code symbols by combining code symbols of block code and linear random fountain code | |
DE102018202377A1 (en) | Method and apparatus for reconstructing a first signal and a second signal by a common receiver | |
DE102011103564B3 (en) | Method for recovery of lost and/or corrupted data transmitted from transmitter to receiver, involves creating new linear block code and parity check matrix using algorithm by generating random vector permutation |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
R012 | Request for examination validly filed | ||
R016 | Response to examination communication | ||
R018 | Grant decision by examination section/examining division | ||
R020 | Patent grant now final |