-
Die Erfindung betrifft ein Verfahren zum Wiederherstellen verlorengegangener und/oder beschädigter Daten, die von einer Sendevorrichtung an eine Empfangsvorrichtung übertragen werden.
-
Problematisch in diesem Zusammenhang ist, wenn Daten über einen Übertragungskanal übertragen werden, auf dem korrelierte Fehler auftreten. Ein solcher Kanal kann beispielsweise durch einen Gilbert Channel modelliert werden. Ein solcher ist in 1 dargestellt. Es sind zwei Zustände dargestellt, wobei der Einfachheit halber angenommen wird, dass im ersten Zustand (guter Zustand) alle Codesymbole korrekt empfangen wurden, während im zweiten Zustand (schlechter Zustand) alle Codesymbole ausgelöscht wurden. Somit ergibt sich ein korrelierter Erasure Channel mit den Wahrscheinlichkeiten pGG, pGB, pBG, PBB.
-
Die durchschnittliche Auslöschungswahrscheinlichkeit ε = PB wird definiert als PB = pGB/(PBG + PGB).
-
Die durchschnittliche Dauer des schlechten Zustands, das heißt die durchschnittliche Dauer eines Bursts, der zur Auslöschung führt, wird definiert als ΔB ≙ 1/PBG.
-
Dieser Wert kann betrachtet werden als eine Maßeinheit für die Korrelation auf dem Übertragungskanal.
-
Korrelierte Fehler können bei einem Kanalcode zu starken Leistungseinbußen führen. Dies gilt insbesondere für viele moderne Kanalcodes wie beispielsweise LDPC Codes, deren Parity-Check-Matrix eine bestimmte Struktur aufweist. Eine solche Struktur ist für effizientes Codieren notwendig.
-
Informationen zum Stand der Technik können den folgenden Veröffentlichungen entnommen werden:
- [1] G. Liva, B. Matuz, Z. Katona, E. Paolini und M. Chiani, "On construction of moderate-length LDPC codes over correlated erasure channels," in Proc. IEEE Int. Conf. Commun. (ICC), Dresden, Germany, Juni 2009, S. 1–5
- [2] Boutros, A. Guill'en i F'abregas, E. Biglieri und G. Z'emor, "Low-density parity-check codes for nonergodic block-fading channels," 2007 IEEE Trans. Inform. Theory, Bd. 56, Nr. 9, Sept. 2010
- [3] Jin, A. Khandeskar und R. J. McEliece, "Irregular repeat-accumulate codes," Int. Symp. Furbo Codes, Brest, Frankreich, Sept. 2000
- [4] Digital Video Broadcasting (DVB); Second Generation Framing Structure, Channel Coding and Modulation Systems for Broadcasting, Interactive Services, News Gathering and Other Broadband Satellite Applications (DVB-S"), ETSI EN 302 307 v1.2.1, ETSI European Standard (Telecommunications series), Aug. 2002.
-
Eine Möglichkeit mit korrelierten Fehlern umzugehen ist die Anwendung von Interleavern (siehe Veröffentlichungen [1] und [4]). Alternativ können in der Parity-Check-Matrix eines Codes spezielle Strukturen angewendet werden (siehe Veröffentlichung [2]). In beiden Fällen werden die Spalten der Parity-Check-Matrix neu geordnet, so dass Informations- und Paritätssymbole vermischt werden.
-
Dies ist nachteilig, da hierdurch auf der Sendeseite ein zusätzlicher Delay erzeugt wird. Zur Verdeutlichung könnte angenommen werden, dass nach dem Encoder ein Blockinterleaver angeordnet ist, um die Codesymbole vor Kanalfehlern zu schützen. Die Anzahl der Informationssymbole am Eingang des Encoders wird als k definiert, die Anzahl der Codesymbole am Ausgang als n und die Anzahl der Paritätssymbole als m = n – k. Die durchschnittliche Datenrate am Ausgang des Encoders wird als dav bezeichnet und in Symbolen pro Sekunde ausgedrückt. Das Delay, das durch den Interleaver verursacht wird, kann geschätzt werden als n/dav. Entsprechende Annahmen gelten, wenn der Interleaver in die Parity-Check-Matrix des Codes durch Spaltenpermutationen eingebettet ist. Wenn beispielsweise Datenverbindungen in der optischen Freiraumkommunikation betrachtet werden, die Datenraten von mehreren Gigabit pro Sekunde aufweisen, können Interleaver-Längen von mehreren hunderten Millisekunden notwendig sein. Für delay-kritische Applikationen und/oder hochgradig korrelierte Kommunikationskanäle ist es wünschenswert, das Delay an der Sendeseite zu verringern.
-
Aufgabe der Erfindung ist es, ein Verfahren zum Übertragen von Daten bereitzustellen, bei dem das letztgenannte Ziel erreicht werden kann, während vorzugsweise die Leistungsfähigkeit des Codes aufrecht erhalten werden kann.
-
Die Lösung der Aufgabe erfolgt erfindungsgemäß durch die Merkmale des Anspruchs 1.
-
Das erfindungsgemäße Verfahren dient dem Wiederherstellen verloren gegangener und/oder beschädigter Daten, die von einer Sendevorrichtung an eine Empfangsvorrichtung übertragen wurden. Die Daten werden durch einen mit der Sendevorrichtung verbundenen Encoder unter Verwendung eines Low-Density-Parity-Check-Verfahrens codiert und anschließend über einen Übertragungskanal an die Empfangsvorrichtung übertragen. Dort werden die Daten durch einen mit der Empfangsvorrichtung verbundenen Decoder decodiert. Hierbei werden verlorene und/oder beschädigte Daten wiederhergestellt.
-
Erfindungsgemäß wird zum Codieren ein Irregular-Repeat-Accumulate (IRA) Encoder verwendet, indem eine Kopie der Informationssymbole u direkt dem Ausgang des Encoders zugeführt wird und parallel hierzu eine Kopie der Informationssymbole u einer Matrix H u T zugeführt werden, so dass gemäß der Zuordnung v = u·H u T Zwischensymbole v erzeugt werden.
-
Erfindungsgemäß ist ein erster Interleaver π1 für den Informationsteil der codierten Daten in der Matrix H u T integriert. Die Zwischensymbole werden mindestens einem Akkumulator mit der Transferfunktion g(D) = 1 + D zugeführt, der jedem aktuellen Zwischensymbol vi sein unmittelbar vorausgehendes Ausgangssymbol pi-1 hinzufügt, gemäß der Rekursion pi = vi + pi-1, wobei p die Ausgangssymbole des Akkumulators bezeichnet, die Paritätssymbole sind.
-
Anschließend werden die im Akkumulator generierten Paritätssymbole einem zweiten Interleaver π2 zugeführt und vom Encoder ausgegeben.
-
Erfindungsgemäß ist das erste Paritätssymbol somit am Ausgang des Encoders verfügbar, sobald die k Informationssymbole verfügbar sind. Anschließend ergibt sich das nächte Paritätssymbol aus dem vorhergehenden und dem korrespondierenden Zwischensymbol, wie durch die oben genannte Rekursion definiert. Hierdurch kann ein konstanter Strom von Paritätssymbolen am Ausgang des Encoders bereitgestellt werden, ohne dass ein nennenswertes Delay auf der Encoderseite entsteht (wenn man von einer ausreichenden Rechenkapazität ausgeht). Wie im weiteren Verlauf der vorliegenden Anmeldung dargestellt, erlaubt es die vorliegende Erfindung trotz des geringeren Delays die Leistungsfähigkeit des Codes nahezu aufrecht zu erhalten.
-
Es ist bevorzugt, dass der erste Interleaver π1 die Länge k aufweist, während der zweite Interleaver π2 die Länge m aufweist. k ist hierbei die Anzahl der Informationsbits des Codes, wobei m = n – k die Anzahl der Paritätsbits bezeichnet. Hierbei bezeichnet n die Blocklänge.
-
In einer bevorzugten Ausführungsform werden die Zwischensymbole v parallel L Akkumulatoren zugeführt, von denen jeder q = m/L Zwischensymbole verarbeitet.
-
Hierbei ist es bevorzugt, dass ein Akkumulator mit Index I das Element v[(I-1)q:Iq] des Vektors v der Zwischensymbole bearbeitet, wobei v[i:j] die Elemnte vi, ..., vj... des Vektors v bezeichnet. Weiterhin ist es bevorzugt, dass die Anzahl der Symboladditionen pro Akkumulator begrenzt ist auf q – 1 = m/L – 1.
-
Es ist ferner bevorzugt, dass der Initialzustand des mindestens einen Akkumulators null ist.
-
Weiterhin ist es bevorzugt, dass die Interleaver π1 und π2 Pseudo-Random-Interleaver sind.
-
In einer besonderen Ausführungsform ist es möglich, dass jeder Akkumulator eine Variable Anzahl von Zwischensymbolen berechnet. Beispielsweise kann der Akkumulator mit Index I v[i(I):j(I)] berechnen, wobei i(I) und j(I) für unterschiedliche I unterschiedlich ausgewählt werden können unter der Bedingung, dass i(I + 1) = j(I) + 1.
-
Im Folgenden werden bevorzugte Ausführungsformen der Erfindung anhand von Figuren erläutert.
-
Es zeigen:
-
1 ein Modell eines Gilbert-Erasure-Channels mit den Auslöschungswahrscheinlichkeiten εGψ = 0 und εBψ = 0,
-
2 ein Blockdiagramm eines systematischen IRA Encoders gemäß dem Stand der Technik,
-
3 ein Beispiel für eine Parity-Check-Matrix eines IRA Codes gemäß dem Stand der Technik,
-
4 ein Blockdiagramm eines Ausführungsbeispiels eines erfindungsgemäßen IRA Encoders,
-
5 ein Blockdiagramm eines weiteren Ausführungsbeispiels eines erfindungsgemäßen IRA Encoders,
-
6 ein Beispiel für eine unterbrochene Doppeldiagonale,
-
7 eine Darstellung der Leistungsfähigkeit des erfindungsgemäßen Verfahrens verglichen zum Stand der Technik.
-
1 bis 3 wurden bereits in Zusammenhang mit dem Stand der Technik erläutert.
-
4 zeigt ein Blockdiagramm eines ersten Ausführungsbeispiels eines IRA Encoders gemäß der vorliegenden Erfindung. Hierbei wird deutlich, dass der Informationsteil und der Paritätsteil getrennt einem Interleaver zugeführt werden. Der Interleaver für den Informationsteil π1 ist direkt in die Matrix Hu integriert, so dass sich die Matrix H u = Hu·π1 ergibt. Der zweite Interleaver π2 für den Paritätsteil wird auf die Paritätssymbole nach ihrer Erzeugung angewandt.
-
Ein Nachteil des dargestellten Encoders ist, dass die Paritätssymbole am Ausgang des Decoders nicht unmittelbar bereitgestellt werden können, sobald die k Informationssymbole vorhanden sind. Dies liegt daran, dass der Interleaver π2 im schlechtesten Fall alle Paritätssymbole berechnen muss, bevor das erste am Ausgang des Encoders bereitgestellt wird. Wenn davon ausgegangen wird, dass v im Voraus berechnet wird, ist das Delay durch den Interleaver π2 identisch mit der Zeit, die benötigt wird, um die m Paritätssymbole zu berechnen. Unter einer Berechnung von v im Voraus wird verstanden, dass, sobald am Encoder ein Informationsbit eintrifft, dieses Bit in den entsprechenden Gleichungen für v verarbeitet wird, wobei sich die Elemente von v aus Summen von Informationsbits zusammensetzen. Nachdem also alle k Informationsbits im Decoder vorhanden sind, ist v bereits berechnet. Dies bedeutet, dass das Delay gegeben ist durch die Zeit, die benötigt wird, um m – 1 Symboladditionen durchzuführen. Die kann für kleine Symbolgrößen und/oder kleine Werte für m vernachlässigbar sein.
-
Für den Fall, dass der durch π2 verursachte Berechnungsdelay ein Problem darstellt, kann der Encoder wie folgt modifiziert werden: Der einzelne Akkumulator gemäß 4 kann, wie in 5 dargestellt, durch ein Set von L Akkumulatoren ersetzt werden, wobei jeder q = m/L Zwischensymbole verarbeitet. Hierbei ist vorgesehen, dass ein Akkumulator mit Index I das Element v[(I-1)q:Iq] des Vektors v der Zwischensymbole bearbeitet, wobei v[i:j] die Elemente vi,..., vj... des Vektors v bezeichnet. Hierdurch ist es möglich, die Paritätssymbole parallel zu erzeugen. In diesem Fall ist es bevorzugt, dass die Anzahl der Symboladditionen pro Akkumulator begrenzt ist auf q – 1 = m/L – 1. Der Einfachheit halber wurde hier angenommen, dass m ein Vielfaches von L ist. Nachdem die Paritätssymbole verfügbar sind, wird das Interleaving der Symbole durchgeführt. Der Interleaver πu entspricht somit in seiner Funktion dem Interleaver π2 in 4.
-
Die in 5 dargestellte Ausführungsform erlaubt es, den Berechnungsdelay für die Paritätssymbole auf ein Minimum zu reduzieren, indem die Größe L geeignet gewählt wird. Durch das Verwenden von L parallelen Akkumulatoren (mit dem Anfangszustand 0) wird die korrespondierende Doppeldiagonale der Paritätscheckmatrix L-Male unterbrochen (siehe 6). Genauer ausgedrückt verbleibt die Hauptdiagonale unverändert, während die zweite Subdiagonale Unterbrechungen aufweist. Hierdurch wird ein Set von L Spalten (Variable Nodes) erhalten, die einen geringeren Grand von 1 anstelle von 2 aufweisen. Die Verbindung dieser variable Nodes im Graphen muss mit besonderer Vorsicht vorgenommen werden, um Einbußen in der Leistungsfähigkeit des Codes zu verhindern. Beispielsweise sollten variable Nodes mit einem Grad von 1 an starke Check Nodes gekoppelt werden. Starke Check Nodes sind solche, die mit variable Nodes mit einem hohen Grad verbunden sind und ggf. selber wenig Nachbarn haben.
-
Ein Beispiel für eine unterbrochene Doppeldiagonale m = 24, L = 4 und q = 6 ist in 6 dargestellt.
-
In 7 ist die Channel Erasure Rate in Abhängigkeit von der durchschnittlichen Auslöschungswahrscheinlichkeit auf dem Gilbert Channel für verschiedene durchschnittliche Error-Burst-Längen dargestellt. Es wird von einem Permuted Cracked IRA (PCIRA) Code ausgegangen. Es werden drei Codes miteinander verglichen: Ein klassischer (4104,2052) IRA-Code, ein (4104,2052) Fully Interleaved IRA Code und ein (4104,2052) PCIRA mit L = 54. Hierbei dient der Fully Interleaved IRA Code als ein Vergleich für die Leistungsfähigkeit. Es wird ein Interleaver der Länge n verwendet, der die Paritäts- und Informationssymbole vermischt. Hierdurch ergibt sich ein zusätzlicher Delay auf der Sendeseite von n/dav vergleichen zum klassischen IRA Code. Im Gegensatz hierzu erzeugt der PCIRA Code kein Delay außer der Zeit, die benötigt wird, um die m/L – 1 = 37 Symboladditionen durchzuführen. 7 stellt die Leistungsfähigkeit der drei Codes dar. Es ist erkennbar, dass der klassische IRA Code eine relativ schwache Leistung aufweist, sobald die Fehler auf dem Kanal korreliert auftreten. Die Verwendung eines Interleavers verbessert die Leistung signifikant (allerdings wie dargestellt, auf Kosten eines zusätzlichen Delays). Der PCIRA Code zeigt eine ähnliche Leistung wie der IRA Code mit Interleaver für verschiedene Kanalkorrelationen, ohne dass ein zusätzliches Delay für den Interleaver entsteht.
-
Die Erfindung kann somit besonders in delay-kritischen Anwendungen verwendet werden.
-
ZITATE ENTHALTEN IN DER BESCHREIBUNG
-
Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
-
Zitierte Nicht-Patentliteratur
-
- G. Liva, B. Matuz, Z. Katona, E. Paolini und M. Chiani, ”On construction of moderate-length LDPC codes over correlated erasure channels,” in Proc. IEEE Int. Conf. Commun. (ICC), Dresden, Germany, Juni 2009, S. 1–5 [0007]
- Boutros, A. Guill'en i F'abregas, E. Biglieri und G. Z'emor, ”Low-density parity-check codes for nonergodic block-fading channels,” 2007 IEEE Trans. Inform. Theory, Bd. 56, Nr. 9, Sept. 2010 [0007]
- Jin, A. Khandeskar und R. J. McEliece, ”Irregular repeat-accumulate codes,” Int. Symp. Furbo Codes, Brest, Frankreich, Sept. 2000 [0007]
- Digital Video Broadcasting (DVB); Second Generation Framing Structure, Channel Coding and Modulation Systems for Broadcasting, Interactive Services, News Gathering and Other Broadband Satellite Applications (DVB-S”), ETSI EN 302 307 v1.2.1, ETSI European Standard (Telecommunications series), Aug. 2002 [0007]