DE10102928A1 - Viterbi-Decoder - Google Patents

Viterbi-Decoder

Info

Publication number
DE10102928A1
DE10102928A1 DE10102928A DE10102928A DE10102928A1 DE 10102928 A1 DE10102928 A1 DE 10102928A1 DE 10102928 A DE10102928 A DE 10102928A DE 10102928 A DE10102928 A DE 10102928A DE 10102928 A1 DE10102928 A1 DE 10102928A1
Authority
DE
Germany
Prior art keywords
path
viterbi decoder
metrics
path metric
decoder according
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.)
Granted
Application number
DE10102928A
Other languages
English (en)
Other versions
DE10102928B4 (de
Inventor
Mario Traeber
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.)
Intel Corp
Original Assignee
Infineon Technologies AG
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 Infineon Technologies AG filed Critical Infineon Technologies AG
Priority to DE10102928A priority Critical patent/DE10102928B4/de
Priority to PCT/EP2002/000595 priority patent/WO2002060071A2/de
Publication of DE10102928A1 publication Critical patent/DE10102928A1/de
Priority to US10/615,100 priority patent/US7336735B2/en
Application granted granted Critical
Publication of DE10102928B4 publication Critical patent/DE10102928B4/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

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/3961Arrangements of methods for branch or transition metric calculation
    • 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/41Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes using the Viterbi algorithm or Viterbi processors
    • 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/41Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes using the Viterbi algorithm or Viterbi processors
    • H03M13/4107Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes using the Viterbi algorithm or Viterbi processors implementing add, compare, select [ACS] operations

Landscapes

  • Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Error Detection And Correction (AREA)

Abstract

Viterbi-Decoder zur Decodierung einer empfangenen Sequenz von Datensymbolen, die mit einer vorgegebenen Codieranweisung codiert sind, mit: DOLLAR A (a) einer Zweigmetrikberechnungsschaltung (5) zur Berechnung von Zweigmetriken (lambda) für die empfangene Sequenz von codierten Datensymbolen; DOLLAR A (b) einer Pfadmetrikberechnungsschaltung (9) zur Berechnung von Pfadmetriken (gamma) in Abhängigkeit von den Zweigmetriken (lambda) und der Codieranweisung, DOLLAR A wobei die berechneten Pfadmetriken jeweils mit einem einstellbaren Entscheidungsschwellenwert (SW) zur Erzeugung eines zugehörigen logischen Gültigkeitswertes verglichen werden; und mit DOLLAR A (c) einer Selektionsschaltung (20), die diejenigen Pfadmetriken, deren Gültigkeitswert logisch hoch ist, in einem Speicher zwischengespeichert und aus den zwischengespeicherten Pfadmetriken denjenigen Pfad mit der optimalen Pfadmetrik selektiert.

Description

