DE602004013186T2 - Linear-approximation der max*-operation für log-map-decodierung - Google Patents

Linear-approximation der max*-operation für log-map-decodierung Download PDF

Info

Publication number
DE602004013186T2
DE602004013186T2 DE602004013186T DE602004013186T DE602004013186T2 DE 602004013186 T2 DE602004013186 T2 DE 602004013186T2 DE 602004013186 T DE602004013186 T DE 602004013186T DE 602004013186 T DE602004013186 T DE 602004013186T DE 602004013186 T2 DE602004013186 T2 DE 602004013186T2
Authority
DE
Germany
Prior art keywords
modf
max
value
modulo
linear approximation
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.)
Active
Application number
DE602004013186T
Other languages
English (en)
Other versions
DE602004013186D1 (en
Inventor
Gideon c/o Motorola KUTZ
Amir I Chass
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NXP USA Inc
Original Assignee
Freescale Semiconductor Inc
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 Freescale Semiconductor Inc filed Critical Freescale Semiconductor Inc
Publication of DE602004013186D1 publication Critical patent/DE602004013186D1/de
Application granted granted Critical
Publication of DE602004013186T2 publication Critical patent/DE602004013186T2/de
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/37Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
    • H03M13/39Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes
    • H03M13/3905Maximum a posteriori probability [MAP] decoding or approximations thereof based on trellis or lattice decoding, e.g. forward-backward algorithm, log-MAP decoding, max-log-MAP decoding
    • H03M13/3911Correction factor, e.g. approximations of the exp(1+x) function
    • 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/37Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
    • 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/37Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
    • H03M13/45Soft decoding, i.e. using symbol reliability information
    • 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/65Purpose and implementation aspects
    • H03M13/6577Representation or format of variables, register sizes or word-lengths and quantization
    • H03M13/6583Normalization other than scaling, e.g. by subtraction
    • H03M13/6586Modulo/modular normalization, e.g. 2's complement modulo implementations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0045Arrangements at the receiver end
    • H04L1/0055MAP-decoding

Description

  • Die vorliegende Erfindung betrifft einen Decoder für eine drahtlose Kommunikationsvorrichtung.
  • Der Einsatz drahtloser Kommunikationssysteme, um verschiedene Kommunikationsarten wie etwa Sprache und Datenübertragung zu bieten, ist weit verbreitet. Ein derartiges System ist das Breitband-Codemultiplexverfahren (WCDMA, englisch: Wideband Code Division Multiple Access), das bei verschiedenen miteinander im Wettbewerb stehenden drahtlosen Kommunikationsstandards eingesetzt wird, beispielsweise beim Third Generation Partnership Project 3GPP und 3GGP2.
  • Um eine Datenverfälschung zu vermeiden, die während einer RF-Übertragung (Hochfrequenz-Übertragung) auftreten kann, umfassen die verschiedenen drahtlosen Kommunikationsstandards typischerweise eine Art der Kanalcodierung. Eine verbreitete Kanalcodierungstechnik ist die Turbocodierung.
  • Turbocodierung umfasst das Verwenden eines Turbocodierers zum Codieren eines Codesegments (d. h. eines Datenpakets) und einen Turbodecodierer zum Decodieren des codierten Codesegments.
  • Ein Turbocodierer umfasst zwei Faltungscodierer (englisch: convolutional encoder) und eine Verschränkungseinrichtung (englisch: interleaver), wobei die Verschränkungseinrichtung die Informationsbits in dem Paket in Übereinstimmung mit einem bestimmten Verschränkungsschema mischt (d. h. verschränkt).
  • Der Turbocodierer verwendet einen ersten Faltungscodierer, um Informationsbits innerhalb eines Pakets zum Erzeugen einer ersten Sequenz von Paritätsbits zu codieren, parallel dazu, dass die Verschränkungseinrichtung die Informationsbits mischt, wobei die gemischten Informationsbits von einem zweiten Codierer codiert werden, um eine zweite Sequenz von Paritätsbits zu erzeugen. Die Informationsbits und die Paritätsbits in der ersten und zweiten Sequenz werden dann moduliert und zu einem Empfänger übertragen.
  • Die Informationsbits und die erste und zweite Sequenz von Paritätsbits werden durch einen Empfänger empfangen und durch einen Turbodecodierer decodiert.
  • Der Turbodecodierer speichert anfänglich die empfangenen Informationsbits und die Paritätsbits in der ersten und zweiten Sequenz in einem Puffer. Anfangs werden die Informationsbits und die erste Sequenz von Paritätsbits von dem ersten Faltungscodierer von dem Puffer geholt und durch einen ersten Soft Input Soft Output SISO-Decodierer decodiert, um ”extrinsische” Informationen zu bieten, welche Anpassungen beim Vetrauensniveau in die erkannten Werte für die Informationsbits angeben. Dann werden Zwischenergebnisse, welche die extrinsischen Informationen von dem ersten SISO-Decodierer umfassen, in einer der bei dem Sender verwendeten Codeverschränkung entsprechenden verschränkten Ordnung in dem Puffer gespeichert.
  • Die Zwischenergebnisse, die Informationsbits und die zweite Sequenz von Paritätsbits von dem zweiten Codierer werden von dem Puffer geholt und durch einen zweiten SISO-Decodierer decodiert, um extrinsische Informationen zu bieten, welche weitere Anpassungen bei dem Vertrauensniveau in die erkannten Werte für die Informationsbits angeben. Dann werden Zwischenergebnisse, welche die extrinsischen Informationen von dem zweiten SISO-Decodierer umfassen, in einer der beim Sender durchgeführten Codeverschränkung komplementären unverschränkten Reihenfolge in dem Puffer gespeichert. Die Zwischenergebnisse werden in einer nächsten Decodieriteration verwendet, die durch den Turbodecodierer durchgeführt wird. Der Turbodecodierer führt eine vorbestimmte Anzahl von Decodieriterationen durch, bevor er eine Entscheidung für den Wert des decodierten Informationsbits erzeugt.
  • Innerhalb von SISO-Decodern herkömmlich verwendete Algorithmen sind der Maximum-a-Posteriori MAP-Decodieralgorithmus und der log-MAP-Decodieralgorithmus. Der log-MAP-Decodieralgorithmus ist zu dem MAP-Decodieralgorithmus analog, wird aber in der logarithmischen Domäne durchgeführt.
  • Der MAP-Decodieralgorithmus verwendet Vorwärtszustandsmetriken, allgemein als Alphas α bezeichnet und Rückwärtszustandsmetriken, allgemein als Betas β bezeichnet, um weiche Ausgabeergebnisse zu bestimmen, wobei die Vorwärtszustandsmetriken α und Rückwärtszustandsmetriken β einen Zustand in einer Gitter- beziehungsweise Trellisstruktur (englisch: trellis structure) charakterisieren.
  • Innerhalb des log-MAP-Algorithmus wird die MAX*-Funktion verwendet, die durch MAX*(a(n), b(n)) dargestellt wird, wobei a(n) und b(n) Eingabewerte der MAX*-Funktion sind. Die Eingabewerte a(n) und b(n) können Vorwärtszustandsmetriken, Rückwärtszustandsmetriken oder eine Kombination aus beiden sein.
  • Die MAX*(a(n), b(n))-Funktion ist gleich MAX(a(n), b(n)) plus einem Korrekturwert, wobei der Korrekturwert gleich ist zu log(1 + exp(–|α(n) – b(n)|)).
  • Der MAX(a(n), b(n))-Ausdruck der Gleichung kann üblicherweise einfach berechnet werden, der Korrekturwert jedoch ist relativ schwierig zu berechnen und wird üblicherweise unter Verwenden einer linearen Approximierung, einer Stufenapproximierung oder einer Nachschlagtabelle approximiert.
  • Die Patentbeschreibung US 2002/018533 A1 offenbart eine Umsetzung, bei welcher ein Rechner eine lineare Approximierung einer MAX*-Funktion berechnet und eine Auswähleinrichtung einen MAX*-Ausgabewert aus der Gruppe aus a(n), b(n) und der berechneten linearen Approximierung basierend auf einer Bestimmung auswählt, ob ein vorbestimmter Schwellenwert für |a(n) – b(n)| erreicht wurde. Die Berechnung der linearen Approximierung basiert auf (a(n) + b(n) + DE)/2, wobei DE ein Schwellenwert ist.
  • Da die Zustandsmetrikberechnungen innerhalb des SISO-Decodierers durchgeführt werden, können die Werte innerhalb der akkumulierten Pfadmetriken einen Überlauf erzeugen, was zu falschen Ergebnissen führt.
  • Eine Lösung des Überlauf-Problems umfasst das Verwenden von Modulo-Berechnungen. Eine Modulo n Operation auf eine Zahl ergibt den Rest, wenn die Zahl durch n geteilt wird, zum Beispiel 10 (binär 1010) modulo 8 = 2 (binär 010) und 28 (binär 11100) modulo 16 = 12 (binär 1100). Wie aus den Beispielen gesehen werden kann, ergibt sich daraus, dass das Bestimmen eines Wertes für eine Modulo-Operation, bei der Rest ein Wert ist, der aus einer Potenzierung mit zwei stammt, sich einfach als eine Frage des Abdeckens unerwünschter Bits darstellt.
  • Die Modulo-Funktion, wie in 1 dargestellt, kann als eine Sägezahnfunktion betrachtet werden.
  • Eine alternative Umsetzung der Modulo-Funktion kann definiert werden durch:
    Figure 00040001
    was es erlaubt, negative Zahlen zu behandeln. Diese Funktion ist in 2 dargestellt.
  • Es ist wünschenswert, über eine Vorrichtung und Verfahren zum Erzeugen eines linear approximierten MAX*-log MAP-Algorithmus zu verfügen, der basierend auf Modulo-Funktionen wirkt.
  • Der Artikel von Wu, Y. u. a. mit dem Titel ”Internal data width in SISO decoding module with modular renormalization” veröffentlicht in Proc. IEEE 51. vehicular technology conference Tokio, Japan, Seiten 675 bis 679, Bezugsnummer XP000970706, offenbart einen Decodierer, der eine modulare Renormierungstechnik anwendet, um dem Überlauf der Zustandsmetriken Rechnung zu tragen.
  • Die vorliegende Erfindung bietet einen Decodierer für eine drahtlose Kommunikationsvorrichtung und ein Verfahren zum Erzeugen eines MAX*-Wertes wie in den beigefügten Ansprüchen beschrieben.
  • Als ein Beispiel wird nun eine Ausführungsform der Erfindung mit Bezug auf die Zeichnungen beschrieben, von denen:
  • 1 eine graphische Darstellung einer ersten Modulo-Funktion zeigt;
  • 2 eine graphische Darstellung einer zweiten Modulo-Funktion zeigt;
  • 3 eine graphische Darstellung der Variation des MAX*-Korrekturterms über |a(n) – b(n)| zeigt;
  • 4 einen Decodierer gemäß einer Ausführungsform der vorliegenden Erfindung zeigt.
  • Die Kurve A in 3 zeigt den Korrekturterm für die MAX*(a(n), b(n))-Funktion, (d. h. MAX*(a(n), b(n)) – MAX(a(n), b(n)) als eine Funktion von |a(n) – b(n)|) wobei |a(n) – b(n)| der Absolutwert der Differenz zwischen a(n) und b(n)) ist).
  • Wie aus Kurve A gesehen werden kann, ist der Korrekturwert für geringe Werte von |a(n) – b(n)| am größten und verringert sich Schrittweise zu Null, wenn |a(n) – b(n)| sich erhöht.
  • Wie oben erwähnt, besteht eine einfache Technik zum Approximieren des Korrekturterms darin, eine lineare Approximierung zu verwenden, wie durch Linie B in 3 dargestellt. Wie gezeigt, bietet die lineare Approximierung für niedrige Werte von eine gute Näherung für den Korrekturterm. Der Schnitt der Linie B mit der |a(n) – b(n)|-Achse gibt den |a(n) – b(n)|-Wert an, oberhalb dessen der Korrekturwert der linearen Approximierung gegen Null geht. Beim Verwenden einer linearer Approximierung bestimmt der Schnittpunkt folglich einen als C bezeichneten Schwellenwert zum Bestimmen, ob ein Korrekturwert auf |a(n) – b(n)| angewendet werden muss, wobei der Schnittpunkt durch die Gleichung der linearen Approximierung definiert ist.
  • Das Verwenden der Technik der linearen Approximierung erlaubt ein leichtes Berechnen der MAX*-Funktion wie nachfolgend beschrieben.
  • Eine geeignete Gleichung zur linearen Approximierung (d. h. der verwendete Korrekturterm) ist durch
    Figure 00050001
    gegeben.
  • Folglich kann die MAX*-Funktion geschrieben werden als:
    Figure 00050002
  • Um das oben diskutierte Problem des akkumulierten Zustandsmetriküberlaufs zu minimieren, werden die oben stehenden Ausdrücke in ihre entsprechenden ”modF”-Werte umgewandelt, wobei F derart gewählt wird, dass |a(n) – b(n)| < F gilt. F wird gewählt, indem der Algorithmus analysiert und es bestimmt wird, was der maximal mögliche Wert von |a(n) – b(n)| für alle a(n) und b(n) wäre, die in die MAX*-Funktion eingegeben werden können.
  • Um die Hardwareumsetzung zum Behandeln des Modulo-Wertes zu vereinfachen, ist F vorzugsweise ein Wert, der einer Potenzierung mit zwei entstammt.
    modF von a(n) wird a(n)modF.
    modF von b(n) wird b(n)modF.
    modF von (a(n) + b(n) + C)/2 ist jedoch
    Figure 00060001
  • Dies wird wie folgt gezeigt:
    Die Gleichung xmodF ist equivalent zu
    Figure 00060002
    wobei der ⌊x⌋-Ausdruck die Abrundungsfunktion der ”x” ist (auch als Gaussklammer oder englisch floor function bezeichnet).
  • Demgemäß gilt: (a(n) + C)modF = (a(n)modF + C)modFund
    (a(n) – b(n))modF = a(n) – b(n), dann und nur dann, wenn |a(n) – b(n)| < F gilt.
  • Das Verwenden dieser zwei Identitäten beweist:
    Figure 00070001
  • Für Werte von C < F/2 ist eine alternative Umsetzung des Modulo einer linearen Approximierung einer MAX-Funktion gleich zu:
    Figure 00070002
    wobei s aus dem Binärausdruck s = [a(m) xor b(m)] and [((a(m) xor a(m – 1)) and ((b(m) xor b(m – 1)] berechnet wird, wobei a und b durch m Bits dargestellt sind, so dass a(m) das Bit mit dem höchsten Stellenwert von a ist und a(m – 1) das Bit mit dem zweithöchsten Stellenwert ist.
  • Der Algorithmus ist in Silizium leicht zu berechnen, da s nur Binäroperationen aufweist und F als eine Zweierpotenz gewählt ist.
  • Ein Decodierer 400 zum Umsetzen der oben stehenden MAX*-Gleichung wird in 4 gezeigt und ist dazu ausgelegt, MAX(a(n)modF, b(n)modF) auszugeben, wenn |a(n) – b(n)| größer ist als der Schwellenwert C, und
    Figure 00070003
    auszugeben, wenn |a(n) – b(n)| geringer ist als der Schwellenwert C. Wenn |a(n) – b(n)| gleich groß C ist, dann kann entweder MAX(a(n)modF, b(n)modF) oder
    Figure 00080001
    ausgegeben werden.
  • Der Decodierer 400 umfasst eine erste Subtrahiereinheit 401, eine zweite Subtrahiereinheit 402, einen Rechner 403 in der Form einer Addiereinrichtung und eine Auswahleinheit 404 in der Form einer Multiplexeinheit. Die erste Subtrahiereinheit 401, die zweite Subtrahiereinheit 402 und die Addiereinrichtung 403 sind jede dazu ausgelegt, a(n)modF, b(n)modF und den Schwellenwert C zu empfangen.
  • Die erste Subtrahiereinheit 401 ist dazu ausgelegt, das Vorzeichen von (b(n)modF – a(n)modF – C)modF zu erzeugen. Die zweite Subtrahiereinheit 402 ist dazu ausgelegt, das Vorzeichen von (a(n)modF – b(n)modF – C)modF zu erzeugen. Die Addiereinheit 403 ist dazu ausgelegt
    Figure 00080002
    zu erzeugen, wobei das Teilen durch zwei einer Verschiebung der Bitposition um 1 entspricht.
  • Die modF-Operation wird durch Ignorieren des Überlaufs durchgeführt (d. h. das Übertragsbit der msb-Bitaddition (msb-englisch: most significant bit) wird ignoriert).
  • Die Ausgabe von der ersten Subtrahiereinheit 401, der zweiten Subtrahiereinheit 402 und der Addiereinheit 403 (d. h. das Vorzeichen von (b(n)modF – a(n)modF – C)modF, das Vorzeichen von (a(n)modF – b(n)modF – C)modF beziehungsweise
    Figure 00080003
    werden der Multiplexeinheit 404 zusammen mit den Werten a(n)modF und b(n)modF bereitgestellt.
  • Der Multiplexer 404 ist dazu ausgelegt, ein MAX*(a(n)modF, b(n)modF) auszugeben, das gleich a(n)modF ist, wenn das Vorzeichen von (a(n)modF – b(n)modF – C)modF positiv ist und das Vorzeichen von (b(n)modF – a(n)modF – C)modF negativ ist.
  • Der Multiplexer 404 ist dazu ausgelegt, ein MAX*(a(n)modF, b(n)modF) auszugeben, das gleich b(n)modF ist, wenn das Vorzeichen von (a(n)modF – b(n)modF – C)modF negativ ist und das Vorzeichen von (b(n)modF – a(n)modF – C)modF positiv ist.
  • Der Multiplexer 404 ist dazu ausgelegt, ein MAX*(a(n)modF, b(n)modF) auszugeben, das gleich ist zu
    Figure 00090001
    wenn das Vorzeichen von (a(n)modF – b(n)modF – C)modF negativ ist und das Vorzeichen von (b(n)modF – a(n)modF – C)modF negativ ist.
  • Es ist für Fachleute klar, dass der offenbarte Gegenstand auf verschiedene Arten modifiziert werden kann und viele Ausführungsformen annehmen kann, die sich von den oben speziell beschriebenen bevorzugten Formen unterscheiden. Zum Beispiel können die oben ausgeführten Ausführungsformen derart ausgelegt sein, dass das Modulo für andere Gleichungen zur linearen Approximierung berechnet werden kann und eine zusätzliche Subtrahiereinheit könnte verwendet werden, um das Vorzeichen von a(n) – b(n) zu bestimmen, um beim Auswahlprozess zu helfen.

Claims (9)

  1. Decoder für eine drahtlose Kommunikationsvorrichtung, die einen Rechner (401 bis 403) zum Berechnen des Modulo-Wertes einer linearen Approximation einer MAX*-Funktion unter Verwendung von
    Figure 00100001
    und eine Auswahlvorrichtung (404) zum Auswählen eines MAX*-Ausgabewertes aus der Gruppe a(n)modF, b(n)modF und dem berechneten Modulo-Wert basierend auf einer Bestimmung, ob ein vorgegebener Schwellenwert für |a(n) – b(n)| erreicht wurde, umfasst, wobei a(n) eine erste Zustandsmetrik, b(n) eine zweite Zustandsmetrik, C der vorgegebene Schwellenwert und F ein Wert größer als |a(n) – b(n)| ist.
  2. Decoder für eine drahtlose Kommunikationsvorrichtung, die einen Rechner (401 bis 403) zum Berechnen des Modulo-Wertes einer linearen Approximation einer MAX*-Funktion unter Verwendung von
    Figure 00100002
    und eine Auswahlvorrichtung (404) zum Auswählen eines MAX*-Ausgabewertes aus der Gruppe a(n)modF, b(n)modF und dem berechneten Modulo-Wert basierend auf einer Bestimmung, ob ein vorgegebener Schwellenwert für |a(n) – b(n)| erreicht wurde, umfasst, wobei a(n) eine erste Zustandsmetrik, b(n) eine zweite Zustandsmetrik, C der vorgegebene Schwellenwert, F ein Wert größer als |a(n) – b(n)| und s gleich [a(m) XOR b(m)|] AND [((a(m) XOR a(m – 1)) AND ((b(m) XOR b(m – 1)] ist und a(m), b(m) die höchstwertigen Bits von a(n), b(n) beziehungsweise a(m – 1), b(m – 1) die nächst höchstwertigen Bits von a(n), b(n) sind.
  3. Decoder nach einem der Ansprüche 1 oder 2, wobei die Bestimmung auf dem Vorzeichen von (a(n)modF – b(n)modF – C)modF und dem Vorzeichen von (b(n)modF – a(n)modF – C)modF basiert.
  4. Decoder nach einem der vorhergehenden Ansprüche, wobei die Auswahlvorrichtung (404) ausgelegt ist, den Modulo-Wert der linearen Approximation der MAX*-Funktion auszuwählen und auszugeben, wenn der Wert |a(n) – b(n)| kleiner als der vorgegebene Schwellenwert C ist.
  5. Decoder nach einem der vorhergehenden Ansprüche, wobei der Wert von F eine Zweierpotenz ist.
  6. Decoder nach einem der vorhergehenden Ansprüche, wobei die Auswahlvorrichtung (404) ein Multiplexer ist.
  7. Decoder nach einem der vorhergehenden Ansprüche, wobei der Rechner (401 bis 403) ein Additionsmodul (403) umfasst, das ausgelegt ist, a(n)modF, b(n)modF und C zu empfangen.
  8. Verfahren zum Erzeugen eines MAX*-Wertes, wobei das Verfahren ein Empfangen einer ersten Modulo-Zustandsmetrik a(n)modF, einer zweiten Modulo-Zustandsmetrik b(n)modF und eines vorgegebenen Schwellenwertes C für |a(n) – b(n)|, wobei F ein Wert größer als |a(n) – b(n)| ist; ein Berechnen des Modulo-Wertes einer linearen Approximation einer MAX*-Funktion unter Verwendung von
    Figure 00110001
    und ein Auswählen eines MAX*-Ausgabewertes aus der Gruppe a(n)modF, b(n)modF und dem berechneten Modulo-Wert basierend auf der Bestimmung, ob der vorgegebene Schwellenwert C für |a(n) – b(n)| erreicht wurde, umfasst.
  9. Verfahren zum Erzeugen eines MAX*-Wertes, wobei das Verfahren ein Empfangen einer ersten Modulo-Zustandsmetrik a(n)modF, einer zweiten Modulo-Zustandsmetrik b(n)modF und eines vorgegebenen Schwellenwertes C für |a(n) – b(n)|, wobei F ein Wert größer als |a(n) – b(n)| ist; ein Berechnen des Modulo-Wertes einer linearen Approximation einer MAX*-Funktion unter Verwendung von
    Figure 00120001
    wobei s gleich [a(m) XOR b(m)] AND [((a(m) XOR a(m – 1)) AND ((b(m) XOR b(m – 1)] ist und a(m), b(m) die höchstwertigen Bits von a(n), b(n) beziehungsweise a(m – 1), b(m – 1) die nächst höchstwertigen Bits von a(n), b(n) sind; und ein Auswählen eines MAX*-Ausgabewertes aus der Gruppe a(n)modF, b(n)modF und dem berechneten Modulo-Wert basierend auf einer Bestimmung, ob der vorgegebene Schwellenwert C für |a(n) – b(n)| erreicht wurde, umfasst.
DE602004013186T 2003-12-05 2004-12-03 Linear-approximation der max*-operation für log-map-decodierung Active DE602004013186T2 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
GB0328322A GB2408901B (en) 2003-12-05 2003-12-05 A decoder for a wireless communication device
GB0328322 2003-12-05
PCT/IB2004/004420 WO2005055435A1 (en) 2003-12-05 2004-12-03 Linear approximation of the max* operation for log-map decoding

Publications (2)

Publication Number Publication Date
DE602004013186D1 DE602004013186D1 (en) 2008-05-29
DE602004013186T2 true DE602004013186T2 (de) 2010-04-15

Family

ID=29764713

Family Applications (1)

Application Number Title Priority Date Filing Date
DE602004013186T Active DE602004013186T2 (de) 2003-12-05 2004-12-03 Linear-approximation der max*-operation für log-map-decodierung

Country Status (7)

Country Link
US (1) US7634703B2 (de)
EP (1) EP1692770B1 (de)
JP (1) JP2007514347A (de)
AT (1) ATE392745T1 (de)
DE (1) DE602004013186T2 (de)
GB (1) GB2408901B (de)
WO (1) WO2005055435A1 (de)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9380292B2 (en) 2009-07-31 2016-06-28 3Dmedia Corporation Methods, systems, and computer-readable storage media for generating three-dimensional (3D) images of a scene
WO2011014419A1 (en) * 2009-07-31 2011-02-03 3Dmedia Corporation Methods, systems, and computer-readable storage media for creating three-dimensional (3d) images of a scene
US20110025830A1 (en) 2009-07-31 2011-02-03 3Dmedia Corporation Methods, systems, and computer-readable storage media for generating stereoscopic content via depth map creation
US9344701B2 (en) 2010-07-23 2016-05-17 3Dmedia Corporation Methods, systems, and computer-readable storage media for identifying a rough depth map in a scene and for determining a stereo-base distance for three-dimensional (3D) content creation
WO2012061549A2 (en) 2010-11-03 2012-05-10 3Dmedia Corporation Methods, systems, and computer program products for creating three-dimensional video sequences
US8274552B2 (en) 2010-12-27 2012-09-25 3Dmedia Corporation Primary and auxiliary image capture devices for image processing and related methods
US10200671B2 (en) 2010-12-27 2019-02-05 3Dmedia Corporation Primary and auxiliary image capture devices for image processing and related methods
KR101749096B1 (ko) * 2011-05-12 2017-06-21 한국전자통신연구원 Ldpc 부호의 복호화 방법 및 장치

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001352258A (ja) * 2000-06-08 2001-12-21 Sony Corp 復号装置及び復号方法
DE60006108T2 (de) 2000-08-04 2004-05-19 Motorola, Inc., Schaumburg Lineare Approximation des LOG-MAP Algorithmus für Turbodekodierung
US6865711B2 (en) * 2000-12-15 2005-03-08 Conexant Systems, Inc. System of and method for decoding trellis codes
JP4269520B2 (ja) * 2001-01-23 2009-05-27 株式会社デンソー 近似演算装置およびmap復号装置
US6993098B2 (en) * 2001-07-12 2006-01-31 Koninklijke Philips Electronics N.V. Method and apparatus for efficient calculating distance metric
KR100487183B1 (ko) * 2002-07-19 2005-05-03 삼성전자주식회사 터보 부호의 복호 장치 및 방법

Also Published As

Publication number Publication date
WO2005055435A1 (en) 2005-06-16
US20070168820A1 (en) 2007-07-19
ATE392745T1 (de) 2008-05-15
DE602004013186D1 (en) 2008-05-29
GB0328322D0 (en) 2004-01-07
GB2408901B (en) 2006-07-12
GB2408901A (en) 2005-06-08
JP2007514347A (ja) 2007-05-31
WO2005055435B1 (en) 2005-09-29
US7634703B2 (en) 2009-12-15
EP1692770B1 (de) 2008-04-16
EP1692770A1 (de) 2006-08-23

Similar Documents

Publication Publication Date Title
EP0755122B1 (de) Verfahren und Anordnung zur Bestimmung eines adaptiven Abbruchkriteriums beim iterativen Decodieren multidimensional codierter Information
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
DE60117831T2 (de) Modul zur erzeugung von decoderschaltungen für faltungscodes, zugehöriges verfahren und schaltung
DE60120723T2 (de) Iterationsabbruch für Turbodecodierer
DE69936908T2 (de) Iterative dekodierung von produktkoden
WO2003071689A2 (de) Kombinierter ver- und entschachteler sowie turbo-decodierer mit kombiniertem ver- und entschachteler
DE102005010006A1 (de) Verfahren und Vorrichtung zum Terminieren einer iterativen Turbo-Dekodierung
DE602004013186T2 (de) Linear-approximation der max*-operation für log-map-decodierung
DE60111974T2 (de) Abbruchkriterium für einen Turbodekoder
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
DE10196688B3 (de) Ein Decodierer für eine trellis-basierte Kanalcodierung
EP0737389A1 (de) Übertragungssystem mit soft-output-dekodierung bei reduziertem speicherbedarf
DE60007956T2 (de) Vorrichtung und Verfahren zur SISO Dekodierung
DE60104338T2 (de) Vorrichtung und verfahren zur turbo decodierung mit signaturdatenvergleich als abbruchkriterium
EP1145445B1 (de) Verfahren und vorrichtung zur decodierung von faltungscodes
EP1269633B1 (de) Optimierter turbo-decodierer
DE69908629T2 (de) Hybrid verschachteler für turbo-kodierer
DE60319557T2 (de) Verfahren zur Verminderung der Anzahl der Bits pro Softbit
DE19717546B4 (de) Verfahren und Vorrichtung zur Decodierung bei einem CDMA-Übertragungssystem zum Demodulieren eines Empfangssignals, das in serieller Codeverkettung vorliegt
DE19521327A1 (de) Verfahren und Codiereinrichtung zur gesicherten Übertragung von Information mittels Mehrkomponenten-Codierung
EP1249074B1 (de) Verfahren zur decodierung eines datensignals
DE60006108T2 (de) Lineare Approximation des LOG-MAP Algorithmus für Turbodekodierung
EP0876022B1 (de) Verfahren und Vorrichtung zur Fehlerverdeckung in digitalen Übertragungssystemen
DE60118716T2 (de) Log-MAP Dekodierung

Legal Events

Date Code Title Description
8332 No legal effect for de
8370 Indication related to discontinuation of the patent is to be deleted
8364 No opposition during term of opposition