DE19539343C2 - Verfahren zur Fehlererkennung eines digitalen Bitdatenstroms, der von einem Sender zu einem Empfänger übertragen wird - Google Patents

Verfahren zur Fehlererkennung eines digitalen Bitdatenstroms, der von einem Sender zu einem Empfänger übertragen wird

Info

Publication number
DE19539343C2
DE19539343C2 DE19539343A DE19539343A DE19539343C2 DE 19539343 C2 DE19539343 C2 DE 19539343C2 DE 19539343 A DE19539343 A DE 19539343A DE 19539343 A DE19539343 A DE 19539343A DE 19539343 C2 DE19539343 C2 DE 19539343C2
Authority
DE
Germany
Prior art keywords
bit
shift register
data stream
values
bit data
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
Application number
DE19539343A
Other languages
English (en)
Other versions
DE19539343A1 (de
Inventor
Bernhard Wimmer
Fritz Dipl Ing Seytter
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.)
Siemens AG
Original Assignee
Siemens AG
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Siemens AG filed Critical Siemens AG
Priority to DE19539343A priority Critical patent/DE19539343C2/de
Priority to CN96121904A priority patent/CN1076554C/zh
Priority to US08/735,708 priority patent/US5850405A/en
Publication of DE19539343A1 publication Critical patent/DE19539343A1/de
Application granted granted Critical
Publication of DE19539343C2 publication Critical patent/DE19539343C2/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/23Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using convolutional codes, e.g. unit memory codes
    • 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/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/09Error detection only, e.g. using cyclic redundancy check [CRC] codes or single parity bit

Description

