DE69421306T2 - Verfahren und Gerät für Kodage zur Fehlerkontrolle in einem digitalen Datenkommunikationssystem - Google Patents
Verfahren und Gerät für Kodage zur Fehlerkontrolle in einem digitalen DatenkommunikationssystemInfo
- Publication number
- DE69421306T2 DE69421306T2 DE69421306T DE69421306T DE69421306T2 DE 69421306 T2 DE69421306 T2 DE 69421306T2 DE 69421306 T DE69421306 T DE 69421306T DE 69421306 T DE69421306 T DE 69421306T DE 69421306 T2 DE69421306 T2 DE 69421306T2
- Authority
- DE
- Germany
- Prior art keywords
- bit
- bit sequence
- sequence
- selector
- decoder
- 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 - Fee Related
Links
- 238000000034 method Methods 0.000 title claims description 12
- 238000001514 detection method Methods 0.000 claims description 29
- 230000005540 biological transmission Effects 0.000 claims description 15
- 238000007476 Maximum Likelihood Methods 0.000 claims description 6
- 238000010586 diagram Methods 0.000 description 16
- 230000004083 survival effect Effects 0.000 description 7
- 239000007787 solid Substances 0.000 description 4
- 230000006870 function Effects 0.000 description 3
- 238000005562 fading Methods 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 230000003044 adaptive effect Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 238000005094 computer simulation Methods 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 238000001228 spectrum Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0056—Systems characterized by the type of code used
- H04L1/0064—Concatenated codes
- H04L1/0065—Serial concatenated codes
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, 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/35—Unequal 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0045—Arrangements at the receiver end
- H04L1/0054—Maximum-likelihood or sequential decoding, e.g. Viterbi, Fano, ZJ algorithms
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Theoretical Computer Science (AREA)
- Artificial Intelligence (AREA)
- Error Detection And Correction (AREA)
Description
- Die Erfindung betrifft allgemein ein Verfahren und eine Vorrichtung bzw. ein Gerät zur Implementierung einer Fehlerkontrollcodierung in einem digitalen Datenübertragungssystem und insbesondere ein Verfahren und eine Vorrichtung zur Korrektur und/oder Ermittlung von Fehlern, die während einer Datenübertragung entstehen.
- Um Kanalbitfehler, die während einer digitalen Datenübertragung entstehen, zu korrigieren und/oder zu ermitteln, werden bekanntlich Fehlerkontrollcodiertechniken verwendet.
- Diese Techniken sind offenbart in einem Buch mit dem Titel "Essential of Error-Coding Techniques", herausgegeben von Hideki IMAI und veröffentlicht 1990 von Academic Press, Inc., San Diego, California 92101, USA und in einem Buch mit dem Titel "Error Control Coding: Fundamentals and Applications" von Shu tin et al., veröffentlicht 1983 von Prentice- Hall, Inc., Englewood Cliffs, N.J. 07632, USA, und zwar lediglich anhand von Beispielen.
- Redundante Bits werden jedem zu übertragenden Binärcodewort hinzugefügt, um dem Code die Fähigkeit zu verkeihen, Kanalrauschen abzuwehren. Ein Viterbi-Algorithmus kann eine Fehlerkorrekturfähigkeit beinahe gleichmäßig über die gesamten Bits eines Codewortes aufweisen. Es ist jedoch mitunter erforderlich, (ein) spezielle(s) Bit(s) jedes Codewortes mit hoher Zuverlässigkeit im Vergleich zu den verbleibenden Bits des Codewortes zu übertragen. Um eine solche Anforderung nach dem Stand der Technik zu realisieren, mußte bisher zwangsläufig erforderlich eine Vielzahl von Paaren von Codierern und Decodierern mit verschiedenen Fehlerkontrollfähigkeiten oder -funktionen bereitgestellt werden. Die oben erwähnten bekannten Techniken haben jedoch den Vorteil, daß ein Gesamtsystem groß und komplex wird. Ferner wird die Freiheit der Systemausführung eingeschränkt.
- In einem Artikel von G. D'Aria et al. mit dem Titel "Simulation and Performance of the Pan-European Land Mobile Radio System" in Vol. 41, Nr. 2, Mai 1992 in IEEE Transactions on Vehicular Technology, New York, USA auf Seite 177 bis 189 ist die Arbeitsweise der vom ETSI/GSM (European Telecommunications Standards Institute/Global System Mobile) gewählten Kompaktspektrum-Konstanthüllkurvenmodulation beschrieben, und zwar zusammen mit einer verketteten Block- und Faltungscodierung, adaptiver Viterbi-Entzerrung und Soft-decision-Viterbi- Decodierung, um die starken Zeit- und frequenzselektiven Verzerrungen zu bewältigen, die von Ausbreitungsphänomenen verursacht werden, die für eine Computersimulation zweckmäßig modelliert werden.
- Die Beschreibung der UK-Patentanmeldung 2 238 933, die am 12. Juni 1991 veröffentlicht wurde, beschreibt ein kostensparendes Verfahren zum Schutz von Mehrfachimpulssprachcodierern vor den Auswirkungen von schweren Zufalls- oder Fadingbitmusterfehlern, die einen Standardfehlerkorrekturcode (Faltungsrate-1/2-Codierung and Viterbi-Trellisdecodierung) zum Schutz vor Zufallsfehlern bei zyklischer Redundanzcode- (CRC-)Fehlerermittlung bei Fadingfehlern kombinieren. Der Schutz, der nur auf wahrnehmbar signifikante Bits in einem übertragenen Rahmen angewendet wird, erfolgt im Sprachcodierer.
- Eine Beschreibung, die am 15. Dezember 1998 mit der internationalen Patentveröffentlichung WO88/9967 veröffentlicht wurde, beschreibt ein Verfahren zur Fehlerkorrektur in digital codierter Sprache, in der eine Teilbandcodierung vorzugsweise auf ein Eingangssignal, Abtastinformation und Nebeninformation angewendet wurde. Ein Fehlerermittlungscode wurde auf mindestens einen Abschnitt der Nebeninformation angewendet, und ein Fehlerkorrekturcode wurde auf die Nebeninformation und den Fehlerermittlungscode angewendet. Ein zweiter Fehlererkennungscode wurde auf den Fehlerkorrekturcode und die Informationssignale angewendet, und der Fehlererkennungs- und der Fehlerkorrekturcode wurden multiplexiert.
- Merkmale von Anordnungen, die unten anhand von Beispielen bei der Darstellung der Erfindung zu beschreiben sind, bestehen darin, daß bei der Fehlerkontrollcodierung (ein) wichtige(s) Bit(s) aus einer Bitsequenz gewählt wird/werden und dann zwecks richtigen Übertragung derselben einer Blockcodierung unterzogen wird/werden und daß eine Vorrichtung für eine solche Fehlerkontrollcodierung eine Einrichtung zum Wählen eines/von wichtigen Bits aus einer Bitsequenz und zum anschließenden Blockcodierung derselben zwecks richtiger Übertragung aufweist.
- Um in einer Anordnung, die unten anhand von Beispielen in der Darstellung der Erfindung zu beschreiben ist, sicherzustellen, daß ein vorbestimmtes Bit oder Bits einer zu übertragenden Bitsequenz vom Empfänger richtig empfangen werden, wird das vorbestimmte Bit zunächst aus der Bitsequenz extrahiert. Das extrahierte Bit wird dann codiert und mit einer Bitsequenz, die nicht extrahiert worden ist, kombiniert. Die kombinierte Bitsequenz wird faltungscodiert und dann an den Empfänger übertragen. Die übertragene Bitsequenz wird einer Maximumlikelihood-Decodierung unter Verwendung eines Viterbi- Algorithmus unterzogen, wobei die Information der vorbestimmten Bitcodierung verwendet wird, um das vorbestimmte Bit zu decodieren. Danach wird der codierte vorbestimmte Bitabschnitt extrahiert und einer Blockdecodierung unterzogen.
- Die nachfolgende Beschreibung und die Zeichnungen offenbaren anhand von Beispielen die Erfindung, die in den beigefügten Ansprüchen gekennzeichnet ist, deren Formulierung den Umfang des zu erteilenden Schutzes bestimmen.
- In den Zeichnungen zeigen:
- Fig. 1 ein Blockschaltbild, das eine erste erfindungsgemäße Anordnung darstellt,
- Fig. 2A ein Diagramm, das Wellenformen eines zu codierenden Analogsignals schematisch darstellt,
- Fig. 2B ein Diagramm, das zu übertragende digitale Impulsbündelsignale schematisch darstellt,
- Fig. 3 ein Blockschaltbild, das eine Anordnung eines in Fig. I gezeigten Blocks darstellt,
- Fig. 4 ein Zustandsdiagramm eines bekannten Codierers, anhand dessen die Arbeitsschritte der ersten Anordnung beschrieben werden,
- Fig. 5 bis 7 jeweils ein Trellis-Diagramm, anhand dessen die Arbeitsschritte der ersten Anordnung beschrieben werden,
- Fig. 8 ein Blockschaltbild, das einen Sender einer zweiten erfindungsgemäßen Anordnung darstellt,
- Fig. 9 ein Blockschaltbild, das einen Empfänger der zweiten Anordnung schematisch darstellt,
- Fig. 10 ein Blockschaltbild, das einen Sender einer dritten erfindungsgemäßen Anordnung schematisch darstellt, und
- Fig. 11 ein Blockschaltbild, das einen Empfänger der dritten Anordnung schematisch darstellt.
- Die in Fig. 1 gezeigte Anordnung weist allgemein einen Sender 10 auf, der mit einem Empfänger 12 über einen Übertragungskanal 14 verbunden ist.
- Der Sender 10 weist eine Nachrichtenquelle 16, einen Quellcodierer 18, einen Bitselektor 20, einen Blockcodierer 22, einen Bitkombinierer (oder Bitmischer) 24 und einen Faltungscodierer 26 auf, die alle gekoppelt sind, wie dargestellt. Andererseits weist der Empfänger 12 einen Maximumlikelihood-Decodierer 28, der unter einem Viterbi-Algorithmus arbeitet, einen Bitselektor 30, einen Blockdecodierer 32, einen Bitkombinierer 34 und einen Quelldecodierer 36 auf, die alle gekoppelt sind, wie dargestellt.
- Lediglich zum besseren Verständnis der ersten Anordnung wird angenommen, daß die Nachrichtenquelle 16 die Form einer Analogsprachsignalquelle hat. Die Wellenform des Sprachsignals (mit "S1" bezeichnet), die von der Quelle 16 bezogen wird, ist in Fig. 2A schematisch dargestellt. Das Sprachsignal S1 wird im Quellcodierer 18 einer Digitalsignalverarbeitung unterzogen. Das heißt, das Sprachsignal wird zunächst in einem Zeitintervall von 40 ms digitalisiert, was (beispielsweise) als Rahmen bezeichnet wird. Danach wird das digitalisierte Sprachsignal komprimiert und dann in einem Impulsbündelmodus an den Bitselektor 20 als Bitsequenz 52 angelegt, wie am besten in Fig. 2B zu sehen ist. Wenn die Digitalisierungsbitrate 4 Kbit/s ist, wird man ohne weiteres anerkennen, daß jeder Rahmen von 40 ms 160 Bits enthält. Es wird ferner angenommen, daß das erste Bit des Impulsbündelsignals ein Modusbit ist, das anzeigt, ob der entsprechende Rahmen ein Sprachrahmen oder ein Sprachpausenrahmen ist. Dieses Modusbit, das zu Beginn jedes Rahmens erscheint, ist sehr wichtig und muß daher richtig zum Empfänger 12 übertragen werden. Das zweite bis letzte Bit jedes Rahmens ist im Vergleich zum Modusbit nicht so wichtig.
- Der Bitselektor 20 wählt das oben erwähnte Modusbit aus den ankommenden Rahmendaten aus. Diese Bitwahl erfolgt unter Steuerung eines Bitwahlsignals, das von einer zentralen Prozessoreinheit (CPU) (nicht dargestellt), die den Gesamtbetrieb des Senders 10 überwacht, an den Selektor 20 angelegt wird. Die anderen Bits, die nicht vom Bitselektor 20 gewählt worden sind, werden direkt an den Bitkombinierer 24 übergeben.
- Das derartig gewählte Modusbit wird an den Blockcodierer 22 übergeben, der in dieser bestimmten Anordnung "01" und "10" ausgibt, wenn das übergebene Modusbit "0" bzw. "1" ist. Der Bitkombinierer 24 kombiniert oder mischt die beiden Ausgangssignale des Blockcodierers 22 und des Bitselektors 20 in dieser Reihenfolge. Eine Bitsequenz (bezeichnet mit "A") vom Bitkombinierer 24 wird an den Faltungscodierer 26 angelegt. In der bisherigen Beschreibung wird angenommen, daß ein gegebener Rahmen der Bitsequenz S2, die vom Quellcodierer 18 ausgegeben wird, dargestellt ist durch
- S2 = (0 0 0 1. . . .) (1)
- Wenn, wie oben erwähnt, das Modusbit "0" ist, dann ist das Ausgangssignal des Blockcodierers 22 "01". Der Kombinierer 24 gibt also das Ausgangssignal A aus, das gegeben ist durch
- A = (0 1 0 0 1. . .) (2)
- Nachstehend wird Bezug genommen auf Fig. 3, wo die Anordnung des Faltungscodierers 26 in Form eines Blockschaltbildes dargestellt ist. Der Codierer 26 ist ein herkömmlicher Codierer und weist in dieser bestimmten Ausführungsform drei Verzögerungsleitungen oder Schieberegister (bezeichnet mit Dn, Dn-1 und Dn-2), zwei Modulo-2-Addierer 40a bis 40b und einen Parallel-Seriell-(P/S-)Umsetzer 42 auf. Die Zwangslänge (K) des Codierers 26 beträgt 3 (drei), während seine Coderate (R) 1/2 beträgt. Die in Fig. 3 dargestellte Anordnung ist dem Fachmann bekannt.
- Fig. 4 ist ein Zustandsdiagramm des Codierers 26. In Fig. 4 zeigen zwei aufeinanderfolgenden Bits in jedem der Ovale die Bits an, die in den letzten beiden Verzögerungsleitungen Dn-2 und Dn-1 gehalten werden, und zeigen einen Codiererzustand an. Die Codiererzustände (00), (01), (10) und (11) sind durch durchgezogene oder unterbrochene Pfeillinien verbunden oder geschleift. Wenn ein Bit "1" an den Codierer 26 angelegt wird, wird der Codiererzustand in den anderen Zustand umgestellt oder entlang dem durchgezogenen Pfeil in den gleichen Zustand zurückgestellt. Wenn dagegen ein Bit "0" an den Codierer 26 angelegt wird, dann wird der Codiererzustand in den anderen Zustand umgestellt oder entlang dem gestrichelten Pfeil in den gleichen Zustand zurückgestellt. Die Ausgangssignale des Faltungscodierers 26 sind entlang den entsprechenden Pfeilen dargestellt, z. B. (00), (01), (10) und (11).
- Der Codierer 26 wird in den Zustand (00) versetzt, bevor eine Impulsbündelbitsequenz neu angelegt wird. Wenn das Modusbit (bzw. das erste Bit), das "0" sei, an den Codierer 26 angelegt wird, bleibt der Codiererzustand (00) daher unverändert. Das Ausgangssignal des Codierers 26 ist in diesem Fall (00). Wenn folglich das zweite Bit, das "1" sei, an den Codierer 26 angelegt wird, nimmt der Codierer 26 den Zustand (01) an und gibt eine Zwei-Bit-Sequenz (11) aus. Danach gehen ähnliche Arbeitsschritte weiter. Wenn die Bitsequenz A, nämlich (0 1 0 0 1. . .) an den Faltungscodierer 26 angelegt wird, wie in der Formel (2) erwähnt, dann ist die Bitsequenz C, die vom Codierer 26 bezogen wird und dann über den Kanal 14 gesendet wird, gegeben durch
- C = (00 11 01 11 11 . . . .) (3)
- Die Bitsequenz C wird über den Kanal 14 übertragen und als Bitsequenz CC an den Empfänger 12 übergeben. Es wird angenommen, daß die Bitsequenz C während der Übertragung Bitfehlern ausgesetzt ist und daß die Bitsequenz CC dargestellt ist durch
- CC = (01 11 01 01 11. . .) (4)
- Der Betrieb des Maximum-likelihood-Decodierers 28 des Empfängers 12 wird nachstehend mit Bezug auf die in Fig. 5 bis 7 gezeigten Trellis-Diagramme beschrieben. Die oben erwähnten Bitsequenzen A, C und CC, die durch die Formeln (2) bis (4) gegeben sind, sind in den oberen Abschnitten jeder der Fig. 5 bis 7 dargestellt. Es ist bekannt, daß das Trellis-Diagramm die Codiererzustände (siehe Fig. 4) entlang einer Zeitachse darstellt. Man beachte in Fig. 5 bis 7, daß die Ziffern über den Codiererzuständen jeweils "Dezimalzahlen" darstellen, die eine Pfadmetrik anzeigen.
- Nachstehend wird Fig. 5 beschrieben. Der Decodierer 28 wird so in den Anfangszustand versetzt, daß die Pfadmetrik des Codiererzustands (00) auf 0 gesetzt wird, während jede der verbleibenden Pfadmetriken der anderen Zustände (01), (10) und (11) auf eine hinreichend große Zahl gesetzt wird, z. B. 10 (dezimal) in dieser bestimmten Ausführungsform. Diese Pfadmetriken sind am ersten Zeitpunkt (t = 0) dargestellt.
- Der Decodierer 28 decodiert zu Beginn die ersten beiden Bits (nämlich das codierte Modusbit) unter Verwendung der bereits bekannten Blockcodeinformation (01 und 10). Diese Information ist in einem geeigneten Speicher im Empfänger 12 gespeichert und wird an den Decodierer 28 angelegt.
- Die ersten Bitsequenzen sind im Codierer 22 blockcodiert worden, und man wird somit anerkennen, daß Überlebenspfade bei t = 1 und t = 2 durch zwei durchgezogene fette Linien und zwei gestrichelte fette Linien dargestellt sind.
- Eine Bitsequenz des Überlebenspfades, der sich bei t = 2 zum Zustand (00) erstreckt, ist (00), und daher kann dieser Pfad nicht als letzter gewählt werden. Ferner ist eine Bitsequenz des Überlebenspfades, der sich bei t = 2 zum Zustand (01) erstreckt, (11). Daher wird erwartet, daß dieser Pfad als letzter gewählt wird. Andererseits kann erwartet werden, daß der Überlebenspfad, der sich bei t = 2 zum Zustand (10) erstreckt, zur Bestimmung der codierten Sequenz gewählt wird, während nicht erwartet werden kann, daß der Überlebenspfad, der sich bei t = 2 zum Zustand (11) erstreckt, verwendet wird, um die decodierte Sequenz zu bestimmen.
- Um die nachfolgenden Überlebenspfade zu bestimmen, werden die Pfadmetriken in den Zuständen (00) und (11), beide bei t = 2, auf eine hinreichend große Zahl gesetzt, z. B. 10 (dezimal) in diesem Fall, wie in Fig. 6 gezeigt. Dies soll die Überlebenspfade ausschließen, die schließlich zum Schätzen der ankommenden Bitsequenz nicht verwendet werden können.
- Danach wird eine herkömmliche Decodierung nach einem Viterbi-Algorithmus implementiert, der dem Fachmann bekannt ist und hier nicht beschrieben wird, um die Beschreibung zu verkürzen. Überlebenspfade, die bis zu t = 5 bestimmt sind, sind durch fette durchgezogene und gestrichelte Linien in Fig. 7 dargestellt.
- Die decodierte Bitsequenz aus dem Maximum-likelihood- Decodierer 28 wird dann an den Bitselektor 30 angelegt. Dieser Selektor 30 implementiert den umgekehrten Betrieb seines Gegenstücks 20 als Antwort auf ein Bitwahlsignal, das vorher im Empfänger 12 gespeichert worden ist. Die ersten beiden Bits des Rahmens werden an den Blockdecodierer 32 angelegt, während die verbleibenden Bits direkt an den Bitkombinierer 34 angelegt werden. Der Bitselektor 30 decodiert die ersten beiden Bits "0" oder "1" und legt die decodierten Bits dann an den Bitkombinierer 34 an. Die im Bitkombinierer 34 ausgerichtete Bitsequenz wird an den Quelldecodierer 36 angelegt, der eine geschätzte Nachricht erzeugt.
- In der oben erwähnten ersten Anordnung ist die Modusinformation ein einzelnes Bit. Es ist jedoch auch möglich, die Modusinformation auf zwei oder mehr als zwei Bits zu setzen. Ferner ist der Bitkombinierer 24 so eingerichtet, daß das Ausgangssignal des Blockcodierers 22 in eine gegebene Position des vom Bitselektor 20 an diesen angelegten Bitstroms eingefügt werden kann.
- Nachstehend werden Fig. 8 und 9 beschrieben, wobei eine zweite erfindungsgemäße Anordnung in einem Blockschaltbild schematisch dargestellt ist. Die zweite Anordnung ist eine Fehlerkontrollcodiervorrichtung, die sowohl eine Fehlerkorrektur- als auch eine Fehlerermittlungsfunktion aufweist. Fig. 8 und 9 zeigen einen Sender bzw. einen Empfänger der zweiten Anordnung.
- Der in Fig. 8 gezeigte Sender weist einen Schalter 60 und zwei Fehlerermittlungscodierer 62a und 62b im Vergleich zum Gegenstück der ersten Anordnung auf. Demzufolge werden die Blöcke in Fig. 8, auf die bereits in der ersten Anordnung Bezug genommen worden ist, nur beschrieben, wenn sie für die zweite Anordnung direkt relevant sind.
- Das vom Bitselektor 20 bezogene Modusbit wird als Schaltersteuersignal an den Schalter 60 angelegt. Die verbleibenden Bits vom Bitselektor 20 werden an den Schalter 60 angelegt. Wenn das Modusbit logisch "0" ist, bewirkt der Schalter 60, daß die ankommende Bitsequenz an den Fehlerermittlungscodierer 62a angelegt wird. Wenn dagegen das Modusbit logisch "1" ist, dann legt der Schalter 60 die ankommende Bitsequenz an den anderen Codierer 62b an.
- Wie bekannt, soll ein Fehlerermittlungscodierer zum Zwecke der Fehlerermittlung einer an diesen angelegten Bitsequenz (nämlich Detektionsbits) redundante Bits hinzufügen.
- In der zweiten Anordnung fügen die Codierer 62a und 62b den an diese angelegten Bitsequenzen die gleiche Länge von redundanten Bits hinzu. Die beiden Codierer 62a und 62b erzeugen jedoch verschiedene redundante Bits oder richten diese miteinander ein. Dies wird in dem Fall besonders bevorzugt, wo signifikante Bits sich in Abhängigkeit vom logischen Pegel des Modusbits unterscheiden (nämlich je nachdem, ob die Rahmendaten dem Sprachmodus in dieser bestimmten Anordnung entsprechen oder nicht).
- Der in Fig. 9 gezeigte Empfänger weist einen Schalter 64 und zwei Fehlerermittlungsdecodierer 64a und 64b zusätzlich zum Empfänger 12 der ersten Anordnung auf. Demzufolge werden die Blöcke in Fig. 9, auf die bereits in der ersten Anordnung Bezug genommen worden ist, nur beschrieben, wenn sie für die zweite Anordnung direkt relevant sind.
- Das codierte Modusbit, das vom Blockcodierer 22 bezogen wird, wird als Schaltersteuersignal an den Schalter 64 angelegt. Die vom Bitselektor 30 ausgegebene Bitsequenz außer das Modusbit wird an den Schalter 64 angelegt. Wenn das decodierte Modusbit (nämlich das Schaltersteuersignal) logisch "0" ist, bewirkt der Schalter 64, daß die ankommende Bitsequenz an den Fehlerermittlungsdecodierer 64a angelegt wird. Wenn dagegen das decodierte Modusbit logisch "1" ist, übergibt der Schalter 64 die ankommende Bitsequenz an den anderen Decodierer 64b.
- Jeder der Fehlerermittlungsdecodierer 64a und 64b gibt ein Fehlerermittlungsbit aus, das anzeigt, ob die empfangene Bitsequenz einen Fehler aufweist oder nicht. Ferner legen die Decodierer 64a und 64b jeweils die decodierten Bitsequenzen an den Bitkombinierer 34. Die folgenden Arbeitsschritte sind im wesentlichen die gleichen wie die, die in Verbindung mit der ersten Anordnung beschrieben worden sind.
- Ein weiteres Merkmal der zweiten Anordnung ist folgendes: Wenn das Modusbit falsch übertragen wird, gibt jeder der Decodierer 64a und 64b das Fehlerermittlungsbit aus, das das Vorhandensein eines Übertragungsfehlers darstellt. Dies ist insofern sehr vorteilhaft, als das Modusbit die Besonderheit aufweist, richtig übertragen worden zu sein, wie oben erwähnt.
- Nachstehend werden Fig. 10 und 11 beschrieben, in denen eine dritte erfindungsgemäße Anordnung in einem Blockschaltbild schematisch dargestellt ist. Die dritte Anordnung ist eine Fehlerkontrollcodiervorrichtung, die sowohl eine Fehlerkorrektur- als auch eine Fehlerermittlungsfunktion hat. Fig. 10 und 11 zeigen einen Sender bzw. einen Empfänger der dritten Ausführungsform.
- Der in Fig. 10 gezeigte Sender weist ferner im Vergleich zum Gegenstück 10 der ersten Anordnung einen Bitselektor 70 und einen Fehlerermittlungscodierer 72 auf. Demzufolge werden die Blöcke in Fig. 10, auf die in der ersten Anordnung Bezug genommen worden ist, nur beschrieben, wenn sie für die dritte Anordnung direkt relevant sind.
- Das vom Bitselektor 20 bezogene Modusbit wird als Bitwahlsignal an den Bitselektor 70 angelegt. Die vom Bitselektor 20 ausgegebenen verbleibenden Bits eines Rahmens werden an den Bitselektor 70 angelegt. Das an den Bitselektor 70 angelegte Modusbit bestimmt, welcher Abschnitt der an ihn angelegten Bitsequenz an den Fehlerermittlungscodierer 72 übergeben werden sollte. Die Anzahl der in Abhängigkeit vom Logikpegel des Modusbits gewählten, aufeinanderfolgenden Bits unterscheidet sich normalerweise von der, die als Antwort auf den anderen logischen Pegel des Modusbits gewählt wird. Dies ist in dem Fall besonders vorteilhaft, wo signifikante Bits in Abhängigkeit von den Logikpegeln des Modusbits (nämlich je nachdem, ob die Rahmendaten einem Sprachmodus in dieser bestimmten Anordnung entsprechen oder nicht) verschiedene Positionen haben. Der Bitkombinierer 24 kombiniert die Ausgangssignale der Blöcke 22, 70 und 72.
- Fig. 11 zeigt einen Empfänger der dritten Anordnung. Den Betrieb in dieser Anordnung kann man weiteres aus der Beschreibung entnehmen, und es wird auf die Beschreibung verzichtet, um eine Verkürzung zu erreichen.
- Es ist verständlich, daß die oben gemachte Offenbarung nur drei mögliche Anordnungen anhand von Beispielen darstellt und daß verschiedene Änderungen und Modifikationen sowie andere Anordnungen innerhalb des Schutzbereichs der Erfindung gemäß den beigefügten Ansprüchen denkbar sind.
Claims (8)
1. Vorrichtung zur Fehlerkontrollcodierung mit:
einem Selektor (20) zum Wählen mindestens eines Bits
aus einer an diesen angelegten Bitsequenz (52), wobei das
mindestens eine Bit gewählt wird, um mit einer höheren
Zuverlässigkeit als die verbleibenden Bits der Bitsequenz übertragen
zu werden, und das mindestens eine Bit irgendeine Position in
der Bitsequenz belegt,
einem ersten Codierer (22) zum Blockcodieren des
mindestens einen an diesen angelegten Bits vom Selektor, wodurch
eine gültige Fehlerkontrollsequenz entsteht, wobei die gültige
Fehlerkontrollsequenz geeignet ist, eine ungültige
Fehlerkontrollsequenz gemäß späteren Übertragungsfehlern zu werden,
einem Kombinierer (24) zum Kombinieren des
Ausgangssignals des ersten Codierers und der Bits in der Bitsequenz,
die nicht vom Selektor gewählt worden sind,
einem zweiten Codierer (26) zum Implementieren einer
Faltungscodierung an der vom Kombinierer ausgegebenen
Bitsequenz,
einem ersten Decodierer (28) zum Implementieren einer
Maximum-likelihood-Decodierung an der übertragenen Bitsequenz
und
einem zweiten Decodierer (32) zum Blockdecodieren der
blockcodierten Bitdaten.
2. Vorrichtung zur Fehlerkontrollcodierung, die einen
Datensender (10) und einen Datenempfänger (12) aufweist, die
über einen Übertragungskanal (14) miteinander verbunden sind,
wobei der Datensender aufweist:
einen ersten Bitselektor (20) zum Wählen mindestens
eines vorbestimmten Bits aus einer an diesen angelegten
Bitsequenz (52), wobei der erste Bitselektor (20) das mindestens
eine vorbestimmte Bit und eine erste Bitsequenz ausgibt, die
das mindestens eine vorbestimmte Bit nicht aufweist,
einen ersten Codierer (22), der mit dem ersten
Bitselektor (20) gekoppelt ist, zum Codieren des mindestens einen
vorbestimmten Bits und zum Ausgeben einer zweiten Bitsequenz,
die dem mindestens einen vorbestimmten Bit entspricht, das vom
ersten Codierer (22) codiert worden ist,
einen ersten und zweiten Fehlerermittlungscodierer
(62a, 62b), die miteinander parallelgeschaltet sind,
eine erste Schalteinrichtung (60), die so gekoppelt
ist, daß die erste Bitsequenz und das mindestens eine
vorbestimmte Bit empfangen werden können, wobei die erste
Schalteinrichtung (60) die erste Bitsequenz in Abhängigkeit von dem
mindestens einen vorbestimmten Bit entweder an den ersten oder
zweiten Fehlerermittlungscodierer (62a, 62b) anlegt,
einen ersten Bitkombinierer (24), der so gekoppelt ist,
daß die zweite Bitsequenz und eines der Ausgangssignale des
ersten und des zweiten Fehlerermittlungscodierer (62a, 62b)
kombiniert werden können, wobei der erste Bitkombinierer (24)
eine kombinierte Bitsequenz (A) ausgibt, und
einen zweiten Codierer (26) zum Faltungscodieren der
kombinierten Bitsequenz in eine dritte Bitsequenz, die über
den Übertragungskanal (14) an den Datenempfänger (12)
übertragen wird.
3. Vorrichtung nach Anspruch 2, wobei der
Datenempfänger aufweist:
einen ersten Decodierer (28) zum Decodieren der über
den Übertragungskanal an diesen angelegten dritten Bitsequenz
unter Verwendung eines Viterbi-Algorithmus,
einen zweiten Bitselektor (30), der mit dem ersten
Decodierer gekoppelt ist, zum Wählen einer vierten Bitsequenz
aus einem Ausgangssignal des ersten Decodierers, wobei die
vierte Bitsequenz der zweiten Bitsequenz entspricht und der
zweite Bitselektor (30) die vierte Bitsequenz und eine fünfte
Bitsequenz ausgibt, die die vierte Bitsequenz nicht aufweist,
einen zweiten Decodierer (32), der so gekoppelt ist,
daß die vierte Bitsequenz codiert werden kann, wobei der
zwei
te Decodierer (32) mindestens ein Bit ausgibt, das dem
mindestens einem vorbestimmten Bit entspricht,
einen ersten und zweiten Fehlerermittlungsdecodierer
(64a, 64b), die miteinander parallelgeschaltet sind,
eine zweite Schalteinrichtung (64), die so gekoppelt
ist, daß die fünfte Bitsequenz und das mindestens eine Bit
empfangen werden können, wobei die zweite Schalteinrichtung
(64) die fünfte Bitsequenz in Abhängigkeit von dem mindestens
einen Bit entweder an den ersten oder zweiten
Fehlerermittlungsdecodierer (64a, 64b) selektiv anlegt, und
einen zweiten Bitkombinierer (34), der so gekoppelt
ist, daß das mindestens eine Bit und ein Ausgangssignal
des ersten oder zweiten Fehlerermittlungsdecodierers (64a,
64b) kombiniert werden können.
4. Vorrichtung zur Fehlerkontrollcodierung, die einen
Datensender (10) und einen Datenempfänger (12) aufweist, die
über einen Übertragungskanal (14) miteinander verbunden sind,
wobei der Datensender aufweist:
einen ersten Bitselektor (20) zum Wählen mindestens
eines vorbestimmten Bits aus einer an diesen angelegten
Bitsequenz (52), wobei der erste Bitselektor (20) das mindestens
eine vorbestimmte Bit und eine erste Bitsequenz ausgibt, die
das mindestens eine vorbestimmte Bit nicht aufweist,
einen ersten Codierer (22), der mit dem ersten
Bitselektor (20) gekoppelt ist, zum Codieren des mindestens einen
vorbestimmten Bits und zum Ausgeben einer zweiten Bitsequenz,
die dem mindestens einen vorbestimmten Bit entspricht, das vom
ersten Codierer (22) codiert worden ist,
einen zweiten Bitselektor (70), der so gekoppelt ist,
daß die erste Bitsequenz und das mindestens eine vorbestimmte
Bit empfangen werden können, wobei der zweite Bitselektor (70)
in Abhängigkeit von dem mindestens einen vorbestimmten Bit
eine dritte Bitsequenz einer vorbestimmten Länge aus der ersten
Bitsequenz wählt und der zweite Bitselektor (70) eine vierte
Bitsequenz ausgibt, die die dritte Bitsequenz nicht aufweist,
einen Fehlerermittlungscodierer (72), der die dritte
Bitsequenz empfängt und dieser redundante Bits hinzufügt,
wobei der Fehlerermittlungscodierer (72) eine fünfte Bitsequenz
ausgibt, die die dritte Bitsequenz und die redundanten Bits
aufweist,
einen ersten Bitkombinierer (24), der so gekoppelt ist,
daß die zweite, vierte und fünfte Bitsequenz kombiniert werden
können, wobei der erste Bitkombinierer (24) eine kombinierte
Bitsequenz ausgibt, und
einen zweiten Codierer (26) zum Faltungscodieren der
kombinierten Bitsequenz in eine sechste Bitsequenz, die über
den Übertragungskanal (14) an den Datenempfänger (12)
übertragen wird.
5. Vorrichtung nach Anspruch 4, wobei der
Datenempfänger aufweist:
einen ersten Decodierer (28) zum Decodieren der über
den Übertragungskanal (14) an diesen angelegten sechsten
Bitsequenz unter Verwendung eines Viterbi-Algorithmus,
einen dritten Bitselektor (30), der mit dem ersten
Decodierer (28) gekoppelt ist, zum Wählen einer siebenten
Bitsequenz aus einem Ausgangssignal des ersten Decodierers (28),
wobei die siebente Bitsequenz der zweiten Bitsequenz
entspricht und der dritte Bitselektor (30) die siebente
Bitsequenz und eine achte Bitsequenz ausgibt, die die siebente
Bitsequenz nicht aufweist,
einen zweiten Decodierer (32), der so gekoppelt ist,
daß die siebente Bitsequenz decodiert werden kann, wobei der
zweite Decodierer (32) mindestens ein Bit ausgibt, das dem
mindestens einen vorbestimmten Bit entspricht,
einen vierten Bitselektor (74), der so gekoppelt ist,
daß die achte Bitsequenz vom dritten Bitselektor (30)
empfangen werden kann und das mindestens eine Bit vom zweiten
Decodierer (32) empfangen werden kann, wobei der vierte
Bitselektor (74) eine neunte und eine zehnte Bitsequenz wählt, die der
vierten bzw. fünften Bitsequenz entsprechen,
einen Fehlerermittlungsdecodierer (76), der so
eingerichtet ist, daß die zehnte Bitsequenz decodiert werden kann,
und
einen zweiten Bitkombinierer (34), der so gekoppelt
ist, daß das mindestens eine Bit vom zweiten Decodierer (32),
die neunte Bitsequenz und ein Ausgangssignal des
Fehlerermittlungsdecodierers (76) kombiniert werden können.
6. Verfahren zur Fehlerkontrolle mit den Schritten:
Wählen mindestens eines Bits aus einer
Anfangsbitsequenz (S2), wobei das mindestens eine Bit irgendeine Position
in der Anfangsbitsequenz belegt,
Codieren des mindestens einen Bits, wodurch ein
codiertes Bit entsteht,
Kombinieren des codierten Bits mit Bits in der
Anfangsbitsequenz, die nicht gewählt sind, wodurch eine zweite
Bitsequenz (A) entsteht,
Faltungscodieren der zweiten Bitsequenz, wodurch eine
dritte Bitsequenz (C) entsteht,
Decodieren der dritten Bitsequenz unter Verwendung
einer Maximum-likelihood-Decodierung, um eine vierte Bitsequenz
zu bilden, und
Decodieren der vierten Bitsequenz.
7. Verfahren nach Anspruch 6, wobei der Schritt des
Wählens ein Modusbit aus der Anfangsbitsequenz aufweist.
8. Verfahren nach Anspruch 6, wobei der Schritt des
Codierens eine logische "0" als "01" codiert und eine logische
"1" als "10" codiert.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP3003693A JPH06244742A (ja) | 1993-02-19 | 1993-02-19 | 誤り制御装置 |
JP5093455A JP2845720B2 (ja) | 1993-04-21 | 1993-04-21 | 誤り検出装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
DE69421306D1 DE69421306D1 (de) | 1999-12-02 |
DE69421306T2 true DE69421306T2 (de) | 2000-04-13 |
Family
ID=26368299
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE69421306T Expired - Fee Related DE69421306T2 (de) | 1993-02-19 | 1994-02-21 | Verfahren und Gerät für Kodage zur Fehlerkontrolle in einem digitalen Datenkommunikationssystem |
Country Status (4)
Country | Link |
---|---|
US (1) | US5657333A (de) |
EP (1) | EP0612166B1 (de) |
CA (1) | CA2116069C (de) |
DE (1) | DE69421306T2 (de) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FI96650C (fi) * | 1994-07-11 | 1996-07-25 | Nokia Telecommunications Oy | Menetelmä ja laitteisto puheen välittämiseksi tietoliikennejärjestelmässä |
FR2769445B1 (fr) * | 1997-10-02 | 2000-01-14 | Matra Communication | Dispositif d'emission de signaux numeriques de parole sur un canal de transmission de donnees |
US6131180A (en) * | 1997-11-03 | 2000-10-10 | Ericsson, Inc. | Trellis coded modulation system |
US6000054A (en) * | 1997-11-03 | 1999-12-07 | Motorola, Inc. | Method and apparatus for encoding and decoding binary information using restricted coded modulation and parallel concatenated convolution codes |
US6757860B2 (en) * | 2000-08-25 | 2004-06-29 | Agere Systems Inc. | Channel error protection implementable across network layers in a communication system |
US8156535B2 (en) * | 2002-02-12 | 2012-04-10 | Finsar Corporation | Data rate compression device for cable television return path using bandpass puncturing |
US7725036B2 (en) * | 2002-02-12 | 2010-05-25 | Finisar Corporation | Efficient transmission of digital return path data in cable television return path |
GB2400001A (en) * | 2003-03-27 | 2004-09-29 | Tandberg Television Asa | Constraining a Viterbi decoding trellis using known synchronisation bits |
US7765576B2 (en) * | 2004-05-12 | 2010-07-27 | Finsiar Corporation | Changing communication mode in a CATV pathway using mute commands |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS54139406A (en) * | 1978-04-21 | 1979-10-29 | Sony Corp | Digital signal transmission method |
US4802171A (en) * | 1987-06-04 | 1989-01-31 | Motorola, Inc. | Method for error correction in digitally encoded speech |
US4941154A (en) * | 1989-05-30 | 1990-07-10 | At&T Bell Laboratories | Trellis coding method and arrangement for fractional bit rates |
US5073940A (en) * | 1989-11-24 | 1991-12-17 | General Electric Company | Method for protecting multi-pulse coders from fading and random pattern bit errors |
US5195107A (en) * | 1990-12-11 | 1993-03-16 | At&T Bell Laboratories | Technique for compensating for intersymbol interference |
US5251236A (en) * | 1991-04-05 | 1993-10-05 | At&T Paradyne Corporation | Fractional rate modem with trellis |
US5216694A (en) * | 1991-09-12 | 1993-06-01 | At&T Bell Laboratories | Trellis coding for fractional bits |
US5289501A (en) * | 1991-11-26 | 1994-02-22 | At&T Bell Laboratories | Coded modulation with unequal error protection for fading channels |
US5258987A (en) * | 1992-04-16 | 1993-11-02 | At&T Bell Laboratories | Multilevel coding using trellis-coded modulation and reed-solomon codes |
-
1994
- 1994-02-21 CA CA002116069A patent/CA2116069C/en not_active Expired - Fee Related
- 1994-02-21 EP EP94301202A patent/EP0612166B1/de not_active Expired - Lifetime
- 1994-02-21 DE DE69421306T patent/DE69421306T2/de not_active Expired - Fee Related
- 1994-02-22 US US08/199,546 patent/US5657333A/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
CA2116069C (en) | 1999-11-23 |
EP0612166B1 (de) | 1999-10-27 |
US5657333A (en) | 1997-08-12 |
DE69421306D1 (de) | 1999-12-02 |
EP0612166A2 (de) | 1994-08-24 |
CA2116069A1 (en) | 1994-08-20 |
EP0612166A3 (de) | 1995-02-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE69634155T2 (de) | Erfassung einer Konfidenz und eines Rahmen-Qualitäts-Signals in einem "soft decision"-Faltungs-Dekoder | |
DE69838451T2 (de) | Verfahren und schaltung zur adaptiven kanalkodierung | |
DE19815597B4 (de) | Datenübertragungssystem, mobile Station und Verfahren zum Verringern der Rahmenfehlerrate bei einer in Form von Datenrahmen erfolgenden Datenübertragung | |
DE69810485T2 (de) | Kommunikationssysteme und verfahren mit paralleler verschachtelungsloser kodierung | |
EP1198913B1 (de) | Verfahren zum fehlerschutz eines datenbitstromes | |
DE19846721B4 (de) | Verfahren zur Kodierung und Dekodierung und Vorrichtung zum Kodieren oder Dekodieren | |
DE10008064B4 (de) | Verfahren zum Anpassen der einem Turbo-Codierer zuzuführenden Datenblöcke und entsprechende Kommunikationsvorrichtung | |
EP0697770B1 (de) | Verfahren zur arithmetischen Decodierung | |
DE69225619T2 (de) | Signalübertragungssystem mit getrennter Baum-Kodierung eines jeden Parameters | |
DE60216040T2 (de) | Verfahren und vorrichtung zur zuordnung faltungscodierter bits zu symbolen vor deren modulation | |
DE19612715A1 (de) | Dekoder und zugehöriges Verfahren | |
DE69936316T2 (de) | Faltungskodierungsverfahren und vorrichtung in einem digitalen system | |
DE69421306T2 (de) | Verfahren und Gerät für Kodage zur Fehlerkontrolle in einem digitalen Datenkommunikationssystem | |
DE102008010293A1 (de) | Verfahren und Vorrichtung zur Dekodierung eines kodierten Datenrahmens mit darin enthaltenen Dummy-Bitsequenzen | |
DE4335305A1 (de) | Verfahren und Schaltungsanordnung zur Übertragung von Sprachsignalen | |
DE69728255T2 (de) | Datenübertragungsverfahren und vorrichtung zur kodierung eines signals | |
DE19935785A1 (de) | Verfahren und Einrichtung zur Erzeugung eines ratenkompatiblen Codes | |
EP0353694B1 (de) | Verfahren zur redundanzsparenden, fehlerkorrigierenden Codierung in Digital-Richtfunksystemen mit mehrstufiger Modulation | |
DE69126493T2 (de) | Fehlererkennungssystem | |
DE69908629T2 (de) | Hybrid verschachteler für turbo-kodierer | |
DE69327212T2 (de) | System für Übertragung von Informationsbitfolgen | |
DE69901765T2 (de) | Turbo-Code Dekodierer | |
EP1046254B1 (de) | Verfahren und vorrichtung zur codierung und übertragung von informationen, unter verwendung von quellengesteuerter kanaldecodierung | |
DE19521327A1 (de) | Verfahren und Codiereinrichtung zur gesicherten Übertragung von Information mittels Mehrkomponenten-Codierung | |
DE69531124T2 (de) | Vorrichtung zur Empfangsverarbeitung mit umschaltbarem Entscheidungsblock zur Verringerung des Energieverbrauchs |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8364 | No opposition during term of opposition | ||
8339 | Ceased/non-payment of the annual fee |