Die Erfindung betrifft einen Viterbi-Decoder mit einem gerin­ gen Leistungsverbrauch zur Decodierung einer empfangenen Se­ quenz von Datensymbolen.
Viterbi-Decoder dienen zur Decodierung von sogenannten Fal­ tungscodes. Bei dieser Decodierung wird die Empfangsdatenfol­ ge kontinuierlich mit theoretisch möglichen Sendedatenfolgen verglichen und der Grad der Übereinstimmung mit Hilfe eines statistischen Berechnungsverfahrens zur Grundlage einer Ent­ scheidung gemacht. Bei den meisten herkömmlichen digitalen Mobilfunkempfangsgeräten werden Viterbi-Decoder eingesetzt. Ein Viterbi-Decoder ist ein sogenannter Maximum-Likelihood- Decoder, der in der Regel zur Decodierung von kanalcodierten, insbesondere faltungscodierten, Mobilfunk- oder leitungsbezo­ genen Telekommunikations-Signalen verwendet wird.
Fig. 1 zeigt einen Sender und einen Empfänger, der einen Vi­ terbi-Decoder nach dem Stand der Technik enthält. Eine Sig­ nalquelle erzeugt innerhalb des Senders Datensymbole, die ei­ nem Faltungscodierer zugeführt werden. Die faltungscodierten Sendedatensymbole werden in einem Modulator moduliert und - über einen beliebigen Übertragungskanal dem Empfänger zuge­ führt. Nur das Empfangssignal wird in einem Demodulator des Empfängers demoduliert und anschließend entzerrt. Die empfan­ genen Datensymbole werden in einem in dem Empfänger enthalte­ nen Viterbi-Decoder decodiert und zur weiteren Datenverarbei­ tung an eine Datensenke abgegeben.
Bei der Kanalcodierung wird im Sender den zu übertragenen Da­ tensymbolen redundante Informationen zur Erhöhung der Über­ tragungssicherheit hinzugefügt. Bei der Übertragungsweise - über einen Telekommunikationskanal wird das übertragene Sig­ nal von Rauschen überlagert. Der Empfänger findet anhand der empfangenen Datensymbolsequenz aus sämtlichen möglichen Da­ tensendesignalen diejenige Datensendesequenz heraus, die mit höchster Wahrscheinlichkeit der tatsächlich gesendeten Se­ quenz entspricht.
Die bei der Codierung verwendete Codiervorschrift kann durch ein entsprechendes Trellis-Diagramm beschrieben werden. Der in dem Empfänger enthaltene Viterbi-Decoder ermittelt durch Berechnung sogenannter Metriken denjenigen Pfand in dem Trel­ lis-Diagramm, der abhängig von der Ausgestaltung des Viterbi- Decoder die größte oder die kleinste Pfadmetrik besitzt. An­ hand dieses selektierten optimalen Pfades wird durch den Vi­ terbi-Decoder die decodierte Datensequenz bestimmt und an die Datensenke abgegeben.
Grundlage für die Berechnung der Metriken ist vorzugsweise ein durch additieves, weißes, Gauss-verteiltes Rauschen be­ stimmter Telekommunikationskanal.
Die Fig. 2 zeigt beispielhaft ein Trellis-Diagramm mit je­ weils vier unterschiedlichen Zuständen zu den verschiedenen Zeitpunkten t bis t + 3. Die Zustände entsprechen beispielswei­ se den Bit-Zuständen 00, 10, 01, 11. Jeder Datensymbolsequenz ist in dem in der Figur dargestellten Trellis-Diagramm ein entsprechender Pfad zugeordnet. Ein Pfad umfasst dabei eine Folge von Zweigen zwischen zwei aufeinanderfolgenden Zustän­ den. Dabei symbolisiert jeder Zweig einen Zustandsübergang zwischen zwei zeitlich aufeinanderfolgenden Zuständen, wobei in der Regel für einen wie in Fig. 2 ausgestalteten Code der von einem Zustand ausgehende obere Zweig einem Empfangsdaten­ symbol mit dem binären Wert 0 und der von dem selben Zustand ausgehende untere Zweig einem Empfangssymbol mit dem binären Wert eins entspricht. Jedem dieser Zustandübergänge, dem eine Zweigmetrik λt zugewiesen ist, entspricht einem Codesymbol.
Die Zweigmetrik λt ist für gaussförmiges, weißes Rauschen wie folgt definiert:
λt = |Yt-Rt|2 (1)
wobei der Rt ein Empfangssymbol zum Zeitpunkt t und Yt ein davon abhängig erwartetes Sendesymbol zum Zeitpunkt t ist.
Ferner ist jedem Pfad durch das Trellis-Diagramm zum Zeit­ punkt t eine Pfadmetrik γt zugewiesen. Sie ist definiert als die Summe der Zweigmetriken eines Pfades
Offensichtlich enthält diese Berechnungsvorschrift die fol­ gende Rekursion:
γt = γt-1 + λt (3)
Der in dem Empfänger enthaltene Viterbi-Decodierer der in Fig. 1 dargestellt ist, ermittelt anhand des Trellis- Diagramms denjenigen Pfad der die beste Pfadmetrik aufweist. Dies ist in der Regel definitionsgemäß der Pfad mit der kleinsten Pfadmetrik. Diese entspricht in der dargestellten Ausführung eines Viterbi-Decoders der summierten Euklidischen Distanz. Dieser Pfad ist derjenige Pfad, der mit der höchsten Wahrscheinlichkeit gesendet wurde.
Die Pfadmetrik eines zu einem bestimmten Zustand s führenden Pfads γ s|t setzt sich aus der Pfadmetrik γ s'|t-1 eines zeitlich vorhergehenden Zustands und der Zweigmetrik λ s'→s|t des von die­ sem vorhergehenden Zustand s' zu dem bestimmten Zustand s führenden Zweigs zusammen. Es ist daher nicht erforderlich, dass alle möglichen Pfade und Pfadmetriken des Trellis- Diagramms durch den Viterbi-Decoder ermittelt und ausgewertet werden. Es wird vielmehr für jeden Zustand und für jeden Zeitschritt des Trellis-Diagramms jeweils derjenige Pfad ermittelt, der bis zu diesem Zeitpunkt und bis zu diesem Zu­ stand die beste Pfadmetrik aufweist. Nur dieser Pfad wird zwischengespeichert. Es wird mit der Pfadmetrik des in diesen Zustand mündenden Teil-Gewinnerpfades weitergerechnet. Alle übrigen zu diesem Zustand führenden Pfade bleiben unberück­ sichtigt. Während jedes Zeitschritts gibt es daher eine der Anzahl der unterschiedlichen Zustände NTS entsprechende An­ zahl von derartigen Pfaden. Die rekursive Berechnungsvor­ schrift der Pfadmetriken wird durch eine Pfadmetrikberech­ nungsschaltung, bzw. eine Add-Compare-Select-Unit (ASCU), in­ nerhalb des Viterbi-Decoders realisiert.
Die Fig. 3 zeigt einen Viterbi-Decoder nach dem Stand der Technik. Der Viterbi-Decoder, wie er in Fig. 3 dargestellt ist, enthält eine Zweigmetrikberechnungsschaltung (BMU: Branch Metrik Unit), eine Pfandmetrikberechnungsschaltung (ASCU: Add-Compare-Select-Unit) und eine Selektionsschaltung (SMU: Survivor Memory Unit). Die Zweigmetrikberechnungsschal­ tung BMU berechnet die Zweigmetriken λt(s), die ein Maß für den Unterschied zwischen einem Empfangsdatensymbol und demje­ nigen Datensymbol sind, dass in dem Trellis-Diagramm den ent­ sprechenden Zustandsübergang hervorruft. Die von der Zweig­ metrik- Berechnungsschaltung BMU berechneten Zweigmetriken werden der Pfadmetrikberechnungsschaltung ASCU zur Berechnung der optimalen Pfade bzw. Gewinner-Pfade zugeführt. Die nach­ geschaltete Selektionsschaltung SMU speichert die Gewinner- Pfade in einem Speicher ab. Anschließend erfolgt eine Deco­ dierung anhand desjenigen Gewinnerpfades, der die beste Pfad­ metrik aufweist. Die diesem Pfad zugeordnete Datensymbolse­ quenz entspricht mit größter Wahrscheinlichkeit der tatsäch­ lich gesendeten Datensequenz.
Fig. 4 zeigt die in dem herkömmlichen Viterbi-Decoder enthal­ tene Pfadmetrikberechnungsschaltung ASCU im Detail. Die Pfad­ metrikberechnungsschaltung empfängt von der Zweigmetrikbe­ rechnungsschaltung BMU die berechneten Zweigmetriken und wer­ tet diese aus. Die Auswertung erfolgt dabei durch verschiedene Pfadmetrikberechnungselemente bzw. Prozessorelemente PE. Das ASCU-Prozessorelement führt, je nach Ausführung des Co­ des, eine Entscheidung zwischen zwei oder mehr in einen Zu­ stand des Trellis-Diagramms mündenden, konkurrierenden Pfade herbei. Der Pfad mit der besseren berechneten Metrik wird se­ lektiert und die Pfadmetrik des Gewinnerpfades der zu diesem Zustand führt, wird erneuert.
Fig. 5 zeigt ein ASCU-Prozessorelement bzw. Pfadmetrikberech­ nungselement nach dem Stand der Technik. Das Prozessorelement enthält zwei Addierer, deren Ausgänge an einen Multiplexer und einer Komparatorschaltung angeschlossen sind. Der erste Addierer berechnet die Pfadmetrik eines ersten Pfades und der zweite Addierer berechnet die Pfadmetrik eines zweiten Pfades in dem Trellis-Diagramm. Die beiden Pfadmetriken werden einem Komparator zugeführt und dort verglichen. Der Komparator gibt ein Steuersignal an den Multiplexer ab und schaltet den Ge­ winner-Pfad durch, d. h. definitionsgemäß den Pfad mit der ge­ ringeren Pfadmetrik. Die berechnete Pfadmetrik wird von einem zugehörigen nachgeschalteten Speicherelement, beispielsweise einem Register R, für den nächsten Berechnungsschritt zwi­ schengespeichert.
Bei dem in Fig. 2 dargestellten Trellis-Diagramm handelt es sich um ein Trellis-Diagramm mit einer sogenannten Butterfly­ struktur. Dies bedeutet, dass jeweils zwei Zuständen eines Zeitschritts t + 1 des Trellis-Diagramms zwei Zustände des vor­ hergehenden Zeitschritts t zugewiesen sind, deren Zweige je­ weils zu den erstgenannten Zuständen des Zeitschritts t + 1 führen. Dabei sind jeweils zwei Zweitmetriken der von unter­ schiedlichen Zuständen ausgehenden Zweige identisch. Allge­ mein bezeichnet γt(s) die den Zustand s im Zeitschritt t zu­ gewiesene Pfadmetrik, während λt(s) die Zweigmetrik des dem Signal s entsprechenden Zustandsübergang im Zeitpunkt t be­ zeichnet. Bei dem Viterbi-Decoder nach dem Stand der Technik werden zwei Pfadmetrikberechnungselemente der ACSU kombi­ niert, um ein Butterfly-Pfadmetrikberechnungselement zu bilden. Der Vorteil besteht darin, dass die Pfadmetriken eines jeden Zustands zum Zeitindex t - 1 bei vorzugsweise sequentiel­ len Realisierungen der ACSU nur einmal gelesen werden müssen. Derart ausgestaltete Prozessorelemente verhalten sich glei­ chermaßen wie herkömmliche Add-Compare-Select Prozessorele­ mente mit dem einzigen Unterschied, dass sie zwei Zustände des Trellis-Diagramms gleichzeitig berechnen.
Da die Pfadmetrikberechnungsvorschrift durch die Rekursion eine Summe von Zeitindex t' = -∞ . . . t (siehe Gleichung 2) darstellt, muss durch eine sogenannte Normalisierungsschal­ tung ein Überlaufen der Pfadmetriken verhindert werden. Vor­ zugsweise wird für diese Ausgestaltung des Viterbi-Decoders das Minimum-Normalisierungs-Verfahren angewandt. Hierbei wird die minimale Pfadmetrik zum Zeitindex t - 1 ermittelt und von allen Gewinnerpfadmetriken zum Zeitindex t gleichermaßen ab­ gezogen. Bei diesem Verfahren wird im statistischen Mittel genau der Rauschanteil des Empfangssignals Rt abgezogen.
Die von den verschiedenen Prozessorelementen PE berechneten Vergleichsergebnisse δs werden an die nachgeschaltete Selek­ tionsschaltung SMU zur Selektion des korrekten Gewinnerpfades abgegeben.
Der Nachteil des in Fig. 4 gezeigten Viterbi-Decoders nach dem Stand der Technik besteht darin, dass alle Entscheidungs­ werte δs zur Selektion des Gewinnerpfades mit der optimalen Pfadmetrik in dem Speicher der Selektionsschaltung SMU ge­ speichert werden müssen. Die Anzahl der Entscheidungen δs die abgespeichert werden müssen, entspricht dabei der Anzahl NTS von Zuständen des Trellis-Codes. Daher werden bei dem in Fig. 4 dargestellten Viterbi-Decoder nach dem Stand der Tech­ nik bei jedem Symbolzeitschritt NTS Entscheidungen in der Se­ lektionsschaltung SMU abgespeichert. Dieser Speichervorgang ist hoch redundant, da der Decoder nur die Entscheidung, ei­ nes Zustandes pro Zeitindex t benötigt, um letztendlich den Gewinnerpfad und damit die decodierten Datensymbole zu rekon­ struieren.
Je nach Ausführung des Viterbi-Decoders dominieren die Spei­ cherzugriffe die Verlustleistung. Durch Einschreiben aller Entscheidungswerte δs von der Pfadmetrikberechnungsschaltung in die Selektionsschaltung SMU ist demnach die hervorgerufene Verlustleistung Pv sehr hoch. Bei einem Einsatz eines Viter­ bi-Decoders beispielsweise in einem Mobilfunkgerät wird die Betriebsdauer durch schnelleres Entladen der Batterien ver­ kürzt. Ferner kommt es, z. B. in mehrkanaligen Telekommunika­ tionssystemen wie ADSL und SDSL, aufgrund der hohen Verlust­ leistung zu einer ungewünschten Wärmeentwicklung.
Es ist daher die Aufgabe der vorliegenden Erfindung, einen Viterbi-Decoder und ein Decodierverfahren zu schaffen, welche die Verlustleistung minimieren.
Die Erfindung schafft einen Viterbi-Decoder zur Decodierung einer empfangenen Sequenz von Datensymbolen, die mit einer vorgegebenen Codierungsanweisung codiert sind, mit:
einer Zweigmetrikberechnungsschaltung (BMU) zur Berechnung von Zweigmetriken für die empfangene Sequenz von kodierten Datensymbolen,
einer Pfadmetrikberechnungsschaltung (ACSU) zur Berechnung von Pfadmetriken in Abhängigkeit von den Zweigmetriken und der Codieranweisung,
wobei die berechneten Pfadmetriken jeweils mit einem ein­ stellbaren Entscheidungsschwellenwert SW zur Erzeugung eines zugehörigen logischen Gültigkeitswertes verglichen werden,
und
mit einer Selektionsschaltung (SMU), die nur diejenigen Pfad­ metriken, deren Gültigkeitswert logisch hoch ist, in einem Speicher zwischenspeichert und aus den Pfadmetriken denjeni­ gen Pfad mit der optimalen Pfadmetrik selektiert.
Die Selektionsschaltung (SMU) gibt vorzugsweise die dem se­ lektierten Pfad zugeordnete Datensymbolsequenz zur weiteren Datenverarbeitung an eine Datenverarbeitungseinheit ab.
Die Pfadmetrikberechnungsschaltung (ASCU) setzt vorzugsweise den jeweiligen Gültigkeitswert logisch hoch, wenn die zugehö­ rige berechnete Pfadmetrik niedriger ist als der zugehörige einstellbare Entscheidungsschwellenwert SW.
Die Selektionsschaltung (SMU) selektiert vorzugsweise den Pfad mit der kleinsten berechneten Pfadmetrik.
Die Pfadmetrikberechnungsschaltung (ASCU) enthält vorzugswei­ se ein Pfadmetrikberechnungselement(NPE = 1) und berechnet die rekursive Pfadmetrikberechnungsvorschrift sequentiell.
Ein Pfadmetrikberechnungselement der Pfadmetrikberechnungs­ schaltung des erfindungsgemäßen Viterbi-Decoders berechnet vorzugsweise jeweils die Pfadmetriken von zwei Pfaden und vergleicht diese miteinander, wobei das Pfadmetrikberech­ nungselement die kleinere der beiden Pfadmetriken an ein zu­ gehöriges nachgeschaltetes Speicherelement zum Zwischenspei­ chern abgibt.
Bei einer besonders bevorzugten Ausführungsform des erfin­ dungsgemäßen Viterbi-Decoders enthält das Pfadmetrikberech­ nungelement
einen ersten Addierer, der die Zweigmetrik eines ersten Pfa­ des und die in dem getakteten Register zwischengespeicherte Pfadmetrik des ersten Pfades addiert und an einen ersten Ein­ gang eines Multiplexers abgibt,
einen zweiten Addierer, der die Zweigmetrik des zweiten Pfa­ des und die in dem getakteten Register zwischengespeicherte Pfadmetrik des zweiten Pfades addiert und an einen zweiten Eingang des Multiplexers abgibt,
eine erste Komparatorschaltung, die die von beiden Addierern berechneten Summenwerte vergleicht, wobei der Vergleichser­ gebniswert an die Selektionsschaltung und an den Multiplexer als Steuersignal abgegeben wird, wobei der Multiplexer den kleineren der durch die beiden Addierer berechneten Summen­ werte an ein zugehöriges getaktetes Register durchschaltet,
eine zweite Komparatorschaltung, die den durchgeschalteten Summenwert mit dem einstellbaren Entscheidungsschwellenwert SW vergleicht und einen logisch hohen Gültigkeitswert abgibt, wenn der Summenwert kleiner ist als der Entscheidungsschwel­ lenwert SW.
Ein fest verdrahteter Entscheidungsschwellenwert SW ist vor­ zugsweise ein Potenzwert mit der Basis zwei, wobei vorzugs­ weise das Minimum-Normalisierungs-Verfahren angewandt wird.
Dies bietet den Vorteil, dass die Anzahl der notwendigen lo­ gischen Gatter zur Durchführung des Vergleichs und somit der schaltungstechnische Aufwand für Komparatorschaltungen mini­ mal ist.
Die Erfindung schafft ferner ein Verfahren zur Decodierung einer codierten Datensymbolsequenz, die mit einer vorgegebe­ nen Codieranweisung codiert ist, mit den folgenden Schritten, nämlich
  • a) Empfangen der codierten Datensymbolsequenz,
  • b) Berechnen von Zweigmetriken für die empfangene Datensym­ bolsequenz,
  • c) Berechnen von Pfadmetriken für die empfangene Datensym­ bolsequenz in Abhängigkeit von den Zweigmetriken und der Codieranweisung,
  • d) Vergleichen der berechneten Pfadmetriken mit einem ein­ stellbaren Entscheidungsschwellenwert zur Erzeugung von logischen Gültigkeitswerten,
  • e) Speichern der berechneten Pfadmetriken, deren Gültig­ keitswerte logisch hoch sind, in einem Zwischenspeicher,
  • f) Selektieren desjenigen Pfades, dessen gespeicherte Pfad­ metrik minimal ist,
  • g) Ermitteln der dem selektierten Pfad zugeordneten Daten mittels der Codieranweisung,
  • h) Ausgeben der ermittelten Datensymbolsequenz zur weiteren Datenverarbeitung.