Bei der Übertragung von Informationen über störanfällige Ka­ näle treten häufig Fehler auf. Diese Fehler können durch Red­ undanz, die der eigentlichen Nutzinformation hinzugefügt wird, erkannt und eventuell korrigiert werden. Durch die an­ gefügte Redundanz wird jedoch die effektive Übertragungslei­ stung reduziert. Durch die Verwendung von bestimmter Redun­ danz, die der eigentlichen Nutzinformation hinzugefügt wird, kann eine Wiederholung der gesamten Nutzinformation durch den Sender bei Auftreten eines Fehlers vermieden werden.
Ein Verfahren zur Fehlererkennung und Fehlerkorrektur, wel­ ches gezielt bestimmte Redundanz ausnützt, ist bekannt und wird als Hybride Automatic Repeat Request, kurz hybrides ARQ-Verfahren, bezeichnet. Ein sehr leistungsfähiges Verfahren aus dieser Verfahrenskategorie ist das hybride ARQ-Verfahren Typ II, das sogenannte Rate Compatible Punctured Convolution Codes (RCPC-Codes) (J. Hagenauer, Rate-Compatible Punctured Convolutional Codes (RCPC Codes) and their Applications, IEEE Transactions on Communications, Vol. 36, No. 4, S. 389 bis 400, April 1988).
Bei diesem bekannten Verfahren wird die Nutzinformation in Form einer Informationssequenz zusammen mit einem Cyclic Red­ undancy Check Control-Muster (CRC) und einer kurzen Terminie­ rungssequenz (Tailbits) in einem Faltungscoder mit einem Speicher codiert und anschließend in einem weiteren Speicher abgelegt. Die Terminierungssequenz ist in diesem Fall eine Nullbitfolge der Länge, die der Größe des Speichers des Fal­ tungscodes entspricht und wird für die Decodierung auf der Empfängerseite benötigt.
Nach einer festgelegten Vorschrift wird erst eine bestimmte Anzahl von Speicherelementen übertragen. Mit dieser Informa­ tion versucht der Empfänger mittels eines Viterbi-Decoders und anschließend durch eine CRC-Prüfung das ursprüngliche In­ formationswort, also die Nutzinformation zu decodieren. Ge­ lingt diese Decodierung nicht, so wird ein weiteres kleines Datenpaket, die sogenannte Redundanz von dem Sender angefor­ dert. Dieses Paket ist erheblich kleiner als die gesamte Nutzinformation. Außerdem wird die beim Empfänger enthaltene Information ergänzt, wodurch verbesserte Korrektureigenschaf­ ten der gesamten Informationssequenz gewährleistet wird.
Bei dem RCPC-Verfahren wird bereits bei der ersten Übertra­ gung Zusatzinformation (Redundanz) übertragen, so daß dadurch bei guten Kanälen eine erheblich geringere Durchsatzrate als bei einem reinen ARQ-Verfahren erzielt wird. Die übertragene Zusatzinformation (Redundanz) führt zu einer Übertragungsrate R, die kleiner ist als 1.
Der Erfindung liegt das Problem zugrunde, ein Verfahren zur Fehlerbehandlung eines digitalen Bitdatenstroms anzugeben, welches zur Fehlerbehandlung des digitalen Bitdatenstroms grundsätzlich geringere Zusatzinformation benötigt als be­ kannte Verfahren.
Das Problem wird durch das Verfahren gemäß Patentanspruch 1 gelöst. Durch die Decodierung der empfangenen, quantisierten, also harten Bitwerte durch ein Vorwärtsschieberegister und, in umgekehrter zeitlicher Reihenfolge durch ein Rückwärts­ schieberegister, und durch die EXKLUSIV-ODER-Verknüpfung der beiden Ergebniswerte zu einem Fehlersyndrom, welches angibt, an welcher Bitposition des Bitdatenstroms möglicherweise ein Fehler aufgetreten ist, ist es möglich, praktisch ohne Zu­ satzinformation einen Fehler zu erkennen. Die einzige "Zusatzinformation" die bei diesem Verfahren benötigt wird sind die Tailbits. Dies bedeutet jedoch keinen zusätzlichen Aufwand gegenüber einem Verfahren, welches nur die Nutzinfor­ mation selbst codiert, da diese Terminierungssequenz mit den Tailbits nötig ist, um ein Ende der Informationssequenz über­ haupt bestimmen zu können.
Es wird durch das Verfahren ein Ein-Bit-Fehler erkannt, das heißt Fehler, bei denen in der gesamten Informationssequenz nur ein Bit fehlerhaft empfangen wurde.
Durch die Weiterbildung des Verfahrens gemäß Patentanspruch 2 ist auch eine Fehlerkorrektur in vorteilhafter Weise möglich, indem das Wissen über die "Verläßlichkeit" der empfangenen Bits, die sich durch die sogenannten weichen Bitwerte ergeben vor der Quantisierung des Bitdatenstroms, berücksichtigt wird bei der Fehlerkorrektur.
Das Verfahren wird durch die Weiterbildung gemäß den Patent­ ansprüchen 3 und 4 weiter verbessert, indem durch eine vorge­ sehene CRC-Prüfung auch Fehler erkannt werden können, die über einen Ein-Bit-Fehler hinausgehen.
Durch die Weiterbildung des Verfahrens gemäß Patentanspruch 5 ist es möglich, das Verfahren zur Fehlererkennung zu erwei­ tern und zur Fehlerkorrektur zu nutzen, indem zusätzliche Redundanz von dem Empfänger angefordert wird. Diese zusätzli­ che Redundanz kann in der bestimmten zusätzlichen Nutzinfor­ mation bestehen, wie sie beispielsweise in (J. Hagenauer, Ra­ te-Compatible Punctured Convolutional Codes (RCPC Codes) and their Applications, IEEE Transactions on Communications, Vol. 36, No. 4, S. 389 bis 400, April 1988) beschrieben ist.
Das Verfahren kann aber auch soweit abgeändert werden, daß die gesamte Nachricht neu angefordert und somit neu gesendet wird.
Weiterbildungen der Erfindung ergeben sich aus den abhängigen Ansprüchen.
Das erfindungsgemäße Verfahren und dessen vorteilhafte Wei­ terbildungen sind in den Figuren dargestellt und werden im weiteren näher beschrieben.
Es zeigen
Fig. 1 eine Skizze, in der das ARQ-Verfahren prinzipiell dargestellt ist;
Fig. 2 und 2a ein Ablaufdiagramm, das einzelne Verfah­ rensschritte des erfindungsgemäßen Verfahrens be­ schreibt;
Fig. 3a bis 3c ein Ablaufdiagramm, das einige zusätzliche Schritte zur Weiterbildung des erfindungsgemäßen Verfahrens darstellt;
Fig. 4 eine Skizze eines allgemeinen Schieberegisters vom Grad M;
Fig. 5 ein vorwärts-rückgekoppeltes, zu dem in Fig. 4 dargestellten Schieberegister inverses Schieberegi­ ster;
Fig. 6a und 6b eine Skizze, in der jeweils über eine Zeitachse die Impulsantwort (6b) des vorwärts- rückgekoppelten inversen Schieberegisters auf einen Impuls (6a) zum Zeitpunkt τ am Eingang des vor­ wärts-rückgekoppelten inversen Schieberegisters dargestellt ist;
Fig. 7 eine Skizze, in der ein rückwärts-rückgekoppeltes, zu dem in Fig. 4 dargestellten inverses Schiebere­ gister, beschrieben ist;
Fig. 8a bis 8c Zeitdiagramme, die einen angelegten Impuls am Eingang des rückwärts-rückgekoppelten inversen Schieberegisters zum Zeitpunkt τ (8a), eine Im­ pulsantwort des rückwärts-rückgekoppelten inver­ sen Schieberegisters gegen die Zeitrichtung (8b) und die Impulsantwort des inversen Schieberegi­ sters in Zeitrichtung (8c) beschrieben sind;
Fig. 9a bis 9d Zeitdiagramme, in denen ein Impuls am Ein­ gang der beiden Schieberegister (9a), die Im­ pulsantworten des vorwärts-rückgekoppelten inver­ sen Schieberegisters (9b) und des rückwärts­ rückgekoppelten inversen Schieberegisters in Zei­ trichtung (9c) sowie die aus den Impulsantworten des vorwärts-rückgekoppelten inversen Schiebere­ gisters und des rückwärts-rückgekoppelten inver­ sen Schieberegisters gebildete EXKLUSIV-ODER-Verknüpfung (9d) dargestellt ist.
Anhand der Fig. 1 bis 9d wird das erfindungsgemäße Verfah­ ren weiter erläutert.
In Fig. 1 ist ein grobes Ablaufschema eines ARQ-Verfahrens dargestellt. Ein Sender S codiert einen Bitdatenstrom BS in einem Faltungscoder FC und überträgt den codierten digitalen Bitdatenstrom BS an einen Empfänger E.
Bei dem Empfänger E wird der digitale Bitdatenstrom BS deco­ diert und eine Fehlerbehandlung durchgeführt. Wird ein Fehler erkannt und kann der Fehler nicht direkt aus der dem Empfän­ ger E zugänglichen Information korrigiert werden, so fordert der Empfänger E über eine Anfrage REQ von dem Sender S zu­ sätzliche Informationen an, die darin bestehen kann, daß sie zusätzliche Redundanz zu der bisher übertragenen Nutzinforma­ tion darstellt.
Die zusätzliche Information kann auch darin liegen, daß die gesamte Nachricht noch einmal neu von dem Sender S an den Empfänger E übertragen wird. Die Codierung in einem Faltungscoder FC ist beschrieben in (J. Hagenauer, Rate- Compatible Punctured Convolutional Codes (RCPC Codes) and their Applications, IEEE Transactions on Communications, Vol. 36, No. 4, S. 389 bis 400, April 1988).
Die zusätzliche vom Sender S an den Empfänger E übertragene Zusatzinformation RES kann in dem Empfänger E nun dafür ver­ wendet, daß eine Fehlerkorrektur der erkannten Fehler in dem digitalen Bitdatenstrom BS durchgeführt wird.
In den Fig. 2a und 2b ist durch ein Ablaufdiagramm das Verfahren in den einzelnen Verfahrensschritten beschrieben.
In einem ersten Schritt 21 wird der digitale Bitdatenstrom BS von dem Sender S in dem Faltungscoder FC codiert. Der Bitda­ tenstrom BS wird nun von dem Sender S zu dem Empfänger E übertragen 22. Der Empfänger E empfängt den von dem Sender S gesendeten Bitdatenstrom BS 23 und speichert die empfangene Information 24.
Der empfangene Bitdatenstrom BS liegt bisher in sogenannten weichen Werten vor, also bei einer verwendeten 0/1-Logik bei­ spielsweise in analogen, verrauschten Werten, die zwischen Null und Eins liegen. Entsprechendes gilt selbstverständlich für einen beispielsweise auch verwendbaren -1/1-Code.
Weitere Verfahren zur Codierung können ohne Einschränkung im Rahmen dieses Verfahrens eingesetzt werden.
Da mit den empfangenen weichen Werten keine digitale Daten­ verarbeitung möglich ist, werden die weichen Werte in dem Empfänger E quantisiert 25. Dies bedeutet, daß für jeden wei­ chen Wert entschieden wird, ob er einem ersten Binärwert zu­ geordnet wird oder einem zweiten Binärwert. Die Art der Quan­ tisierung ist beliebig und kann beispielsweise unter Berück­ sichtigung der spezifischen Kanaleigenschaften erfolgen.
Die quantisierten weichen Bitwerte werden im folgenden als harte Bitwerte bezeichnet. Somit ist eine binäre Weiterbear­ beitung des Bitdatenstroms BS möglich.
In Fig. 4 ist ein allgemeines Schaltbild eines Generator­ schieberegisters H vom Grad M dargestellt. Hierbei beschrei­ ben Verzögerungselemente I jeweils eine zeitliche Verzögerung des Eingangssignals um jeweils einen Zeitschritt.
Die gesamten im weiteren verwendeten Schieberegister müssen jeweils zu Beginn einer Codierung bzw. Decodierung zurückge­ setzt werden, d. h. sie werden üblicherweise mit dem Wert Null vorbelegt.
Eine Eingangsbitsequenz xt wird nun durch das Generatorschie­ beregister H geschoben und je nach vorgesehener EXKLUSIV-ODER-Verknüpfung zu einer Ausgangsbitsequenz yt codiert. Die­ se Ausgangsbitsequenz yt entspricht dem digitalen Bitdaten­ strom BS.
Allgemein ist das Generatorschieberegister H durch folgende Polynomschreibweise charakterisiert, wobei t die Zeit dar­ stellt:
H = yt = xt⊗. . .⊗xt-M.
Zu diesem in Fig. 4 dargestellten Generatorschieberegister H können zwei inverse rückgekoppelte Schieberegister gebildet werden.
Ein vorwärts-rückgekoppeltes inverses Schieberegister H′V ist in Fig. 5 dargestellt. Das vorwärts-rückgekoppelte inverse Schieberegister H′V verwendet den Bitdatenstrom BS, also die Ausgangsbitsequenz yt als Eingangssignal. Das Ausgangssignal Ausgangsbitsequenz yt als Eingangssignal. Das Ausgangssignal ist die Eingangsbitsequenz xt des in Fig. 4 dargestellten Generatorschieberegisters H.
Die Struktur des vorwärts-rückgekoppelten inversen Schiebere­ gisters H′V ergibt sich eindeutig aus der Struktur des Gene­ ratorschieberegisters H:
H′V = xt = yt⊗xt⊗. . .⊗xt-M.
Hierbei wird die Ausgangsbitsequenz yt in der Reihenfolge in den vorwärts-rückgekoppelten inversen Schieberegister H′V in der Reihenfolge eingelesen wie diese durch das Generator­ schieberegister H generiert werden.
Dies bedeutet, daß die harten Bitwerte nach der Quantisierung durch das vorwärts-rückgekoppelte inverse Schieberegister H′V geschoben werden 26 (vergleiche Fig. 2a).
Über der Zeit t ergibt sich die Impulsantwort des vorwärts- rückgekoppelten inversen Schieberegisters H′V auf einen Im­ puls am Eingang des vorwärts-rückgekoppelten inversen Schie­ beregisters H′V zum Zeitpunkt τ (vergleiche Fig. 6a) wie in Fig. 6b beschrieben.
In Fig. 7 ist ein zweites inverses Schieberegister darge­ stellt, ein rückwärts-rückgekoppeltes inverses Schieberegi­ ster H′R. Es wird wiederum die Ausgangsbitsequenz yt als Ein­ gangssignale des rückwärts-rückgekoppelten inversen Schiebe­ registers H′R verwendet, jedoch diesmal in zeitlich umgekehr­ ter Reihenfolge.
Die Struktur des rückwärts-rückgekoppelten inversen Schiebe­ registers H′R ergibt sich eindeutig aus dem Generatorschiebe­ register H nach folgender Vorschrift:
H′R = xt-M = yt ⊗ xt⊗. . .⊗xt-M+1.
Die Besonderheit hierbei ist allerdings, daß die Ausgangsbit­ sequenz yt in zeitlich umgekehrter Reihenfolge in das rück­ wärts-rückgekoppelte inverse Schieberegister H′R geschoben wird 27 als die Ausgangsbitsequenz yt empfangen wurde.
In den Fig. 8a und 8b ist das Einlesen der Ausgangsbitse­ quenz yt des Generatorschieberegisters H durch eine umgedreh­ te Zeitachse t′ angedeutet. Der in Fig. 8a dargestellte Im­ puls am Eingang des rückwärts-rückgekoppelten inversen Schie­ beregisters H′R zum Zeitpunkt τ führt zu der in Fig. 8b dar­ gestellten Impulsantwort des rückwärts-rückgekoppelten inver­ sen Schieberegisters H′R.
Die einzelnen Bitwerte der Impulsantwort sind, wie auch in Fig. 6b und in den Fig. 9b bis 9d, mit aD-x bezeichnet. Hierbei bezeichnet die Variable x die jeweilige zeitliche Verschiebung um den Zeitpunkt τ des jeweiligen Bitwerts der Impulsantwort.
Die Bildung der inversen rückgekoppelten Schieberegister H′V und H′R kann jedoch nur erfolgen, wenn das vorwärts- rückgekoppelte inverse Schieberegister H′V und das rückwärts- rückgekoppelte inverse Schieberegister H′R jeweils vom Grad M sind und bei ihrer Impulsantwort alle möglichen Zustände 2M-1 durchlaufen und somit keine Unterzyklen aufweisen dürfen.
Aufgrund dieser Voraussetzung ergibt sich die Länge D der Im­ pulsantwort zu:
D = 2M-1.
In Fig. 8c ist die Impulsantwort in "normaler" Zeitrichtung über der Zeitachse t aufgetragen.
Die Impulsantwort des vorwärts-rückgekoppelten inversen Schieberegisters H′V und die Impulsantwort des rückwärts- rückgekoppelten inversen Schieberegisters H′R werden nun in einem weiteren Schritt 28 EXKLUSIV-ODER verknüpft zu einem Fehlersyndrom.
Hierbei muß beachtet werden, daß beide Impulsantworten in "normaler" Zeitrichtung miteinander verknüpft werden. Die Im­ pulsantworten und die EXKLUSIV-ODER-Verknüpfung der Im­ pulsantworten sind in den Fig. 9a bis 9d dargestellt.
Ein in Fig. 9a dargestellter Impuls an den Eingängen zur Zeit τ führt zu den Impulsantworten des vorwärts- rückgekoppelten inversen Schieberegisters H′V (vergleiche Fig. 9b) und zu der Impulsantwort des rückwärts- rückgekoppelten inversen Schieberegisters H′R (vergleiche Fig. 9c).
Die EXKLUSIV-ODER-Verknüpfung der Impulsantworten ist in Fig. 9d dargestellt. Durch den Pfeil P ist angedeutet, daß man nur aus der EXKLUSIV-ODER-Verknüpfung auf den Zeitpunkt τ, zu dem der Impuls aufgetreten ist, zurückschließen kann. Wie mit dem Pfeil P angedeutet ist, fallen der Zeitpunkt τ und das Auftreten eines ersten Koeffizienten a₁ der Impulsantwort des vorwärts-rückgekoppelten inversen Schieberegisters H′V zusam­ men.
Hierbei muß berücksichtigt werden, daß dies nur eindeutig möglich ist, falls die Periodenlänge D des Impulswortes, also der Impulsantwort größer ist als die Gesamtlänge des Bitda­ tenstroms BS. Wird diese Bedingung nicht erfüllt, so kann der Impuls bei jedem Koeffizienten a₁ des periodisch wiederkeh­ renden Impulswortes aufgetreten sein.
Da die Ausgangsbitfolge xt der inversen Schieberegister, also die Eingangsbitsequenz xt des Generator-Schieberegisters je­ weils nur vom Speicherinhalt der inversen Schieberegister zu vergangenen Zeitpunkten abhängt, also von xt-1, dieser nur von xt-2 abhängt usw. läßt sich die Ausgangsbitfolge xt der inversen Schieberegister bereits zum Zeitpunkt t-M vorherbe­ stimmen.
Die längste Ausgangsfolge einer Bitfolge, die ausschließlich den Wert Null aufweist, also einer Null-Bitfolge, innerhalb des Impulswortes, also der Impulsantwort, entsteht, falls das Speicherelement xt-M+1 den Wert logisch Eins aufweist und al­ le anderen Speicherelemente den Wert logische Null. Da alle Zustände außer einer durchgehenden Folge mit ausschließlich den Werten logisch Null innerhalb der Impulsantwort vorkommen müssen, was sich aus der Voraussetzung ergibt, daß in dem Schieberegister keine Unterzyklen durchlaufen werden dürfen, ist dies somit die längste Folge von zusammenhängenden "Nullen". Diese Folge hat die Länge M-1.
Für das rückwärts-rückgekoppelte inverse Schieberegister H′R, welches den Bitstrom gegen die "normale" Zeitrichtung t gene­ riert, entsteht der oben erwähnte Speicherzustand direkt ei­ nen Takt nach dem Impuls. Dies bedeutet, daß die Koeffizien­ ten aD, . . ., aD-M+2 diese längste "Null"-Folge enthalten. Da­ mit ist es möglich, anhand der längsten "Null"-Folge inner­ halb der Impulsantwort der inversen Schieberegister die Stel­ le mit dem ersten Koeffizienten a₁ zu bestimmen.
Diese Tatsache wird zur Fehlerbehandlung des Bitdatenstroms BS auf folgende Weise verwendet. Betrachtet man die Übertra­ gung des Bitdatenstroms BS über einen gestörten Kanal, so läßt sich dies durch eine EXKLUSIV-ODER-Verknüpfung des Bit­ datenstroms BS mit einem Fehlervektor FK beschreiben. Tritt beispielsweise ein Fehler zum Zeitpunkt τ auf, so weist der Fehlervektor FK nur an der Stelle τ den ersten Binärwert auf.
Ein empfangener Bitdatenstrom EB läßt sich somit beschreiben als
EB = BS ⊗ FK.
Wird beim Empfänger E der empfangene Bitdatenstrom EB in das vorwärts-rückgekoppelte inverse Schieberegister H′V gescho­ ben, so erhält man als ein erstes Ergebniswort EV
EV = I ⊗ FK.
Hierbei wird ein Informationswort I EXKLUSIV-ODER verknüpft mit einer Bitfolge FV, die durch den Fehlervektor FK gene­ riert wird. Da der Fehlervektor FK nur einen Binärwert mit dem Wert logisch Eins im Bitstrom aufweisen kann, kann die Bitfolge FV als die Impulsantwort des vorwärts- rückgekoppelten inversen Schieberegisters H′V interpretiert werden (vergleiche Fig. 6a und 6b).
Führt man diesen Schritt auch mit rückwärts-rückgekoppelten inversen Schieberegister H′R durch und betrachtet das Ergeb­ nis in "normaler" Zeitrichtung t, so ergibt sich für ein zweites Ergebniswort ER
ER = I ⊗ FR.
Eine zweite Bit folge FR ist analog zu der im vorigen be­ schriebenen Impulsantwort des vorwärts-rückgekoppelten inver­ sen Schieberegisters H′V die Impulsantwort des rückwärts- rückgekoppelten inversen Schieberegisters H′R in "normaler" Zeitrichtung t (vergleiche Fig. 8a bis 8c).
Bei der anschließenden EXKLUSIV-ODER-Verknüpfung 28 des er­ sten Ergebnisworts EV mit dem zweiten Ergebniswort ER zu dem Fehlersyndrom FVR ergibt sich
FVR = EV ⊗ ER = I ⊗ FV ⊗ I ⊗ FR = FV ⊗ FR.
Das Fehlersyndrom FVR ist unabhängig vom eigentlichen Infor­ mationswort I und nur abhängig von der ersten Bitfolge FV und der zweiten Bitfolge FR, also eigentlich nur abhängig von dem Fehlervektor FK. Damit ergibt sich, daß der Binärwert mit dem logischen Wert Eins, der auf die längste "Null"-Folge in dem Fehlersyndrom FVR folgt, die Bitposition in dem Bitdatenstrom BS angibt, in dem ein Fehler aufgetreten ist.
Für den Fall, daß die Periodenlänge D der Impulsantwort klei­ ner ist als die Gesamtlänge des Bitdatenstroms BS, wird durch das Fehlersyndrom FVR durch das auf die längste "Null"-Folge folgende Bit mit dem Wert logisch Eins nur eine Menge von möglicherweise fehlerhafter Bitpositionen des Bitdatenstroms BS angegeben.
Die Menge möglicherweise fehlerhafter Bitpositionen ergibt sich aus der periodischen Fortsetzung des Impulswortes im Fehlersyndroms FVR. Dies bedeutet, daß jeweils eine mögli­ cherweise fehlerhafte Bitposition in dem Bitdatenstrom BS sich ergibt aus der in dem Fehlersyndrom FVR angegebenen Bit­ position plus n × D (D=2M-1), wobei M den Grad des verwende­ ten Generatorschieberegisters H angibt und n eine beliebige natürliche Zahl ist.
Somit ist es durch das erfindungsgemäße Verfahren möglich, eine Fehlerbehandlung für den Bitdatenstrom BS durchzuführen, ohne zusätzliche Redundanz zu benötigen. Dies ist ein wesent­ licher Vorteil gegenüber dem bekannten RCPC-Verfahren, bei dem schon der Bitdatenstrom BS eine gewisse Redundanz auf­ weist, was zu einer Übertragungsrate R führt, die kleiner ist als 1.
Die einzige Redundanz, die für das erfindungsgemäße Verfahren benötigt wird, liegt in den M-Tailbits, die jedoch ohnehin als Terminierungssequenz für den Bitdatenstrom BS benötigt werden. Diese Tailbits werden in dem erfindungsgemäßen Ver­ fahren benötigt, um die Schieberegister in einen definierten Zustand zu bringen.
In einer Weiterbildung des Verfahrens kann die Information, in welcher Bitposition des Bitdatenstroms BS sich ein Fehler möglicherweise befinden kann, in folgender Weise ausgenutzt werden.
Es ist vorgesehen, daß jeweils das Bit des Bitdatenstroms BS geändert wird, dessen Bitposition in der Menge der möglicher­ weise fehlerhaften Bitpositionen enthalten ist und das bei den weichen Bitwerten des Bitdatenstroms BS vor der Quanti­ sierung die größte Unsicherheit aufweist. Die größte Unsi­ cherheit bedeutet in diesem Zusammenhang, daß dasjenige Bit geändert wird, welches sich am meisten von dem jeweils quan­ tisierten harten Bitwert unterscheidet, also am nächsten an der Quantisierungsschwelle liegt. Hierbei werden natürlich nur die Bitwerte an den Bitpositionen berücksichtigt, die in der Menge möglicherweise fehlerhafter Bitwerte enthalten sind.
Es wird also der Bitdatenstrom BS mit den weichen Bitwerten, der in einem Schritt 24 gespeichert wurde, zur Auswahl des zu ändernden harten Bitwerts verwendet. Der entsprechende Wert der harten Bitwerte wird nunmehr geändert 32.
Dies erfolgt selbstverständlich nur, wenn das Fehlersyndrom nicht ausschließlich eine Folge von Binärwerten mit dem Wert logisch Null ist 31.
Die geänderte Sequenz von harten Bitwerten wird nun wiederum zur Decodierung durch das vorwärts-rückgekoppelte inverse Schieberegister H′V geschoben 33. Für den Fall, daß keine Fehler erkannt wurden, also das Fehlersyndrom FVR ausschließ­ lich eine Folge von Binärwerten mit dem Wert logisch Null ist, kann direkt auch das erste Ergebniswort EV, das durch das Schieben der harten Bitwerte durch das vorwärts- rückgekoppelte inverse Schieberegister H′V entstanden ist 26, verwendet werden.
Da durch das beschriebene erfindungsgemäße Verfahren nur ein Fehler erkannt werden kann, ist eine vorteilhafte Weiterbil­ dung des Verfahrens die, daß durch einen Cyclic Redundancy Check (CRC) 34 mit einer Fehlererkennungswahrscheinlichkeit entsprechend dem jeweiligen zur CRC-Prüfung verwendeten Schieberegisters auch mehr Fehler erkannt werden.
Für den Fall einer vorgesehenen CRC-Prüfung ist natürlich ei­ ne CRC-Prüfsumme bei der Codierung des Bitdatenstroms BS von dem Sender S hinzuzufügen.
Diese CRC-Prüfsumme wird von dem Empfänger E ausgewertet 35. Wird auch nach der CRC-Prüfung kein Fehler festgestellt, kann davon ausgegangen werden, daß kein Fehler in dem Bitdaten­ strom BS aufgetreten ist 36. Da die CRC-Prüfung auf den even­ tuell schon einmal geänderten Bitstrom, also die geänderten harten Bitwerte angewendet wird, kann damit auch kontrolliert werden, ob das richtige Bit aus der Menge möglicherweise feh­ lerhafter Bits des Bitdatenstroms BS korrigiert wurde.
Zeigt die CRC-Prüfung an, daß ein eigentlich wichtiges Bit des Bitdatenstroms BS geändert wurde, also eine falsche Kor­ rektur stattfand, kann ein anderes Bit, auf einer Position, die ebenso aus der Menge möglicherweise fehlerhafter Bitposi­ tionen geändert werden. Es ist vorteilhaft, die Reihenfolge der Korrektur der einzelnen Bits in der Weise vorzunehmen, daß jeweils das Bit mit der höchsten Unsicherheit korrigiert wird. Natürlich muß das falsch korrigierte Bit wieder auf den richtigen, ursprünglichen Wert gesetzt werden.
Dieses Vorgehen kann solange wiederholt werden, bis die CRC-Prüfung ein positives Ergebnis liefert.
Zusätzlich zu dem bisher beschriebenen Vorgehen ist es selbstverständlich auch möglich, daß der Empfänger E zusätz­ liche Redundanz von dem Sender S durch eine Anforderung REQ anfordert.
Der Sender S überträgt die angeforderte zusätzliche Redundanz in einer Antwort RES an den Empfänger E.
Dieses Vorgehen kann solange wiederholt werden, bis der Emp­ fänger E genügend Redundanz erhalten hat, um eine Fehlerkor­ rektur durchzuführen.
Es ist ebenso vorgesehen, daß der Empfänger E mit der Anfor­ derung REQ eine Wiederholung der gesamten Nachricht anfordern kann.
In diesem Fall sendet der Sender S in der Antwort RES den ge­ samten Bitdatenstrom BS ein weiteres Mal zu dem Empfänger E.

