DE3910739C2 - - Google Patents
Info
- Publication number
- DE3910739C2 DE3910739C2 DE3910739A DE3910739A DE3910739C2 DE 3910739 C2 DE3910739 C2 DE 3910739C2 DE 3910739 A DE3910739 A DE 3910739A DE 3910739 A DE3910739 A DE 3910739A DE 3910739 C2 DE3910739 C2 DE 3910739C2
- Authority
- DE
- Germany
- Prior art keywords
- path
- unit
- decisions
- refresh
- viterbi
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Lifetime
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0045—Arrangements at the receiver end
- H04L1/0054—Maximum-likelihood or sequential decoding, e.g. Viterbi, Fano, ZJ algorithms
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/37—Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
- H03M13/39—Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes
- H03M13/41—Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes using the Viterbi algorithm or Viterbi processors
- H03M13/4138—Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes using the Viterbi algorithm or Viterbi processors soft-output Viterbi algorithm based decoding, i.e. Viterbi decoding with weighted decisions
- H03M13/4146—Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes using the Viterbi algorithm or Viterbi processors soft-output Viterbi algorithm based decoding, i.e. Viterbi decoding with weighted decisions soft-output Viterbi decoding according to Battail and Hagenauer in which the soft-output is determined using path metric differences along the maximum-likelihood path, i.e. "SOVA" decoding
-
- 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/2933—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 using a block and a convolutional code
- H03M13/2936—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 using a block and a convolutional code comprising an outer Reed-Solomon code and an inner convolutional code
-
- 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/2939—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 using convolutional codes
Description
Die Erfindung betrifft ein Verfahren zum Verallgemeinern
des Viterbi-Algorithmus sowie Einrichtungen zur Durchführung
des Verfahrens.
Der von G. D. Forney in Proc of the IEEE, Vol. 61, Nr. 3
Seiten 268 bis 278, März 1973 beschriebene Viterbi-Algorith
mus ist ein Standardmittel in Nachrichtenempfängern gewor
den, mit welchem verschiedene Funktionen, wie eine Demodula
tion, ein Decodieren, eine Entzerrung usw. durchgeführt wer
den. Bei zunehmend mehr Anwendungsfällen werden zwei Viter
bi-Algorithmen in einer verketteten Weise verwendet. Beispie
le hierfür sind codierte Modulationssysteme ohne Bandbreiten-
Dehnung, wie codierte QAM ("Quadratur-Amplituden-Modula
tion") oder CPM ("Kontinuierliche Phasen-Modulation"), wobei
Viterbi-Empfänger klassische Modulationsverfahren ersetzen.
Bei einem zusätzlichen äußeren Codiersystem könnten Faltungs
codes mit Viterbi-Decodierung benutzt werden, um eine Vor
wärts-Fehlerkorrektur-(FEC-)Decodierung durchzuführen.
Eine derartige Lösung weist jedoch zwei Nachteile auf: Zum
einen erzeugt der innere Viterbi-Algorithmus bei einer Demo
dulation Fehlerbündel, gegenüber welchen der äußere Viterbi-
Algorithmus sehr empfindlich ist, und zum anderen erzeugt
der innere Viterbi-Algorithmus harte d. h. binäre Entschei
dungen (Hard-Decisions), so daß beim äußeren Viterbi-Algo
rithmus dessen Leistungsfähigkeit, sogenannte Soft-De
cisions, d. h. analoge Entscheidungen zu liefern, nicht aus
genutzt werden kann. Der erste Nachteil kann mit Hilfe einer
Spreizung (Interleaving) zwischen dem inneren und äußeren
Viterbi-Algorithmus ausgeglichen werden. Im zweiten Fall wä
ren Soft-Decisions, d. h. eine Zuverlässigkeits-Information
zusammen mit den Entscheidungen des inneren Viterbi-Algo
rithmus erwünscht. Hierdurch würde die Wirksamkeit des äuße
ren Viterbi-Algorithmus beträchtlich verbessert.
Ähnliche Schwierigkeiten ergeben sich dann, wenn Faltungs
codes für das Vorwärts-Fehlerkorrektur-(FEC-)Decodieren auf
Kanälen benutzt werden, welche eine Entzerrung erfordern.
Dies ist beispielsweise bei dem zukünftigen gesamteuropäi
schen Mobilfunksystem (GSM) der Fall. Hierbei erzeugt ein
Viterbi-Entzerrer nur harte Entscheidungen, welche zu einer
reduzierten Leistung bei dem äußeren Viterbi-Algorithmus
führen, bei welchem eine FEC-Decodierung durchgeführt wird.
Eine weitere Möglichkeit besteht darin, einen Viterbi-Algo
rithmus zum Decodieren eines geblockten bzw. terminierten
Faltungscodes zu benutzen. Dies ist ein Faltungscode mit
Gedächtnis, welcher durch ν bekannte Symbole begrenzt ist.
Häufig erfordert auch ein Quellendecodierer eine Zuverläs
sigkeitsinformation über das richtige Codieren des gesam
ten Rahmens oder von Teilen, welche zur Überlagerung oder
zur Interpolation der Quellensignale benutzt werden können.
Bisher wurde dann, wenn ein innerer Viterbi-Algorithmus be
nutzt wird, als richtige Wahl für den äußeren Code wegen
dessen Bündel-Korrigierbarkeit ein Reed-Solomon-(RS-)Code
angesehen, da durch diesen RS-Code die Restfehler des Viter
bi-Algorithmus vermindert werden. Jedoch kann die volle Lei
stung eines RS-Decoders nur dann realisiert werden, wenn
eine Fehler- und Lösch-Decodierung angewendet wird. Ein ge
wünschtes ML-("Maximum-Likelihood"-)Decodieren von RS-Codes
ist derzeit noch nicht verfügbar. Sowohl ein Lösch- als auch
ein ML-Decodieren würden nämlich "Soft"-Decisions des ersten
Viterbi-Algorithmus erfordern, die dann mit einem bestimmten
Schwellenwert zu Auslöschungen werden. Mit Hilfe von Soft-
Decisions würden sich sogar einfache Blockcodes, wie Parity-
Check-Codes, viel besser decodieren lassen.
Der Viterbi-Algorithmus wurde 1967 als ein Verfahren zum De
codieren von Faltungscodes vorgestellt (siehe A. J. Viterbi,
IEEE Trans. Inform. Theory, Vol. IT-13 Stn. 260-269, April
1967), wobei kurz darauf gezeigt werden konnte, daß der Al
gorithmus im ML-("Maximum-Likelihood"-)Sinne optimal ist.
(Siehe beispielsweise I. K. Omura, in IEEE Trans. Inform.
Theory, Vol. IT-15, Stn. 177-179, Jan. 1969.)
Versuche, die Bitfehler-Wahrscheinlichkeit auf Kanälen mit
Nachbarsymbol-Interferenzen zu minimieren, führten zu einer
Empfängerstruktur, welche weniger attraktiv als der Viterbi-
Algorithmus ist. Dieser Algorithmus wurde daher noch gene
ralisiert (siehe beispielsweise L. B. Bahl u. a., IEEE Trans.
Inform. Theory Vol. IT-20, Stn. 284-287, März 1974). Es
wurde gezeigt, daß der Algorithmus im Sinne einer MAP-Ent
scheidung optimal ist und für jedes Bit die entsprechende
A-Posteriori-Wahrscheinlichkeit (APP) liefert. Jedoch ist
aufgrund der höheren Komplexibilität die Anzahl der Anwen
dungsmöglichkeiten begrenzt.
Es wurden auch noch zahlreiche weitere Versuche unternommen,
eine Zuverlässigkeitsinformation abzuleiten. Der Anmelderin
ist jedoch kein Vorschlag bekannt, bei welchem die A-Poste
riori-Wahrscheinlichkeiten (APP) des MAP-Detektors oder eine
Soft-Decision von einem erweiterten Viterbi-Algorithmus aus
benutzt wird, um eine optimale äußere Soft-Decision-Decodie
rung durchzuführen.
Obwohl von einem Viterbi-Empfänger Soft-Decisions akzeptiert
werden, liefert er nur Hard-Decisions. Die nächste Empfän
gerstufe würde jedoch in vielen Fällen besser arbeiten, wenn
Soft-Decisions, d. h. Analogwerte, für jedes Symbol abgelei
tet würden. Es gibt jedoch keinen direkten Weg, um im bekann
ten Viterbi-Algorithmus Soft-Decisions für jedes einzelne
Symbol zu extrahieren.
Aufgabe der Erfindung ist es daher, ein Verfahren und eine
Einrichtung zum Verallgemeinern eines Viterbi-Algorithmus so
auszubilden, daß der Viterbi-Algorithmus analoge Entschei
dungen, d. h. Soft-Decisions liefert. Gemäß der Erfindung ist
dies bei einem Verfahren zum Verallgemeinern des Viterbi-Al
gorithmus nach dem Oberbegriff des Anspruchs 1 durch die
Merkmale im kennzeichnenden Teil des Anspruchs 1 verwirk
licht. Eine Modifizierung des Verfahrens nach Anspruch 1 ist
durch die Merkmale im kennzeichnenden Teil des Anspruchs 2
realisiert. Eine vorteilhafte Weiterbildung dieser Verfahren
ist im Anspruch 3 angegeben. Eine Einrichtung zur Durchfüh
rung der erfindungsgemäßen Verfahren ist im Anspruch 4 ange
geben, wobei in den nachfolgenden Unteransprüchen vorteil
hafte Weiterbildungen und Modifizierungen der Einrichtung
nach Anspruch 4 angeführt sind.
Gemäß der Erfindung wird bei dem Verfahren zur Verallgemei
nerung des herkömmlichen Viterbi-Algorithmus, bei welchem in
einer Metrik-Inkrement-Einheit (TMU) die Kosten gebildet
werden, und in einer nachgeschalteten Addier-Vergleich- und
Auswähl-(ACS-)Einheit ein Addieren, ein Vergleichen sowie
ein Auswählen vorgenommen werden, für jeden einzelnen Zu
stand Differenzkosten von zwei eintreffenden Pfaden berech
net, wobei die Zuverlässigkeitsinformation am Anfang jedes
Pfades auf den höchsten Wert festgesetzt wird. Anschließend
wird der Zuverlässigkeitswert des Pfades mit den kleinsten
Kosten an den Stellen aufgefrischt, an welchen die Informa
tionsstellen von dem konkurrierenden Pfad abweichen; hierbei
wird das Auffrischen gemäß einer Tabelle vorgenommen, indem
der vorherige Wert der Zuverlässigkeitsinformation und die
Differenzkosten als neue Eingangsgröße in der Tabelle ange
legt werden. Dieser neue Wert wird dann aus der Tabelle ent
nommen und zusammen mit harten Entscheidungen als sogenann
tes Pfadgedächtnis abgespeichert; hierbei kann das Abspei
chern in Form von Fest- oder Gleitpunkt-Werten erfolgen.
Schließlich wird dann eine Analogwert-Entscheidung aus den
Stellen herausgelesen, die sich nach einer gewissen Ent
scheidungsverzögerung für den Pfad mit den kleinsten Kosten
ergibt. Die harten Entscheidungen des bekannten Viterbi-Al
gorithmus sind die Vorzeichen der Analogwert-Entscheidungen.
Bei dem Verfahren zum Modifizieren des erfindungsgemäßen
Verfahrens zum Verallgemeinern des Viterbi-Algorithmus wird
zum Auffrischen einer Zuverlässigkeitsinformation das Mini
mum aus der alten Zuverlässigkeitsinformation und - durch
Einführen eines Faktors α - normierten Pfad-Differenzkosten
gebildet und dieser neue Wert wird dann als Pfadgedächtnis
abgespeichert.
Gemäß einer bevorzugten Weiterbildung der Verfahren zum Ver
allgemeinern bzw. Modifizieren des Viterbi-Algorithmus ist
zum Pfadauffrischen eine Pfad-Auffrischeinheit vorgesehen,
durch welche in einem gewissen Bereich (k - ν bis k - δp mit
ν ≦ δp ≦ δm) die Informationsbits der beiden konkurrierenden
Pfade auf Gleichheit überprüft werden und bei Feststellen
einer Ungleichheit der Auffrischvorgang aktiviert; hierbei
sind mit k ein Zeitindex, mit ν ein Codegedächtnis und mit
δ eine Verzögerung bzw. Eindringtiefe bezeichnet.
Bei einer bevorzugten Einrichtung zur Durchführung der Ver
fahren sind neben den bekannten zur Durchführung des Viter-
bi-Algorithmus erforderlichen Einheiten, nämlich eine Metrik-
Inkrement-Einheit (TMU) und einer Addier-Vergleich-Auswähl-
Einheit zusätzlich noch ein Pfad-RAM sowie eine Pfad-Auf
frischeinheit (PAU) vorgesehen, wobei zum Pfadauffrischen in
einem ganz bestimmten Bereich, nämlich in dem Bereich k - ν
bis k - δm die Informationsbits der beiden konkurrierenden
Pfade auf Gleichheit überprüft werden und bei einer Ungleich
heit der Auffrischvorgang in dem Pfad-RAM aktiviert wird.
Gemäß einer vorteilhaften Weiterbildung der erfindungsgemä
ßen Einrichtung ist eine Einrichtung zum Normieren des Auf
frischens der Zuverlässigkeitsinformation vorgesehen, wobei
ein Faktor (α) eingeführt wird, wobei dann hierdurch einer
Festkomma-Darstellung genügt und gleichzeitig ein Überlauf
vermieden ist. Wenn Zeit gewonnen werden soll oder muß, ist
für jeden von S-Zuständen jeweils eine gesonderte Pfad-Auf
frischeinheit (PAU) vorgesehen, wobei dann aufgrund dieser
Parallelanordnung im Hinblick auf das Vorsehen nur einer
einzigen Pfad-Auffrischeinheit (PAU) ein Zeitgewinn in der
Größe des Faktors S erzielt wird.
Ferner kann gemäß einer weiteren vorteilhaften Ausbildung
für jedes Zeitintervall (k - ν bis k - δp) jeweils eine
gesonderte Pfad-Auffrischeinheit (PAU) vorgesehen sein, wo
bei dann durch diese Parallelanordnung Zeitgewinne in der
Größenordnung eines Faktors, nämlich von ν - δp, erzielbar
sind, wobei ν wieder ein Codegedächtnis und δp eine defi
nierte Verzögerung bzw. Eindringtiefe sind.
Durch die vorliegende Erfindung wird somit ein herkömmlicher
Viterbi-Empfänger durch eine sogenannte Soft-Deciding-Ein
richtung, d. h. eine Einrichtung erweitert, welche analoge
Entscheidungen, d. h. Soft-Decisions liefert, die immer besser
als harte, d. h. binäre Entscheidungen, nämlich Hard-Deci
sions sind. Wieviel hierbei jeweils gewonnen werden kann,
hängt jedoch von der Art und Weise ab, wie die nächste Emp
fängerstufe arbeitet. Hierbei ist im Minimum ein Gewinn von
2 dB erreichbar, während der maximale Gewinn bei mehr als
10 dB liegen kann. In einem klassischen Viterbi-Empfänger
kann ein solcher Gewinn auf keinen Fall realisiert werden.
Der Viterbi-Algorithmus (VA) mit einer Analogwert-Entschei
dung (SD) ist in all den Bereichen anwendbar, in denen auch
der herkömmliche Viterbi-Algorithmus einsetzbar ist, nämlich
als Decodierer, als Entzerrer oder als Demodulator für co
dierte Modulation. In all diesen Fällen muß nur die Metrik-
Inkrement-Einheit, d. h. die sogenannte TMU-Einheit in be
kannter Weise ausgetauscht werden. Dasselbe gilt auch bei
Anwendungsfällen für punktierte Codes oder bei der Verwen
dung als Demodulator mit reduzierter Zustandsanzahl.
Gemäß der Erfindung könnte daher in einer Empfängerkette ein
MAP-(Maximum-A-Posteriori-) oder ein Viterbi-Detektor ver
wendet werden. Dies könnte ein Viterbi-Entzerrer, ein Viter
bi-Demodulator (beispielsweise für Modulationsverfahren kon
stanter Einhüllender (CPM) oder für eine Trellis-codierte
Modulation (TCM)), oder ein Viterbi-Decoder für einen inne
ren Faltungscode sein. Auf diese Einrichtung folgt dann ein
zweiter Detektor, welcher, nach dem Entzerrer ein Demodula
tor oder ein Decoder, nach dem Demodulator ein Decoder, nach
dem inneren Decoder ein äußerer Decoder oder ein Quellende
coder sein könnte. Die Leistung der zweiten Einrichtung wird
hierbei dadurch verbessert, daß außer binären Entscheidungen
d. h. Hard-Decisions von der ersten Stufe eine Zuverlässig
keits-Information oder Analogwert-Entscheidungen, d. h. Soft-
Decisions, verfügbar sind.
Ferner können durch die Erfindung alle eingangs erwähnten
Anwendungsmöglichkeiten sowie weitere Anwendungen, wie adap
tive Viterbi-Schemen; FEC ("Forward Error Correction") / ARQ
("Automatic Repeat REQuest")-Schemen eine Viterbi-Synchroni
sation mit Hilfe des erfindungsgemäßen Viterbi-Algorithmus
(VA) mit Analogwert-Entscheidungen (SD) bzw. mit Hilfe eines
Soft-Deciding-Viterbi-Algorithmus (SDVA) verbessert werden.
Dies ist ein Viterbi-Algorithmus, welcher Soft- (oder Hard-)
Decisions benutzt, um Metriken zu berechnen, jedoch auch
soft d. h. analog, und somit nicht in einer harten d. h. binä
ren Form entscheidet. Ein besonders vorteilhafter Weg be
steht darin, zusammen mit den Entscheidungen eine Zuverläs
sigkeitsinformation, d. h. die Wahrscheinlichkeit einer
richtigen Entscheidung oder eine logarithmische Wahrschein
lichkeitsfunktion zu liefern.
Der optimale Weg besteht darin, A-Posteriori-Wahrscheinlich
keiten (APP) für die Entscheidung zu berechnen und einen Al
gorithmus zu bilden, um maximale A-Posteriori-(MAP-)Entschei
dungen zu treffen. Der erfindungsgemäße SDV-Algorithmus un
terscheidet sich daher vollständig von dem Viterbi-Algorith
mus, obwohl dieser lediglich mit einem kleinen Zusatz in Form
einer Analogwert-Entscheidungen liefernden Einheit, einer
sogenannten Soft-Deciding-Einheit, versehen zu werden
braucht.
Nachfolgend wird die Erfindung anhand von bevorzugten Aus
führungsformen im einzelnen erläutert. Es zeigen:
Fig. 1 ein Blockdiagramm eines Detektors für einen
Viterbi-Algorithmus mit Analogwert-Entschei
dungen und mit Zuverlässigkeitsinformation
gemäß der Erfindung;
Fig. 2 ein Beispiel eines Viterbi-Algorithmus mit
Analogwert-Entscheidungen (SDVA);
Fig. 3 ein Blockdiagramm eines Viterbi-Algorithmus
mit Analogwert-Entscheidungen (SDVA) mit
einer sogenannten Pipelining-Wirkung;
Fig. 4 ein Blockdiagramm eines Pfad-RAM und eines
Metrik-RAM;
Fig. 5 schematisch einen Auffrischvorgang bzw. eine
Aktualisierung einer Analogwertentscheidung
(SD);
Fig. 6 eine schematische Darstellung einer Pfad-Auf
frischeinheit (PAU) gemäß der Erfindung, und
Fig. 7 über der Zeit aufgetragene Ausgangswerte
eines Viterbi-Algorithmus mit Analogwert-Ent
scheidungen (SDVA) gemäß der Erfindung.
In Fig. 1 liefert ein Viterbi-Detektor der ersten Stufe, mit
tels welchem ein Viterbi-Algorithmus mit Analogwert-Ent
scheidungen (SDVA) durchgeführt wird, Schätzungen û′ der
Symbolfolge u′, indem die empfangene Symbolfolge y in einem
MAP- oder Viterbi-Detektor verarbeitet wird. Hierbei soll
dann der Detektor für jedes Symbol eine Zuverlässigkeitsin
formation liefern, d. h. einen Schätzwert für die Wahrschein
lichkeit, daß dieses Symbol ungenau festgestellt worden ist:
p′k = Prob{û′k ≠ u′k|y} (1)
Dieser Schätzwert û′ ist nicht immer richtig. Daher wird
eine bedingte Wahrscheinlichkeitsdichte-Funktion p(′k|p′k)
vorgesehen, welche den Schätzungsfehler zum Schätzen von ′k
beschreibt, welcher durch p′k gegeben ist. Da der Viterbi-
Algorithmus der ersten Stufe korrelierte Fehler in û′k und
′k erzeugt, welche die Leistung der nächsten Stufe ver
schlechtern können, wird eine hinreichende Spreizung durch
geführt, um eine statistische Unabhängigkeit zu erreichen.
(Hierbei sind die Strichindizes weggelassen). Natürlich er
fordert dies eine entsprechende, sendeseitige Spreizungsein
richtung.
Bei der gestrichelten Linie A-A′ in Fig. 1 liefert der De
tektor der ersten Stufe Symbole ûk mit statistisch unabhän
gigen Fehlerwahrscheinlichkeiten pk. Ein derartiger Kanal
wird als ein diskreter gedächtnisloser Verbundkanal bezeich
net, welcher einen Schätzwert k für diese Fehlerwahrschein
lichkeiten pk liefert. Wenn die Fehlerwahrscheinlichkeits
dichte p(pk) und die Schätzungsdichte p(k|pk) gegeben sind,
kann die Kanalkapazität eines solchen Verbundkanals berechnet
werden. Für Binärwerte uk kann ein derartiger Kanal als ein
binärer, symmetrischer Kanal (BSC) mit einer Fehlerwahr
scheinlichkeit pk betrachtet werden, welcher sich von Bit zu
Bit mit einem statistisch unabhängigen Wert pk entsprechend
der Dichtefunktion p(pk) ändert. Diese Fehlerwahrscheinlich
keit kann mit einer Wahrscheinlichkeit p(k|pk) bewertet
werden.
Für einen Detektor der zweiten Stufe ist der Kanal ein dis
kreter (binärer) gedächtnisloser Verbundkanal mit Ausgangs-
Paarwerten (ûk, k). Wenn der Detektor der zweiten Stufe
eine ML-("Maximum-Likelihood") Detektion durchführt, ist die
optimale ML-Metrik
wobei xk (m) = ± 1 das k-te Symbol der m-ten Informationsfolge
ist. Der Wert ûk ist die harte Entscheidung (± 1) des ersten
Viterbi-Detektors. Da diese harte Entscheidung mit log 1-k/k
zu bewerten ist, kann ûk log (1-k)/k als eine Soft-Decision-
Variable betrachtet werden. Folglich wird der erste Viterbi-
Algorithmus als ein Soft-Deciding-Viterbi-(SDV-)Algorithmus
bezeichnet, da er Soft-Decisions
liefert, welche von der nächsten ML-Detektorstufe zu verar
beiten sind. Die Detektor der nächsten Stufe kann wieder ein
Viterbi-Algorithmus sein, welcher Soft-Decisions akzeptiert
und schließlich harte Entscheidungen liefert. Zweckmäßiger
weise kann er wieder ein Soft-Deciding-Viterbi-(SDV-)Algor
ithmus sein, welcher zusammen mit den Entscheidungen eine
Zuverlässigkeitsinformation liefert, welche in einem Decoder
der nächsten Stufe oder dem Quellendecoder brauchbar sein
könnte. Ebenso könnten die Soft-Decision nach (3) in drei
Werte (-1, 0, +1) quantisiert werden, die folglich Fehler und
Löschungen anzeigen, welche verwendbar sind, wenn der Detek
tor der zweiten Stufe ein RS- oder anderer Blockcode-Decoder
ist.
Der Viterbi-Algorithmus (VA) ist dann zu modifizieren, damit
er ein Soft-Deciding-Viterbi-(SDV-)Algorithmus wird, welcher
Soft-Decisions (3) mit k liefert, welcher, soweit wie mög
lich pk, angenähert ist. Nachstehend werden nun zwei Lösungen
untersucht:
Bei der ersten Lösung erzeugt eine Einrichtung Entscheidungen mit einem optimalen Wert von k = pk bzw. einen optimalen Wert für log (1-k)/k=log (1-pk)/pk. Dies ist der bekannte, "Maximum" A-Posteriori-(MAP-)Algorithmus, welcher einen Schätzwert für pk einschließt. Dieser Algorithmus, der hier als Soft-Deciding-MAP-(SDMAP-)Algorithmus bezeichnet wird, unterscheidet sich von dem Viterbi-Algorithmus und ist komplexer. Die erste Lösung ist nicht Gegenstand des vorliegenden Verfahrens, sondern dient nur der Referenz.
Bei der ersten Lösung erzeugt eine Einrichtung Entscheidungen mit einem optimalen Wert von k = pk bzw. einen optimalen Wert für log (1-k)/k=log (1-pk)/pk. Dies ist der bekannte, "Maximum" A-Posteriori-(MAP-)Algorithmus, welcher einen Schätzwert für pk einschließt. Dieser Algorithmus, der hier als Soft-Deciding-MAP-(SDMAP-)Algorithmus bezeichnet wird, unterscheidet sich von dem Viterbi-Algorithmus und ist komplexer. Die erste Lösung ist nicht Gegenstand des vorliegenden Verfahrens, sondern dient nur der Referenz.
Die zweite Lösung ist der SDV-Algorithmus, für welchen gefordert
wird, daß er dieselben harten Entscheidungen wie der
Viterbi-Algorithmus liefert, welche nur ML für die Folge und
nicht MAP für die Symbole sind. Daher wird der ursprüngliche
Viterbi-Algorithmus genommen und durch eine Fehlerwahrscheinlichkeit-
Bewertungseinrichtung vergrößert, welche schließlich
den Wert ûk log (1-k)/k für jedes Bit uk als den Soft-
Decision-Wert liefert. Hierbei soll die zusätzliche Komplexibilität
so klein wie möglich gehalten werden. Ferner sollen
Soft-Decisions zum selben Zeitpunkt k erhalten werden,
an welchem die Entscheidung von uk verfügbar ist, um weitere
Verzögerungen zu vermeiden.
Hinsichtlich des Empfängers erfolgt der Einfachheit halber
eine Beschränkung auf Netzdiagramme mit zwei Zweigen, die an
jedem Knotenpunkt enden. Bei Netz- oder Trellisdiagrammen
mit mehr als zwei Pfaden pro Zustand muß in optimaler Weise
der überlebende Pfad ("survivor path") nacheinander für jeden
anderen Pfad verglichen werden. Damit ist die Suche auf
den binären Fall reduziert, und das Verfahren läuft so, wie
es beschrieben ist, ab. Eine aufwandsgünstigere Methode besteht
darin, den überlebenden Pfad nur mit den P nächstbesten
Pfaden zu vergleichen, im Extremfall nur mit dem zweitbesten
Pfad, wobei dann P=1 ist.
Bei einem konventionellen Faltungscode der Rate 1/N werden
zu jedem eintreffenden Informationsbit genau N Kanalbits
übertragen; werden nunmehr nicht alle Kanalbits übertragen,
sondern geeignete Kanalbits gelöscht bzw. "gelocht", so wird
ein Code der Rate K/N erhalten. Die Coderate kann also erhöht
werden. Der Vorteil der gelochten Codes besteht darin,
daß das Trellisdiagramm prinzipiell gleich bleibt, insbesondere
bleibt die Anzahl der Pfade unverändert. Dadurch wird
der Codieraufwand nicht verändert. Dies schließt gelochte
Codes der Rate K/N ein, welche von einem Code der Rate 1/N
ausgehen, da sie das Netzdiagramm des Codes der Rate 1/N benutzen.
Die Anzahl von Zuständen S des Decoders ist S=2ν, wobei ν
das Codegedächtnis ist; es sind jedoch auch Decoder mit
reduzierter Zustandszahl möglich.
Der klassische Viterbi-Algorithmus trifft eine endgültige
Entscheidung mit einer Verzögerung δ, wobei δ groß genug
ist, so daß alle 2ν-Überlebenspfade mit einer ausreichend
hohen Wahrscheinlichkeit zusammengelaufen sind. Wie in Fig. 2
dargestellt, hat der Viterbi-Algorithmus je einen Überlebenspfad
für den Zustand sk zum Zeitpunkt k, wobei
1skS=2ν ist. Dies geschieht durch Auswählen des
Pfads mit der maximalen Wahrscheinlichkeits-Metrik, welche
für den Gaußschen Kanal der Logarithmus der Gaußschen Wahrscheinlichkeitsdichte
ist.
wobei xjn (m) das n-te Bit von N Bits in dem Zweig für den
m-ten Pfad zum Zeitpunkt j ist, yjn der empfangene Wert an
derselben Position ist, und Es/N₀ das Signal-Rauschleistungsverhältnis
(SNR) ist. Mit Hilfe dieser Formel ergibt
sich dann:
Prob{path 1} ∼ eM₁
Prob{path 2} ∼ eM₂ , (5)
Prob{path 2} ∼ eM₂ , (5)
wenn der Pfad mit der höheren Metrik mit m=1 bezeichnet
wird. Dies bedeutet dann M₁M₂, was wiederum beinhaltet,
daß der Viterbi-Algorithmus den Pfad 1 auswählt. Die Wahrscheinlichkeit,
daß der falsche Überlebenspfad gewählt wird,
ist dann:
Der Wert von psk ist 0,5, wenn M₁≈M₂ ist, und nähert sich
0, wenn M₁»M₂ ist. Mit dieser Wahrscheinlichkeit psk hat
der Viterbi-Algorithmus Fehler an all den e-Positionen gemacht,
wo die Informationsbits des Pfads 2 sich von dem
Pfad 1 unterscheiden. Hierbei sind mit e-Positionen die Anzahl
der Positionen bezeichnet, an denen die Informationsbits
der beiden untersuchten Pfade voneinander abweichen.
Beispielsweise weichen in Fig. 2 die Informationsbits im Intervall
von k-4 nach k-3 und im Intervall von k-3 nach k-2
ab. In allen anderen Zeitabschnitten sind die Bits paarweise
gleich. Also ist in diesem Beispiel e=2.
uj (1) ≠ uj (2), j = j₁, . . ., je . (7)
Positionen, an welchen uj (1)=uj (2) ist, werden nicht beeinflußt.
Der Wert δm soll die Länge dieser beiden Pfade sein,
bis sie zusammentreffen. Es ergeben sich dann e verschiedene
Informationswerte und (δm-e) nicht-verschiedene Werte.
Wenn nunmehr die Wahrscheinlichkeiten pj von vorherigen
fehlerhaften Entscheidungen beim Pfad 1 gespeichert worden
sind, dann werden diese Wahrscheinlichkeiten für die e
differierenden Entscheidungen auf diesem Weg entsprechend
aktualisiert. Um dies durchzuführen, sind die Informationsbits
der beiden Pfade miteinander zu vergleichen, um die
Stellen festzulegen, wo sie sich unterscheiden. Hierbei ist
jedoch zu beachten, daß die ersten ν Bits gleich sind, da
beide Wege in demselben Bit-Zustand enden. Für alle Zustände
kann ein Zeiger δp gespeichert werden, um die maximale Länge
von nicht ineinander übergegangenen Wegen anzuzeigen und um
nur von j=k-ν bis j=k-δp zu suchen. Ebenso könnte die
Rekursion unmittelbar entsprechend dem Wahrscheinlichkeitsverhältnis
durchgeführt werden:
Mit Hilfe von Gleichungen (6), (8) und (9) wird nach einer
entsprechenden Umformung erhalten:
Die Funktion f(Lj, Δ) sollte mit Lj und Δ als Eingangsveränderlichen
tabelliert werden und muß nicht bei jedem
Schritt berechnet werden. Der Faktor α verhindert ein
Überlaufen bei großem Signal-Rauschleistungs-Verhältnis.
Die richtige Wahl des Faktors α ist:
wobei dfree der freie Abstand des Codes ist.
Die Funktion kann auch angenähert werden durch
f(Lj, Δ) = min (Lj, Δ/α) , (11a)
Der Soft-Deciding-Viterbi-(SDV-)Algorithmus kann nunmehr
gebildet werden:
- a) klassischer Viterbi-Schritt:
Für jeden Zustand sk ist für beide Übergänge (sk-1, sk) zu berechnen: Zu finden ist dann: Γ(sk)=minΓ(sk-1, sk).
Zu speichern ist: Γ(sk) und der entsprechende Überlebenswert ûk(sk). - b) Aktualisierter Soft-Deciding-Wert: (*)
Für jeden Zustand sk ist zu berechnen: Δ = maxΓ(sk-1, sk) - minΓ(sk-1, sk).Zu initialisieren ist: k(sk) = +∞.
Für j=k-ν bis j=k-δm sind die zwei Wege zu vergleichen, welche bei sk ineinander übergehen, wenn
ûj (1) (sj) ≠ ûj (2) (sj); hierdurch wird dann j = f(j, Δ). - c) Endgültige Entscheidung:
Ein Zustand sk opt mit minimalem Γ(sk) ist zu finden.
Die harte Entscheidung ist dann ûk- w(sk opt) ∈ {±1}.
Die Soft-Decision ist dann ûk- δ(sk opt) · k- δ(sk opt) ∈ R . (*) - d) Der Wert k ist auf den Wert k+1|mod δ +1 zu setzen und dann zu wiederholen.
Nur durch die mit (*) gekennzeichneten Schritte ist der
klassische Viterbi-Algorithmus gemäß der Erfindung ergänzt.
Zur besseren Erläuterung des Algorithmus werden die Hard- und
Soft-Decision-Werte in zwei verschiedenen Feldern der Länge
δ+1 gespeichert. (Siehe Fig. 4.) Hierbei können die Hard-De
cision-Werte als die Vorzeichen der Soft-Decision-Werte be
trachtet werden.
Die Speicherung wird Modulo δ+1 durchgeführt, um Nachrich
ten beliebiger Länge zuzulassen. Natürlich kann die end
gültige Entscheidung zuerst getroffen werden und danach kann
die freie Position durch die aktuellen Werte überschrieben
werden. Dies bedeutet eine Modulo δ-Operation und führt
zu einer Reduzierung hinsichtlich der Speichergröße.
Eine Initialisierung mit +∞ bedeutet den höchstmöglichen
Wert.
Additive Metriken haben die Eigenschaft, daß eine von y
unabhängige Multiplikation oder Addition die Entscheidung
nicht ändert. Hierdurch wird es möglich,
zu aktualisieren.
Da xkn ∈ {±1} gilt, kann eine Realwert-Multiplikation ver
mieden werden. Darüber hinaus ist es möglich, den Faktor
2 Es/N₀ fallenzulasssen und diesen Term in der Berechnung von
Δ entweder durch Multiplikation oder durch Erweitern der aktuellen
Tabelle auf die Form f(Lk, Δ, Es/N₀) auszukommen.
Ein Langzeit-Signal-Rauschleistungs-Verhältnis muß mit Hilfe
bekannter Verfahren berechnet werden. Eine schlechte
Schätzung wirkt sich jedoch nur geringfügig auf die Leistung
aus und beeinflußt nicht das Vorzeichen der Entscheidungen.
Anstelle der optimalen Prozedur, wie sie oben beschrieben
wurde, bieten sich zwei modifizierte, aufwandsgünstige Lösungen
an:
- 1) Es wird der Zustand mit der günstigsten Metrik gesucht, und nur der ML-Pfad wird aufgefrischt. Dadurch erfolgt eine Reduktion der "soft"-Auffrischung um den Faktor 2ν.
- 2) Die Suche erfolgt generell nur im Bereich von j=k-ν bis j=k-δ′ mit δ′<δmδ.
Zu 2) ist noch zu betonen, daß die Informationsbits im Intervall
von k-(ν+1) nach k-ν immer abweichen. Es bietet sich
deshalb an, δ′=ν+1 zu setzen. Dieser Spezialfall ist
deshalb so interessant, weil eine "Suche" entfallen kann,
und weil der sogenannte "Update"-Wert durch eine einmalige
Operation ersetzt wird. Es kann nämlich jeweils Δ=M₁-M₂
direkt als Zuverlässigkeitswert an die zugehörige Speicherposition
des für jeden Zustand überlebenden Pfades beschrieben
werden. Eine Initialisierung ist demnach ebenfalls überflüssig.
Schließlich ist noch festzustellen, daß die klassische
Viterbi-Recursion mit Hilfe der Standardlösungen normiert
werden kann. Die neuesten Soft-Deciding-Werte erfordern,
abgesehen vom Wert α, keine weitere Normierung.
Wie in Fig. 4 schematisch angedeutet ist, besteht bei einer
ns Bit-Soft-Decision und einer Festpunkt-Arithmetik jeder
Überlebenspfad der Länge δ aus ns · δ Bits. Das erste der ns
Bits ist das Vorzeichenbit oder das Hard-Decision-Bit. Die
Wahrscheinlichkeitswerte sind dann Lk ∈ {0, 1 . . ., 2ns-1-1}.
Lk=0 zeigt den unzuverlässigsten Wert an und Lk=2ns-1-1
gibt den zuverlässigsten Wert an. Wenn die Metrik-Differenz Δ
gegeben ist, welche mit nΔ Bits quantisiert worden ist,
ist der aktualisierte Wahrscheinlichkeitswert in der in Fig. 6
dargestellten Tabelle gegeben. Die Tabelle wird nur einmal
mit Hilfe der Gleichung (10) berechnet und dann in einem ROM-Speicher
gespeichert. Folglich ist der zusätzliche Aufwand des
Soft-Deciding-Viterbi-(SDV-)Algorithmus bezüglich des Viter
bi-Algorithmus:
Speicherung:
- - 2ν · δ · ns Bits anstelle von 2ν · δ Bits
- - Verweistabelle mit 2n Δ +ns-1 Vektoren mit jeweils ns-1 Bits.
Berechnungs-Aufwand:
- - Maximal 2ν · (δ - ν) Bit-Vergleiche
- - 2ν · e Tabellenverweise, um Lk zu aktualisieren.
- - Langfristiger Kanalschätzwert zur Berechnung des Sig nal-Rauschleistungs-Verhältnisses.
Der Datentransfer wird im einzelnen nachstehend noch erläu
tert.
Die Größe e ist eine Zufallszahl und hängt von dem Kanalrau
schen und der Code-Struktur ab. Für ein hohes Signal-Rausch
leistungs-Verhältnis gilt:
wobei cdfree die Gesamtanzahl an Bitfehlern in allen
adfree-Pfaden mit freiem Abstand dfree normiert auf ein In
formationsbit, ist. Für ein niedriges Signal-Rauschlei
stungs-Verhältnis ist die Größe e nach oben begrenzt durch
Der Soft-Deciding-Viterbi-(SDV-)Algorithmus kann in einer
"Pipeline"-Struktur durchgeführt werden (wobei mit einer
Symbolrate 1/T getaktet wird (siehe Fig. 3)). Folglich ist
eine sehr schnelle Durchführung möglich. Die hierfür erfor
derlichen Einheiten sind eine Metrik-Inkrement-Einheit
(Transition Metric-Unit (TMU)), eine Addier-Vergleich-Aus
wähl-(ACS-) Einheit und ein Pfad-RAM (einschließlich einer
Pfad-Auffrisch-Einheit (PAU)). Hierbei gibt es keine Wech
selwirkung zwischen der ACS-Einheit und dem Pfadspeicher-
RAM.
Für jedes empfangene Symbol yk berechnet die TMU-Einheit die
Metrik-Inkremente für alle möglichen Übergänge. Diese Ein
heit ist dieselbe wie die entsprechende Einheit in einem
herkömmlichen Viterbi-Algorithmus. Es ist nur eine andere
TMU-Einheit hinzuzufügen, wenn der (Soft-Deciding-)Viterbi-
Algorithmus als Demodulator, Decoder oder Entzerrer arbei
tet.
Die TMU-Einheit liefert die Metrik-Inkremente an die ACS-
Einheit, welche die Metrik-Aktualisierung durchführt (siehe
Gleichung (12)). Die ACS-Einheit bleibt auch unverändert im Ver
gleich mit dem herkömmlichen Viterbi-Algorithmus. In Viter
bi-Algorithmen ist die ACS-Einheit der Engpaß. Diese Einheit
begrenzt die Geschwindigkeit, da jede Rekursion beendet sein
muß, bevor die nächste starten kann. Ein weiteres Pipelining
dieser Einheit ist unmöglich. Daher wird bei zeitkritischen
Anwendungen diese Einheit für jeden Zustand in paralleler
Form ausgeführt. Die einzige Modifikation der ACS-Einheit
für den Soft-Deciding-Viterbi-Algorithmus gehört zu der Be
rechnung von Δ, welche lediglich eine n-Bit-Substraktion
ist, und der größere Datentransfer zwischen der ACS-Einheit
und der Pfadspeicher-Einheit von (1 + nΔ) Bits statt einem
Bit.
Schließlich werden die Daten in dem Pfad-RAM gespeichert;
nur diese Speicher-Einrichtung muß daher geändert werden.
Normalerweise wird die Information in jedem Zustand deco
diert und das bzw. die Informations-Bit(s) wird bzw. werden
zusammen mit der Folge gespeichert, die zu dem vorherigen
Zustand geführt hat. Nun werden jedoch nicht nur die harten
Informationsbits, sondern auch ein Vektor von ns Bits ge
speichert, welcher auch die Zuverlässigkeitsinformation ent
hält.
Ein Blockdiagramm eines modifizierten Pfad-RAM ist in Fig. 4
dargestellt. Er ist als eine 2ν · δ · ns-Matrix organi
siert, wobei 2ν · δ Bits zu den Hard-Decisions gehören, wäh
rend der Rest die Zuverlässigkeitsinformation ist.
Die Soft-Deciding-Aktualisierung ist in Fig. 5 dargestellt. Es
werden zwei Pfade angenommen, welche zum Zeitpunkt k divergie
ren und zum Zeitpunkt k - δm wieder zusammenkommen. (Siehe
Fig. 2 und 4.) Eine sogenannte Pfad-Auffrisch-Einheit (PAU)
wird verwendet, welche über die gespeicherten Informationsbits
"gleitet". Der Bereich, wo die Informationsbits u(1) und u(2)
verschieden sein können, ist j = k - δm bis j = k - ν. In
all den Fällen, in welchen die Bits beim Tabellenlesen ver
schieden sind, wird über Gleichung (10) deren Aktualisierung ermög
licht. Das Freigabesignal wird einfach durch ein XOR-Gate er
zeugt (siehe Fig. 6).
Diese serielle Realisierung begrenzt den Schaltungsaufwand,
verlangsamt aber die Geschwindigkeit. Jedoch kann die Pfad-
Auffrisch-Einheit (PAU) auch in paralleler Form, z. B. in
(δ - ν) gesonderten Einheiten pro Zustand realisiert werden.
Dann hat jede Einheit nur ein Bit-Paar zu vergleichen und
(höchstens) eine Tabellen-Auffrischung für jedes Symbol
durchzuführen. Wenn dies mit der Einheit ASC verglichen wird,
in welcher Operationen mit reellen Zahlen durchzuführen sind,
dann bleibt die Einheit ASC der Engpaß. Der Soft-Deciding-Vi
terbi-Algorithmus begrenzt nicht die Geschwindigkeit.
Die endgültige Entscheidung unterscheidet sich nicht von dem
herkömmlichen Register-Austauschverfahren; lediglich der Daten
transfer ist um einen Faktor ns größer.
Der erfindungsgemäße Viterbi-Algorithmus mit Analog-Entschei
dungen (SDVA) arbeitet besser als ein herkömmlicher Viterbi-
Decoder, -Demodulator oder -Entzerrer, wenn eine Verkettung
gegeben ist. Dies kann einschließen Modulationen mit Gedächt
nis, z. B. eine Trellis-codierte Modulation (TCM), oder Modula
tionsverfahren mit konstanter Einhüllender, wie CPM (Continuous
Phase Modulation) oder TFM (Tamed FM), Kanäle mit Speicher,
z. B. Filterkanäle mit Nachbarsymbol-Interferenz (ISI), fre
quenz-selektive Kanäle oder auch Speichermedien, wie magneti
sche Aufzeichnungen; ein Codieren mit Speicher, z. B. Faltungs
codes, und alle möglichen Kombinationen daraus.
Im folgenden werden einige Anwendungen von praktischem Inter
esse beschrieben. Von der Anmelderin wurde der Nutzeffekt des
erfindungsgemäßen Viterbi-Algorithmus mit Analogwert-Entschei
dungen (SDVA) untersucht und die Ergebnisse wurden mit dem SD-
MAP-Algorithmus verglichen, welcher der optimale symbolweise
Empfänger ist. Auch wurden umfassende Computer-Simulationen
durchgeführt. Die Ergebnisse zeigen, daß die Verschlechterung
des SDV-Algorithmus im Vergleich zum SD-MAP-Algorithmus in der
Größenordnung von 0,2 dB liegt. Jedoch ist der Gewinn vergli
chen mit den Hard-Decisions 2 dB bis 6 dB.
Ein verkettetes Codieren mit inneren und äußeren Faltungs
codes ist ebenfalls sehr vielversprechend. Bei dem inneren
Code werden die soft-quantisierten empfangenen Abtastwerte
verwendet, die im Falle von Kanälen mit Gedächtnis möglicher
weise durch die Verwendung von Kanalzustandsinformation ver
bessert werden können. Mit den vorstehend erwähnten Empfängern
kann auch der äußere Decoder eine Soft-Decision-Maximum-Like
lihood-Decodierung durchführen.
Beispielsweise wurde als innerer Code der Code mit R = 1/2 und
ν = 3 verwendet, und als äußerer Code der punktierte (gelochte)
Code mit R = 2/3 und ν = 3 verwendet (siehe Tabelle 1). Beide
Codes wurden durch Spreizung getrennt. Die Gesamtcoderate ist
R = Ri · R₀ = 1/3.
Da alle Codes von demselben Muttercode abgeleitet werden, sind
die Netzdiagramme dieselben und vorteilhafterweise werden
beide Codes entsprechend verarbeitet, die denselben Viterbi-
Algorithmus nutzen, bei welchem der neue soft-verbesserte
Empfänger für den inneren Code und der herkömmliche Viterbi-
Algorithmus für den äußeren Code verwendet wird. Auch ist
bereits eine Struktur geschaffen, bei welcher in effizienter
Weise ebenfalls das Spreizen gemeinsam genutzt wird.
Im Ergebnis sind dann die Bitfehler-Kurven steiler und folg
lich vielversprechender. Dies gilt bei Verknüpfen von zwei
Codes im Vergleich zu einem einzelnen Faltungscode einer Rate
von 1/3 und derselben Empfänger-Komplexität. Der Gewinn ist
0,7 dB bei Pb = 10-5. Eine Verknüpfung ohne die Verwendung von
Soft-Decisions ist aussichtslos.
Hinsichtlich einer optimalen Aufteilung zwischen dem inneren
und äußeren Code wurden mehrere niederratige, raten-kompatib
le, gelochte Codes (RCPC-Codes) als innere Codes und ausge
wählte hochratige gelochte Codes so verwendet, daß die Gesamt
rate R = Ri · R₀ = 1/3 erhalten blieb (Ri R₀ 1). Die wich
tigsten Parameter der ausgewählten Codes sind in der am Ende
der Beschreibung angegebenen Tabelle 2 aufgelistet. Simulati
onen haben gezeigt, daß für niedrige Signal-Rauschleistungs-
Verhältnisse der äußere Code mit der höchsten Rate erwar
tungsgemäß am besten arbeitet. Jedoch ist in dem interessie
renden SNR-Bereich die Aufteilung von Ri = 1/2 und R₀ = 2/3
die beste.
Auch bei Faltungscodes besteht in einer optimalen und elegan
ten Weise die Möglichkeit einer Soft-Decision-Decodierung.
Auch gibt es einfache Blockcodes, die mit "soft decisions"
decodiert werden können. Solche Codes sind z. B. Parity Check
Codes oder Golay Codes. Solche Codes können dem SDV-Algorith
mus nachgeschaltet werden und führen als Stufendecodierung zu
erheblichen Verbesserungen.
Eine mögliche Anwendung dieser Kombination von Faltungscodes
ist die Kanalcodierung in dem GSM-System. Hierbei wird die
Codierung (bei "full rate speed") üblicherweise auf folgende
Weise durchgeführt:
Ein Block von 260 netto Sprachbits wird in drei Empfindlich keits- oder Sensibilitätsklassen zusammengefaßt. Die 50 Bits der empfindlichsten Klasse (Klasse 1a) werden um 3 Paritäts bits vergrößert, um unkorrigierbare Fehler festzustellen. Bei einem Fehler wird gewöhnlich der gesamte Block ignoriert und es findet eine Interpolation statt. Es soll nun ein "parti eller Soft-Deciding-Viterbi-Algorithmus" mit Parity-Check an genommen werden, welcher Soft-Decisions nur bei Bits der Klas se 1a und Hard-Decisions für die restlichen Bits der Klasse 1b liefert. Dann kann ein Soft-Decision-Parity Check durchgeführt werden, der gegebenenfalls weitere Fehler korrigiert.
Ein Block von 260 netto Sprachbits wird in drei Empfindlich keits- oder Sensibilitätsklassen zusammengefaßt. Die 50 Bits der empfindlichsten Klasse (Klasse 1a) werden um 3 Paritäts bits vergrößert, um unkorrigierbare Fehler festzustellen. Bei einem Fehler wird gewöhnlich der gesamte Block ignoriert und es findet eine Interpolation statt. Es soll nun ein "parti eller Soft-Deciding-Viterbi-Algorithmus" mit Parity-Check an genommen werden, welcher Soft-Decisions nur bei Bits der Klas se 1a und Hard-Decisions für die restlichen Bits der Klasse 1b liefert. Dann kann ein Soft-Decision-Parity Check durchgeführt werden, der gegebenenfalls weitere Fehler korrigiert.
Alternativ kann, wenn Fehler durch den Parity Check festge
stellt werden, eine Überlagerung (Maximum-Ratio Combining) mit
dem "soft"-Wert des vorherigen Blocks durchgeführt wer
den:
Dies kann gegebenenfalls auch durch Kanalzustandsinformationen
qk verbessert werden:
Dadurch wird eine "weiche" Kombination statt einer "harten"
Interpolation erreicht.
Codierte Modulation ist in den letzten Jahren auf großes In
teresse gestoßen. Der Grund hierfür ist die Bandbreiten-Effi
zienz. Im Unterschied hierzu führen Faltungscodes zu einer
Bandbreitendehnung, welche proportional der Code-Rate ist,
wenn die Anzahl der Elemente des Symbolraumes unverändert
bleibt.
Hierzu wurde die Leistungsfähigkeit des Ungerboeck-Codes mit
4 Zuständen und der Rate von 2/3 untersucht. Das Signal sei
durch weißes Gaußsches Rauschen gestört, und wird mittels des
Soft-Deciding-Viterbi-Algorithmus verarbeitet. Die modifizier
te Gaußsche Wahrscheinlichkeitsmetrik liest sich dann (im Ver
gleich zu Gleichung (4)) folgendermaßen:
wobei xk (m) das komplexe Symbol des m-ten Pfades ist, welcher
dem Netzdiagramm entspricht, und yk der empfangene komplexe
Wert zur selben Zeit k ist, wobei xk (m) und yk in komplexer
Schreibweise angeführt sind. Im Ergebnis ist dann das Signal-
Rauschleistungs-Verhältnis (SNR) des Soft-Deciding-Viterbi-Al
gorithmus viel besser als am Eingang (üblicherweise um mehr
als 3 dB). Mit diesem verbesserten Signal-Rauschleistungs-Ver
hältnis (SNR) arbeitet dann ein Decoder in der nächsten Stufe
viel besser.
Das Entzerren ist eine Herausforderung bei schnellen digitalen
Übertragungen über zeit-dispersive Kanäle, z. B. Mobilfunkkanä
le. Hierbei führt der Viterbi-Entzerrer die gewünschte maximal
wahrscheinliche Folgenbewertung durch. Jedoch ist in codierten
Systemen die Schwierigkeit offensichtlich, daß der Viterbi-
Entzerrer Hard-Decisions an den äußeren Decoder liefert.
Es wurde daher der SDV-Algorithmus und der SD-MAP-Algorithmus
bei frequenzselektiven Fading-Kanälen untersucht. Für den Ka
nal wurde eine mit Abgriffen versehene Verzögerungsleitung mit
(L + 1) unabhängigen Verstärkungsfaktoren angenommen. Dieser
Kanal, der eine Idealisierung des mobilen Mehrwegkanals dar
stellt, kann als der innere Code angesehen werden. Die modifi
zierte Gaußsche Wahrscheinlichkeitsmetrik liest sich dann (im
Vergleich zu Gleichung (4)) folgendermaßen:
wobei xk (m) das Symbol für den m-ten Weg ist, welcher dem Netz
diagramm entspricht, fk (l) der l-te Verstärkungsfaktor ist
(wobei 0 ≦ l ≦ L gilt, wenn yk der empfangene Wert zum
selben Zeitpunkt k ist, wobei xk (m), yk und fk (l) in komple
xer Schreibweise erscheinen. Der Wert ES/N₀ ist der mittle
re Signal-Rauschleistungs-Verhältniswert. Es zeigt, daß die
Veränderliche am Ausgang des SDV-Algorithmus und des SDMAP-
Algorithmus zumindest in dem interessierenden Signal-Rausch
leistungs-Verhältnis-Bereich annähernd eine Gaußsche Vertei
lung aufweist. Dies zeigt an, daß der frequenz-selektive
Fading-Kanal in einen AWGN-Kanal transformiert wird, wenn
die Spreizung groß genug ist. Als äußerer Code wurde ein
Faltungscode der Rate 1/2 mit einem Gedächtnis ν = 3 gewählt
(siehe Tabelle 1). Der Gewinn bei dem SDV-Algorithmus und
bei dem SDMAP-Algorithmus liegt jeweils bei Pb = 10-3 in der
Größenordnung von 4 dB im Vergleich zu den Hard-Decisions.
Ähnliche Ergebnisse wurden für Trellis-Codes als äußere
Codes hergeleitet. Wie erwartet, ist der Gewinn infolge
Soft-Decisions um so größer, je schlechter der Kanal ist.
Deswegen ist ein erfindungsgemäßer Soft-Deciding-Viterbi-
Empfänger vor allem bei Fading-Kanälen in besonders vorteil
hafter Weise zu verwenden.
R = 1/3, R = 1/2: | |
Muttercodes | |
R = 2/3: | punktierter Code |
Gedächtnis: | ν = 3 |
Generatorpolynome: | 15, 17, 13 (in oktaler Schreibweise) |
di: | Distanzspektrum |
cdi: | Informations-Gewichtsspektrum (wobei cdi auf jedes Informationsbit normiert ist) |
Innere Codes: punktierte Codes
Äußere Codes: punktierte Codes
Gedächtnis: ν=3
Generator-Polynome: 15, 17, 13 (in oktaler Schreibweise)
dfree: Distanzspektrum
cdfree: normierte Anzahl von Bitfehlern des Minimum-Distanzpfades (pro Informationsbit)
Äußere Codes: punktierte Codes
Gedächtnis: ν=3
Generator-Polynome: 15, 17, 13 (in oktaler Schreibweise)
dfree: Distanzspektrum
cdfree: normierte Anzahl von Bitfehlern des Minimum-Distanzpfades (pro Informationsbit)
Claims (7)
1. Verfahren zur Verallgemeinerung des Viterbi-Algorithmus,
bei welchem in einer Metrik-Inkrement-Einheit (TMU) die
Übergangskosten gebildet werden und in der nachgeschalteten
Addier-Vergleich-Auswähl-(ACS-)Einheit ein Addieren, ein Ver
gleichen sowie ein Auswählen vorgenommen werden, dadurch
gekennzeichnet, daß
für jeden Zustand die Differenzkosten von zwei eintreffenden Pfaden berechnet werden, wobei eine Zuverlässigkeitsinforma tion am Anfang jedes Pfades auf den höchsten Wert festgelegt wird,
dann der Zuverlässigkeitswert des Pfades mit den kleinsten Kosten an den Stellen aufgefrischt wird, wo die Informati onsstellen von dem konkurrierenden Pfad abweichen, wobei das Auffrischen gemäß einer Tabelle vorgenommen wird und wobei der vorherige Wert der Zuverlässigkeitsinformation und die Differenzkosten (Δ) als Eingangsgröße in der Tabelle ange legt werden,
hierauf der neue Wert aus der Tabelle entnommen wird und zu sammen mit harten Entscheidungen als Pfadgedächtnis abge speichert wird, wobei das Abspeichern in Form von Fest- oder Gleitpunkt-Werten erfolgt, und
schließlich die Analogwertentscheidung aus der Stelle her ausgelesen wird, die sich nach einer Entscheidungsverzöge rung (δ) für den Pfad mit den kleinsten Kosten ergibt, wo bei das Vorzeichen der Analogwert-Entscheidungen die harten Entscheidungen des bekannten Viterbi-Algorithmus sind.
für jeden Zustand die Differenzkosten von zwei eintreffenden Pfaden berechnet werden, wobei eine Zuverlässigkeitsinforma tion am Anfang jedes Pfades auf den höchsten Wert festgelegt wird,
dann der Zuverlässigkeitswert des Pfades mit den kleinsten Kosten an den Stellen aufgefrischt wird, wo die Informati onsstellen von dem konkurrierenden Pfad abweichen, wobei das Auffrischen gemäß einer Tabelle vorgenommen wird und wobei der vorherige Wert der Zuverlässigkeitsinformation und die Differenzkosten (Δ) als Eingangsgröße in der Tabelle ange legt werden,
hierauf der neue Wert aus der Tabelle entnommen wird und zu sammen mit harten Entscheidungen als Pfadgedächtnis abge speichert wird, wobei das Abspeichern in Form von Fest- oder Gleitpunkt-Werten erfolgt, und
schließlich die Analogwertentscheidung aus der Stelle her ausgelesen wird, die sich nach einer Entscheidungsverzöge rung (δ) für den Pfad mit den kleinsten Kosten ergibt, wo bei das Vorzeichen der Analogwert-Entscheidungen die harten Entscheidungen des bekannten Viterbi-Algorithmus sind.
2. Verfahren zum Modifizieren des Viterbi-Algorithmus nach
Anspruch 1, dadurch gekennzeichnet, daß zum
Auffrischen der Zuverlässigkeitsinformation das Minimum aus
der alten Zuverlässigkeitsinformation und - durch Einführen
eines Faktors (α) - den normierten Pfad-Differenzkosten
(Δ/α) gebildet wird und als Pfadgedächtnis abgespeichert
wird.
3. Verfahren nach Anspruch 1 oder Anspruch 2, dadurch ge
kennzeichnet, daß zum Pfadauffrischen eine Pfad-
Auffrischeinheit (PAU) in einem gewissen Bereich (k - ν bis
k - δp mit ν ≦ δp ≦ δm) die Informationsbits der beiden kon
kurrierenden Pfade auf Gleichheit überprüft und bei einer
Ungleichheit den Auffrischvorgang aktiviert, wobei mit k ein
Zeitindex, mit ν ein Codegedächtnis und mit δ eine Verzö
gerung bzw. Eindringtiefe bezeichnet sind.
4. Einrichtung zum Durchführen der Verfahren nach den An
sprüchen 1 bis 3, mit einer Metrik-Inkrement-Einheit (TMU),
in welcher die Kosten gebildet werden, und mit einer Addier-
Vergleich- und Auswähl-(ACS-)Einheit, in welcher ein Addier
ren, ein Vergleichen sowie ein Auswählen vorgenommen werden,
dadurch gekennzeichnet, daß der Addier-Ver
gleich-Auswähl-(ACS-)Einheit ein Pfad-RAM sowie eine Pfad-
Auffrischeinheit (PAU) nachgeschaltet sind, um zum Pfadauf
frischen in einem bestimmten Bereich (k - ν bis k - δm) die
Informationsbits der beiden konkurrierenden Pfade auf
Gleichheit zu überprüfen, und um bei Ungleichheit den Auf
frischvorgang in dem Pfad-RAM zu aktivieren.
5. Einrichtung nach Anspruch 4, gekennzeichnet
durch eine Einrichtung zum Normieren des Auffrischens der
Zuverlässigkeitsinformation durch Einführen eines Faktors
(α), um dadurch einer Festkomma-Darstellung zu genügen, und
um einen Überlauf zu vermeiden.
6. Einrichtung nach einem der Ansprüche 4 oder 5, dadurch
gekennzeichnet, daß für jeden von S-Zuständen
jeweils eine Pfad-Auffrischeinheit (PAU) in der Weise vorge
sehen ist, daß durch diese Parallelanordnung bezüglich des
Vorsehens nur einer einzigen Pfad-Auffrischeinheit (PAU)
Zeitgewinne in der Größe eines Faktors S erzielt werden.
7. Einrichtung nach einem der Ansprüche 4 bis 6, dadurch
gekennzeichnet, daß für jedes Zeitintervall
(k - ν bis k - δp) eine gesonderte Pfad-Auffrischeinheit (PAU)
in der Weise vorgesehen ist, daß durch eine derartige Paral
lelanordnung Zeitgewinne in der Größe eines Faktors (ν - δp)
erzielbar sind.
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE3910739A DE3910739C3 (de) | 1989-04-03 | 1989-04-03 | Verfahren zum Verallgemeinern des Viterbi-Algorithmus und Einrichtungen zur Durchführung des Verfahrens |
JP2089006A JP2533219B2 (ja) | 1989-04-03 | 1990-04-03 | ビタビ復号方法及び装置 |
EP90106375A EP0391354B1 (de) | 1989-04-03 | 1990-04-03 | Verfahren zum Verallgemeinern des Viterbi-Algorithmus und Einrichtungen zur Durchführung des Verfahrens |
US07/504,357 US5181209A (en) | 1989-04-03 | 1990-04-03 | Method for generalizing the viterbi algorithm and devices for executing the method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE3910739A DE3910739C3 (de) | 1989-04-03 | 1989-04-03 | Verfahren zum Verallgemeinern des Viterbi-Algorithmus und Einrichtungen zur Durchführung des Verfahrens |
Publications (3)
Publication Number | Publication Date |
---|---|
DE3910739A1 DE3910739A1 (de) | 1990-10-11 |
DE3910739C2 true DE3910739C2 (de) | 1992-05-21 |
DE3910739C3 DE3910739C3 (de) | 1996-11-21 |
Family
ID=6377734
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE3910739A Expired - Lifetime DE3910739C3 (de) | 1989-04-03 | 1989-04-03 | Verfahren zum Verallgemeinern des Viterbi-Algorithmus und Einrichtungen zur Durchführung des Verfahrens |
Country Status (4)
Country | Link |
---|---|
US (1) | US5181209A (de) |
EP (1) | EP0391354B1 (de) |
JP (1) | JP2533219B2 (de) |
DE (1) | DE3910739C3 (de) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE4224214A1 (de) * | 1992-07-22 | 1994-01-27 | Deutsche Forsch Luft Raumfahrt | Verfahren zur quellengesteuerten Kanaldecodierung durch Erweiterung des Viterbi-Algorithmus |
DE19612715A1 (de) * | 1995-03-31 | 1996-10-10 | Motorola Inc | Dekoder und zugehöriges Verfahren |
DE19717546A1 (de) * | 1996-12-05 | 1998-06-10 | Deutsche Telekom Ag | Verfahren und Vorrichtung zur Decodierung bei einem CDMA-Übertragungssystem zum Demodulieren eines Empfangssignals, das in serieller Codeverkettung vorliegt |
Families Citing this family (77)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE3911999A1 (de) * | 1989-04-12 | 1990-10-18 | Philips Patentverwaltung | Uebertragungssystem |
DE4038251A1 (de) * | 1990-11-30 | 1992-06-04 | Philips Patentverwaltung | Entzerrer fuer ein digitales uebertragungssystem |
GB9126431D0 (en) * | 1991-12-11 | 1992-02-12 | Signal Processors Ltd | Data transmission technique |
EP0582346A1 (de) * | 1992-08-03 | 1994-02-09 | Koninklijke Philips Electronics N.V. | Übertragungssystem mit Detektion bei einer erhöhten Abtastgeschwindigkeit |
US5537444A (en) * | 1993-01-14 | 1996-07-16 | At&T Corp. | Extended list output and soft symbol output viterbi algorithms |
US5424881A (en) | 1993-02-01 | 1995-06-13 | Cirrus Logic, Inc. | Synchronous read channel |
DE4318977A1 (de) * | 1993-06-08 | 1995-01-05 | Kommunikations Elektronik | Verfahren zur Ausnutzung der Störungskorrelation bei Digitalsignalübertragung |
GB2281179B (en) * | 1993-08-18 | 1998-03-11 | Roke Manor Research | Apparatus for use in equipment providing a digital radio link between a fixed and a mobile radio unit |
US5412669A (en) * | 1993-12-09 | 1995-05-02 | Cirrus Logic, Inc. | Add, compare and select circuit |
US5539757A (en) * | 1993-12-22 | 1996-07-23 | At&T Corp. | Error correction systems with modified Viterbi decoding |
US5471500A (en) * | 1994-03-08 | 1995-11-28 | At&T Ipm Corp. | Soft symbol decoding |
US5636230A (en) * | 1994-05-31 | 1997-06-03 | Motorola, Inc. | Method for eliminating a receiving data unit as a source of excessive resend requests |
JP2864988B2 (ja) * | 1994-06-21 | 1999-03-08 | 日本電気株式会社 | 軟判定信号出力形受信機 |
DE4431237A1 (de) * | 1994-09-02 | 1996-03-07 | Bosch Gmbh Robert | Verfahren zur Gewinnung von bitspezifischen Zuverlässigkeitsinformationen |
FR2724273B1 (fr) * | 1994-09-05 | 1997-01-03 | Sgs Thomson Microelectronics | Circuit de traitement de signal pour mettre en oeuvre un algorithme de viterbi |
FI944739A (fi) | 1994-10-07 | 1996-04-08 | Nokia Telecommunications Oy | Häiriönpoistomenetelmä ja vastaanotin |
DE4437984A1 (de) * | 1994-10-25 | 1996-08-14 | Philips Patentverwaltung | Übertragungssystem mit Soft-Output-Dekodierung |
US5706313A (en) * | 1994-11-01 | 1998-01-06 | Motorola, Inc. | Soft decision digital communication method and apparatus |
US5586128A (en) * | 1994-11-17 | 1996-12-17 | Ericsson Ge Mobile Communications Inc. | System for decoding digital data using a variable decision depth |
FI98027C (fi) * | 1995-01-10 | 1997-03-25 | Nokia Telecommunications Oy | Pakettiradiojärjestelmä ja päätelaitteisto pakettiradiojärjestelmää varten |
IT1279114B1 (it) * | 1995-02-17 | 1997-12-04 | Cselt Centro Studi Lab Telecom | Procedimento per la ricezione di segnali affetti da interferenza intersimbolica e relativo dispositivo. |
FI950843A (fi) * | 1995-02-23 | 1996-08-24 | Nokia Telecommunications Oy | Menetelmä yhteyden laadun määrittämiseksi sekä vastaanotin |
US5951709A (en) * | 1995-02-28 | 1999-09-14 | Kabushiki Kaisha Toshiba | Radio communication system using TDD scheme |
JP3674111B2 (ja) * | 1995-10-25 | 2005-07-20 | 三菱電機株式会社 | データ伝送装置 |
US5995562A (en) * | 1995-10-25 | 1999-11-30 | Nec Corporation | Maximum-likelihood decoding |
US5802116A (en) * | 1996-04-04 | 1998-09-01 | Lucent Technologies Inc. | Soft decision Viterbi decoding with large constraint lengths |
US5822340A (en) * | 1996-05-10 | 1998-10-13 | Telefonaktiebolaget Lm Ericsson | Method for decoding data signals using fixed-length decision window |
US5996103A (en) * | 1996-07-31 | 1999-11-30 | Samsung Information Systems America | Apparatus and method for correcting errors in a communication system |
US5875199A (en) * | 1996-08-22 | 1999-02-23 | Lsi Logic Corporation | Video device with reed-solomon erasure decoder and method thereof |
US5815508A (en) * | 1996-10-11 | 1998-09-29 | Motorola, Inc. | Method and apparatus for providing information between communication devices |
US5953636A (en) * | 1996-10-30 | 1999-09-14 | Lsi Logic Corporation | Single-chip DBS receiver |
US6377610B1 (en) | 1997-04-25 | 2002-04-23 | Deutsche Telekom Ag | Decoding method and decoding device for a CDMA transmission system for demodulating a received signal available in serial code concatenation |
US5931966A (en) * | 1997-05-19 | 1999-08-03 | Carnegie Mellon University | Viterbi detector with a pipelined look-up table of squared errors |
US6029267A (en) * | 1997-11-25 | 2000-02-22 | Lucent Technologies Inc. | Single-cycle, soft decision, compare-select operation using dual-add processor |
KR100331332B1 (ko) * | 1998-11-02 | 2002-06-20 | 윤종용 | 비디오 데이터 송신 장치와 수신장치 및 그 방법 |
DE59909129D1 (de) * | 1998-12-01 | 2004-05-13 | Siemens Ag | Soft-decision-decodierung eines terminierten faltungscode |
US6665357B1 (en) | 1999-01-22 | 2003-12-16 | Sharp Laboratories Of America, Inc. | Soft-output turbo code decoder and optimized decoding method |
US6499128B1 (en) | 1999-02-18 | 2002-12-24 | Cisco Technology, Inc. | Iterated soft-decision decoding of block codes |
US6408419B1 (en) | 1999-07-01 | 2002-06-18 | Infineon Technologies North America Corp. | Trellis code for extended partial response maximum likelihood (EPRML) channel |
US7031406B1 (en) | 1999-08-09 | 2006-04-18 | Nortel Networks Limited | Information processing using a soft output Viterbi algorithm |
US6680980B1 (en) | 1999-09-03 | 2004-01-20 | Infineon Technologies North America Corp. | Supporting ME2PRML and M2EPRML with the same trellis structure |
US6415415B1 (en) | 1999-09-03 | 2002-07-02 | Infineon Technologies North America Corp. | Survival selection rule |
DE19943386A1 (de) | 1999-09-10 | 2001-03-22 | Infineon Technologies Ag | Verfahren zum Schätzen der Bitfehlerrate in einem Funkempfänger sowie entsprechender Funkempfänger |
CA2352206C (en) * | 1999-10-05 | 2005-12-06 | Samsung Electronics Co., Ltd. | Component decoder and method thereof in mobile communication system |
US6680986B1 (en) * | 1999-11-22 | 2004-01-20 | Intelsat Global Service Corporation | Method for implementing shared channel decoder for onboard processing satellites |
US6400290B1 (en) | 1999-11-29 | 2002-06-04 | Altera Corporation | Normalization implementation for a logmap decoder |
EP1254544B1 (de) * | 1999-12-03 | 2015-04-29 | Broadcom Corporation | Eingebettete trainingssequenzen für frequenzerfassung und -verfolgung |
AU4515801A (en) * | 1999-12-03 | 2001-06-18 | Broadcom Corporation | Viterbi slicer for turbo codes |
US6487694B1 (en) | 1999-12-20 | 2002-11-26 | Hitachi America, Ltd. | Method and apparatus for turbo-code decoding a convolution encoded data frame using symbol-by-symbol traceback and HR-SOVA |
EP1158683A1 (de) * | 2000-05-24 | 2001-11-28 | Infineon Technologies AG | Vorrichtung und Verfahren zum Durchführen eines Viterbi-Algorithmus |
DE10032237A1 (de) * | 2000-07-03 | 2002-01-17 | Infineon Technologies Ag | Viterbi-Entzerrung mittels vorausberechneter Metrikinkremente |
US20020034269A1 (en) * | 2000-07-28 | 2002-03-21 | Victor Demjanenko | Use of soft-decision or sum-product inner coders to improve the performance of outer coders |
EP1364479B1 (de) * | 2000-09-01 | 2010-04-28 | Broadcom Corporation | Satellitenempfänger und entsprechendes verfahren |
US7421044B2 (en) * | 2000-09-05 | 2008-09-02 | Broadcom Corporation | Quasi error free (QEF) communication using turbo codes |
US7242726B2 (en) * | 2000-09-12 | 2007-07-10 | Broadcom Corporation | Parallel concatenated code with soft-in soft-out interactive turbo decoder |
US6518892B2 (en) * | 2000-11-06 | 2003-02-11 | Broadcom Corporation | Stopping criteria for iterative decoding |
US6973615B1 (en) | 2000-12-15 | 2005-12-06 | Conexant Systems, Inc. | System of and method for decoding trellis codes |
US6865711B2 (en) * | 2000-12-15 | 2005-03-08 | Conexant Systems, Inc. | System of and method for decoding trellis codes |
EP2627008A3 (de) | 2000-12-29 | 2013-09-11 | Intel Mobile Communications GmbH | Für mehrere drahtlose Kommunikationsstandards konfigurierbarer Kanal-Codec-Prozessor |
KR100449578B1 (ko) | 2001-09-14 | 2004-09-21 | 한국전자통신연구원 | 3차원 이상의 블럭터보 부호에 대한 반복 복호 방법 |
US6476739B1 (en) | 2001-09-18 | 2002-11-05 | The Aerospace Corporation | Method and processing system for estimating likelihood ratios for input symbol values |
KR100456474B1 (ko) * | 2001-12-08 | 2004-11-09 | 한국전자통신연구원 | 블록터보 부호의 반복 복호 방법 및 블록터보 부호의 반복복호 프로그램을 저장한 기록매체 |
JP3671906B2 (ja) * | 2001-12-19 | 2005-07-13 | 日本電気株式会社 | 繰り返し連接符号復号回路及びそれを用いた符号化復号化システム |
EP1349286A1 (de) * | 2002-03-27 | 2003-10-01 | Siemens Aktiengesellschaft | Verfahren zur Decodierung einer mit Hilfe eines binären Faltungscodes verschlüsselten Datenfolge |
WO2003081786A1 (de) * | 2002-03-27 | 2003-10-02 | Siemens Aktiengesellschaft | Verfahren zur decodierung einer mit hilfe eines binären faltungscodes verschlüsselten datenfolge |
US6928605B2 (en) * | 2002-03-29 | 2005-08-09 | Intel Corporation | Add-compare-select accelerator using pre-compare-select-add operation |
US6973579B2 (en) | 2002-05-07 | 2005-12-06 | Interdigital Technology Corporation | Generation of user equipment identification specific scrambling code for the high speed shared control channel |
KR100487183B1 (ko) * | 2002-07-19 | 2005-05-03 | 삼성전자주식회사 | 터보 부호의 복호 장치 및 방법 |
US7346833B2 (en) * | 2002-11-05 | 2008-03-18 | Analog Devices, Inc. | Reduced complexity turbo decoding scheme |
US7103831B1 (en) | 2003-01-22 | 2006-09-05 | Conexant Systems, Inc. | Burst reliability and error locator for trellis codes |
EP1443509A3 (de) * | 2003-01-28 | 2006-01-11 | Kabushiki Kaisha Toshiba | Verfahren zur Signalauswertung, Vorrichtung zur Informationsaufzeichung/-wiedergabe, Informationswiedergabevorrichtung und Informationsaufzeichnungsmedium |
US7246295B2 (en) * | 2003-04-14 | 2007-07-17 | Agere Systems Inc. | Turbo decoder employing simplified log-map decoding |
US7222288B2 (en) * | 2004-07-30 | 2007-05-22 | Hellosoft, Inc. | Modified soft output Viterbi algorithm for truncated trellis |
US7467346B2 (en) * | 2005-08-18 | 2008-12-16 | Hitachi Global Storage Technologies Netherlands, B.V. | Decoding error correction codes using a modular single recursion implementation |
ES2281309B2 (es) * | 2007-04-19 | 2008-03-01 | Universidad Politecnica De Madrid | Procedimiento y arquitectura electronica para la deteccion sova optimabasado en el rastreo de puntos de fusion. |
US8924811B1 (en) * | 2010-01-12 | 2014-12-30 | Lockheed Martin Corporation | Fast, efficient architectures for inner and outer decoders for serial concatenated convolutional codes |
EP2408133A1 (de) | 2010-07-15 | 2012-01-18 | Thomson Licensing | Modifizierte Trellis-Codierung zur Löschungserzeugung |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4015238A (en) * | 1975-11-24 | 1977-03-29 | Harris Corporation | Metric updater for maximum likelihood decoder |
US4240156A (en) | 1979-03-29 | 1980-12-16 | Doland George D | Concatenated error correcting system |
US4519080A (en) * | 1982-10-29 | 1985-05-21 | Communications Satellite Corporation | Analog threshold decoder |
US4571734A (en) * | 1983-08-05 | 1986-02-18 | International Business Machines Corporation | Method and apparatus for decoding the output signal of a partial-response class-IV communication or recording-device channel |
JPS62135017A (ja) * | 1985-12-06 | 1987-06-18 | Toshiba Corp | ヴイタビ復号器 |
JPS62233933A (ja) * | 1986-04-03 | 1987-10-14 | Toshiba Corp | ヴイタビ復号法 |
GB8609711D0 (en) * | 1986-04-21 | 1986-05-29 | Clark A P | Channel estimation & detection |
JPS63122323A (ja) * | 1986-11-11 | 1988-05-26 | Mitsubishi Electric Corp | ヴイタビ復号装置 |
US4761784A (en) * | 1987-01-15 | 1988-08-02 | Racal Data Communications Inc. | Modem and method using multidimensional coded modulation |
US4748626A (en) * | 1987-01-28 | 1988-05-31 | Racal Data Communications Inc. | Viterbi decoder with reduced number of data move operations |
US5023889A (en) * | 1988-05-31 | 1991-06-11 | California Institute Of Technology | Trellis coded multilevel DPSK system with doppler correction for mobile satellite channels |
-
1989
- 1989-04-03 DE DE3910739A patent/DE3910739C3/de not_active Expired - Lifetime
-
1990
- 1990-04-03 JP JP2089006A patent/JP2533219B2/ja not_active Expired - Lifetime
- 1990-04-03 US US07/504,357 patent/US5181209A/en not_active Expired - Lifetime
- 1990-04-03 EP EP90106375A patent/EP0391354B1/de not_active Expired - Lifetime
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE4224214A1 (de) * | 1992-07-22 | 1994-01-27 | Deutsche Forsch Luft Raumfahrt | Verfahren zur quellengesteuerten Kanaldecodierung durch Erweiterung des Viterbi-Algorithmus |
DE19612715A1 (de) * | 1995-03-31 | 1996-10-10 | Motorola Inc | Dekoder und zugehöriges Verfahren |
DE19717546A1 (de) * | 1996-12-05 | 1998-06-10 | Deutsche Telekom Ag | Verfahren und Vorrichtung zur Decodierung bei einem CDMA-Übertragungssystem zum Demodulieren eines Empfangssignals, das in serieller Codeverkettung vorliegt |
DE19717546B4 (de) * | 1996-12-05 | 2014-05-15 | Deutsche Telekom Ag | Verfahren und Vorrichtung zur Decodierung bei einem CDMA-Übertragungssystem zum Demodulieren eines Empfangssignals, das in serieller Codeverkettung vorliegt |
Also Published As
Publication number | Publication date |
---|---|
EP0391354A3 (de) | 1992-04-01 |
DE3910739A1 (de) | 1990-10-11 |
DE3910739C3 (de) | 1996-11-21 |
US5181209A (en) | 1993-01-19 |
EP0391354A2 (de) | 1990-10-10 |
EP0391354B1 (de) | 1994-11-09 |
JPH02288512A (ja) | 1990-11-28 |
JP2533219B2 (ja) | 1996-09-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE3910739C2 (de) | ||
DE69736881T2 (de) | Parallel verketteter tail-biting-faltungskode und dekoder dafür | |
DE60113053T2 (de) | Vor-Dekoder für Turbodekoder, zur Rückgewinnung von punktierten Paritätssymbolen, sowie ein Verfahren zur Rückgewinnung eines Turbokodes | |
DE69532949T2 (de) | Verfahren und gerät zur dekoderoptimierung | |
DE69722331T2 (de) | Informationsbits-Übertragungsverfahren mit Fehlerkorrektur-Kodierung, Kodier- und Dekodiervorrichtung dafür | |
EP0392603B1 (de) | Übertragungssystem | |
DE69634155T2 (de) | Erfassung einer Konfidenz und eines Rahmen-Qualitäts-Signals in einem "soft decision"-Faltungs-Dekoder | |
DE69924752T2 (de) | Systeme und methoden zum empfangen eines modulierten signals, welches kodierte und nicht kordierte bits enthält, durch mehrdurchgangsdemodulation | |
DE4224214C2 (de) | Verfahren zur quellengesteuerten Kanaldecodierung durch Erweiterung des Viterbi-Algorithmus | |
DE69722571T2 (de) | System und Verfahren zur digitalen Übertragung mit einem Produktkode kombiniert mit multidimensionaler Modulation | |
DE19827815B4 (de) | Empfänger | |
DE112004002008B4 (de) | Vereinheitlichter Viterbi/Turbo-Decoder für mobile Telekommunikationssysteme | |
DE102018206132B4 (de) | Decodergestützte iterative Kanalschätzung | |
DE19612715A1 (de) | Dekoder und zugehöriges Verfahren | |
WO1996013105A1 (de) | Übertragungssystem mit soft-output-dekodierung bei reduziertem speicherbedarf | |
DE4038251A1 (de) | Entzerrer fuer ein digitales uebertragungssystem | |
DE10196688B3 (de) | Ein Decodierer für eine trellis-basierte Kanalcodierung | |
EP1269633B1 (de) | Optimierter turbo-decodierer | |
DE19934646C2 (de) | Verfahren und Vorrichtung zur iterativen Decodierung von verketteten Codes | |
EP1198890B1 (de) | Verfahren zum erzeugen von zuverlässigkeitsinformationen für die kanaldecodierung in einem funkempfänger sowie entsprechender funkempfänger | |
EP1249074B1 (de) | Verfahren zur decodierung eines datensignals | |
DE60207186T2 (de) | Kanal- und ortsinformationsbasierte Skalierung der Viterbi-Dekodierung | |
DE60118716T2 (de) | Log-MAP Dekodierung | |
DE19647653A1 (de) | Digitales Übertragungssystem mit trellisbasiertem, zustandsreduziertem Schätzverfahren | |
DE19959178A1 (de) | Verfahren und Anordnung zur Decodierung von Informationen |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OP8 | Request for examination as to paragraph 44 patent law | ||
D2 | Grant after examination | ||
8363 | Opposition against the patent | ||
8366 | Restricted maintained after opposition proceedings | ||
8305 | Restricted maintenance of patent after opposition | ||
D4 | Patent maintained restricted | ||
8327 | Change in the person/name/address of the patent owner |
Owner name: DEUTSCHES ZENTRUM FUER LUFT- UND RAUMFAHRT E.V., 5 |
|
8327 | Change in the person/name/address of the patent owner |
Owner name: DEUTSCHES ZENTRUM FUER LUFT-UND RAUMFAHRT E.V., 51 |
|
8327 | Change in the person/name/address of the patent owner |
Owner name: SAMSUNG ELECTRONICS CO., LTD., SEOUL/SOUL, KR |