Im Weiteren werden bevorzugte Ausführungsformen des erfin­ dungsgemäßen Viterbi-Decoders und des erfindungsgemäßen Deco­ dierverfahrens zur Erläuterung erfindungswesentlicher Merkma­ le unter Bezugnahme auf die beigefügten Figuren beschrieben. Es zeigen:
Fig. 1 ein Blockdiagramm eines Senders und eines Empfängers, der ei­ nen Viterbi-Decoder nach dem Stand der Technik enthält;
Fig. 2 ein Vier-Zustand-Trellis-Diagramm als Codieranweisung;
Fig. 3 ein Blockdiagramm des schaltungstechnischen Aufbaus eines Viterbi-Decoders nach dem Stand der Technik;
Fig. 4 ein Schaltungsdiagramm einer Pfadmetrikberechnungsschaltung ASCU innerhalb eines Viterbi-Decoders nach dem Stand der Technik in Bezug auf die in Fig. 2 gezeigte Codieranweisung;
Fig. 5 ein in der Pfadmetrikberechnungsschaltung (ASCU) enthaltenes Prozessorelement PE nach dem Stand der Technik;
Fig. 6 den schaltungstechnischen Aufbau eines erfindungsgemäßen Vi­ terbi-Decoders in Bezug auf die in Fig. 2 dargestellte Co­ dieranweisung;
Fig. 7 den schaltungstechnischen Aufbau eines Pfadmetrik- Berechnungselements innerhalb der Pfadmetrikberechnungsschal­ tung des in Fig. 6 dargestellten erfindungsgemäßen Viterbi- Decoders;
Fig. 8 den schaltungstechnischen Aufbau einer bevorzugten Ausfüh­ rungsform der ACSU und SMU des erfindungsgemäßen Viterbi- Decoders;
Fig. 9 ein Diagramm zur Erläuterung des Selektionsvorgangs innerhalb der Selektionsschaltung des erfindungsgemäßen Viterbi- Decoders;
Fig. 10 (a)-(d) Simulationsergebnisse, welche den Zusammenhang zwischen der Bitfehlerrate und den normalisierten Schwellenwert darstel­ len;
Fig. 11 ein Simulationsergebnis, das die Abhängigkeit der Bitfehler­ rate vom Signal-Rauschabstand (SNR) in Abhängigkeit verschie­ dener Entscheidungsschwellenwerte SW im Verhältnis zu Viter­ bi-Decodern nach dem Stand der Technik darstellt;
Fig. 12 (a)-12 (c) Simulationsergebnisse, die die Anzahl der abgespeicherten Entscheidungswerte für eine Vielzahl von Datensymbolperioden bei einem, in Bezug auf diese vorzugsweise Ausführung eines Viterbi-Decoders, hohen Signal-Rauschabstand darstellen;
Fig. 13 (a)-13 (c) Simulationsergebnisse, die die Anzahl der abgespeicherten Entscheidungswerte für eine Vielzahl von Datensymbolperioden bei einem, in Bezug auf diese vorzugsweise Ausführung eines Viterbi-Decoders, niedrigen Signal-Rauschabstand darstellen;
Fig. 14 Eine Tabelle zur Darstellung der Verlustleistungseinsparung bei dem erfindungsgemäßen Viterbi-Decoder;
Fig. 6 zeigt einen Viterbi-Decoder 1 gemäß der Erfindung. Der Viterbi-Decoder 1 besitzt einen Signaleingang 2 zum Empfangen der demodulierten und entzerrten Sequenz von Datensymbolen. Die Datensymbole werden über eine Leitung 3, einen Signalein­ gang 4, einer Zweigmetrikberechnungsschaltung 5 zugeführt. Die Zweigmetrikberechnungsschaltung 5 berechnet in Abhängig­ keit von der empfangenen Sequenz von codierten Datensymbolen deren Zweigmetriken γt Die berechneten Zweigmetriken werden von den Signalausgängen 6-1 bis 6-M über Signalleitungen 7-1 bis 7-M und Signaleingänge 8-1 bis 8-M an eine Pfadmetrikbe­ rechnungsschaltung 9 abgegeben. M definiert hierbei die An­ zahl der verschiedenen Zweigmetriken und ist i. d. R. eine Po­ tenz der Basis zwei. Die Pfadmetrikberechnungsschaltung 9 be­ rechnet die Pfadmetriken γ in Abhängigkeit von den zugeführten Zweigmetriken λ und der vorgegebenen Codieranweisung in Form eines Trellis-Diagramms. Die Pfadmetrikberechnungsschal­ tung 9 enthält mehrere Pfadmetrik-Berechnungselemente 10-1 bis 10-NTS. Bei den Pfadmetrik-Berechnungselementen handelt es sich vorzugsweise um ein Butterfly-Prozessorelement oder um ein Add-Compare-Prozessorelement. Jedes Pfadmetrik- Berechnungselement 10 weist vier Signaleingänge 11, 12, 13, 14 und drei Signalausgänge 15, 16, 17 auf. Jedes Pfadmetrik­ berechnungselement 10 berechnet die Pfadmetrik γ von zwei konkurrierenden Pfaden des Trellis-Diagramms und vergleicht diese miteinander. Da das bei einem Zustand s im Zeitschritt t berechnete Ergebnis δt(s) zugleich die Grundlage für die Berechnung einer Pfadmetrik für einen zeitlich nachfolgenden Zustand ist, wird die berechnete Pfadmetrik in einem zugehö­ rigen nachgeschaltetes Speicherelement 18 zwischengespeichert und an die Signaleingänge der Pfadmetrik-Berechnungselemente 10 über eine Festverdrahtungseinheit 61 gemäß dem Trellis- Code zurückgekoppelt. Die Pfadmetrik-Berechnungselemente 10 berechnen Entscheidungswerte δs, die durch die Ausgangssig­ nalleitungen 16 an Signaleingänge 19 einer nachgeschalteten Selektionsschaltung 20 abgegeben werden. Für jeden Entschei­ dungswert δs wird durch das Pfadmetrik-Berechnungselement 10 ein zugehöriger logischer Gültigkeitswert berechnet, der über die Signalleitungen 17 an einen zugehörigen Signaleingang 21 der Selektionsschaltung 20 abgegeben wird.
Die Selektionsschaltung 20 enthält einen internen Speicher. Dabei werden nur diejenigen von den Signaleingängen 19 anlie­ genden Entscheidungswert δs in den Speicher der Selektions­ schaltung 20 eingeschrieben, deren zugehöriger Gültigkeits­ wert, welcher an dem entsprechenden Signaleingang 21 anliegt, logisch hoch ist. Hierdurch wird die Anzahl der Einschreib­ vorgänge in den Speicher, und damit die Verlustleistung, der Selektionsschaltung 20 deutlich reduziert.
Die Anzahl der abgespeicherten Entscheidungswerte δ können bestenfalls um einen Faktor RD vermindert werden, wobei NTS die Anzahl der Zustände in dem Trellis-Diagramm darstellt.
Die Selektionsschaltung 20 selektiert anhand der zwischenge­ speicherten Pfadmetriken denjenigen Pfad in dem Trellis- Diagramm mit der optimalen Pfadmetrik heraus. Dabei wird de­ finitionsgemäß durch die Selektionsschaltung 20 der Pfad mit der kleinsten berechneten Pfadmetrik selektiert. Die dem se­ lektierten Pfad zugeordnete Datensymbolsequenz wird von der Selektionsschaltung 20 über einen Signalausgang 22 und eine Leitung 23 an einen Signalausgang 24 des erfindungsgemäßen Viterbi-Decoders 1 abgegeben und von dort zur weiteren Daten­ verarbeitung über eine Leitung 25 an eine nachgeschaltete Da­ tenverarbeitungseinheit geleitet.
Fig. 7 zeigt den schaltungstechnischen Aufbau eines Prozes­ sorelements 10-i innerhalb der Pfadmetrik- Berechnungsschaltung 9 des erfindungsgemäßen Viterbi-Decoders 1. Das Pfadmetrik-Berechnungselement 10-i berechnet die Pfad­ metriken von zwei konkurrierenden Pfaden und vergleicht diese miteinander. Die kleinere der beiden berechneten Pfadmetriken wird über den Signalausgang 15-i an das zugehörige getaktete Register 18-i zum Zwischenspeichern und zur Rückkopplung ab­ gegeben. Das in Fig. 7 dargestellte Pfadmetrik- Berechnungselement 10-i enthält einen ersten Addierer 26 und einen zweiten Addierer 27. Der erste Addierer 26 addiert die Zweigmetrik λt(u) eines ersten unteren Pfades und eine zuge­ hörige zwischengespeicherte Pfadmetrik γt(u) zu einem ersten Summenwert, der über eine Leitung 28 an einen Verzweigungs­ knoten 29 abgegeben wird, welcher über eine Leitung 30 mit einem ersten Eingang 31 eines Multiplexers 32 verbunden ist und über eine Leitung 33 an einen Signaleingang 34 einer ers­ ten Komparatorschaltung 35 angeschlossen ist.
Der zweite Addierer 27 addiert die Zweigmetrik λt(l) des zwei­ ten unteren Signalpfades des Trellis-Diagramms mit der zuge­ hörigen zwischengespeicherten und rückgekoppelten Pfadmetrik γt(l) zu einem zweiten Summenwert, der über eine Leitung 36 an einen Verzweigungsknoten 37 abgegeben wird. Der Verzwei­ gungsknoten 37 ist über eine Leitung 38 mit einem zweiten Signaleingang 39 des Multiplexers 32 verbunden. Der Verzwei­ gungsknoten 37 ist ferner über eine Leitung 40 mit einem zweiten Eingang 41 der ersten Komparatorschaltung 35 verbun­ den. Die erste Komparatorschaltung 35 vergleicht die von den beiden Addierern 26, 27 abgegebenen, berechneten Summenwerte bzw. Pfadmetriken miteinander und gibt über einen Signalaus­ gang 42 einen Vergleichsergebniswert bzw. Entscheidungswert δS über eine Leitung 43 an den Signalausgang 16 ab.
Der Vergleichsergebniswert bzw. Entscheidungswert δS wird ferner an einem Verzweigungsknoten 44 abgezweigt und über ei­ ne Steuerleitung 45 an einen Steuereingang 46 des Multiple­ xers 32 als Steuersignal angelegt. Der Multiplexer 32 wird derart angesteuert, dass der kleinere der beiden durch die beiden Addierer 26, 27 berechneten Summenwerte bzw. Pfadmet­ riken an einen Signalausgang 47 des Multiplexers 32 durchge­ schaltet wird. Von dem Signalausgang 47 wird die durchge­ schaltete Pfadmetrik über eine Leitung 48 an einen Signalein­ gang 49 einer zweiten Komparatorschaltung 50 abgegeben. Die zweite Komparatorschaltung 50 besitzt einen zweiten Eingang 51 von dem ein einstellbarer oder fest implementierter Ent­ scheidungsschwellenwert SW angelegt ist.
Die zweite Komparatorschaltung 50 vergleicht den an den Ein­ gang anliegendenden durchgeschalteten Summenwert mit dem ein­ gestellten Entscheidungsschwellenwert SW und gibt über einen Signalausgang 52 und eine Leitung 53 einen logisch hohen Gül­ tigkeitswert ab, wenn der anliegende Summenwert bzw. Pfadmet­ rikwert kleiner ist als der anliegende Entscheidungsschwel­ lenwert SW. Dieser ergibt sich aus dem Produkt eines normierten Schwellenwertes SWNorm und der maximalen möglichen Zweig­ metrik λmax wie folgt:
SW = SWnormmax (5)
Die Dimensionierung des Schwellenwertes SW erfolgt durch nor­ mierten Bezug der Bitfehlerrate BER in Abhängigkeit vom nor­ mierten Schwellenwert auf den Implementierungsverlustfreien Fall, d. h. ohne jegliche Reduktion der Speichervorgänge. Das kann erreicht werden, wenn SW gleich unendlich gesetzt wird.
Die Normierung des Schwellenwertes dient hierbei dazu ver­ schiedene Implementierungen der Zweigmetrikberechnungseinheit BMU vergleichbar zu machen. Die Normierung der Bitfehlerrate BER dient zum Vergleich der verfahrensbehafteten Verluste bei unterschiedlichen Signal-Rauschabständen SNR.
Fig. 10a-10d zeigen, für eine unterschiedliche Anzahl von Zuständen NTS in einem Trellis-Code die Abhängigkeit der nor­ malisierten Bitfehlerrate BERnorm und dem normalisierten Schwellenwert bei unterschiedlichen Signal-Rauschabständen SNR. Wie man aus den Diagrammen entnehmen kann, beträgt bei einem normalisierten Schwellenwert von eins die Zunahme der Bitfehlerrate BER etwa 1% und ist somit vernachlässigbar. Man kann den Fig. 10a-10d ferner entnehmen, dass der Perfor­ mance-Verlust in Abhängigkeit von dem Signalrauschabstand SNR konstant ist, d. h. der erfindungsgemäße Viterbi-Decoder des erfindungsgemäßen Verfahrens zur Decodierung ist bezüglich des Signalrauschabstandes SNR ohne zusätzliche Adaptionsvor­ schrift selbst anpassend.
Fig. 11 zeigt den Zusammenhang zwischen der Bitfehlerrate BER und dem Signalrauschabstand SNR der unterschiedlich ein­ gestellten Schwellenwerten SW. Der Schwellenwert SW = ∞ entspricht dabei einem herkömmlichen Viterbi-Decoder nach dem Stand der Technik. Man kann der Fig. 11 entnehmen, dass so­ gar SWnorm < 1 nur zu einer geringen Erhöhung der Bitfehlerrate BER führt. Ferner kann man anhand der großen Varianz der Pa­ rameterschar die Robustheit des erfindungsgemäßen Verfahrens erkennen.
Die Fig. 12(a) bis 12(c) zeigen ein Simulationsergebnis zur Darstellung des Zusammenhanges zwischen der Anzahl N, der von der Selektionsschaltung 20 abgespeicherten Entscheidungs­ werte b bei einem Signalrauschabstand von SNR = 23 dB und einer Anzahl von Zuständen in dem Trellis-Diagramm von NTS = 512 für eine unterschiedliche Anzahl von Prozessorelementen NPE. Die Fig. 12(a) bis 12(c) zeigen das Simulationsergebnis für den Zeitindex t = 0. . .1000. Ein weiterer Vorteil des erfin­ dungsgemäßen Verfahrens besteht darin, dass aufgrund der selbst anpassenden Eigenschaft im Vergleich zu einem herkömm­ lichen Viterbi-Decoder der Einschwingvorgang nicht verlängert wird Ferner ist ersichtlich, dass nach dem Einschwingvorgang nur eine kleine Anzahl N von Entscheidungen abgespeichert werden.
Die Fig. 13(a) bis 13(c) zeigen ein Simulationsergebnis für die selben Parameter wie in Fig. 12(a) bis 12(c) mit Aus­ nahme des Signal-Rausch-Abstandes der hierbei auf SNR = 20 dB reduziert wurde.
Bei diesem, für diesen Code, schlechten Signal-Rauschabstand ist, wie man durch Vergleich der Fig. 12 und 13 erkennen kann, die Anzahl der abgespeicherten Entscheidungen bei dem erfindungsgemäßen Verfahren wesentlich höher. Mit zunehmender Verschlechterung des Übertragungskanals und somit abnehmenden Signal-Rausch-Abstand SNR werden bei dem erfindungsgemäßen Vertibidecoder eine zunehmende Anzahl von Entscheidungen 6 zur Auswertung in der Selektionsschaltung 20 abgespeichert, um eine gleichbleibende Qualität der Decodierung zu errei­ chen. Der erfindungsgemäße Viterbi-Decoder 1 und das erfindungsgemäße Verfahren sind somit selbst adaptierend im Bezug auf die Qualität der Decodierung, welche vorzugsweise durch das Maß der Bitfehlerrate BER ausgedrückt wird.
Der von dem Multiplexer 32 durchgeschaltete Summenwert bzw. Pfadmetrikwert wird ferner an einem Verzweigungsknoten 54 ab­ gezweigt und wird über eine Leitung 55 an den Signalausgang 15 zum Zwischenspeichern an das zugehörige Register 18 abge­ geben.
Bei dem Entscheidungsschwellenwert SW handelt es sich vor­ zugsweise um einen fest implementierten Potenzwert mit der Basis zwei. Hierdurch kann der schaltungstechnische Aufwand für die zweite Komparatorschaltung 35 minimiert werden. Der Entscheidungsschwellenwert SW ist in Abhängigkeit des Verfah­ rens zur Pfadmetrik-Normalisierung zu adaptieren. Vorzugswei­ se wird das Verfahren der Minimum-Normalisierung verwendet, bei dem dieser Adaptionsschritt entfallen kann. Ferner sind insbesondere in Mobilfunksystemen variabel einstellbare Ent­ scheidungsschwellenwerte denkbar, da sich bei diesen Systemen die Güte des Übertragungskanals stark ändern kann und man für Zeitbereiche mit guten Übertragungseigenschaften des Telekom­ munikationskanals SW so dimensionieren kann, dass man eine besonders hohe Reduktion der Verlustleistung realisiert.
Der an dem Signalausgang 16 anliegende Entscheidungswert δS wird in den nachgeschalteten Speicher der Selektionsschaltung 20 nur dann eingeschrieben, wenn der an dem Signalausgang 17 des Pfadmetrik-Berechnungselements 10 anliegende zugehörige logische Gültigkeitswert anzeigt, dass der durchgeschaltete Summenwert kleiner ist als der Entscheidungsschwellenwert SW. Hierdurch wird die Anzahl der Einschreibvorgänge und somit die Verlustleistung im Vergleich zu einem herkömmlichen Vi­ terbi-Decoder, bei dem alle Entscheidungswerte δ in die nach­ geschaltete Detektionsschaltung eingeschrieben werden, erheb­ lich reduziert.
Die in Fig. 14 gezeigte Tabelle zeigt die prozentuale Ver­ lustleistungseinsparung, bei dem erfindungsgemäßen Verfahren zur Decodierung für verschiedene normalisierte Schwellenwerte in Abhängigkeit der Anzahl von Pfadmetrik- Berechnungselementen NPE für verschieden komplexe Trellis- Codes. R bezeichnet hierbei das maximal mögliche Optimum und berechnet sich zu
Fig. 8 zeigt schematisch eine weitere Ausführungsform des er­ findungsgemäßen Viterbi-Decoders 1 mit mehr als einem Pfad­ metrikberechnungselement NPE < 1 < NTS. Bei der in Fig. 8 darge­ stellten Anordnung werden die von den Pfadmetrik- Berechnungselementen 10 berechneten logischen Gültigkeitswer­ te über die Leitungen 17 an die Signaleingänge 56 einer logi­ schen ODER-Schaltung 57 angelegt und dort logisch oder ver­ knüpft. Die logische ODER-Schaltung 57 weist einen Signalaus­ gang 58 auf, der über eine Leitung 59 mit einem Eingang 60 der nachgeschalteten Selektionsschaltung 20 verbunden ist. Sobald einer der Gültigkeitswerte, die von den Pfadmetrik- Berechnungselementen 10 berechnet wird, logisch hoch bzw. lo­ gisch eins ist, empfängt die Selektionsschaltung 20 an dem Signaleingang 60 ein logisch hohes Signal und speichert den gesamten aus NPE Entscheidungswerten bestehenden Entschei­ dungsvektor in dem integrierten Speicher ab. Sobald mindes­ tens ein signifikanter Entscheidungswert vorliegt, erfolgt somit ein Einschreibvorgang, um zu garantieren, dass kein signifikater, also logisch hoch bewerteter, Entscheidungswert verloren geht.
Fig. 9 zeigt schematisch den Selektionsvorgang innerhalb der Selektionsschaltung 20 des erfindungsgemäßen Viterbi-Decoders 1. Ausgehend von dem Zustand mit der minimalen Pfadmetrik wird der Pfad bis zu einer Entscheidungstiefe DS zurückver­ folgt. Nach DS-Zeitschritten wird die Entscheidung δt+DS dekodiert. Die durchgezogene Linie in Fig. 9 stellt den Gewinner­ pfad dar, während die gestrichelten Linien konkurrierende Pfade zeigen. Die Latentzeit beträgt DS Symbolzeiten, bis ei­ ne Entscheidung durch die Selektionsschaltung 20 getroffen und die entsprechende Datensymbolsequenz abgegeben wird.
Aufgrund des erfindungsgemäßen Verfahrens ließt die Selekti­ onsschaltung 20 mit hoher Wahrscheinlichkeit nur die zuvor relevant bewerteten Entscheidungswerte von der Pfadmetrik- Berechnungsschaltung 9 ein. Mit einer sehr geringen Wahr­ scheinlichkeit ließt die Selektionsschaltung 20 von Speicher­ zellen, die zuvor als nicht relevant bewertete, und damit nicht abgespeicherte, Entscheidungswerte beinhalten. Das kann in seltenen Fällen zu Bitfehlern führen, die zu dem dargeleg­ ten, vernachlässigbarem SNR-Verlust führen.
Mit der erfindungsgemäßen Schaltung kann eine Verlustleis­ tungsreduzierung von bis zu 99% erreicht werden. Der schal­ tungstechnische Zusatzaufwand in den Pfadmetrik- Berechnungselementen 10 besteht dabei lediglich aus einer zu­ sätzlichen Komparatorschaltung, die bei der Integration einen sehr geringen Flächenbedarf besitzt.
Bezugszeichenliste
1
Viterbi-Decoder
2
Eingang
3
Leitung
4
Signaleingang
5
Zweigmetrik-Berechnungsschaltung
6
Signalausgänge
7
Leitung
8
Signaleingänge
9
Pfadmetrik-Berechnungsschaltung
10
Pfadmetrik-Berechnungselemente
11
Eingänge
12
Eingänge
13
Eingänge
14
Eingänge
15
Ausgangsleitungen
16
Ausgangsleitungen
17
Ausgangsleitungen
18
Zwischenregister
19
Signaleingänge
20
Selektionsschaltung
21
Signaleingänge
22
Signalausgang
23
Leitung
24
Ausgang des Viterbi-Decoders
25
Leitung
26
Addierer
27
Addierer
28
Leitung
29
Verzweigungspunkt
30
Leitung
31
Eingang
32
Multiplexer
33
Leitung
34
Eingang
35
Multiplexer
36
Leitung
37
Verzweigungsknoten
38
Leitung
39
Eingang
40
Leitung
41
Eingang
42
Ausgang
43
Leitung
44
Verzweigungsknoten
45
Leitung
46
Steuereingang
47
Ausgang
48
Leitung
49
Eingang
50
Komparatorschaltung
51
Eingang
52
Ausgang
53
Ausgang
54
Verzweigungsknoten
55
Leitung
56
Eingänge
57
ODER-Gatter
58
Ausgang
59
Leitung
60
Eingang
61
Festverdrahtungseinheit