Claims (5)

1. Verfahren zur Fehlererkennung eines digitalen Bitdaten­ stroms (BS), der von einem Sender (S) zu einem Empfänger (E) übertragen wird,
  • - bei dem der Bitdatenstrom (BS) in dem Sender in einem Fal­ tungscoder (FC) zur Bildung eines Rate Compatible Punctured Convolutional Codes (RCPC Codes) codiert wird (21) unter Ver­ wendung eines Generatorschieberegisters H = yt = xt⊗. . .⊗xt-M, wobei mit
  • - yt eine Ausgangsbitsequenz des Generatorschieberegisters H bezeichnet wird,
  • - xt eine Eingangsbitsequenz des Generatorschieberegisters H bezeichnet wird,
  • - t einzelne Zeitschritte bezeichnet werden,
  • - M der Grad des Generatorschieberegisters H bezeichnet wird,
  • - bei dem in dem Empfänger (E) folgende Schritte vorgesehen werden:
  • - der Bitdatenstrom (BS) wird zu harten Bitwerten quanti­ siert (25),
  • - die harten Bitwerte werden durch ein vorwärts­ rückgekoppeltes inverses Schieberegister H′V = xt = yt ⊗ xt-1⊗. . .⊗xt-M geschoben (26),
  • - die harten Bitwerte werden in zeitlich bezüglich der Rei­ henfolge des Empfangs der Daten umgekehrter Reihenfolge durch ein rückwärts-rückgekoppeltes inverses Schieberegister H′R = xt-M = yt⊗xt⊗. . .⊗xt-M+1 geschoben (27),
  • - die durch das vorwärts-rückgekoppelte inverse Schieberegi­ ster H′V und die durch das rückwärts-rückgekoppelte inverse Schieberegister H′R geschobenen harten Bitwerte werden in zeitlich gleicher Orientierung zu einem Fehlersyndrom (FVR) EXKLUSIV-ODER verknüpft (28),
  • - eine Menge möglicherweise fehlerhafter Bitpositionen des Bitdatenstrom (BS) wird durch eine Bitposition eines Binär­ werts mit dem logischen Wert Eins des Fehlersyndroms (FVR) angegeben, die auf die längste Folge von Binärwerten mit dem Wert logisch Null des Fehlersyndroms (FVR) folgt, wobei sich die Menge möglicherweise fehlerhafter Bitpositionen aus einer periodischen Fortsetzung der Bitposition entsprechend der Pe­ riodenlänge (D) des vorwärts-rückgekoppelten inversen Schie­ beregisters H′V ergibt (29).
