AT7900U1 - Verfahren zur rückgewinnung der information aus kanalcodierten datenströmen - Google Patents

Verfahren zur rückgewinnung der information aus kanalcodierten datenströmen Download PDF

Info

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
Application number
AT0014604U
Other languages
English (en)
Inventor
Johannes Dipl Ing Ebert
Wilfried Dipl Ing Dr Gappmair
Original Assignee
Joanneum Res Forschungsgmbh
Tech Uni Graz I Fuer Kommunika
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Joanneum Res Forschungsgmbh, Tech Uni Graz I Fuer Kommunika filed Critical Joanneum Res Forschungsgmbh
Priority to AT0014604U priority Critical patent/AT7900U1/de
Priority to US11/065,337 priority patent/US7725798B2/en
Publication of AT7900U1 publication Critical patent/AT7900U1/de

Links

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/29Coding, 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/2957Turbo codes and decoding
    • H03M13/2975Judging correct decoding, e.g. iteration stopping criteria
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/29Coding, 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/2957Turbo 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)

  1. 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. 2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass der zusätzliche unterschiedliche Decodiervorgang mit einem Viterbi- Schema realisiert wird.
  3. 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. 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
  5. 6. Verfahren nach Anspruch 5, dadurch gekennzeichnet, dass der verbliebene Registerinhalt kanalcodiert, vorzugsweise als Wiederholungscode, übertragen wird.
  6. 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.
  7. 8. Programmlogik nach Anspruch 7, dadurch gekennzeichnet, dass der zusätzliche unterschiedliche Decodiervorgang mit einem Viterbi- Schema realisiert wird.
  8. 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.
  9. 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.
  10. 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
  11. 12. Programmlogik nach Anspruch 11, dadurch gekennzeichnet, dass der verbliebene Registerinhalt kanalcodiert, vorzugsweise als Wiederholungscode, übertragen wird. 55 Hiezu 1 Blatt Zeichnungen
AT0014604U 2004-02-27 2004-02-27 Verfahren zur rückgewinnung der information aus kanalcodierten datenströmen AT7900U1 (de)

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)

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