PatentDe  


Dokumentenidentifikation DE69737337T2 03.01.2008
EP-Veröffentlichungsnummer 0000827300
Titel Datenempfänger und Empfangsverfahren für punktierte, faltungskodierte Daten
Anmelder Sony Corp., Tokio/Tokyo, JP
Erfinder Ikeda, Tamotsu, Shinagawa-ku, Tokyo, JP
Vertreter Mitscherlich & Partner, Patent- und Rechtsanwälte, 80331 München
DE-Aktenzeichen 69737337
Vertragsstaaten DE, FR, GB
Sprache des Dokument EN
EP-Anmeldetag 02.09.1997
EP-Aktenzeichen 973067713
EP-Offenlegungsdatum 04.03.1998
EP date of grant 14.02.2007
Veröffentlichungstag im Patentblatt 03.01.2008
IPC-Hauptklasse H04L 1/00(2006.01)A, F, I, 20051017, B, H, EP
IPC-Nebenklasse H04L 25/06(2006.01)A, L, I, 20051017, B, H, EP   H04L 27/18(2006.01)A, L, I, 20051017, B, H, EP   H03M 13/00(2006.01)A, L, I, 20051017, B, H, EP   H03M 13/23(2006.01)A, L, I, 20051017, B, H, EP   

Beschreibung[de]

Die vorliegende Erfindung bezieht sich auf eine Vorrichtung und ein Verfahren zum Empfangen von Daten, insbesondere auf einen Datenempfänger und ein Datenempfangsverfahren zum Empfangen von Multikomponentensignalen, welche Werte für mehrere Datenbits darstellen.

In den USA wurde mit dem digitalen Rundfunk schon begonnen. Auch in Europa wurde die Organisation zum Standardisieren von "digitalem Videorundfunk (DVB)" gebildet, um digitalen TV-Rundfunk einzuführen und dessen Standardsystem wurde nun aufgestellt. Dieser digitale Rundfunk ist beispielsweise beschrieben in "Europe set to start digital satellite broadcasting in 1996 after successful U.S. nationwide servives" NIKKEI ELECTRONICS 1.15, 1995 (Nr. 653), Seite 139-151.

Beim digitalen Rundfunk und bei anderen Arten von Datenübertragung ist es wünschenswert, die Leistung im Signal zu minimieren. Dies wiederum reduziert das Verhältnis von Signalleistung-Rauschleistung und vergrößert die Wahrscheinlichkeit von Übertragungsfehlern. Es wird ein Fehlerkorrekturcode verwendet, um einen Codiergewinn zu erlangen, der diesen Effekt kompensiert. Üblicherweise wird bei einem System, welches solches Verfahren nutzt, das Fehlerkorrekturcodieren auf Seiten der Übertragung durchgeführt, während das Fehlerkorrekturdecodieren auf Seiten des Empfangs durchgeführt wird.

Ein Faltungscode ist insbesondere zur Übertragung auf einem Kommunikationspfad mit einem niedrigen Signalleistung-Rauschleistungs-Verhältnis (S/N-Verhältnis) vorteilhaft. Wie weiter unten erläutert wird, spreizt ein Faltungscode die Information, welche in jedem Bit der ursprünglichen Information enthalten ist, in mehrere Bits des Übertragungssignals effektiv. Der Empfänger bestimmt den Wert jedes ursprünglichen Bits aus den empfangenen Signalen, welche die Bits des Übertragungssignals zeigen. Da das übertragene Signal redundante Information enthält, können die ursprünglichen Bitwerte noch mit guter Genauigkeit bestimmt werden, sogar, wenn einige der Bitwerte im übertragenen Signal durch Rauschen im Übertragungspfad gestört werden. Der Empfänger kann ein Wahrscheinlichkeitssystem oder ein "Soft"-Decodiersystem verwenden. Wenn ein größt-wahrscheinliches Pfaddecodierverfahren, beispielsweise die Viterbi-Decodierung verwendet wird, kann die Softentscheidungsdecodierung leicht durchgeführt werden, und es kann ein hoher Codiergewinn erlangt werden.

Bei einem "punktierten" Faltungscode wird eine Bitsequenz, welche von einem Faltungscodierer ausgegeben wird, dadurch ausgedünnt, dass einige der Bits gemäß einer bestimmten Regel gelöscht werden. Somit wird die Redundanz, welche durch das Faltungscodieren eingeführt wird, reduziert, und mehrere Coderaten können leicht erzielt werden.

Es ist außerdem möglich, die Toleranz gegenüber Rauschen im Übertragungspfad zu verbessern, indem Bits eines codierten Signals, beispielsweise die Bits einer Codesequenz, welche von einem punktierten Faltungscodecodierer ausgegeben wird, gemäß einer bestimmten Regel diffundiert werden. "Diffundieren" in diesem Zusammenhang bezieht sich auf das Verschieben oder Umordnen der Bits.

9 zeigt ein Beispiel eines Übertragers, der gemäß der Standard-DBV-T für das terrestrische Fernsehen DVB vorgeschlagen wurde. Dieser Übertrager verwendet einen Punktierungs-Faltungscode, Bit-Diffusion und ein Quadraturphasen-Umtastungssystem (QPSK).

Im in 9 gezeigten Beispiel werden serielle Daten, welche von einer Informationsquelle 1 ausgegeben werden, einem Faltungscodierer 2 zugeführt, und es werden Muttercodesequenzen X und Y durch den Codierer 2 erzeugt. Die X-Sequenz und die Y-Sequenz zeigen eine Ein-Bit-Codesequenz. Somit hat jedes Bit der Ursprungsdaten von der Informationsquelle 1 das Erzeugen von 2 Bits von Muttercodedaten zur Folge; ein Bit in der Sequenz X und ein Bit in der Sequenz Y. Anders ausgedrückt wird in diesem Beispiel die Coderate des Faltungscodierers 2 auf 1/2 festgelegt.

10 zeigt ein Beispiel des Faltungscodierers 2. Der spezielle Codierer 2 ist nicht gemäß dem DVB-T-Standard eingerichtet; er ist ein einfacher Codierer, der zur Klärung des Prinzips der Faltungsverarbeitung dienen soll. In diesem Beispiel werden serielle Daten von einem Bit, welche von einer Informationsquelle 1 ausgegeben werden, über einen Anschluss 21 zugeführt, um einen Taktzyklus durch die Verzögerungsschaltungen 22 und 23 verzögert und danach an die Addierschaltungen 24 und 25 ausgegeben. Das Ausgangssignal vom Anschluss 21 und das Ausgangssignal von der Verzögerungsschaltung 22 werden ebenfalls zur Addierschaltung 24 geliefert. Die Addierschaltung 24 addiert diese Gruppen von Daten miteinander (durch exklusiven ODER-Betrieb) und gibt das Ergebnis dieser Addition als Daten X über einen Anschluss 26 aus. Die Addierschaltung 25 addiert das Ausgangssignal vom Anschluss 21 und das Ausgangssignal von der Verzögerungsschaltung 23 miteinander (durch exklusiven ODER-Betrieb) und gibt das Ergebnis dieser Addition als Daten Y über einen Anschluss 27 aus.

In diesem Beispiel werden die beiden Muttercodebits X und Y, welche erhalten werden, wenn ein Ursprungsbit am Anschluss 21 zugeführt wird, vom internen Status der Verzögerungsschaltungen 22 und 23 vor der Ankunft dieses Ursprungsbits abhängen. Der Status der Verzögerungsschaltung 22 und 23 wird wiederum von den Werten der Bits abhängen, welche vorher über den Anschluss 21 geliefert wurden. Anders ausgedrückt wird die Information in jedem Bit der ursprünglichen Information unter mehreren Bits der Muttercodesequenzen gespreizt. In diesem Beispiel ist Zwangslänge 3, die Anzahl der internen Verzögerungselemente beträgt 2 und die Anzahl der Zustände beträgt 4, und die Coderate beträgt 1/2.

11 ist ein Statusdiagramm, welches Statusübergänge des in 10 gezeigten Faltungscodierers zeigt. Wenn ein ursprüngliches Codebit mit dem Wert 0 über den Anschluss 21 zugeführt wird, wenn der Status 00 beträgt (wenn jedes der Ausgangssignale der Verzögerungselemente 22 und 23 gleich 0 ist), wird (XY) = (00) über die Anschlüsse 26 und 27 ausgegeben. Das heißt, das Muttercodebit 0 wird als Daten X über den Anschluss 26 ausgegeben, wohingegen das Muttercodebit 0 als Daten V über den Anschluss 27 ausgegeben wird. Der Status beträgt ebenfalls 00 nach dem Übergang, welcher von dem Eingangssignal 0 resultiert; die Ausgangssignale aller Verzögerungselemente 22 und 23 verbleiben auf 0. In dem Fall, wo 1 zugeführt wird, wenn der Status gleich 00 beträgt, wird (XY) = (11) ausgegeben und der Zustand ändert sich auf 10. In dem Fall, wo 0 zugeführt wird, wenn der Status 01 beträgt, wird (XY) = (11) ausgegeben, und der Status ändert sich auf 00. In dem Fall, wo 1 zugeführt wird, wenn der Zustand gleich 01 ist, wird (XY) = (00) ausgegeben, und der Zustand ändert sich auf 10.

Die Eingangssignale und die Ausgangssignale in Verbindung mit diesen und weiteren Zuständen sind in 11 als Gleichungen gezeigt, beispielsweise "1/01", die Eingangs- /Ausgangssignale bezeichnen. Bei einem derartigen Ausdruck zeigt die erste Ziffer das Eingangssignal, während die zweite Ziffer das X-Signal zeigt, welches ausgegeben wird, welches von diesem Eingangssignal resultiert, und die letzte Ziffer zeigt das Y-Ausgangssignal, welches von dem Eingangssignal resultiert.

Die Muttercodesequenzen X und Y, welche durch den Faltungscodierer 2 geliefert werden, werden einer Bitlöschschaltung 3 zugeführt, welche das Bitlöschen gemäß einer vorher festgelegten Regel durchführt, und bildet die verbleibenden Bits zu einem seriellen Bitstrom, der eine punktierte Faltungscodeinformation bildet. Die Bitlöschschaltung 3 löscht Daten an vorher festgelegten Positionen in den Muttercodesequenzen (XY) gemäß einem Löschverzeichnis:

X: 10

Y: 11

Die Bits, welche der 1 im Löschverzeichnis entsprechen, werden übertragen, jedoch Bits, welche der 0 in der Karte entsprechen, werden nicht übertragen (gelöscht). Anders ausgedrückt wird jedes zweite Bit in der X-Muttercodesequenz aus dem seriellen Bitstrom, der durch die Bitlöschschaltung gebildet wird, ausgelassen. Wenn somit die Ausgangssignale des Faltungscodierers 2 als Antwort auf die beiden aufeinanderfolgenden Eingangssignale X1, Y1 als Antwort auf das erste Eingangssignal und X2, Y2 als Antwort auf das nächste Eingangssignal sind, wird die Bitlöschschaltung einen seriellen Strom X1Y1Y2 übertragen. Die gleiche Reihe an Operationen wird alle zwei aufeinander folgenden Zyklen der Vorrichtung wiederholt.

Die Bitlöschschaltung reduziert die Redundanz in der codierten Information und ändert somit die Coderate. Wenn man den Faltungscodierer und die Bitlöschschaltung zusammen betrachtet, beträgt die Anzahl von Bits in der ursprünglichen Information, welche dem Faltungscodierer 2 zugeführt wird, gleich 2, und die Anzahl von Bits im punktierten Faltungscode, der von der Bitlöschschaltung 3 ausgegeben wird, beträgt 3, so dass die Coderate 2/3 beträgt.

Der Bitstrom oder die durch Serie verbundene punktierte Faltungscodesequenz, welche von der Bitlöschschaltung 3 ausgegeben wird, wird einem Seriell-Parallel-Umsetzer 4 zugeführt. Der Seriell-Parallel-Umsetzer 4 setzt eine Eingangsdatensequenz X1, Y1, Y2, ... in zwei Datensequenzen (x, y) um.

Die Datensequenzen x und y vom Umsetzer 4 unterliegen der Bitdiffusion in Bitdiffusionsschaltungen 5-1 und 5-2. Die Reihenfolge von Bits in jeder Sequenz wird diffusionsmäßig geändert (komplex gemacht). Jede von den Bitdiffusionsschaltungen 5-1 und 5-2 führt eine Bitdiffusion durch, wobei die Reihenfolge der Bits in der Datensequenz x oder y gemäß einer vorher festgelegten Regel geändert wird. Üblicherweise sind die Regeln, welche durch die Bitdiffusionsschaltungen 5-1 und 5-2 angewandt werden, voneinander verschieden.

Bei einem Beispiel einer derartigen Bitdiffusion wird angenommen, dass M Bits von Eingangsdaten ein Block sind, und es wird ein geeigneter Wert s festgelegt. Der Bitdiffusionsprozess wird durch Ersetzen eines Vektors durchgeführt, der aus einer M-Bit-Eingangssequenz gebildet wird:

(B0, B1, ..., Bk, ..., BM-1) mit einem Vektor, welcher von einer M-Bit-Ausgangssequenz nach der Diffusion gebildet wird:

(B'0, B'1, ..., B'n, ..., B'M-1), wobei B'n = Bk (n = k + s mod M)

Die Bitdiffusionsschaltungen 5-1 und 5-2 können den gleichen Algorithmus mit unterschiedlichen Werten s verwenden.

Die Datensequenzen x' und y' nach der Bitdiffusion, welche eine diffundierte punktierte Faltungscodeinformation bilden, werden von den Bitdiffusionsschaltungen 5-1 und 5-2 ausgegeben und einer Signalpunkt-Zuordnungsschaltung 6 zugeführt.

Die Signalpunkt-Zuordnungsschaltung 6 gibt Koordinatendaten I' und Q' von Signalpunkten aus, welche eine phasengleiche Komponente (I-Komponente) und eine Quadraturkomponente (Q-Komponente) zeigen, die orthogonal zueinander sind. Beispielsweise wird die Zuordnung von Daten (x', y') als Signale im Übertragungskanal auf Basis des Quadraturphasen-Umtastungssymbols (QPSK-Symbol) durchgeführt, wie in 12 gezeigt ist. Das heißt, die Daten werden so zugeordnet, dass

wenn (x', y') = (0, 0), (I', Q') = (1/√2, 1/√2) festgelegt wird;

wenn (x', y') = (0, 1), (I', Q') = (1/√2, 1/√2) festgelegt wird;

wenn (x', y') = (1, 0), (I', Q') = (1/√2, 1/√2) festgelegt wird; und

wenn (x', y') = (1, 1), (I', Q') = (1/√2, 1/√2) festgelegt wird.

Jeder Satz an Komponenten (I', Q') bildet ein QPSK-Symbol. Jedes derartige Symbol besitzt eine erste Komponente I', welche den Wert eines Bits x' in der diffundierten punktierten Faltungscodeinformation bezeichnet, und eine zweite Komponente Q', welche den Wert eines anderen Bits y' in der diffundierten punktierten Faltungscodeinformation bezeichnet.

Eine Symboldiffusionsschaltung 7 ordnet die QPSK-Symbole um, welche durch Daten I' und Q' vorgeschrieben sind, welche von der Signalpunkt-Zuteilungsschaltung 6 ausgegeben werden, um die Symbole S (I, Q) zu erhalten. Diese Diffusionsverarbeitung vergrößert die Widerstandsfähigkeit des Systems gegenüber Burstfehlern im Übertragungspfad. Die Diffusionsschaltung ändert die Reihenfolge der Symbole S', welche durch (I', Q') dargestellt werden, gemäß einer vorher festgelegten Regel, um die diffundierten Symbole S zu erhalten, welche durch (I, Q) dargestellt werden.

Wenn beispielsweise N-1-Symbole einen Diffusionseinheitsblock bilden und wenn eine Zahl G kleiner als N ausgewählt wird, so dass G und N unteilbar zueinander sind, wird die Diffusion als Ersatz eines Vektors ausgeführt, der durch Symbole vor der Diffusion gebildet wird:

(S'1, S'2, ..., S'k, ..., S'N-1), wobei ein Vektor aus Symbolen nach der Diffusion gebildet wird:

(S1, S2, ..., Sn, ..., SN-1), wobei Sn = S'k (n = G^k mod N). In dieser Gleichung bedeutet G^k G mit der k-ten Potenz. Die Diffusionsschaltung 7 gibt die I- und Q-Komponenten des Symbols nach der Symboldiffusion aus. Ein Modulator 8 moduliert eine Trägerwelle mit den I- und Q-Komponenten der Symbole S auf Basis des orthogonalen Frequenzmultiplexverfahrens (OFDM) und überträgt die modulierte Welle über eine Antenne 9.