2. Verfahren nach Anspruch 1,
  • - bei dem ein Bit der harten Bitwerte geändert wird (32), das sich an einer Bitposition der Menge möglicherweise fehler­ hafter Bitpositionen befindet, dessen empfangener Wert bei dem Bitdatenstrom die größte Unsicherheit aufweist, und
  • - bei dem die geänderten harten Bitwerte durch das vorwärts­ rückgekoppelte inverse Schieberegister (H′V) geschoben wer­ den (33).
3. Verfahren nach Anspruch 1 oder 2, bei dem auf die durch das vorwärts-rückgekoppelte inverse Schieberegister (H′V) ge­ schobenen harten Bitwerte oder die geänderten harten Bitwerte eine CRC-Prüfung angewendet wird (35).
4. Verfahren nach Anspruch 3,
  • - bei dem bei negativem CRC-Prüfungsergebnis ein anderes Bit der harten Bitwerte geändert wird (32), das sich an einer Bitposition der Menge möglicherweise fehlerhafter Bitposi­ tionen befindet, dessen empfangener Wert bei dem Bitdaten­ strom eine geringere Unsicherheit aufweist als die bisher geänderten Bits,
  • - bei dem die CRC-Prüfung auf die wiederum geänderten harten Bitwerte angewendet wird (35), und
  • - bei dem dieses Vorgehen so lange wiederholt wird, bis die CRC-Prüfung ein positives Ergebnis ergibt.
