AT7900U1 - Verfahren zur rückgewinnung der information aus kanalcodierten datenströmen - Google Patents
Verfahren zur rückgewinnung der information aus kanalcodierten datenströmen Download PDFInfo
- Publication number
- AT7900U1 AT7900U1 AT0014604U AT1462004U AT7900U1 AT 7900 U1 AT7900 U1 AT 7900U1 AT 0014604 U AT0014604 U AT 0014604U AT 1462004 U AT1462004 U AT 1462004U AT 7900 U1 AT7900 U1 AT 7900U1
- Authority
- AT
- Austria
- Prior art keywords
- decoder
- map
- turbo
- max
- log
- Prior art date
Links
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/29—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 combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes
- H03M13/2957—Turbo codes and decoding
- H03M13/2975—Judging correct decoding, e.g. iteration stopping criteria
-
- 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/29—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 combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes
- H03M13/2957—Turbo codes and decoding
Landscapes
- Physics & Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Error Detection And Correction (AREA)
Abstract
Bei einem Verfahren bzw. einer Programmlogik zur Rückgewinnung der Nutzinformation, insbesondere der Nutzinformation wie sie in digitaler Form auf terrestrischen oder satellitengestützten Nachrichtenstrecken etwa als Sprach-, Bild- oder Datensignal übermittelt wird, aus mit Turbo-Codes mit vorgegebener Coderate kanalcodierten Datenströmen (0', 4'), welche von einem Turbo-Decoder (30) empfangen werden und anschließend in einem iterativen Prozess mit dem MAP- und/oder Max-Log-MAP-Prinzip decodiert werden, wobei für das MAP- und/oder Max-Log-MAP-Prinzip eine vorgebbare Anzahl Decoder-Komponenten (301, 302), insbesondere Gitterdiagramme, vorgesehen sind und der iterative Prozess von einem Stopp-Kriterium gesteuert wird, wird zur Senkung der Fehlerhorizontalen vorgeschlagen, dass nach Beendigung des iterativen Prozesses im Turbo-Decoder (30) wenigstens eine der Decoder-Komponenten (301, 302), insbesondere deren Gitterdiagramm, für einen zusätzlichen, vom MAP- und/oder Max-Log-MAP-Prinzip unterschiedlichen Decodiervorgang verwendet wird.
Description
2 AT 007 900 U1
Die Erfindung betrifft ein Verfahren zur Rückgewinnung der Nutzinformation, insbesondere der Nutzinformation wie sie in digitaler Form auf terrestrischen oder satellitengestützten Nachrichtenstrecken etwa als Sprach-, Bild- oder Datensignal übermittelt wird, aus mit Turbo-Codes mit vorgegebener Coderate kanalcodierten Datenströmen, welche von einem Turbo-Decoder emp-5 fangen werden und anschließend in einem iterativen Prozess mit dem MAP- und/oder Max-Log-MAP-Prinzip decodiert werden, wobei für das MAP-und/oder Max-Log-MAP-Prinzip eine vor-gebbare Anzahl Decoder-Komponenten, insbesondere Gitterdiagramme, vorgesehen sind und der iterative Prozess von einem Stopp-Kriterium gesteuert wird. io Turbo-Codes als vorwärts-fehlerkorrigierende (FEC: forward error correction) Vorrichtungen sind heute zunehmend Bestandteil moderner Kommunikationseinrichtungen und bereits in vielen einschlägigen Empfehlungen bzw. Standards, wie zum Beispiel dem Mobilfunkstandard der 4. Generation: UMTS oder dem Datenübertragungsstandard für extraterrestrische Komuni-kation: CCSDS, enthalten. Der entscheidende Vorteil besteht darin, dass man ohne eigenen 15 Rückwärtskanal die Leistungsfähigkeit eines Kommunikationssystems zum Teil beträchtlich erhöhen kann, sofern der FEC-Code geeignet gewählt und parametrisiert wird.
Turbo-Codes weisen eine Fehlerhorizontale (error floor) als charakteristisches Merkmal auf. 20 Wird nämlich bei einem herkömmlichen Block- oder Faltungscode das Signal-Rauschleistungsverhältnis pro Bit (EtJNo. energy contrast ratio per bit) erhöht, so sinkt die Fehlerrate mehr oder weniger rapide. Bei Turbo-Codes ist das so nicht der Fall: Mit steigendem EtJN0 sinkt zwar die Fehlerrate anfangs stark (Konvergenzbereich), jedoch kommt es anschließend zu einer Abflachung (Fehlerhorizontale); der weitere Verlauf wird asymptotisch durch die sogenannte 25 freie Distanz bestimmt. Besagte Fehlerhorizontale ist ein Charakteristikum der Turbo-Codes und kann bei Varianten mit niedriger Rechenkomplexität relativ hoch sein, sodass diese für den praktischen Einsatz möglicherweise ohne Nutzen sind.
Ein Mittel zur Senkung der Fehlerhorizontale ist die Verwendung eines größeren Memory in den 30 Encoder-Komponenten, was jedoch die Komplexität des Decoders exponentiell in die Höhe treibt und somit für die Praxis unbrauchbar machen kann. Die Alternative, nämlich die Blocklänge zu erhöhen, ist in vielen Fällen nur eingeschränkt möglich.
Aufgabe der Erfindung ist es, ein Verfahren der eingangs genannten Art anzugeben, bei dem 35 die Fehlerhorizontale bei geringem Rechenaufwand (Komplexität) besonders niedrig ist.
Diese Aufgabe wird erfindungsgemäß dadurch gelöst, dass nach Beendigung des iterativen Prozesses im Turbo-Decoder wenigstens eine der Decoder-Komponenten, insbesondere deren Gitterdiagramm, für einen zusätzlichen, vom MAP- und/oder Max-Log-MAP-Prinzip unterschied-40 liehen Decodiervorgang verwendet wird.
Dadurch ist es möglich, die charakteristische Fehlerhorizontale eines Turbo-Codes unter Verwendung der vorhandenen Hardware und durch nur geringen weiteren Rechenaufwand deutlich, insbesondere um bis zu zwei Zehnerpotenzen, zu senken. Dies erweitert die Anwen-45 dungsmöglichkeiten von Turbo-Codes enorm, da in der Praxis aufgrund der beschränkten Systemleistungen nur Codierungsverfahren mit geringer Rechenkomplexität ersetzbar sind. Weiters wird dadurch die Fehlerwahrscheinlichkeit bestehender Telekommunikationssysteme verringert und damit der praktische Einsatzbereich derselben erweitert, da bei geringerem Signal- Rauschabstand noch einwandfrei decodiert werden kann. Die Gitterdiagramme werden so auch häufig als Trellis bezeichnet.
In weiterer Ausgestaltung der Erfindung kann es vorgesehen sein, dass der zusätzliche unterschiedliche Decodiervorgang mit einem Viterbi- Schema realisiert wird. Dadurch lässt sich nicht nur dieselbe Hardware verwenden, es ist auch keine weitere Prüfinformation notwendig, womit 55 der Bandbreitenbedarf gleich bleibt. Außerdem erhöht sich die Rechenkomplexität nur gering- 3 AT 007 900 U1 fügig, da eine Viterbi-Stufe weit weniger Rechenleistung benötigt als die Max-Log-MAP-Stufen im Zuge des iterativen Decodierprozesses.
Gemäß einer weiteren Ausführungsform der Erfindung kann vorgesehen sein, dass sowohl im 5 Encoder, welcher in bekannter Weise die Nutzinformation codiert, als auch im Decoder, zur Änderung einer Datenreihenfolge, nach dem semi- zufälligen, sogenannten S-random, Prinzip arbeitende Interleaver bzw. Deinterleaver verwendet werden. Dadurch kann die Fehlerhorizontale weiter gesenkt werden. io In weiterer Ausführung der Erfindung kann vorgesehen sein, dass Nennerpolynome vom Grad drei, vier oder fünf gewählt werden, wobei die Nennerpolynome in an sich bekannter Weise zusammen mit Zählerpolynomen eine Decoder-Komponente vollständig beschreiben. Dadurch wird das beste Ergebnis bei geringem Rechenaufwand und guter Leistungsfähigkeit des Codes erreicht. 15
In Weiterbildung der Erfindung kann vorgesehen sein, dass nach Übertragung eines Datenblocks zusätzlich der verbliebene Registerinhalt der Encoder-Komponenten übertragen wird, wobei das Trellis der betreffenden Decoder-Komponente des Decoders in an sich bekannter Weise mit dem verbliebenen Registerinhalt terminiert wird. Dadurch wird eine weitere Senkung 20 der Fehlerhorizontale erreicht.
In diesem Zusammenhang kann in Weiterbildung der Erfindung vorgesehen sein, dass der verbliebene Registerinhalt kanalcodiert, vorzugsweise als Wiederholungscode, übertragen wird. Dadurch kann sichergestellt werden, dass die Decoder-Komponenten mit den korrekten Daten 25 terminiert werden.
Die Erfindung betrifft weiters eine Programmlogik zur Rückgewinnung der Nutzinformation, insbesondere der Nutzinformation wie sie in digitaler Form auf terrestrischen oder satellitengestützten Nachrichtenstrecken etwa als Sprach-, Bild- oder Datensignal übermittelt wird, aus mit 30 Turbo-Codes mit vorgegebener Coderate kanalcodierten Datenströmen, welche von einem Turbo-Decoder empfangen werden und anschließend in einem iterativen Prozess mit dem MAP- und/oder Max-Log-MAP-Prinzip decodiert werden, wobei für das MAP- und/oder Max-Log-MAP-Prinzip eine vorgebbare Anzahl Decoder-Komponenten, insbesondere Gitterdiagramme, vorgesehen sind und der iterative Prozess von einem Stopp-Kriterium gesteuert wird. 35
Weitere Aufgabe der Erfindung ist es, eine Programmlogik der oben beschriebenen Art anzugeben, bei der die Fehlerhorizontale bei geringem Rechenaufwand (Komplexität) besonders niedrig ist. 40 Diese Aufgabe wird erfindungsgemäß dadurch gelöst, dass nach Beendigung des iterativen Prozesses im Turbo-Decoder wenigstens eine der Decoder-Komponenten, insbesondere deren Gitterdiagramm, für einen zusätzlichen, vom MAP- und/oder Max-Log-MAP-Prinzip unterschiedlichen Decodiervorgang verwendet wird. 45 Dadurch ist es möglich, die charakteristische Fehlerhorizontale eines Turbo-Codes unter Verwendung der vorhandenen Hardware und durch nur geringen weiteren Rechenaulwand deutlich, insbesondere um bis zu zwei Zehnerpotenzen, zu senken. Dies erweitert die Anwendungsmöglichkeiten von Turbo-Codes enorm, da in der Praxis aufgrund der beschränkten Systemleistungen nur Codierungsverfahren mit geringer Rechenkomplexität einsetzbar sind. so Weiters wird dadurch die Fehlerwahrscheinlichkeit bestehender Telekommunikationssysteme verringert und damit der praktische Einsatzbereich derselben erweitert, da bei geringerem Signal- Rauschabstand noch einwandfrei decodiert werden kann. Die Gitterdiagramme werden auch häufig als Trellis bezeichnet. 55 In weiterer Ausgestaltung der Erfindung kann es vorgesehen sein, dass der zusätzliche unter- 4 AT 007 900 U1 schiedliche Decodiervorgang mit einem Viterbi- Schema realisiert wird. Dadurch lässt sich nicht nur dieselbe Hardware verwenden, es ist auch keine weitere Prüfinformation notwendig, womit der Bandbreitenbedarf gleich bleibt. Außerdem erhöht sich die Rechenkomplexität nur geringfügig, da eine Viterbi-Stufe weit weniger Rechenleistung benötigt als die Max-Log-MAP-Stufen im 5 Zuge des iterativen Decodierprozesses.
Gemäß einer weiteren Ausführungsform der Erfindung kann vorgesehen sein, dass sowohl im Encoder, welcher in bekannter Weise die Nutzinformation codiert, als auch im Decoder, zur Änderung einer Datenreihenfolge, nach dem semi- zufälligen, sogenannten S-random, Prinzip io arbeitende Interleaver bzw. Deinterleaver verwendet werden. Dadurch kann die Fehlerhorizontale weiter gesenkt werden.
In weiterer Ausführung der Erfindung kann vorgesehen sein, dass Nennerpolynome vom Grad drei, vier oder fünf gewählt werden, wobei die Nennerpolynome in an sich bekannter Weise 15 zusammen mit Zählerpolynomen eine Decoder-Komponente vollständig beschreiben. Dadurch wird das beste Ergebnis bei geringem Rechenaufwand und guter Leistungsfähigkeit des Codes erreicht.
In Weiterbildung der Erfindung kann vorgesehen sein, dass nach Übertragung eines Daten-20 blocks zusätzlich der verbliebene Registerinhalt der Encoder-Komponenten übertragen wird, wobei das Trellis der betreffenden Decoder-Komponente des Decoders in an sich bekannter Weise mit dem verbliebenen Registerinhalt terminiert wird. Dadurch wird eine weitere Senkung der Fehlerhorizontale erreicht. 25 In diesem Zusammenhang kann in Weiterbildung der Erfindung vorgesehen sein, dass der verbliebene Registerinhalt kanalcodiert, vorzugsweise als Wiederholungscode, übertragen wird. Dadurch kann sichergestellt werden, dass die Decoder-Komponenten mit den korrekten Daten terminiert werden. 30 Die Erfindung wird unter Bezugnahme auf die beigeschlossenen Zeichnungen, in welchen Ausführungsformen dargestellt sind, näher beschrieben. Dabei zeigt:
Fig. 1 das Prinzipschaltbild für das Kommunikationssystem;
Fig. 2 den Turbo- Encoder und 35 Fig. 3 ein Blockschaltbild des hybriden Turbo/Viterbi- Decoder.
Turbo-Codes sind parallel-verkettete Faltungscodes und stellen eine äußerst effiziente Methode der Kanalcodierung dar. 40 Fig. 3 zeigt ein Blockschaltbild des prinzipiellen Aufbaus eines hybriden Turbo/Viterbi-Decoder 30 welcher zur Anwendung eines Verfahren zur Rückgewinnung der Nutzinformation, insbesondere der Nutzinformation wie sie in digitaler Form auf terrestrischen oder satellitengestützten Nachrichtenstrecken etwa als Sprach-, Bild- oder Datensignal übermittelt wird, aus mit Turbo-Codes mit vorgegebener Coderate, kanalcodierten Datenströmen 0', 4' welche von einem Tur-45 bo-Decoder 30 empfangen werden und anschließend in einem iterativen Prozess mit dem - an sich bekannten - Max-Log-MAP-Prinzip decodiert werden, wobei für das Max-Log-MAP-Prinzip eine vorgebbare Anzahl Decoder-Komponenten 301, 302, insbesondere Gitterdiagramme, vorgesehen sind und der iterative Prozess von einem Stoppkriterium gesteuert wird, wobei nach Beendigung des iterativen Prozesses im Turbo-Decoder 30 wenigstens eine der Decoder-50 Komponenten 301, 302, insbesondere deren Gitterdiagramme, für einen zusätzlichen unterschiedlichen Decodiervorgang verwendet wird, geeignet ist. Derartige Gitterdiagramme werden üblicherweise auch als Trellis bezeichnet.
Da der Decoder 30 an die Datenstruktur der zu decodierenden Daten 0', 4' und damit an den 55 Encoder 10 angepasst sein muss, stellt Fig. 3 nur eine unter vielen Möglichkeiten dar, einen 5 AT 007 900 U1
Turbo/Viterbi-Decoder 30 aufzubauen.
I
Der in Fig. 2 abgebildete Encoder 10 besteht aus zwei Encoder-Komponenten 101, 102 mit parallelen Schieberegistern, die in der Praxis meist systematisch, immer jedoch rekursiv, betrie-s ben werden müssen. Die Registerstrukturen, die auch gleich sein können, sind durch das jeweilige Zähler- bzw. Nennerpolynom eindeutig bestimmt. Damit lassen sich aus dem umkodierten Bitstrom 0 (Nutzdaten) die beiden Paritätsströme 2 und 3 (codierte Daten) generieren.
Anzumerken ist, dass Fig. 2 nur eine von vielen Möglichkeiten ist, einen Turbo-Encoder 10 zu io implementieren. Vor allem die Anzahl der verwendeten Encoder-Komponenten 101, 102 sowie die der Interleaver 11, oft auch als Permutatoren oder Scrambler bezeichnet, muss dem jeweiligen Anwendungsfall angepasst sein und wird in der speziellen Ausführung unter Umständen mehr oder weniger stark vom prinzipiellen Aufbau abweichen. Genau dasselbe gilt in analoger Weise auch für den Decoder 30 nach Fig. 3. 15
Charakteristisch für Turbo-Codes ist, dass der uncodierte Datenstrom 0 als solcher mit übertragen wird, wie in Fig. 2. zu sehen ist. Ein weiterer entscheidender Aspekt ist die Separation der Bitströme am Eingang der Schieberegister durch einen Interleaver 11. Der Bitstrom 1 am Ausgang von Interleaver 11 ist demnach eine verwürfelte (permutierte) Version des Bitstroms 0. 20 Das gewählte Permutationsprinzip beeinflusst direkt die Leistungsfähigkeit des Codes. Für Turbo-Codes hat sich das pseudo-zufällige Prinzip als günstig erwiesen. Für das erfindungsgemäße Verfahren zur Rückgewinnung der Nutzinformation hat sich herausgestellt, dass die Fehlerhorizontale weiter gesenkt wird, wenn ein nach dem semi-zufälligen (S-random) Prinzip arbeitender Interleaver 11 bzw. Deinterleaver 1T verwendet wird. 25
Es ist selbstverständlich, dass das gewählte Permutatorprinzip sowohl beim Encoder 10 als auch beim Decoder 30 zum Einsatz kommen muss. Prinzipbedingt beschränkt sich die Anwendung des erfindungsgemäßen Verfahrens nicht auf die Anwendung des semizufälligen, sogenannten S-random, Prinzips, vielmehr ist vorgesehen jedes bekannte bzw. in Zukunft entdeckte 30 Permütatorprinzip mit dem erfindungsgemäßen Verfahren zum Einsatz zu bringen, sofern sich dadurch eine weitere Leistungssteigerung des erfindungsgemäßen Verfahrens erreichen lässt.
Es sei angemerkt, dass das erfindungsgemäße Verfahren bei beliebigen Blocklängen und Coderaten funktioniert. Falls neben dem unkodierten Bitstrom 0 beide Paritätsströme 2 und 3 35 übertragen werden, ist die Coderate R = 1/3. Die Schaltung gemäß Fig. 2 lässt sich leicht für Werte von R = Mn, wobei n eine natürliche Zahl größer als 2 ist, erweitern, indem man n - 1 parallele Zweige einrichtet, die eingangsseitig durch Interleaver entsprechend getrennt sein müssen. Rationale Werten für R > 1/3 (etwa 1/2, 2/3 oder 3/4) lassen sich einfach über ein sogenanntes Punktierungsschema 12 am Ausgang von Encoder 10 realisieren. Ein Punktie-40 rungsschema 12 entspricht einer Matrix, welche die eingehenden Paritätsströme 2 und 3 zu einem Paritätsstrom 4 verbindet, wobei einzelne Prüfbits nach einem periodischen Muster einfach weggelassen werden, sodass sich durch die verminderte Redundanz die Coderate erhöht. Das Punktierungsschema 12 muss als solches dem Decoder 30 bekannt sein. 45 Die Decoder-Komponenten 301, 302 des Turbo-Decoders 30 werden in der bevorzugten Ausführungsform als Gitterdiagramm (Trellis) realisiert. Es ist vorgesehen jede denkbare andere Möglichkeit der Implementierung anzuwenden. Über Gitterdiagramme aufgebaute Decoderstrukturen sind in bekannter Weise durch die im Encoder 10 verwendeten Nenner- bzw. Zählerpolynome vollständig beschrieben. Das erfindungsgemäße Verfahren ist nicht auf einen be-50 stimmten Grad der beiden Polynome beschränkt, allerdings sind nur Schaltungen sinnvoll, wo der Zählergrad kleiner oder gleich dem Nennergrad ist. Weiters hat sich im Zuge der Gegenüberstellung von erwünschter Leistungsfähigkeit und vertretbarer Komplexität gezeigt, dass in der praktischen Ausführung Nennerpolynome vom Grad drei, vier oder fünf vorteilhaft sind. Es ist vorgesehen, bei einer Steigerung der verfügbaren Rechenleistung, den Grad des Nenner-55 bzw. Zählerpolynoms entsprechend zu erhöhen. 6 AT 007 900 U1
In ihrer ursprünglichen Form folgen Turbo-Decoder 30 dem MAP- (maximum a posteriori) Prinzip, welches die optimale symbolweise Decodierung garantiert. MAP-Algorithmen werden mit Hilfe von Gitterdiagrammen realisiert, wobei für jede der Encoder-Komponenten ein solches eingerichtet werden muss. Gitterdiagramme stellen ein umkehrbar eindeutiges Abbild der jewei-5 ligen Encoder-Komponente 101, 102 dar, welche ihrerseits als Automat mit einer endlichen Anzahl von Zuständen aufgefasst werden darf, wo ein Eingangssymbol aus einem endlichen Alphabet für jeden gegebenen Zustand eindeutig das Übergangssymbol und den Folgezustand ergibt (finite state machine). io Da jedoch die MAP-Komplexität sehr hoch und damit rechenaufwändig ist, findet man in der Praxis meist die einfachere Max-Log-MAP-Variante, wie sie etwa in: B. Vucetic and J. Yuan, 'Turbo Codes: Principles and Applications"; KAP 2000, beschrieben ist. Da die Max-Log-MAP-Stufen 301 bzw. 302 das Gegenstück zu den Encoder-Komponenten 101 bzw. 102 nach Fig. 2 darstellen, sind auch die Eingänge 0' und 4' entsprechend indiziert; die Apostrophierung soll nur 15 andeuten, dass die betreffenden Symbole, bedingt durch die Übertragung am Kanal (siehe Fig. 1), verrauscht am Turbo-Decoder 30 ankommen. Sollte senderseitig ein Punktierungsschema 12 implementiert sein, um Coderaten R > 1/3 zu generieren, dann muss natürlich vor Beginn des Decodierprozesses der empfangene Paritätsstrom 4' mit Hilfe der inversen Punktierungsvorschrift 12' in die Paritätsströme 2' und 3' für die Decoder-Komponenten 301 bzw. 302 20 aufgeteilt werden. Außerdem muss der uncodierte Datenstrom 0' zusätzlich den Interleaver 11 passieren, damit die Symbole für die Decoder-Komponente 302 in derselben Reihenfolge vorliegen, wie es der Encoder-Komponente 102 nach Fig. 2 entspricht.
Im Unterschied zu einem Viterbi-Decoder, welcher nur am Eingang mit Soft-Decisions arbeitet, 25 am Ausgang dagegen binäre Informationen für die Weiterverarbeitung zur Verfügung stellt, generieren Max-Log-MAP-Stufen, wie in den Decoder-Komponenten 301 bzw. 302 implementiert, auch am Ausgang Soft- Decisions.
Turbo-Decoder 30 weisen ein günstigeres Fehlerverhalten auf, wenn man die sogenannte 30 extrinsische Information, in Fig. 3 mit 5" bzw. 6" bezeichnet, für den iterativen Prozess verwendet. Diese ergibt sich aus den Soft-Decisions am Ausgang der Decoder-Komponenten 301 und 302 abzüglich der Soft-Decisions für die systematischen Information 0' bzw. T sowie der a priori Informationen 7 bzw. 8. Was letztere anlangt, so zeigt Fig. 3, dass es sich bei 8 lediglich um die mit dem Interleaver 11 verwürfelte extrinsische Information 5" handelt, bei 7 jedoch um die mit 35 dem Deinterleaver 1T verwürfelte extrinsische Information 6". Der Deinterleaver 11' stellt nichts anderes dar als die inverse Permutationsfunktion zu 11, um die Symbole in der richtigen Reihenfolge an die Decodierstufe 301 zurückschleifen zu können.
Bei bekannten Anwendungen von Turbo-Codes stoppt der Decodierprozess, indem eine vorge-40 gebene Anzahl von Iterationen durchlaufen oder ein Stopp-Kriterium 31 implementiert wird -etwa am Soft-Decision-Ausgang 6 der Max-Log-MAP-Stufe 302. Dieses Kriterium könnte im einfachsten Fall so ausgeführt sein, dass man die Hard-Decisions von 6 für zwei aufeinander folgende Datenblöcke vergleicht; falls sie sich nicht unterscheiden, wird der iterative Decodierprozess abgebrochen und die binäre Information (Hard-Decisions) in der richtigen Reihenfolge 45 ausgegeben. Dieser Vorgang würde dem klassischen Turbo-Decoder 30 entsprechen. Bei dem erfindungsgemäßen Verfahren kann jedes bekannte oder noch zu entdeckende Stopp-Kriterium implementiert werden.
Nach Ansprechen des Stopp-Kriteriums 31 wird die extrinsische Information 6" als Soft- Decisi-50 on- Information 7 an den Eingang der Decoder-Komponente 301 weitergegeben. Gleichzeitig bewirkt das Stopp-Kriterium über die Steuerleitung 9, dass das Trellis der Decoder-Komponente 301 im letzten Schritt nicht mehr für eine Max-Log-MAP-Stufe sondern für eine Decodierung zufolge eines anderen, geeigneten Decodierprinzips bzw. Decodierschemas verwendet wird. Erfindungsgemäß ist an dieser Stelle der Einsatz bzw. die Anwendung eines jeden Decodier-55 Verfahrens, Prinzips oder Schemas, welches die Fehlerhorizontale weiter senkt, vorgesehen.
Claims (11)
- 7 AT 007 900 U1 Gemäß einer bevorzugten Anwendungsweise des erfindungsgemäßen Verfahrens wird der zusätzliche Decodiervorgang mit einem Viterbi- Schema realisiert. Dessen binärer Ausgang 5 gibt dann die decodierten Daten an die nachfolgende Verarbeitungsstufe weiter. Dadurch ist es möglich die Fehlerhorizontale des verwendeten Turbo-Codes mehr oder weniger stark in Ab-s hängigkeit von den gewählten Codeparametern zu senken, was dessen Einsatzmöglichkeiten auf weitere neue Telekommunikationssysteme mit begrenzter Rechenleistung erschließt bzw. die Empfangsqualität bestehender Telekommunikationssysteme verbessert. In Fig. 3 ist der Block, in dem diese zusätzliche Decodierung stattfindet, dick umrandet, um den io Unterschied zwischen den Decoder-Komponenten 301 und 302 deutlich zu machen. Während in 302 allein der Max-Log-MAP-Prozess läuft, wird in der Decoder-Komponente 301 nach Beendigung des iterativen Turbo-Vorgangs der Viterbi-Decoder über demselben Trellis gestartet. Anzumerken ist, dass der Viterbi-Decoder den gesamten Rechenaulwand kaum erhöht, da er 15 nur einmal - nämlich am Schluss - Verwendung findet und außerdem weit weniger Rechenleistung erfordert als eine Max-Log-MAP-Stufe. Als weiterer Vorteil ergibt sich, dass bei dem erfindungsgemäßen Verfahren keine zusätzliche Redundanz erforderlich ist und somit auch die benötigte Bandbreite gleich bleibt. 20 In einer bevorzugten Anwendung des erfindungsgemäßen Verfahrens ist vorgesehen, dass nach Übertragung eines Datenblocks zusätzlich der verbliebene Registerinhalt der Encoder-Komponenten 101, 102 übertragen wird, wobei das Trellis der betreffenden Decoder-Komponenten 301, 302 des Decoders 30 in an sich bekannter Weise mit dem verbliebenen Registerinhalt terminiert wird. Dadurch wird eine weitere Senkung der Fehlerhorizontale er-25 reicht. Da die entsprechenden Daten ebenfalls über den Kanal an den Decoder 30 übertragen werden und zu erwarten ist, dass diese verrauscht am Decoder 30 ankommen, ist es vorgesehen, dass der verbliebene Registerinhalt kanalcodiert, vorzugsweise als Wiederholungscode, übertragen 30 wird. Abschließend sei noch einmal darauf hingewiesen, dass es sich bei dem erfindungsgemäßen Verfahren nicht um ein verkettetes Schema aus Turbo- und Viterbi-Code, sondern um eine hybride Lösung handelt. Ansprüche: 1. Verfahren zur Rückgewinnung der Nutzinformation, insbesondere der Nutzinformation wie 40 sie in digitaler Form auf terrestrischen oder satellitengestützten Nachrichtenstrecken etwa als Sprach-, Bild- oder Datensignal übermittelt wird, aus mit Turbo-Codes mit vorgegebener Coderate kanalcodierten Datenströmen (θ', 4'), welche von einem Turbo-Decoder (30) empfangen werden und anschließend in einem iterativen Prozess mit dem MAP- und/oder Max-Log-MAP-Prinzip decodiert werden, wobei für das MAP-und/oder Max-Log-MAP-45 Prinzip eine vorgebbare Anzahl Decoder-Komponenten (301, 302), insbesondere Gitter diagramme, vorgesehen sind und der iterative Prozess von einem Stopp-Kriterium gesteuert wird, dadurch gekennzeichnet, dass nach Beendigung des iterativen Prozesses im Turbo-Decoder (30) wenigstens eine der Decoder-Komponenten (301, 302), insbesondere deren Gitterdiagramm, für einen zusätzlichen, vom MAP- und/oder Max-Log-MAP-Prinzip un-50 terschiedlichen Decodiervorgang verwendet wird.
- 2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass der zusätzliche unterschiedliche Decodiervorgang mit einem Viterbi- Schema realisiert wird.
- 3. Verfahren nach einem der Ansprüche 1 oder 2, dadurch gekennzeichnet, dass sowohl im 8 AT 007 900 U1 Encoder 10, welcher in bekannter Weise die Nutzinformation codiert, als auch im Decoder 30, zur Permutation einer Datenreihenfolge, nach dem semi- zufälligen, sogenannten S-random Prinzip, arbeitende Interleaver (11) bzw. Deinterleaver (11') verwendet werden.
- 4. Verfahren nach einem der Ansprüche 1 bis 3, dadurch gekennzeichnet, dass Nennerpoly nome vom Grad drei, vier oder fünf gewählt werden, wobei die Nennerpolynome in an sich bekannter Weise zusammen mit Zählerpolynomen eine Decoder-Komponente (301, 302) vollständig beschreiben. io 5. Verfahren nach einem der Ansprüche 1 bis 4, dadurch gekennzeichnet, dass nach Übertragung eines Datenblocks zusätzlich der verbliebene Registerinhalt der Encoder-Komponenten (101, 102) übertragen wird, wobei das Trellis der betreffenden Decoder-Komponente (301, 302) des Decoders (30) in an sich bekannter Weise mit dem verbliebenen Registerinhalt terminiert wird. 15
- 6. Verfahren nach Anspruch 5, dadurch gekennzeichnet, dass der verbliebene Registerinhalt kanalcodiert, vorzugsweise als Wiederholungscode, übertragen wird.
- 7. Programmlogik zur Rückgewinnung der Nutzinformation, insbesondere der Nutzinformation 20 wie sie in digitaler Form auf terrestrischen oder satellitengestützten Nachrichtenstrecken etwa als Sprach-, Bild- oder Datensignal übermittelt wird, aus mit Turbo-Codes mit vorgegebener Coderate kanalcodierten Datenströmen (0‘, 4'), welche von einem Turbo-Decoder (30) empfangen werden und anschließend in einem iterativen Prozess mit dem MAP-und/oder Max-Log-MAP-Prinzip decodiert werden, wobei für das MAP-und/oder Max-Log- 25 MAP-Prinzip eine vorgebbare Anzahl Decoder-Komponenten (301, 302), insbesondere Git terdiagramme, vorgesehen sind und der iterative Prozess von einem Stopp-Kriterium gesteuert wird, dadurch gekennzeichnet, dass nach Beendigung des iterativen Prozesses im Turbo-Decoder (30) wenigstens eine der Decoder-Komponenten (301, 302), insbesondere deren Gitterdiagramm, für einen zusätzlichen, vom MAP- und/oder Max-Log-MAP-Prinzip 30 unterschiedlichen Decodiervorgang verwendet wird.
- 8. Programmlogik nach Anspruch 7, dadurch gekennzeichnet, dass der zusätzliche unterschiedliche Decodiervorgang mit einem Viterbi- Schema realisiert wird.
- 9. Programmlogik nach einem der Ansprüche 7 oder 8, dadurch gekennzeichnet, dass sowohl im Encoder 10, welcher in bekannter Weise die Nutzinformation codiert, als auch im Decoder 30, zur Permutation einer Datenreihenfolge, nach dem semi- zufälligen, sogenannten S-random Prinzip, arbeitende Interleaver (11) bzw. Deinterleaver (11') verwendet werden.
- 10. Programmlogik nach einem der Ansprüche 7 bis 9, dadurch gekennzeichnet, dass Nenner polynome vom Grad drei, vier oder fünf gewählt werden, wobei die Nennerpolynome in an sich bekannter Weise zusammen mit Zählerpolynomen eine Decoder-Komponente (301, 302) vollständig beschreiben.
- 11. Programmlogik nach einem der Ansprüche 7 bis 10, dadurch gekennzeichnet, dass nach Übertragung eines Datenblocks zusätzlich der verbliebene Registerinhalt der Encoder-Komponenten (101, 102) übertragen wird, wobei das Trellis der betreffenden Decoder-Komponente (301, 302) des Decoders (30) in an sich bekannter Weise mit dem verbliebenen Registerinhalt terminiert wird. 50
- 12. Programmlogik nach Anspruch 11, dadurch gekennzeichnet, dass der verbliebene Registerinhalt kanalcodiert, vorzugsweise als Wiederholungscode, übertragen wird. 55 Hiezu 1 Blatt Zeichnungen
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
AT0014604U AT7900U1 (de) | 2004-02-27 | 2004-02-27 | Verfahren zur rückgewinnung der information aus kanalcodierten datenströmen |
US11/065,337 US7725798B2 (en) | 2004-02-27 | 2005-02-24 | Method for recovering information from channel-coded data streams |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
AT0014604U AT7900U1 (de) | 2004-02-27 | 2004-02-27 | Verfahren zur rückgewinnung der information aus kanalcodierten datenströmen |
Publications (1)
Publication Number | Publication Date |
---|---|
AT7900U1 true AT7900U1 (de) | 2005-10-17 |
Family
ID=34842190
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
AT0014604U AT7900U1 (de) | 2004-02-27 | 2004-02-27 | Verfahren zur rückgewinnung der information aus kanalcodierten datenströmen |
Country Status (1)
Country | Link |
---|---|
AT (1) | AT7900U1 (de) |
-
2004
- 2004-02-27 AT AT0014604U patent/AT7900U1/de not_active IP Right Cessation
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE60113053T2 (de) | Vor-Dekoder für Turbodekoder, zur Rückgewinnung von punktierten Paritätssymbolen, sowie ein Verfahren zur Rückgewinnung eines Turbokodes | |
DE60001988T2 (de) | Turbo Dekodierung mit variabler Anzahl von Iterationen | |
DE69936626T2 (de) | Kanalkodierung und -dekodierung für ein kommunikationssystem | |
DE69936908T2 (de) | Iterative dekodierung von produktkoden | |
DE102005010006B4 (de) | Verfahren und Vorrichtung zum Terminieren einer iterativen Turbo-Dekodierung | |
DE3910739A1 (de) | Verfahren zur verallgemeinerung des viterbi-algorithmus | |
DE4429585C1 (de) | Verfahren zur arithmetischen Decodierung | |
WO2001008340A1 (de) | Verfahren zum fehlerschutz eines datenbitstromes | |
DE60211413T2 (de) | Verfahren und Vorrichtung zur Optimierung der Größe von codierten Datenblöcken | |
DE60003071T2 (de) | Verfahren zur dekodierung von mit einem entropie-code kodierten daten, entsprechende dekodierungsvorrichtung und übertragungssystem | |
DE112010003449T9 (de) | Iterative Decodierung von Signalen, die über einen verrauschten Kanal empfangen werden, unter Verwendung von Vorwärts- und Rückwärts-Rekursionen mit einer Hochfahrinitialisierung | |
DE60111974T2 (de) | Abbruchkriterium für einen Turbodekoder | |
DE10196688B3 (de) | Ein Decodierer für eine trellis-basierte Kanalcodierung | |
DE69908820T2 (de) | Verfahren und system zur schnellen maximale-a-posteriori-dekodierung | |
DE19521327A1 (de) | Verfahren und Codiereinrichtung zur gesicherten Übertragung von Information mittels Mehrkomponenten-Codierung | |
DE102011056132B4 (de) | Verfahren und Vorrichtung zum Decodieren von Daten | |
AT7900U1 (de) | Verfahren zur rückgewinnung der information aus kanalcodierten datenströmen | |
EP1826911A1 (de) | Codierung und Decodierung mit Trellis-codierter Modulation | |
DE102014204828B4 (de) | Verfahren zum Wiederherstellen verlorengegangener und/oder beschädigter Daten | |
EP1142185B1 (de) | Verfahren und anordnung zur kanalcodierung bzw. decodierung von in rahmen strukturierten informationen | |
DE60209196T2 (de) | Verfahren und Vorrichtung zur Optimierung, unter Leistungsgebundenheiten, der Grösse von kodierten Datenblöcken | |
DE19520987A1 (de) | Verfahren zur Terminierung des Trellis bei rekursiven systematischen Faltungscodes | |
DE102014216143B4 (de) | Verfahren zum Wiederherstellen verlorengegangener und/oder beschädigter Daten | |
DE60026109T2 (de) | Kombinierte Kanal - und Entropiedekodierung | |
EP1016236B1 (de) | Schnelle decodierung von partiell empfangenen faltungscodierten daten |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
MK07 | Expiry |
Effective date: 20140228 |