Claims (17)

1. Viterbi-Decoder zur Dekodierung einer empfangenen Sequenz von Datensymbolen, die mit einer vorgegebenen Codieranweisung codiert sind, mit:
  • a) einer Zweigmetrikberechnungsschaltung (5) zur Berechnung von Zweigmetriken (λ) für die empfangene Sequenz von codier­ ten Datensymbolen;
  • b) einer Pfadmetrikberechnungsschaltung (9) zur Berechnung von Pfadmetriken (γ) in Abhängigkeit von den Zweigmetriken (λ) und der Codieranweisung,
wobei die berechneten Pfadmetriken jeweils mit einem ein­ stellbaren Entscheidungsschwellenwert (SW) zur Erzeugung ei­ nes zugehörigen logischen Gültigkeitswertes verglichen wer­ den; und mit
  • a) einer Selektionsschaltung (20), die ausschließlich dieje­ nigen Pfadmetriken, deren Gültigkeitswert logisch hoch ist, in einem Speicher zwischenspeichert und aus den zwischenge­ speicherten Pfadmetriken denjenigen Pfad mit der optimalen Pfadmetrik selektiert.
2. Viterbi-Decoder nach Anspruch 1, dadurch gekennzeichnet, dass die Selektionsschaltlung (20), die dem selektierten Pfad zugeordnete Datensymbolsequenz zur weiteren Datenverarbeitung abgibt.
3. Viterbi-Decoder nach Anspruch 1 oder 2, dadurch gekennzeichnet, dass die Pfadmetrik-Berechnungsschaltung (9) den Gültigkeits­ wert logisch hoch setzt, wenn die zugehörige berechnete Pfad­ metrik kleiner ist als der Schwellenwert (SW).
4. Viterbi-Decoder nach einem der vorangehenden Ansprüche, dadurch gekennzeichnet, dass die Selektionsschaltung (20) den Pfad mit der kleinsten berechneten Pfadmetrik selektiert.
5. Viterbi-Decoder nach einem der vorangehenden Ansprüche, dadurch gekennzeichnet, dass die Pfadmetrik-Berechnungsschaltung (9) mehrere Pfadmet­ rik-Berechnungselemente (10) enthält.
6. Viterbi-Decoder nach einem der vorangehenden Ansprüche, dadurch gekennzeichnet, dass ein Pfadmetrik-Berechnungselement (10) jeweils die Pfad­ metriken von zwei Pfaden berechnet und miteinander vergleicht und die kleinere der beiden Pfadmetriken an ein zugehöriges getaktetes Speicherelement(18) zum Zwischenspeichern abgibt.
7. Viterbi-Decoder nach einem der vorangehenden Ansprüche, dadurch gekennzeichnet,
dass das Pfadmetrik-Berechnungselement (10) aufweist:
einen ersten Addierer (26), der die Zweigmetrik eines ersten Pfades und die in dem zugehörigen getakteten Speicherelement (18) zwischengespeicherte Metrik des ersten Pfades addiert und an einen ersten Eingang (31) eines Multiplexers (32) ab­ gibt,
einen zweiten Addierer (27), der die Zweigmetrik eines zwei­ ten Pfades und die in dem zugehörigen getakteten Speicherele­ ment (18) zwischengespeicherte Pfadmetrik des zweiten Pfades addiert und an einen zweiten Eingang (39) des Multiplexers (32) abgibt,
eine erste Komparatorschaltung (35), die die von den beiden Addierern (26, 27) berechneten Summenwerte vergleicht, wobei das Vergleichsergebnis als Entscheidungswert (δS) an die Se­ lektionsschaltung (20) und an den Multiplexer (32) als Steu­ ersignal abgegeben wird, wobei der Multiplexer (32) den klei­ neren der durch die beiden Addierer (26, 27) berechneten Sum­ menwerte an das zugehörige getaktete Register (18) durch­ schaltet;
eine zweite Komparatorschaltung (50), die den durchgeschalte­ ten Summenwert mit dem einstellbaren Entscheidungsschwellen­ wert SW vergleicht und einen logisch hohen Gültigkeitswert abgibt, wenn der durchgeschaltete Summenwert kleiner ist als der Entscheidungsschwellenwert (SW).
8. Viterbi-Decoder nach einem der vorangehenden Ansprüche, dadurch gekennzeichnet, dass der einstellbare Entscheidungsschwellenwert (SW) ein Po­ tenzwert mit der Basis zwei ist.
9. Viterbi-Decoder nach einem der vorangehenden Ansprüche, dadurch gekennzeichnet dass der Entscheidungsschwellenwert (SW) zur Pfadmetrik-Nor­ malisierung variabel einstellbar oder adaptiv ist.
10. Viterbi-Decoder nach einem der vorangehenden Ansprüche, dadurch gekennzeichnet, dass mehrere von der Pfadmetrik-Berechnungsschaltung (9) er­ zeugte logische Gültigkeitswerte durch eine logische Schal­ tung logisch Oder-verknüpft werden und alle zugehörigen Ent­ scheidungswerte in dem Speicher der Selektionsschaltung (20) zwischengespeichert werden, wenn das Ergebnis der logischen ODER-Verknüpfung logisch hoch ist.
11. Viterbi-Decoder nach einem der vorangehenden Ansprüche, dadurch gekennzeichnet, dass die Pfadmetriken durch die Pfadmetrikberechnungselemente sequentiell berechnet werden.
12. Viterbi-Decoder nach einem der vorangehenden Ansprüche, dadurch gekennzeichnet, dass eine der Anzahl NTS von Zuständen in einen Trellis- Diagramm entsprechende Anzahl von Pfadmetriken mit 2K Pfad­ metrik-Berechnungselementen berechnet werden und dass für die Anzahl 2K der Berechnungselement gilt:
13. Viterbi-Decoder Anspruch 12, dadurch gekennzeichnet, dass die Pfadmetrik-Berechnungselemente (10a-10i) Butterfly- Berechnungselemente sind und dass für die Anzahl 2K der Be­ rechnungselement gilt:
14. Viterbi-Decoder nach Anspruch 12, dadurch gekennzeichnet, dass die Pfadmetrik-Berechnungselemente (10a-10c) Add- Compare-Berechnungselemente sind und dass für die Anzahl 2K der Berechnungselement gilt:
1 ≦ 2K ≦ NTS.
15. Viterbi-Decoder nach einem der vorangehenden Ansprüche, dadurch gekennzeichnet, dass die Codieranweisung ein Trellis-Code ist, der 2L Zu­ standsübergänge aufweist, wobei
0 ≦ L < ∞
gilt und L eine natürliche Zahl ist.
16. Viterbi-Decoder nach Anspruch 12, dadurch gekennzeichnet, dass der Trellis-Code zwei Zustandsübergänge aufweist.
17. Verfahren zur Decodierung einer codierten Sequenz von Da­ tensymbolen, die mit einer vorgegebenen Codieranweisung co­ diert sind, mit den folgenden Schritten:
  • a) Empfangen der codierten Datensymbolsequenz;
  • b) Berechnen von Zweigmetriken (λ) für die empfangene Daten­ symbolsequenz;
  • c) Berechnen von Pfadmetriken (γ) für die empfangene Daten­ symbolsequenz in Abhängigkeit von den Zweigmetriken (λ) und der Codieranweisung;
  • d) Vergleichen der berechneten Pfadmetriken γ mit einem Entscheidungsschwellenwert (SW) zur Erzeugung von logischen Gültigkeitswerten;
  • e) Speichern derjenigen berechneten Pfadmetriken, deren Gül­ tigkeitswerte logisch hoch sind, in einem Zwischenspeicher;
  • f) Selektieren desjenigen Pfades, dessen gespeicherte Pfad­ metrik minimal ist;
  • g) Ermitteln der dem selektiven Pfad zugeordneten Datensym­ bolsequenz mittels der Codieranweisung;
  • h) Ausgeben der ermittelten Datensymbolsequenz zur weiteren Datenverarbeitung.