5. Verfahren nach einem der Ansprüche 1 bis 4, bei dem von dem Sender (S) zusätzliche Redundanz, die von dem Empfänger (E) zur Fehlerkorrektur benötigt wird, an den Empfänger (E) auf Anforderung des Empfängers (E) übertragen wird.
DE19539343A 1995-10-23 1995-10-23 Verfahren zur Fehlererkennung eines digitalen Bitdatenstroms, der von einem Sender zu einem Empfänger übertragen wird Expired - Fee Related DE19539343C2 (de)

Priority Applications (3)

Application Number Priority Date Filing Date Title
DE19539343A DE19539343C2 (de) 1995-10-23 1995-10-23 Verfahren zur Fehlererkennung eines digitalen Bitdatenstroms, der von einem Sender zu einem Empfänger übertragen wird
CN96121904A CN1076554C (zh) 1995-10-23 1996-10-23 由发送器传送到接收器时数字的位数据流的错误识别方法
US08/735,708 US5850405A (en) 1995-10-23 1996-10-23 Method for error recognition of a digital bit data stream transmitted by a transmitter to a receiver

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE19539343A DE19539343C2 (de) 1995-10-23 1995-10-23 Verfahren zur Fehlererkennung eines digitalen Bitdatenstroms, der von einem Sender zu einem Empfänger übertragen wird

