-
Die vorliegende Erfindung betrifft ein Verfahren zur Übertragung von Daten zwischen einem ersten Benutzerendgerät und einem zweiten Benutzerendgerät in einem 5G Telekommunikationssystem sowie ein entsprechendes Benutzerendgerät für die Übertragung von Daten.
-
Zahlreiche Verfahren für die Übertragung von Daten sind aus dem Stand der Technik bekannt. Aus
US 2019/0007067 A1 ist ein Verfahren zur Übertragung von Daten zwischen einem ersten Benutzerendgerät und einem zweiten Benutzerendgerät bekannt. Zudem ist aus
US 2005/0160349 A1 ein Verfahren zur Übertragung von Daten unter Verwendung eines binären Akkumulators bekannt. Erst kürzlich wurde durch die 3GPP-Gruppe ein neuer Typ von Codes zur Vorwärtsfehlerkorrektur (auch als forward error correction oder FEC bezeichnet) für den anstehenden 5G Mobilfunkstandard (auch bezeichnet als New Radio oder NR) standardisiert. Die neuen Codes, die an die Stelle bisher verwendeter Turbo-Codes treten, sind sogenannte Low-Density-Parity-Check (LDPC) Codes mit einer Protograph-Struktur (siehe hierzu die Literaturangabe [1]).
-
LDPC Codes sind im Allgemeinen bekannt. Diese wurden im Jahr 1960 entwickelt und wurden seitdem stetig weiterentwickelt. Dabei werden senderseitig die zu übertragenden Datenbits unter Verwendung einer Generatormatrix codiert. Bei der Codierung werden zusätzliche Paritätsbits erzeugt, die gemeinsam mit den zu übertragenden Datenbits ein Codewort bilden. Anschließend wird das berechnete Codewort über einen verlustbehafteten Übertragungskanal an einen Empfänger übertragen. Seitens des Empfängers kann dann unter Verwendung einer Paritätskontrollmatrix (parity check matrix) geprüft werden, ob das übertragene Codewort fehlerfrei übertragen wurde oder ob bei der Übertragung einzelne Bits des Codeworts verfälscht wurden. Die Paritätskontrollmatrix kann dabei aus der Generatormatrix berechnet werden.
-
Üblicherweise wird seitens des Empfängers ein iteratives Decodierverfahren eingesetzt, um aus den empfangenen Daten sowie der Kontrollmatrix das ursprünglich gesendete Codewort zu berechnen. Dabei werden zwischen sogenannten Variable Nodes und Check Nodes Nachrichten übertragen, wobei die jeweiligen Nodes eine Schätzung für die Werte der jeweils benachbarten Nodes vornehmen. Im Zusammenhang mit den Variable Nodes und den Check Nodes wird auch häufig von der sogenannten Tanner Graph Darstellung (auch als bipartitde graph bezeichnet) gesprochen. Wenn nach einer bestimmten Anzahl an Iterationen die Bedingungen aus den Paritätsgleichungen der Paritätskontrollmatrix erfüllt sind, ist das korrekte Codewort ermittelt. Das LDPC-Verfahren ist u.a. deshalb besonders vorteilhaft, da es ein parallelisiertes Codier- und Decodierverfahren mit einer sehr hohen Leistungsfähigkeit bietet.
-
Insbesondere beruht der Aufbau der neuen Codes (beschrieben in der Literaturangabe [2]) auf einer seriellen Aneinanderreihung eines äußeren Codes (ein LDPC Code mit hoher Rate) mit einem inneren Code, der einem LT Code (Luby-Transformations-Code, siehe Literaturangabe [4]) ähnelt. Insofern wird dadurch eine Codestruktur realisiert, die sehr an einen Raptor-Code (siehe die Literaturangaben [3] und [5]) erinnert. Die Codefamilie ist hinsichtlich der Blocklänge und der Coderate besonders anpassungsfähig. Eingangsblöcke bis zu 40 Bits werden unterstützt, obwohl das Design dieser Systeme längere Blöcke (die im sogenannten enhanced mobile broadband bzw. eMBB-Profil des 5G Standards typisch sind) bevorzugt.
-
Kurze Blöcke (also kurze Nachrichten mit einer Länge von einigen zehn oder 100 Bits) werden häufig bei anderen Anwendungsszenarien des 5G Standards verwendet, insbesondere bei der Kommunikation zwischen einzelnen Vorrichtungen sowie bei sogenannten ultra-reliable low-latency communications (ULLCs) Anwendungen. In dem zuletzt genannten Anwendungsszenario müssen kurze Datenblöcke mit sehr hoher Zuverlässigkeit übertragen werden. Insofern sind niedrige Blockfehlerraten (auch bezeichnet als block error rate oder BER) bzw. Paketfehlerraten erforderlich, die durch die aktuell im 5G Standard verwendeten LDPC Codes noch nicht bereitgestellt werden können.
-
Insbesondere werden die 5G NR LDPC Codes im Bereich kurzer Blocklängen (d. h. für Nachrichten mit einigen 10 Bits) durch mehrere anderer Lösungen übertroffen. In diesem Zusammenhang wird auf die 1 verwiesen. In dieser Fig. ist die Leistungsfähigkeit einzelner Codes mit Codewortlängen von 128 Bits und Nachrichtenlängen von 64 Bits dargestellt. Die Leistungsfähigkeit im Sinne der Blockfehlerrate (also die Wahrscheinlichkeit, eine falsche Nachricht zu decodieren) ist gegenüber dem Signal-zu-Stör-Verhältnis (singnal to noise ratio bzw. SNR) in Eb/N0 (Energie pro Informationsbit über die spektrale Rauschleistungsdichte) in dB dargestellt. Sämtliche Graphen sind für AWGR-Kanäle (AWGR steht für additives weißes Gaußsches Rauschen (im Englischen als additive white Gaussian noise oder AWGN bezeichnet) mit BPSK-Modellierung (BPSK steht für binäre Phasenumtastung bzw. im Englischen binary phase shift keying). Bei beiden Diagrammen der 1 sind einige theoretische Grenzen zu erkennen:
- • die sogenannte Random Coding Bound (RCB) - dies ist eine obere Grenze der Fehlerwahrscheinlichkeit des bestmöglichen Codes mit den Parametern (128,64),
- • die sogenannte Sphere Packing Bound (SPB59) - dies ist eine untere Grenze der Fehlerwahrscheinlichkeit des bestmöglichen Codes mit Parametern (128,64), und
- • die sogenannte Normal Approximation (NA) - dies ist eine Annäherung zu der Fehlerwahrscheinlichkeit des bestmöglichen Codes mit Parametern (128,64)
-
Im linken Diagramm der 1 ist die Leistungsfähigkeit verschiedener LDPC - Codes dargestellt:
- • ein sogenannter accumulate-repeat-accumulate (ARA) LDPC- Code (siehe hierzu die Literaturangabe [6]),
- • ein LDPC-Code des CCSDS Uplink-Standards (siehe hierzu die Literaturangabe [7]), und
- • ein LDPC-Code des 5G Standards (basierend auf dem Basisgraph Nummer 2 (BG2), siehe hierzu die Literaturangabe [2]).
-
Im rechten Diagramm der 1 ist die Leistungsfähigkeit eines (128,64) Polarcodes mit sukzessiver Cancellation-Dekodierung und einer (128,64) Aneinanderreihung eines Polarcodes mit einem 7-Bit CRC unter Verwendung sukzessiver Cancellation-Listen-Dekodierung dargestellt. Wie in diesem Diagramm zu erkennen ist, übertrifft die Polarcode-Aneinanderreihung die im linken Diagramm gezeigten 5G LDPC-Codes deutlich.
-
Auch wenn die Leistungsfähigkeit bei mittleren und bei hohen Fehlerraten nur sehr schwer erhöht werden kann (dies ist der Bereich, für den 5G LDPC-Codes entworfen wurden), so ist zu erkennen, dass bei hohen SNRs (also bei niedrigen Fehlerwahrscheinlichkeiten) die Leistungsfähigkeit des 5G LDPC-Codes dadurch verbessert werden kann, dass ein zusätzlicher Verarbeitungsblock an den 5G LDPC Codierer bzw. Decodierer hinzugefügt wird. Dadurch wird es ermöglicht, einen 5G LDPC Code bereitzustellen, der insbesondere bei den Anwendungen leistungsfähiger ist, die eine Übertragung kurzer Datenpakete mit niedrigen Blockfehlerwahrscheinlichkeiten erfordern.
-
Aufgabe der vorliegenden Erfindung ist es daher, ein Verfahren zur Erhöhung der Leistungsfähigkeit von LDPC Codes bei hohen SNR bereitzustellen, das beim 3GPP NR Standard (5G) eingesetzt werden kann. Zur Lösung der vorstehend genannten Aufgabe wird ein Verfahren zur Übertragung von Daten zwischen einem ersten Benutzerendgerät und einem zweiten Benutzerendgerät in einem 5G Telekommunikationssystem vorgeschlagen, wobei das Verfahren die nachfolgenden Schritte aufweist:
- - Erzeugung eines Codeworts c, das einen Informationsvektor u' mit k' Informationsbits und einen Paritätsvektor p mit m Paritätsbits umfasst;
- - Verarbeitung des Codeworts c durch ein Nachbearbeitungsverfahren, um ein verarbeitetes Codewort c' zu erhalten; und
- - Übertragung des verarbeiteten Codeworts c' von dem ersten Benutzerendgerät zu dem zweiten Benutzerendgerät; dadurch gekennzeichnet, dass die Verarbeitung des Codeworts c die nachfolgenden Schritte aufweist:
- - Unterteilen des Paritätsvektors p in einen ersten Paritätsteilvektor p1 mit m1 Paritätsbits und einem zweiten Paritätsteilvektor p2 mit m2 Paritätsbits;
- - Erzeugung eines verarbeiteten zweiten Paritätsteilvektors p2', indem der zweite Paritätsteilvektor p2 durch einen binären Akkumulator geleitet wird; wobei
- - der binäre Akkumulator den zweiten Paritätsteilvektor p2 wie folgt verarbeitet:
wobei
- - p2'(i) das i-te Bit des verarbeiteten zweiten Paritätsteilvektors p2', p2'(i - 1) das (i - 1)-te Bit des verarbeiteten zweiten Paritätsteilvektors p2' und p2(i) das i-te Bit des zweiten Paritätsteilvektors p2 bezeichnet; und
- - das verarbeitete Codewort c' den Informationsvektor u', den ersten Paritätsteilvektor p1 und den verarbeiteten zweiten Paritätsteilvektor p2' aufweist.
-
Die der vorliegenden Anmeldung zugrunde liegenden Forschungsarbeiten haben ergeben, das durch die zusätzliche Verarbeitung des Codeworts c gemäß dem erfindungsgemäßen Nachbearbeitungsverfahren erreicht wird, dass insbesondere bei hohen SNRs die Fehlerfälligkeit bei der Übertragung der Daten signifikant reduziert wird. Dadurch kann ein besonders robustes Datenübertragungsverfahren bereitgestellt werden, das sich insbesondere für fehlersensitive Anwendungen, wie beispielsweise den zuvor genannten ULLCs eignet. Wie in der vorstehenden Gleichung gezeigt, werden die einzelnen Werte des verarbeiteten zweiten Paritätsteilvektor p2'(i) jeweils aus dem (i - 1)-ten Wert des verarbeiteten zweiten Paritätsteilvektor p2' und dem i-ten Wert des ursprünglichen (nicht verarbeiteten) zweiten Paritätsteilvektor p2 berechnet. Da bei der Berechnung des ersten Wertes des verarbeiteten zweiten Paritätsteilvektors p2' kein (i - 1)-ter Wert des verarbeiteten zweiten Paritätsteilvektors p2' vorhanden ist, wird in diesem Fall p2'(0) = 0 angenommen.
-
Gemäß einer bevorzugten Ausführungsform des erfindungsgemäßen Verfahrens kann vorgesehen sein, dass ein Nachbearbeitungsverhältnis (auch als post processing ratio PPR bezeichnet) als m2 / (m1 + m2) definiert ist und dass das Nachbearbeitungsverhältnis einen Wert von 0,4 < PPR < 0,6 aufweist. Anders ausgedrückt, können gemäß dieser Ausführungsform also 40 bis 60 % der Paritätsbits durch den Akkumulator geleitet und durch diesen verarbeitet werden. Durch die Verwendung eines Nachbearbeitungsverhältnisses, das zwischen 0,4 und 0,6 liegt, kann der Effekt der reduzierten Fehleranfälligkeit bei hohen SNRs verstärkt werden.
-
Gemäß einer weiteren bevorzugten Ausführungsform des erfindungsgemäßen Verfahrens kann vorgesehen sein, dass das Nachbearbeitungsverhältnis (PPR) gleich 0,5 ist. Die der vorliegenden Anmeldung zugrunde liegenden Arbeiten haben ergeben, dass sich eine Bearbeitung von 50 % der Paritätsbits als besonders vorteilhaft erweist, wodurch eine besonders deutlich reduzierte Fehleranfälligkeit bei hohen SNRs gewährleistet wird.
-
Ferner kann gemäß einer Ausführungsform des erfindungsgemäßen Verfahrens vorgesehen sein, dass das verarbeitete Codewort c' aus einer Aneinanderreihung des Informationsvektors u', dem ersten Paritätsteilvektor p1 und dem verarbeiteten zweiten Paritätsteilvektor p2' besteht. In diesem Fall ergibt sich das verarbeitete Codewort aus der Gleichung c' = (u' | p1 | p2').
-
Auch kann gemäß der Erfindung vorgesehen sein, dass der Informationsvektor u' einem punktierten Informationsvektor u entspricht, der dadurch erzeugt wird, dass von dem Informationsvektor u, der von dem ersten Benutzerendgerät zu dem zweiten Benutzerendgerät übertragen werden soll, einzelne Bits entfernt werden.
-
Des Weiteren wird zur Lösung der vorstehend beschriebenen Aufgabe ein Benutzerendgerät für die Übertragung von Daten zu einem anderen Endgerät in einem 5G Telekommunikationssystem vorgeschlagen, wobei das Benutzerendgerät eine Speichereinheit, eine Prozessoreinheit sowie eine Netzwerkeinheit aufweist, wobei die Prozessoreinheit dazu ausgelegt ist,
- - ein Codewort c zu generieren, das einen Informationsvektor u' mit k' Informationsbits und einen Paritätsvektor p mit m Paritätsbits aufweist;
- - das Codewort c durch ein Nachbearbeitungsverfahren zu verarbeiten, sodass ein verarbeitetes Codewort c' ermittelt wird; und
- - das verarbeitete Codewort c' von dem ersten Benutzerendgerät zu dem zweiten Benutzerendgerät zu übertragen;
dadurch gekennzeichnet, dass die Prozessoreinheit dazu ausgelegt ist, zur Verarbeitung des Codeworts c die nachfolgenden Schritte durchzuführen:
- - den Paritätsvektor p in einen ersten Paritätsteilvektor p1 mit m1 Paritätsbits und einen zweiten Paritätsteilvektor p2 mit m2 Paritätsbits zu unterteilen;
- - einen zweiten verarbeiteten Paritätsteilvektor p2' zu erzeugen, indem der zweite Paritätsteilvektor p2 durch einen binären Akkumulator geleitet wird; wobei
- - der binäre Akkumulator dazu ausgelegt ist, den zweiten Paritätsteilvektor p2 in den verarbeiteten Paritätsteilvektor p2' wie folgt zu verarbeiten:
wobei
- - p2'(i) das i-te Bit des verarbeiteten zweiten Paritätsteilvektors p2', p2'(i - 1) das (i -1)-te Bit des verarbeiteten zweiten Paritätsteilvektors p2' und p2(i) das i-te Bit des zweiten Paritätsteilvektors p2 bezeichnet; und
- - das verarbeitete Codewort c' den Informationsvektor u', den ersten Paritätsteilvektor p1 und den verarbeiteten zweiten Paritätsteilvektor p2' aufweist.
-
Gemäß der vorliegenden Erfindung kann die Leistungsfähigkeit der bislang beim 3GPP NR Standard (5G) verwendeten LDPC Codes bei hohen SNR (also bei niedrigen Fehlerwahrscheinlichkeiten) durch die nachfolgenden Prinzipien erhöht werden:
- 1.) Einführung eines Nachbearbeitung-Blocks auf der Codierer-Seite, der eine Untermenge der Paritätsbits als Eingang verwendet, die durch den 5G NR LDPC-Codierer erzeugt werden, wobei der zusätzliche Verarbeitungsblock insbesondere einen binären Akkumulator aufweist, und
- 2.) Auf der Decoder-Seite kann ein A-Posteriori Probability (APP) Decodierer für den Akkumulator in einer seriellen Aneinanderreihung mit dem bisher verwendeten 5G NR LDPC-Decodierer angeordnet werden. Der APP-Akkumulator-Decodierer und der 5G NR LDPC Decodierer können dabei insbesondere iterativ Soft-Information (insbesondere Wahrscheinlichkeitswerte) miteinander austauschen, wobei bevorzugt extrinsische Informationen zwischen dem APP-Akkumulator-Decodierer und dem 5G NR LDPC Decodierer ausgetauscht werden können.
-
Bei der 5G LDPC Codierung einer Nachricht u=(u1,u2,...,uk) mit k Bits wird üblicherweise ein Codewort c=(c1,c2,...,cn) mit n Bits erzeugt, wobei n > k ist und die Coderate definiert ist als R = k / n.
-
Das Codewort kann in zwei Teile aufgeteilt und wie folgt dargestellt werden:
wobei u' einen Vektor mit k' < k Bits bezeichnet, der dadurch ermittelt wird, dass einige Bits der Nachricht u punktiert (entfernt) werden (wie dies beim 5G LDPC Prinzip spezifiziert ist). Der Vektor p weist m Paritätsbits auf, wobei m+k'=n ergibt.
-
Bei dem erfindungsgemäßen Verfahren können insbesondere die nachfolgenden Grundsätze zum Einsatz kommen:
- • Am Codierer-Ausgang kann der Vektor p an einen Demultiplexer übertragen werden, der eine Teilmenge an m2 Bits extrahiert, die den Vektor p2 darstellen. Das Verhältnis m2/m kann dabei als Nachbearbeitungsverhältnis (bzw. als PPR - post-processing ratio) bezeichnet werden. Ein PPR=0 bedeutet dabei, dass keine Modifizierung des Codeworts vorgenommen wird. Ein PPR=1 bedeutet hingegen, dass alle Paritätsbits des Codeworts modifiziert werden.
- • Der Vektor p2 wird anschließend durch einen binären Akkumulator geleitet, der aus dem Vektor p2 einen verarbeiteten Vektor p2' nach dem in der 2 gezeigten Prinzip erzeugt. Dabei stellen x und z den generischen Eingang und Ausgang des Akkumulators dar.
- • Optional können die einzelnen Werte des Vektors p2 vor der Berechnung des verarbeiteten Vektors p2' vertauscht werden. Untersuchungen zeigen, dass ein Vertauschen der Werte der p2 keine nachteilige Auswirkung auf das Verfahren hat.
- • Nachdem der verarbeitete Vektor p2' ermittelt wurde, kann das finale Codewort durch die nachfolgende Gleichung ermittelt werden:
wobei das ursprüngliche (nicht verarbeitete) Codewort c = (u' | p1 | p2) ist und die Berechnung des verarbeiteten Codeworts c' in der 3 dargestellt ist.
- • Auf der Decodierer-Seite kann der beobachtete Kanalausgang abgebildet und die log-likelihood ratios (LLRs) für die Codewort-Bits erlangt werden. Diese können wie folgt bezeichnet werden:
- • Insgesamt können drei Blöcke von LLRs unterschieden werden
- o Lch(u'):
- dies sind die LLRs für die Bits, die u' darstellen,
- o Lch(p1):
- dies sind die LLRs für die Bits, die p1 darstellen, und
- o Lch(p2'):
- dies sind die LLRs für die Bits, die p2' darstellen.
-
Die LLRs, die im Zusammenhang mit u' und p1 stehen, werden direkt an den Eingang des 5G NR LDPC Decodierer geleitet. Die LLRs, die im Zusammenhang mit p2' stehen, werden stattdessen an den Eingang eines a-posteriori probability (APP) soft input soft output (SISO) Decodierer geleitet, der dem Akkumulator entspricht. Dieser kann beispielsweise auf einen BCJR-Decodierer basieren, der auf dem two-state Trellis des binären Akkumulators arbeitet (siehe hierzu die Literaturangabe [8]).
- • Die exzentrische Information, die durch den Akkumulator APP Decodierer erzeugt wird, kann anschließend an den Eingang des LDPC-Decodierers geleitet werden (siehe 4, LAD(p2)).
- • Der 5G NR LDPC Decodierer kann bevorzugt Soft-Schätzungen (Wahrscheinlichkeitswerte) für alle Codewort-Bits erzeugen. Die Soft-Schätzungen LDA(p2) der Codewort-Bits p2 können anschließend an den Akkumulator APP Decodierer zurück gespeist werden, der diese als a-priori Information verwenden kann, um die durch LAD(p2) gegebene Schätzung zu verbessern.
- • Das Decodier-Verfahren kann nach dem Prinzip eines Turbo-Verfahrens für eine bestimmte Anzahl an Iterationen wiederholt werden.
-
Ein Beispiel für die erreichbare Verbesserung bei niedrigen Fehlerwahrscheinlichkeiten ist in der 5 dargestellt. In dieser Figur ist insbesondere zu erkennen, dass bei einem besonders hohen SNR eine signifikante Verbesserung (Reduzierung) der Blockfehlerrate im Vergleich zu einem üblichen 5G NR LDPC Codierverfahren (also ohne das zusätzliche Nachbearbeitungsverfahren) erreicht werden kann. In dem Beispiel, das in der 5 gezeigt ist, ist die Eingangsblocklänge k=80 Bits, die Codewortlänge beträgt 160 Bits (dies ergibt eine Rate von 1/2). Von den insgesamt 80 Eingangsbits sind 16 Bits punktiert. Dies bedeutet, dass der Vektor u' aus 64 Bits und der Vektor p aus 96 Bits besteht. Von den 96 Bits, die den Vektor p darstellen, wurden in diesem Beispiel die letzten 48 Bits durch den Akkumulator geleitet. Dies spricht einem PPR von 0,5. Bei hohen SNRs ist ein deutlicher Gewinn der Leistungsfähigkeit zu erkennen (ca. 0,3 dB bei einer Blockfehlerrate von 10-4).
-
Literaturangaben
-
- [1] J. Thorpe, „Low-density parity-check (LDPC) codes constructed from protographs," IPN progress report 42.154 (2003): 42-154.
- [2] T. Richardson und S. Kudekar, „Design of Low-Density Parity Check Codes for 5G New Radio," in IEEE Communications Magazine, Band 56, Nr. 3, S. 28-34, März 2018.
- [3] Chen, Tsung-Yi, Kasra Vakilinia, Dariush Divsalar, und Richard D. Wesel. „Protograph-based raptor-like LDPC codes." IEEE Transactions on Communications 63, Nr. 5 (2015): 1522-1532.
- [4] M.Luby, „LT Codes", The 43rd Annual IEEE Symposium on Foundations of Computer Science, 2002.
- [5] Amin Shokrollahi, „Raptor Codes," IEEE Transactions on Information Theory, Band 52, S. 2551-2567, 2006.
- [6] Divsalar, Dariush, Sam Dolinar, Christopher R. Jones, und Kenneth Andrews. „Capacity-approaching protograph codes." IEEE Journal on Selected Areas in Communications 27, Nr. 6 (2009).
- [7] Divsalar, Dariush, Sam Dolinar, und Christopher Jones. „Short protograph-based LDPC codes." Military Communications Conference, 2007. MILCOM 2007. IEEE. IEEE, 2007.
- [8] Ryan, William, und Shu Lin. Channel codes: classical and modern. Cambridge University Press, 2009.