DE10102928A 2001-01-23 2001-01-23 Viterbi-Decoder und Verfahren zur Decodierung Expired - Lifetime DE10102928B4 (de)

Priority Applications (3)

Application Number Priority Date Filing Date Title
DE10102928A DE10102928B4 (de) 2001-01-23 2001-01-23 Viterbi-Decoder und Verfahren zur Decodierung
PCT/EP2002/000595 WO2002060071A2 (de) 2001-01-23 2002-01-22 Viterbi-decoder
US10/615,100 US7336735B2 (en) 2001-01-23 2003-07-08 Viterbi decoder

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE10102928A DE10102928B4 (de) 2001-01-23 2001-01-23 Viterbi-Decoder und Verfahren zur Decodierung

Publications (2)

Publication Number Publication Date
DE10102928A1 true DE10102928A1 (de) 2002-08-14
DE10102928B4 DE10102928B4 (de) 2004-03-04

Family

ID=7671470

Family Applications (1)

Application Number Title Priority Date Filing Date
DE10102928A Expired - Lifetime DE10102928B4 (de) 2001-01-23 2001-01-23 Viterbi-Decoder und Verfahren zur Decodierung

Country Status (3)

Country Link
US (1) US7336735B2 (de)
DE (1) DE10102928B4 (de)
WO (1) WO2002060071A2 (de)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7788571B2 (en) * 2003-12-10 2010-08-31 Synthesys Research, Inc. Method and apparatus for using dual bit decisions to measure bit errors and event occurrences
US7716554B2 (en) * 2005-07-18 2010-05-11 Industrial Technology Research Institute System and method for blind transport format detection with cyclic redundancy check
US7809090B2 (en) * 2005-12-28 2010-10-05 Alcatel-Lucent Usa Inc. Blind data rate identification for enhanced receivers
RU2448976C2 (ru) 2006-04-11 2012-04-27 Новартис Аг Ингибиторы hcv/вич и их применение
US8009773B1 (en) 2008-04-04 2011-08-30 Hellosoft India Pvt. Ltd. Low complexity implementation of a Viterbi decoder with near optimal performance
US20110182850A1 (en) 2009-04-10 2011-07-28 Trixi Brandl Organic compounds and their uses
US8512690B2 (en) 2009-04-10 2013-08-20 Novartis Ag Derivatised proline containing peptide compounds as protease inhibitors
EA201390532A1 (ru) 2010-10-08 2013-09-30 Новартис Аг Композиции сульфамидых ингибиторов ns3, содержащие витамин е
US8694878B2 (en) * 2011-06-15 2014-04-08 Texas Instruments Incorporated Processor instructions to accelerate Viterbi decoding
US20140205566A1 (en) 2012-11-30 2014-07-24 Novartis Ag Cyclic nucleuoside derivatives and uses thereof
CN112740631B (zh) * 2018-07-20 2024-09-20 诺基亚技术有限公司 通过接收算法中的参数的更新来在通信系统中学习

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US602109A (en) * 1898-04-12 Israel rods
DE19742958A1 (de) * 1997-09-29 1999-04-29 Siemens Ag Koprozessor und Signalverarbeitungseinrichtung

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2618625B1 (fr) * 1987-07-24 1989-11-24 Labo Electronique Physique Dispositif d'amelioration du decodage de signaux numeriques lors de transmissions en modulation de frequence
US5341387A (en) * 1992-08-27 1994-08-23 Quantum Corporation Viterbi detector having adjustable detection thresholds for PRML class IV sampling data detection
US5371471A (en) * 1993-10-29 1994-12-06 General Electric Company Low complexity adaptive equalizer radio receiver employing direct reference state updates
KR100230275B1 (ko) * 1997-02-21 1999-11-15 윤종용 고해상도 텔레비젼 수신기의 tcm 복호기 및 그 복호방법
US6209209B1 (en) * 1997-06-26 2001-04-03 Hunter Engineering Company Rolling run-out measurement apparatus and method
JP2000059238A (ja) 1998-08-04 2000-02-25 Mitsubishi Electric Corp ビタビデコーダの符号同期判定回路

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US602109A (en) * 1898-04-12 Israel rods
DE19742958A1 (de) * 1997-09-29 1999-04-29 Siemens Ag Koprozessor und Signalverarbeitungseinrichtung

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
Shieh Ming-Der et al: Efficient Managment of In- Place Path Metric Update and its Implementation for Viterbi Decoders IN: IEEE Proceedings of the 1998 International Symposium on Circuits and Systems, ISCAS'98., 1998 S. 449-452 Vol. 4 *
Shung,C.B. et al: VLSI architectures for metric normalisation in the Viterbi algorithm IN: International Conference on Communications, 1990. ICC'90, Including Supercomm Technical Sessions. SUPERCOMM/ICC'90. Conference Record., 1990, S. 1723-1728 Vol. 4 *
Tsui Chi-Ying et al: Low Power ACS Unit Design for the Viterbi Decoder IN: IEEE Proceedings of the 1998 International Symposium on Circuits and Systems, ISCAS'99, 1999, S. 137-140 Vol. 1 *
US 6 021 09 B1 (veröffentlicht JP2000059238 vom 25.02.2000) *