Publications (2)

Publication Number Publication Date
DE19539343A1 DE19539343A1 (de) 1997-04-24
DE19539343C2 true DE19539343C2 (de) 1997-12-11

Family

ID=7775498

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19539343A Expired - Fee Related DE19539343C2 (de) 1995-10-23 1995-10-23 Verfahren zur Fehlererkennung eines digitalen Bitdatenstroms, der von einem Sender zu einem Empfänger übertragen wird

Country Status (3)

Country Link
US (1) US5850405A (de)
CN (1) CN1076554C (de)
DE (1) DE19539343C2 (de)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2348087B (en) 1999-03-13 2003-08-13 Nec Technologies Detection of unreliable frames in digital data transmission systems
JP3640844B2 (ja) * 1999-09-17 2005-04-20 株式会社東芝 エラー処理機能を備えた伝送装置及びエラー処理方法
DE60040805D1 (de) * 1999-12-20 2008-12-24 Research In Motion Ltd Hybrid-wiederholungsaufforderungsystem und -verfahren
US6598189B1 (en) * 2000-04-28 2003-07-22 Nortel Networks Limited Method and apparatus for determining the rate and quality of received data in a variable rate digital communication system
US6697986B2 (en) * 2000-05-22 2004-02-24 Samsung Electronics Co., Ltd. Data transmission apparatus and method for an HARQ data communication system
GB0104037D0 (en) * 2001-02-19 2001-04-04 Radioscape Ltd Fast convolutional decoder utilising state pinning
US7013422B2 (en) * 2001-06-15 2006-03-14 International Business Machines Corporation Noise removal in multibyte text encodings using statistical models
JP5048510B2 (ja) * 2004-11-24 2012-10-17 クゥアルコム・インコーポレイテッド デジタルデータインタフェースデバイスメッセージフォーマット
US7469373B2 (en) * 2005-02-17 2008-12-23 Broadcom Corporation Application of a Meta-Viterbi algorithm for communication systems without intersymbol interference
CN101783098B (zh) * 2009-01-16 2012-03-07 晶锜科技股份有限公司 串行传输装置及其信号传输方法
CN113296430B (zh) * 2021-04-13 2022-10-18 东风汽车集团股份有限公司 主从芯片处理单元逻辑运算数据流故障监测方法及系统

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2261666B1 (de) * 1974-02-19 1979-09-28 Thomson Csf
DE3150927A1 (de) * 1981-12-23 1983-06-30 Licentia Patent-Verwaltungs-Gmbh, 6000 Frankfurt Schaltungsanordnung zur erkennung und korrektur von bitfehlern
JPS62233933A (ja) * 1986-04-03 1987-10-14 Toshiba Corp ヴイタビ復号法
DE3718632C1 (de) * 1987-06-03 1988-08-25 Deutsche Forsch Luft Raumfahrt Verfahren zur Dekodierung von Daten
US5208816A (en) * 1989-08-18 1993-05-04 At&T Bell Laboratories Generalized viterbi decoding algorithms
US5546420A (en) * 1994-04-29 1996-08-13 At&T Corp. Methods of and devices for enhancing communications that use spread spectrum technology by using variable code techniques
US5668820A (en) * 1995-01-23 1997-09-16 Ericsson Inc. Digital communication system having a punctured convolutional coding system and method