13 zeigt den Aufbau eines Empfängers zum Empfangen von Daten vom Übertrager, der in 9 gezeigt ist. Ein Demodulator 32 demoduliert eine elektrische Welle, welche über eine Antenne 31 empfangen wird und gibt eine Reihe von Signalen aus, welche der Reihe von Symbolen entspricht, welche zum Modulator 8 des Übertragers geliefert werden. Jedes derartige Signal umfasst eine I-Komponente und eine Q-Komponente entsprechend den I- und Q-Komponenten der übertragenen Symbole. Es sollte als vorteilhaft angesehen werden, dass die I- und Q-Komponenten der Signale, die durch den Demodulator ausgegeben werden, keine perfekten Duplikate der I- und Q-Werte sind, welche zum Modulator des Übertragers geliefert werden. Rauschen und weitere Unvollkommenheiten im Übertragungspfad verursachen Variationen in den empfangenen I- und Q-Werten. Die I- und Q-Werte, welche die Empfangssignale bilden, werden im Empfänger als Realwerte gehandhabt, d.h., als Analogwerte oder vorzugsweise als Multibit-Digitalwerte. Der Demodulator 32 liefert die Empfangssignale als Reihe von I- und Q-Komponenten.

Eine Symboldiffusions-Umkehrschaltung 33 verarbeitet die Empfangssignale in einer Weise umgekehrt zur Symboldiffusionsverarbeitung in der Symboldiffusionsschaltung 7 des Übertragers (9). Somit stellt die Diffusionsumkehrschaltung die Empfangssignale wiederum in die ursprüngliche Reihenfolge der Symbole her, bevor die Reihenfolge in der Symboldiffusionsschaltung 7 geändert wurde. Dieser Diffusionsumkehrbetrieb ist, wenn dies unter Verwendung des gleichen N und G ausgedrückt wird, wie der, welche in Bezug auf die Symboldiffusionsschaltung 7 verwendet wurden, der Ersatz eines Vektors, der aus Signalen vor der Diffusionsumkehrverarbeitung gebildet wird:

(S1, S2, ..., Sn, ..., SN-1), mit einem Vektor, der aus Signalen nach der Diffusionsumkehrverarbeitung gebildet wird:

(S'1, S'2, ..., S'k, ..., S'N-1, wobei Sn = S'k (n = G^k mod N).

Die I-Komponentenwerte I' und die Q-Komponentenwerte Q', welche von der Symboldiffusionsumkehrschaltung 33 ausgegeben werden, werden zu Bitdiffusionsumkehrschaltungen 34-1 bzw. 34-2 geliefert. Die Bitdiffusionsumkehrschaltungen verarbeiten die I'- und Q'-Komponenten, welche in einer Weise umgekehrt zur Bitdiffusion ausgegeben werden, welche durch die Bitdiffusionsschaltungen 5-1 und 5-2 des Übertragers angewandt wurden. Somit verarbeitet die Bitdiffusionsumkehrschaltung 34-1 Posten von Daten (I-Komponentenwerte) in Blöcke von M-Posten. Ein Vektor, der aus einer Sequenz von ausgegebenen M-Posten nach der Diffusionsumkehrverarbeitung gebildet wird:

(B0, B1, ..., Bk, ..., BM-1) wird von einem Vektor erhalten, der aus einer Sequenz zugeführter M-Posten gebildet wird:

(B'0, B'1, ..., B'n, ..., B'M-1), wobei B'n = Bk (n = k + s mod M).

Der Wert s, der bei der Bitdiffusionsumkehrverarbeitung in der Bitdiffusionsumkehrschaltung 34-1 verwendet wird, ist der gleiche wie der Wert s, der in der Bitdiffusionsschaltung 5-1 des Übertragers verwendet wird. Die Bitdiffusionsumkehrschaltung 34-2 arbeitet in der gleichen Weise, verwendet jedoch einen Wert s gleich dem Wert s, der durch die andere Bitdiffusionsumkehrschaltung 5-2 verwendet wird.

Die beiden Datensequenzen (x, y), welche von den Bitdiffusionsumkehrschaltungen 34-1 und 34-2 ausgegeben werden, werden einem Parallel-Seriell-Umsetzer 35 zugeführt, wo sie in eine Datensequenz umgesetzt werden, welche zu einer Biteinfügungsschaltung 36 zu liefern ist. Der Parallel-Seriell-Umsetzer 35 führt den Betrieb umgekehrt zu dem des Seriell-Parallel-Umsetzers 4 durch, um die beiden Datensequenzen (x, y) in eine Datensequenz umzusetzen.

Die Biteinfügungsschaltung 36 spaltet den seriellen Datenstrom in zwei parallele Datenströme auf und führt die Biteinfügungsverarbeitung invers zur Bitlöschverarbeitung in der Bitlöschschaltung, welche in 9 gezeigt ist, durch. Die Biteinfügungsschaltung 36 verwendet das gleiche Verzeichnis, welches durch die Bitlöschschaltung des Übertragers verwendet wurde:

X: 10

Y: 11

Wenn somit Daten in der Reihenfolge von x1, y1, y2 der Einfügungsschaltung 36 zugeführt werden, werden beliebige Dummydatenposten (hier als 0 angenommen) an der Position eingefügt, welche dem gelöschten Datenposten entspricht, und

X1 (= x1), 0 werden als X-Daten ausgegeben, und

Y1 (= y1), y2 (= y2) werden als Y-Daten in dieser Reihenfolge ausgegeben.

Die Ausgangsdatensequenzen X und Y werden zu einem Viterbi-Decoder 37 geliefert. Außerdem wird ein Einfügungsflag, welches die Position zeigt, bei welcher die Dummydaten eingefügt sind, zum Viterbi-Decoder 37 geliefert. In diesem Zustand der Verarbeitung sind die individuellen Datenelemente der Sequenzen X und Y (anders als Dummywerte) noch Realzahlen, welche den Werten der I- und Q-Komponenten in den Empfangssignalen entsprechen, bevorzugt als Einzel-Bit-1- oder 0-Elemente. Die Realzahlen in diesen Datensequenzen entsprechen den Werten 1 und 0 der Muttercodes, welche durch den Faltungscodierer 2 des Übertragers ausgegeben werden. Wenn der Übertragungskanal ein perfekter Kanal wäre, würde jede Zahl, welche einer 0 im Muttercode entspricht, exakt den gleichen Wert gleich dem Nominalwert 1/√2, der durch die Signalpunkt-Zuteilungsschaltung des Übertragers zugeteilt wurde, haben, während jede Zahl, welche einer 1 im Muttercode entspricht, den anderen Nominalwert –1/√2 haben würde. Rauschen und weitere Fehler im Übertragungspfad zwischen dem Übertrager und Empfänger werden verursachen, dass diese Werte etwas gegenüber den Nominalwerten variieren.

Der Viterbi-Decoder 37 decodiert die Datensequenzen X und Y, um die reproduzierte Information, welche der ursprünglichen Information entspricht, wiederzuentwickeln. Somit führt der Decoder die Viterbi-Decodierung gemäß den Zustandsübergängen (11) des Faltungscodierers 2 durch.

14 zeigt ein Beispiel des Viterbi-Decoders 37. Die Daten X und Y, welche von der Biteinfügungsschaltung 36 ausgegeben werden, werden zu Eingangsanschlüssen 62-1 bzw. 62-2 zur Eingabe zu Zweigmetrik-Berechnungsschaltungen 63-1 bis 63-4 geliefert. Jede der Zweigmetrik-Berechnungsschaltungen 63-1 bis 63-4 berechnet als Zweigmetrik den Abstand zwischen den Eingangsdaten (X, Y) und einem zugeordneten der Koordinatenpunkte, die durch Nominalwerte definiert sind, die in 12 gezeigt sind.

Die Ausgangssignale (Zweigmetriken) BM00 und BM11 von den Zweigmetrik-Berechnungsschaltungen 63-1 und 63-4 werden zu Hinzufügungsvergleichs-Auswahlschaltungen (ACS) 64-1 und 64-3 geliefert. Außerdem werden ein Ausgangssignal (Zweigmetrik) BM01 von der Zweigmetrik-Berechnungsschaltung 63-2 und ein Ausgangssignal (Zweigmetrik) BM10 von der Zweigmetrik-Berechnungsschaltung 63-3 den ACS-Schaltungen 64-2 und 64-4 zugeführt.

Es sind vier Status-Metrik-Speichereinheiten 66-1 bis 66-4 vorgesehen. Die Status-Metrik-Speichereinheit 66-1 besitzt einen Eingang 66-1a, der mit einem Ausgang der ACS-Einheit 64-1 verbunden ist. In gleicher Weise hat jede der anderen Status-Metrik-Speichereinheiten 66-2, 66-3 und 66-4 einen Eingang, der mit den Ausgängen der ACS-Einheiten 64-2, 64-3 bzw. 64-4 verbunden ist.

Ein Ausgangssignal (Status-Metrik) SM00 vom Status-Metrik-Speicher 66-1 und ein Ausgangssignal (Status-Metrik) SM01 vom Status-Metrik-Speicher 66-2 werden ebenfalls zu den ACS-Schaltungen 64-1 und 64-3 geliefert. Ein Ausgangssignal (Status-Metrik) SM10 vom Status-Metrik-Speicher 66-3 und ein Ausgangssignal (Status-Metrik) SM11 vom Status-Metrik-Speicher 66-4 werden ebenfalls zu den ACS-Schaltungen 64-2 und 64-4 geliefert.

Alle ACS-Schaltungen 64-1 bis 64-4 berechnen die Summe einer von den zugeführten Zweigmetriken BM und der entsprechenden Zustandsmetrik SM und berechnen die Summe der anderen Eingangszweigmetrik BM und der entsprechenden Status-Metrik SM. Jede der ACS-Schaltungen 64-1 bis 64-4 vergleicht die beiden Summen miteinander, um die kleinere von diesen auszuwählen, gibt die kleinere Summe als neue Status-Metrik SM an die entsprechende der Status-Metrik-Speichereinheiten 66-1 bis 66-4 aus und gibt Signale SEL00 bis SEL11 entsprechend dem Auswahlergebnis an den Pfadspeicher 65 aus. Die Status-Metriken SM00 bis SM11 von den Status-Metrik-Speichern 66-1 bis 66-4 werden ebenfalls dem Pfadspeicher 65 zugeführt.

Ein jeder der Status-Metrik-Speicher 66-1 bis 66-4 kann durch ein Signal zurückgesetzt werden, welches über einen Anschluss 61 zugeführt wird. Der Pfadspeicher 65 gibt das Decodierergebnis über einen Anschluss 67 aus.

Die Arbeitsweise des Viterbi-Decoders 37 wird ausführlicher beschrieben. Die Zweigmetrik-Berechnungsschaltung 63-1 berechnet den Abstand zwischen den zugeführten Daten (X, Y) und dem Koordinatenpunkt (1/√2, 1/√2) als Zweigmetrik BM00. Ähnlich berechnet die Zweigmetrik-Berechnungsschaltung 63-2 den Abstand zwischen den zugeführten Daten (X, Y) und dem Koordinatenpunkt (1/√2, –1/√2) als Zweigmetrik BM01. Die Zweigmetrik-Berechnungsschaltung 63-3 berechnet den Abstand zwischen den zugeführten Daten (X, Y) und dem Koordinatenpunkt (–1/√2, 1/√2) als Zweigmetrik BM10. Die Zweigmetrik-Berechnungsschaltung 63-4 berechnet den Abstand zwischen den zugeführten Daten (X, Y) und dem Koordinatenpunkt (–1/√2, –1/√2) als Zweigmetrik BM11. Beim Berechnen der Zweigmetriken wird die Abstandsberechnung in Bezug auf die eingefügten Dummydaten als Antwort auf das Einfügungsflag ausgelassen, welches von der Biteinfügungsschaltung 36 geliefert wird. Das heißt, der Abstand zwischen dem eingefügten Dummydatenwert und dem verwandten Koordinatenpunkt wird auf einen Nullwert gesetzt, wie unten mit Hilfe von 15 weiter erläutert wird.

Die ACS-Schaltung 64-1 führt zwei Berechnungen, die unten gezeigt sind, entsprechend den Statusübergängen des Faltungscodierers 2 durch, und wählt einen der Ergebnisse dieser Berechnungen mit einer höheren Wahrscheinlichkeit aus, d.h., das kleinere der Berechnungsergebnisse. Die Information SELL00 in Bezug auf diese Auswahl wird zum Pfadspeicher 65 geliefert, während das Berechnungsergebnis SM00 zum Status-Metrik-Speicher 66-1 geliefert wird. SM00 + BM00(1) SM01 + BM11(2)

SM00 ist der Wert des Status-Metrik-Speichers 66-1, der von einem vorhergehenden Taktzyklus verbleibt, d.h., der Wert der Status-Metrik, welcher aus der Verarbeitung der vorhergehenden X- und Y-Werte in der Datensequenz resultiert. Ähnlich ist SM01 der Wert, der im Status-Metrik-Speicher 66-2 aus dem vorhergehenden Taktzyklus bleibt. BM00 ist das Ergebnis der Berechnung der Zweigmetrik-Berechnungsschaltung 63-1, und BM11 ist das Ergebnis der Berechnung der Zweigmetrik-Berechnungsschaltung 63-4.

Wenn das Ergebnis der Berechnung (1) kleiner ist, wird SELL00 = 0 zum Pfadspeicher 65 geliefert. Wenn das Ergebnis der Berechnung (2) kleiner ist, wird SELL00 = 1 zum Pfadspeicher 65 geliefert. Im ersteren Fall wird SM00 + BM00 als neue Status-Metrik SM00 im Status-Metrik-Speicher 66-1 gespeichert. Im letzteren Fall wird SM01 + BM11 als neue Status-Metrik SM00 im Status-Metrik-Speicher 66-1 gespeichert.

Diese Berechnung wird unter Bezugnahme auf das Statusübergangsdiagramm von 11 beschrieben. Die Status-Metriken können so verstanden sein, dass sie die Wahrscheinlichkeit zeigen, dass die zugeführten Daten (X, Y) die Muttercodebits zeigen, welche durch einen Übergang des Faltungscodierers erzeugt werden, welche bestimmte Ausgangssignale zur Folge haben. Wenn beispielsweise die zugeführten Daten X, Y, die Werte sehr nahe an den Nominalwerten (1/√2, 1/√2) haben, empfangen werden und folglich die Größe von BM00 klein ist, ist es dann wahrscheinlich, dass die zugeführten Daten durch einen Übergang des Faltungscodierers 2 im Übertrager erzeugt wurden, der Ausgangssignale (Muttercodebits X, Y) von 00 erzeugte. Die Status-Metriken können so verstanden werden, dass sie die Wahrscheinlichkeit zeigen, dass der Faltungscodierer 2 im Übertrager, der die Daten erzeugte, in einem besonderen Zustand war, wobei kleinere Werte der Status-Metriken größere Wahrscheinlichkeit zeigen. Beispielsweise zeigt ein kleinerer Wert von SM00 eine hohe Wahrscheinlichkeit, dass der Codierer im Status 00 war. Es gibt zwei Pfade für den Status 00. Der erste Pfad ist durch das Eingangssignal von 0 im Status 00 und durch das Ausgangssignal von 00 definiert. Eine entsprechende Vergleichsberechnung wird durch die Gleichung (1) gezeigt. Der zweite Pfad ist durch das Eingangssignal von 0 im Status 01 und durch das Ausgangssignal von 11 definiert. Eine entsprechende Vergleichsberechnung wird durch die Gleichung (2) dargestellt. Das kleinere der beiden Berechnungsergebnisse wird als neue Status-Metrik SM00 zum Status-Metrik-Speicher 66-1 geliefert.

Alle ACS-Schaltungen 564-2 bis 64-4 führen den gleichen Betrieb durch. Alle Status-Metrik-Speicher 66-1 bis 66-4 werden auf 0 in einem Anfangszustand des Betriebs des Systems zurückgesetzt. Die Steuerung dieses Zurücksetzens wird durch eine Steuerung (nicht gezeigt) über den Anschluss 61 durchgeführt.

Der Pfadspeicher 65 erzeugt die Wiedergabedaten, welche das Endausgangssignal des Empfängers sind, gemäß den Statusübergängen, welche in 11 gezeigt sind. Der Pfadspeicher verwendet die Auswahlinformation SEL00 bis SEL11, welche von den ACS-Schaltungen 64-1 bis 64-4 geliefert wird, und die Status-Metriken SM00 bis SM11, welche durch die Status-Metrik-Speichereinheiten 66-1 bis 66-4 geliefert werden.

15 zeigt eine Zweigmetrik-Berechnungsschaltung 63-1 ausführlich. Daten X, welche über den Anschluss 62-1 zugeführt werden, werden einer Subtraktionsschaltung 51 zugeführt, welche 1/√2, welche von einer Generatorschaltung 52 zugeführt wird, von den Daten X subtrahiert. Die Differenz, welche von der Subtrahierschaltung 51 ausgegeben wird, wird zu den beiden Eingangsanschlüssen einer Multiplizierschaltung 53 geliefert und mit sich selbst multipliziert (d.h., quadriert). Ein Auswahlorgan 203 wird mit einem Ausgangssignal von der Multiplizierschaltung 53 und mit einem Ausgangssignal 0 von einer Generatorschaltung 202 beliefert. Wenn das Flag, welches das Einfügen in X zeigt, dem Auswahlorgan 203 von der Biteinfügungsschaltung 36 (13) über einen Anschluss 201 zugeführt wird, wählt das Auswahlorgan 203 die 0 aus, welche durch die Generatorschaltung 202 erzeugt wird. Wenn kein Flag, welches das Einfügen im X zeigt, zugeführt wird, wählt das Auswahlorgan 203 das Ausgangssignal von der Multiplizierschaltung 53 aus. Das Auswahlorgan 203 gibt den ausgewählten Wert an eine Addierschaltung 54 aus.

Die Daten Y, welche über den Anschluss 62-2 zugeführt werden, werden einer Subtrahierschaltung 55 zugeführt, welche 1/√2, welches von einer Generatorschaltung 56 geliefert wird, von den Daten Y subtrahiert. Das Ausgangssignal von der Subtrahierschaltung 56 wird zu zwei Eingangsanschlüssen einer Multiplizierschaltung 57 geliefert, wo dies mit sich selbst multipliziert wird (d.h., quadriert wird). Ein Auswahlorgan 206 wird mit einem Ausgangssignal von der Multiplizierschaltung 57 und mit einem Ausgangssignal von einer 0-Generatorschaltung 205 beliefert. Wenn das Flag, welches das Einfügen in Y zeigt, dem Auswahlorgan 206 über den Anschluss 204 zugeführt wird, wählt das Auswahlorgan 206 die 0 von der Schaltung 205 aus. Wenn kein Flag, welches das Einfügen im Y zeigt, zugeführt wird, wählt das Auswahlorgan 206 das Ausgangssignal von der Multiplizierschaltung 57 aus. Das Auswahlorgan gibt den ausgewählten Wert an die Addierschaltung 54 aus. Die Addierschaltung 54 berechnet die Summe der Ausgangssignale von den Auswahlorganen 203 und 206 und gibt die Summe als Zweigmetrik BM00 aus.

Wenn somit kein Einfügungsflag geliefert wird, ist die Arbeitsweise dieser Zweigmetrik-Berechnungsschaltung so, wie anschließend beschrieben wird. Die Subtrahierschaltung 51 gibt X – 1/√2 aus, und die Multiplizierschaltung 53 quadriert diesen Wert, um (X – 1/√2)2 auszugeben. Außerdem gibt die Subtrahierschaltung 55 Y – 1/√2 aus, und die Multiplizierschaltung 57 quadriert diesen Wert, um (Y – 1/√2)2 auszugeben. Die Addierschaltung 54 berechnet die Summe der Ausgangssignale von den Multiplizierschaltungen 53 und 57, d.h., (X – 1/√2)2 + (Y – 1/√2)2 und gibt diesen Wert als Zweigmetrik BM00 aus.

Wenn dagegen das Flag, welches das Einfügen in X zeigt, zugeführt wird, gibt das Auswahlorgan 203 die 0 aus, so dass das Ausgangssignal von der Addierschaltung 54 gleich (Y – 1/√2)2 beträgt. Wenn das Flag, welches das Einfügen in Y zeigt, zugeführt wird, gibt das Auswahlorgan 206 die 0 aus, und das Ausgangssignal von der Addierschaltung 54 beträgt (X – 1/√2)2.

Alle Zweigmetrik-Berechnungsschaltungen 63-2 bis 63-4 haben den gleichen Schaltungsaufbau wie den, der in 15 gezeigt ist und führen den gleichen Betrieb durch. In der Zweigmetrik-Berechnungsschaltung 63-2 beträgt jedoch das Ausgangssignal der Generatorschaltung 52 1/√2, und das Ausgangssignal der Generatorschaltung 56 beträgt –1/√2. In der Zweigmetrik-Berechnungsschaltung 63-3 sind die Ausgangssignale der Generatorschaltungen 52 und 56 –1/√2 bzw. 1/√2. In der Zweigmetrik-Berechnungsschaltung 63-4 beträgt das Ausgangssignal aller Generatorschaltungen 52 und 56 gleich –1/√2.

16 ist ein Blockdiagramm des Pfadspeichers 65. Auswahlinformationsposten SEL00 bis SEL11, welche von den ACS-Schaltungen 64-1 bis 64-4 ausgegeben werden, werden zu den Anschlüssen 71-1 bis 71-4 geliefert. Die Auswahlinformationsposten SEL00 bis SEL11 werden als Steuersignale den Selektoren 73-1 bis 73-4 entsprechend zugeführt, welche zwei Eingänge und einen Ausgang haben. Ein fester Datenposten 0 wird vom Anschluss 72-1 als zwei Eingangssignale zum Auswahlorgan 73-1 geliefert, während ein fester Datenposten 0 vom Anschluss 72-2 als zwei Eingangssignale des Auswahlorgans 73-2 geliefert wird. Ähnlich wird ein fester Datenposten 1 von den Anschlüssen 72-3 und 72-4 als zwei Eingangssignale zu jedem Auswahlorgan 73-2 bis 73-4 geliefert.

Ein jedes der Auswahlorgane 73-1 bis 73-4 wählt eines der beiden Eingangssignale entsprechend einem der Auswahlinformationsposten SEL00 bis SEL11 aus und gibt den ausgewählten Datenposten an das entsprechende der Register 81-1 bis 81-4 aus. Wie oben erwähnt werden der gleiche Datenposten von einem der Anschlüsse 72-1 bis 72-4 als zwei Eingangssignale zu dem entsprechenden des erst-spaltigen Auswahlorgans 73-1 bis 73-4 geliefert. Daher speichern die erst-spaltigen Register 81-1 bis 81-4 0, 0, 1 bzw. 1.

Die anderen Auswahlorgane und Register sind in der gleichen Weise wie die oben beschrieben angeordnet; die Auswahlorgane und die Register sind in n Spalten (4 Spalten in 16 gezeigten Beispiel) angeordnet. Das heißt, in der zweiten Spalte sind die Auswahlorgane 74-1 bis 74-4 und die Register 82-1 bis 82-4 vorgesehen. Die Ausgangssignale von den erst-spaltigen Registern 81-1 und 81-2 werden zu den Auswahlorganen 74-1 und 74-3 in der zweiten Spalte geliefert. Die Ausgangssignale von den erst-spaltigen Registern 81-3 und 81-4 werden zu den zweit-spaltigen Auswahlorganen 74-2 und 74-4 geliefert. Ein jedes der zweit-spaltigen Auswahlorgane 74-1 bis 74-4 führt die Verarbeitung so durch, um eines von beiden Eingangssignalen entsprechend dem Wert des entsprechenden der Auswahlinformationsposten SEL00 bis SEL11 auszuwählen, und um den ausgewählten Datenposten an das entsprechende der zweit-spaltigen Register 82-1 bis 82-4 auszugeben. Beispielsweise wählt das Register 74-1 das Ausgangssignal des Registers 81-1 aus, wenn der Auswahlinformationsposten SEL00 gleich 0 ist, wählt das Ausgangssignal des Registers 81-2 aus, wenn der Auswahlinformationsposten SEL00 gleich 1 ist, und gibt den ausgewählten Datenposten an das Register 82-1 aus. Die dritten und vierten Spaltenauswahlorgane und die Register arbeiten in einer ähnlichen Weise.

Die Ausgangssignale von den Registern 84-1 bis 84-4 in der Schlussspalte werden einem Auswahlorgan 85, welches vier Eingänge und einen Ausgang aufweist, zugeführt. Statusmetriken SM00 bis SM11, welche von den Status-Metrik-Speichern 66-1 bis 66-4 ausgegeben werden, welche in 14 gezeigt sind, werden einer Minimalwert-Komparatorschaltung 88 zugeführt. Die Minimalwert-Komparatorschaltung 88 vergleicht die vier Statusmetriken und wählt die kleinste von diesen aus. Die Minimalwert-Komparatorschaltung 88 gibt Daten 00 aus, wenn die Statusmetrik SM00 die kleinste ist, die Daten 01, wenn die Statusmetrik SM01 die kleinste ist, die Daten 10, wenn die Statusmetrik SM10 die kleinste ist, und die Daten 11, wenn die Statusmetrik SM11 die kleinste ist. Das Auswahlorgan 85 wählt das Ausgangssignal des Registers 84-1 aus, wenn das Eingangssignal von der Minimalwert-Komparatorschaltung 88 gleich 00 ist, das Ausgangssignal des Registers 84-2, wenn das Eingangssignal von der Minimalwert-Komparatorschaltung 88 gleich 01 ist, das Ausgangssignal des Registers 84-3, wenn das Eingangssignal von der Minimalwert-Komparatorschaltung 88 gleich 10 ist, und das Ausgangssignal des Registers 84-4, wenn das Eingangssignal von der Minimalwert-Komparatorschaltung 88 gleich 11 ist. Das Ausgangssignal vom ausgewählten Register wird durch das Auswahlorgan 85 als Decodierergebnis über einen Anschluss 86 ausgegeben. Die Sequenz der Ausgangssignale vom Anschluss 86 zeigt die Wiedergabeinformation.

Die oben beschriebenen Verbindungen im Pfadspeicher 65 liefern Ausgangssignale, welche dem Zustandsdiagramm von 11 entsprechen. Die festen Werte (0 und 1) an den Anschlüssen 72-1 bis 72-4 zeigen mögliche decodierte Informationsposten. Die Werte, welche über die Matrix der Auswahlorgane und die Register sich ausbreiten werden, werden von den Werten der Auswahlinformation SEL00 bis SEL11 abhängen. Diese Werte hängen wiederum von den Werten der Statusmetriken und der Zweigmetriken während jedes Taktzyklus ab, wie oben beschrieben. In Wirklichkeit sind die Datenposten, welche an den Endregistern 84-1 bis 84-4 erscheinen, mit möglichen unterschiedlichen Pfaden über die Gitter oder Zustandsequenzen des Faltungscodierers verknüpft. Der Datenposten, der dem Pfad mit der maximalen Wahrscheinlichkeit entspricht, wird von den vier Datenposten ausgewählt, welche in den Registern 84-1 bis 84-4 der Endspalte gespeichert sind, und der ausgewählte Posten wird als Wiedergabeinformation ausgegeben. Das Auswahlorgan 85 wählt den Posten aus, der dem minimalen Statusmetrik-Wert entspricht, d.h., den Pfad mit der maximalen Wahrscheinlichkeit in jedem Zeitpunkt. Anders ausgedrückt liefert der Viterbi-Decoder eine Sequenz wiedergegebener Daten, welche die wahrscheinlichste Sequenz der Ursprungsdaten zeigen, welche dem Faltungscodierer im Übertrager zugeführt werden. Beim Auswählen der wahrscheinlichsten Sequenz wählt der Decoder jedes Bit der wiedergegebenen Daten auf Basis von mehreren Bits der Übertragungsdaten aus. Dieses liefert einen substantiellen Codiergewinn.

Durch den ansteigenden Wunsch nach Hochgeschwindigkeits-Datenübertragung besteht der Wunsch, das Digitaldaten-Übertragungssystem, welches oben beschrieben ist, von der QPSK-Durchführung auf andere komplexere Modulationssysteme zu erweitern. Bei dem komplexeren Übertragungsverfahren bezeichnet jedes Übertragungssignal Werte für mehr als zwei Bits. Jedes Signal zeigt üblicherweise zwei Komponenten, wobei jede Komponente mehr als zwei mögliche Nominalwerte hat. Beispiele derartiger Modulationssysteme umfassen 16-QAM, 64-QAM und 256-QAM. Bei dem 16-QAM-System weist jedes Symbol zwei Komponenten auf, und jede Komponente hat vier mögliche Nominalwerte, so dass eines der 16 möglichen Symbole übertragen werden kann. Somit kann jedes Symbol Werte für vier Bits bezeichnen. Die 64-QAM- und 256-QAM-Systeme verwenden Symbolsätze mit 64 bzw. 256 möglichen Symbolen, um 6 bzw. 8 Bits pro Symbol zu codieren. Vergleichsweise werden bei dem QPSK-System, welches oben beschrieben wurde, lediglich zwei Bits in jedem Symbol codiert. Die komplexeren Übertragungssysteme bieten die Möglichkeit von höheren Datenübertragungsraten. Es ist jedoch schwierig, eine Codier- und Decodierstrategie mit Faltungs- oder Punktierungs-Faltungscodierung und mit einer Bitdiffusion wie oben beschrieben in Kombination mit einem Multikomponenten-, Multiwert-Modulationssystem zu verwenden.

17 zeigt einen Datenübertrager, bei dem 16-QAM verwendet wird. In 17 sind Abschnitte, welche dem QPSK-Übertrager von 9 entsprechen, mit den gleichen Bezugszeichen bezeichnet. Der Faltungscodierer 2 und die Bitlöschschaltung 3 sind identisch mit denjenigen, welche beim QPSK-Übertrager verwendet werden, und erzeugen punkturierte Faltungscodesequenzen identisch denjenigen, die oben erläutert wurden. Der Seriell-Parallel-Umsetzer 4 von 17 spaltet jedoch die seriellen Daten, welche von der Bitlöschschaltung 3 ausgegeben werden, in vier parallele Datenströme u, v, x und y auf. Diese Datenposten bei jedem Strom unterliegen der Bitdiffusionsverarbeitung in den Bitdiffusionsschaltungen 91-1 bis 91-4, um umgeordnete Daten u'. v', x' und y' zu liefern, welche zu einer Signalpunkt-Zuordnungsschaltung 6 geliefert werden. Die Bitdiffusionsverarbeitung, welche bei jeder Datensequenz angewandt wird, ist die gleiche wie die, welche bei den Bitdiffusionsschaltungen 5-1 und 5-2 von 9 angewandt wird. Die Bitdiffusionsverarbeitung wird in Bezug auf die Datensequenzen unter Verwendung unterschiedlicher Werte s für jede Datensequenz variiert.

Die Signalpunkt-Zuteilungsschaltung 6 ordnet zugeführte 4-Bit-Daten (u', v', x' y') als Symbole des 16-QAM-Symbolsatzes zu, der in 18 gezeigt ist. In jedem 16-QAM-Satz zeigt jedes Symbol zwei Komponenten I' und Q'. Jede Komponente kann einen von vier Nominalwerten haben, und jede Komponente bezeichnet Werte von 2 Bits. Somit bezeichnet die Komponente I' die Werte der ersten und dritten Bits der 4-Bit-Daten, während die Komponente Q' die Werte der zweiten und vierten Bits bezeichnet. Beispielsweise gilt:

(I', Q') = (3/√10, 3/√10), wenn (u', v', x' y') = (0, 0, 0, 0) und

(I', Q') = (3/√10, 1/√10), wenn (u', v', x', y') = (0, 0, 0, 1)

Die Symbole, welche durch die Signalpunkt-Zuteilungsschaltung 6 erzeugt werden, werden der Symboldiffusion in einer Symboldiffusionsschaltung 7 in der gleichen weise wie oben erläutert unterworfen, und die umgeordneten Komponenten I und Q werden zu einem Modulator 8 geliefert und über OFDM-Modulation wie oben erläutert übertragen. In anderer Hinsicht ist der Aufbau des Übertragers, der in 17 gezeigt ist, der gleiche wie der, der in 9 gezeigt ist.

Ein Empfänger für das 16-QAM-Signal vom Übertrager von 17, der in einer Weise analog zum QPSK-Empfänger von 13 aufgebaut ist, würde den Aufbau haben, der in 19 gezeigt ist. Ein Empfänger, der in 19 gezeigt ist, wird jedoch nicht genau arbeiten.

Bei dem QPSK-System, welches oben mit Hilfe von 13 beschrieben wurde, zeigt jede der Signalkomponenten I und Q, welche von der Symboldiffusions-Umkehrschaltung 33 zu den Bitdiffusions-Umkehrschaltungen 34-1 und 34-2 zugeführt wurde, ein Bit der bit-diffundierten punkturierten Faltungscodeinformation. Daher werden durch das Umordnen der I- und Q-Signalkomponenten durch die Bitdiffusions-Umkehrschaltungen in einer Weise umgekehrt zur Umordnung, welche durch die Bitdiffusionsschaltungen des Übertragers angewandt wird, die Signalkomponenten in der gleichen Reihenfolge wie in der Reihenfolge der Bits in der Information vor der Bitdiffusionsverarbeitung wiederhergestellt. Jede der Komponenten I und Q im 16-QAM-System zeigt jedoch zwei Bits. Bei dem Symbolsatz oder der Signalpunkt-Konstellation, welche in 18 gezeigt ist, weist I die Information des ersten und dritten Bits auf, während Q die Information des zweiten und vierten Bits aufweist. I ist jedoch ein Wert, beispielsweise 1/√10 oder 3/√10, und Q ist ebenfalls ein derartiger Wert. Wenn der Strom der I- und Q-Komponentenwerte lediglich in vier Datenströme unterteilt wird, wie in 19 gezeigt ist, zeigt jeder Datenposten in jedem Datenstrom u', v', x' und y' noch zwei Bits und nicht ein einzelnes Bit. Wenn die Diffusionsumkehrverarbeitung bei den Schaltungen 95-1 bis 95-4 angewandt wird, wird invers zur Bitdiffusionsverarbeitung, welche bei Einzel-Bit-Datenposten durch den Übertrager angewandt wird, werden die Bitdiffusionsschaltungen 91-1 bis 91-4 (17) die Daten verwürfeln; sie werden nicht mehr in der ursprünglichen Reihenfolge wiederentwickelt. Anders ausgedrückt wird die Bitdiffusionsoperation im Übertrager auf Einzelbitdaten durchgeführt, wobei jedoch die Signalkomponentenwerte I und Q zwei Bits jeweils zeigen. Daher kann die inverse Operation in Bezug auf die I- und Q-Komponentenwerten im Empfänger nicht durchgeführt werden.

Das gleiche Problem tritt in Verbindung mit den Bitlösch- und Biteinfügungs-Operationen auf. Somit arbeitet die Bitlöschschaltung 3 des Übertragers in 17 in Bezug auf Einzelbits des Muttercodes. Die Operation der Biteinfügungsschaltung 36, um die Dummydaten in den Strom des 2-Bit-Komponentenwerts einzufügen, wird weiter die Daten verwürfeln und werden nicht mehr die ursprüngliche Struktur der Daten herstellen. Wenn beispielsweise die Sequenz von Datenposten, beispielsweise x1, y1, x2, y2, x3, y3, ..., die in 20(A) gezeigt ist, der Biteinfügungsschaltung 36 zugeführt werden, welche gemäß dem Bitlöschverzeichnis arbeitet, das oben besprochen wurde und in der Bitlöschschaltung von 13 verwendet wird, werden dann x1 und y1 als Datenposten X1 und Y1 ausgegeben, ein Dummydatenposten d wird anschließend als Datenposten X2 ausgegeben, und x2 wird danach als Datenposten Y2 ausgegeben, wie in 20(B) gezeigt ist. In ähnlicher Weise werden y2 und x3 als Datenposten X3 und Y3 ausgegeben, und ein Dummydatenposten d wird als Datenposten X4 ausgegeben, und y3 wird als Datenposten Y4 ausgegeben.

Diese Verarbeitung ist jedoch nicht gleich der Verarbeitung umgekehrt zur Verarbeitung in der Bitlöschschaltung 3, welche in 17 gezeigt ist. Wiederum arbeitet die Bitlöschschaltung in Bezug auf Daten auf Bitebene, um individuelle Datenbits zu löschen. Im Gegensatz dazu entspricht jeder Datenposten x1, y2 usw., welche in 20(B) gezeigt sind, zwei Datenbits. Die Ausgangsdatensequenz, welche durch Einfügen eines Bits von Dummydaten d in eine Sequenz von zwei Bitdatenposten erlangt wird, ist völlig verschieden gegenüber der ursprünglichen Datensequenz. Das Ergebnis der Viterbi-Decodierung des Ausgangssignals von der Biteinfügungsschaltung 36 durch den Viterbi-Decoder 37 würde gegenüber den Ursprungsdaten vollständig verschieden sein.

Es würde erscheinen, dass die Probleme in Verbindung mit dem Handhaben von Komponentenwerten, welche Mehrfachbits zeigen, durch Entwickeln der individuellen Bitwerte bei oder unmittelbar nach der Symboldiffusions-Umkehrschaltung 33 des Datenempfängers, der in 19 gezeigt ist, verhindert werden könnte. Somit können vor der Bitdiffusionsumkehrschaltung die I- und Q-Komponenten jedes Signals ausgewertet werden, um die individuellen Bitwerte u', v', x' und y zu liefern. In einem solchen Fall werden die Abstände zwischen den Koordinaten (I, Q), welche durch die I- und Q-Komponenten jedes Empfangssignals definiert sind, und die nominalen Signalpunkte, welche in 18 gezeigt ist, berechnet. Das Empfangssignal erscheint so, als ob es das Symbol in Verbindung mit dem nächsten Nominalsignalpunkt zeigt, und die Bitwerte werden auf Basis von diesem Symbol zugeordnet. Beispielsweise erscheint es, dass ein Empfangssignal, welches I- und Q-Koordinaten in der Nähe der Koordinaten (–1/√10, 3/√10) hat, das Symbol zeigt, welches Nominalwerte (–1/√10, 3/√10) hat, d.h., 1010 in 18. Die Bitwerte in Verbindung mit diesem Symbol werden den 4-Bit-Daten zugeteilt; u' = 1, v' = 0, x' = 1 und y' = 0. Die Bitwerte, welche auf diese Weise wiederentwickelt werden, sind Einzelbitwerte und können über Bitdiffusionsumkehr und Biteinfügung verarbeitet werden.

Ein derartiges System trifft jedoch eine "harte" Entscheidung bezüglich des Werts jedes Bits auf Basis des Inhalts eines einzelnen Empfangssignals. Es opfert die Vorteile von Rauschimmunität und Codiergewinn, die durch "Soft"-Decodierung, beispielsweise der oben erläuterten Viterbi-Decodierung erlangt werden, in der Information, welche in mehreren Signalen übertragen wird, die während mehrerer Zeiteinheiten zur Entscheidung, welche durch den Empfänger getroffen wird, als wahrscheinlichsten Wert für jedes Bit der Wiedergabeinformation mitwirkt.

Ähnliche Probleme entstehen bei anderen Multiwert-Multikomponenten-Modulationssystemen, beispielsweise 64-QAM oder 256-QAM. Somit bestand die Notwendigkeit nach einer verbesserten Empfangsvorrichtung und nach Verfahren, welche Daten genau empfangen und decodieren können, welche durch ein Multiwert-, Multikomponenten-Modulationssystem übertragen werden können, wobei diese genau decodiert werden können.

Die US-5 134 635 offenbart einen Datenempfänger zum Empfangen einer Reihe von Empfangssymbolen, welche I- und Q-Komponenten verkörpern und welche durch einen Faltungscode codiert wurden. Der Empfänger weist auf: einen QAM-Empfänger, der die I-Komponente und die Q-Komponente bestimmt; einen Bitmetrik-Rechner, der Bitmetriken für jedes der Bits aus Daten berechnet, welche durch die bestimmte I-Komponente und die Q-Komponente bezeichnet werden, um Sequenzen von Bitmetriken bereitzustellen; und einen Viterbi-Decoder, um die Daten durch Verarbeiten von Bitmetriksequenzen zu decodieren.

Yasuda et al., "High-Rate Punctured Convolutional Codes for Soft Decision Viterbi Decoding", IEEE Transaction on Communication, Bd. COM-32, Nr. 3, März 1984 offenbart ein Verfahren zum Übertragen von Daten, welche durch einen punktierten Faltungscode codiert wurden, ohne die Verwendung irgendwelcher Modulation der codierten Daten. Bei einem Empfang wird die Biteinfügung in die Sequenz von Bits in das empfangene Codewort gemäß einer vorher festgelegten Regel durchgeführt, um die Bits zu ersetzen, welche durch Punkturierung entfernt wurden und um ein vergrößertes Codewort zu bilden.

Gemäß einem Merkmal der vorliegenden Erfindung wird ein Datenempfänger zum Empfangen einer Reihe von Empfangssignalen bereitgestellt, wobei jedes Empfangssignal I- und Q-Komponenten enthält, wobei jedes Empfangssignal Werte für mehr als zwei Datenbits in einer Nachricht kennzeichnet, welche in einen punktierten Faltungscode codiert ist, wobei der Datenempfänger aufweist:

eine Demodulationseinrichtung zum Bestimmen einer I-Komponente und einer Q-Komponente der Empfangssignale;

eine Bitmetrik-Berechnungseinrichtung zum Berechnen zumindest einer Bit-Metrik für jedes der Datenbits, welches durch die bestimmte I-Komponente und Q-Komponente der Empfangssignale gekennzeichnet wird, um eine oder mehrere Bit-Metrik-Sequenzen bereitzustellen;

eine Bit-Einfügungseinrichtung zum Durchführen von Bit-Einfügungsverarbeitung in den Bit-Metrik-Sequenzen gemäß einer vorher festgelegten Regel, um dadurch eine oder mehrere vermehrte Bit-Metrik-Sequenzen zu bilden; und

eine Decodiereinrichtung zum Decodieren der Daten durch Verarbeitung der einen oder mehreren vermehrten Bit-Metrik-Sequenzen.

Die Empfangssignale können beispielsweise Signale sein, beispielsweise 16-QAM-, 64-QAM- oder 256-QAM-Signale oder andere Multikomponenten-, Multiwertsignale, welche I- und Q-Komponenten haben.

Die Biteinfügungseinrichtung arbeitet in wünschenswerter Weise gemäß einer Regel umkehrt zu der Regel, welche durch eine Bitlöschschaltung im Übertrager verwendet wird, so dass eine oder mehrere vergrößerte Bitmetriksequenzen im Wesentlichen den Sequenzen von bitwerten entsprechen, welche den Mutterfaltungscode bilden, der zur Bitlöschschaltung im Übertrager geliefert wird. Beispielsweise kann die Biteinfügungseinrichtung eingerichtet sein, Dummydaten in die Bitmetriksequenzen an Positionen einzufügen, welche den Positionen der gelöschten Bits entsprechen, so dass die vergrößerten Bitmetriksequenzen identisch mit den Mutterfaltungs-Codesequenzen sind, welche zur Bitlöscheinrichtung des Übertragers geliefert werden, mit der Ausnahme, dass die Dummydaten die gelöschten Bits ersetzen.

Dieses Merkmal der Erfindung beinhaltet die Realisierung, dass, da jede Bitmetrik ein Einzelbit der Übertragungsdaten zeigt, die Bitmetriken gehandhabt werden können und dem Biteinfügungsprozess umgekehrt zu den Bitlöschprozessen unterworfen werden können, welche auf Einzelbitdaten im Übertrager angewandt werden. Die Bitmetriken sind jedoch nicht "harte" 1- oder 0-Werte für individuelle Bits. Bevorzugt zeigt jede Bitmetrik am günstigsten die Wahrscheinlichkeit, dass der Wert des Bits des Übertragungssymbols, der dem Empfangssignal entspricht, einen bestimmten Wert hatte. Die Bitmetriken sind reale numerische Werte ähnlich den realen Werten der individuellen Signalkomponenten, welche über die verschiedenen Stufen des QPSK-Empfängers ausgebreitet wurden und dem Viterbi-Decoder gezeigt werden, wie oben unter Bezug auf 13 erläutert wurde. Diese Realwerte können bei einem "weichen" Decodierverfahren verwendet werden, beispielsweise dem Viterbi-Decodieren, bei dem der Empfänger bezüglich des wahrscheinlichsten Werts jedes Bits in der Wiedergabeinformation auf Basis der Information entscheidet, welche in mehreren Bits enthalten ist, welche über den Übertragungskanal gesendet werden. Somit erlaubt die Vorrichtung gemäß diesem Merkmal der Erfindung, dass Daten, welche in einem punktierten Faltungscode codiert wurden, der als ein Fehlerkorrekturcode verwendet wird, durch ein Multikomponenten-, Multiwertsystem übertragen werden können und im Empfänger genau decodiert werden können.

Wie weiter unten erläutert wird, können mehrere verschiedene Verfahren verwendet werden, um die Bitmetriken zu bestimmen. Die Bitmetriken können individuell geliefert werden, wobei eine Bitmetrik pro Bit, welche durch das Empfangssignal bezeichnet wird oder sonst wie in Paaren einschließlich einer ersten Bitmetrik und einer zweiten Bitmetrik für jedes Bit des Empfangssignals berechnet wird. Bei diesem letzteren Verfahren zeigt die erste Bitmetrik gewünscht die Wahrscheinlichkeit, dass das Bit einen ersten Wert hat, während die zweite Bitmetrik für das gleiche Bit die Wahrscheinlichkeit zeigt, dass das Bit einen zweiten entgegengesetzten Wert hat.

Der Empfänger gemäß diesem Merkmal der vorliegenden Erfindung kann außerdem eine Symboldiffusions-Umkehreinrichtung aufweisen, um Symboldiffusionsverarbeitung durchzuführen. Bei einer Anordnung liefert die Symboldiffusions-Umkehreinrichtung eine abwechselnde Serie des Empfangssignals zur Bitmetrik-Berechnungseinrichtung. Somit kann die Symboldiffusions-Umkehreinrichtung eine Einrichtung aufweisen, um Komponenten bestimmter Empfangssignale in eine ankommende Sequenz von Empfangssignalen mit Komponenten anderer Empfangssignale in der ankommenden Sequenz gemäß einem vorher festgelegten Muster tauschen, um somit die abwechselnde Sequenz von Empfangssignalen zu liefern.

Gemäß einem weiteren Merkmal der Erfindung kann die Symboldiffusions-Umkehreinrichtung eingerichtet sein, bezüglich der Bitmetriksequenzen zu arbeiten, welche durch die Bitmetrik-Berechnungseinrichtung geliefert werden. Somit kann die Symboldiffusions-Umkehreinrichtung eingerichtet sein, Bitmetriken, welche von bestimmten Empfangssignalen hergeleitet werden, mit Bitmetriken auszutauschen, welche von anderen Empfangssignalen hergeleitet werden, gemäß einem vorher festgelegten Muster und somit die Bitmetriksequenzen, welche durch die Bitmetrik-Berechnungseinrichtung geliefert werden, zu modifizieren. Vorzugsweise geschieht diese Modifikation, bevor die eine oder mehrere Bitmetriksequenzen zur Biteinfügungseinrichtung geliefert werden.

Weitere Merkmale der vorliegenden Erfindung umfassen Verfahren zum Empfangen einer Reihe von Signalen wie oben in Verbindung mit der Vorrichtung erläutert wurde. Verfahren gemäß diesem Merkmal der Erfindung liefern Vorteile ähnlich denjenigen, die oben in Verbindung mit der Vorrichtung erläutert wurden.

Diese und weitere Merkmale und Vorteile der vorliegenden Erfindung werden schnell aus der nichteinschränkenden Beschreibung der bevorzugten Ausführungsformen deutlich, die unten mit Hilfe der beiliegenden Zeichnungen angegeben wird, in denen:

1 ein Blockdiagramm ist, welches den Aufbau eines Datenübertragers zeigt;

2 ein Blockdiagramm ist, welches den Aufbau eines Datenempfängers zeigt; der eine erste Ausführungsform der vorliegenden Erfindung zeigt;

3 ein Blockdiagramm ist, welches den Aufbau eines Beispiels der in 2 gezeigten Metrikberechnungsschaltung 102 zeigt;

4 ein Blockdiagramm ist, welches den Aufbau eines Beispiels der in 2 gezeigten Biteinfügungsschaltung 104 zeigt;

5 ein Blockdiagramm ist, welches den Aufbau eines Datenempfängers zeigt, der eine zweite Ausführungsform der vorliegenden Erfindung zeigt;

6 ein Blockdiagramm ist, welches den Aufbau eines Beispiels der in 5 gezeigten Metrikberechnungsschaltung 140 zeigt;

7 ein Blockdiagramm ist, welches den Aufbau eines Beispiels des in 5 gezeigten Viterbi-Decoders 37 zeigt;

8 ein Blockdiagramm ist, welches den Aufbau eines Datenempfängers zeigt, der eine dritte Ausführungsform der vorliegenden Erfindung zeigt;

9 ein Blockdiagramm ist, welches den Aufbau eines herkömmlichen Datenübertragers zeigt;

10 ein Blockdiagramm ist, welches den Aufbau eines Beispiels des Faltungscodierers, der in 9 gezeigt ist, zeigt;

11 ein Diagramm ist, um den Statusübergang des in 10 gezeigten Faltungscodierers zu erläutern;

12 ein Diagramm ist, welches eine Signalkonstellation von QPSK zeigt;

13 ein Blockdiagramm ist, welches den Aufbau eines herkömmlichen Datenempfängers zeigt;

14 ein Blockdiagramm ist, welches den Aufbau eines Beispiels des in 13 gezeigten Viterbi-Decoders zeigt;

15 ein Blockdiagramm ist, welches den Aufbau eines Beispiels der Zweigmetrik-Berechnungsschaltung, welche in 14 gezeigt ist, zeigt;

16 ein Blockdiagramm ist, welches den Aufbau eines Beispiels des in 14 gezeigten Pfadspeichers zeigt;

17 ein Blockdiagramm ist, welches den Aufbau eines Beispiels eines Datenübertragers unter Verwendung von 16-QAM zeigt;

18 ein Diagramm ist, welches eine 16-QAM-Signalkonstellation zeigt;

19 ein Diagramm ist, welches den Aufbau eines hypothetischen Datenempfängers zum Empfangen von Daten, welche über den in 17 gezeigten Übertrager übertragen werden, zeigt; und

10 ein Diagramm ist, um die Arbeitsweise des in 19 gezeigten Empfängers zu erläutern.

Obwohl ein in 1 gezeigter Datenübertrager ähnlich allgemein dem Übertrager von 17 ist, jedoch die Bitdiffusionsschaltungen von 1 ausgelassen sind, können Daten ohne Bitdiffusion übertragen werden. In 1 sind Abschnitte, welche denjenigen entsprechen, welche in 17 gezeigt sind, mit den gleichen Bezugszeichen bezeichnet. Somit wird die Beschreibung dieser Abschnitte nicht wiederholt.

Bei dem Übertrager von 1 werden Daten u, v, x und y, welche vom Seriell-Parallel-Umsetzer 4 ausgegeben werden, unmittelbar zur Signalpunkt-Zuteilungsschaltung 6 geliefert, ohne der Bitdiffusion unterzogen zu werden. In allen anderen Merkmalen ist der Betrieb der gleiche wie der, der oben beschrieben wurde.

2 zeigt einen Empfänger gemäß einer Ausführungsform der vorliegenden Erfindung. Dieser Empfänger ist eingerichtet, Daten, welche durch den in 1 gezeigten Übertrager übertragen werden, zu empfangen. In 2 sind Abschnitte, welche denjenigen des herkömmlichen Datenempfängers entsprechen, mit den gleichen Bezugszeichen bezeichnet. Diese Merkmale, die unten nicht erläutert werden, sind die gleichen wie die entsprechenden Merkmale des in 13 gezeigten Empfängers. Der Empfänger weist eine Antenne 31 und einen Demodualtor 32 auf, um Multikomponentensignale, welche I- und Q-Komponenten haben, von einem Übertragungspfad wieder zu entwickeln, und um die I- und Q-Komponentenwerte an eine Symboldiffusions-Umkehrschaltung 33 zu leiten. Die Symboldiffusions-Umkehrschaltung ist eingerichtet, Verarbeitung umgekehrt zu der in der Symboldiffusionsschaltung 7 des Übertragers durchzuführen (17). Wie oben erläutert tauscht dieser Umkehrprozesskomponenten bestimmter Symbole mit Komponenten anderer Symbole aus, wodurch die Empfangssignale in der Reihenfolge hergestellt werden, welche die Symbole vor der Verarbeitung in der Symboldiffusionsschaltung 7 hatten. Die Symboldiffusions-Umkehrschaltung gibt die umgeordneten I- und Q-Signalkomponenten I' und Q' an eine Bitmetrik-Berechnungsschaltung aus.

Vier Bitmetrikpaarsequenzen (u0, u1), (v0, v1), (x0, x1) und (y0, y1) werden von der Metrikberechnungsschaltung 102 ausgegeben und einem Parallel-Seriell-Umsetzer 103 zugeführt. Der Parallel-Seriell-Umsetzer 103 setzt die vier separaten Sequenzen in eine Sequenz von Bitmetrikpaaren (Pr0, Pr1) um. Eine Biteinfügungsschaltung 104 fügt Bits in die Sequenz ein, welche vom Parallel-Seriell-Umsetzer 103 ausgegeben werden, in einer Weise entgegengesetzt zu der der Bitlöschschaltung 3 des in 1 gezeigten Übertragers. Die Bitlöschschaltung bildet außerdem die Sequenz von Bitmetrikpaaren in zwei separate Sequenzen von Bitmetrikpaaren (X0, X1) und (Y0, Y1). Diese Sequenzen werden einem Viterbi-Decoder 105 zugeführt. Die Daten, welche durch Viterbi-Decodierung decodiert werden, werden als Wiedergabeinformation 38 ausgegeben.

Die Bitmetrik-Berechnungsschaltung 102 ist eingerichtet, Paare von Bitmetriken von den gelieferten I- und Q-Signalkomponenten I' und Q' in Bezug auf das erste bis vierte Bit zu berechnen, welches durch jedes Empfangssignal bezeichnet werden. Der Aufbau der Metrikberechnungsschaltung 102 ist in 3 gezeigt. I'- und Q'-Signale, welche von der Symboldiffusions-Umkehrschaltung 33 geliefert werden, werden n Wahrscheinlichkeitsberechnungsschaltungen 111-1 bis 111-n, wie in 3 gezeigt ist, zugeführt. In diesem Fall die Zahl n gleich 16. Das heißt, da die Signalpunkt-Zuteilungsverarbeitung im Übertrager gemäß dem 16-QAM-Symbolsatz durchgeführt wurde, zeigt jedes Empfangssignal eines der 16 möglichen Symbole im 16-QAM-Symbolsatz, oder die Signalkonstellation, welche in 18 gezeigt ist.

Die Wahrscheinlichkeitsberechnungsschaltung 111-1 berechnet die Wahrscheinlichkeit P(S0000∩R) der Übertragung des Symbols S0000 entsprechend 0000 im 16-QAM-System, welches in 18 gezeigt ist, und dem Empfang des Empfangssignals R. Die anderen Wahrscheinlichkeitsberechnungsschaltungen führen ebenfalls ähnliche Berechnungen durch. Das heißt, die Wahrscheinlichkeitsberechnungsschaltung 111-2 berechnet die Wahrscheinlichkeit P(S0001∩R) der Übertragung des Symbols S0001 entsprechend 0001 im 16-QAM-System und dem Empfang des Empfangssignals R. Die Wahrscheinlichkeitsberechnungsschaltung 111-3 berechnet die Wahrscheinlichkeit P(S0010∩R) der Übertragung des Symbols S0010 entsprechend 0010 im 16-QAM-System und dem Empfang des Empfangssignals R. Die Wahrscheinlichkeitsberechnungsschaltung 111-16 berechnet die Wahrscheinlichkeit P(S1111∩R) der Übertragung des Symbols S1111 entsprechend 1111 im 16-QAM-System und dem Empfang des Empfangssignals R.

Die Addierschaltung 112-1 empfängt Ausgangssignale von den Wahrscheinlichkeitsberechnungsschaltunen 111-i, um die Wahrscheinlichkeiten in Bezug auf die Symbole zu berechnen, welche jeweils 0 als erstes Bit haben, d.h., Symbole S0000, S0001, S0010, S0011, S0100, S0101, S0110 und S0111 und berechnet die Summe dieser Wahrscheinlichkeiten. Jede der Addierschaltungen 112-2 bis 112-4 empfängt Ausgangssignale von den Wahrscheinlichkeitsberechnungsschaltungen 111-1, um die Wahrscheinlichkeiten in Bezug auf die Symbole zu berechnen, welche jeweils 0 als zweites, drittes oder viertes Bit haben, und berechnet die Summe dieser Wahrscheinlichkeiten.

Die Addierschaltung 112-5 empfängt die Ausgangssignale von den Wahrscheinlichkeitsberechnungsschaltungen 111-i, um die Wahrscheinlichkeiten in Bezug auf die Symbole zu berechnen, welche jeweils 1 als erstes Bit haben, d.h., die Symbole S1111, S1110, S1101, S1100, S1011, S1010, S1001 und S1000, und berechnet die Summe dieser Wahrscheinlichkeiten. Jede der Addierschaltungen 112-6 bis 112-8 empfängt die Ausgangssignale von den Wahrscheinlichkeitsberechnungsschaltungen 111-i, um die Wahrscheinlichkeiten in Bezug auf die Symbole zu berechnen, die jeweils 1 als zweites, drittes oder viertes Bit haben, und berechnet die Summe dieser Wahrscheinlichkeiten.

Die Addierschaltung 113 empfängt die Ausgangssignale von den Wahrscheinlichkeitsberechnungsschaltungen 111-i, um die Wahrscheinlichkeiten in Bezug auf alle 16-QAM-Symbole zu berechnen, d.h., die Symbole S0000 bis S1111, und berechnet die Summe dieser Wahrscheinlichkeiten. Die Teilungsschaltungen 114-1 bis 114-8 teilen jeweils Ausgangssignale von den Addierschaltungen 112-1 bis 112-8 durch ein Ausgangssignal von der Addierschaltung 113.

Die Ausgangssignale von den Teilungsschaltungen 114-1 bis 114-4 werden zum Parallel-Seriell-Umsetzer 103 als u0, v0, x0 und x0 geliefert, während die Ausgangssignale von den Teilungsschaltungen 114-5 bis 114-8 als u1, v1, x1 und y1 geliefert werden.

Der Betrieb des Datenempfängers, der in 2 gezeigt ist, beginnt mit einem Signal, welches über die Antenne 31 empfangen wird und durch den Demodualtor 32 demoduliert wird, wodurch Daten in der Form von I- und Q-Komponenten der Empfangssignale bereitgestellt werden. Diese I- und Q-Symbolkomponenten unterliegen der Diffusionsumkehrverarbeitung durch den Betrieb der Symboldiffusions-Umkehrschaltung 33 in einer Weise entgegengesetzt zu dem der in 1 gezeigten Symboldiffusionsschaltung 7. Die Schaltung 33 ordnet die ankommende Sequenz der Empfangssignale um. Die umgeordnete Sequenz der Empfangssignalkomponenten I' und Q' wird erlangt.

Der Symboldiffusions-Umkehrbetrieb, wenn dieser unter Verwendung der gleichen N und Q wie die, welche in Bezug auf die Symboldiffusionsschaltung 7 verwendet wurden, zum Ausdruck kommt, ist der Ersatz eines Vektors, welcher durch Empfangssignale gebildet wird, vor der Diffusionsumkehrverarbeitung (S1, S2, ... Sn, ... SN-1) durch einen Vektor, welcher aus Signalen nach der Diffusionsumkehrverarbeitung (S'1, S'2, ... S'k, ... S'N-1) gebildet wird. In diesem Gleichungen ist Sn = S'k (n = G^k mod N).

Anschließend wird die Bitmetrikberechnung in der Metrikberechnungsschaltung 102 beschrieben. Die Bitmetriken, welche durch die Schaltung 102 berechnet werden, zeigen eine spätere Bedingungswahrscheinlichkeit, welche in der folgenden Gleichung vorgeschrieben wird, in Bezug auf jedes der Bits, welche ein vorher festgelegtes Empfangssignal bilden, wenn das Signal empfangen wird: P(bi = 0|R) = P(bi0 = 0∩R)/P(R)(3)

In dieser Gleichung zeigt P(bi = 0|R) die spätere Bedingungswahrscheinlichkeit, dass das Bit i (bi, das erste, zweite, dritte oder vierte Bit) des Übertragungssymbols gleich 0 ist, wenn das Signal R(Ir, Qr) (Ir = I', Qr = Q') empfangen wird, P(R) zeigt die Wahrscheinlichkeit des Signals R(Ir, Qr), welches gerade empfangen wird, und P(bi = 0∩R) zeigt die Übertragungswahrscheinlichkeit eines Symbols, bei dem das Bit i = 0 und das Empfangssignal R(Ir, Qr) empfangen wird.

Ähnlich kann die spätere Bedingungswahrscheinlichkeit, dass das Bit i eines Übertragungssymbols gleich 1 ist, wenn das Empfangssignal R(Ir, Qr) empfangen wird, durch die folgende Gleichung erlangt werden: P(bi = 1|R) = P(bi = 1∩R)/P(R)(4)

In dieser Gleichung zeigt P(bi = 1|R) die spätere Bedingungswahrscheinlichkeit, dass das Bit i eines Übertragungssymbols gleich 1 ist, wenn das Empfangssignal R(Ir, Qr) empfangen wird, P(R) zeigt die Wahrscheinlichkeit des Empfangssignals R(Ir, Qr), welches gerade empfangen wird, und P(bi = 1∩R) zeigt die spätere Wahrscheinlichkeit einer Übertragung eines Symbols, bei der das Bit i gleich 1 ist und das Empfangssignal R(Ir, Qr) empfangen wird.

Die spätere Bedingungswahrscheinlichkeit, dass das Bit i eines Übertragungssymbols gleich 1 ist, wenn das Empfangssignal R(Ir, Qr) empfangen wird, kann außerdem durch die folgende Gleichung erlangt werden: P(bi = 1|R) = 1 – P(bi = 0|R)(5)

Die Metrikberechnungsschaltung 102 berechnet Metriken für das erste und vierte Bit, welche 16-QAM-Symbole bilden, von der zugeführten I-Komponente I'- und Q-Komponente Q', und gibt aus:

u0, welches die Metrik P(b1 = 0|R) in Bezug auf den Fall zeigt, wo das erste Bit gleich 0 ist;

v0, welches die Metrik P(b2 = 0|R) in Bezug auf den Fall zeigt, wo das zweite Bit gleich 0 ist;

x0, welches die Metrik P(b3 = 0|R) in Bezug auf den Fall zeigt, wo das dritte Bit gleich 0 ist;

y0, welches die Metrik P(b4 = 0|R) in Bezug auf den Fall zeigt, wo das vierte Bit gleich 0 ist;

u1, welches die Metrik P(b1 = 0|R) in Bezug auf den Fall zeigt, wo das erste Bit gleich 1 ist;

v1, welches die Metrik P(b2 = 0|R) in Bezug auf den Fall zeigt, wo das zweite Bit gleich 1 ist;

x1, welches die Metrik P(b3 = 0|R) in Bezug auf den Fall zeigt, wo das dritte Bit gleich 1 ist;

y1, welches die Metrik P(b4 = 0|R) in Bezug auf den Fall zeigt, wo das vierte Bit gleich 1 ist.

Bei der Ausführungsform, welche 3 gezeigt ist, werden die Metriken gemäß den oben beschriebenen Gleichungen (3) und (4) berechnet. Das heißt, jede der Metriken für die Bits, deren Wert gleich 0 ist, wird wie folgt erlangt: P(bi = 0|R = P(bi = 0∩R)/P(R)(6) = ((1/16)&Sgr;P(Sj∩R))/((1/16)&Sgr;P(Sk∩R))(7) = (&Sgr;P(Sj∩R)/(&Sgr;P(Sk∩R)(8)

Jede der Metriken für die Bits, deren Wert gleich 1 ist, wird wie folgt erlangt: P(bi = 1|R) = (P(bi = 1∩R)/P(R)(9) = ((1/16)&Sgr;P(Sm∩R))/((1/16)&Sgr;P(Sk∩R))(10) = (&Sgr;P(Sm∩R)/(&Sgr;P(Sk∩R)(11)

In der ersteren Gleichung zeigt P(Sj∩R) die Wahrscheinlichkeit einer Übertragung des Symbols Sj und den Empfang des Empfangssignals R, und &Sgr;P(Sj∩R) zeigt die Summe der Wahrscheinlichkeiten P(Sj∩R) aller Symbole Sj, in denen das Bit i gleich 0 ist.

In der letzteren Gleichung zeigt P(Sm∩R) die Übertragungswahrscheinlichkeit des Symbols Sm und den Empfang des Empfangssignals R, und &Sgr;P(Sm∩R) zeigt die Summe der Wahrscheinlichkeiten P(Sm∩R) aller Symbole Sm, bei denen das Bit i gleich 1 ist.

Dagegen zeigt P(Sk∩R) die Übertragungswahrscheinlichkeit des Symbols Sk und den Empfang des Empfangssignals R, und &Sgr;P(Sk∩R) zeigt die Summe der Wahrscheinlichkeiten P(Sk∩R) aller Symbole Sk, welche im 16-QAM-System definiert sind.

In der Metrikberechnungsschaltung 102, welche in 3 gezeigt ist, berechnet die Wahrscheinlichkeitsberechnungsschaltung 111-1 P(S0000∩R), d.h., die Übertragungswahrscheinlichkeit des Symbols S0000, welche der 0000 in dem 16-QAM-System entspricht, und den Empfang des Empfangssignals R.

Die Wahrscheinlichkeitsberechnungsschaltung 111-2 berechnet P(S0001∩R), d.h., die Übertragungswahrscheinlichkeit des Symbols S0001, welche 0001 im 16-QAM-System entspricht, und den Empfang des Empfangssignals R.

Die Wahrscheinlichkeitsberechnungsschaltung 111-3 berechnet P(S0010∩R), d.h., die Übertragungswahrscheinlichkeit des Symbols S0010, welche 0010 im 16-QAM-System entspricht, und den Empfang des Empfangssignals R.

Die Wahrscheinlichkeiten werden in der gleichen Weise in Bezug auf die anderen 16-QAM-Symbole berechnet. Damit werden 16 Wahrscheinlichkeiten insgesamt als Berechnungsergebnisse erlangt.

Die Addierschaltung 112-1 berechnet den Zähler der Gleichung (8), d.h., die Summe der Wahrscheinlichkeiten in Bezug auf die Symbole, welche jeweils 0 als erstes Bit haben:

S0000, S0001. S0010, S0011

S0100, S0101, S0110, S0111

Jede der Addierschaltungen 112-2 bis 112-4 berechnet die Summe der Wahrscheinlichkeiten in Bezug auf die Symbole, welche jeweils 0 als zweites, drittes oder viertes Bit haben.

Die Teilerschaltungen 114-1 bis 114-4 sind Rechner, um die Ausgangssignale der Addierschaltungen 112-1 bis 112-4 durch das Ausgangssignal der Addierschaltung 113 zu teilen, d.h., um die Berechnung durchzuführen, welche durch die Gleichung (8) gezeigt ist.

Die Addierschaltung 113 ist eine Schaltung, um den Nenner der Gleichung (8) oder der Gleichung (11) zu berechnen, d.h., die Summe der Wahrscheinlichkeiten in Bezug auf alle 16-QAM-Symbole:

S0000, S0001, S0010, S0011,

S0100, S0101, S0110, S0111,

S1000, S1001, S1010, S1011,

S1100, S1101, S1110, S1111.

Die Ausgangssignale von den Teilerschaltungen 114-1 bis 114-4 werden als u0, v0, x0 und y0 zum Parallel-Seriell-Umsetzer 103 geliefert.

Die Addierschaltung 112-5 ist eine Schaltung, um den Zähler der Gleichung (11) zu berechnen, d.h., die Summe der Wahrscheinlichkeiten in Bezug auf die Symbole, welche jeweils 1 als erstes Bit haben:

S1111, S1110, S1101, S1100,

S1011., S1010, S1001, S1000.

Jede der Addierschaltungen 112-5 bis 112-8 berechnet die Summe der Wahrscheinlichkeiten in Bezug auf die Symbole, welche die 1 als zweites, drittes oder viertes Bit haben.

Die Teilerschaltungen 114-5 bis 114-8 sind Rechner, um die Ausgangssignale der Addierschaltungen 112-5 bis 112-8 durch das Ausgangssignal der Addierschaltung 113 zu teilen, d.h., die Berechnung durchzuführen, welche durch die Gleichung (11) gezeigt ist.

Die Ausgangssignale der Teilerschaltungen 114-5 bis 114-8 werden als u1, v1, x1 und y1 zum Parallel-Seriell-Umsetzer 103 geliefert.

Somit liefert die Bitmetrik-Berechnungsschaltung 102 Sequenzen von Bitmetriken u0, v0, x0, y0 und u1, v1, x1, y1. Diese Sequenzen umfassen eine erste Bitmetrik für jedes Bit, welches die Wahrscheinlichkeit zeigt, dass ein Bitwert von 0 gesendet wurde, und eine zweite Bitmetrik für jedes Bit, welches die Wahrscheinlichkeit zeigt dass ein Bitwert von 1 gesendet wurde. Somit bilden die ersten und zweiten Bitmetriken u0, u1, welche von einem Empfangssignal hergeleitet werden, ein Paar von Bitmetriken für das erste Bit, welches durch dieses Empfangssignal bezeichnet wird; Bitmetriken v0, v1 bilden ein Paar von Bitmetriken für das zweite Bit, welches durch das Empfangssignal bezeichnet wurde, während die verbleibenden Bitmetriken x0, x1 und y0, y1 ähnliche Paare von Bitmetriken für das dritte und vierte Bit bilden, welche durch das Empfangssignal bezeichnet werden. Die Sequenzen der Bitmetrikpaare werden durch den Betrieb des nachfolgenden Parallel-Seriell-Umsetzers 103 in einer Weise entgegengesetzt zu der des Seriell-Parallel-Umsetzers 4, der in 1 gezeigt ist, verarbeitet. Der Parallel-Seriell-Umsetzer 103 setzt die Sequenzen der Bitmetrik-Paarsequenzen in eine Sequenz von Bitmetrikpaaren (Pr0, Pr1) um.

Die Biteinfügungsschaltung 104 führt den Betrieb in einer Weise entgegengesetzt zu dem der Bitlöschschaltung 3 durch, welche in 1 und 17 gezeigt ist. Das heißt, das Löschverzeichnis, das oben gezeigt ist,

X: 10

Y: 11

wird dazu verwendet, einen beliebigen Dummydatenposten ((0, 0) in diesem Fall) in die Sequenz von Bitmetrikpaaren einzufügen, welche als (Pr0, Pr1) zugeführt werden, in der Reihenfolge von (u10, u11), (v10, v11), (x10, x11), (y10, y11), (u20, u21), (v20, v21), (x20, x21), (y20, y21) ... Dummydatenposten werden periodisch an den Positionen unmittelbar vor jedem dritten Datenposten in der Datensequenz eingefügt, so dass

(u10, u11), (0, 0), (y10, y11), (0, 0), (x20, x21), usw. ... als Daten X (X0, X1) in dieser Reihenfolge ausgegeben werden, und

(v10, v11), (x10, x11), (u20, u21), (v20, v21), (y20, y21), usw. ... als Daten Y (Y0, Y1) in dieser Reihenfolge ausgegeben werden. Außerdem wird ein Flag, welches die Position der Einfügung jedes Dummydatenpostens zeigt, zum Viterbi-Decoder 105 geliefert.

Der Viterbi-Decoder 105 führt die Viterbi-Decodierung gemäß den Zustandsübergängen des Faltungscodierers 2 durch, um reproduzierte Information 38 zu erlangen. 4 zeigt den Aufbau eines Beispiels des Viterbi-Decoders 105. Metriken X0, X1, Y0 und Y1, welche von der Biteinfügungsschaltung 104 ausgegeben werden, welche in 2 gezeigt ist, werden zu Eingangsanschlüssen 62-1 bis 62-4 entsprechend geliefert. X- und Y-Dummyflags, welche von der Biteinfügungsschaltung 104 geliefert werden, werden den Eingangsanschlüssen 62-5 bzw. 62-6 zugeführt. Wenn die Auswahlorgane 120-1 und 120-2 mit einem X-Dummyflag über den Eingangsanschluss 62-5 beliefert werden, wählen sie den Wert 1 aus und geben diesen aus, welcher von einer Generatorschaltung 123-1 ausgegeben wird. Wenn die Auswahlorgane 120-1 und 120-2 nicht mit einem X-Dummyflag beliefert werden, wählen sie entsprechend Metriken X0 und X1 aus, welche über die Eingangsanschlüsse 62-1 und 62-2 zugeführt werden und geben diese Metriken als Metriken X0' und X1' aus.

Die Auswahlorgane 120-3 und 120-4 sind in der gleichen Weise wie die Auswahlorgane 120-1 und 120-2 angeordnet. Wenn die Auswahlorgane 120-3 und 120-4 mit einem Y-Dummyflag beliefert werden, wählen sie den Wert 1 aus und geben diesen aus, welcher von einer Generatorschaltung 123-2 ausgegeben wird. Wenn die Auswahlorgane 120-3 und 120-4 nicht mit einem Y-Dummyflag beliefert werden, wählen sie entsprechend Metriken Y0 und Y1 aus, welche über die Eingangsanschlüsse 62-3 und 62-4 zugeführt werden und geben diese Metriken als Metriken Y0' und Y1' aus.

Bei der vorliegenden Ausführungsform wird das Y-Dummyflag niemals gesetzt. Daher gilt: Y0' = Y0, und Y1' = Y1.

Die Multiplizierschaltung 121-1 ist eingerichtet, das Produkt der Metrik X0', welches vom Auswahlorgan 120-1 ausgegeben wird, und der Metrik Y0', welches vom Auswahlorgan 120-3 ausgegeben wird, zu berechnen und um das Produkt als Zweigmetrik BM00 auszugeben. Die Multiplizierschaltung 121-2 ist eingerichtet, das Produkt der Metrik X0' zu berechnen, welches vom Auswahlorgan 120-1 ausgegeben wird, und der Metrik Y1', welches vom Auswahlorgan 120-4 ausgegeben wird, und um das Produkt als Zweigmetrik BM01 auszugeben. Die Multiplizierschaltung 121-3 ist eingerichtet, das Produkt der Metrik X1' zu berechnen, welches vom Auswahlorgan 120-2 ausgegeben wird, und der Metrik Y0', welches vom Auswahlorgan 120-3 ausgegeben wird, und um das Produkt als Zweigmetrik BM10 auszugeben. Der Multiplizierer 121-4 ist eingerichtet, das Produkt der Metrik X1', welches vom Auswahlorgan 120-2 ausgegeben wird, und der Metrik Y1' welches vom Auswahlorgan 120-4 ausgegeben wird, zu berechnen, und um das Produkt als Zweigmetrik BM11 auszugeben.

Das Ausgangssignal BM00 der Multiplizierschaltung 121-1 und das Ausgangssignal BM11 der Multiplizierschaltung 121-4 werden einer Akkumuliervergleichs-Auswahlschaltung (ACS) 122-1 zugeführt. Zusätzlich werden das Ausgangssignal BM01 der Multiplizierschaltung 121-2 und das Ausgangssignal BM10 der Multiplizierschaltung 121-3 der ACS-Schaltung 122-2 zugeführt; das Ausgangssignal BM00 der Multiplizierschaltung 121-1 und das Ausgangssignal BM11 der Multiplizierschaltung 121-4 werden der ACS-Schaltung 122-3 zugeführt; und das Ausgangssignal BM01 der Multiplizierschaltung 121-2 und das Ausgangssignal BM10 der Multiplizierschaltung 121-3 werden der ACS-Schaltung 122-4 zugeführt.

Ein Ausgangssignal (Statusmetrik) SM00 von dem Statusmetrikspeicher 66-1 und ein Ausgangssignal (Statusmetrik) SM01 vom Statusmetrikspeicher 66-2 werden ebenfalls zur ACS-Schaltung 122-1 geliefert. Ein Ausgangssignal (Statusmetrik) SM10 von einem Statusmetrikspeicher 66-3 und ein Ausgangssignal (Statusmetrik) SM11 von einem Statusmetrikspeicher 66-4 werden ebenfalls zu einer ACS-Schaltung 122-2 geliefert. Außerdem werden das Ausgangssignal (Statusmetrik) SM00 vom Statusmetrikspeicher 66-1 und das Ausgangssignal (Statusmetrik) SM01 vom Statusmetrikspeicher 66-2 zur ACS-Schaltung 122-3 geliefert, während das Ausgangssignal (Statusmetrik) SM10 vom Statusmetrikspeicher 66-3 und das Ausgangssignal (Statusmetrik) SM11 vom Statusmetrikspeicher 66-4 zur ACS-Schaltung 122-4 geliefert werden. In anderer Hinsicht ist der Aufbau des Viterbi-Decoders der gleiche wie der, der in 14 gezeigt ist.

Anschließend wird die Arbeitsweise des Viterbi-Decoders 105 beschrieben. Die Multiplizierschaltung 121-1 berechnet das Produkt der Metrik X0 für den Wert 0 für eines der Bits, welche die I-Komponentenmetrik bilden, und der Metrik Y0 für den Wert 0 für eines der Bits, welche die Q-Komponente bilden (die Wahrscheinlichkeit, dass der Wert des ersten Bits, welcher die I-Komponente bildet, gleich 0 ist, während der Wert des zweiten Bits, welches die Q-Komponente bildet, gleich 0 ist) und gibt das Produkt als Zweigmetrik BM00 aus. Diese Zweigmetrik BM00 entspricht dem Codeausgangssignal 00 des Faltungscodierers 2.

In ähnlicher Weise berechnet die Multiplizierschaltung 121-2 das Produkt der Metrik X0 für den Wert 0 von einem der Bits, welche die I-Komponente bilden, und der Metrik Y für den Wert 1 von einem der Bits, welche die Q-Komponente bilden (die Wahrscheinlichkeit, dass der Wert des ersten Bits, welches die I-Komponente bildet, gleich 0 ist, während der Wert des zweiten Bits, welche die Q-Komponente bildet, gleich 1 ist), und gibt das Produkt als Zweigmetrik BM01 aus. Diese Zweigmetrik BM01 entspricht dem Codeausgangssignal 01 des Faltungscodierers 2.

Die Multiplizierschaltung 121-3 berechnet das Produkt der Metrik X1 für den Wert 1 von einem der Bits, welche die I-Komponente bilden, und der Metrik Y0 für den Wert 0 von einem der Bits, welche die Q-Komponente bilden (die Wahrscheinlichkeit, dass der Wert des ersten Bits, welches die I-Komponente bildet, gleich 1 ist, während der Wert des zweiten Bits, welches die Q-Komponente bildet, gleich 0 ist) und gibt das Produkt als Zweigmetrik BM10 aus. Diese Zweigmetrik BM10 entspricht dem Codeausgangssignal 10 des Faltungscodierers 2. Die Multiplizierschaltung 121-4 berechnet das Produkt der Metrik X1 für den Wert 1 von einem der Bits, welche die I-Komponente bilden, und der Metrik Y1 für den Wert 1 von einem der Bits, welche die Q-Komponente bilden (die Wahrscheinlichkeit, dass der Wert des ersten Bits, welches die I-Komponente bildet, gleich 1 ist, während der Wert des zweiten Bits, welches die Q-Komponente bildet, gleich 1 ist), und gibt das Produkt als Zweigmetrik BM11 aus. Diese Zweigmetrik BM11 entspricht dem Codeausgangssignal 11 des Faltungscodierers 2.

Die ACS-Schaltung 122-1 führt die folgenden beiden Berechnungen gemäß dem Statusübergang (11) des Faltungscodierers 2 durch. SM00 × BM00(12) SM01 × BM11(13)

In diesen Gleichungen zeigt SM00 den Wert des Statusmetrikspeichers 66-1 eine Zeiteinheit vor dem Übergang, SM01 zeigt den Wert des Statusmetrikspeichers 66-1 eine Zeiteinheit vor dem Übergang, BM00 zeigt das Berechnungsergebnis durch die Multiplizierschaltung 121-1, und BM11 zeigt das Berechnungsergebnis durch die Multiplizierschaltung 121-4.

Die ACS-Schaltung 122-1 wählt das Berechnungsergebnis mit einer höheren Wahrscheinlichkeit aus, d.h., das größere der Ergebnisse der Berechnungen, welches durch die Gleichungen (12) und (13) gezeigt wird, gibt die entsprechende Auswahlinformation SEL00 an den nachfolgenden Pfadspeicher 65 aus und liefert das größere der Berechnungsergebnisse (12) und (13) zum nachfolgenden Statusmetrikspeicher 66-1. Der Statusmetrikspeicher 66-1 speichert dieses Berechnungsergebnis. Wenn das Berechnungsergebnis (12) größer ist, wird SEL00 = 0 gesetzt. Wenn das Berechnungsergebnis (13) größer ist, wird SEL00 = 1 gesetzt. Im ersteren Fall speichert der Statusmetrikspeicher 66-1 SM00 BM00 als neue Statusmetrik SM00. Im letzteren Fall speichert der Statusmetrikspeicher 66-1 SM01 BM11 als neue Statusmetrik SM00.

In 11 gibt es zwei Pfade in Bezug auf den Status 00. Der erste Pfad ist durch das Eingangssignal 0 im Status 00 und durch das Ausgangssignal 00 definiert. Eine entsprechende Vergleichsberechnung wird durch die Gleichung (12) gezeigt. Der zweite Pfad ist durch das Eingangssignal 0 im Status 01 und durch das Ausgangssignal 11 definiert. Eine entsprechende Vergleichsberechnung wird durch die Gleichung (13) gezeigt. Das größere der beiden Berechnungsergebnisse wird als neue Statusmetrik SM00 zum Statusmetrikspeicher 66-1 geliefert.

Jede der ACS-Schaltungen 122-2 bis 122-4 führt ebenfalls den gleichen Betrieb durch. Jeder der Statusmetrikspeicher 66-1 bis 66-4 wird auf 0 in einem Anfangszustand des Betriebs des Systems zurückgesetzt. Das Zurücksetzen wird durch eine Steuerung (nicht gezeigt) über den Anschluss 61 durchgeführt.

Der Pfadspeicher 65 wählt, speichert und überträgt die decodierten Daten gemäß dem Statusübergang, der in 11 gezeigt ist, unter Verwendung der Auswahlinformation SEL00 bis SEL11, welche von den ACS-Schaltungen 122-1 bis 122-4 geliefert wird. Der Pfadspeicher 65 hat den gleichen Aufbau und arbeitet in der gleichen Weise wie der Pfadspeicher, der in 16 gezeigt ist.

Verschiedene Berechnungsmethoden sind bei den Wahrscheinlichkeitsberechnungsschaltungen 111-1 bis 111-16, die in 3 gezeigt sind, gemäß den Übertragungskanälen verfügbar. Beispielsweise kann, wenn man einen Gauss-Kanal annimmt, die Wahrscheinlichkeit in der Wahrscheinlichkeitsberechnungsschaltung 111-1 wie folgt berechnet werden: P(S0000∩R) = 1/(2&pgr;)1/2&sgr;)exp(–(||S0000 – R||2)/2&sgr;2))(14)

Die in dieser Gleichung zeigt &sgr; die Quadratwurzel von 1/2 der Rauschleistung im Übertragungskanal. Somit zeigt 2&sgr;2 die Rauschleistung im Übertragungskanal ||S0000 – R|| ist der Euklidsche Abstand zwischen dem Symbol S0000 und dem Empfangssignal R.

Der Wert &sgr;, der durch den Empfänger verwendet wird, kann vorhanden sein, wenn der Empfänger aufgebaut wird, auf Basis erwarteter Kenndaten des Übertragungskanals. Alternativ kann der Empfänger so eingerichtet sein, sich selbst auf die Zustände des Übertragungskanals zu adaptieren, indem verschiedene Werte von &sgr; ausprobiert werden und auf Fehler in den resultierenden Daten getestet werden.

Da jedoch der Wert &sgr; unter den mehreren Berechnungen allgemein ist, beeinflusst &sgr; nicht das Berechnungsergebnis. Daher kann &sgr; im Empfänger weggelassen werden.

Die Wahrscheinlichkeiten können in der gleichen Weise in den Wahrscheinlichkeitsberechnungsschaltungen 111-2 bis 111-16 berechnet werden.

5 zeigt einen Datenempfänger nach einer zweiten Ausführungsform der vorliegenden Erfindung. Bei dieser Ausführungsform ist eine Bitmetrik-Berechnungsschaltung 140 eingerichtet, Metriken (u, v, x, y) für den Wert 0 des ersten bis vierten Bits zu berechnen, welche durch jedes Empfangssignal bezeichnet werden. Diese Bitmetriken entsprechen der ersten Bitmetrik u0, x0 und y0, welche für jedes Bit in der oben erläuterten Ausführungsform berechnet wurden. Ein Parallel-Seriell-Umsetzer 141 setzt die Metrikdatensequenzen von der Metrikberechnungsschaltung 140 in eine Datensequenz um. Der Aufbau dieser Ausführungsform ist der gleiche wie der, der in 2 gezeigt ist, bezüglich aller weiteren Merkmale. Ein Signal, welches durch die Antenne 31 empfangen wird, wird durch den Modulator 32 demoduliert, wodurch I- und Q-Komponenten extrahiert werden. Die Symboldiffusions-Umkehrschaltung 33 erlangt Daten I' und Q' durch Diffusionsumkehrverarbeitung in einer Weise eines Betriebs entgegengesetzt zu der der Symboldiffusionsschaltung 7, welche in 1 und 17 gezeigt ist. Die Metrikberechnungsschaltung 140 ist eingerichtet, die gleiche Bit-0-Metrikberechnung wie die Metrikberechnungsschaltung 102, welche in 2 gezeigt ist, durchzuführen. Der Aufbau der Metrikberechnungsschaltung 140 ist, wie in 6 gezeigt ist, so, dass die Addierschaltungen 112-5 bis 112-8 und die Teilerschaltungen 114-5 bis 114-8, welche in 3 gezeigt sind, entfernt sind.

Metrikdaten (u, v, x, y), welche von der Metrikberechnungsschaltung 140 ausgegeben werden, werden dem Parallel-Seriell-Umsetzer 141 zugeführt, der die zugeführten Daten in eine serielle Datensequenz in einer Weise eines Betriebs entgegengesetzt zu dem des Seriell-Parallel-Umsetzers 4 umsetzt, der in 1 und 17 gezeigt ist, und gibt die umgesetzten Daten an die Biteinfügungsschaltung 36 aus. Die Biteinfügungsschaltung 36 führt den Betrieb in einer Weise invers entgegengesetzt zu dem der Bitlöschschaltung 3 des Übertragers durch, der in 1 und 17 gezeigt ist. Das heißt, dass das oben beschriebene Löschverzeichnis

X: 10

Y: 11

verwendet wird, einen beliebigen Dummydatenposten (0 bei dieser Ausführungsform) in die Datensequenz einzufügen, und die Datensequenz in zwei Sequenzen X und Y aufzuspalten. Die Daten, welche der Einfügungsschaltung 36 zugeführt werden, werden durch den Parallel-Seriell-Umsetzer in der Reihenfolge u1, v1, x1, y1, u2, v2, x2, y2 bereitgestellt.

Dummydatenposten werden periodisch an den Positionen unmittelbar vor jedem dritten Bit in die Datensequenz eingefügt, so dass

u1, 0, y1, 0, x2, ...

als Daten X in dieser Reihenfolge ausgegeben werden, und

v1, x1, u2, v2, y2, ...

ebenfalls als Daten Y in dieser Reihenfolge ausgegeben werden.

Die Datensequenzen X und Y werden von der Biteinfügungsschaltung 36 an einen Viterbi-Decoder 37 ausgegeben. Außerdem liefert die Biteinfügungsschaltung ein Flag, welches die Einfügungsposition jedes Dummydatenpostens dem Viterbi-Decoder 37 zeigt.

7 zeigt den Aufbau eines Beispiels des Viterbi-Decoders 37, der in 5 gezeigt ist. In diesem Beispiel werden Daten X (Bitmetriken) einem Eingangsanschluss 62-1 zugeführt, während Daten Y (Bitmetriken) einem Eingangsanschluss 62-2 zugeführt werden. X- und Y-Dummyflags werden den Eingangsanschlüssen 62-3 bzw. 62-4 zugeführt.

Die Invertierschaltungen 131-1 und 131-2 sind eingerichtet, die Datenbits X bzw. Y zu invertieren und um die invertierten Bits auszugeben. Alle Generatorschaltungen 123-1 und 123-2 sind eingerichtet, einen Datenposten zu erzeugen und auszugeben. Die Auswahlorgane 120-1 und 120-2 sind eingerichtet, die Eingangssignale gemäß einem X-Dummyflag zu ändern und um die Eingangsdaten auszugeben: die Selektoren 120-3 und 120-4 sind eingerichtet, Eingangssignale entsprechend einem Y-Dummyflag zu ändern und um die Eingangsdaten auszugeben. Der Aufbau dieses Viterbi-Decoders ist der gleiche wie der, der in 4 gezeigt ist, hinsichtlich aller anderen Merkmale.

Die Daten X, welche zum Eingangsanschluss 62-1 geliefert werden, werden zum Auswahlorgan 120-1 und zur Invertierschaltung 131-1 geliefert. Die Invertierschaltung 131-1 invertiert die Daten X und liefert die invertierten Daten zum Auswahlorgan 120-2. Wenn das Auswahlorgan 120-1 mit einem X-Dummyflag über den Eingangsanschluss 62-3 beliefert wird, wählt dies den Wert 1 aus, welcher von der Generatorschaltung 123-1 ausgegeben wird, und gibt diesen Wert als Daten X0 aus. Wenn das Auswahlorgan 120-1 nicht mit einem X-Dummyflag beliefert wird, wählt es die Daten X vom Eingangsanschluss 62-1 aus und gibt die Daten X als Daten X0 aus. Wenn das Auswahlorgan 120-2 mit einem X-Dummyflag beliefert wird, wählt es den Wert 1 aus, der von der Generatorschaltung 123-1 ausgegeben wird. Wenn das Auswahlorgan 120-2 nicht mit einem X-Dummyflag beliefert wird, wählt es die Daten X aus, welche alle die Bits haben, welche durch die Invertierschaltung 131-1 invertiert wurden. Das Auswahlorgan 120-2 gibt die ausgewählten Daten als Daten X1 aus.

Die Daten Y, welche zum Eingangsanschluss 62-2 geliefert werden, werden zum Auswahlorgan 120-3 und zur Invertierschaltung 131-2 geliefert. Die Invertierschaltung 131-2 invertiert die Daten Y und liefert die invertierten Daten zum Auswahlorgan 120-4. Wenn das Auswahlorgan 120-3 mit einem Y-Dummyflag über den Eingangsanschluss 62-4 beliefert wird, wählt es den Wert 1 aus, der von der Generatorschaltung 132-2 ausgegeben wird, und gibt diesen Wert als Daten Y0 aus. Wenn das Auswahlorgan 120-3 nicht mit einem Y-Dummyflag beliefert wird, wählt es die Daten Y vom Eingangsanschluss 62-2 aus und gibt die Daten Y als Daten Y0 aus. Wenn Das Auswahlorgan 120-4 mit einem Y-Dummyflag beliefert wird, wählt es den Wert 1 aus, welcher von der Generatorschaltung 123-2 ausgegeben wird. Wenn das Auswahlorgan 120-4 nicht mit einem Y-Dummyflag beliefert wird, wählt es die Daten Y aus, welche insgesamt die Bits haben, welche durch die Invertierschaltung 131-2 invertiert wurden. Das Auswahlorgan 120-4 gibt die ausgewählten Daten als Daten Y1 aus.

Die Multiplizierschaltung 121-1 multipliziert die Daten X0, welche vom Auswahlorgan 120-1 ausgegeben werden, und die Daten Y0, welche vom Auswahlorgan 120-3 ausgegeben werden, miteinander, und gibt das Ergebnis dieser Multiplikation als Zweigmetrik BM00 aus. Das heißt, die Multiplizierschaltung 121-1 berechnet das Produkt der Metrikdaten X0, welche der Metrik für den Wert 0 von einem der Bits entsprechen, welche die I-Komponente bilden, und der Metrikdaten Y0, welche der Metrik entsprechen, für den Wert 0 von einem der Bits, welche die Q-Komponente bilden (die Wahrscheinlichkeit, dass der Wert des ersten Bits, welches die I-Komponente bildet, gleich 0 ist, während der Wert des zweiten Bits, welche die Q-Komponente bildet, gleich 0 ist), und gibt das Produkt als Zweigmetrik BM00 aus. Diese Zweigmetrik BM00 entspricht dem Codeausgangssignal 00 des Faltungscodierers 2.

In ähnlicher Weise multipliziert die Multiplizierschaltung 121-2 das Datenausgangssignal X0, welches vom Auswahlorgan 120-1 ausgegeben wird, und die Daten Y1, welche vom Auswahlorgan 120-4 ausgegeben werden, miteinander und gibt das Ergebnis dieser Multiplikation als Zweigmetrik BM01 aus. Das heißt, die Multiplizierschaltung 121-2 berechnet das Produkt der Metrikdaten X0 für den Wert 0 von einem der Bits, welche die I-Komponente bilden, und der Metrikdaten Y0 für den Wert 1 von einem der Bits, welche die Q-Komponente bilden (die Wahrscheinlichkeit, dass der Wert des ersten Bits, welches die I-Komponente bildet, gleich 0 ist, während der Wert des zweiten Bits, welche die Q-Komponente bildet, gleich 1 ist), und gibt das Produkt als Zweigmetrik BM01 aus. Diese Zweigmetrik BM01 entspricht dem Codeausgangssignal 01 das Faltungscodierers 2.

Die Multiplizierschaltung 121-3 multipliziert die Daten X1, welche vom Auswahlorgan 120-2 ausgegeben werden, und die Daten Y0, welche vom Auswahlorgan 120-3 ausgegeben werden, miteinander und gibt das Ergebnis dieser Multiplikation als Zweigmetrik BM10 aus. Das heißt, die Multiplizierschaltung 121-3 berechnet das Produkt der Metrikdaten X1 für den Wert 1 von einem der Bits, welche die I-Komponente bilden, und der Metrikdaten Y für den Wert 0 von einem der Bits, welche die Q-Komponente bilden (die Wahrscheinlichkeit, dass der Wert des ersten Bits, das die I-Komponente bildet, gleich 1 ist, während der Wert des zweiten Bits, welches die Q-Komponente bildet, gleich 0 ist), und gibt das Produkt als Zweigmetrik BM10 aus. Diese Zweigmetrik BM10 entspricht dem Codeausgangssignal 10 des Faltungscodierers 2.

Die Multiplizierschaltung 121-4 multipliziert die Daten X1, welche vom Auswahlorgan 120-2 ausgegeben werden, und die Daten Y1, welche vom Auswahlorgan 120-4 ausgegeben werden, miteinander und gibt das Ergebnis dieser Multiplikation als Zweigmetrik BM11 aus. Das heißt, die Multiplizierschaltung 121-4 berechnet das Produkt der Metrikdaten X1 für den Wert 1 von einem der Bits, welche die I-Komponente bilden und der Metrikdaten Y1 für den Wert 1 von einem der Bits, welche die Q-Komponente bilden (die Wahrscheinlichkeit, dass der Wert des ersten Bits, welches die I-Komponente bildet, gleich 1 ist, während der Wert des zweiten Bits, welches die Q-Komponente bildet, gleich 1 ist), und gibt das Produkt als Zweigmetrik BM11 aus. Diese Zweigmetrik BM11 entspricht dem Codeausgangssignal 11 des Faltungscodierers 2. Der nachfolgende Betrieb dieses Abschnitts ist der gleiche wie der des Abschnitts, der in 4 gezeigt ist.

Wie oben beschrieben wird die Viterbi-Decodierung durch den Viterbi-Decoder 7 ausgeführt, um die Wiedergabedaten 38 zu erlangen. Mit Ausnahme der oben erläuterten Unterschiede ist die Arbeitsweise der Ausführungsform, welche in 5 gezeigt ist, die gleiche wie die, welche in 2 gezeigt ist.

8 zeigt einen Datenempfänger, der eine dritte Ausführungsform der vorliegenden Erfindung zeigt. Bei dieser Ausführungsform ist die Symboldiffusions-Umkehrschaltung 160 nach der Metrikberechnungsschaltung 140 angeordnet. Das heißt, nach der Demodulation durch den Demodulator 32 werden Metriken für die Bits, welche alle Symbole bilden, durch die Metrikberechnungsschaltung 140 erlangt, und die Metriken werden dann durch die Symboldiffusions-Umkehrschaltung 160 verarbeitet. Der Aufbau dieser Ausführungsform ist der gleiche wie der, der in 5 gezeigt ist, bezüglich aller anderen Merkmale.

Ein Signal, welches durch die Antenne 31 empfangen wird, wird durch den Demodulator 32 demoduliert, wodurch I- und Q-Komponenten der Symbole extrahiert werden. Die Metrikberechnungsschaltung 140 berechnet die Metriken für die Bits, welche die Symbole bilden, auf Basis der Daten der I- und Q-Komponenten, welche vom Demodualtor 32 ausgegeben werden. Die Metrikdaten (u', v', x', y'), welche von der Metrikberechnungsschaltung 140 ausgegeben werden, sind:

u': eine Metrik für den Wert 0 des ersten Bits, welches durch jedes Empfangssignal bezeichnet wird;

v': eine Metrik für den Wert 0 des zweiten Bits, welches durch jedes Empfangssignal bezeichnet wird;

x': eine Metrik für den Wert 0 des dritten Bits, welches durch jedes Empfangssignal bezeichnet wird; und

y': eine Metrik für den Wert 0 des vierten Bits, welches durch jedes Empfangssignal bezeichnet wird.

Die Metrikdaten (u', v', x', y') werden dann der Symboldiffusions-Umkehrschaltung 160 zugeführt. Die Symboldiffusions-Umkehrschaltung 160 verarbeitet die zugeführten Daten durch einen Betrieb in einer Weise entgegengesetzt zu dem der Symboldiffusionsschaltung 7, welche in 1 und 17 gezeigt ist. Wenn der Diffusionsumkehrbetrieb unter Verwendung des gleichen N und G wie die, welche in Bezug auf die Diffusionsschaltung verwendet werden, ist der Diffusionsumkehrbetrieb, der der oben beschriebenen Diffusionsschaltung entspricht, der Ersatz eines Vektors, der aus einer Gruppe der Metrikdaten Si gebildet wird, vor der Diffusionsumkehrverarbeitung (S1, S2, ... Sn, ... SN-1) mit einem Vektor, der aus der Gruppe der Metrikdaten S'i nach der Diffusionsumkehrverarbeitung gebildet wird (S'1, S'2, ... S'k, ... SN-1). In diesen Gleichungen gilt: Sn = S'k (n = G^k mod N).

Anders ausgedrückt tauscht die Symboldiffusions-Umkehrschaltung Bitmetriken, welche von bestimmten Empfangssignalen in der Sequenz von Empfangssignalen hergeleitet werden, mit Bitmetriken aus, welche von anderen Empfangssignalen in der Sequenz hergeleitet werden.

Die Daten, welche von der Symboldiffusions-Umkehrschaltung 160 ausgegeben werden, werden einem Parallel-Seriell-Umsetzer 141 zugeführt, um diese der gleichen Biteinfügung und der Viterbi-Decodierverarbeitung wie die, die oben beschrieben wurde, zu unterziehen. Der Betrieb dieser Ausführungsform der vorliegenden Erfindung ist die gleiche wie der der Ausführungsform, die in 5 gezeigt ist, bezüglich aller weiteren Merkmale.

In der in 8 gezeigten Ausführungsform wird die Metrik für jedes Bit, welches Symbole bildet, lediglich in Bezug auf den Wert 0 des Bits berechnet. Die Bitmetrik für jedes Bit kann jedoch als ein Paar berechnet werden, d.h., als eine erste Bitmetrik in Bezug auf jeden Wert 0 und eine zweite 1.

Bei den oben beschriebenen Ausführungsformen wird die in 7 gezeigte Anordnung, bei der Invertierungsschaltungen 131-1 und 131-2 und Multiplizierschaltungen 121-1 bis 121-4 verwendet werden, als Viterbi-Decoder 37 mit zwei Eingängen verwendet. Die in 1 gezeigte Anordnung, bei der die Zweigmetrik-Berechnungsschaltungen 63-1 bis 63-4 verwendet werden, können alternativ verwendet werden. In diesem Fall des Viterbi-Decoders 105 mit vier Eingängen, der in 4 gezeigt ist, können Multiplizierschaltungen 121-1 bis 121-4 durch Zweigmetrikschaltungen 63-1 bis 63-4, die in 14 gezeigt sind, ersetzt werden.

Bei den oben beschriebenen Ausführungsformen werden die Daten, welche gemäß einem 16-QAM-Modulationsverfahren moduliert werden, demoduliert und decodiert. Die vorliegende Erfindung ist jedoch auch nützlich bei anderen Multiwert-Multikomponenten-Modulationssystemen, beispielsweise 64-QAM oder 256-QAM, bei denen jedes Symbol mehr als zwei Bits bezeichnet. Bei den 16-QAM-, 64-QAM- und 256-QAM-Systemen bezeichnen alle I- und Q-Komponenten zwei oder mehrere Bits. Die vorliegende Erfindung kann auch bei der 8-PSK-Modulation und noch weiteren Multiwert-, Multikomponenten-Modulationssystemen angewandt werden. Bei einigen dieser Systeme kann eine Komponente lediglich ein Bit bezeichnen. Außerdem, obwohl herkömmliche Modulationssysteme zwei orthogonale Komponenten verwenden, kann die vorliegende Erfindung bei Modulationssystemen angewandt werden, welche eine größere Anzahl von Komponenten in jedem Übertragungssignal haben. Multikomponenten-Modulationssysteme sind auch als Multiphasen-Modulationssysteme bekannt.

Die vorliegende Erfindung kann bei irgendeinem Übertragungsmedium angewandt werden. Somit kann, obwohl die Übertrager und Empfänger, die oben erläutert wurden, elektro-magnetische Wellen (Funkwellen) als Übertragungsmedium verwenden, die Erfindung auch bei optischen Übertragungsmedien verwendet werden, beispielsweise beim Codieren und Decodieren von Daten, welche in einem Glasfaser-Übertragungssystem gesendet werden.

Irgendein anderer Symboldiffusionsalgorithmus und die entsprechenden Symboldiffusions-Umkehrprozesse können anstelle der besonderen Symboldiffusionsprozesse und Umkehrprozesse verwendet werden, welche bei den Ausführungsformen, die oben besprochen wurden, verwendet werden. In gleicher Weise können andere Bitlösch- und Biteinfügungsalgorithmen durch die, die gezeigt sind, ersetzt werden. Bei noch weiteren Ausführungsformen kann der Übertrager zusätzliche Bitpegel-Verarbeitungsmerkmale enthalten, beispielsweise die Bitdiffusion, die oben in Verbindung mit dem QPSK-System und in 820 erläutert wurde. Beispielsweise kann der Übertrager nach 1 Einrichtungen aufweisen, um jede der Sequenzen von Bits u, v, x und y, welche die punkturierte Faltungscodeinformation enthält, nach der Bitlöschschaltung umzuordnen, jedoch vor der Bitpunkt-Zuteilungsschaltung. Der Empfänger von 2 kann jedoch mit Einrichtungen versehen sein, um Sequenzen von Bitmetriken u0 und u1 in einer Weise umgekehrt zur Umordnung umzuordnen, welche bei der Bitsequenz u im Übertrager angewandt wird, während die Bitmetriksequenzen v0 und v1 invers zur Umordnung der entsprechenden Bits v im Übertrager umgeordnet werden können. Die verbleibenden Bitmetriksequenzen x0, x1 und y0, y1 können ebenfalls in einer Weise invers zur Umordnung der entsprechenden Bitsequenzen x und y im Übertrager umgeordnet werden. Da eine Bitmetrik oder ein Paar von Bitmetriken, beispielsweise x0, x1 ein Bit zeigt, kann hier wiederum die Bitpegelverarbeitung im Übertrager umgekehrt werden gegenüber der Verarbeitung zu den Bitmetriken im Empfänger. Alternativ kann das Bitlöschen vom Empfänger ausgelassen werden, und in diesem Fall wird der entsprechende Umkehrprozess vom Empfänger ausgelassen.

Die oben erläuterten Viterbi-Decoder können durch andere Arten von Decoder ersetzt werden. Wenn ein Faltungscode verwendet wird, muss der Decoder vorzugsweise der Decoder des wahrscheinlichsten Pfads sein, d.h., ein Decoder, der den Inhalt der Wiedergabedaten, bestimmt, wobei der wahrscheinlichste Pfad oder die Reihe von Zuständen bestimmt werden, welche durch die Empfangsdaten gezeigt werden. Obwohl die oben erläuterten Empfänger Decoder aufweisen, welche die ursprüngliche codierte Information wieder entwickeln, kann außerdem der Empfänger als eine Komponente bereitgestellt werden, welche die Sequenzen von Bitmetriken zu einer separaten Decodiereinrichtung liefern. Die Decoderschaltung und weitere Schaltungen, die oben beschrieben wurden, können gänzlich oder teilweise durch programmierbare Prozessoren ersetzt werden, die programmiert sind, äquivalente Funktionen auszuführen.

Es wird außerdem bezuggenommen auf die EP-A 0 827 298 und die EP-A 0 827 299, die simultane anhängige europäische Patentanmeldungen sind. Diese Anmeldungen offenbaren zusätzliche Formen von Bitmetrik-Berechnungsschaltungen, welche bei der vorliegenden Erfindung verwendet werden können.

Wie ausführlicher in der EP-A 0 827 298 offenbart ist, kann ein Empfänger für Multikomponentensignale eingerichtet sein, die Symbole zeigen, welche von einem Satz möglicher Multikomponenten-, Multiwertsymbole, beispielsweise 16-QAM-, 64-QAM- oder 256-QAM-Symbole ausgewählt werden, so dass jede Komponente des Signals Werte für mehrere Bits zeigt. Somit sind zwei oder mehrere Bits mit jeder Komponente des Signals verknüpft, und jeder Wert des Bits wird durch die verknüpfte Komponente bezeichnet. In diesem Fall kann der Datenempfänger eine Einrichtung aufweisen, um den Wert jeder Komponente im Empfangssignal zu bestimmen, und die Bitmetrik-Berechnungseinrichtung kann eingerichtet sein, um einen Wert einer Bitmetrik für jedes Bit zu setzen, welches durch jedes Signal bezeichnet wird, auf Basis des Werts der Signalkomponente, welche mit diesem Bit verknüpft ist. Somit werden der erste, zweite und dritte Bereich für jedes Bit festgelegt. Die Werteinstellungsschaltung ist eingerichtet, die Bitmetrik für jedes Bit so einzurichten, dass die Bitmetrik einen vorher festgelegten Maximalwert hat, wenn die Signalkomponente in Verbindung mit dem Bit in dem ersten Bereich für dieses Bit definiert ist, so dass die Bitmetrik einen vorher festgelegten Minimalwert hat, wenn die Komponente in Verbindung mit dem Bit im zweiten Bereich, der für das Bit definiert ist, hat und so die Bitmetrik einen Zwischenwert hat, zwischen dem Maximalwert und dem Minimalwert, wenn die Komponente in Verbindung mit Bit in dem dritten Bereich ist, der für das Bit definiert ist. Die Bitmetrik kann durch Interpolation bestimmt werden, wenn der Wert der Komponente im dritten Bereich ist. Unterschiedliche Bereiche werden für jedes der Bits in Verbindung mit einer bestimmten Komponente definiert.

Außerdem beschreibt die EP-A 0827 299 zusätzliche Bitmetrik-Berechnungsschaltungen, bei denen die Bitmetrik für ein bestimmtes Bit durch Bestimmen von den Komponenten jedes Empfangssignals bestimmt wird, der Wahrscheinlichkeit, dass das Empfangssignal jedes der möglichen Symbole zeigt, und dann Berechnen einer Bitmetrik für ein bestimmtes Bit aus den Wahrscheinlichkeiten für diese möglichen Symbole, welche eine Komponente haben, welche einen bestimmten Wert dieses Bits zeigen. Die Bitmetrik kann die Summe dieser Wahrscheinlichkeiten oder irgendeine Funktion der Summe sein.

Wie in der EP-A 0 827 298 und in der EP-A 0 827 299 beschrieben ist, kann die Bitmetrik eine logarithmische Funktion sein, beispielsweise ein Logarithmus der Summe von Wahrscheinlichkeiten oder das Produkt eines derartigen Logarithmus und –1. Wie außerdem sowohl in der EP-A 0 827 298 als auch der EP-A 0 827 299 beschrieben können die Schaltungen, welche unmittelbar die Bitmetriken berechnen, durch Speicher mit gespeicherten Werten der Bitmetriken und durch Leseschaltungen, welche die gespeicherten Werte lesen, ersetzt werden. Die Werte der Komponenten der ankommenden Signale können als Adressen zur Leseschaltung geliefert werden, und die Bitmetriken, welche bei derartigen Adressen gespeichert sind, können aus dem Speicher gelesen werden. Die Anordnung von Bitmetriken und von Adressen werden in wünschenswerter Weise so ausgewählt, dass der Wert, der aus dem Speicher für irgendeinen der bestimmten Werte der Empfangssignalkomponenten gelesen wird, im Wesentlichen gleich dem Wert ist, der bei einer direkten Berechnung unter Verwendung der anderen Verfahren, die oben erläutert wurden, verwendet wird. Somit wird die Berechnung mittels einer Nachschlagetabelle durchgeführt.

Da diese und weitere Variationen und Kombinationen der Merkmale, die oben erläutert wurden, verwendet werden können, ohne die vorliegende Erfindung zu verlassen, sollte die obige Beschreibung der bevorzugten Ausführungsformen als beispielhaft und nicht als einschränkend angesehen werden, wobei die Erfindung durch die Ansprüche definiert ist.


Anspruch[de]
Datenempfänger zum Empfangen einer Reihe von Empfangssignalen, wobei jedes Empfangssignal I- und Q-Komponenten enthält, wobei jedes Empfangssignal Werte für mehr als zwei Datenbits in einer Nachricht kennzeichnet, welche in einen punktierten Faltungscode codiert ist, wobei der Datenempfänger aufweist:

eine Demodulationseinrichtung (32) zum Bestimmen einer I-Komponente und einer Q-Komponente der Empfangssignale;

eine Bitmetrik-Berechnungseinrichtung (102) zum Berechnen zumindest einer Bit-Metrik für jedes der Datenbits, welches durch die bestimmte I-Komponente und Q-Komponente der Empfangssignale gekennzeichnet wird, um eine oder mehrere Bit-Metrik-Sequenzen bereitzustellen;

eine Bit-Einfügungseinrichtung (104) zum Durchführen von Bit-Einfügungsverarbeitung in den Bit-Metrik-Sequenzen gemäß einer vorher festgelegten Regel, um dadurch eine oder mehrere vermehrte Bit-Metrik-Sequenzen zu bilden; und

eine Decodiereinrichtung (105) zum Decodieren der Daten durch Verarbeitung der einen oder mehreren vermehrten Bit-Metrik-Sequenzen.
Datenempfänger nach Anspruch 1, wobei die Decodiereinrichtung (105) eine Einrichtung zum Entfalten der vermehrten Bit-Metrik-Sequenzen aufweist. Datenempfänger nach Anspruch 2, wobei die Einrichtung zum Entfalten eine Einrichtung zum Entfalten gemäß einem Decodierschema für größte Wahrscheinlichkeit aufweist. Datenempfänger nach Anspruch 2, wobei die Einrichtung zum Entfalten eine Einrichtung zum Entfalten gemäß einem Decodierschema nach Viterbi aufweist. Datenempfänger nach einem der vorhergehenden Ansprüche, wobei die Bit-Metrik-Berechnungseinrichtung (102) betriebsfähig ist, die Bit-Metriken so zu berechnen, dass jede derartige Bit-Metrik die Wahrscheinlichkeit zeigt, dass ein Bit einen bestimmten Wert hat. Datenempfänger nach Anspruch 5, wobei die Bit-Metrik-Berechnungseinrichtung (102) betriebsfähig ist, eine erste Bit-Metrik für jedes Bit zu berechnen, welche die Wahrscheinlichkeit zeigt, dass dieses Bit einen ersten Wert hat, und eine Bit-Metrik für jedes Bit, welches die Wahrscheinlichkeit zeigt, dass dieses Bit einen zweiten Wert hat. Datenempfänger nach einem der vorhergehenden Ansprüche, der weiter eine Symboldiffusions-Umkehreinrichtung (33) aufweist, um Symboldiffusions-Umkehrverarbeitung durchzuführen, um eine abwechselnde Reihe der Empfangssignale bereitzustellen, wobei die Bit-Metrik-Berechnungseinrichtung (102) betriebsfähig ist, die Bit-Metriken von der abwechselnden Reihe der Empfangssignale zu berechnen, welche durch die Symboldiffusions-Umkehreinrichtung (33) bereitgestellt werden. Datenempfänger nach Anspruch 7, wobei die Symboldiffusions-Umkehreinrichtung (33) eine Einrichtung aufweist, um Komponenten bestimmter Empfangssignale bei einer ankommenden Sequenz von Empfangssignalen mit Komponenten anderer Empfangssignale in der ankommenden Sequenz gemäß einem vorher festgelegten Muster auszutauschen, um die geänderte Sequenz von Empfangssignalen bereitzustellen. Datenempfänger nach einem der vorhergehenden Ansprüche, der außerdem eine Symboldiffusions-Umkehreinrichtung (33) aufweist, um Symboldiffusions-Umkehrverarbeitung bezüglich der Sequenzen von Bit-Metriken durchzuführen, welche durch die Bit-Metrik-Berechnungseinrichtung (102) ausgegeben werden. Datenempfänger nach Anspruch 9, wobei die Symboldiffusions-Umkehreinrichtung (33) eine Einrichtung aufweist, um Bit-Metriken, welche von bestimmten Empfangssignalen hergeleitet werden, mit Bit-Metriken, welche von anderen Empfangssignalen hergeleitet werden, gemäß einem vorher festgelegten Muster auszutauschen. Verfahren zum Empfangen einer Reihe von Empfangssignalen, wobei jedes Empfangssignal I- und Q-Komponenten enthält, wobei jedes derartiges Empfangssignal Werte für mehr als zwei Datenbits in einer Nachricht kennzeichnet, welche in einem punktierten Faltungscode codiert ist, wobei das Verfahren folgende Schritte aufweist:

Bestimmen einer I-Komponente und einer Q-Komponente der Empfangssignale;

Berechnen zumindest einer Bit-Metrik für jedes der Datenbits, welche durch die I-Komponente und die Q-Komponente von Empfangssignalen gekennzeichnet ist, um eine oder mehrere Bit-Metrik-Sequenzen bereitzustellen;

Durchführen von Bit-Einfügungsverarbeitung in den Bit-Metrik-Sequenzen gemäß einer vorher festgelegten Regel, um dadurch eine oder mehrere vermehrte Bit-Metrik-Sequenzen zu bilden; und

Decodieren der Daten durch Verarbeitung einer oder mehrerer vermehrter Bit-Metrik-Sequenzen.
Verfahren nach Anspruch 11, wobei der Decodierschritt den Schritt zum Entfalten der einen oder mehrerer vermehrter Bit-Metrik-Sequenzen aufweist. Verfahren nach Anspruch 12, wobei der Entfaltungsschritt den Schritt zum Entfalten gemäß einem Decodierschema für größte Wahrscheinlichkeit aufweist. Verfahren nach Anspruch 13, wobei der Entfaltungsschritt den Schritt zum Entfalten gemäß einem Decodierschema nach Viterbi aufweist. Verfahren nach einem der Ansprüche 11 bis 14, wobei der Bit-Metrik-Berechnungsschritt so durchgeführt wird, um die Bit-Metriken zu berechnen, so dass jede derartige Bit-Metrik die Wahrscheinlichkeit zeigt, dass ein Bit einen bestimmten Wert hat. Verfahren nach Anspruch 15, wobei der Metrik-Berechnungsschritt den Schritt zum Berechnen einer ersten Bit-Metrik für jedes Bit aufweist, welches die Wahrscheinlichkeit zeigt, dass dieses Bit einen ersten Wert hat, und einer zweiten Bit-Metrik für jedes Bit, welches die Wahrscheinlichkeit zeigt, dass dieses Bit einen zweiten Wert hat. Verfahren nach einem der Ansprüche 11 bis 16, welches außerdem den Schritt zum Durchführen von Symboldiffusions-Umkehrverarbeitung aufweist, um eine abwechselnde Reihe der Empfangssignale bereitzustellen, wobei der Bit-Metrik-Berechnungsschritt den Schritt aufweist, um die Bit-Metriken von der abwechselnden Reihe von Empfangssignalen zu berechnen, welche durch die Symboldiffusions-Umkehreinrichtung bereitgestellt werden. Verfahren nach Anspruch 17, wobei der Schritt zum Durchführen von Symboldiffusions-Umkehrverarbeitung den Schritt zum Austauschen von Komponenten bestimmter Empfangssignale in einer ankommenden Sequenz von Empfangssignalen mit Komponenten anderer Empfangssignale in der ankommenden Sequenz gemäß einem vorher festgelegten Muster aufweist, um die geänderte Sequenz von Empfangssignalen bereitzustellen. Verfahren nach einem der Ansprüche 11 bis 18, welches außerdem den Schritt zum Durchführen von Symboldiffusions-Umkehrverarbeitung bezüglich der Sequenzen von Bit-Metriken vor dem Schritt zum Durchführen von Bit-Einfügungsverarbeitung aufweist. Verfahren nach Anspruch 19, wobei der Symboldiffusions-Umkehrverarbeitungsschritt den Schritt zum Austauschen von Bit-Metriken aufweist, welche von bestimmten Empfangssignalen hergeleitet werden, mit Bit-Metriken, welche von anderen Empfangssignalen hergeleitet werden, gemäß einem vorher festgelegten Muster.






IPC
A Täglicher Lebensbedarf
B Arbeitsverfahren; Transportieren
C Chemie; Hüttenwesen
D Textilien; Papier
E Bauwesen; Erdbohren; Bergbau
F Maschinenbau; Beleuchtung; Heizung; Waffen; Sprengen
G Physik
H Elektrotechnik

Anmelder
Datum

Patentrecherche

  Patente PDF

Copyright © 2008 Patent-De Alle Rechte vorbehalten. eMail: info@patent-de.com