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 8–20 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.