Also Published As

Publication number Publication date
CN1076554C (zh) 2001-12-19
DE19539343A1 (de) 1997-04-24
US5850405A (en) 1998-12-15
CN1162882A (zh) 1997-10-22

Similar Documents

Publication Publication Date Title
DE69532949T2 (de) Verfahren und gerät zur dekoderoptimierung
DE19630343B4 (de) Verfahren und Paket-Übertragungssystem unter Verwendung einer Fehlerkorrektur von Datenpaketen
DE69816261T2 (de) Turbokodierung mit übertragung und mehrstufiger verarbeitung von daten
DE60206419T2 (de) Löschung und einzelfehlerkorrekturdekoder für lineare blockkodes
DE19539343C2 (de) Verfahren zur Fehlererkennung eines digitalen Bitdatenstroms, der von einem Sender zu einem Empfänger übertragen wird
DE19963683A1 (de) Architektur zum Decodieren von linearen Blockfehler-Korrekturcodes mit Soft Decision
DE10238841B4 (de) Parallelverarbeitung der Decodierung und der zyklischen Redundanzüberprüfung beim Empfang von Mobilfunksignalen
EP0903025B1 (de) Verfahren zur rechnergestützten rücksignalisierung in einem automatischen wiederholungs-anforderungs-verfahren
DE69823307T2 (de) Digitales Übertragungssystem, Dekoder und Dekodierungsverfahren
DE102017216264B4 (de) Decodierverfahren
DE10024444A1 (de) Vorrichtung und Verfahren zur arithmetischen Codierung/Decodierung und computerlesbares Aufzeichnungsmedium
EP1130788A2 (de) Verfahren zum Speichern von Pfadmetriken in einem Viterbi-Decodierer
EP0958685B1 (de) Verfahren und schaltungsanordnung zur übertragung ausgewählten signalpunkten einer signalkonstellation
EP1252716B1 (de) Verfahren und anordnung zur dekodierung von informationen
DE102013201422B3 (de) Verfahren zum Wiederherstellen verlorengegangener und/ oder beschädigter Daten
DE102022117663B3 (de) Verfahren zur Übertragung einer IBLT-Datenstruktur und Benutzerendgerät
DE112004003153B4 (de) Datenübertragungssystem mit reduziertem Leistungsverbrauch, Verfahren und Übertragungsschaltung
DE19520987A1 (de) Verfahren zur Terminierung des Trellis bei rekursiven systematischen Faltungscodes
DE102010029113A1 (de) Verfahren zur Kanalcodierung von digitalen Daten
DE102011102503B3 (de) Verfahren zum Berichtigen beschädigter Daten
DE102019200941B4 (de) Decodierverfahren
DE102015216987B4 (de) Verfahren zum Wiederherstellen verlorengegangener und/oder beschädigter Daten
DE102005015386B9 (de) Modifikation einer zyklischen Redundanzprüfung zur Längendetektion einer Nachricht mit Faltungsschutz
DE10253949B3 (de) Verfahren zur Bestimmung einer Restfehlerwahrscheinlichkeit bei der Übertragung von Daten
DE4130907A1 (de) Schaltungsanordnung zur erzeugung zyklischer codes

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
D2 Grant after examination
8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee