DE19937506A1 - ACS-Einheit für einen Viterbi-Decodierer - Google Patents

ACS-Einheit für einen Viterbi-Decodierer

Info

Publication number
DE19937506A1
DE19937506A1 DE19937506A DE19937506A DE19937506A1 DE 19937506 A1 DE19937506 A1 DE 19937506A1 DE 19937506 A DE19937506 A DE 19937506A DE 19937506 A DE19937506 A DE 19937506A DE 19937506 A1 DE19937506 A1 DE 19937506A1
Authority
DE
Germany
Prior art keywords
state
path
branch
metric difference
path metric
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.)
Withdrawn
Application number
DE19937506A
Other languages
English (en)
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.)
Infineon Technologies AG
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 DE19937506A priority Critical patent/DE19937506A1/de
Priority to US10/048,508 priority patent/US6813744B1/en
Priority to JP2001515596A priority patent/JP3607894B2/ja
Priority to EP00958204A priority patent/EP1203474A2/de
Priority to KR1020027001760A priority patent/KR20020027535A/ko
Priority to CNB008115397A priority patent/CN1190902C/zh
Priority to PCT/DE2000/002569 priority patent/WO2001011842A2/de
Publication of DE19937506A1 publication Critical patent/DE19937506A1/de
Withdrawn 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/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/65Purpose and implementation aspects
    • H03M13/6502Reduction of hardware complexity or efficient processing
    • 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

Es wird eine ACS-Einheit für einen Viterbi-Decodierer vorgeschlagen, welche zur Ermittlung der Pfadmetriken zweier Zustände eines Zeitschrittes eines Trellis-Diagramms die Differenz (GAMMA) der Pfadmetriken der mit diesen beiden Zuständen in Form einer Butterfly-Struktur über Zweige verbundenen beiden Zuständen (19, 20) des vorhergehenden Zeitschrittes des Trellis-Diagramms mit der Differenz (LAMBDA) der entsprechenden Zweigmetriken vergleicht. Eine Vereinfachung der Struktur der ACS-Einheit wird dadurch erzielt, daß zusätzlich die Vorzeichen (sg(GAMMA), sg(LAMBDA)) der beiden Differenzen ausgewertet werden.

Description

Die vorliegende Erfindung betrifft eine ACS-Einheit (Add- Compare-Select) nach dem Oberbegriff des Anspruches 1 für einen Viterbi-Decodierer, der insbesondere in Mobilfunkempfängern zur Decodierung von kanalcodierten Mobilfunksignalen einsetzbar ist.
In den meisten bekannten digitalen Mobilfunkempfängern wird ein Viterbi-Decodierer verwendet. Ein Viterbi-Decodierer ist ein sogenannter Maximum-Likelihood-Decodierer, der in der Regel zur Decodierung von kanalcodierten, insbesondere faltungscodierten Mobilfunksignalen verwendet wird. Bei der Kanalcodierung wird im Sender den zu übertragenden Symbolen redundante Information hinzugefügt, um die Übertragungssicherheit zu erhöhen. Bei der Übertragung eines Mobilfunksignals wird dieses jedoch von Rauschen überlagert. Die Aufgabe des Empfängers besteht daher darin, anhand der Empfangssequenz aus sämtlichen möglichen Sendesequenzen diejenige Sendesequenz herauszufinden, die mit größtmöglicher Wahrscheinlichkeit der tatsächlichen Sendesequenz entspricht. Diese Aufgabe wird von dem Viterbi-Decodierer wahrgenommen.
Die bei der Kanalcodierung verwendete Codiervorschrift kann durch ein entsprechendes Trellis-Diagramm beschrieben werden. Der Viterbi-Decodierer ermittelt durch Berechnung sogenannter Metriken denjenigen Pfad des Trellis-Diagramms, der abhängig von der jeweiligen Ausgestaltung des Decodierers die größte oder kleinste Pfadmetrik besitzt. Anhand dieses Pfads des Trellis-Diagramms kann dann die decodierte Sequenz bestimmt und ausgegeben werden.
Nachfolgend sollen kurz die Grundlagen der Viterbi- Decodierung näher erläutert werden.
In Fig. 4 ist beispielhaft ein Trellis-Diagramm mit jeweils vier unterschiedlichen Zuständen zu den Zeitpunkten t . . . t + 3 dargestellt, die beispielsweise den Bitzuständen '00', '10', '01' und '11' entsprechen. Jeder Symbolsequenz ist in dem Trellis-Diagramm ein entsprechender Pfad zugeordnet. Ein Pfad umfaßt dabei eine Folge von Zweigen zwischen zwei zeitlich aufeinderfolgenden Zuständen. Jeder Zweig symbolisiert dabei einen Zustandsübergang zwischen zwei zeitlich aufeinanderfolgenden Zuständen, wobei beispielsweise der von einem Zustand ausgehende obere Zweig einem Empfangssymbol mit dem binären '0' und der von demselben Zustand ausgehende untere Zweig einem Empfangssymbol mit dem binären Wert '1' entspricht. Jeder dieser Zustandsübergänge, dem eine Zweigmetrik ('Branch Metrik', BM) λt zugewiesen ist, entspricht einem Sendesymbol. Die Zweigmetrik λt ist wie folgt definiert:
λt = |y't - rt 2
Dabei entspricht rt dem Empfangssymbol zum Zeitpunkt t und y't dem davon abhängig erwarteten Sendesymbol zum Zeitpunkt t.
Darüber hinaus ist jedem Pfad durch das Trellis-Diagramm bis zum Zeitpunkt bzw. Zeitschritt t eine Pfadmetrik γt zugewiesen.
Bei dem in Fig. 4 gezeigten Trellis-Diagramm handelt es sich insbesondere um ein Trellis-Diagramm mit einer sogenannten 'Butterfly'-Struktur. Dies bedeutet, daß jeweils zwei Zuständen eines Zeitschritts t + 1 des Trellis-Diagramms zwei Zustände des vorhergehenden Zeitschritts t zugewiesen sind, deren Zweige jeweils zu den erstgenannten Zuständen des Zeitschritts t + 1 führen, wobei jeweils zwei Zweigmetriken der von unterschiedlichen Zuständen ausgehenden Zweige identisch sind. So bilden beispielsweise die in Fig. 4 gezeigten Zustände, denen die Pfadmetriken γt (1), γt (3), γt+1 (2) und γt+1 (3) zugewiesen sind, eine derartige 'Butterfly'-Struktur, wobei die Zweigmetrik für den Zweig von dem Zustand mit der Pfadmetrik γt (1) zu dem Zustand mit der Pfadmetrik γt+1 (2) der Zweigmetrik λt (3) des Zweigs von dem Zustand mit der Pfadmetrik γt (3) zu dem Zustand mit der Pfadmetrik γt+1 (3) entspricht, während andererseits die Zweigmetrik des Zweigs von dem Zustand mit der Pfadmetrik γt (1) zu dem Zustand mit der Pfadmetrik γt+1 (3) der Zweigmetrik λt (1) des Zweigs von dem Zustand mit der Pfadmetrik γt (3) zu dem Zustand mit der Pfadmetrik γt+1 (2) entspricht. Dabei bezeichnet allgemein γt (s) die dem Zustand s im Zeitschritt t zugewiesene Pfadmetrik, während λt (s) die Zweigmetrik des dem Signal s entsprechenden Zustandsübergang zum Zeitpunkt t bezeichnet.
Der Viterbi-Decodierer muß nunmehr anhand des Trellis- Diagramms denjenigen Pfad ermitteln, der die beste Pfadmetrik aufweist. In der Regel ist dies definitionsgemäß der Pfad mit der kleinsten Pfadmetrik.
Jede Pfadmetrik eines zu einem bestimmten Zustand führenden Pfads setzt sich aus der Pfadmetrik eines zeitlich vorhergehenden Zustands und der Zweigmetrik des von diesem vorhergehenden Zustand zu dem bestimmten Zustand führenden Zweigs zusammen. Dies hat zur Folge, daß nicht alle möglichen Pfade und Pfadmetriken des Trellis-Diagramms ermittelt und ausgewertet werden müssen. Statt dessen wird für jeden Zustand und für jeden Zeitschritt des Trellis-Diagramms jeweils derjenige Pfad ermittelt, der bis zu diesem Zeitpunkt die beste Pfadmetrik aufweist. Nur dieser als 'Survivor Path' bezeichnete Pfad und seine Pfadmetrik muß gespeichert werden. Alle anderen zu diesem Zustand führenden Pfade können unberücksichtigt bleiben. Während jedes Zeitschritts gibt es demnach eine der Anzahl der unterschiedlichen Zustände entsprechende Anzahl an derartigen 'Survivor Paths'.
Die obige Beschreibung macht deutlich, daß die Berechnung der Pfadmetrik γt+1 (s) von den Pfadmetriken der mit dem Zustand s über einen Zweig verbundenen Pfadmetriken des vorhergehenden Zeitschritts t abhängt. Die Berechnung der Pfadmetriken kann demnach durch einen rekursiven Algorithmus realisiert werden, der in einem Viterbi-Decodierer von einer sogenannten 'Add- Compare-Select'-Einheit (ACS-Einheit) wahrgenommen wird.
In Fig. 5 ist der typische Aufbau eines Viterbi-Decodierers dargestellt. Neben der ACS-Einheit sind eine 'Branch Metric Unit' (BMU) und eine 'Survivor Memory Unit' vorgesehen. Die Aufgabe der 'Branch Metric Unit' ist die Berechnung der Zweigmetriken λt (s), die ein Maß für den Unterschied zwischen einem Empfangssymbol und demjenigen Symbol, welches in dem Trellis-Diagramm den entsprechenden Zustandsübergang hervorruft, sind. Die von der 'Branch Metric Unit' berechneten Zweigmetriken werden der ACS-Einheit zur Ermittlung der optimalen Pfade ('Survivor Paths') zugeführt, wobei die 'Survivor Memory Unit' diese 'Survivor Paths' speichert, so daß abschließend eine Decodierung anhand desjenigen 'Survivor Path' durchgeführt werden kann, der die beste Pfadmetrik aufweist. Die diesem Pfad zugeordnete Symbolsequenz entspricht mit der größten Wahrscheinlichkeit der tatsächlich gesendeten Sequenz.
Ein Prozessorelement 1 einer herkömmlichen ACS-Einheit kann beispielsweise wie in Fig. 6 gezeigt aufgebaut sein. Dabei wird davon ausgegangen, daß jeder Zustand des Trellis- Diagramms von einem separaten Prozessorelement 1 ausgewertet wird. Die Aufgabe des Prozessorelements 1 besteht darin, aus zwei miteinander konkurrierenden Pfaden, die zu einem Zustand des Trellis-Diagramms führen, den Pfad mit der besten, d. h. kleinsten Pfadmetrik auszuwählen. Anschließend werden die gespeicherten Werte für den zu diesem Zustand führenden 'Survivor Path' und dessen Pfadmetrik aktualisiert.
Wie aus dem in Fig. 4 gezeigten Trellis-Diagramm ersichtlich ist, ist jeder Zustand s zu dem Zeitpunkt t + 1 über einen oberen Zweig und einen unteren Zweig mit einem entsprechenden vorhergehenden Zustand verbunden. Zur Ermittlung des diesem Zustand s entsprechenden 'Survivor Path' muß somit die Pfadmetrik des über den oberen Zweig zu dem Zustand s führenden Pfads mit der Pfadmetrik des über den unteren Zweig zu dem Zustand s führenden Pfads verglichen werden, d. h. die Aufgabe des in Fig. 6 gezeigten Prozessorelements 1 besteht darin, zur Bestimmung des 'Survivor Path' mit der Pfadmetrik γt+1 (s) entweder den über den vorhergehenden 'oberen' Zustand mit der Pfadmetrik γt (u) und den 'oberen' Zweig mit der Zweigmetrik λt (u) führenden Pfad, dessen Pfadmetrik der Summe γt (u) + λt (u) entspricht, oder den über den 'unteren' Zustand mit der Pfadmetrik γt (l) und den 'unteren' Zweig mit der Zweigmetrik λt (l) führenden Pfad, dessen Pfadmetrik der Summe γt (l) + λt (l) entspricht, auszuwählen.
Die zuvor beschriebene Funktion des Prozessorelements kann demzufolge beispielsweise von der in Fig. 6 gezeigten Schaltung wahrgenommen werden, bei der mit Hilfe von Addierern 14 und 15 die möglichen Pfadmetriken berechnet und mittels eines Komparators 16 verglichen werden, so daß abhängig von dem Vergleichsergebnis δs mit Hilfe eines Multiplexers 17 anschließend als Pfadmetrik γt+1 (s) die kleinere der von den beiden Addierer 14 oder 15 berechneten Summen ausgegeben wird.
In Fig. 7 ist der Gesamtaufbau und die Anbindung einer ACS- Einheit an die 'Branch Metric Unit' und die 'Survivor Memory Unit' für das in Fig. 4 beispielshaft gezeigte Trellis- Diagramm dargestellt. Da jedes für einen 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, ist die in Fig. 7 gezeigte Rückkopplung der Prozessorelemente 1 über ein Zwischenregister 18 erforderlich. Die von den einzelnen Prozessorelementen 1 der 'Survivor Path Unit' zugeführten Entscheidungs- oder Signalwerte δ0 . . . δ3 ermöglichen die Auswahl und das Speichern der korrekten 'Survivor Paths' und deren Pfadmetriken.
Die zuvor beschriebene ACS-Einheit ist der rechenintensivste Teil eines Viterbi-Decodierers. Sie weist den größten Flächen- und Energiebedarf auf. Bei Anwendungen in der Mobilfunktechnik steigt dabei die Komplexität der ACS-Einheit exponentiell mit der Komplexität des jeweils zur Kanalcodierung von Mobilfunksignalen verwendeten Codes.
Es besteht daher das grundlegende Bedürfnis, den Schaltungsaufwand für die ACS-Einheit möglichst gering zu halten. So wurde beispielsweise in der Druckschrift "Low Power ACS Unit Design For The Viterbi Decoder", Chi-ying Tsui, Roger S. K. Cheng, Curtis Ling, Conference IEEE ISCAS, 1999, Orlando, in der eine ACS-Einheit nach dem Oberbegriff des Anspruches 1 beschrieben ist, vorgeschlagen, zur Bestimmung eines 'Survivor Path' eines Zustands die Differenz der Pfadmetriken derjenigen vorhergehenden Zustände, von denen jeweils ein Zweig zu dem betrachteten Zustand führt, zu bilden und mit der Differenz der entsprechenden Zweigmetriken zu vergleichen. Abhängig von dem Vergleichsergebnis kann unmittelbar auf den 'Survivor Path' und somit die zur Berechnung der entsprechenden Pfadmetrik zu bildende Summe geschlossen werden. Diese Vorgehensweise weist den Vorteil auf, daß die Differenzen bei Annahme der bereits erwähnten 'Butterfly'-Struktur gemeinsam für die Berechnung der Pfadmetriken von zwei Zuständen eines Zeitschritts des Trellis-Diagramms durchgeführt werden können, wodurch der Schaltungsaufwand reduziert werden kann.
Allerdings ist auch bei dieser Vorgehensweise weiterhin die separate Bildung eines Vergleichs für die Ermittlung der Pfadmetriken der zu der jeweiligen 'Butterfly'-Struktur gehörenden 'oberen' und 'unteren' Zustände eines Zeitschritts erforderlich, wozu entsprechend zwei Komparatoren benötigt werden.
Der vorliegenden Erfindung liegt daher ausgehend von diesem Stand der Technik die Aufgabe zugrunde, eine ACS-Einheit für einen Viterbi-Decodierer mit geringerem Schaltungsaufwand und Flächenbedarf bereitzustellen.
Diese Aufgabe wird erfindungsgemäß durch eine ACS-Einheit mit den Merkmalen des Anspruches 1 gelöst. Die Unteransprüche definieren vorteilhafte und bevorzugte Ausführungsformen der vorliegenden Erfindung.
Erfindungsgemäß werden unter Annahme der zuvor beschriebenen 'Butterfly'-Struktur des Trellis-Diagramms die Pfadmetriken von zwei Zuständen eines Zeitschrittes des Trellis-Diagrammes in Abhängigkeit von einem Vergleich zwischen der Differenz der Pfadmetriken der mit diesen Zuständen über die 'Butterfly'-Struktur verbundenen Zuständen des unmittelbar vorhergehenden Zeitschrittes des Trellis-Diagrammes und der Differenz der entsprechenden Zweigmetriken unter zusätzlicher Auswertung der Vorzeichen der Pfadmetrikdifferenz und der Zweigmetrikdifferenz berechnet.
Diese Vorgehensweise hat eine deutliche Reduzierung des schaltungstechnischen Aufwandes der ACS-Einheit zur Folge. Untersuchungen haben ergeben, daß der Berechnungsaufwand mit Hilfe der vorliegenden Erfindung für alle heutzutage in der digitalen Kommunikationstechnik (Mobilfunktechnik (z. B. gemäß dem GSM- oder UMTS-Mobilfunkstandard), Satellitenkommunikation, allgemein drahtlose Kommunikation) verwendeten Codes um ca. 33% reduziert werden kann. Gegenüber dem bekannten Stand der Technik ist somit zudem eine entsprechende Energieeinsparnis möglich. Insbesondere ist im Vergleich zu der in der Druckschrift "Low Power ACS Unit Design For The Viterbi Decoder", Chi-ying Tsui, Roger S. K. Cheng, Curtis Ling, Conference IEEE ISCAS, 1999, Orlando, vorgeschlagenen ACS-Einheit kein separater Komparator für die Ermittlung der Pfadmetriken des 'oberen' und 'unteren' Zustands der 'Butterfly'-Struktur erforderlich. Der in der erfindungsgemäßen ACS-Einheit zu bildende Vergleich zwischen der oben beschriebenen Pfadmetrikkdifferenz und der Zweigmetrikdifferenz kann mit einer geringen Bitbreite durchgeführt werden, was ebenfalls zu einem Einsparnis an benötigter Schaltungsfläche und Energie beiträgt.
Die erfindungsgemäße ACS-Einheit läßt sich mit einfachen Mitteln sowohl in Form einer kombinatorischen Schaltung als auch in Form einer sequentiellen Schaltung realisieren. Eine Reduzierung des erforderlichen Flächenbedarfs der ACS-Einheit ergibt sich insbesondere aus der Tatsache, daß mit Hilfe der vorliegenden Erfindung gleichzeitig zwei Trellis-Zustände verarbeitet werden. Sämtliche Zustände eines Zeitschrittes des jeweils verwendeten Trellis-Diagrammes können entweder vollständig parallel (falls die Anzahl der Prozessorelemente der ACS-Einheit mindestens der Hälfte der Zustände eines Zeitschrittes entsprechen) oder zeitlich gemultiplext (bei einer geringeren Anzahl der Prozessorelemente) verarbeitet werden können.
Gemäß einer bevorzugten Ausführungsform der vorliegenden Erfindung kann zusätzlich ein Vorkomparator vorgesehen sein, der bestimmte Bits der Pfadmetrikdifferenz und Zweigmetrikdifferenz miteinander vergleicht, wobei das Vergleichsergebnis zusätzlich ausgewertet wird, um gegebenenfalls bereits frühzeitig die für die Berechnung der Pfadmetriken zu addierenden Komponenten bestimmen zu können, ohne daß hierzu der eigentliche Komparator aktiviert werden muß. Bei Anwendung der Zweierkomplementdarstellung kann somit beispielsweise durch Vergleich der höherwertigeren Bits das Verhältnis der Vorzeichen der Pfadmetrikdifferenz und Zweigmetrikdifferenz bestimmt werden.
Die vorliegende Erfindung wird nachfolgend unter Bezugnahme auf die beigefügte Zeichnung näher anhand eines bevorzugten Ausführungsbeispiels erläutert.
Fig. 1 zeigt ein Blockschaltbild eines Prozessorelements einer ACS-Einheit gemäß der vorliegenden Erfindung,
Fig. 2 zeigt eine Darstellung zur Erläuterung der 'Butterfly'-Struktur eines Trellis-Diagrammes,
Fig. 3 zeigt eine Darstellung zur Erläuterung des der vorliegenden Erfindung zugrundeliegenden Prinzips bei der Berechnung von Pfadmetriken,
Fig. 4 zeigt ein beispeilhaftes Trellis-Diagramm mit vier Zuständen,
Fig. 5 zeigt allgemein den Aufbau eines Viterbi-Decodierers,
Fig. 6 zeigt ein Blockschaltbild eines Prozessorelements einer bekannten ACS-Einheit, und
Fig. 7 zeigt den Aufbau einer bekannten ACS-Einheit mit mehreren der in Fig. 6 gezeigten Prozessorelemente sowie die Verschaltung dieser ACS-Einheit in einem Viterbi-Decodierer.
Zur Erläuterung der Erfindung soll nachfolgend nochmals kurz auf die bereits erläuterte 'Butterfly'-Struktur eingegangen werden, welche eine Voraussetzung für die vorliegende Erfindung darstellt.
Wie auch aus dem in Fig. 4 gezeigten beispielhaften Trellis- Diagramm ersichtlich ist, weist das Trellis-Diagramm eine gewisse Regelmäßigkeit in seiner Struktur auf. Diese Struktur besteht aus sogenannten 'Butterflies', wobei ein derartiger 'Butterfly' in Fig. 2 gezeigt ist. Gemäß der 'Butterfly'- Struktur sind zwei Zustände 19 und 20 eines Zeitschritts t mit zwei Zuständen 21 und 22 des darauffolgenden Zeitschritts t + 1 derart verbunden, daß von jedem dieser Zustände 19 und 20 jeweils ein Zweig zu dem Zustand 21 und ein Zweig zu dem Zustand 22 führt, wobei die Zweigmetrik λt (u) des von dem Zustand 19 zu dem Zustand 21 führenden Zweigs der Zweigmetrik des von dem Zustand 20 zu dem Zustand 22 führenden Zweigs und die Zweigmetrik λt (l) des von dem Zustand 19 zu dem Zustand 22 führenden Zweigs der Zweigmetrik des von dem Zustand 20 zu dem Zustand 21 führenden Zweigs entspricht. In Fig. 2 sind zudem die den einzelnen Zuständen entsprechenden Pfadmetriken γt (u), γ(l), γt+1 (u) bzw. γt+1 (l) dargestellt.
Diese Regelmäßigkeit der 'Butterfly'-Struktur wird im Rahmen der vorliegenden Erfindung ausgenützt, um die Anzahl der zur Bestimmung der 'oberen' Pfadmetrik γt+1 (u) und der 'unteren' Pfadmetrik γt+1 (l) erforderlichen arithmetischen Operationen zu reduzieren.
Zur Bestimmung der Pfadmetriken γt+1 (u) und γt+1 (l) muß jeweils die günstigste Pfadmetrik der theoretisch möglichen Pfadmetriken ermittelt werden. Jede Pfadmetrik eines Zustands setzt sich aus der Pfadmetrik eines Zustands des vorhergehenden Zeitschrittes und der Zweigmetrik des Verbindungszweigs dieser beiden Zustände zusammen. Somit muß zur Bestimmung der Pfadmetrik γt+1 (u) die kleinere der theoretisch möglichen Pfadmetriken γt (u) + λt (u) und γt (l) + λt (l) und zur Bestimmung der Pfadmetrik γt+1 (l) die kleinere der theoretisch möglichen Pfadmetriken γt (u) + λt (l) und γt (l) + λt (u) ermittelt werden. Es sind somit folgende Vergleichsoperationen erforderlich:
γt (u) + λt (u) ⊳⊲ γt (l) + λt (l) für den 'oberen' Zustand
γt (u) + λt (l) ⊳⊲ γt (l) + λt (u) für den 'unteren' Zustand
Jede Vergleichsoperation ist dabei durch den Operator '⊳⊲' repräsentiert.
Die für den 'oberen' Zustand 21 und den 'unteren' Zustand 22 der 'Butterfly'-Struktur durchzuführenden Vergleichsoperationen weisen eine gewisse Ähnlichkeit auf.
Durch Subtraktion können die Zweigmetriken und Pfadmetriken voneinander getrennt werden, so daß sich für den 'oberen' und 'unteren' Zustand jeweils ein Vergleich zwischen einer Pfadmetrikdifferenz und einer Zweigmetrikdifferenz ergibt:
λt (u) - λt (l) ⊳⊲ γt (l) - γt (u) für den 'oberen' Zustand
λt (l) - λt (u) ⊳⊲ γt (l) - γt (u) für den 'unteren' Zustand
Werden für diese Differenzen eine Pfadmetrikdifferenz Γt = γt (l) - γt (u) und eine Zweigmetrikdifferenz Λt = λt (l) - λt (u) definiert, so ergibt sich für die durchzuführenden Vergleichsoperationen:
Λt ⊳⊲ Γt für den 'oberen' Zustand
t ⊳⊲ Γt für den 'unteren' Zustand
Die beiden Vergleiche können durch den Absolut- oder Betragsvergleich |Λt| ⊳⊲ |Γt| gelöst werden. Das Ergebnis dieses Vergleichs legt die Beziehung zwischen |Λt| und |Γt| fest. Da die Metriken λt (u), λt (l), γt (l) und γt (u) per Definition positiv sind, wurden keine der oben angegebenen Ungleichungen durch die zuvor vorgenommenen mathematischen Modifikationen verändert. Die zur Ermittlung der Pfadmetriken γt+1 (u) und γt+1 (l) ursprünglich aufgestellten Ungleichungen für den 'oberen' Zustand 21 und den 'unteren' Zustand 22 können somit durch Auswertung der Vorzeichen von Λt und Γt gelöst werden, wobei zu berücksichtigen ist, daß |Λt| für die Ungleichung des 'unteren' Zustands 22 mit einem negativen Vorzeichen versehen sein muß.
Das Ergebnis dieser Überlegungen ist, daß zur Bestimmung der Pfadmetriken γt+1 (u) und γt+1 (l) lediglich ein einziger Absolutvergleich durchgeführt werden muß, wobei die endgültige Entscheidung dann abhängig von diesem Vergleichsergebnis durch Auswertung der Vorzeichen von Λt und Γt getroffen wird. Wie nachfolgend noch näher erläutert wird, ist dies mit relativ einfachen schaltungstechnischen Mitteln möglich.
In Fig. 1 ist ein Blockschaltbild eines Ausführungsbeispiels für ein Prozessorelement 1 der ACS-Einheit eines Viterbi- Decodierers dargestellt. Das Prozessorelement 1 dient zur Berechnung der Pfadmetriken γt+1 (u) und γt+1 (l) von zwei Zuständen eines Zeitschrittes t + 1 eines Trellis-Diagrammes und empfängt als Eingangssignale die Pfadmetriken γt (l) und γt (u) derjenigen beiden Zustände des vorhergehenden Zeitschrittes t des Trellis-Diagrammes, die mit den beiden zu berechnenden Zuständen die in Fig. 2 gezeigte 'Butterfly'-Struktur bilden. Des weiteren empfängt das Prozessorelement 1 als Eingangssignale die Zweigmetriken λt (u) und λt (l) der entsprechenden Verbindungszweige dieser 'Butterfly'-Struktur. Die Pfadmetriken γt (l), γt (u) und die Zweigmetriken λt (u), λt (l) sind jeweils Multiplexern 8 und 9 bzw. 10 und 11 zugeführt, die abhängig von einem Steuersignal Cu bzw. Cl einen ihrer beiden Eingangswerte einem Addierer 12 bzw. 13 zuführen, der schließlich als Pfadmetrik γt+1 (u) bzw. γt+1 (l) die kleinere der jeweils beiden möglichen Summen ausgibt. Die Entscheidungs- oder Steuersignale Cu bzw. Cl werden zudem (invertiert) der 'Survivor Memory Unit' zugeführt.
Die Steuersignale Cu und Cl werden von einer Auswertungseinheit 6 erzeugt. Zur Ansteuerung der Auswertungseinheit 6 sind ein Subtrahierer 2 und ein Komparator 4 vorgesehen, wobei der Subtrahierer 2 die Differenz zwischen den beiden Pfadmetriken γt (1) und γt (u) berechnet, während der Komparator 4 die daraus resultierende Pfadmetrikdifferenz Γ mit einer extern zugeführten Zweigmetrikdifferenz Λ vergleicht und das Vergleichsergebnis der Auswertungseinheit 6 zuführt.
Die Zweigmetrikdifferenz Λ = λt (u) - λt (l) wird in der 'Branch Metric Unit' (BMU) berechnet und der ACS-Einheit bzw. dem Prozessorelement 1 in zwei unterschiedlichen Versionen, nämlich einmal als normale Zweigmetrikdifferenz Λ+ und einmal als negierte Zeigmetrikdifferenz Λ- zugeführt. Die Auswahl, welche der beiden Zweigmetrikversionen für den Vergleich mit der Pfadmetrikdifferenz Γ verwendet werden soll, erfolgt durch einen Multiplexer 3, der abhängig von dem Vorzeichenbit sg(Γ) der Pfadmetrikdifferenz angesteuert wird. Bei einer Zweierkomplement-Darstellung entspricht das Vorzeichenbit dem MSB (Most Significant Bit). Die Unterscheidung zwischen den beiden Zweigmetrikversionen ist, wie nachfolgend noch näher erläutert wird, erforderlich, um immer vorzeichengleiche Werte miteinander vergleichen und somit ein korrektes Vergleichsergebnis berechnen zu können.
Wie bereits erwähnt worden ist, ermittelt der Komparator 4 das Ergebnis des Absolutvergleichs C = |Γt| < |Λt|. Da sowohl Γt als auch Λt positiv oder negativ sein kann, gibt es vier mögliche Wertekombinationen, die eine Inversion des ermittelten Vergleichswerts C erforderlich machen könnten, um die zuvor beschriebenen Ungleichungen für den 'oberen' und 'unteren' Zustand tatsächlich korrekt nachbilden und über die Multiplexer 8, 9 bzw. 10, 11 die korrekten Werte für die Pfadmetrikberechnung auswählen zu können.
Die entsprechende Logik ist in Fig. 3 dargestellt, wobei jeweils für den 'oberen' Zustand und den 'unteren' Zustand die möglichen Kombinationen der Vorzeichen von Γ und Λ sowie die jeweils daraus folgenden Werte für Cu bzw. Cl in Abhänggkeit von dem Absolutvergleichsergebnis C dargestellt sind. Ein nachgestelltes Minuzeichen entspricht dabei einem negativen Vorzeichen, während ein nachgestelltes Pluszeichen einem positiven Vorzeichen entspricht, so daß beispielsweise Γ- einen negativen Pfaddifferenzwert und Γ+ einen positiven Pfaddifferenzwert darstellt.
Aus Fig. 3 ist insbesondere ersichtlich, daß sowohl für den 'oberen' Zustand als auch für den 'unteren' Zustand für zwei mögliche Vorzeichenkombinationen alleine durch Auswertung der Vorzeichen von Γ und Λ eine Ermittlung der Werte für Cu und Cl möglich ist, ohne tatsächlich den Absolutvergleich durchführen und somit den Wert C berechnen zu müssen. In diesen Fällen steht somit das 'Vergleichsergebnis', d. h. die Steuersignale Cu und Cl, deutlich früher zur Verfügung, da kein Vergleich durchgeführt werden muß, was eine deutliche Reduzierung der Glitch-Wahrscheinlichkeit an den Auswahlmultiplexern 8, 9 und 10, 11 zur Folge hat.
In allen anderen Fällen der Vorzeichen von Γ und Λ werden die Werte für Cu und Cl analog zu der in Fig. 3 gezeigten Logik in Abhängigkeit von dem Wert C des Absolutvergleichsergebnisses berechnet.
Die Ermittlung der Werte für Cu und Cl in Abhängigkeit von den Vorzeichen sg(Γ) und sg(Λ) sowie dem Wert des Absolutvergleiches C = |Γt| < |Λt| erfolgt gemäß Fig. 1 in der Auswertungseinheit 6. Wie zuvor anhand Fig. 3 beschrieben worden ist, muß die Auswertungseinheit hierzu lediglich die Vorzeichen sg(Γ) und sg(Λ) auswerten und davon abhängig den Werten Cu und Cl entweder den festen binären Wert '1', den festen binären Wert '0', den unveränderten Wert C des Vergleichsergebnisses oder den negierten Wert C des Vergleichsergebnisses zuweisen. Der Multiplexer 3 gewährleistet dabei, daß zur Realisierung des Absolutvergleichs |Γt| < |Λt| stets die korrekten Werte ±Γt < ±Λt miteinander verglichen werden.
Die Verwendung der in Fig. 3 gezeigten Logik ermöglicht, daß lediglich ein Absolutvergleich C = |Γt| < |Λt| ausgewertet werden muß, um davon abhängig sowohl die 'obere' Pfadmetrik γt+1 (u) als auch die 'untere' Pfadmetrik γt+1 (l) berechnen zu können. Wird davon ausgegangen, daß die Komplexität eines Komparators im wesentlichen derjenigen eines Addierers oder Subtrahierers entspricht, ist durch einen Vergleich der in Fig. 1 und Fig. 6 gezeigten Prozessorelemente 1 leicht ersichlich, daß mit Hilfe der vorliegenden Erfindung ca. 33% der in Fig. 6 gezeigten Prozessortopologie eingespart werden kann (vier Addier-, Subtrahier- oder Komparatoreinheiten in Fig. 1 gegenüber sechs Addier- oder Komparatoreinheiten in Fig. 6). Darüber hinaus ist zu beachten, daß mit Hilfe des erfindungsgemäßen Prozessorelementes 1 gleichzeitig die Pfadmetriken γt+1 (u) und γt+1 (l) für die beiden Zustände eines 'Butterfly' des Zeitschrittes t + 1 berechnet werden, während das in Fig. 1 gezeigte Prozessorelement lediglich zur Berechnung der Pfadmetrik eines Zustandes vorgesehen ist.
Bei dem in Fig. 1 gezeigten Prozessorelement 1 ist als vorteilhafte Weiterbildung ein Vorkomparator 5 vorgesehen, der derart ausgestaltet ist, daß er einen Vorvergleich der Pfadmetrikdifferenz Γ mit der Zweigmetrikdifferenz Λ durchführt. Allgemein kann der Vorkomparator 5 derart ausgestaltet sein, daß er die höherwertigeren Bits der Pfadmetrikdifferenz und der Zweigmetrikdifferenz miteinander vergleicht, um somit möglicherweise unterschiedliche Bitbreiten festzustellen. 50 kann beispielsweise der Vorkomparator 5 derart ausgestaltet sein, daß er lediglich das höchstwertige Bit (MSB) der Pfadmetrikdifferenz und der Zweigmetrikdifferenz vergleicht, da bei der Zweierkomplement- Darstellung auf diese Weise bereits im voraus beispielsweise die Fälle Γ + und Γ - + (vgl. Fig. 3) festgestellt werden können. Das Vergleichsergebnis wird der Auswertungseinheit 6 als ein weiteres Eingangssignal zugeführt.
Auch erfindungsgemäß weist die ACS-Einheit in Abhängigkeit von der Anzahl der unterschiedlichen Zustände des jeweils verwendeten Trellis-Diagrammes mehrere der in Fig. 1 gezeigten Prozessorelemente 1 auf, deren Ausgänge analog zu Fig. 7 über Register 18 zum Zwischenspeichern der ermittelten Pfadmetrikwerte rückgekoppelt sind. Wegen dieser Rückkopplung addieren sich die Pfadmetrikwerte allmählich auf, so daß gemäß Fig. 1 in den den Pfadmetriken γt (u) und γt (l) zugeordneten eingangsseitigen Schaltungspfaden, welche zu dem Komparator 2 sowie den Multiplexern 9 und 11 führen, vorzugsweise eine (nicht gezeigte) Renormalisierungseinheit zwischengeschaltet sein kann, die einen Überlauf vermeidet und die rückgekoppelten Pfadmetrikwerte renormalisiert.
Für jeden Zustand eines Zeitschrittes des Trellis-Diagrammes wird die auf oben beschriebene Art und Weise ermittelte jeweils günstigste, d. h. minimale, Pfadmetrik zusammen mit dem entsprechenden Pfad in der 'Survivor Memory Unit' zwischengespeichert. Der wesentliche Unterschied zwischen der Verwendung der in Fig. 1 gezeigten Prozessorelemente 1 in einer ACS-Einheit zu der Darstellung von Fig. 7 besteht lediglich darin, daß die in Fig. 1 gezeigten erfindungsgemäßen Prozessorelemente 1 zur Berechnung zweier Pfadmetriken γt+1 (u) und γt+1 (l) vorgesehen sind.
Bezugszeichenliste
1
Prozessorelement
2
Subtrahierer
3
Multiplexer
4
Komparator
5
Vorkomparator
6
Auswertungseinheit
8-11
Multiplexer
12-15
Addierer
16
Komparator
17
Multiplexer
18
Register
19
,
20
Zustände des Zeitschritts t
21
,
22
Zustände des Zeitschritts t +
1
γ Pfadmetrik
λ Zweigmetrik
Λ Zweigmetrikdifferenz
Γ Pfadmetrikdifferenz
δ Vergleichsergebniswert
MSB Höchstwertiges Bit
C Steuersignalwert
u Index für den jeweils oberen Wert
l Index für den jeweils unteren Wert
t Zeitindex
BMU Branch Metric Unit
ACS Add-Compare-Select Unit
SMU Survivor Memory Unit
sg(Λ) Vorzeichen der Zweigmetrikdifferenz
sg(Γ) Vorzeichen der Pfadmetrikdifferenz

Claims (11)

1. ACS-Einheit für einen Viterbi-Decodierer,
wobei die ACS-Einheit zur Bestimmung von Pfadmetriken eines dem Viterbi-Decodierer zugewiesenen Trellis-Diagramms vorgesehen ist,
wobei jeweils einem ersten und einem zweiten Zustand (21, 22) eines Zeitschritts (t + 1) des Trellis-Diagramms ein damit über jeweils einen Zweig des Trellis-Diagramms verbundener dritter und vierter Zustand (20, 19) des vorhergehenden Zeitschritts (t) zugewiesen ist, wobei in dem Trellis-Diagramm eine erste Zweigmetrik (λt (u)) für den den ersten Zustand (21) mit dem vierten Zustand (19) verbindenden Zweig und den den zweiten Zustand (22) mit dem dritten Zustand (20) verbindenden Zweig gleich groß ist und eine zweite Zweigmetrik (λt (l)) für den den ersten Zustand (21) mit dem dritten Zustand (20) bzw. den zweiten Zustand (22) mit dem vierten Zustand (19) verbindenden Zweig gleich groß ist, und
wobei die ACS-Einheit ein Prozessorelement (1) zur Bestimmung der dem ersten und zweiten Zustand (21, 22) zugeordneten Pfadmetriken (γt+1 (u), γt+1 (l)) aufweist, welches als Eingangswerte die erste und zweite Zweigmetrik (λt (u), λt (l)) sowie dem dritten bzw. vierten Zustand (20, 19) zugeordnete Pfadmetriken (γt (u), γt (l)) empfängt und umfaßt:
  • - eine Differenziereinrichtung (2) zum Berechnen einer Pfadmetrikdifferenz (Γ) zwischen den dem dritten und vierten Zustand (19, 20) zugeordneten Pfadmetriken (γt (u), γt (l)), und
  • - eine Auswertungseinrichtung (3-6) zum Vergleichen der Pfadmetrikdifferenz (Γ) mit einer Zweigmetrikdifferenz (A) zwischen der ersten und zweiten Zweigmetrik (λt (u), λt (l)) und zum Bestimmen der dem ersten und zweiten Zustand (21, 22) zugeordneten Pfadmetriken (γt+1 (u), γt+1 (l)) in Abhängigkeit von dem Vergleichsergebnis (C),
dadurch gekennzeichnet,
daß die Auswertungseinrichtung (3-6) derart ausgestaltet ist,
daß sie die dem ersten und zweiten Zustand (21, 22) zugeordneten Pfadmetriken (γt+1 (u), γt+1 (l)) in Abhängigkeit von dem Vergleichsergebnis (C) unter zusätzlicher Auswertung der Vorzeichen der Pfadmetrikdifferenz (Γ) und der Zweigmetrikdifferenz (Λ) bestimmt.
2. ACS-Einheit nach Anspruch 1, dadurch gekennzeichnet,
daß die Auswertungseinrichtung (3-6) derart ausgestaltet ist, daß sie in Abhängigkeit von dem Vergleichsergebnis sowie den Vorzeichen der Pfadmetrikdifferenz (Γ) und der Zweigmetrikdifferenz (Λ) ein erstes Steuersignal (Cu) für eine dem ersten Zustand (21) zugeordnete erste Auswahleinrichtung (8, 9, 12) und ein zweites Steuersignal (Cl) für eine dem zweiten Zustand (22) zugeordnete zweite Auswahleinrichtung (10, 11, 13) erzeugt, und
daß die erste Auswahleinrichtung (8, 9, 12) derart ausgestaltet ist, daß sie in Abhängigkeit von dem ersten Steuersignal (Cu) als Pfadmetrik (γt+1 (u)) des ersten Zustands (21) entweder die Summe aus der Pfadmetrik (γt (u)) des vierten Zustands (19) und der ersten Zweigmetrik (λt (u)) oder die Summe aus der Pfadmetrik (γt (l)) des dritten Zustands (20) und der zweiten Zweigmetrik (λt (l)) ausgibt, und
daß die zweite Auswahleinrichtung (10, 11, 13) derart ausgestaltet ist, daß sie in Abhängigkeit von dem zweiten Steuersignal (Cl) als Pfadmetrik (γt+1 (l)) des zweiten Zustands (22) entweder die Summe aus der Pfadmetrik (γt (u)) des vierten Zustands (19) und der zweiten Zweigmetrik (λt (l)) oder die Summe aus der Pfadmetrik (γt (l)) des dritten Zustands (20) und der ersten Zweigmetrik (λt (u)) ausgibt.
3. ACS-Einheit nach Anspruch 2, dadurch gekennzeichnet, daß die erste bzw. zweite Auswahleinrichtung einen von dem ersten bzw. zweiten Steuersignal (Cu, Cl) angesteuerten ersten und zweiten Multiplexer (8, 9; 10, 11) umfaßt, wobei der erste Multiplexer als Eingangssignale die erste und zweite Zweigmetrik (λt (u), λt (l)) und der zweite Multiplexer als Eingangssignale die dem dritten und vierten Zustand (20, 19) zugeordneten Pfadmetriken (γt (u), γt (l)) empfängt, und wobei die Ausgangssignale des ersten und zweiten Multiplexers einem Addierer (12; 13) zugeführt sind.
4. ACS-Einheit nach Anspruch 2 oder 3, dadurch gekennzeichnet,
daß die Auswertungseinrichtung (3-6) derart ausgestaltet ist, daß sie dem ersten Steuersignal (Cu) einen festen binären Wert zuweist, ohne den Vergleich zwischen der Pfadmetrikdifferenz (Γ) und der Zweigmetrikdifferenz (Λ) zu bilden, falls die Pfadmetrikdifferenz (Γ) und die Zweigmetrikdifferenz (Λ) unterschiedliche Vorzeichen aufweisen, und
daß die Auswertungseinrichtung (3-6) derart ausgestaltet ist, daß sie dem zweiten Steuersignal (Cl) einen festen binären Wert zuweist, ohne den Vergleich zwischen der Pfadmetrikdifferenz (Γ) und der Zweigmetrikdifferenz (Λ) zu bilden, falls die Pfadmetrikdifferenz (Γ) und die Zweigmetrikdifferenz (Λ) identische Vorzeichen aufweisen.
5. ACS-Einheit nach Anspruch 4, dadurch gekennzeichnet,
daß die Auswertungseinrichtung (3-6) dem ersten Steuersignal (Cu) einen ersten binären Wert zuweist, durch den von der ersten Auswahleinrichtung (8, 9, 12) als Pfadmetrik (γt+1 (u)) des ersten Zustands (21) die Summe aus der Pfadmetrik (γt (u)) des vierten Zustands (19) und der ersten Zweigmetrik (λt (u)) ausgegeben wird, falls die Pfadmetrikdifferenz (Γ) ein positives Vorzeichen und die Zweigmetrikdifferenz (Λ) ein negatives Vorzeichen aufweist, und
daß die Auswertungseinrichtung (3-6) dem ersten Steuersignal (Cu) einen dem invertierten ersten binären Wert entsprechenden zweiten binären Wert zuweist, durch den von der ersten Auswahleinrichtung (8, 9, 12) als Pfadmetrik (γt+1 (u)) des ersten Zustands (21) die Summe aus der Pfadmetrik (γt (l)) des dritten Zustands (20) und der zweiten Zweigmetrik (λt (l)) ausgegeben wird, falls die Pfadmetrikdifferenz (Γ) ein negatives Vorzeichen und die Zweigmetrikdifferenz (Λ) ein positives Vorzeichen aufweist.
6. ACS-Einheit nach Anspruch 4 oder 5, dadurch gekennzeichnet,
daß die Auswertungseinrichtung (3-6) dem zweiten Steuersignal (Cl) einen ersten binären Wert zuweist, durch den von der zweiten Auswahleinrichtung (10, 11, 13) als Pfadmetrik (γt+1 (l)) des zweiten Zustands (22) die Summe aus der Pfadmetrik (γt (u)) des vierten Zustands (19) und der zweiten Zweigmetrik (λt (l)) ausgegeben wird, falls die Pfadmetrikdifferenz (Γ) und die Zweigmetrikdifferenz (Γ) jeweils ein positives Vorzeichen aufweisen, und
daß die Auswertungseinrichtung (3-6) dem zweiten Steuersignal (Cu) einen dem invertierten ersten binären Wert entsprechenden zweiten binären Wert zuweist, durch den von der zweiten Auswahleinrichtung (10, 11, 13) als Pfadmetrik (γt+1 (l)) des zweiten Zustands (22) die Summe aus der Pfadmetrik (γt (l)) des dritten Zustands (20) und der ersten Zweigmetrik (λt (u)) ausgegeben wird, falls die Pfadmetrikdifferenz (Γ) und die Zweigmetrikdifferenz (Λ) jeweils ein negatives Vorzeichen aufweisen.
7. ACS-Einheit nach einem der Ansprüche 2-6, dadurch gekennzeichnet, daß die Auswertungseinrichtung (3-6) derart ausgestaltet ist, daß sie den binären Wert (C) des Vergleichsergebnisses dem ersten Steuersignal (Cu) zuweist, falls die Pfadmetrikdifferenz (Γ) und die Zweigmetrikdifferenz (Λ) jeweils ein positives Vorzeichen aufweisen, während die Auswertungseinrichtung (3-6) den invertierten binären Wert des Vergleichsergebnisses dem ersten Steuersignal (Cu) zuweist, falls die Pfadmetrikdifferenz (Γ) und die Zweigmetrikdifferenz (Λ) jeweils ein negatives Vorzeichen aufweisen.
8. ACS-Einheit nach einem der Ansprüche 2-7, dadurch gekennzeichnet, daß die Auswertungseinrichtung (3-6) derart ausgestaltet ist, daß sie den binären Wert (C) des Vergleichsergebnisses dem zweiten Steuersignal (Cl) zuweist, falls die Pfadmetrikdifferenz (Γ) ein positives Vorzeichen und die Zweigmetrikdifferenz (Λ) ein negatives Vorzeichen aufweist, während die Auswertungseinrichtung (3-6) den invertierten binären Wert des Vergleichsergebnisses dem zweiten Steuersignal (Cl) zuweist, falls die Pfadmetrikdifferenz (Γ) ein negatives Vorzeichen und die Zweigmetrikdifferenz (Λ) ein positives Vorzeichen aufweist.
9. ACS-Einheit nach einem der Ansprüche 2-8, dadurch gekennzeichnet, daß die Auswertungseinrichtung (3-6) umfaßt:
  • - einen Multiplexer (3), der als Eingangssignale die Zweigmetrikdifferenz (Λ+) und den negierten Wert der Zweigmetrikdifferenz (Λ-) empfängt und von einem das Vorzeichen der von der Differenziereinrichtung (2) gebildeten Pfadmetrikdifferenz (Γ) anzeigenden Bit (sg(Γ)) angesteuert wird,
  • - einen Komparator (4), der die Pfadmetrikdifferenz (Γ) und das Aussgangssignal des Multiplexers (3) empfängt, und
  • - eine Auswertungslogik (6), welche als Eingangssignale das Ausgangssignal des Komparators (4), ein das Vorzeichen der Zweigmetrikdifferenz anzeigendes Bit (sg(Λ)) und das das Vorzeichen der Pfadmetrikdifferenz anzeigende Bit (sg(Γ)) empfängt und davon abhängig das erste und zweite Steuersignal (Cu, Cl) ausgibt.
10. ACS-Einheit nach Anspruch 9, dadurch gekennzeichnet,
daß die Auswertungseinrichtung (3-6) einen Vorkomparator (5) umfaßt, welcher einen Vorvergleich bestimmter Bits der Pfadmetrikdifferenz (Γ) und der Zweigmetrikdifferenz (Λ) durchführt und ein entsprechendes Vergleichsergebnis der Auswertungslogik (6) als ein weiteres Eingangssignal zuführt, und
daß die Auswertungslogik (6) bei der Erzeugung des ersten und zweiten Steuersignals (Cu, Cl) das von dem Vorkomparator (5) gelieferte Vergleichsergebnis berücksichtigt.
11. ACS-Einheit nach Anspruch 10, dadurch gekennzeichnet, daß der Vorkomperator (5) einen Vorvergleich der höherwertigeren Bits der Pfadmetrikdifferenz (Γ) und der Zweigmetrikdifferenz (Λ) durchführt.
DE19937506A 1999-08-09 1999-08-09 ACS-Einheit für einen Viterbi-Decodierer Withdrawn DE19937506A1 (de)

Priority Applications (7)

Application Number Priority Date Filing Date Title
DE19937506A DE19937506A1 (de) 1999-08-09 1999-08-09 ACS-Einheit für einen Viterbi-Decodierer
US10/048,508 US6813744B1 (en) 1999-08-09 2000-08-02 ACS unit for a viterbi decoder
JP2001515596A JP3607894B2 (ja) 1999-08-09 2000-08-02 ヴィテルビデコーダのためのacsユニット
EP00958204A EP1203474A2 (de) 1999-08-09 2000-08-02 Acs-einheit für einen viterbi-decodierer
KR1020027001760A KR20020027535A (ko) 1999-08-09 2000-08-02 비터비 복호기용 에이시에스 유니트
CNB008115397A CN1190902C (zh) 1999-08-09 2000-08-02 用于维特比译码器的相加比较选择单元
PCT/DE2000/002569 WO2001011842A2 (de) 1999-08-09 2000-08-02 Acs-einheit für einen viterbi-decodierer

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE19937506A DE19937506A1 (de) 1999-08-09 1999-08-09 ACS-Einheit für einen Viterbi-Decodierer

