DE69531482T2 - Gleichzeitige demodulation und dekodierung eines digital modulierten funksignals - Google Patents

Gleichzeitige demodulation und dekodierung eines digital modulierten funksignals Download PDF

Info

Publication number
DE69531482T2
DE69531482T2 DE69531482T DE69531482T DE69531482T2 DE 69531482 T2 DE69531482 T2 DE 69531482T2 DE 69531482 T DE69531482 T DE 69531482T DE 69531482 T DE69531482 T DE 69531482T DE 69531482 T2 DE69531482 T2 DE 69531482T2
Authority
DE
Germany
Prior art keywords
symbols
bits
symbol
signal
decoding
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
DE69531482T
Other languages
English (en)
Other versions
DE69531482D1 (de
Inventor
W. Paul DENT
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ericsson Inc
Original Assignee
Ericsson Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ericsson Inc filed Critical Ericsson Inc
Publication of DE69531482D1 publication Critical patent/DE69531482D1/de
Application granted granted Critical
Publication of DE69531482T2 publication Critical patent/DE69531482T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/0067Rate matching
    • H04L1/0068Rate matching by puncturing
    • H04L1/0069Puncturing patterns
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/27Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes using interleaving techniques
    • H03M13/2703Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes using interleaving techniques the interleaver involving at least two directions
    • H03M13/2721Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes using interleaving techniques the interleaver involving at least two directions the interleaver involves a diagonal direction, e.g. by using an interleaving matrix with read-out in a diagonal direction
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/35Unequal or adaptive error protection, e.g. by providing a different level of protection according to significance of source information or by adapting the coding according to the change of transmission channel characteristics
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/37Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
    • H03M13/39Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes
    • H03M13/41Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes using the Viterbi algorithm or Viterbi processors
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/37Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
    • H03M13/39Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes
    • H03M13/41Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes using the Viterbi algorithm or Viterbi processors
    • H03M13/413Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes using the Viterbi algorithm or Viterbi processors tail biting Viterbi decoding
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/63Joint error correction and other techniques
    • H03M13/6325Error control coding in combination with demodulation
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/63Joint error correction and other techniques
    • H03M13/635Error control coding in combination with rate matching
    • H03M13/6362Error control coding in combination with rate matching by puncturing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0045Arrangements at the receiver end
    • H04L1/0054Maximum-likelihood or sequential decoding, e.g. Viterbi, Fano, ZJ algorithms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/0071Use of interleaving
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L25/00Baseband systems
    • H04L25/02Details ; arrangements for supplying electrical power along data transmission lines
    • H04L25/03Shaping networks in transmitter or receiver, e.g. adaptive shaping networks
    • H04L25/03006Arrangements for removing intersymbol interference
    • H04L25/03178Arrangements involving sequence estimation techniques
    • H04L25/03203Trellis search techniques
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L2001/0098Unequal error protection

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Theoretical Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Mathematical Physics (AREA)
  • Artificial Intelligence (AREA)
  • Power Engineering (AREA)
  • Error Detection And Correction (AREA)
  • Closed-Circuit Television Systems (AREA)
  • Circuits Of Receivers In General (AREA)
  • Reduction Or Emphasis Of Bandwidth Of Signals (AREA)
  • Digital Transmission Methods That Use Modulated Carrier Waves (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)

Description

  • HINTERGRUND
  • Die vorliegende Erfindung betrifft allgemein ein Verfahren und eine Vorrichtung zum gleichzeitigen Demodulieren und Decodieren eines digital modulierten Funksignals bzw. Radiosignals, wie beispielsweise eines Signals eines zellularen drahtlosen bzw. schnurlosen Telefons gemäß dem Oberbegriff des Anspruchs 1 und des Anspruchs 16.
  • In EP 0 594 551 A1 ist eine Demodulation von digital modulierten Signalen beschrieben, und zwar insbesondere von denjenigen, die über Kanäle empfangen werden, die an einer oder mehreren Beeinträchtigungen leiden, wie beispielsweise einem Fading, einer Zwischensymbolinterferenz, einem Frequenzfehler, einer Verzerrung, und zwar entweder temporär konstant oder mit der Zeit variierend.
  • Weiterhin ist in Vol. 2 aus 4, 29. November 1993, Institute of Electrical and Electronic Engineers, Seiten 814–818, Jung-Fu Cheng et al.: "Complexity-reduced Multilevel Coding with Rate-compatible Punctured Convolutional Codes" ein Codierungsentwuf basierend auf einer Mehrfachpegel-Codierkonstruktion mit ratenkompatiblen durchbrochenen Faltungscodes als Aufbaublöcke beschrieben.
  • Weiterhin ist in US-A-5,331,666 ein Demodulator für eine adaptive maximale Ähnlichkeit zum Demodulieren von digitalen Funksignalen auf einem Kanal beschrieben, der Beeinträchtigungen enthält, ohne Verwendung von Kanalmodellen für eine Erzeugung von Signalvorhersagen.
  • Eine Kombination aus Modulation und Codierung, und gegensätzlich dazu aus Demodulation und Decodierung, ist eine Technik, die mit Veröffentlichungen von Ungerboeck assoziiert worden ist. So genante Ungerboeck-Codes können verwendet werden, um Datenbits für eine Übertragung in einer Reihe von Funksignal-Phasenänderungen zu codieren. Mehr als eine Phasenänderung pro übertragenem Datenbit wurde allgemein ins Auge gefasst, und ebenso hing jede Phasenänderung von mehr als einem Datenbit ab. Ein Demodulieren und ein Decodieren eines solchen Signals enthielt eine Hypothesenbildung einer Sequenz von Bits, die bei dem Sender codiert werden, unter Verwendung eines Modells des Codierprozesses zum Vorhersagen, welche Phasenänderungen bei dem Empfänger entsprechend einer jeweiligen Hypothese beobachtet werden sollten, und unter Vergleichen des tatsächlich empfangenen Signals mit dem Hypothesesignal, um die Fehlanpassung zu bestimmen und somit "Stimmen" für und gegen eine jeweilige Hypothese zu sammeln. Die Hypothesesequenz, die mit den meisten Stimmen endet, wurde dann dafür bestimmt, dass sie die übertragene ist.
  • Ein Problem bei einer Ungerboeck-Codierung besteht darin, dass die Daten in einer Reihe von sequentiellen Signaländerungen codiert werden. Auf Fading-Kanälen kann eine Schwundresonanz eine gesamte Reihe von solchen Signaländerungen auswischen und somit ein gesamtes Datenbit. Ein solcher nicht verschachtelter Code ist nicht dazu fähig, sogar kurze Fadings bzw. Schwunde zu überbrücken.
  • Zum Bekämpfen eines Fadings ist es wünschenswert, ein Verschachteln zu verwenden, so dass benachbarte Symbole aus dem Codierer zeitlich gut beabstandet übertragen werden, und somit dann, wenn sie beim Decodierer wieder angeordnet werden, benachbarte Symbole in den Decodierer von Signalsegmenten gekommen sind, die nicht im selben Schwundbereich sind. Nach einem Entschachteln beim Empfänger wird eine Schwundresonanz bezüglich der Zeit ausgebreitet werden, so dass Fehler nicht angehäuft werden. Unglücklicherweise ist ein Ungerboeck-Decodierer für verschachtelte, codierte Signale gewöhnlich zu kompliziert, um berücksichtigt zu werden, da seine Komplexität bei Symbolen, die der Code überspannt, exponentiell von der Gesamtzeit abhängt.
  • Eine alternative herkömmliche Technik für codierte, verschachtelte und modulierte Signale ist eine separate Demodulation, der ein Entschachteln und ein separates Decodieren folgt. Wenn der Übertragungskanal an einer Zeitdispersion leidet, d. h. an verzögerten Echos des übertragenen Signals, kann ein Entzerrer dazu verwendet werden, eine adäquate Demodulationsleistung zu ergeben. Ein Entzerrer für eine sequentielle maximale Wahrscheinlichkeit, wie beispielsweise derjenige, der zum Beispiel in dem US-Patent US-A-5,331,666 mit dem Titel "Adaptive Maximum Likelihood Demodulator", eingereicht am 8. Juni 1992, und in dem US-Patent US-A-5,335,250, das zu der Patentfamilie der europäischen Patentanmeldung EP-A-594 551 gehört, mit dem Titel "Bidirectional Demodulation", eingereicht am 22. Oktober 1992, hat eine Komplexität, die exponentiell davon abhängt, wie viele Symbole es gibt, die die Echos verzögerten. Ein solcher Entzerrer kann eher "weiche" als "harte" Entscheidungen liefern, die nach einem Entschachteln dem Fehlerkorrektur-Decodierer präsentiert werden. Ein Fehlerkorrektur-Decodierer für Faltungscodes hat auch eine Komplexität, die exponentiell von der Beschränkungslänge des Codes abhängt.
  • Der Nachteil von einer separaten Demodulation und Decodierung, und zwar selbst mit einem Entzerrer, der weiche Entscheidungen liefert, besteht darin, dass die Demodulatorleistung bei niedrigen Signal-zu-Rausch-Verhältnissen fehlschlagen kann. Dies entsteht insbesondere in dem Fall von zeitvariierenden Kanälen, wo die Phase des Signals durch beispielsweise Dopplereffekte und eine Mehrwegeausbreitung zerstört ist. Für solche Kanäle kann es erwünscht sein, Daten durch differentielles Ändern der Phase des Signals von einer Symbolperiode zur nächsten auf das Funksignal zu modulieren, so dass es durch Vergleichen von Signalwerten demoduliert werden kann, die nur um ein Symbol voneinander beabstandet sind, für eine ausreichend kurze Zeitspanne, so dass die Kanalphase sich über dieser Zeit nicht signifikant ändert. Unglücklicherweise gibt es normalerweise einen Verlust in der Größenordnung von 3 dB beim Vergleichen eines rauschbehafteten empfangenen Signalwerts mit einem anderen rauschbehafteten Signalwert, um das übertragene Symbol zu bestimmen, wenn eine differentielle Demodulation verwendet wird. Dieser Verlust kann im Fehlerkorrektur-Decodierprozess nach dem Demodulationsprozess nicht entdeckt werden, wenn herkömmliche separate Demodulations- und Decodierprozesse verwendet werden.
  • Ein weiterer Defekt eines herkömmlichen separaten Demodulierens und Decodierens besteht darin, dass der separate Demodulator aufgrund eines Rauschens Fehler machen kann und eine falsche Sequenz von Bits als die "beste" Ausgabe auswählen kann. Dieses einzelne Fehlerereignis wird, wenn es entschachtelt wird, zu mehreren separaten Bitfehlerereignissen, so dass der Fehlerkorrektur-Decodierer nun mit einer größeren Anzahl von Fehlern fertig werden muss. Somit können Demodulatoren für eine maximale Wahrscheinlichkeit, denen ein Entschachteln folgt, und dann Faltungsdecodierer für eine maximale Wahrscheinlichkeit, an einer Verschlechterung der Leistungsfähigkeit leiden.
  • Demgemäß wäre es für den Fehlererfassungs/Korrektur-Decodierprozess wünschenswert, mit dem Demodulationsprozess in einem einzigen Demodulator für eine maximale Wahrscheinlichkeit enthalten zu sein, so dass die Demodulation durch das Decodieren unterstützt werden kann, um Fehler aufgrund eines Rauschens zu vermeiden.
  • ZUSAMMENFASSUNG
  • Diese und andere Probleme, Nachteile und Beschränkungen von herkömmlichen Demodulations- und Decodierverfahren und Systemen werden durch Verwenden von Verfahren und Systemen gemäß der vorliegenden Erfindung überwunden. Dabei wird zuerst ein zu übertragender digitaler Datenstrom zuerst einer Fehlerkorrektur-Codierung unter Verwendung von beispielsweise einer Faltungscodierung unterzogen. Die codierten Datenbits werden dann gemäß einem Verschachtelungsalgorithmus bezüglich der Zeit verteilt, der auch eine beschränkte Anzahl von Symbolen einfügen kann, die dem Empfänger im Voraus bekannt sind, wie beispielsweise Synchronisationssymbole. Die codierten und verschachtelten Datenbits werden dann auf ein Funksignal moduliert, das in Bursts übertragen werden kann.
  • Diese und andere Probleme, Nachteile und Beschränkungen von herkömmlichen Demodulations- und Decodierverfahren und -systemen werden durch Verwenden eines Verfahrens gemäß der vorliegenden Erfindung überwunden, wie es im unabhängigen Anspruch 1 definiert ist, und einer Vorrichtung gemäß der vorliegenden Erfindung, wie sie im unabhängigen Anspruch 16 definiert ist. Dabei wird ein zu übertragender digitaler Datenstrom zuerst einer Fehlerkorrektur-Codierung unter Verwendung von beispielsweise einer Faltungscodierung unterzogen. Die codierten Datenbits werden dann gemäß einem Verschachtelungsalgorithmus bezüglich der Zeit verteilt, der auch eine beschränkte Anzahl von Symbolen einfügen kann, die dem Empfänger im Voraus bekannt sind, wie beispielsweise Synchronisationssymbole. Die codierten und verschachtelten Datenbits werden dann auf ein Funksignal moduliert, das in Bursts übertragen werden kann.
  • Der erfinderische Demodulator weist eine Viterbi-Abschätzeinheit für eine Sequenz maximaler Länge auf, die Datenbitsequenzen einer Hyothesenbildung unterzieht. Mit der Hilfe eines Modells des Codier- und Modulationsprozesses (Codulationsprozesses) werden Funksignal-Abtastungen ("Symbole"), die beobachtet werden sollten, vorhergesagt. Diese werden mit der tatsächlich empfangenen komplexen Signalwellenform verglichen, und eine Fehlanpassung wird berechnet. Die Viterbi-MLSE-Maschine fährt dann damit fort, die Datenbithypothese zu bestimmen, die die geringste Fehlanpassung ergibt, und gibt diese Hypothese aus. Der erfinderische Decodulationsprozess gemäß einem beispielhaften Ausführungsbeispiel berechnet zuerst Fehlanpassungen für Symbole, die an bekannte Symbole angrenzend liegen, und sammelt die Fehlanpassungen in eine gesamte Fehlanpassung oder ein Pfadmaß bzw. Wegemaß für die Hypothese-Symbolsequenz. Dieser Prozess wird hierin "Decodulieren eines Symbols" genannt. Die bekannten Symbole können beispielsweise Synchronisationssymbole sein.
  • Wenn alle Positionen, die bekannten Symbolen am nächsten sind, ausgeschöpft sind, können fehlerkorrigierte Daten beginnen, aus dem Decodierer aufzutauchen, und somit kann das erste decodierte Symbol nun mit relativ hoher Sicherheit als ein bekanntes Symbol angesehen werden. Der Prozess fährt dann unter Behandlung dieses Symbols als bekanntes Symbol fort, um mit ihm die Decodulation eines benachbarten Symbols zu unterstützen. Dies räumt ein anderes fehlerkorrigiertes Datensymbol aus, usw., bis alle Daten decodiert worden sind. Dieser Prozess basiert teilweise auf einer Kenntnis des Empfängers bezüglich der Reihenfolge einer Platzierung von Symbolen im übertragenen Strom und auf der Platzierung von irgendwelchen bekannten Synchronisationssymbolen, d. h. bezüglich des Verschachtelungsmusters. Eine Auswahl von Sende-Verschachtelungsformaten zum Erleichtern eines Decodulierens ist hierin detailliert beschrieben.
  • Ein weiterer der Vorteile von Techniken gemäß der vorliegenden Erfindung besteht darin, zuzulassen, dass Daten differentiell moduliert werden, d. h. eher bei den Übergängen zwischen zwei Signalwellenformstellen codiert zu werden, als bei dem Absolutwert der Wellenform, ohne dass der gewöhnliche differentielle Verlust von 3 dB auftritt. Eher eine differentielle als eine absolute (kohärente) Modulation ist für Funkkanäle wünschenswert, die über dem Raum von einigen wenigen Symbolen schnell variieren bzw. sich ändern, was eine kohärente Demodulation behindern würde. Die vorliegende Erfindung liefert den Vorteil für zeitvariierende Kanäle einer differentiellen Modulation ohne den normalen Leistungsnachteil von 3 dB. Ein diagonal verschachteltes, codiertes und differentiell moduliertes Signalformat ist offenbart, das wenigstens die Hälfte bis zu dem gesamten des differentiellen Modulationsverlustes von 3 dB wiedergewinnen kann.
  • KURZE BESCHREIBUNG DER ZEICHNUNGEN
  • Die vorangehenden und andere Aufgaben, Merkmale und Vorteile der vorliegenden Erfindung werden einfacher beim Lesen der folgenden detaillierten Beschreibung in Zusammenhang mit den Zeichnungen verstanden werden, wobei:
  • 1 ein Signalübertragungsformat gemäß einem beispielhaften Ausführungsbeispiel der vorliegenden Erfindung darstellt;
  • 2(a) ein Sender-Blockdiagramm zum Erzeugen eines Signals darstellt, wie beispielsweise dasjenige der 1;
  • 2(b) einen beispielhaften Codierer mit der Rate 1/3 darstellt, der bei dem Sender der 2(a) verwendet werden kann;
  • 3 ein Empfänger-Blockdiagramm zum Decodieren eines empfangenen Signals, wie beispielsweise desjenigen, das in 1 gezeigt ist, darstellt;
  • 4 die innere Struktur des in 3 implementierten beispielhaften Decodulationsprozesses detaillierter darstellt;
  • 5 eine modifizierte interne Struktur zum Berechnen von Referenzvektoren im Vorübergehen bzw. im Fluge darstellt;
  • 6 ein blockdiagonal verschachteltes und differentiell moduliertes binäres Übertragungsformat darstellt;
  • 7(a) und 7(b) ein Ablaufdiagramm zur Verfügung stellen, das ein beispielhaftes Mehrwegeverfahren gemäß der vorliegenden Erfindung darstellt; und
  • 8 eine Modifikation einer differentiellen Modulation zum Überspringen nicht codierter Symbole darstellt.
  • DETAILLIERTE BESCHREIBUNG
  • Gemäß 1 ist eine Anzahl von codierten Symbolen, die zu einem Empfänger zu befördern sind, mit "U" für unbekannt markiert, und mit einer Anzahl von bekannten Symbolen, die mit "K" markiert sind, verschachtelt. Die Symbole sind zwischen eine Anzahl von Bursts in einem angenommenen Zeitvielfachzugriffs-(TDMA = Time Division Multiple Access)-Übertragungssystem verteilt gezeigt, aber dies ist nur ein Beispiel, und die Erfindung kann gleichermaßen auf kontinuierliche (z. B. FDMA oder CDMA) sowie auf Burst-Übertragungen angewendet werden.
  • Als Beispiel enthält ein TDMA-Frame von 40 mS 300 Symbolperioden und ist in drei Zeitschlitze aufgeteilt. Ein Funksender ist einem Zeitschlitz pro Frame zugeteilt, in welchem er nahezu 100 Symbole zu senden hat. Einige der Symbolperioden zu Beginn und am Ende von Übertragungsbursts werden für eine Leistungs-Aufwärts/Abwärts-Rampenbildung reserviert und werden somit nicht zur Datenübertragung verwendet. Die in 1 mit 1 bis 4 nummerierten Bursts beziehen sich auf entsprechende Zeitschlitze, die demselben Sender in aufeinanderfolgenden TDMA-Frames von 40 mS zugeteilt sind.
  • Alternativ dazu kann ein Hybrid-TDMA/FDMA-Zugriffsformat, wie es im US-Patent US-A-5,539,730 mit dem Titel "TDMA/FDMA/CDMA Hybrid Radio Access Methods), eingereicht am 11. Januar 1994, eschrieben ist, verwendet werden. Diese Alternative enthält, dass jeder Sender für zwei aus den drei Zeitschlitzen sendet, so dass sich in jedem Zeitschlitz zwei Übertragungen überlagern. Jedoch verwenden die zwei gleichzeitig sendenden Vorrichtungen jeweils die oberen und unteren Hälften des zugeteilten Frequenzkanalspektrums, wenn sie sich bezüglich der Zeit überlagern, um eine wechselseitige Interferenz zu vermeiden. Wenn dieser Typ von Zugriffsformat verwendet wird, wird sich die Bezeichnung (Burst 1, Burst 2), die in 1 verwendet wird, jeweils auf eine Senderübertragung in einem ersten von drei Zeitschlitzen unter Verwendung einer unteren Hälfte des Kanalspektrums und eine Übertragung in einem zweiten Zeitschlitz unter Verwendung einer oberen Hälfte des Kanalspektrums beziehen. Der Burst 3, der Burst 4 würden sich dann auf dasselbe Auftreten in dem folgenden TDMA-Frame von 40 mS beziehen.
  • Ein erwünschtes Ziel ist beispielsweise ein Übertragungsformat mit einer Effizienz von 90%, das 90 aus den 100 Symbolperioden pro Burst einer Datenübertragung zuteilt. 1 stellt vier Symbole, die mit K markiert sind, in jedem Burst dar, die Synchronisationssymbolen gewidmet sind, und die übrigen sechs Symbolperioden pro Burst werden für eine Aufwärts- und Abwärts-Rampenbildung einer Dauer von jeweils drei Symbolen verwendet. Die bekannten Symbole werden keiner Gruppenbildung bzw. Clusterbildung unterzogen, da es keinen Vorteil für Kanäle gibt, dies zu tun, die sich über dem Raum einiger weniger Symbole ändern können. Stattdessen werden unbekannte Datensymbole abgewägt zwischen den bekannten Symbolen platziert, und zwar aus den Gründen, die unten erklärt sind.
  • Eine differentielle Modulation wird so verwendet, dass Symbole dem Träger durch Ändern ihrer Phase über einer Symbolperiode eingeprägt werden. Beispielsweise kann das als Pi/4-DQPSK bekannte Modulationsschema verwendet werden, bei welchem die Phasenänderung einer der vier Werte +/–45 oder +/–135° ist, um dadurch zwei Informationsbits zu codieren.
  • Wenn das Symbol und daher die Phasenänderung bekannt ist, gibt es eine bekannte Beziehung zwischen dem startenden und dem endenden Signalvektor. Durch Drehen des bei dem Start eines bekannten Symbols empfangenen Vektors über dieses bekannte Ausmaß, kann er mit dem Endvektorwert ausgerichtet werden, der empfangen wird, und konstruktiv zu ihm addiert werden, um dadurch das Signal-zu-Rausch-Verhältnis beim Ergebnis um 3 dB zu verbessern. Dieser verbesserte Endvektor ist der Startvektor für das folgende, unbekannte Symbol, und die Verbesserung des Signal-zu-Rausch-Verhältnisses lässt somit zu, dass das unbekannte Symbol durch einen Vergleich mit einem Hypothesesymbol zuverlässiger bestimmt wird.
  • Wenn das Symbol, das dem unbekannten Symbol folgt, auch ein bekanntes Symbol ist, kann derselben Prozedur umgekehrt gefolgt werden, um die Phase zu Beginn des zweiten Synchronisationssymbols/des Endes des unbekannten Symbols zu bilden. Da sowohl der Start- als auch der Endvektor des unbekannten Symbols dann ein um 3 dB höheres Signal-zu-Rausch-Verhältnis haben, setzt sich dies direkt zu einer Verbesserung von 3 dB bei einer Demodulation des unbekannten Symbols um. Mathematisch wird dies durch das folgende beschrieben:
    Man lasse Z(i – 1) den komplexen Wert eines Signals sein, der zu Beginn eines ersten bekannten Symbols abgetastet wird;
    man lasse Z(i) die Abtastung am Ende des ersten bekannten Symbols und zu Beginn des unbekannten Datensymbols sein;
    man lasse die bekannte differentielle Phasendrehung, die durch das erste bekannte Symbol angewendet wird, Thetal sein; dann gilt
    U(i) = (Z(i – 1)Exp(j·Theta1) + Z(i))/2 ist eine bessere Abschätzung des Signalvektors beim Start des unbekannten Symbols.
  • Man lasse Z(i + 1) den Signalvektor am Ende des unbekannten Symbols und beim Start des zweiten bekannten Symbols sein und man lasse Z(i + 2) den Signalvektor am Ende des zweiten bekannten Symbols sein;
    man lasse Theta2 die bekannte differentielle Phasendrehung sein, die durch das zweite bekannte Symbol angewendet wird; dann gilt:
    U(i + 1) = (Z(i + 1) + Z(i + 2) Exp(–j·Theta2))/2 ist eine bessere Abschätzung des Signalvektors am Ende des unbekannten Symbols.
  • Daher ist eine verbesserte Abschätzung des unbekannten Symbols: U (i + 1)·U* (i)wobei * komplex-konjugiert bedeutet und wobei die Real- und Imaginärteile jeweils weiche Werte für die 2 Bits des quaternären Symbols ergeben. Diese weichen Werte werden mit einer geeigneten Skalierung bei einem Faltungsdecodierprozess verwendet, der in 4 dargestellt ist. Vor einem Beschreiben von 4 werden Blockdiagramme eines beispielhaften Senders und eines beispielhaften Empfängers mit der Hilfe der 2(a), 2(b) bzw. 3 beschrieben werden.
  • Gemäß 2(a) wird ein zu übertragendes analoges Sprachsignal durch einen Sprachcodierer 20 mit niedriger Bitrate in einen digitalen Bitstrom umgewandelt. Dieser Codierer kann beispielsweise einen A/D-Wandler für 8 Kiloabtastungen/zweite PCM, gefolgt durch einen resterregten, linearen Vorhersagecodierer (RELP = Residual Excited, Linear Predictive Coder), einen adaptiven Delta-PCM (ADPCM), eine Vektor-Codebuch-erregte lineare Vorhersageschaltung (VSELP = Vector Code-Book Excited Linear Prediction) oder eine ähnliche Schaltung sein. Der Codierer 20 wandelt Sprache zu einer niedrigen Bitrate um, während eine subjektive Qualität beibehalten wird, einschließlich beispielsweise einer getreuen Wiedergabe von Hintergrundklängen.
  • Die durch den Codierer 20 erzeugten Bits haben nicht typischerweise alle dieselbe Signifikanz beim Beeinträchtigen der wahrgenommenen Sprachqualität. Bits können somit gemäß ihrer Wahrnehmungssignifikanz sortiert werden, so dass ein Fehlerkorrektur-Codierer 21 seine Anstrengungen am effektivsten ausrichten kann.
  • Der Fehlerkorrektur-Codierer 21 kann eine größere Anzahl von Ausgangsbits als Eingangsbits erzeugen, um eine Redundanz zur Übertragung zur Verfügung zu stellen. Ebenso sind Ausgangsbits eine Funktion von mehreren Eingangsbits, und umgekehrt beeinflusst jedes Eingangsbit mehrere Ausgangsbits, so dass ein Verlust von einem Ausgangsbit bei einer Übertragung nicht notwendigerweise bedeutet, dass ein Informationsbit verloren wird. Ein beispielhafter Codierer zur Verwendung als Codierer 21 ist ein Codierer mit durchbrochener Faltung. Ein Faltungscodierer weist ein Schieberegister einer Länge von L Bits auf, durch welches die Eingangsdatenbits geführt werden. Eine erste Gruppe von Abgriffen an dem Register wählt eine Anzahl von verzögerten Bits aus und kombiniert sie durch eine Exklusiv-ODER-Operation, um ein erstes codiertes Bit oder ein Paritätsbit P1 zu erzeugen. Eine zweite Gruppe von Abgriffen wählt eine andere Kombination von verzögerten Bits aus, um P2 zu erzeugen, usw. Wenn die Gesamtanzahl von Paritätsbits, die für jedes Eingangsdatenbit erzeugt sind, N ist, dann wird der Codierer ein Codierer mit der Rate 1/N genannt. Beispielsweise dann, wenn zwei Paritätsbits für jedes Eingangsbit erzeugt werden, das hereingeschoben wird, ist der Codierer ein Codierer mit der "Rate einer Hälfte". Ein gegebenes Eingangsbit kann mehr als ein P1 oder P2 beeinflussen und beeinflusst somit mehrere übertragene Bits. Die Anzahl von Bits, die beeinflusst werden, kann wie folgt berechnet werden: wenn P1 eine Kombination von N1 Registerabgriffen ist, dann werden N1 P1-Werte beeinflusst werden, wenn ein gegebenes Datenbit die verwendeten Abgriffe durchläuft. Wenn P2 unter Verwendung von N2 Abgriffen erzeugt wird, dann werden N2 P2-Werte durch ein gegebenes Datenbit beeinflusst werden. Insgesamt hängen daher N1 + N2 Ausgangswerte von einem jeweiligen Eingangsbit ab.
  • Ein Code mit einer durchbrochenen Faltung kann unterschiedliche Schutzpegel für codierte Sprachbits von unterschiedlicher Wahrnehmungssignifikanz ergeben. Es kann angenommen werden, dass das Ausmaß an Schutz proportional zu der Anzahl von gesendeten Codierer-Ausgangsbits ist, die von diesem Sprachbit abhängen. Dies kann durch Weglassen variiert werden, bestimmte der Paritätsbits P1, P2, P3, ... gemäß einer Lösch- oder "Durchbrechungs"-Strategie zu übertragen. Beispielsweise dann, wenn nur P1 nach einer bestimmten Registerverschiebung übertragen wird, wird die Anzahl von Ausgangsbits, die von den durch die Registerabgriffe ausgewählten N1 Eingangsbits abhängen, um 1 reduziert. N1 Eingangsbits erhalten somit einen etwas geringeren Schutz. Diese können derart angeordnet werden, dass sie Bits einer etwas niedrigeren Wahrnehmungssignifikanz sind. Andererseits kann es dann, wenn ein drittes Paritätsbit P3, das von N3 Registerabgriffen abhängt, berechnet wird, aber nicht normal übertragen wird, zusätzlich übertragen werden, wann immer es erwünscht ist, N3 der Eingangssprachbits einen größeren Schutz zuzuteilen. Somit kann durch Weglassen, bestimmte Paritäten zu einigen Zeitpunkten zu übertragen, und durch Übertragen von zusätzlichen Paritäten zu anderen, ein kontinuierlich abgestuftes Ausmaß an Fehlerschutz für unterschiedliche Eingangsbits zur Verfügung gestellt werden, während noch dieselbe Gesamtanzahl von übertragenen Bits gesendet wird. Die Schutzstufen können gemäß dem Schutz sortiert werden, der zur Verfügung gestellt ist (d. h. gemäß der Anzahl von übertragenen Bits, die von einem jeweiligen Eingangsbit abhängen), und dann auf die Sprachbits abgebildet werden, die in einer Reihenfolge einer Wahrnehmungssignifikanz sortiert sind. Eine detailliertere Erklärung einer Codierung mit punktierter Faltung gemäß einem beispielhaften Ausführungsbeispiel der vorliegenden Erfindung ist nachfolgend beschrieben.
  • Wenn Sprache durch fortentwickelte Techniken mit niedriger Bitrate digitalisiert wird, haben nicht alle Bits die gleiche Wahrnehmungssignifikanz. Daher kann beim Übertragen der digitalen Sprache über einen Schwund- bzw. Fading-Funkkanal ein Anpassen des Ausmaßes an Fehlerkorrektur-Codierschutz an jedes Bit gemäß seiner Wahrnehmungssignifikanz die optimale Ausnutzung von Bandbreite sein.
  • Beispielsweise soll angenommen sein, dass Codes mit der Rate 1/3, 1/2 und 2/3 rds verfügbar sind, sowie keine Codierung (Rate 1), und dass 163 Bits zu 288 Bits für eine Übertragung alle 40 mS codiert werden müssen.
  • Ein Bezeichnen der Bits, die jeweils durch die Rate 1/3, 1/2 und 2/3 rds und 1 codiert sind, durch a, b, c und d liefert das folgende System von Gleichungen: a + b + c + d = 163 und 3a + 2b + 1,5c + d = 288 daher gilt: 1a + b + 0,5c = 125
  • Unter der Annahme, dass nur die signifikantesten 11 Bits den extremen Schutz der Rate 1/3 garantieren, d. h. a = 11; gilt dann folgendes: b + 0,5 c = 103 oder 2b + c = 206
  • Somit ist die absolute maximale Anzahl b der mit der Rate 1/2 codierten Bits 103, wenn c = 0. Somit existieren die folgenden Möglichkeiten:
  • Figure 00160001
  • Es existieren andere Möglichkeiten mit unterschiedlichen Werten von "a". Der maximale mögliche Wert von "a" ist 62, was folgendes ergibt:
  • Figure 00160002
  • Wenn einige der 99 nicht codierten Bits zu wahrnehmungssignifikant sind, um keine Codierung zu tolerieren (d. h. 8–10% BER), dann kann "a" beispielsweise durch Transferieren von "a" Bits zu "b" Bits reduziert werden:
  • Figure 00160003
  • Die letztere Möglichkeit stellt vielleicht die gleichmäßigste Verteilung von Bits zwischen den vier möglichen Schutzpegeln dar.
  • Viele unterschiedliche Arten zum Anwenden der obigen ungleichen Schutzebenen können erdacht werden. Beispielsweise dann, wenn eine Faltungscodierung verwendet wird, ist es äußerst wünschenswert, den Zusatz von Endbits zu vermeiden. Endbits können entweder durch Verwenden eines kontinuierlichen Faltungs-Codierens/Decodierens oder durch ein Beschneiden des Endes bzw. ein Abbeißen des Endes vermieden werden.
  • Das in der Zeile (1) einer Bitzuteilung gezeigte letztere Beispiel wird zum Beschreiben eines kontinuierlichen Faltungscodierens verwendet werden. Dabei sind 33 Bits pro 40 mS mit einer Rate von 1/3 rd zu schützen. Die 33 Bits von jedem Sprachframe mit 40 mS werden aneinandergekettet, um einen kontinuierlichen Eingangsbitstrom zu einem Faltungscodierer mit optimierter Rate 1/3 rd zu bilden. Die 99 Bits pro 40 mS, die aus dem Codierer ausgegeben werden, werden sowohl innerhalb von TDMA-Bursts als auch zwischen Bursts zur Übertragung verschachtelt. Die Verschachtelung sollte nur durch die Sprachverzögerung beschränkt sein, die toleriert werden kann.
  • Gleichermaßen werden die 36 Bits von jedem Frame für einen Schutz der Rate 1/2 verkettet, um eine kontinuierliche Bitstromeingabe zu einem Codierer mit einer optimierten Rate von 1/2 zu bilden. Die 72 Bits pro 40 mS, die ausgegeben werden, sind sowohl innerhalb als auch zwischen Frames mit den anderen Codierer-Ausgangsbits verschachtelt.
  • Die 46 mit einer Rate von 2/3rds geschützten Bits werden mit gleichen bzw. ähnlichen Blöcken verkettet, um die Bitstromeingabe zu einem Codierer mit einer Rate von 2/3rds zu bilden, der eine Ausgabe von 69 Bits pro 40 mS erzeugt. Diese werden auch mit den vorherigen Codiererausgaben zusammen mit der nicht codierten Information von 48 Bits/40 mS verschachtelt, was insgesamt übertragene 88 Bits pro 40 mS ergibt.
  • Ein potentieller Nachteil dieses Verfahrens ohne CRCs besteht darin, dass der Decodierer mit einer Rate von 1/3rd beispielsweise nicht sicherstellen kann, dass er einen 33-Bit-Block richtig decodiert hat, bis er einige Bits vom nächsten Frame empfangen hat, um den Decodierer auszuräumen. Somit kann eine Zusatzverzögerung beim Empfänger eingeführt werden. Dies kann entweder durch bloßes Verwenden der Bits entsprechend dem besten Maß vermieden werden, das nicht optimal sein kann, oder durch Hinzufügen eines CRC, der auf jeden Viterbi-Zustand geprüft wird, um ein festeres Indiz für den richtigen Zustand zu ergeben, was unglücklicherweise einen Zusatz hinzufügt und das Ausmaß an möglichem Codierschutz reduziert, oder durch Verwenden von einem "Abschneiden eines Endes", wie es als nächstes beschrieben wird.
  • Gemäß einem weiteren beispielhaften Ausführungsbeispiel der vorliegenden Erfindung werden unter Verwendung eines Faltungscodierens mit einem Abschneiden eines Endes die 33 Bits, die mit einer Rate von 1/3rd zu codieren sind, derart angesehen, dass sie in einem geschlossenen Kreis angeordnet sind. Ein Faltungscodierer mit der Beschränkungslänge 6 würde beispielsweise mit den Bits 0 bis 5 beginnen bzw. starten und aus ihnen drei codierte Bits erzeugen. Der Prozess würde sich dann für eine Stufe um den Kreis bewegen, um drei weitere Bits unter Verwendung der Bits 1 bis 6 zu erzeugen, usw., bis 99 Ausgangsbits erzeugt worden sind, wobei die letzten drei vom Bit 31 und wieder von den Bits 0 bis 4 abhängen. Die 99 Bits werden dann mit der Ausgabe der anderen Codierer für ein Abschneiden eines Endes und den nicht codierten Bits verschachtelt, um einen Frame mit einer Gesamtheit von 288 pro 40 mS zu ergeben. Der Decodierer arbeitet an den empfangenen 99 codierten Bits auf gleiche Weise, die in einem Kreis angeordnet sind, und fährt damit fort, bis alle Bits decodiert worden sind, und etwas darüber hinaus, bis ein zweites Mal decodierte Bits mit bei der ersten Umdrehung decodierten Bits übereinstimmen. Somit kann unter Verwendung eines Abschneidens eines Endes ein Decodieren beendet werden, ohne darauf zu warten, den nächsten Frame zu empfangen.
  • In Wirklichkeit sind Codierer für ein Abschneiden eines Endes eine Form einer Blockcodierung, welche jedoch im Sinne einer Hamming-Distanz nicht optimal sein kann. Die 33 Bit-Blöcke sollten natürlich Idealerweise auf 99 Bits codiert werden, und zwar unter Verwendung eines optimalen Blockcodes (99,33). Decodierer für ein Abschneiden eines Endes und Faltungsdecodierer sind jedoch viel einfacher zu implementieren, als große Blockcodierer und -decodierer.
  • Während ein beispielhaftes Verfahren zum Implementieren einer Mehrfachratencodierung unter Verwendung eines durchbrochenen Faltungscodierens und -decodierens beschrieben worden ist, wird nun gezeigt werden, dass durch ein intelligentes Verschachteln der unterschiedlichen Raten selbst die Fehlerrate der "nicht codierten" Bits wesentlich reduziert werden kann. Ein Faltungscodierer besteht konzeptmäßig aus einem abgegriffenen Schieberegister, durch welches zu codierende Bits verschoben werden. Bei jeder Verschiebung wird eine erste Gruppe von Abgriffen einer Exklusiv-ODER-Verknüpfung unterzogen, um ein erstes codiertes Bit zu erzeugen, wird eine zweite Gruppe von Abgriffen einer Esklusiv-ODER-Verknüpfung unterzogen, um ein zweites codiertes Bit zu erzeugen, etc., bis zu dem erwünschten Ausmaß an Redundanz (d. h. dem reziproken der Rate). Somit ist ein Codierer mit einer Beschränkungslänge von 6 und einer Rate von 1/3rd in 2(b) dargestellt.
  • Es kann bestimmt werden, dass zu dem in 2(b) gezeigten Zeitpunkt die Ausgangsbits gegeben sind durch:
  • Figure 00200001
  • Bei darauffolgenden Zeitpunkten werden die Ausgangsbits gegeben sein durch:
  • Figure 00200002
  • Die übertragenen Bits Pij bei sequentiellen Registerverschiebungen i = 1, 2, 3, etc. können in drei Zeilen j = 1, 2, 3 wie folgt angeordnet werden:
  • Figure 00200003
  • Welche von diesen durch B7 beeinflusst werden, wenn es sich beispielsweise durch das Codierungs-Schieberegister bewegt, kann durch ein Kreuz in dem geeigneten Kasten dieser 3-mal-5-Matrix angezeigt werden:
  • Figure 00200004
  • Somit beeinflusst irgendein Bit, wie beispielsweise B6 eine Anzahl von übertragenen Bits gleich der Anzahl der obigen Kreuze, d. h. 12. Ein Fehler beim Decodieren von B6 würde daher eine Fehlanpassung zwischen 12 der empfangenen Bits und ihre entsprechenden erwarteten Werte verursachen, und es ist somit weniger wahrscheinlich, dass ein Fehler gemacht werden wird.
  • Die Reduzierung bezüglich einer Fehlerrate wird selbst dann noch deutlich groß sein, wenn nicht alle der 12 Pij's, die durch B6 bewirkt werden, übertragen werden. Beispielsweise dann, wenn P11, P22 und P33 nicht übertragen werden, von welchen alle von B6 abhängen, wird die Anzahl von übertragenen Bits, die von B6 abhängen, 9 anstelle von 12 sein. Zur gleichen Zeit reduziert sich die Anzahl von übertragenen Bits, die von B1 abhängen, auf 11, die von B2 abhängen, auf 10, die von B3 abhängen, auf 10, die von B4 abhängen, auf 11 und die von B5 abhängen, auf 10.
  • Allgemein kann es durch Abzielen auf ein Löschen von übertragenen Bits, die von B6 abhängen, eingerichtet werden, dass das Ausmaß an Codierung, welches B6 zugeteilt wird, reduziert wird, während ein geringerer Verlust eines Codierschutzes für benachbarte Bits veranlasst wird. Der einem jeweiligen Datenbit zugeteilte Schutz, das durch einen solchen punktuellen Code codiert ist, kann letztlich auf die Anzahl von übertragenen Bits bezogen sein, die von ihm abhängen, und somit kann dieses Datenbit für ein Sprachbit von entsprechender Wahrnehmungssignifikanz verwendet werden.
  • Wenn ein regelmäßiges Muster von Löschungen verwendet wird, wie beispielsweise durch Löschen von einem Pij aus den dreien in jeder Spalte, wird ein Code mit der Rate 1/2 erzeugt. Das gelöschte P-Bit sollte nicht notwendigerweise immer in derselben Zeile sein, sondern könnte gemäß einem regelmäßigen Durchbrechungsmuster zugelassen sein.
  • Gleichermaßen kann ein Code mit einer Rate von 2/3 durch Löschen von zwei P-Bits aus einer Hälfte der Spalten und von einem P-Bit aus der anderen Hälfte erzeugt werden, so dass drei Bits für alle zwei Codier-Registerverschiebungen übertragen werden. Eine Rate 1 kann durch Löschen von allem außer einem P-Bit in jeder Spalte erzeugt werden. Jedoch ist es interessant, anzumerken, dass die Anzahl von übertragenen Bits, die von einem gegebenen Datenbit abhängen, sich nicht auf Eins reduzieren, wie es für überhaupt keine Codierung der Fall wäre.
  • Wenn beispielsweise die übertragenen Bits folgende sind:
    P11, P22, P23, P41, P53, P62; P71, P82, P93, etc.,
    dann beeinflusst B6 noch sechs übertragene Bits. Wenn diese mit unterschiedlichen TDMA-Frames oder Frequenzsprüngen eines Funkübertragungsformats verschachtelt sind, oder mit unterschiedlichen Positionen innerhalb desselben Frames oder Sprungs, wo ein Fading im Wesentlichen unkorreliert ist, dann wird eine Maßnahme eines Schutzes von B6 gegenüber einem Fading erhalten werden, ohne die Anzahl von übertragenen Bits erhöht zu haben. Eine Viterbi-Abschätzeinheit für eine Sequenz mit maximaler Wahrscheinlichkeit kann noch verwendet werden, um einen solchen Code mit einer "Rate 1" zu decodieren.
  • Der potentielle Vorteil von Codes mit einer Rate 1 von diesem Typ mit einer langen Beschränkungslänge besteht im Ergeben derselben Bitfehlerratenkurve für einen Relais-Fading-Kanal wie für einen statischen Kanal, da die Summe der Relais-Schwundrauschbeiträge zu dem Maß eines gegebenen decodierten Bits durch das zentrale Grenztheorem sich einfach einem Gauß-Rauschen mit derselben mittleren Varianz nähern muss. Ein solches Codieren, das eine Verstärkung ohne eine Bandbreitenexpansion ergeben kann, ist ein neuer Aspekt der vorliegenden Erfindung. Zum effizienten Arbeiten sollten solche mit einer "Rate 1" codierten Bits durch schwerer bzw. stärker codierte Bits begrenzt werden, und allgemein wird ein kontinuierlicher Bereich eines Codierschutzes durch die Erfindung erzeugt, indem Bits mit unterschiedlichen Ausmaßen an Codierung verschachtelt werden. Dies ist gegensätzlich zu der Verwendung nach dem Stand der Technik von durchbrochenen Faltungscodes, die typischerweise alle mit einer Rate von 1/3 codierten Bits miteinander gruppieren, alle mit der Rate 1/2 codierten Bits miteinander, etc., und die "nicht codierten Bits" überhaupt nicht codieren.
  • Gemäß diesem beispielhaften Ausführungsbeispiel wird jedoch ein Durchbrechungsmuster ausgewählt, das zwischen einem Übertragen von allen Paritäten für die am stärkten bzw. schwersten codierten Bits und einem Weglassen von einer oder mehreren Paritäten für die weniger codierten Bits abwechselt. Beispielsweise kann die Anzahl von übertragenen Paritäten für jede Verschiebung in das Codierregister eines zu codierenden neuen Bits gemäß der Sequenz 3,3,2,3,2,1,2,3,2,3,1,1,2,1,2,2,3, ... usw. gewählt werden. Bei Vorgabe eines solchen Durchbrechungsmusters kann die Anzahl von übertragenen Paritäten, die von einem jeweiligen der Ursprungsinformationsbits abhängen, berechnet werden.
  • Beispielsweise kann das
    • Informationsbit 1 12 übertragene Paritäten beeinflussen;
    • Bit 2 10 übertragene Paritäten beeinflussen;
    • Bit 3 7 übertragene Paritäten beeinflussen;
    • Bit 4 11 übertragene Paritäten beeinflussen;
    • Bit 5 9 übertragene Paritäten beeinflussen; usw.
  • Weiterhin werden gemäß diesem beispielhaften Ausführungsbeispiel diese Bits demgemäß sortiert, wie viele übertragene Paritäten von ihnen abhängen, wodurch beispielsweise die folgende Tabelle erhalten wird: Bits, die 12 11 10 9 8 7 6 5 4 3 2 1 Paritäten beeinflussen:
    Figure 00240001
  • In der obigen Tabelle ist angenommen, dass nur sechs Pegel bzw. Ebenen einer Redundanz erzeugt werden, d. h. Informationsbits nicht weniger als 7 und nicht mehr als 12 Paritäten beeinflussen. Dies soll jedoch nicht bedeuten, dass eine Beschränkung impliziert ist, sondern nur dass in der Praxis ein solcher Bereich von Optionen ausreichen kann.
  • Fährt man gemäß diesem beispielhaften Ausführungsbeispiel fort, werden die Informationsbits, wie sie durch den Sprachdigitalisierungsprozess erzeugt werden, gemäß ihrer Wahrnehmungssignifikanz sortiert, d. h. demgemäß, wie störend es für den Hörer klingt, wenn ein bestimmtes Bit fehlerhaft ist. Dies kann im Voraus während des Entwicklungsprozesses bestimmt werden, und zwar vorzugsweise durch subjektive Hörtests unter Verwendung einer Vielzahl von Sprechern und Hörern. Unter der Annahme, dass ein solcher Hörtest das folgende Ergebnis erzeugt, wenn Sprachcodiererbits, die mit c1, c2, c3, etc. bezeichnet sind, durch eine Wahrnehmungssignifikanz von höchster Signifikanz zur niedrigsten sortiert werden:
    c1, c8, c10, c2, c7, c11, c12, c4 c5, c3, c6, c23, c34, c15, c9, ...
  • Das beispielhafte Codiersystem ordnet nun die erste Gruppe von c-Bits (d. h. die am meisten wahrnehmungssignifikante) zu den b-Bits zu, die die größte Anzahl von Paritäten (z. B. 12) beeinflussen, so dass c1, c8, c10, c2 und c7 bei dem obigen Beispiel durch b1, b6, b11, b21 und b24 dargestellt werden würden.
  • Dann werden, wenn der Bitzuteilungsprozess die Anzahl von Bits ausgeschöpft hat, die 12 Paritäten beeinflussen, die Sprachbits, die in einer Signifikanzreihenfolge die nächsten sind, denjenigen zugeordnet, die 11 Paritäten beeinflussen, so dass die Sprachbits c11, c12, c4, c5 und c3 durch den Fehlerkorrektur-Codierprozess durch b4, b9, b14, b18 und b19 dargestellt werden würden. Der Prozess fährt damit fort, Sprachbits von nach und nach niedrigerer Signifikanz zu b-Bits zuzuordnen, die nach und nach weniger übertragene Paritäten beeinflussen.
  • Das obige beispielhafte Ausführungsbeispiel für ein durchbrochenes Codieren konzentriert somit die Leistung des Codierens darauf, wo es am meisten benötigt wird, aber mit einem Abbilden von Sprachbits zu codierten Bits, das einen kontinuierlicheren Bereich eines Codierschutzes als Systeme nach dem Stand der Technik erkennt, die Bits einfach in diejenigen gruppieren, die geschützt werden sollen, und zwar mit einer Codierung mit einer Rate von 1/3, diejenigen, die geschützt werden sollen, mit einer Codierung von einer Rate von 1/2, etc., und diejenigen, die überhaupt nicht codiert werden sollen. Insbesondere kann es gesehen werden, dass gemäß diesem beispielhaften Ausführungsbeispiel keinerlei Sprachbits nötig sind, die nur ein übertragenes Bit beeinflussen.
  • Ein strengeres Entwicklungsverfahren zum Implementieren dieses beispielhaften Ausführungsbeispiels enthält am effizientesten ein Simulieren der Übertragung der codierten Bits, einschließlich eines Verschachtelns, einer Modulation, von Übertragungskanalfehlern, eines Rauschens und einer Interferenz. Viele Frames einer Übertragung werden simuliert, und die mittlere Fehlerwahrscheinlichkeit für jedes codierte Informationsbit b1, b2, b3, etc. berechnet. Diese Bits werden dann durch eine mittlere Fehlerrate vom niedrigsten zum höchsten sortiert, und diejenigen mit der niedrigsten Wahrscheinlichkeit eines Fehlers werden zugeordnet, um Sprachcodierer-Ausgangsbits von größter Wahrnehmungssignifikanz darzustellen, usw., bis herunter zu am wenigstens wahrnehmungssignifikanten Bits, die den codierten Bits zugeordnet sind, die am häufigsten als fehlerhaft beobachtet wurden.
  • Nimmt man wiederum Bezug auf 2(a), werden nach einem Fehlerkorrektur-Codieren die Codierer-Ausgangsbits durch eine Verschachtelungseinheit 22 bezüglich der Zeit verteilt. Die Verschachtelungseinheit 22 stellt sicher, dass benachbarte bzw. angrenzende Bits aus dem Fehlerkorrektur-Codierer 21 nicht benachbart über die Luft übertragen werden, um eine Fehleranhäufung zu vermeiden, die das Risiko eines Verlierens von allen übertragenen Bits erhöhen würde, die von einem bestimmten Sprachbit abhängen, um somit zu verhindern, dass ein Sprachbit entdeckt wird. Weiterhin kann das Verschachtelungsmuster gemäß dem Prinzip gewählt werden, das mit der Hilfe der 1 erklärt ist, so dass die ersten Bits aus dem Codierer 21 am nächsten zu (und vorzugsweise zwischen) bekannten Bits (z. B. Synchronisationsbits) platziert werden, und dann, wenn alle solchen Positionen ausgeschöpft sind, das nächste Bit aus dem Codierer 21 am nächsten zu dem ersten Bit platziert wird, usw. Dieser Typ von Verschachtelungseinheit ist als Blockverschachteler bekannt, weil ein Block von M. N Datenbits in einem Block M Frames platziert wird.
  • Jedoch kann es auch von Vorteil sein, einen sogenannten Diagonalverschachteler oder einen Blockdiagonalverschachteler zu verwenden. Der Blockdiagonalverschachteler kann mit einer Pi/4-DQPSK-Quaternärmodulation verwendet werden, die zwei codierte Datenbits pro übertragenem Symbol trägt, und zwar mit einer diagonalen Verschachtelung über M = 2 Frames. Wenn die zwei Bits eines Symbols mit "ungeradzahligen" und "geradzahligen" Bits bezeichnet sind, kann es vorteilhaft sein, einen Block von codierten Bits über den geradzahligen Bits eines ersten der M Frames und den ungeradzahligen Bits des zweiten der M Frames anzuordnen. Dann wird der nächste Block von codierten Bits über den geradzahligen Bits des zweiten Frames und den ungeradzahligen Bits des nächsten Frames angeordnet, usw.
  • Der Verschachteler 22 kann einen Pufferspeicher enthalten, der einen oder zwei Frames von codierten Sprachbits hält, und wird dann eine Hälfte der codierten Bits eines vorherigen Sprachframes mit einer Hälfe der codierten Bits eines aktuellen Sprachframes für eine Übertragung im aktuellen TDMA-Burst verschachteln. Eine Verwendung eines Zeitvielfachzugriffs ist lediglich beispielhaft, und Fachleute auf dem Gebiet werden erkennen, dass die vorliegende Erfindung auch beispielsweise mit einem Frequenzvielfachzugriff oder einem Codevielfachzugriff verwendet werden kann. Das übertragene Signal kann auch vorteilhaft bezüglich der Frequenz übersprungen werden, so dass die unterschiedlichen Bursts oder Segmente, über welche die Codebits verschachtelt sind, auf unterschiedlichen Frequenzen mit unterschiedlichen, nicht korrelierten Störern sind.
  • Verschachtelte Bits vom Verschachteler 22 werden zur Übertragung unter Verwendung einer gewählten Modulationstechnik in einem Wellenformgenerator 23 in eine Wellenform umgewandelt. Beispielsweise kann eine einer Gauß- Filterung unterzogene minimale Phasenumtastung (GMSK) verwendet werden, wobei eine binäre 1 als eine Phasenänderung von +90 Grad codiert ist und eine binäre 0 als eine Phasenänderung von –90 Grad gegenüber der vorherigen Phase. Bei einer GMSK erfolgen die Phasenänderungen stufenweise, um so viel wie möglich von dem übertragenen Spektrum innerhalb eines zugeteilten Kanals zu enthalten. Die stufenweisen Phasenänderungen werden durch Anlegen eines positiven oder eines negativen Impulses erzeugt, und zwar gemäß der Datenbitpolarität, an ein Gauß-Filter, dessen Ausgabe als eine Rate einer Änderung einer Phase (d. h. eine Frequenzverschiebung) angesehen wird. Diese Rate einer Änderung einer Phase wird dann Modulo-2Pi integriert, und der resultierende absolute Phasenwert unter Verwendung einer Nachschautabelle in Kosinus- oder Sinuswerte umgewandelt, um I- und Q-Quadraturmodulationswerte zu erzeugen. Diese werden durch eine D/A-Umwandlung in analoge Wellenformen umgewandelt, der eine Tiefpassfilterung 24 folgt. Wenn die Gauß-Filterung mit einem finiten Impulsantwortfilter (FIR-Filter) von vernünftig kurzer Impulsantwort angenähert werden kann, z. B. drei Bitperioden, dann hängen die ausgegebenen I,Q-Wellenformen über jeder Bitperiode von einer vergangenen Vorgeschichte der drei Bits ab, und sind somit anzahlmäßig nur acht. Alle acht Wellenformen können vorberechnet werden und in einer Nachschautabelle im Modulations-Wellenformgenerator 23 gespeichert werden und zur Ausgabe gemäß den letzten drei Eingangsbits vom Verschachteler 22 ausgewählt werden.
  • Alternativ kann der Wellenformgenerator 23 eine vier Pegel-Modulation implementieren, wie beispielsweise eine einer Gauß-Filterung unterzogene 4-MSK, bei welcher Paare von Eingangsbits zu einer Zeit in eine der vier Phasenänderungen +45, –45, +135 oder –135 Grad codiert werden. Ein solcher Modulator kann gemäß demselben Prinzip arbeiten, wie es oben zum Erzeugen von 90-Grad-Phasenänderungen im GMSK-Fall umrissen ist.
  • Eine Modulation mit nicht konstanter Amplitude, wie beispielsweise Pi/4-DQPSK, kann auch verwendet werden, bei welcher Paare von Bits zu einer Zeit in einen Vektorübergang von einer vorherigen I,Q-Vektorposition zu einer neuen Position codiert werden, die gegenüber der alten Position um +45 oder +135 Grad gedreht ist. Jedoch werden Übergänge von der alten zu der neuen Position in diesem Fall nicht durch stufenweises Anwenden der Phasendrehung geglättet, sondern vielmehr durch ein Filtern der I,Q-Wellenformen unter Verwendung von beispielsweise einem Kosinusfilter mit Wurzelziehung, wie es im US-T. I. A. standard IS54 für digitale zellulare Telefonsysteme beschrieben ist.
  • Es ist auch möglich, die vorliegende Erfindung mit Modulationsschemen zu implementieren, die eine größere Anzahl von Pegeln als vier haben, wie beispielsweise 8-DPSK oder 16 DQAM. Eine Verwendung einer differentiellen Modulationstechnik ist kein Erfordernis der Erfindung, und ein Fachmann auf dem Gebiet kann auf einfache Weise die Technik an den Fall anpassen, bei welchem Information in einer Sequenz von absoluten Phasenwerten getragen wird, wie beispielsweise P5K, QPSK, 8-PSK oder 16 QAM. Vielmehr lässt die vorliegende Erfindung die Verwendung einer differentiellen Modulation ohne den für gewöhnlich zugehörigen Verlust an Leistung von 3 dB im Vergleich mit einer kohärenten Demodulation zu, während die Analogie bezüglich des Falls einer absoluten oder einer kohärenten Phasenmodulation darin besteht, dass die Erfindung eine Auflösung der für gewöhnlich zugehörigen Phasenvieldeutigkeit ermöglicht bzw. erleichtert.
  • Die durch irgendeines der obigen Verfahren erzeugten I,Q-Modulationswellenformen werden auf einen Quadraturmodulator angewendet, der zusammengesetzt ist aus einem 90-Grad-Phasenteiler 27, Ausgleichsmodulatoren 25, 26, einem Kombinierer 29 und einem Filter 30. Diese Schaltung wendet die I-Modulationswellenform multiplikativ auf eine Kosinus-Trägerwelle bei einer Frequenz an, die durch einen Frequenzsynthesizer 28 bestimmt wird, und die Q-Wellenform auf einen Sinusträger bei derselben Frequenz. Der Kombinierer 29 bildet I·cos(ωt) + Q·sin(ωt), welches die erwünschte modulierte Wellenform ist, aber bei einer Zwischenfrequenz ω. Diese wird dann zu der erwünschten Übertragungsfrequenz unter Verwendung einer heterodynen Mischung in einem Aufwärtswandler 31 mit einem Lokaloszillatorsignal vom Synthesizer 28 umgesetzt. Die Lokaloszillatorfrequenz kann durch eine Steuerung (nicht gezeigt) variiert werden, um eine Übertragung auf unterschiedlichen erwünschten Kanälen zu bewirken.
  • Das Übertragungsfrequenzsignal aus dem Aufwärtsmischer 31 wird durch ein Filter 32 ausgewählt, das andere unerwünschte Frequenzen unterdrückt, und wird dann in einem Leistungsverstärker 33 zu einem erwünschten Übertragungsleistungspegel verstärkt. In einem TDMA-System dirigiert ein TDMA-Zeitgabegenerator die Zeitgabe von Datenflüssen zwischen den unterschiedlichen Blöcken und steuert auch den Leistungsverstärker beim Einschalten und Ausschalten auf eine ruhige Weise mittels eines Aufwärts- und Abwärts-Rampenbildens des Leistungspegels, um spektrale Spritzer in Nachbarkanäle zu vermeiden.
  • Die I,Q-Modulatoren können durch ausgeglichene I,Q-Filter betrieben werden, wie sie beispielsweise im US-Patent US-A-5,530,722 mit dem Titel "Quadrature Modulator with Integrated Distributed RC Filters" beschrieben ist, das am selben Tag wie die vorliegende Anmeldung eingereicht wurde. Ein beispielhaftes Empfänger-Blockdiagramm zum Implementieren der vorliegenden Erfindung wird nun mit der Hilfe der 3 beschrieben werden.
  • Ein Superheterodyn-Empfänger mit einen Antennenfilter 40, einem Verstärker 41 mit niedrigem Rauschen, einem Bildzurückweisungsfilter 42, einem Mischer 43 und einem programmierbar synthetisierten Lokaloszillator 44, 45, 56 wird zum Abwärtsmischen der Frequenz des empfangenen Signals zu einer geeigneten Zwischenfrequenz verwendet, wo sie mit einem Festfrequenz-IF-Filter 46 gefiltert werden kann. Ein integrierter Schaltungs-IF-Chip 48 kann dann dazu verwendet werden, das Signal unter Verwendung eines zweiten Lokaloszillators weiter abwärts zu mischen, welches auch mit der Hilfe einer Frequenzsynthesizer-Steuerschaltung 56 und einem Schleifenfilter 47 synthetisiert werden kann. Das weiter abwärts gemischte Signal wird weiterhin durch den Chip 48 verstärkt und unter Verwendung von zweiten IF-Filtern 49, 50 weiter gefiltert. Das verstärkte Signal wird dann unter Verwendung eines A/D-Wandlers 51 digitalisiert, der vorteilhafterweise die logische Polaritätstechnik verwenden kann, die im US-Patent Nr. 5,048,059 beschrieben ist. Unter Verwendung des logischen Polaritätsverfahrens wird die Endverstärkerstufe zu einer Sättigung getrieben, so dass ein Signal mit einer im Wesentlichen konstanten Amplitude auftaucht, was Information über die Funksignalphase bewahrt, nicht aber seine Amplitude. Die Amplitudeninformation wird separat durch Detektoren erzeugt, die an jeder der internen Verstärkerstufen im IF-Verstärkerchip 48 angebracht sind, um ein Signal zu erzeugen, das ungefähr proportional zum Logarithmus der Amplitude ist, was allgemein als Funksignalstärkeindiz (RSSI = Radio Signal Strength Indication) bekannt ist.
  • Die Phaseninformation wird von der gesättigten Ausgabe unter Verwendung einer A/D-Umwandlungstechnik, wie beispielsweise einer Tiefpassfilterung, gefolgt durch eine Quadraturabtastung und eine A/D-Umwandlung der Abtastungen zum Erhalten von numerischen Werten, die ungefähr proportional jeweils zum Kosinus und zum Sinus der Phase sind, extrahiert, oder durch Verwendung eines direkten Phasendigitalisierers, wie er beispielsweise im US-Patent Nr. 5,084,669 offenbart ist, das den Titel "Direct Phase/Frequency Digitization" hat. Wenn das letztere Verfahren verwendet wird, kann dann der so erhaltene Phasenwert unter Verwendung von beispielsweise Nachschautabellen in Kosinus- und Sinuswerte umgewandelt werden. Der Kosinus- und der Sinuswert werden dann mit dem entdeckten Amplitudensignal multipliziert, um die kartesische komplexe Darstellung des Funksignals zu rekonstruieren. Das Amplitudensignal wird aus dem RSSI-Signal beispielsweise mittels einer antilogarithmischen Nachschautabelle entdeckt.
  • Es ist manchmal wünschenswert, zuerst einen Skalierungswert von den RSSI-Werten zu subtrahieren, wie beispielsweise den größten Wert in einem Block von Signalabtastungen (Blockskalierung), um sicherzustellen, dass die kartesischen Werte innerhalb eines bestimmten Bereichs liegen, z. B. zwischen +1 und –1. Solche Operationen für eine Blockskalierung und eine logarithmische-kartesische Umwandlung werden durch eine digitale Signalverarbeitungseinheit 53 an digitalisierten Signalabtastungen durchgeführt, die in einem Pufferspeicher 52 gesammelt sind. Die digitale Signalverarbeitungseinheit 53 kann auch programmiert sein, um die zum Implementieren der vorliegenden Erfindung aus einer Kombination einer Demodulation und eines Decodierens erforderliche Verarbeitung durchzuführen. Die digitale Signalverarbeitungseinheit 53 kann dann auch einen VSELP- oder einen RELP-Sprachdecodierer zum Umwandeln decodulierter Daten in PCM-Sprachabtasten implementieren, welche dann unter Verwendung eines D/A-Wandlers 54 in eine analoge Sprachwellenform umgewandelt werden.
  • 4 stellt eine beispielhafte Implementierung eines Demodulators gemäß der vorliegenden Erfindung dar. Jede Größe Z in der Spalte von komplexen Matrizen, die mit Z0 bis Z15 markiert sind, ist eine Vielzahl von komplexen Werten, d. h. eine komplexe Vektormatrix, wobei jeder Wert die beste aktuelle Abschätzung des Funksignalvektors genau vor einer zu verarbeitenden Signalabtastung darstellt. Die Anzahl von Z-Werten in jeder Matrix kann gleich dem Zweifachen der Anzahl von bekannten Symbolen sein, die in den Signalbursts enthalten sind, die gerade verarbeitet werden, und zwar in dem Fall einer differentiellen Modulation, oder gleich der Anzahl bekannter Symbole in dem Fall einer absoluten Phasenmodulation.
  • Beispielsweise dann, wenn eine Verschachtelung differenziell codierte Symbole über zwei TDMR-Bursts streut, die mit sechs bekannten Synchronisationssymbolen pro Burst durchsetzt sind, ist die Anzahl von Z-Werten in jeder Matrix, wie beispielsweise Z0, 24. Die Werte stellen Abschätzungen des Signalvektors bei einer Position zur linken bzw. zur rechten eines bekannten Symbols dar. Die Z-Werte werden zu Abschätzungen des Vektors auf jeder Seite des jeweiligen differentiellen Synchronisationssymbols initialisiert. Beispielsweise dann, wenn für das erste differentielle bekannte Symbol im ersten TDMA-Burst bekannt ist, dass es eine +90-Grad-Drehung hat, und die Empfangssignalvektoren vor und hinter dieser bekannten Drehung jeweils Z(i – 1) und Z(i) sind, ist die beste Abschätzung der Phase auf der linken Seite des (d. h. vor dem) Synchronisationssymbols (Z(i – 1) – jZ(i))/2 und ist die beste Abschätzung des Signalvektors auf der rechten Seite des (d. h. hinter dem) Synchronisationssymbols (jZ(i – 1) + Z(i))/2. Das erstere wird durch Drehen von Z(i) in Rückwärtsrichtung über die bekannte 90-Grad-Phasenverschiebung erhalten, um Z(i) mit dem vorherigen Wert Z(i – 1) auszurichten, und darauffolgendes Bilden eines Durchschnitts der beiden. Das letztere wird durch Drehen von Z(i – 1) in Vorwärtsrichtung über die bekannten 90-Grad-Phasenverschiebung erhalten, um Z(i – 1) mit Z(i) auszurichten, und dann durch Bilden eines Durchschnitts der beiden. Später wird beschrieben werden, wie eine Variablenskalierung der Summe eher als ein einfaches Teilen der Summe durch die beiden vorteilhaft sein kann. Die Skalierung sollte tatsächlich in einer gleichen Rauscherwartung bei allen kombinierten Werten resultieren.
  • Ein Wiederholen dieses Prozesses für alle bekannten Werte, wie es in 1 angezeigt ist, stellt Startwerte für die Referenzvektoren Z zur Verfügung. An dieser Stelle sind die Werte Z0, Z1, ..., Z15, die zu unterschiedlichen Hypothesen für die decodierte Sequenz gehören, alle gleich.
  • Eine Decodulation gemäß diesem beispielhaften Ausführungsbeispiel geht nun weiter, wie es folgt. Eine Hypothese für eine übertragene Symbolsequenz, die alle Positionen im Faltungscodier-Schieberegister füllt, wird durchgeführt. Beispielsweise dann, wenn ein Code mit einer Beschränkungslänge von 5 verwendet wird, wird das Schieberegister fünf Stufen haben. Ein Auswählen der Zeile in 4 entsprechend der Hypothese 0000 und ein Bilden einer Hypothese für ein neues 0-Bit ist äquivalent zu einem Bilden einer Hypothese, dass das übertragende Codierregister fünf Nullen bei dieser Stelle enthielt. Die Hypotheseinhalte des Schieberegisters werden dann zum Erzeugen der codierten Bits P1, P2, etc. verwendet, die übertragen worden sein sollten, wenn die Hypothese richtig war. Dies wird durch Einbauen eines Modells des Faltungscodierers in ein Übertragermodell bzw. Sendermodell 60 ausgeführt. Das Übertragermodell 60 enthält auch die bekannten Modulationsparameter, so dass komplexe Signalwerte, die repräsentativ für P1 und P2 sind, vorhergesagt werden können, sowie die Verschachtelungs- oder Bitplatzierungs-Information zum Vorhersagen, wo erwartet werden würde, dass die TDMA-Signalbursts P1, P2, etc. gesehen werden.
  • Die ersten Bits P1, P2, die mit der Hilfe des Modells 60 einer Hypothetisierung unterzogen sind, sind gemäß beispielhaften Ausführungsbeispielen der vorliegenden Erfindung diejenigen, die angrenzend bzw. benachbart zu bekannten Symbolen (z. B. Synchronisationssymbolen) angeordnet sind, und sind die U-Bits mit den Zahlen 1 und 2 in 1. Bei diesem Beispiel liegt U1 zwischen zwei bekannten Symbolen K, und somit entspricht eine der Vektorabschätzungen, die hierin mit ZR bezeichnet sind, in Z0 (weil die aktuelle Hypothese 0000-x ist) dem Vektor auf der rechten Seite von U1 und auf der linken Seite des folgenden bekannten Symbols, und eine weitere, nämlich ZL, entspricht dem Vektor auf der linken Seite von U1 und auf der rechten Seite des vorangehenden bekannten Symbols. Unter der Annahme einer binären Modulation, wie beispielsweise MSK, für dieses Beispiel, wobei eine binäre "1" durch eine +90-Grad-Phasendrehung von einer Abtastung zur nächsten und eine binäre "0" durch eine –90-Grad-Drehung dargestellt ist, würde dann, wenn P1 als "1" hypothetisiert wird, erwartet werden, dass ZR relativ zu ZL um +90 Grad gedreht werden wird. Daher wählt das Modell 60 die geeignete aktuelle Vektorreferenz aus, nämlich ZL aus der Matrix Z0, wendet eine 90-Grad-Drehung auf die Vekaorreferenz an und vergleicht das gedrehte ZL bei diesem ersten darstellenden Beispiel mit dem besten erwarteten Wert ZR auch aus der Referenzmatrix. Später bei der Verarbeitung, wenn alle unbekannten Symbole, die zwischen bekannten Symbolen liegen, verarbeitet worden sind, wird ein Vergleich mit empfangenen Abtastungen durchgeführt werden, die durch die Entschachtelungseinheit vom Pufferspeicher 52 ausgewählt sind, die benachbart zu bereits verarbeiteten Abtastungen liegen.
  • Durch ein Vergleichen von jZL mit ZR in einem Komparator 61 wird der quadratische Fehler |ZR – jZL|2 berechnet. Dieser Fehler ist die Fehlanpassung zwischen dem Signalwert, der erwartet wird, wenn die Hypothese wahr wäre, und dem Signalwert, der aktuell empfangen wird. Die neue Fehlanpassung wird in einem Addierer 62 zu irgendeiner existierenden kumulativen Fehlanpassung (d. h. dem Pfadmaß) addiert, die zu dieser Hypothese gehört, wobei die Pfadmaße anfangs auf Null eingestellt worden sind, um eine neue kumulative Fehlanpassung oder ein neues Pfadmaß zu finden. Der obige Prozess wird für P2 für eine Codierung mit der Rate 1/2 wiederholt, was darin resultiert, dass zwei Bits für jedes Informationsbit übertragen werden. Gleichermaßen wird dieser Prozess für P3, P4, etc. wiederholt, wenn die Codierrate 1/3, 1/4 oder niedriger ist, wobei berücksichtigt wird, wo früher unbekannte Werte durch den Verschachteler platziert wurden, und in Bezug auf ihre nächsten Vektorreferenzen. Beispielsweise wird P2 gemäß 1 in einem TDMA-Burst 2 platziert und entspricht dem mit "2" bezeichneten U-Bit. Seine Fehlanpassung wird analog zu derjenigen für P1 berechnet, aber unter Verwendung der Elemente eines Vektorreferenzfeldes Z0, das aus den bekannten Symbolen K auf einer Seite von U2 berechnet ist.
  • Das neue Pfadmaß wird an dieser Stelle als Kandidatenwert für einen neuen Zustand/Hypothese 0000 angesehen, wenn die Hypothese 1000, der ein neues Bit 0 folgt, ein gleichermaßen möglicher Kandidat ist. Wenn der Faltungscodierer sein Codierungsregister um eine Stelle nach links verschiebt, wird sich 1 oder 0 am weitesten links aus dem Register herausbewegen, was in beiden Fällen 0000 in den vier Positionen am weitesten links lässt. Somit wird ein Kandidatenmaß auf dieselbe Weise wie oben berechnet, aber beginnend mit der Hypothese 1000-0 und unter Verwendung der Z-Werte von Z8 als ihren entsprechenden Referenzvektor. Das zweite Kandidatenmaß vom Addierer 64 wird dann mit dem ersten vom Addierer 62 im Komparator 63 verglichen, und das niedrigere der beiden wird ausgewählt. Wenn der niedrigere Wert vom Addierer 64 kommt, dann wird für die Hypothese 1000-0 bestimmt, dass sie eine bessere Hypothese als 0000-0 ist, und Zustand/Hypothese 1000 wird der "beste Vorgänger" für einen neuen Zustand 0000 genannt. Die Inhalte des "bereits verarbeiteten" Speichers, der zu dem besten Vorgänger gehört, werden dann derart ausgewählt, dass sie die Inhalte des bereits verarbeiteten Symbolspeichers des neuen Zustands 0000 sind, und "1" oder "0" wird von der rechten Seite dieses Speichers aus nach links verschoben, und zwar in Abhängigkeit davon, ob der beste Vorgänger 1000 oder 0000 war. Das niedrigere der Kandidatenmaße wird auch das neue Pfadmaß, und das zu dem besten Vorgänger gehörende Referenzvektorfeld wird nach einem Aktualisieren ausgewertet, um das Referenzvektorfeld für den neuen Zustand zu sein. Das ausgewählte Referenzvektorfeld wird aktualisiert, wie es folgt.
  • Es soll angenommen werden, dass der beste Vorgänger eine Vorhersage für P1 von Binär 0 entsprechend einer Phasendrehung von –90 Grad ergab, und zwar unter der Annahme von beispielsweise einer MSK-Modulation. Dann sollte der Signalvektor auf der rechten Seite U1 um –90 Grad relativ zu dem Signalvektor auf der linken Seite gedreht sein. In der Tat ist im speziellen Fall eines unbekannten Symbols, das zwischen zwei bekannten Symbolen in Sandwichbauweise liegt, wie beispielsweise U1, wobei die Sequenz KUK aus komplexen Signalabtastungen Z(i – 2) auf der linken Seite des ersten K-Symbols, Z(i – 1) zwischen dem ersten K-Symbol und dem U-Symbol, Z(i) auf der rechten Seite des U-Symbols und Z(i + 1) hinter dem zweiten K-Symbol besteht, nun bekannt. Beispielsweise dann, wenn das erste K-Symbol eine MSK-"1" ist, d. h. eine +90-Grad-Phasendrehung, und das zweite K-Symbol, wie U1, eine –90-Grad-Drehung ist, sollten die folgenden Beziehungen Gültigkeit haben:
    Figure 00380001
  • Somit ist eine bessere Abschätzung von Z(i + 1) (zur Rechten des zweiten K-Symbols): Z'(i + 1) = (Z(i + 1) – jZ(i) – Z(i – 1) – jZ (i – 2))/4 (1)
  • Dann folgt, dass bessere Abschätzungen der anderen Werte einfach folgende sind: Z'(i) = jZ'(i + 1); Z'(i – 1) = jZ'(i); Z'(i – 2) = –jZ'(i – 1)
  • Die entsprechenden Elmente in dem Feld bzw. in der Matrix, z. B. Z8, wenn 1000 der beste Vorgänger ist, oder Z0, wenn 0000 der beste Vorgänger war, werden somit zu den neuen Werten aktualisiert, bevor sie zu dem neuen Z0-Referenzvektorfeld für einen Nachläuferzustand 0000 werden.
  • Ein Wiederholen des obigen Prozesses für eine neue Bit-Hypothese von "1" anstelle von "0" erzeugt einen neuen Zustand 0001 auf dieselbe Weise. Ein Wiederholen des obigen beginnend mit wiederum Paaren von Hypothesen 0001-1001; 0010-1010; etc. erzeugt dann den Rest der neuen Zustände, so dass es am Ende einer Iteration dieselbe Anzahl von neuen Zuständen (16 bei diesem Beispiel) wie zu Beginn gibt.
  • Die obige Prozedur wird zum sequentiellen Verarbeiten der empfangenen Abtastungen in der in 1 bezeichneten Reihenfolge verwendet, nämlich U1, U2, ..., etc. Es kann gesehen werden, dass dieser beispielhafte Prozess Abtastungen sorgfältig verarbeitet, die zwischen zwei bekannten Symbolen vor anderen Abtastungen liegen, jedoch ist dies nur ein möglicher Aufbau. Wenn Symbole, die in diesen Positionen liegen, ausgeschöpft worden sind, wie es beispielsweise hinter der Symbolnummer U12 in 1 erfolgt, werden die ersten hypothetisierten Datenbits sich um eine Anzahl von Positionen von rechts nach links bewegt haben, um in den Speicher für ein "bereits verarbeitetes Symbol" einzutreten und mehr oder weniger fest bestimmt zu werden. Wenn beispielsweise ein entsprechendes Symbol bei derselben Position in allen Speichern übereinstimmt, dann ist es fest entschieden. Je länger ein Symbol in seinem Durchlauf von rechts nach links überlebt hat, umso größer ist die Chance, dass entsprechende Symbole übereinstimmen werden, und zwar aufgrund des kontinuierlichen Überschreibens der Speicherinhalte durch den besten von zwei möglichen Vorgängern. Auf dieselbe Weise werden die unter Verwendung dieser Symbolhypothese berechneten Vektorreferenzen sicherer geworden sein, so dass der Referenzwert, der bei einer Verarbeitung von U13 verwendet werden wird, welcher sich von bereits verarbeiteten Werten von U1, U5, U9 und vier bekannten Symbolen K ableitet, für die letzten 12 verarbeiteten Symbole überlebt haben wird, und somit eine geringere Wahrscheinlichkeit dafür haben wird, dass er nicht richtig ist. Auf diese Weise enthält die zum Decodieren des Symbols U13 verwendete Vektorreferenz weniger Unsicherheit aufgrund eines Rauschens, als sie es basierend auf dem einzigen K-Symbol zu ihrer Rechten gehabt hätte. Auf dieselbe Weise leitet sich die zum Decodieren von U14 im TDMA-Burst 2 verwendete Vektorreferenz von bereits verarbeiteten Symbolen U2, U6, U10 und den vier K-Symbolen im Burst 2 ab, usw., für Signalabtastungen bis zu U20.
  • An dieser Stelle gibt es keine weiteren unbekannten Symbole, die neben den bekannten Symbolen liegen, aber ein Symbol U21 liegt zur linken einer bereits verarbeiteten Symbolkette (beim Lesen von links nach rechts im Burst 1), nämlich U13, K, U1, K, U5, K, U9, K, U17. Somit existiert eine Vektorreferenz in jedem Zustand, der auf den vorherigen Hypothesen basiert, die zum Gelangen zu diesem Zustand durchgeführt sind. Wenn die Hypothesen wahr sind, wird die Vektorreferenz genau sein, was zu einer genauen Vorhersage von U21 führt, und somit zu einem geringen Hinzufügen zu dem Pfadmaß beim Verarbeiten von U21. Wenn andererseits die Hypothesen Fehler enthalten, wird die Vektorreferenz nicht so genau sein, und wird U2l nicht so genau vorhergesagt werden, und eine größere quadratische Fehlanpassung wird hinzugefügt werden, was die Wahrscheinlichkeit reduziert, dass der Zustand als "bester Vorgänger" überleben wird.
  • Ein herkömmliches differentielles Decodieren leidet normalerweise an einem Verlust von ungefähr 3 dB aufgrund dessen, dass der Referenzvektor ein gleiches Ausmaß an Unsicherheit aufgrund eines Rauschens wie die Signalabtastung, die gerade verarbeitet wird, hat. Unter Verwendung des oben beschriebenen erfinderischen Demodulators wird dieser Verlust in großem Ausmaß vermieden, da der Referenzvektor auf einer Anzahl von bereits verarbeiteten Signalwerten basiert, deren Unsicherheit durch die Faltungsdecodierung reduziert worden ist. Eine intelligente Auswahl des Verschachtelungsmusters, so dass ein nächstes Symbol, das zu verarbeiten ist, angrenzend bzw. benachbart zu einem bereits verarbeiteten Symbol liegt, lässt eine progressive Erweiterung des Decodulationsprozesses auf irgendeine Anzahl von unbekannten Symbolen zu, während der Vorteil eines reduzierten Rauschens beibehalten wird. Es ist wünschenswert, eine Decodulation durch Verarbeiten unbekannter Symbole zu beginnen, die am nächsten zu bekannten, z. B. Synchronisationssymbolen, liegen, da die Reduzierung von Rauschen für diese Symbole direkt erhalten wird.
  • Eine der Aufgaben der vorliegenden Erfindung besteht im Ermöglichen bzw. Erleichtern einer differentiellen Modulationstechnik, die weniger empfindlich gegenüber einer Zeitvariation des Kanals als die alternative kohärente Demodulationstechnik ist. Wenn der Kanal schnell variiert, und zwar über dem Raum von einigen Symbolen, ist eine gewisse Modifikation für das Verfahren zum Aktualisieren der Vektorreferenzen nötig, um die Tatsache zu berücksichtigen, dass die angenommenen Vektorbeziehungen, die beispielsweise in Gleichung (1) ausgedrückt sind, ungenau sein können. Aufgrund eines Mehrwegeschwunds bzw. Mehrwege-Fadings werden sich der Ausbreitungsverlust und eine Phasenverschiebung durch den Funkkanal mit der Zeit ändern, so dass Gleichungen, wie beispielsweise (1), modifiziert werden sollten, um irgendeine Form eines exponentiellen Vergessens und/oder Einbauens der abgeleiteten Abschätzungen zuzulassen.
  • Eine Ableitungsabschätzung kann beispielsweise durch Annehmen eingebaut werden, dass sich der Kanal-Ausbreitungsverlust um dA Knoten pro Symbol ändert (d. h. die empfangene Amplitude wird ein Symbol später um den Faktor EXP (dA) höher sein), und dass sich die Phase pro Symbol um dTHETA ändert. Diese Annahmen können dadurch kombiniert werden, dass gesagt wird, dass der Kanal ein Symbol später durch den komplexen Multiplikationsfaktor Q = EXP(dA + jdTHETA) modifiziert werde wird. Die Gleichung (1) sollte dann wie folgt gelesen werden: Z'(j + 1) = (Z(i + 1) – jQ·Z(i) – Q2·Z(i – 1) – jQ3·Z(1 – 2)/4 (2)
  • Es kann auch wünschenswert sein, dass weitere Amplitudengewichte in der obigen Kombination enthalten sind, um die stärker empfangenen Abtastungen höher als die weniger stark empfangenen Abtastungen zu gewichten, und die Ableitung von solchen Gewichten zum Maximieren der Signal-zu-Rausch-Erwartung bei dem Ergebnis wird von Fachleuten auf dem Gebiet ableitbar sein, und dies wird demgemäß hierin nicht weiter diskutiert.
  • Ein geeigneter Wert von Q kann für jeden Zustand berechnet werden und zusammen mit den entsprechenden Referenzvektorfeldwerten für diesen Zustand gespeichert werden. Der Wert von Q für einen Zustand wird dadurch abgeschätzt, dass angenommen wird, dass die bereits verarbeiteten Symbole in diesem Zustand und die aktuelle Hypothese wahr sind. Die nominellen Vektordrehungen, die für diese Symbole erwartet werden, können dann entfernt werden, wobei nicht modulierte Werte zurückgelassen werden, die nur von der Variation aufgrund des Kanals abhängen.
  • Das exakte Verfahren zum Bestimmen der Kanalvariation ist nicht wesentlich für die vorliegende Erfindung und könnte beispielsweise ein bestes Anpassen einer einheitlichen Driftrate an die Phase, eine Tiefpassfilterung der nicht modulierten Werte unter Verwendung eines Filters mit einer Bandbreite, die nur zum Durchlassen der maximalen erwarteten Dopplerfrequenz ausreichend breit ist, oder eine Kalman-Filterung enthalten.
  • Ein weiteres beispielhaftes Ausführungsbeispiel der vorliegenden Erfindung vermeidet den Schritt zum Speichern und Aktualisieren von Referenzvektorwerten durch Berechnen von ihnen "im Vorübergehen". 5 zeigt eine beispielhafte Modifikation des Blockdiagramms der 4 für dieses Ausführungsbeispiel.
  • Gemäß 5 ist eine Referenzvektor-Abschätzeinheit 65 im Vergleich zu 4 hinzugefügt worden, und die Spalte von Referenzvektormatrizen ist entfernt worden. Bei dem vorangehenden Betriebsbeispiel war ein Decodieren eines unbekannten Symbols U13 mit der Hilfe eines Referenzvektors durchzuführen, der unter Verwendung von bereits verarbeiteten Symbolen U1, US und U9 sowie einigen bekannten Symbolen abgeleitet ist. Der Einfachheit halber ist die Referenzvektor-Abschätzeinheit 65 derart gezeigt, dass sie bereits verarbeitete Symbole U1, U5 und U9 von dem Speicher für "bereits verarbeitete Symbole" erhält, obwohl dieser Speicher nicht notwendigerweise U1, U5 und U9 enthält, sondern eher decodierte Symbole. Unter Verwendung von beispielsweise eine Faltungscodierung mit einer Rate von 1/2 können die "bereits verarbeiteten Symbole" nur halb so viele decodierte Symbole wie codierte (U-)Symbole enthalten. Nichts desto weniger können die codierten (U-)Symbole unter Verwendung eines Modells des Sendercodierers aus den decodierten Symbolen rekonstruiert werden. Alternativ kann dieses erneute Codieren kontinuierlich durchgeführt werden, so dass die erforderlichen U-Werte in den Speichern für "bereits verarbeitete Symbole" gespeichert werden. Genauso wie die U-Werte verwendet die Referenzvektor-Abschätzeinheit 65 die entsprechenden empfangenen Abtastwerte. Diese sind der Einfachheit halber nicht derart gezeigt, dass sie an einem Block 65 angelegt sind, sondern können beispielsweise in einer 17-ten Zeile des Symbolspeichers unterhalb entsprechender U-Symbole gespeichert sein. Die Abschätzeinheit 65 bildet die Referenzvektorabschätzungen durch Drehen von Signalabtastungen unter Verwendung eines entsprechenden U-Symbols, um die Richtung und das Ausmaß einer Drehung zu bestimmen, und dann unter Bildung einer gewichteten Summe, einschließlich irgendwelcher Signalabtastungen in Bezug auf umfasste bekannte Synchronisationssymbole. Die verwendeten Gewichtungen können ein progressives exponentielles Vergessen von älteren Werten berücksichtigen, um die Zeitvariation des Kanals zu berücksichtigen.
  • Einigen der Konzepte, die bei beispielhaften Decodulationssystemen und -verfahren gemäß der vorliegenden Erfindung verwendet werden, sind individuell Namen zugeteilt worden, die von Fachleuten auf dem Gebiet erkannt werden. Wenn beispielsweise ein U-Wert, der zum Berechnen einer Referenzvektorabschätzung verwendet wird, nur auf Symbolen in dem Abschnitt basiert, der mit "aktuelle Symbolhypothese" markiert ist, sind alle möglichen Hypothesen innerhalb dieses Abschnitts noch offen, und dieser U-Wert bildet einen Teil des sequentiellen Abschätzungsprozesses für eine maximale Wahrscheinlichkeit der Maschine. Ein solcher U-Wert wird demgemäß gemeinhin als "Abgriff für eine maximale Wahrscheinlichkeit" oder "Viterbi-Abgriff" bei dem Symbolspeicher, der als Schieberegister angesehen wird, genannt. Wenn ein U-Wert, der zum Berechnen einer Referenzabschätzung verwendet wird, aus der Seite am weitesten links des Symbolspeichers genommen wird, wo alle entsprechenden hypothetisierten Symbole zu einer einzelnen Entscheidung konvergiert sind, wird es ein Entscheidungsrückkopplungsabgriff (DFE-Abgriff) genannt. Wenn jedoch der U-Wert auf der linken Seite von "aktuelle Symbolhypothesen" genommen wird, aber zur Rechten von der Stelle, wo Symbolwerte zu demselben Wert konvergiert sind, wird er ein "Nach-Überlebender"-Abgriff genannt, und seine Verwendung wird "Verarbeitung für ein Überleben" genannt, um anzuzeigen, dass jede Hypothese oder jeder Zustand einen anderen "späteren Überlebenden" hat, der in die aktuelle Maßberechnung eintritt. Die systematische Kombination von Viterbi-Abgriffen, DFE-Abgriffen und Nach-Überlebender-Abgriffe werden, wie es oben beschrieben ist, bei beispielhaften Ausführungsbeispielen der vorliegenden Erfindung zum Berechnen von Referenzvektoren für eine differentielle Demodulation und Decodierung verwendet.
  • Eine alternative Offenbarung bzw. Erscheinung der Erfindung wird nun mit der Hilfe der 6 dargestellt werden. 6 stellt die Anordnung eines ersten Blocks von Datenbits a1, a2, a3, ... zwischen zwei übertragenen Blöcken A und B dar. Die ungeradzahligen Bits a1, a3, a5, ... sind in einem ersten übertragenen Block A zwischen geradzahligen Bits x2, x4, x6, ... eines vorherigen Datenblocks angeordnet. Die geradzahligen Bits a2, a4, a6, ... sind zwischen ungeradzahligen Bits eines Datenblocks b1, b2, b3, b4, ... in einem zweiten übertragenen Block B angeordnet. Die übrigen, nämlich die ungeradzahligen Bits des Datenblocks b1, b2, b3, ... sind in einem dritten übertragenen Block zwischen ungeradzahligen Bits eines neuen Datenblocks c1, c2, c3, ... angeordnet usw.
  • Die Datenbits x1, x2, x3, ..., a1, a2, a3, ..., b1, b2, b3, ..., c1, c2, c3, ... sind die sequentiellen Ausgangsbits eines Fehlerkorrektur-Codierers vom vorgenannten Typ, z. B. eines Codierers für eine durchbrochene Faltung. Die Bits werden auf eine Funkfrequenzwelle durch eine differentielle Phasenmodulationstechnik mit entweder einer konstanten oder einer variablen Amplitude moduliert, wie beispielsweise GMSK, DPSK, DQPSK, etc., um komplexe Vektorwellenformen für eine Übertragung mit Abtastwerten z1, z2, z3, ... bei datensymbolbeabstandeten Intervallen zu erzeugen. Somit wird das Symbol a2 in 6 in die Phasenänderung zwischen Vektorabtastungen z1 und z2 codiert, wird das Symbol b2 in die Phasenänderung zwischen Vektorabtastungen z2 und z3 codiert, etc.
  • Eine Decodulation dieses Formats geht gemäß diesem beispielhaften Ausführungsbeispiel der Erfindung weiter, wie es folgt. Es soll angenommen werden, dass der vorherige Block von Bits x1, x2, x3, ... durch den Fehlerkorrektur-Codierer gelassen worden ist und decodiert worden ist. Es soll weiterhin angenommen sein, dass eine richtige Decodierung zu einer hohen Wahrscheinlichkeit verifiziert worden ist, und zwar durch Verwenden einer Fehlererfassungstechnik, wie beispielsweise eines Testens eines sorgfältig eingefügten zyklischen Redundanz-Codes (CRC). Dann sind die Bits x2, x4, x6, ... im übertragenen Block A bekannt. Da X2 bekannt ist, ist somit die Phasenänderung von der komplexen Abtastung u1 zu u2 bekannt, und ein empfangener Vektorwert u1 kann durch diese bekannte Phasenänderung in Vorwärtsrichtung gedreht werden, um u1 mit u2 auszurichten. Die beiden werden dann addiert, um eine bessere Abschätzung des Vektors am Anfang eines differentiellen Symbols a1 zu erhalten.
  • Gleichermaßen ist deshalb, weil x4 bekannt ist, die differentielle Phase zwischen u3 und u4 bekannt, was zulässt, dass eine empfangene Abtastung u4 über diesen bekannten Winkel in Rückwärtsrichtung gedreht wird, um sie mit u3 auszurichten und zu dieser zu addieren, um dadurch eine bessere Abschätzung des Vektors u3 am Ende des Symbols a1 zu erhalten. Unter Verwendung dieser verbesserten Abschätzungen des Vektors auf jeder Seite von a1 lässt zu, dass a1 mit einer Verstärkung von beispielsweise 3 dB codiert wird, d. h. der normale differentielle Verlust wird um diese Verstärkung von 3 dB kompensiert, so dass die ungeradzahligen Symbole a1, a3, a5, ... so zu verlässig decodiert werden, als ob der Prozess ein Prozess einer kohärenten Modulation und Demodulation wäre. Unglücklicherweise ist diese Verstärkung noch nicht für die geradzahligen Symbole a2, a4, a6 verfügbar, da ihre Nachbarn b1, b3, b5, ... noch nicht decodiert sind. Jedoch wird die Hälfte der Symbole a1, a3, a5 in den Fehlerkorrektur-Decodierer durch das zuverlässigere Verfahren abgeschätzt worden sein, während die abwechselnden bzw. die anderen Symbole a2, a4, a6 die normale differentielle Leistung zeigen werden. Das Ergebnis besteht darin, dass der Datenblock a1, a2, a3, a4, ... mit einer Zuverlässigkeit decodiert werden wird, die etwa auf dem halben Weg zwischen derjenigen einer kohärenten und differentiellen Modulation und Demodulation ist.
  • Nach einem Decodieren des Blocks wird er infolge zu dem Fehlererfassungstest geführt, um zu bestimmen, ob er als ein bekannter Block angesehen werden, und zwar zum Zwecke eines Decodierens der Bits b1, b3, b5, etc.
  • Gemäß einem weiteren beispielhaften Ausführungsbeispiel können die "a" Bits decodiert werden, nachdem die "b" Bits decodiert worden sind. Zu dieser Zeit werden die geradzahligen Bits "a" auch durch bekannte Bits b1, b3, b5, ... umgeben sein, so dass das zuverlässigere Decodierverfahren, das oben beschrieben ist, für sowohl ungeradzahlige als auch geradzahlige Bits von "a" verfügbar ist, und eine vollständige Verbesserung von 3 dB bei einer Leistung ist durch eine solche Retrospektive oder "Mehrfachdurchlass"-Demodulation erreichbar. Es ist zu beachten, dass dieser Prozess iterativ erweitert werden kann, so dass eine Zwerfachdurchlass-Demodulationstechnik "a" Bits wieder nach einem Decodieren von "b" Bits decodiert, und eine Dreifachdurchlass-Demodulationstechnik "b" Bits wieder nach einem Decodieren von "a" Bits für ein erstes Mal decodiert, und dann "a" Bits von einem dritten Mal nach einem Decodieren von "b" Bits für ein zweites Mal, etc. Wenn ein CRC-Fehlererfassungscode bei dem gesamten Datenblock verwendet wird, kann es wertvoll sein, eine Demodulation für nur diejenigen Blöcke von Bits zu wiederholen, die bei der CRC-Prüfung bei einer früheren Gelegenheit fehlerhaft waren. Somit ist ein beispielhaftes Ablaufdiagramm für einen Mehrfachdurchlass-Decodulationsprozess in 7 dargestellt.
  • Die Eintrittsstelle zu einem Schritt 100 erfolgt dann, wenn ein zuvor decodierter Block die CRC-Prüfung durchlaufen hat. Der nächste Block kann somit unter Verwendung des vorherigen Blocks, der nun bekannt ist, decodiert werden. Wenn der neue Block bei einem Schritt 102 auch die CRC-Prüfung durchläuft, dann wird der neue Block bei einem Block 104 einfach der vorherige Block, und der Algorithmusprozess springt zurück zum Schritt 100, um den nächsten Block zu decodieren.
  • Wenn jedoch die CRC-Prüfung im Schritt 102 fehlschlägt, dann wird die Blocknummer (k), bei welcher der Fehler erfasst wird, auf eine Markierervariable bei einem Block 106 eingestellt. Es ist zu beachten, dass der vorherige Block zu der Blocknummer (k) die CRC-Prüfung durchlief. Bei einem Schritt 108 wird der nächste Block (j) ohne den Vorteil decodiert, dass der vorherige Block (j – 1) (was für die erste Iteration gleich k ist) bekannt ist. Dann wird bei 110 bestimmt, ob der Block (j) richtig decodiert ist. Wenn der Block (j) nicht richtig decodiert ist, wird j im Schritt 112 inkrementiert, und der nächste Block wird bei 108 decodiert. Wenn schließlich ein Block (j) richtig decodiert ist, dann wird der frühere Block j – 1 durch Dekrementieren von j in einem Schritt 114 decodiert. Wenn der frühere Block (j) nicht der ursprünglich erfasste schlechte Block (k) ist, wie es in einem Block 116 bestimmt wird, gibt es einen vorangehenden schlechten Block (j – 1), so dass der frühere Block (j) mit dem Vorteil decodiert werden kann, dass der darauffolgende Block (j + 1) bekannt ist, aber nicht der vorangehende Block (j – 1), und zwar in einem Schritt 118. Wenn andererseits erfasst wird, dass die Variable j zu der Zahl k des ursprünglichen, zuerst erfassten schlechten Blocks im Schritt 116 zurückgekehrt ist, dann tritt eine Verzweigung zu einem Schritt 120 auf, wobei der ursprüngliche schlechte Block (k) mit dem Vorteil decodiert wird, dass sowohl der folgende als auch der vorangehende Block bekannt sind, und somit ist eine vollständige Verstärkung von 3 dB verfügbar, um eine höhere Wahrscheinlichkeit zum richtigen Decodieren für das zweite Mal durch diesen Prozess zu ergeben. Gleichgültig ob die CRC-Prüfung am Block (k) im Schritt 120 eine Prüfung durchführt oder nicht, kann keine weitere Verbesserung erwartet werden, und in den Schritten 124 und 126 springt der Algorithmus nun hinter den höchsten Block voraus, der bis jetzt richtig decodiert ist, und springt zurück zum Schritt 100.
  • Gleichermaßen springt in einem Block 128, wenn ein zuvor schlechter Block, der wiederum mit der Hilfe eines nun bekannten folgenden Blocks decodiert ist, keine weitere Verbesserung zeigt, der Algorithmus zum Block 124 voraus und dann voraus hinter den richtig decodierten Block mit der höchsten Nummer, und springt zurück zum Schritt 100.
  • Es wird erkannt werden, dass eine Verwendung einer CRC-Prüfung einfach ein beispielhaftes Kriterium dafür ist, zu bestimmen, ob ein decodierter Block dazu verwendet werden kann, beim Decodieren eines folgenden Blocks oder beim erneuten Block eines vorherigen Blocks zu helfen, oder um zu bestimmen, ob ein zu vor decodierter Block überhaupt erneut decodiert werden muss. Andere Kriterien können jedoch verwendet werden, wie beispielsweise das Pfadmaß-Wachstum über einem Block. Wenn das Pfadmaß-Wachstum, das die Differenz zwischen dem besten Pfadmaß beim Beginn eines Decodierens eines Blocks und dem besten Pfadmaß am Ende eines Decodierens eines Blocks ist, innerhalb einer ersten Schwelle ist, kann bestimmt werden, dass der Block gut genug decodiert worden ist, um derart angesehen zu werden, bekannte Daten zum Helfen beim Decodieren eines weiteren Blocks darzustellen. Wenn das Pfadmaß-Wachstum außerhalb einer zweiten Schwelle ist, kann bestimmt werden, dass es Wert ist, den Block wieder zu decodieren, wenn ein Pfadmaß-Wachstum eines darauffolgenden Blocks innerhalb der ersten Schwelle liegt. Irgendein Kriterium einer Decodierqualitätssicherung kann verwendet werden, wie beispielsweise die oben beschriebenen beispielhaften Verfahren.
  • Die Verwendung von zyklischen Redundanzprüfcodes ist Fachleuten auf dem Gebiet adäquat bekannt, ohne sie hier detailliert zu beschreiben. CRC-Prüfungen enthalten allgemein ein Berechnen eines Prüfworts oder eines Syndroms, das aus nur Nullen bestehen sollte, wenn kein Fehler vorhanden ist. Bestimmte Nichtnulll-Syndrome können korrigierbaren Fehlern entsprechen, wie beispielsweise Einzelbitfehlern. Ob eine solche weitere Fehlerkorrekturmöglichkeit von CRC-Codes ausgenutzt wird oder nicht ist optional. Die CRC-Prüfung kann für die Zwecke des obigen Algorithmus als richtig bestimmt sein, wenn entweder das Syndrom Null ist oder wenn es gleich einem Wert entsprechend einem korrigierten Fehlermuster ist, wenn eine Fehlerkorrektur durch CRC implementiert ist.
  • Bei der obigen Beschreibung ist angenommen, dass die Fehlerkorrektur-Decodierung nach jeder Stufe einen Schluss erreicht, bei welcher Stelle eine CRC-Prüfung durchgeführt werden kann. Wenn die Fehlerkorrektur-Codierung/Decodierung eine Blockcodierung ist, oder eine Faltungsdecodierung mit Endbits, oder die Technik eines Abschneidens eines Endes verwendet wird, um einen definierten Decodierschluss für jeden Block zu erreichen, dann kann CRC in der Tat an den Ergebnissen geprüft werden. Andererseits erreicht der Decodierer beim Verwenden einer kontinuierlichen Faltungscodierung, wobei jeder nachfolgende Datenblock dem vorherigen Block sequentiell in den Codierer folgt kein konklusives Ergebnis, wenn das letzte übertragene Bit, das von einem codierten Datenbit abhängt, verarbeitet worden ist. An dieser Stelle enthält ein Faltungscodierer typischerweise eine Anzahl von Kandidatenergebnissequenzen, die das beste Ergebnis für jede mögliche Kombination einer Anzahl von bisher unvollständig decodierten folgenden Bits darstellen. Nur dann, wenn ein weiterer Block, der mehrere Hinweise auf diese folgenden Bits enthält, verarbeitet worden ist, wird der wahrscheinlichste Kandidat offensichtlich werden. Es ist jedoch für den Empfänger unerwünscht, auf weitere Daten warten zu müssen, bevor er eine CRC-Prüfung an dem vorherigen Block verarbeiten kann, da dies eine Ausgabe von dem Demodulator verzögern kann, was eine unerwünschte Sprachverzögerung in beispielsweise einem digitalen Sprachübertragungssystem verursacht. Eine tolerierbare Verzögerung ist ein Faktor beim Beschreiben, eine wie große Tiefe für die retrospektive Decodierung, die in 7 beschrieben ist, angenommen werden kann, weshalb eine Leistungsfähigkeit auch von einem Minimieren unnötiger Verarbeitungsverzögerungen abhängt.
  • Andererseits wird eine der verfügbaren Kandidatensequenzen ausgewählt werden, und da diese bezüglich der Anzahl endlich sind und alle innerhalb des Vorgeschichtenspeichers des Viterbi-Decodierers gespeichert sind, kann eine CRC-Prüfung an allen Kandidatensequenzen durchgeführt werden. Dies kann erreicht werden, wie es folgt. Die CRC-Prüfung wird zuerst an dem Viterbi-Zustands-Vorgeschichtenspeicher mit dem besten zugehörigen Pfadmaß durchgeführt. Wenn die CRC prüft, können die Vorgeschichtenspeicherinhalte als das definitive Ergebnis angesehen werden, und sie werden zu einer weiteren Verarbeitung ausgegeben (z. B. einem Sprachdecodieralgorithmus oder einem D/A-Wandler). Dieses Ergebnis kann auch als die bekannte Bitsequenz genommen werden, um beim Decodieren des nächsten Blocks zu helfen.
  • Alternativ dazu wird, wenn die CRC nicht prüfte, der Zustand mit dem zweitbesten Maß geprüft, usw., bis ein Zustand, der die CRC durchläuft, gefunden wird. Bei einem kontinuierlichen Faltungsdecodieren resultiert dies in einer einzigen Startstelle, bei welcher Viterbi-Zustände initialisiert werden, bevor ein Verarbeiten des nächsten Blocks beginnt. Das bedeutet, dass der Vorgeschichtenspeicher und die Maße aller Zustände auf den Wert des Kandidaten eingestellt werden, der die CRC-Prüfung durchlief. Wenn kein Kandidat die CRC-Prüfung durchlief, wird der Frame gemäß dem Ablaufdiagramm in 7 als schlecht bezeichnet, und dann werden entweder die Daten von dem Zustand mit dem besten Maß zur weiteren Verarbeitung ausgegeben, oder wird eine Löschanzeige geliefert, wenn es nicht möglich ist, für eine längere Verzögerung zu warten. Im letzteren Fall kann es natürlich sein, dass es nicht wieder eine Stelle in einer retrospektiven Decodierung eines schlechten Frames gibt, da ein retrospektives oder Zweifachdurchlass-Decodieren insbesondere dann nützlich ist, wenn es zulässig ist, zu warten, bis wenigstens einige neue übertragene Daten empfangen werden.
  • Jedoch selbst dann, wenn ein retrospektives Decodieren nicht nützlich ist, kann die frühe CRC-Prüfung beim Begrenzen der Startzustände des Decodierers zum Decodieren des nächsten Blocks auf diejenigen sein, die die CRC durchlaufen. Somit wird gemäß einem beispielhaften Ausführungsbeispiel der Erfindung eine CRC-Prüfung bei allen Zuständen durchgeführt, und diejenigen, die nicht durchgehen, werden weggeworfen, bis nicht keiner die CRC-Prüfung durchläuft, in welchem Fall alle als Startzustände für jeweilige Viterbi-Zustände des nächsten Decodierzyklus zurückgehalten werden können. Ein einfaches Verfahren zum Wegwerfen eines Zustands besteht im Einstellen seines Pfadmaßes auf einen "schlechten" Wert, z. B. auf einen sehr hohen Wert, was sicherstellt, dass er nicht als ein "bester" Vorgänger für einen Nachläuferzustand ausgewählt werden wird. Somit werden dann, wenn irgendein Zustand die CRC durchläuft, die Pfadmaße von denjenigen, die die CRC nicht durchlaufen, auf hoch eingestellt. Wenn kein Zustand die CRC durchläuft, dann werden ihre Pfadmaße nicht modifiziert als die Startstellen des nächsten Decodierzyklus akzeptiert.
  • Eine weitere Variation modifiziert die Decodierersequenz, so dass nur Zustände, die die CRC-Prüfung durchlaufen, schließlich erzeugt werden können. Wenn die Anzahl von CRC-Prüfbits beispielsweise N ist, dann wird die Decodierersequenz modifiziert, nachdem nur M-N der Ausgangsbits von diesem Block erzeugt worden sind. An dieser Stelle können die linearen Beschränkungen, die die CRC darstellt, zum Berechnen für jeden Zustand von dem verwendet werden, in welchem die übrigen N Bits für die CRC-Prüfung sein müssen. Somit kann dann, wenn das nächste Bit für einen Zustand 00001 sein muss, dieser Zustand kein Vorgänger für einen Zustand 0000 sein, sondern nur für einen neuen Zustand 0001. Wenn der Zustand 1000 auch ein nächstes Bit gleich 1 haben muss, dann kann es entweder kein Vorgänger für den neuen Zustand 0000 sein, sondern nur für den neuen Zustand 0001, so dass es keinen möglichen Vorgänger für den neuen Zustand 0000 gibt, und er nicht erzeugt werden wird. Allgemein ist es nicht möglich zu sagen, wie viele Endzustände, die die CRC durchlaufen, erzeugt werden, sondern es wird immer wenigstens einen geben. Diejenigen, die nicht erzeugt werden, sind diejenigen, die die CRC nicht durchlaufen würden. Das in diesem Fall erzeugte Ergebnis ist nicht dasselbe, das zulässt, dass der Prozess bis zum Ende eines Blocks fortfährt, und dann die Zustände wegwirft, die die CRC nicht durchlaufen. Dies ist deshalb so, weil bei dem letzteren Verfahren ein unrichtiger Zustand 0000 einen richtigen Zustand 1000 als Vorgänger für einen nachfolgenden Zustand 0000 oder 0001 aufgrund dessen überlebt haben kann, dass der unrichtige Zustand nachteiligerweise ein besseres Maß hat. Bei der Alternative akzeptiert der Decodierer nur das schlechtere Maß, weil ein Akzeptieren des besseren Maßes eine Sequenz erzeugen würde, die die CRC-Prüfung nicht durchlaufen könnte.
  • Somit kann das obige beispielhafte Ausführungsbeispiel der Erfindung zum Liefern einer verbesserten Leistungsfähigkeit verwendet werden, wenn ein Fehlerkorrektur-codiertes und differentiell moduliertes Signal decodiert wird. Dieses beispielhafte Ausführungsbeispiel basiert nicht auf einem Einfügen von explizit bekannten Symbolen in das übertragene Signal, mit welchem ein Abschätzen der Phasen- und Amplitudenvariationen des Kanals zu unterstützen sind. Bei dem ersteren Verfahren jedoch, bei welchem explizite bekannte Symbole eingefügt werden, können diese, wie es beschrieben ist, zum Abschätzen der RF-Vektoren auf einer oder einer anderen Seite eines unbekannten Symbols und somit zum Verbessern einer Zuverlässigkeit eines Decodierens von unbekannten Symbolen verwendet werden. Wenn ein benachbartes unbekanntes Symbol decodiert wird, kann es zusammen mit vorherigen bekannten oder decodierten Symbolen zum Abschätzen der Rate verwendet werden, mit welcher der Funkkanal sich bezüglich der Phase und der Amplitude ändert (oder bezüglich eines kartesischen komplexen Werts), und somit zum Helfen bei einem Vorhersagen des Funkkanaleffekts auf die erwarteten Werte einer als nächstes zu decodierenden Abtastung.
  • Obwohl oben mehrere beispielhafte Verfahren zum Schließen auf eine Decodierung eines Datensegments und zum Durchführen einer Fehlerprüfung vor einem Fortfahren beschrieben worden sind, können die Verfahren gemäß der vorliegenden Erfindung auch die Fehlerprüfung weglassen und ein Reduzieren des gerade decodierten Blocks zu einem einzelnen Kandidaten vermeiden. Da jeder Zustand des Decodierers nach einem Verarbeiten von beispielsweise allen "x" Bits ein möglicher Kandidat für das "x"-Ergebnis ist, können diese alle zurückgehalten und als "Nach-Überlebender"-Eingaben für ein Fortführen zum Verarbeiten der "a" Bits verwendet werden. Die Verwendung eines CRC ist somit optional.
  • Verfahren zum Aktualisieren der Kanalmodelle aus dem empfangenen Signal sind, wie es beispielsweise in der schwedischen Patentanmeldung mit der Nummer 90850301.4 beschrieben ist. Diese Verfahren unterhalten ein separates Kanalmodell für jeden Viterbi-Zustand. Wenn einer einer Anzahl von möglichen Vorgängerzuständen ausgewählt wird, um als der beste Vorgänger für einen neuen Zustand zu überleben, wird das Kanalmodell, das zu dem Überlebenden gehört, aktualisiert, um das Kanalmodell für den neuen Zustand zu werden. Auf diese Weise wird sichergestellt, dass die überlebenden Kanalmodelle immer von den besten demodulierten Datensequenzen, die aktuell sind, abgeleitet wurden.
  • Das US-Patent US-A-5 331 666 mit dem Titel "Adaptive Maximum Likelihood Demodulator", das am 08. Juni 1992 vom selben Erfinder und gleichen Zessionär eingereicht ist, beschreibt eine Variation eines adaptiven Viterbi-Entzerrers, der keine Kanalmodelle zum Erzeugen der Vorhersagen verwendet, außer vielleicht für ein anfängliches Hochfahren, und somit wird kein Aktualisieren von Kanalmodellparametern verwendet. Stattdessen verwendet diese Variation ein direktes Aktualisieren der Signalvorhersagen für jeden Zustand, ohne durch den Zwischenschritt von zuerst einem Aktualisieren eines Kanalmodells zu gehen.
  • Das gemeinsam zessionierte US-Patent US-A-5 335 250 mit dem Titel "Bidirectional Demodulation Method and Apparatus", eingereicht am 22. Oktober 1992, beschreibt ein Verfahren zum Minimieren eines Verlustes von intervenierenden bzw. dazwischenliegenden Daten, wenn ein temporärer Signalschwund einen Verlust von einem der Übungsmuster verursacht. Intervenierende Daten können nicht nur in Vorwärtsrichtung aus einem Übungsmuster demoduliert werden, sondern auch in Rückwärtsrichtung aus dem nächsten Übungsmuster, indem zuerst empfangene Signalabtastungen in einem Speicher gespeichert werden und dann die Sequenz bezüglich der Zeit umgekehrt wird, und um Qualitätsabschätzungen einer Demodulation in jeder Richtung herzustellen, indem bestimmt wird, wie viele Datensymbole durch eine Vorwärtsdemodulation und wie viele durch eine Rückwärtsdemodulation decodiert werden sollen.
  • Es sollte beachtet werden, dass die vorliegende Erfindung sowohl auf eine Vorwärtsdecodulation von bekannten "Übungs"-Symbolen als auch auf eine Rückwärtsdecodulation anwendbar ist, aber die Richtung nicht von der Signalqualität abhängig ist, sondern durch das gewählte Verschachtelungsmuster bestimmt wird, wie es in Bezug auf 1 diskutiert ist, wo die Reihenfolge einer Verarbeitung von Rechts nach Links von U13 war, aber von Links nach Rechts von U17, gemäß dem festen Verschachtelungsmuster und nicht variabel in Abhängigkeit von einer Signalqualität. Tatsächlich ist ein Vorteil der vorliegenden Erfindung, dass eine Richtung einer Demodulation nicht mehr ein Punkt ist, da der Demodulationsprozess integriert mit dem Decodieren ist.
  • Alle obigen Verfahren können beispielsweise mit einem Faltungscodieren einer konstanten Rate (z. B. der Rate 1/2 oder der Rate 1/3) oder mit einer durchbrochenen Faltungscodierung einer variablen Rate verwendet werden. Im letzteren Fall können einige Datenbits überhaupt nicht codiert werden, wie beispielsweise dann, wenn ihre Wahrnehmungssignifikanz beim Beeinflussen der Qualität einer digitalen Sprachübertragung nicht hoch ist. Wenn bestimmte Bits nicht durch eine Fehlerkorrekturcodierung geschützt werden, wird ihre Sicherheit durch ein Decodieren nicht verbessert, und somit können sie nicht als bekannte Symbole bei einer späteren Verarbeitung von benachbarten Symbolen angesehen werden. Es ist daher wünschenswert, ein Decodieren eines nachfolgenden Blocks unter Verwendung von nur denjenigen Symbolen zu verbessern, die durch eine Fehlerkorrektur geschützt sind. Dies kann gemäß einem weiteren Aspekt der vorliegenden Erfindung erreicht werden, wobei der differentielle Modulationsprozess zu einem "Überspringen" nicht codierter Symbole modifiziert wird. Dies ist in 8 dargestellt.
  • In 8 zählt im Vergleich mit 7 die Verbindung von u4 zu einem Symbol a3 und von z4 zu einem Symbol b3. Stattdessen ist a3 bezüglich der Phasendifferenz zwischen beispielsweise einem Vektor u2 und u5 codiert und ist b3 bezüglich der Differenz zwischen einem Vektor z2 und z5 codiert. Auf diese Weise werden nicht codierte Symbole x4 und a4 beim Decodulieren codierter Symbole a3 bzw. b3 nicht benötigt. Stattdessen wird die Kombination von Vektoren u5 und u6, die mit der Hilfe eines bereits bekannten Symbols x6 hergestellt ist, mit der Kombination von u1 und u2 verglichen, die mit der Hilfe eines bereits bekannten x2 hergestellt ist. Das Symbol a3 wird somit decodiert, ohne dass x4 bekannt sein muss, und x4 kann somit ein nicht codiertes Bit sein, das durch den Prozess "Übersprungen" wird, der x1, x2, x3, x5, x6, etc. decodiert. Später kann eine bessere Abschätzung des nicht codierten x4-Bits erzeugt werden, nachdem wenigstens das Bit a1 bekannt ist. Auf diese Weise wird eine Verstärkung selbst für nicht codierte Bits erzeugt, während die größere Unsicherheit von nicht codierten Bits verhindert wird, die die Fehlerrate von codierten Bits verschlechtern.
  • Es ist für a3 auch zulässig, dass es bezüglich der Vektordifferenz zwischen u3 und u5 codiert wird, wobei das weniger sichere u4 übersprungen wird. Dann wird ein bekanntes a1 zum Decodieren von a3 verwendet; dies ist jedoch ein Beispiel einer bereits angegebenen "Verarbeitung pro Überlebendem", wobei eine separate Hypothese des a1-Bits in jedem Viterbi-Zustand verfügbar ist und dann verwendet wird, wenn eine a3-Hypothese für den jeweiligen Zustand verarbeitet wird.
  • Beispielsweise soll eine Verarbeitung der Hypothese betrachtet werden, dass ein Zustand 1010 durch ein neues a3 = 0 gefolgt wird. Die vier Bits 1010 stellen für diesen Zustand Hypothesen dar, dass x(n – 1) = 1; x(n) = 0; a1 = 1 und a2 = 0. Somit wird beim Vorhersagen des Werts des komplexen Vektors u5, der empfangen werden sollte, wenn a3 = 0, ein verbesserter u3-Wert unter der Annahme berechnet, dass a1 = 1 so ist, wie es in diesem Zustand gegeben ist, und durch Drehen des zuvor verbesserten u2-Werts in Vorwärtsrichtung über den bekannten Phasenwinkel für a1 = 1, um ihn mit dem empfangenen Wert von u3 auszurichten und zu diesem zu addieren.
  • Bei dem obigen Beispiel war das Verschachtelungsmuster so, dass der erforderliche a1-Wert noch nur eine Hypothese war, die separat für jeden Zustand verfügbar ist, wodurch er eine "maximale Wahrscheinlichkeit" oder einen "Viterbi"-Abgriff abstellt, während andere Verschachtelungsmuster ins Auge gefasst werden können, so dass a1 lange Zeit hatte, seit es aus dem Hypothesebereich des Vorgeschichtenspeichers (der Zustandsnummer) heraus und in den "Nach-Überlebender"-Bereich geführt ist, in welchem Fall unter Verwendung von a1 zum Helfen beim Verarbeiten von a3 ein "Nach-Überlebender-Abgriff" dargestellt haben würde. Unter Verwendung der x-Werte, die eine lange Zeit haben, seit sie decodiert worden sind, um beim Decodieren der "a"-Symbole zu helfen, stellt "Entscheidungsrückkopplungsabgriffe" dar.
  • Die obigen Decodulationsprozesse können auch zum Kompensieren von zeitverzögerten Echos im Funkausbreitungspfad durch Abschätzen der Amplitude und der Phase von Echos verwendet werden, die um eine oder mehrere Symbolperioden verzögert sind, und durch Verwenden der abgeschätzten Echowerte beim Vorhersagen von komplexen Abtastungen, die für eine gegebene Symbolsequenzhypothese empfangen werden sollten, die in dem Viterbi-Zustands-Pfadspeicher enthalten ist. Die Technik, durch welche Abschätzungen von Echoamplituden und -phasen zum Helfen beim Verbessern einer Vorhersage von empfangenen Werten und somit zum Reduzieren von Fehlern aufgrund von Echos verwendet werden, ist allgemein in Offenbarungen beschrieben worden, die eine Kanalaktualisierung und eine Signalvorhersageaktualisierung beschreiben, auf die oben Bezug genommen ist, und die hier nicht weiter ausgeführt werden müssen.
  • Gemäß einem weiteren beispielhaften Ausführungsbeispiel existiert ein Verfahren zum Verbessern der Demodulation von nicht codierten Bits durch Vorsehen eines zweiten Durchlassprozesses nach einem Demodulieren und Decodieren von fehlerkorrekturcodierten Bits. Dieses beispielhafte Ausführungsbeispiel der vorliegenden Erfindung ist sogar dann anwendbar, wenn das Verschachtelungsmuster nicht spezifisch ausgewählt wird, um ein kombiniertes Demodulieren und Decodieren zu ermöglichen bzw. zu erleichtern, sondern hält separate Prozesse für eine Demodulation und ein Decodieren zurück. Beispielsweise kann ein erster Demodulationsprozess zum Demodulieren von Pi/4-DQPSK bei dem Vorhandensein von zeitverzögerten Echos gemäß den Techniken ausgeführt werden, die in den US-Patenten US-A-5 331 666 und US-A-5 335 250 offenbart sind.
  • Weiche Entscheidungswerte von einem solchen Entzerrungsdemodulator können dann entschachtelt werden, um Werte zusammenzubauen bzw. zu bilden, die repräsentativ für codierte Bits bei einer Präsentationsreihenfolge zu einem Fehlerkorrekturdecodierer sind, der Fehler bei codierten Bits korrigiert. Der Entschachteler lässt nicht codierte Bits weg oder überspringt diese, die von dem Decodierer nicht benötigt werden.
  • Nach einem Decodieren und optionalen CRC-Prüfen werden die nun zuverlässiger bekannten decodierten Bits mit einem Modell des Codierprozesses verwendet, um die codierten Werte zu ergeben, wie sie übertragen sind. Diese codierten Werte wurden mit den nicht codieren Bits zur Übertragung verschachtelt und ursprünglich unter Verwendung des beispielhaften Viterbi-Entzerrers der vorgenannten Offenbarung demoduliert. Gemäß diesem beispielhaften Ausführungsbeispiel wird nun eine zweite Durchlass-Demodulationsoperation unter Verwendung desselben Viterbi-Entzerrers durchgeführt, aber unter Beschränkung der Zustände, durch welche sie gemäß den bereits decodierten Bits läuft. Eine Computersimulation zeigt, dass dies gleiche Leistungsverstärkungen wie eine zuvor beschriebene Decodulationstechnik liefert. Ein nicht codiertes Bit, das durch zwei codierte Bits begrenzt ist, die nun bekannt sind, zieht einen Vorteil aus der Viterbi-Pfadsammelinformation über das nicht codierte Bit, wenn es durch das nun bekannte vorherige Symbol und das nun bekannte folgende Symbol läuft. Je größer die Lauflänge von decodierten Symbolen ist, die ein nicht codiertes Symbol umgeben, umso größer wird die Verstärkung für das nicht codierte Symbol sein.
  • Dieses beispielhafte Ausführungsbeispiel der vorliegenden Erfindung kann auch auf eine quaternäre Modulation angewendet werden, bei welcher das Verschachtelungsmuster und die Codieroperationen so sind, dass eines der zwei Bits eines quaternären Symbols bereits während einer Demodulation des anderen decodiert wird, das Gitter dann Beschränkungen auferlegt, die die Anzahl von Pfaden von bereits decodierten Symbolen zu darauffolgenden Symbolen von vier auf zwei mit gleichen Vorteilen reduziert, oder auferlegt werden können, wenn eines der zwei Bits eines Symbols ein codiertes Bit ist und das andere ein nicht codiertes Bit ist.
  • Wie bei irgendeinem digitalen Datenempfänger, der ein Codieren und Verschachteln verwendet, ist es nötig, eine Signalabtastung bei dem Empfänger zu synchronisieren, so dass beispielsweise die Signalabtastungen entsprechend geradzahligen und ungeradzahligen übertragenen Symbolen richtig identifiziert werden können. Eine Synchronisation wird durch das Einschließen von bekannten (z. B. Synchronisations-)Symbolen erleichtert, die zwischen Informationssymbole bei einer bekannten Stelle in übertragenen Signalsegmenten vermischt sind. Wenn solche bekannten Symbole differentiell auf den Funkfrequenzträger durch beispielsweise Anwenden einer definierten Phasenänderung über dem Symbolintervall moduliert werden, können diese bekannten Symbole ungeachtet der absoluten Phase des Kanals erfasst werden. In dem Fall, in welchem Informationssymbole durch eine absolute Vektormodulation (z. B. ein kohärentes Phasenumtasten) getragen werden, ist es nötig, Gruppen von wenigstens zwei bekannten Symbolen zu verwenden, um die Möglichkeit zur Verfügung zu stellen, sie unabhängig von einer Kanalphase zu erfassen. Eine Gruppe von N aufeinanderfolgenden kohärent modulierten Synchronisationssymbolen kann dann als Gruppe von N-1 differentiell modulierten Symbolen behandelt werden.
  • Wenn Symbolperioden im Vergleich mit einer Zeitdispersion oder Echoverzögerungen lang sind, die auf dem Ausbreitungspfad erfahren werden, variiert die optimale Empfänger-Abtastzeitgabe um nicht mehr als einen Bruchteil einer Symbolperiode von einem Signalsegment zum nächsten, so dass es nur erforderlich ist, eine langzeitige durchschnittliche Abtastzeitgabe zu erhalten, die eine Durchschnittsbildung über viele Signalsegmente ist. Die bekannten Symbole über viele Signalsegmente können somit alle zum Bestimmen einer optimalen Empfängerzeitgabe verwendet werden. Beispielsweise dann, wenn jedes Signalsegment 136 Informationssymbole aufweist, und acht verstreute, isolierte und differentiell modulierte bekannte Symbole, wird ein Bestimmen einer optimalen Zeitgabe über einem sich bewegenden Fenster von 16 solchen Signalsegmenten insgesamt 128 bekannte Symbole verwenden. Das bevorzugte Verfahren zum Bestimmen der optimalen Zeitgabe besteht darin, zuerst eine Anfangszeitgabe bei dem Start einer Kommunikation unter Verwendung von Signalsegmenten zu erhalten, die mit bekannten Symbolen aufgefüllt sind, um eine schnelle Synchronisation zu ermöglichen, dann eine Synchronisation durch Durchführen eines Tests für eine geringe Anzahl von nahen Zeitgabepositionen auf jeder Seite der nominalen Position beizubehalten, die beispielsweise bei 1/8 Symbolperiodenintervallen beabstandet sind. Der Test kann durch Berechnen des differentiellen Symbolwerts Z(i), Z(i – 8)* für die getestete Zeitgabeposition i durch das Signalsegment (unter der Annahme von acht Abtastungen pro Symbol) durchgeführt werden, durch Drehen dieses komplexen Werts über das inverse des Winkels der für das bekannte Symbol erwartet wird, um es mit der realen Achse auszurichten, und durch Akkumulieren der gedrehten Werte in einem binären Histogramm entsprechend i. Die Zeitgabeposition i kann beispielsweise Werte von –8 bis +8 in Bezug auf eine nominale Zeitposition annehmen, d. h. +/– einer Symbolperiode. Das binäre Histogramm, das den größten Wert akkumuliert, zeigt die Abtastzeitgabe i an, die verwendet werden sollte. Die binären Histogramme können leckig gemacht werden, um den Einfluss von alten empfangenen Signalsegmenten exponentiell zu vergessen, um eine Anpassung der Zeitgabe an Änderungen aufgrund einer relativen Bewegung des Senders und des Empfängers zuzulassen, oder aufgrund von relativen Referenztaktfehlern.
  • Es ist mit einer zusätzlichen Signalverarbeitungsanstrengung auch möglich, eine Synchronisation zu prüfen und beizubehalten, ohne die bekannten Symbole zu verwenden, indem herkömmliche Taktbildungstechniken verwendet werden. Diese Technik kann mit einer Einrichtung zum erneuten Erlangen einer Framesynchronisation kombiniert werden, wenn ein Decodieren damit beginnt, häufig fehlzuschlagen. Beispielsweise kann ein Decodieren für mehr als eine postulierte Zeitgabeposition versucht werden, und wenn eine zuvor bevorzugte Zeitgabeposition damit beginnt, häufige Decodierfehler zu ergeben, während eine benachbarte Zeitgabeposition ein erfolgreiches Decodieren ergibt, dann wird die benachbarte Zeitgabeposition die bevorzugte Zeitgabeposition und wird die Abtastzeitgabe neu um die neue bevorzugte Zeitgabe zentralisiert.
  • Es wird aus dem obigen gesehen, dass der Empfänger vorzugsweise Abtastungen bei einem Bruchteil der Symbolbeabstandung nimmt, wie beispielsweise bei acht Abtastungen pro Symbolperiode, und dass ein Synchronisationsalgorithmus bestimmt, welche der acht Abtastphasen beim Auswählen einer Abtastung pro Symbol für eine Decodierung zu verwenden ist.
  • Zwei andere Variationen können angegeben werden. Es ist möglich, mehr als eine Abtastung pro Symbol bei dem kombinierten Demodulations- und Decodierprozess zu verwenden, indem der Algorithmus für eine maximale Wahrscheinlichkeit auf ein Verwenden des Vorhersagemechanismus zum Vorhersagen von nicht nur einer empfangenen Wellenformabtastung pro Symbol für eine hypothetisierte Symbolsequenz erweitert wird, sondern von zwei oder mehreren Abtastungen pro Symbol der erwarteten Wellenform. Die Maßberechnungseinrichtung berechnet dann eine Fehlanpassung zwischen allen vorhergesagten und beobachteten Wellenformabtastungen und akkumuliert sie. Es ist klar, dass dann, wenn mehrere Abtastungen pro Symbol im Decodulationsprozess enthalten sind, eine Leistungsfähigkeit nicht empfindlich gegenüber einer genauen Abtastzeitgabe sein wird.
  • Eine zweite Variation, die unempfindlich gegenüber einer Abtastzeitgabe ist, verwendet nur eine Abtastung pro Symbol. Wenn die übertragene Modulation eine konstante Hüllkurvenmodulation ist, wie beispielsweise GMSK oder 4-CPFSK, dann wird die Energie der empfangenen Abtastungen nicht von der ausgewählten Zeitgabe abhängen. Jedoch hängt die Abhängigkeit der Abtastung von dem vorherigen und von dem kommenden Symbol von der Zeitgabe ab. Die empfangene Wellenform kann entweder bei Positionen abgetastet werden, bei welchen die Abtastwerte primär von einzelnen Symbolen abhängen werden, d. h. in der Mitte von Symbolen, oder bei einem andern Extrem kann sie bei Positionen abgetastet werden, bei welchen die Abtastungen gleichermaßen von zwei benachbarten Symbolen abhängen werden, d. h. innerhalb zwischen den zwei benachbarten Symbolen. Die Leistungsfähigkeit eines Algorithmus für eine maximale Wahrscheinlichkeit, der empfangene Abtastungen basierend auf allen Symbolen vorhersagt, von welchen sie abhängen, führt näherungsweise gleich gut bei allen Abtastzeitgaben aus, selbst wenn nur eine Abtastung pro Symbol verwendet wird. Die Symbole, von welchen eine Abtastung primär abhängt, sollten jedoch vorzugsweise eher ML-Abgriffe als DFE- oder Nach-Überlebender-Abgriffe darstellen, um sicherzustellen, dass alle möglichen Kombinationen der in Frage stehenden Symbole getestet werden. Dies kann durch eine geeignete Auswahl eines Codier- und Verschachtelungsmusters gemäß den folgenden Richtlinien sichergestellt werden.
  • Ein Codierer mit der Rate 1/n wird n Ausgangssymbole für jedes Eingangssymbol erzeugen. Gegensätzlich dazu wird ein Decodierer mit der Rate 1/n n empfangene Symbole verarbeiten, um ein decodiertes Symbol auszugeben. Die n empfangenen Symbole werden vorzugsweise bezüglich der Zeit über mehrere übertragene Segmente verteilt, um den Effekt eines Schwunds bzw. Fadings zu reduzieren. Bei den vorangehenden beispielhaften Ausführungsbeispielen ist beispielsweise vorgeschlagen worden, dass aufeinanderfolgende Symbole vom Codierer zuerst am nächsten zu bekannten Synchronisationssymbolen platziert werden, und dann am nächsten zu den ersten platzierten Symbolen, usw. Wenn n Positionen, die bekannten Synchronisationssymbolen am nächsten sind, verfügbar sind, dann werden die n codierten Symbole für jedes nicht codierte Symbol diese Positionen ausschöpfen, und die nächsten (n + 1)-ten codierten Symbole werden benachbart bzw. angrenzend zu dem ersten codierten Symbol platziert werden. Jedoch deshalb, weil der Decodierer nur ein decodiertes Symbol in seinem Pfad-Vorgeschichtenspeicher für jedes codierte Symbol ausgibt, das verarbeitet wird, hängen codierte Symbole 1 und (n + 1) von Symbolen ab, die im Pfad-Vorgeschichtenspeicher um ein Symbol weiter weg sind. Wenn die Codebeschränkungslänge m Symbole ist, dann sind die entfernten decodierten Symbole m – 1 noch innerhalb des ML-Abgriffs, was garantiert, dass alle Kombinationen von diesen zwei Symbolen getestet werden. Der Verschachteler kann somit n(m – 1) codierte Symbole in zeitlich verstreuten Positionen platzieren, bevor er die nächsten n am nächsten zu den ersten n platziert, während zwei Symbole in benachbarten Positionen in übertragenen Signalsegmenten innerhalb des Bereichs von Abgriffen für eine maximale Wahrscheinlichkeit gehalten werden, um dadurch sicherzustellen, dass alle Kombinationen der zwei Symbole hypothetisiert werden. Dies stellt wiederum sicher, dass alle möglichen Signalabtastwerte, die von den zwei benachbarten Symbolen abhängen, vorhergesagt und mit empfangenen Abtastwerten verglichen werden, was eine Leistungsfähigkeit ergibt, die dann nicht empfindlich demgegenüber ist, ob eine Abtastzeitgabe in der Mitte eines Symbols oder zwischen Symbolen liegt. Auf diese Weise ist es auch möglich, mit Kanalungenauigkeiten fertig zu werden, die verursachen, dass empfangene Abtastungen von mehr als einem benachbart übertragenen Symbol abhängen, d. h. Echos, die um bis zu einer Symbolperiode verzögert sind. Ein solches Übertragungsschema kann somit auf vorteilhafte Weise über Mobilfunkkanäle verwendet werden, die an einer Mehrwegeausbreitung leiden.

Claims (17)

  1. Verfahren zum Übertragen und Empfangen digitaler Daten, enthaltend die Schritte: Fehlerkorrektur-Codierung beliebiger Informationssymbole (21), Verschachteln (22) der codierten, beliebigen Informationssymbole mit Symbolen, die einem Empfänger bekannt sind, und Übertragen der verschachtelten Symbole; Empfangen der übertragenen Symbole; Fehlerkorrektur-Decodierung der empfangenen Symbole entsprechend den codierten, beliebigen Informationssymbolen (100), die an die bekannten Symbole angrenzen; Fehlerkorrektur-Decodierung der codierten, beliebigen Informationssymbole (100), die an die ersten decodierten Symbole angrenzen, unter Verwendung der ersten decodierten Symbole und so weiter, unter Wegbewegung in jeder Richtung von den bekannten Symbolen.
  2. Verfahren nach Anspruch 1, ferner gekennzeichnet durch den Schritt zum Modellieren der beliebigen Informationssignale und der bekannten Symbole auf ein Funkfrequenzsignal.
  3. Verfahren nach Anspruch 2, dadurch gekennzeichnet, dass die Schritte zum Modellieren den weiteren Schritt wie folgt enthalten: Darstellen der Information und bekannten Symbole durch Vektoränderungen zwischen eine Symbolperiode beabstandeten Signalabtastwerten.
  4. Verfahren nach Anspruch 3, ferner gekennzeichnet durch den Schritt: Platzieren eines codierten Bits bei einer von zwei Bitpositionen der quasi ternären Symbole in einem ersten übertragenen Signalsegment und eines anderen codierten Bits bei der anderen Bitposition der quasi ternären Symbole in einem nachfolgend übertragenen Signalsegment.
  5. Verfahren nach Anspruch 4, dadurch gekennzeichnet, dass der Schritt zum Modellieren unter Verwendung einer I, Q gefilterten Pi/4-DQPSK Technik ausgeführt wird.
  6. Verfahren nach Anspruch 4, dadurch gekennzeichnet, dass der Schritt zum Modellieren unter Verwendung einer fortlaufenden Phasenmodulationstechnik unter Erzeugung näherungsweise konstanter Amplitudensignale ausgeführt wird.
  7. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass die Codierung eine Blockfehlerkorrektur-Codierung ist.
  8. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass die Codierung eine Faltungscodierung ist.
  9. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass die Codierung eine punktierte Faltungscodierung ist.
  10. Verfahren nach Anspruch 3, dadurch gekennzeichnet, dass der Schritt zum Modulieren ferner den folgenden Schritt enthält: Verwenden einer M-wertigen Symbolmodulation, bei der die Vektoränderungen irgendeine aus einer Zahl von M vordefinierten Änderungen sein können, gleich einer ganzzahligen Potenz N von zwei.
  11. Verfahren nach Anspruch 10, dadurch gekennzeichnet, dass die Vektoränderungen jeweils eine Zahl von Information oder bekannter Bits gleich der ganzzahligen Zahl N codieren.
  12. Verfahren nach Anspruch 11, dadurch gekennzeichnet, dass es ferner folgende Schritte enthält: Platzieren codierter Informationsbits zunächst bei einem ersten der ganzzahligen Zahl N von Bits, befördert durch jedes der M-wertigen Symbole, als ein erstes Signalsegment; und nachfolgendes Platzieren codierter Informationsbits bei einer zweiten der ganzzahligen Zahl N von Bitpositionen der M-wertigen Symbole, geführt durch ein zweites übertragenes Signalsegment.
  13. Verfahren nach Anspruch 12, dadurch gekennzeichnet, dass es ferner der Schritt enthält: Fortführen der Platzierung codierter Informationsbits bei Bitpositionen der M-wertigen Symbole gemäß dem Signalsegment, das die M-wertigen Symbole enthält, bis eine Zahl von Signalsegmenten gleich der ganzen Zahl N verwendet wurde.
  14. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass es den Schritt enthält: Verschachteln nicht codierter Symbole mit den beliebigen Informationssymbolen und den bekannten Symbolen.
  15. Verfahren nach Anspruch 14, dadurch gekennzeichnet, dass es ferner folgende Schritte enthält: bei dem Empfänger, Überspringen nicht codierter Symbole während der Decodierung der codierten Symbole; und dann Rückkehr zu der Schätzung der nicht codierten Symbole unter Verwendung bereits decodierter Symbole.
  16. Gerät zum Übertragen und Empfangen digitaler Informationssymbole, enthaltend: eine Übertragungsvorrichtung (60) für eine Fehlerkorrekturcodierung zumindest einiger der digitalen Informationssymbole für die Übertragung, Verschachteln (22) der codierten Symbole mit nicht codierten Symbolen und Modulieren (23) der verschachtelten Symbole auf ein Trägersignal; eine Vorrichtung zum Empfangen des modulierten Trägersignals, zum Filtern (40), Verstärken (41), Abtasten und Umsetzen der Signalabtastwerte in eine geeignete Form für die Verarbeitung; und eine Vorrichtung zum Demodulieren (53) von Signalabtastwerten gemäß den codierten, verschachtelten und modulierten Symbolen und zum Fehlerkorrektur-Decodieren der demodulierten Abtastwerte zum Erhalten decodierter Symbole; und eine Vorrichtung zum Demodulieren (53) von Abtastwerten gemäß den nicht codierten, modulierten Symbolen unter Verwendung der bereits decodierten Symbole angrenzend zu den nicht codierten modulierten Symbolen zum Reproduzieren der nicht codierten Symbole mit einer reduzierten Fehlerwahrscheinlichkeit.
  17. Gerät nach Anspruch 16, dadurch gekennzeichnet, dass die Verarbeitungsvorrichtung zum Demodulieren von Signalabtastwerten gemäß zumindest den codierten, verschachtelten und modulierten Symbolen auch die Demodulation und die Decodierung in einem Decodulationsprozess kombiniert, der die Signalabtastwerte zum Erzeugen decodierter Symbole decoduliert.
DE69531482T 1994-09-14 1995-09-14 Gleichzeitige demodulation und dekodierung eines digital modulierten funksignals Expired - Lifetime DE69531482T2 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US08/305,787 US5673291A (en) 1994-09-14 1994-09-14 Simultaneous demodulation and decoding of a digitally modulated radio signal using known symbols
US305787 1994-09-14
PCT/US1995/011755 WO1996008904A1 (en) 1994-09-14 1995-09-14 Simultaneous demodulation and decoding of a digitally modulated radio signal

Publications (2)

Publication Number Publication Date
DE69531482D1 DE69531482D1 (de) 2003-09-18
DE69531482T2 true DE69531482T2 (de) 2004-07-01

Family

ID=23182345

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69531482T Expired - Lifetime DE69531482T2 (de) 1994-09-14 1995-09-14 Gleichzeitige demodulation und dekodierung eines digital modulierten funksignals

Country Status (12)

Country Link
US (1) US5673291A (de)
EP (1) EP0728393B1 (de)
JP (1) JPH09509548A (de)
CN (1) CN1153420C (de)
AT (1) ATE247350T1 (de)
AU (1) AU703051B2 (de)
BR (1) BR9506363A (de)
CA (1) CA2176470C (de)
DE (1) DE69531482T2 (de)
FI (1) FI962029A (de)
MX (1) MX9601739A (de)
WO (1) WO1996008904A1 (de)

Families Citing this family (124)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5937015A (en) * 1994-01-11 1999-08-10 Dent; Paul W. Interference mitigation by joint decoding of overlapped signals
WO1996007260A1 (en) * 1994-08-31 1996-03-07 Sony Corporation Signal transmitter, signal receiver, and signal transmitting-receiving method
US6334219B1 (en) 1994-09-26 2001-12-25 Adc Telecommunications Inc. Channel selection for a hybrid fiber coax network
USRE42236E1 (en) 1995-02-06 2011-03-22 Adc Telecommunications, Inc. Multiuse subcarriers in multipoint-to-point communication using orthogonal frequency division multiplexing
US7280564B1 (en) 1995-02-06 2007-10-09 Adc Telecommunications, Inc. Synchronization techniques in multipoint-to-point communication using orthgonal frequency division multiplexing
US5917837A (en) * 1996-09-11 1999-06-29 Qualcomm, Incorporated Method and apparatus for performing decoding of codes with the use of side information associated with the encoded data
US7035661B1 (en) 1996-10-11 2006-04-25 Arraycomm, Llc. Power control with signal quality estimation for smart antenna communication systems
US5930243A (en) * 1996-10-11 1999-07-27 Arraycomm, Inc. Method and apparatus for estimating parameters of a communication system using antenna arrays and spatial processing
US6275543B1 (en) 1996-10-11 2001-08-14 Arraycomm, Inc. Method for reference signal generation in the presence of frequency offsets in a communications station with spatial processing
US6463295B1 (en) 1996-10-11 2002-10-08 Arraycomm, Inc. Power control with signal quality estimation for smart antenna communication systems
ATE310307T1 (de) * 1996-11-07 2005-12-15 Koninkl Philips Electronics Nv Datenverarbeitung von einem bitstromsignal
US6320914B1 (en) * 1996-12-18 2001-11-20 Ericsson Inc. Spectrally efficient modulation using overlapped GMSK
US5983383A (en) * 1997-01-17 1999-11-09 Qualcom Incorporated Method and apparatus for transmitting and receiving concatenated code data
US6345246B1 (en) * 1997-02-05 2002-02-05 Nippon Telegraph And Telephone Corporation Apparatus and method for efficiently coding plural channels of an acoustic signal at low bit rates
JPH10257116A (ja) * 1997-03-11 1998-09-25 Nec Corp 直交周波数変換装置
FI112894B (fi) 1997-04-10 2004-01-30 Nokia Corp Menetelmä kehysvirhetodennäköisyyden pienentämiseksi tietokehysmuotoisessa tiedonsiirrossa
JP3437411B2 (ja) * 1997-05-20 2003-08-18 松下電器産業株式会社 受信装置及び送信装置並びにこれらを用いた基地局装置及び移動局装置
EP0985292B1 (de) 1997-05-30 2005-04-20 QUALCOMM Incorporated Fehlerschutzverfahren und vorrichtung für über-funk-dateiübertragung
US6252911B1 (en) * 1997-06-11 2001-06-26 Texas Instruments Incorporated Trellis shaping for PCM modems
WO1998059423A1 (de) * 1997-06-23 1998-12-30 Siemens Aktiengesellschaft Verfahren und einrichtung zur quellengesteuerten kanaldecodierung mit hilfe eines kalman-filters
US6925127B1 (en) 1997-07-22 2005-08-02 Ericsson Inc. Method and apparatus for subtracting multiple rays of multiple interfering received signals
US6205186B1 (en) * 1997-09-03 2001-03-20 Qualcomm Incorporated Decoding with partial state information on a convolutionally encoded channel
US7299071B1 (en) 1997-12-10 2007-11-20 Arraycomm, Llc Downlink broadcasting by sequential transmissions from a communication station having an antenna array
JP3205723B2 (ja) * 1997-12-12 2001-09-04 松下電器産業株式会社 Cdma用データ伝送方法及び装置
CA2314493C (en) * 1997-12-17 2006-05-30 Kabushiki Kaisha Kenwood Received-signal absolute phasing apparatus of receiver
US6192500B1 (en) * 1998-02-11 2001-02-20 Conexant Systems, Inc. Method and apparatus for enhanced performance in a system employing convolutional decoding
US6198733B1 (en) * 1998-03-13 2001-03-06 Lucent Technologies Inc. Forward-link sync-channel interleaving/de-interleaving for communication systems based on closed-form expressions
US6195344B1 (en) 1998-03-13 2001-02-27 Lucent Technologies Inc. Forward-link traffic/paging-channel de-interleaving for communication systems based on closed-form expressions
US6295287B1 (en) 1998-03-13 2001-09-25 Agere System Guardian Corp. Reverse-link interleaving for communication systems based on closed-form expressions
US6185200B1 (en) 1998-03-13 2001-02-06 Lucent Technologies Inc. Reverse-link de-interleaving for communication systems based on closed-form expressions
US6198732B1 (en) 1998-03-13 2001-03-06 Lucent Technologies Inc. Forward-link traffic/paging-channel interleaving for communication systems based on closed-form expressions
US6615024B1 (en) 1998-05-01 2003-09-02 Arraycomm, Inc. Method and apparatus for determining signatures for calibrating a communication station having an antenna array
US6535497B1 (en) 1998-05-11 2003-03-18 Telefonaktiebolaget Lm Ericsson (Publ) Methods and systems for multiplexing of multiple users for enhanced capacity radiocommunications
US6792542B1 (en) * 1998-05-12 2004-09-14 Verance Corporation Digital system for embedding a pseudo-randomly modulated auxiliary data sequence in digital samples
WO1999059258A1 (en) * 1998-05-12 1999-11-18 Solana Technology Development Corporation Digital hidden data transport (dhdt)
US6144862A (en) * 1998-07-28 2000-11-07 Motorola, Inc. Pulse-shaping look-up table with transient suppression
CN1509093A (zh) * 1998-08-06 2004-06-30 ���ǵ�����ʽ���� 通信系统中的信道编码/解码
US6381271B1 (en) 1998-08-17 2002-04-30 Telefonaktiebolaget Lm Ericsson (Publ) Low complexity decision feedback sequence estimation
GB9821088D0 (en) * 1998-09-30 1998-11-18 Koninkl Philips Electronics Nv Radio transmitter
US6366624B1 (en) 1998-11-30 2002-04-02 Ericsson Inc. Systems and methods for receiving a modulated signal containing encoded and unencoded bits using multi-pass demodulation
US6931050B1 (en) 1998-12-03 2005-08-16 Ericsson Inc. Digital receivers and receiving methods that scale for relative strengths of traffic and pilot channels during soft handoff
US6233709B1 (en) * 1998-12-07 2001-05-15 Nokia Mobile Phones Ltd. Dynamic iterative decoding for balancing quality of service parameters
US6202189B1 (en) * 1998-12-17 2001-03-13 Teledesic Llc Punctured serial concatenated convolutional coding system and method for low-earth-orbit satellite data communication
JP3239870B2 (ja) * 1998-12-28 2001-12-17 日本電気株式会社 データ誤り訂正システム
US6567475B1 (en) 1998-12-29 2003-05-20 Ericsson Inc. Method and system for the transmission, reception and processing of 4-level and 8-level signaling symbols
US6463556B1 (en) * 1999-01-04 2002-10-08 Motorola, Inc. Method and apparatus for interleaving in a communication system
US6501788B1 (en) 1999-01-22 2002-12-31 Ericsson Inc. Apparatus and methods for intereference cancellation in spread spectrum communications systems
US6556634B1 (en) * 1999-02-10 2003-04-29 Ericsson, Inc. Maximum likelihood rake receiver for use in a code division, multiple access wireless communication system
US6377817B1 (en) * 1999-05-03 2002-04-23 Nokia Mobile Phones Ltd. Asymmetric data transmission for use in a multi-modulation environment
US6445745B1 (en) * 1999-05-06 2002-09-03 Nortel Networks Limited Phase encoding methods for handling multiple phase modulated signals on a single channel
US6600914B2 (en) 1999-05-24 2003-07-29 Arraycomm, Inc. System and method for emergency call channel allocation
US6141567A (en) 1999-06-07 2000-10-31 Arraycomm, Inc. Apparatus and method for beamforming in a changing-interference environment
US7139592B2 (en) * 1999-06-21 2006-11-21 Arraycomm Llc Null deepening for an adaptive antenna based communication station
US6714585B1 (en) 1999-06-25 2004-03-30 Ericsson Inc. Rake combining methods and apparatus using weighting factors derived from knowledge of spreading spectrum signal characteristics
US6574270B1 (en) 1999-07-30 2003-06-03 Ericsson Inc. Baseband interference canceling spread spectrum communications methods and apparatus
US6515980B1 (en) 1999-09-22 2003-02-04 Ericsson Inc. Methods and apparatus for interference cancellation using complex interference orthogonalization techniques
EP1089439A1 (de) * 1999-09-28 2001-04-04 TELEFONAKTIEBOLAGET L M ERICSSON (publ) Verschachteler und Eingangsdatabitverschachtelungsverfahren unter Anwendung von symbolkodierter Speicherung und zusätzlichen Informationen
US6683924B1 (en) 1999-10-19 2004-01-27 Ericsson Inc. Apparatus and methods for selective correlation timing in rake receivers
US6922434B2 (en) 1999-10-19 2005-07-26 Ericsson Inc. Apparatus and methods for finger delay selection in RAKE receivers
US6985466B1 (en) 1999-11-09 2006-01-10 Arraycomm, Inc. Downlink signal processing in CDMA systems utilizing arrays of antennae
US6449464B1 (en) 1999-12-28 2002-09-10 Ericsson Inc. Method of reporting signal quality measurements from a mobile terminal with enhanced demodulation algorithm
US6690739B1 (en) 2000-01-14 2004-02-10 Shou Yee Mui Method for intersymbol interference compensation
KR20020075908A (ko) * 2000-02-07 2002-10-07 에릭슨 인크. 차동 코딩 및 변조 방법
US7046738B1 (en) * 2000-02-08 2006-05-16 Ericsson Inc. 8-PSK transmit filtering using reduced look up tables
US6625236B1 (en) 2000-02-08 2003-09-23 Ericsson Inc. Methods and systems for decoding symbols by combining matched-filtered samples with hard symbol decisions
US6665832B1 (en) 2000-03-31 2003-12-16 Qualcomm, Incorporated Slotted mode decoder state metric initialization
US6668349B1 (en) * 2000-04-14 2003-12-23 Hitachi, Ltd. Data recording/readback method and data recording/readback device for the same
US6697441B1 (en) 2000-06-06 2004-02-24 Ericsson Inc. Baseband processors and methods and systems for decoding a received signal having a transmitter or channel induced coupling between bits
US6798852B2 (en) * 2000-06-06 2004-09-28 Ericsson Inc. Methods and systems for extracting a joint probability from a map decision device and processing a signal using the joint probability information
US20010053142A1 (en) * 2000-06-20 2001-12-20 Matsushita Electric Industrial Co., Ltd Radio communication system
US6728323B1 (en) 2000-07-10 2004-04-27 Ericsson Inc. Baseband processors, mobile terminals, base stations and methods and systems for decoding a punctured coded received signal using estimates of punctured bits
US6982968B1 (en) 2000-09-29 2006-01-03 Arraycomm, Inc. Non-directional transmitting from a wireless data base station having a smart antenna system
US7062294B1 (en) 2000-09-29 2006-06-13 Arraycomm, Llc. Downlink transmission in a wireless data communication system having a base station with a smart antenna system
US6795409B1 (en) 2000-09-29 2004-09-21 Arraycomm, Inc. Cooperative polling in a wireless data communication system having smart antenna processing
ATE336829T1 (de) * 2000-10-06 2006-09-15 Ericsson Inc Verfahren und vorrichtung zum subtrahieren von mehreren pfaden empfangener störsignale
US6650881B1 (en) * 2000-11-30 2003-11-18 Arraycomm, Inc. Calculating spatial weights in a radio communications system
US7769078B2 (en) * 2000-12-22 2010-08-03 Telefonaktiebolaget Lm Ericsson (Publ) Apparatus, methods and computer program products for delay selection in a spread-spectrum receiver
US20020138793A1 (en) * 2001-03-26 2002-09-26 Leif Wilhelmsson Iterative decoding of differentially modulated symbols
US6983151B2 (en) * 2001-04-23 2006-01-03 Telefonaktiebolaget L M Ericsson (Publ) Method, apparatus and system for synchronization in radio communication systems
US7191383B2 (en) * 2003-03-28 2007-03-13 International Business Machines Corporation System and method for optimizing iterative circuit for cyclic redundancy check (CRC) calculation
US7050817B2 (en) * 2003-04-24 2006-05-23 Locus Location Systems, Llc Locating method and system
US7336572B1 (en) * 2004-08-19 2008-02-26 Marvell International Ltd. Detecting sync patterns for optical media
US8046662B2 (en) * 2004-08-20 2011-10-25 Broadcom Corporation Method and system for decoding control data in GSM-based systems using inherent redundancy
US20060092873A1 (en) * 2004-10-29 2006-05-04 Telefonaktiebolaget Lm Ericsson ( Publ) Method for adaptive interleaving in a wireless communication system with feedback
US7424071B2 (en) * 2005-06-27 2008-09-09 Icera Inc. Decoder and a method for determining a decoding reliability indicator
US8358723B1 (en) * 2005-11-12 2013-01-22 The United States Of America As Represented By The Administrator Of The National Aeronautics And Space Administration Self-configurable radio receiver system and method for use with signals without prior knowledge of signal defining characteristics
US7725807B2 (en) * 2006-01-23 2010-05-25 Vixs Systems, Inc. Error checking using a field of a frame
WO2008011264A2 (en) * 2006-06-30 2008-01-24 Viasat, Inc. Remote non-linearity detection via burst power dithering
US7873125B2 (en) * 2006-11-30 2011-01-18 Broadcom Corporation Method and system for sliding window phase estimator for WCDMA automatic frequency correction
US20080301536A1 (en) * 2007-05-31 2008-12-04 Interdigital Technology Corporation Channel coding and rate matching for lte control channels
US8275314B1 (en) 2007-08-13 2012-09-25 Marvell International Ltd. Bluetooth scan modes
US8577305B1 (en) 2007-09-21 2013-11-05 Marvell International Ltd. Circuits and methods for generating oscillating signals
US8588705B1 (en) 2007-12-11 2013-11-19 Marvell International Ltd. System and method of determining Power over Ethernet impairment
WO2010005659A1 (en) 2008-06-16 2010-01-14 Marvell World Trade Ltd. Short-range wireless communication
US8310967B1 (en) 2008-06-19 2012-11-13 Marvell International Ltd. Infrastructure and ad-hoc node device
US8600324B1 (en) 2008-06-27 2013-12-03 Marvell International Ltd Circuit and method for adjusting a digitally controlled oscillator
US8472968B1 (en) 2008-08-11 2013-06-25 Marvell International Ltd. Location-based detection of interference in cellular communications systems
EP2342876B1 (de) * 2008-09-26 2013-11-06 Vodafone Holding GmbH Dezentraler und kooperativer empfang von daten durch basisstationen
US9288764B1 (en) 2008-12-31 2016-03-15 Marvell International Ltd. Discovery-phase power conservation
US8572460B2 (en) * 2009-03-17 2013-10-29 Broadcom Corporation Communication device employing binary product coding with selective additional cyclic redundancy check (CRC) therein
US8472427B1 (en) 2009-04-06 2013-06-25 Marvell International Ltd. Packet exchange arbitration for coexisting radios
US8396170B2 (en) 2009-07-30 2013-03-12 Qualcomm Incorporated Utilization of a known portion of a payload to decode a payload having a known and an unknown portion
US9066369B1 (en) 2009-09-16 2015-06-23 Marvell International Ltd. Coexisting radio communication
US8365050B2 (en) 2009-11-09 2013-01-29 Research In Motion Limited System and method for decoding a message using a priori information
US8340034B1 (en) 2009-11-11 2012-12-25 Marvell International Ltd. Bluetooth and wireless LAN arbitration
WO2011109913A1 (en) 2010-03-10 2011-09-15 Zurich Instruments Ag Apparatus and method for demodulating an input signal
US8767771B1 (en) 2010-05-11 2014-07-01 Marvell International Ltd. Wakeup beacons for mesh networks
WO2012054210A1 (en) 2010-10-20 2012-04-26 Marvell World Trade Ltd. Pre-association discovery
US8750278B1 (en) 2011-05-26 2014-06-10 Marvell International Ltd. Method and apparatus for off-channel device invitation
US8983557B1 (en) 2011-06-30 2015-03-17 Marvell International Ltd. Reducing power consumption of a multi-antenna transceiver
US9125216B1 (en) 2011-09-28 2015-09-01 Marvell International Ltd. Method and apparatus for avoiding interference among multiple radios
US9036517B2 (en) 2012-01-09 2015-05-19 Marvell World Trade Ltd. Methods and apparatus for establishing a tunneled direct link setup (TDLS) session between devices in a wireless network
US9215708B2 (en) 2012-02-07 2015-12-15 Marvell World Trade Ltd. Method and apparatus for multi-network communication
US9609676B1 (en) 2012-03-30 2017-03-28 Marvell International Ltd. Efficient transition from discovery to link establishment
US9450649B2 (en) 2012-07-02 2016-09-20 Marvell World Trade Ltd. Shaping near-field transmission signals
US9191256B2 (en) * 2012-12-03 2015-11-17 Digital PowerRadio, LLC Systems and methods for advanced iterative decoding and channel estimation of concatenated coding systems
CN104956616B (zh) * 2014-01-23 2018-11-13 华为技术有限公司 一种系统码译码方法和装置
FR3024932B1 (fr) * 2014-08-14 2017-12-01 Sagem Defense Securite Procede de transmission de donnees a robustesse amelioree et ensemble de dispositifs pour sa mise en œuvre
EP3471359B1 (de) * 2016-06-10 2024-02-21 Sony Group Corporation Sendevorrichtung und -verfahren, empfangsvorrichtung und -verfahren
US10476998B2 (en) * 2016-07-11 2019-11-12 Qualcomm Incorporated Reinforced list decoding
EP3337070B1 (de) * 2016-12-16 2019-10-23 Nxp B.V. Demodulation und decodierung
DE102018218730A1 (de) * 2018-10-31 2020-04-30 Diehl Metering Gmbh Detektion einer Pilotsequenz auf einfachen Rechnern
CN114337690A (zh) * 2020-10-12 2022-04-12 瑞昱半导体股份有限公司 数据译码电路及方法
CN113890808B (zh) * 2021-11-05 2024-05-07 成都中科微信息技术研究院有限公司 一种基于预编码msk波形的相干解调方法

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4559625A (en) * 1983-07-28 1985-12-17 Cyclotomics, Inc. Interleavers for digital communications
SE463540B (sv) * 1988-09-19 1990-12-03 Ericsson Telefon Ab L M Saett foer att i ett radiokommunikationssystem digitalisera godtyckliga radiosignaler samt anordning foer utoevande av saettet
US5052000A (en) * 1989-06-09 1991-09-24 At&T Bell Laboratories Technique for improving the operation of decision feedback equalizers in communications systems utilizing error correction
US5084669A (en) * 1990-03-08 1992-01-28 Telefonaktiebolaget L M Ericsson Direct phase digitization
US5301209A (en) * 1991-10-09 1994-04-05 At&T Bell Laboratories Multidimensional trellis-coded modulation for fading channels
US5287374A (en) * 1992-04-30 1994-02-15 Hughes Aircraft Company Identification of encoder type through observation of data received
US5331666A (en) * 1992-06-08 1994-07-19 Ericsson Ge Mobile Communications Inc. Adaptive maximum likelihood demodulator
EP0578313B1 (de) * 1992-07-08 1998-12-02 Laboratoires D'electronique Philips S.A.S. Verkettete Kodierung für OFDM-Übertragung
US5241563A (en) * 1992-08-10 1993-08-31 General Instrument Corporation Method and apparatus for communicating interleaved data
US5335250A (en) * 1992-10-22 1994-08-02 Ericsson Ge Mobile Communications Inc. Method and apparatus for bidirectional demodulation of digitally modulated signals
US5432821A (en) * 1992-12-02 1995-07-11 University Of Southern California System and method for estimating data sequences in digital transmissions
US5402447A (en) * 1993-03-05 1995-03-28 Motorola, Inc. Speech decoding in a zero BER environment
US5438590A (en) * 1993-05-24 1995-08-01 Comstream Corporation Transmitting and receiving apparatus and method including punctured convolutional encoding and decoding

Also Published As

Publication number Publication date
BR9506363A (pt) 1997-09-16
US5673291A (en) 1997-09-30
DE69531482D1 (de) 2003-09-18
EP0728393B1 (de) 2003-08-13
EP0728393A1 (de) 1996-08-28
AU703051B2 (en) 1999-03-11
WO1996008904A1 (en) 1996-03-21
CN1138930A (zh) 1996-12-25
FI962029A (fi) 1996-07-11
CA2176470A1 (en) 1996-03-21
AU3633395A (en) 1996-03-29
MX9601739A (es) 1997-05-31
FI962029A0 (fi) 1996-05-13
CA2176470C (en) 2008-09-02
JPH09509548A (ja) 1997-09-22
CN1153420C (zh) 2004-06-09
ATE247350T1 (de) 2003-08-15

Similar Documents

Publication Publication Date Title
DE69531482T2 (de) Gleichzeitige demodulation und dekodierung eines digital modulierten funksignals
DE69808809T2 (de) Vorrichtung und verfahren zur datenübermittlung und zum datenempfang
DE69609026T2 (de) Verfahren zur Bestimmung einer Übertragungsrate aus dem Wachstum einer Pfadmetrik in einem Viterbi Dekodierer und Vorrichtung dazu
DE4290581C2 (de) Signalwichtungssystem für einen Digitalempfänger
DE60132179T2 (de) Verfahren und vorrichtung für kombinierte soft-decision-entscheidungsbasierte interferenzunterdrückung und dekodierung
DE3910739C2 (de)
DE4292231C2 (de) System und Verfahren zur Berechnung der Kanalverstärkung und der Rauschvarianz eines Kommunikationskanals
DE69723559T2 (de) Verfahren und vorrichtung zur detektion von kommunikationssignalen mit ungleichem fehlerschutz
DE69627737T2 (de) Verfahren und Einrichtung zum Empfang von durch Intersymbolinterferenz getroffenen Signalen
DE19964474B4 (de) Verfahren zum Multiplexen von mehreren Benutzern für Funkkommunikation mit einer verbesserten Kapazität
DE69515684T2 (de) Digitale datendekodierungsanordnung unter verwendung einer variablen entscheidungstiefe
DE69535410T2 (de) Verfahren und anordnung zum testen von digitalen übertragungskanälen mit variablen oder festen datenraten
DE60214094T2 (de) Phasennachlaufeinrichtung für linear modulierte Signale
DE3687603T2 (de) Kodiertes modulationssystem mit einem vereinfachten dekoder, faehig zur verminderung der folge der kanalverzerrung.
DE2364874C3 (de) Kodieranordnung für ein Differentialphasenmodulationssystem
DE60129111T2 (de) Kanalschätzung in einem CDMA-System mit codierten Steuersymbolen als zusätzlichen Pilotsymbolen
DE10296698B4 (de) Verfahren und Vorrichtung zum Kodieren und Dekodieren von Daten mit unterschiedlichen Modulationsschemata und Kodierungen und einem ARQ-Protokoll
DE102018206132B4 (de) Decodergestützte iterative Kanalschätzung
DE60309546T2 (de) Maximal-a-posteriori-Wahrscheinlichtkeitsdetektor
DE10227152A1 (de) Apparatus and Method for Transmitting and Receiving Data in a CDMA Mobile Communicationsystem
DE102007044488A1 (de) Empfangsverfahren, Empfangsvorrichtung und Programm
DE102007055388A1 (de) Soft-Decision-Korrekturverfahren, Empfänger, der dieses verwendet, und Programm hierfür
DE60035269T2 (de) Verfahren und apparat zur bestimmung von kanalbedingungen in drahtlosen kommunikationssystemen
DE60219373T2 (de) Kanalschätzung und Datenentscheidung für Mehrträgerempfang
DE19837426A1 (de) Verfahren und Vorrichtung zum Senden von Informationssymbolen mittels einer Mehrzahl von Trägern und Verfahren und Vorrichtung zum Empfangen von Informationssymbolen

Legal Events

Date Code Title Description
8364 No opposition during term of opposition