Also Published As

Publication number Publication date
US7336735B2 (en) 2008-02-26
DE10102928B4 (de) 2004-03-04
WO2002060071A3 (de) 2003-04-17
US20040052318A1 (en) 2004-03-18
WO2002060071A2 (de) 2002-08-01

Similar Documents

Publication Publication Date Title
DE60113053T2 (de) Vor-Dekoder für Turbodekoder, zur Rückgewinnung von punktierten Paritätssymbolen, sowie ein Verfahren zur Rückgewinnung eines Turbokodes
DE69029542T2 (de) Viterbidekodierer
DE69609026T2 (de) Verfahren zur Bestimmung einer Übertragungsrate aus dem Wachstum einer Pfadmetrik in einem Viterbi Dekodierer und Vorrichtung dazu
DE3910739C2 (de)
DE69212695T2 (de) Decodierungseinrichtung
DE2816913A1 (de) Decoder fuer konvolutinal codierte daten
DE19612715A1 (de) Dekoder und zugehöriges Verfahren
DE10102928A1 (de) Viterbi-Decoder
EP0737389B1 (de) Übertragungssystem mit soft-output-dekodierung bei reduziertem speicherbedarf
DE69427630T2 (de) Integrierte Schaltung mit Koprozessor zur Viterbi-Dekodierung
WO2019202039A1 (de) Decodergestützte iterative kanalschätzung
DE19937506A1 (de) ACS-Einheit für einen Viterbi-Decodierer
DE10310812B4 (de) Dekodiervorrichtung, Trellis-Prozessor und Verfahren
EP1269633B1 (de) Optimierter turbo-decodierer
EP1198890B1 (de) Verfahren zum erzeugen von zuverlässigkeitsinformationen für die kanaldecodierung in einem funkempfänger sowie entsprechender funkempfänger
EP1210787B1 (de) Verfahren zum schätzen der bitfehlerrate in einem funkempfänger sowie entsprechender funkempfänger
EP1130788A2 (de) Verfahren zum Speichern von Pfadmetriken in einem Viterbi-Decodierer
DE60207186T2 (de) Kanal- und ortsinformationsbasierte Skalierung der Viterbi-Dekodierung
DE10001856A1 (de) Verfahren zur Decodierung eines Datensignals
DE69619966T2 (de) Verfahren zur Erzeugung von Verzweigungsmetriken und ein Empfänger für ein Mobiltelefon
DE19717546A1 (de) Verfahren und Vorrichtung zur Decodierung bei einem CDMA-Übertragungssystem zum Demodulieren eines Empfangssignals, das in serieller Codeverkettung vorliegt
DE19959178A1 (de) Verfahren und Anordnung zur Decodierung von Informationen
DE10012874A1 (de) Turbo-Decodierer und Turbo-Decodierverfahren
DE69423183T2 (de) Empfänger für Digitaldaten mit einem Indexregister für Minimumwert der Kosten
DE10300268B4 (de) Schaltung zur Berechnung von Pfadmetriken in Viterbi-Dekodierern

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
8364 No opposition during term of opposition
8327 Change in the person/name/address of the patent owner