Publications (1)

Publication Number Publication Date
DE19937506A1 true DE19937506A1 (de) 2001-04-19

Family

ID=7917706

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19937506A Withdrawn DE19937506A1 (de) 1999-08-09 1999-08-09 ACS-Einheit für einen Viterbi-Decodierer

Country Status (7)

Country Link
US (1) US6813744B1 (de)
EP (1) EP1203474A2 (de)
JP (1) JP3607894B2 (de)
KR (1) KR20020027535A (de)
CN (1) CN1190902C (de)
DE (1) DE19937506A1 (de)
WO (1) WO2001011842A2 (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2004098068A1 (en) * 2003-04-29 2004-11-11 Analog Devices Bv Acs apparatus and method for viterbi decoder

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7830630B2 (en) * 2001-06-28 2010-11-09 Stmicroelectronics, Inc. Circuit and method for detecting the phase of a servo signal
KR20030005768A (ko) * 2001-07-10 2003-01-23 삼성전자 주식회사 비터비 디코더의 상태 메트릭 연산 장치
US7558343B2 (en) * 2001-11-21 2009-07-07 Siemens Aktiengesellschaft Tap-selectable viterbi equalizer
US7043682B1 (en) * 2002-02-05 2006-05-09 Arc International Method and apparatus for implementing decode operations in a data processor
US6928605B2 (en) * 2002-03-29 2005-08-09 Intel Corporation Add-compare-select accelerator using pre-compare-select-add operation
US20040003340A1 (en) * 2002-06-26 2004-01-01 3Dsp Corporation Modulo arithmetic overflow control for viterbi decoder
GB2395404A (en) * 2002-11-07 2004-05-19 Ttpcomm Ltd Format detection
DE10338050B9 (de) * 2003-08-19 2008-11-27 Infineon Technologies Ag Verfahren zur Entzerrung eines Datensignals unter Berücksichtigung von Störkanälen
US7613990B1 (en) * 2003-11-18 2009-11-03 Xilinx, Inc. Method and system for a multi-channel add-compare-select unit
US7117426B2 (en) * 2003-12-01 2006-10-03 Mediatek Inc. Branch metric computation and add-compare-select operation in viterbi decoders
WO2005112275A1 (ja) * 2004-05-14 2005-11-24 Matsushita Electric Industrial Co., Ltd. Acs回路
US7434148B2 (en) * 2004-12-30 2008-10-07 Freescale Semiconductor, Inc. Track buffer in a parallel decoder
US7861147B2 (en) * 2006-12-08 2010-12-28 Via Technologies, Inc. ACS unit and method thereof
US20080152044A1 (en) * 2006-12-20 2008-06-26 Media Tek Inc. Veterbi decoding method for convolutionally encoded signal
US7895507B1 (en) * 2007-02-16 2011-02-22 Xilinx, Inc. Add-compare-select structures using 6-input lookup table architectures
EP2679302A1 (de) 2012-06-28 2014-01-01 Zentrum für biomedizinische Technologie der Donau- Universität Krems Selektives Sorptionsmittel für die extrakorporale Blutreinigung

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE6922701U (de) * 1969-06-04 1970-02-26 Miele & Cie Waschmitteleinspuelvorrichtung mit deckel
DE3725655A1 (de) * 1987-08-03 1989-02-16 Ant Nachrichtentech Verfahren zum auswerten von zweig- und pfadmetriken sowie anordnung

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2594683B2 (ja) 1990-05-18 1997-03-26 三菱電機株式会社 ヴィタビ・デコーダ
JP3120511B2 (ja) 1991-11-21 2000-12-25 ソニー株式会社 ビタビ復号装置
JPH06303153A (ja) 1993-04-14 1994-10-28 Toshiba Corp ビタビ復号器
EP0771080B1 (de) * 1995-10-25 1999-01-13 Nec Corporation Maximalwahrscheinlichkeitsdekodierung mit weichen Entscheidungen
US5815515A (en) * 1996-03-28 1998-09-29 Lsi Logic Corporation Edge metric calculation method and apparatus using permutations
KR100195745B1 (ko) * 1996-08-23 1999-06-15 전주범 비터비 복호화기의 가산 비교 선택 장치
JPH10107651A (ja) 1996-09-27 1998-04-24 Nec Corp ビタビ復号装置
US5781569A (en) * 1996-10-28 1998-07-14 Lsi Logic Corporation Differential trellis decoding for convolutional codes
JPH10150370A (ja) 1996-11-19 1998-06-02 Sony Corp ビタビ復号器およびビタビ復号方法
JP3242059B2 (ja) * 1997-06-04 2001-12-25 沖電気工業株式会社 ビタビ復号器
US6070263A (en) * 1998-04-20 2000-05-30 Motorola, Inc. Circuit for use in a Viterbi decoder

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE6922701U (de) * 1969-06-04 1970-02-26 Miele & Cie Waschmitteleinspuelvorrichtung mit deckel
DE3725655A1 (de) * 1987-08-03 1989-02-16 Ant Nachrichtentech Verfahren zum auswerten von zweig- und pfadmetriken sowie anordnung

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
TSUI, Chi-ying, CHENG, Roger S.-K., LING, Curtis: Low Power ACS Unit Design For The Viterbi Decoder, In: Conference IEEE ISCAS, 1999, Orlando, S. I-137-I-140 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2004098068A1 (en) * 2003-04-29 2004-11-11 Analog Devices Bv Acs apparatus and method for viterbi decoder

Also Published As

Publication number Publication date
US6813744B1 (en) 2004-11-02
JP2003506969A (ja) 2003-02-18
WO2001011842A2 (de) 2001-02-15
EP1203474A2 (de) 2002-05-08
JP3607894B2 (ja) 2005-01-05
CN1190902C (zh) 2005-02-23
CN1369140A (zh) 2002-09-11
KR20020027535A (ko) 2002-04-13
WO2001011842A3 (de) 2001-08-16

Similar Documents

Publication Publication Date Title
DE19937506A1 (de) ACS-Einheit für einen Viterbi-Decodierer
DE69333460T2 (de) Arithmetisches Gerät
DE3910739C2 (de)
DE2614916C2 (de) Konverter zur Codeumwandlung
DE2816913A1 (de) Decoder fuer konvolutinal codierte daten
EP0392603A2 (de) Übertragungssystem
EP0488456B1 (de) Maximalwahrscheinlichkeitsempfänger
WO1996013105A1 (de) Übertragungssystem mit soft-output-dekodierung bei reduziertem speicherbedarf
DE69930911T2 (de) Übertragungssystem mit adaptivem kanalkodierer und -dekoder
DE10196688B3 (de) Ein Decodierer für eine trellis-basierte Kanalcodierung
EP0988728B1 (de) Quellengesteuerte kanaldecodierung durch verwendung der intra-rahmen-korrelation
DE10010238C2 (de) Verfahren zum Speichern von Pfadmetriken in einem Viterbi-Decodierer
EP1334563B1 (de) Verfahren und vorrichtung zum dekodieren einer folge physikalischer signale, zuverlässigkeitswert-ermittlungseinheit und viterbi-dekodiereinheit
DE10102928B4 (de) Viterbi-Decoder und Verfahren zur Decodierung
EP1198890B1 (de) Verfahren zum erzeugen von zuverlässigkeitsinformationen für die kanaldecodierung in einem funkempfänger sowie entsprechender funkempfänger
DE60118716T2 (de) Log-MAP Dekodierung
DE10000932C2 (de) Verfahren und Vorrichtung zum Decodieren einer Folge von Codewörtern variabler Länge, Verfahren und Vorrichtung zum Erzeugen eines Datenstroms und Verfahren und Vorrichtung zum Decodieren eines Datenstroms
EP0735695A3 (de) Viterbi-Dekodiereinrichtung mit Prozessor und mit Addier- Vergleichs- und Auswahlschaltung
DE19918319C2 (de) Verfahren zum Decodieren von faltungscodierten Codewörtern, entsprechender Faltungsdecodierer und Verwendung des Verfahrens oder des Faltungsdecodierers
DE10300268B4 (de) Schaltung zur Berechnung von Pfadmetriken in Viterbi-Dekodierern
EP1223679A1 (de) Berechnung und Zuweisung von Übergangsmetrikwerten für einen Viterbi-Dekodierer
DE19603724A1 (de) Verfahren zur Gewinnung einer Information über die Restfehler in einem übertragenen kanaldecodierten digitalen Signal
EP1626507A1 (de) Decoder und Verfahren zum Durchführen eines Viterbi-Algorithmus
EP1158683A1 (de) Vorrichtung und Verfahren zum Durchführen eines Viterbi-Algorithmus
WO2001052424A1 (de) Verfahren zum fehlerschutz bei der übertragung eines datenbitstroms

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
8139 Disposal/non-payment of the annual fee