Owner name: LANTIQ DEUTSCHLAND GMBH, 85579 NEUBIBERG, DE

R081 Change of applicant/patentee

Owner name: LANTIQ DEUTSCHLAND GMBH, DE

Free format text: FORMER OWNER: INFINEON TECHNOLOGIES AG, 81669 MUENCHEN, DE

Effective date: 20110325

Owner name: LANTIQ BETEILIGUNGS-GMBH & CO. KG, DE

Free format text: FORMER OWNER: INFINEON TECHNOLOGIES AG, 81669 MUENCHEN, DE

Effective date: 20110325

R081 Change of applicant/patentee

Owner name: INTEL CORP., SANTA CLARA, US

Free format text: FORMER OWNER: LANTIQ DEUTSCHLAND GMBH, 85579 NEUBIBERG, DE

Owner name: LANTIQ BETEILIGUNGS-GMBH & CO. KG, DE

Free format text: FORMER OWNER: LANTIQ DEUTSCHLAND GMBH, 85579 NEUBIBERG, DE

R081 Change of applicant/patentee

Owner name: INTEL CORP., SANTA CLARA, US

Free format text: FORMER OWNER: LANTIQ BETEILIGUNGS-GMBH & CO. KG, 85579 NEUBIBERG, DE

R071 Expiry of right