DE3784684T2 - Fehlerkorrekturdecoder fuer schnelle behandlung von pufferueberlaeufen. - Google Patents
Fehlerkorrekturdecoder fuer schnelle behandlung von pufferueberlaeufen.Info
- Publication number
- DE3784684T2 DE3784684T2 DE8787119230T DE3784684T DE3784684T2 DE 3784684 T2 DE3784684 T2 DE 3784684T2 DE 8787119230 T DE8787119230 T DE 8787119230T DE 3784684 T DE3784684 T DE 3784684T DE 3784684 T2 DE3784684 T2 DE 3784684T2
- Authority
- DE
- Germany
- Prior art keywords
- symbols
- sequence
- assumed
- redundancy
- symbol
- 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
- 238000012937 correction Methods 0.000 title description 3
- 239000000872 buffer Substances 0.000 claims description 55
- 230000004044 response Effects 0.000 claims description 13
- 238000012545 processing Methods 0.000 claims description 2
- 230000003139 buffering effect Effects 0.000 claims 1
- 230000006870 function Effects 0.000 description 18
- 230000005540 biological transmission Effects 0.000 description 14
- 238000000034 method Methods 0.000 description 12
- 239000003607 modifier Substances 0.000 description 5
- 238000010586 diagram Methods 0.000 description 4
- 230000001174 ascending effect Effects 0.000 description 3
- 230000007547 defect Effects 0.000 description 3
- 230000002457 bidirectional effect Effects 0.000 description 2
- 230000000295 complement effect Effects 0.000 description 2
- 238000011084 recovery Methods 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
Classifications
-
- 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/37—Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
- H03M13/39—Sequence estimation, i.e. using statistical methods for the reconstruction of the original 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/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error 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
Landscapes
- Physics & Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Error Detection And Correction (AREA)
Description
- Die Erfindung betrifft einen fehlerkorrigierenden Decodierer zur Verwendung als Gegenstück zu einem fehlerkorrigierenden Codierer, insbesondere zur schnellen Behandlung von Pufferüberläufen.
- Wie nachstehend noch im einzelnen beschrieben wird, dient ein fehlerkorrigierender Codierer zur Codierung einer Sequenz von Originalinformationssymbolen in eine Sequenz von Originalcodesymbolen. Zu diesem Zweck wird nach einer vorbestimmten Regel aus einer Sequenz von Originalinformationssymbolen eine Sequenz von Originalredundanzsymbolen erzeugt und der Originalinformationssymbolsequenz hinzugefügt, um die Originalcodesymbolsequenz zu erzeugen. Jedes Redundanzsymbol kann aus nur einem Bit bestehen, wobei dann oft das Redundanzsymbol als Redundanzbit bezeichnet wird. Die Originalcodesymbolsequenz ist entweder eine bitserielle oder eine bitparallele Sequenz und wird entweder an einen Übertragungskanal oder eine Übertragungsstrecke übermittelt oder in einem Speichermedium gespeichert.
- Ob über einen Übertragungskanal übertragen oder von einem Speichermedium reproduziert, die Originalcodesymbolsequenz wird als Eingangssequenz empfangener Codesymbole an einen als Gegenstück fungierenden fehlerkorrigierenden Decodierer übergeben. Verglichen mit der Originalcodesymbolsequenz weist die Decodierereingangssequenz im allgemeinen hier und da Fehler auf, und zwar hauptsächlich aufgrund von Störsignalen im Übertragungskanal oder mechanischen Defekten des Speichermediums. Unabhängig davon, ob solche Fehler vorhanden sind oder nicht, kann man davon ausgehen, daß die empfangenen Codesymbole den betreffenden Originalcodesymbolen entsprechen. Der Decodierer dient zur Erzeugung einer reproduzierten Originalinformationssymbolsequenz, wobei die Fehler automatisch korrigiert werden.
- Ein solcher fehlerkorrigierender Decodierer ist vorzugsweise ein sequentieller fehlerkorrigierender Decodierer. Bei einem sequentiellen fehlerkorrigierenden Decodierer arbeitet ein sequentieller Decodiercontroller anhand der Eingangssequenz einen sequentiellen Decodieralgorithmus ab, um eine lokale Sequenz angenommener oder beurteilter Informationssymbole zu erzeugen, die für die betreffenden Originalinformationssymbole angenommen werden. Eine Codierernachbildung funktioniert wie der Codierer und codiert die lokale Sequenz in eine Nachbildungsausgangssequenz angenommener Codesymbole. Zu diesem Zweck erzeugt die Codierernachbildung als Antwort auf die lokale Sequenz und nach einer vorbestimmten Regel eine Sequenz angenommener Redundanzsymbole. Bei gemeinsamer Verwendung ergeben die angenommene Informationssymbolfrequenz und die angenommene Redundanzsymbolsequenz die angenommene Codesymbolsequenz. Als Antwort auf die Eingangs- und die Nachbildungsausgangssequenz berechnet ein Wahrscheinlichkeitsrechner Wahrscheinlichkeiten für die angenommenen Codesymbole in bezug auf die betreffenden empfangenen Codesymbole. Der Wahrscheinlichkeitsrechner erzeugt dabei ein Wahrscheinlichkeitssignal für die Wahrscheinlichkeiten.
- Das Wahrscheinlichkeitssignal wird zurückgeführt zum sequentiellen Decodiercontroller und wird bei der Abarbeitung des sequentiellen Decodieralgorithmus verwendet. Auf diese Weise wird der sequentielle Decodieralgorithmus empirisch abgearbeitet, um die Fehler automatisch zu korrigieren und dabei die Codierernachbildung zu veranlassen, die angenommene Informationssymbolsequenz als Reproduktion der Originalinformationssymbolsequenz zu erzeugen. Beim empirischen Vorgehen wird mindestens ein Puffer im Decodierer so verwendet, wie in der vom gleichen Erfinder eingereichten Europapatentanmeldung EP- A-261 626, die in ihren Zeichnungen den Stand der Technik nach Artikel 54 (1) und (3) EPC für die benannten Vertragsstaaten DE und FR behandelt. Da die Puffer eine beschränkte Kapazität haben, ist ein Pufferüberlauf unvermeidlich.
- Es ist zu beachten, daß der Codierer einen internen Codiererzustand hat, der sich von Zeit zu Zeit ändert. Die Codierernachbildung hat einen internen Nachbildungszustand, der sich bei stabilem Betrieb synchron mit dem internen Codiererzustand ändert. Bei Pufferüberlauf geht die Synchronie des internen Nachbildungszustandes mit dem internen Codiererzustand verloren. Dadurch wird es unmöglich, daß der Codierer die Reproduktion der Originalinformationssymbolsequenz erzeugt. Deshalb ist man bestrebt, den Pufferüberlauf zu behandeln, um den stabilen Betrieb schnell wiederherzustellen.
- Es sind bereits verschiedene Methoden der Behandlung des Pufferüberlaufs bekannt. Dabei handelt es sich üblicherweise um die "Guess-and-Restart"-Technik und die Blockdatentechnik, die in einem Buch von George C. Clark jr. und J. Bibb Cain mit dem Titel "Error-Correction Coding for Digital Communications", erstveröffentlicht 1981 von Plenum Press, New York und London, insbesondere auf den Seiten 316 bis 318 beschrieben wurden.
- Bei der Guess-and-Restart-Technik wird die Eingangssequenz in den Puffer eingegeben, wobei bei Pufferüberlauf eine vorbestimmte Länge weggelassen wird. Mit dem dabei entstehenden Platz im Puffer wird der interne Nachbildungsstatus initialisiert, indem schwere Entscheidungen für die empfangenen Codesymbole als angenommene Codesymbole getroffen werden. Dies versetzt vielleicht oder vielleicht auch nicht den internen Nachbildungszustand in Synchronie mit dem internen Codiererzustand. Wenn durch einmaliges Initialisieren des internen Nachbildungszustands keine Synchronie erreicht wird, muß der interne Nachbildungszustand wiederholt initialisiert werden, wobei wiederum Platz im Puffer geschaffen wird. Bei einem Übertragungskanal müßte die Synchronie nach Auftreten von Burstfehlern immer wieder initialisiert werden. Selbst bei einem Speichermedium dauert es lange, bis der stabile Betrieb des Decodierers erreicht ist.
- Bei der Blockdatentechnik wird die Originalinformationssymbolsequenz im Decodierer zu einer intermittierenden Folge von Blöcken mit einem eindeutigen Wort zwischen je zwei aufeinanderfolgenden Blöcken geblockt. Im Decodierer wird die Eingangssequenz in den Puffer eingegeben, wobei bei einem Pufferüberlauf eine vorbestimmte Anzahl von Blöcken weggelassen wird. Der interne Nachbildungszustand wird initialisiert, so daß er mit dem eindeutigen Wort übereinstimmt. Dies verkürzt möglicherweise die für die Erreichung der Synchronie erforderliche Zeit. Durch die Verwendung der eindeutigen Wörter wird jedoch die übertragene oder gespeicherte Informationsmenge verringert. Außerdem muß Blocksynchronie zwischen dem Codierer und dem Decodierer hergestellt werden. Das ist bei Übertragungskanälen zwischen Vermittlungsstellen sehr schwierig. Es ist andererseits in unserem heutigen informationsintensiven Gesellschaftssystem, indem sich digitale elektronische Computer und elektrische und optische Übertragungssysteme mischen, erforderlich, eine große Informationsmenge mit einer hohen Geschwindigkeit zu handhaben, wobei die Informationen gegen Fehler geschützt werden und keine Blocksynchronie aufweisen.
- Es ist daher eine Aufgabe der Erfindung, einen sequentiellen fehlerkorrigierenden Decodierer bereitzustellen, der die Fähigkeit hat, Pufferüberläufe schnell zu behandeln.
- Es ist eine weitere Aufgabe der Erfindung, einen sequentiellen fehlerkorrigierenden Decodierer der beschriebenen Art zur Verfügung zu stellen, der einen Positionszähler aufweist, der bei der Behandlung von Pufferüberläufen auf eine neue Art und Weise initialisiert wird.
- Weitere Aufgaben der Erfindung werden im weiteren Verlaufe der Beschreibung deutlich werden. Wenn man den Kern der Erfindung beschreibt, kann man folgendermaßen definieren: ein fehlerkorrigierender Decodierer dient als Gegenstück zu einem fehlerkorrigierenden Codierer zur Codierung einer Sequenz von Originalinformationssymbolen in eine Sequenz von Originalcodesymbolen durch Erzeugung von Originalredundanzsymbolen nach einer vorbestimmten Regel und durch Hinzufügung der Redundanzsymbole zu den betreffenden Informationssymbolen, um die betreffenden Codesymbole zu bilden, und weist folgendes auf: einen sequentiellen Decodiercontroller zur Abarbeitung eines sequentiellen Decodieralgorithmus anhand einer Eingangssequenz empfangener Codesymbole, die den betreffenden Originalcodesymbolen entsprechen, um eine lokale Sequenz angenommener Informationssymbole zu erzeugen, die für die betreffenden Originalinformationssymbole angenommen werden, eine Codierernachbildung zur Codierung der lokalen Sequenz in eine Nachbildungsausgangssequenz angenommener Codesymbolen durch Erzeugung angenommener Redundanzsymbole nach der vorbestimmten Regel und durch Hinzufügung von angenommenen Redundanzsymbolen zu den betreffenden angenommenen Informationssymbolen, um die betreffenden angenommenen Codesymbole zu bilden, und einen auf die Eingangs- und die Nachbildungsausgangssequenzen ansprechfähigen Wahrscheinlichkeitsrechner zur Berechnung der Wahrscheinlichkeiten für die angenommenen Codesymbole in bezug auf die betreffenden empfangenen Codesymbole, wobei der Wahrscheinlichkeitsrechner ein Wahrscheinlichkeitssignal für die Wahrscheinlichkeiten erzeugt. Ein fehlerkorrigierender Decodierer, der dem oben definierten ähnlich ist, ist aus EP-A- 24 020, siehe Fig. 4 bis Fig. 7, bekannt.
- Der oben definierte, erfindungsgemäße fehlerkorrigierende Decodierer weist ferner folgendes auf: (A) einen an den sequentiellen Decodiercontroller gekoppelten Positionszähler zum Zählen der Positionsanzahl für die betreffenden angenommenen Informationssymbole in der lokalen Sequenz, um ein Zählsignal für die Positionszählung zu erzeugen; (B) eine auf das Zählsignal ansprechfähige Modifiziereinrichtung zum Modifizieren des Wahrscheinlichkeitssignals zu einem modifizierten Signal, indem den Wahrscheinlichkeiten, die für die betreffenden angenommenen Redundanzsymbole errechnet worden sind, so lange ein vorbestimmter Wert zugewiesen wird, bis die Positionszählung einen vorbestimmten Zählwert erreicht; und (C) eine Versorgungseinrichtung zur Versorgung des sequentiellen Decodiercontrollers mit einem modifizierten Signal, damit das modifizierte Signal die Abarbeitung des sequentiellen Decodieralgorithmus kontrolliert.
- Fig. 1 zeigt ein spezifisches Beispiel für einen fehlerkorrigierenden Codierer in Blöcken, das zum besserern Verständnis der Erfindung dienen soll;
- Fig. 2 zeigt ein Blockschaltbild eines allgemeineren Beispiels für einen fehlerkorrigierenden Codierer, das dem gleichen Zweck dient;
- Fig. 3 ist ein Blockschaltbild eines herkömmlichen fehlerkorrigierenden Decodierers;
- Fig. 4 ist ein Blockschaltbild eines fehlerkorrigierenden Decodierers in einem spezifischen erfindungsgemäßen Ausführungsbeispiel; und
- Fig. 5 ist ein Blockschaltbild eines fehlerkorrigierenden Decodierers in einem allgemeineren erfindungsgemäßen Ausführungsbeispiel.
- Anhand von Fig. 1 wird zunächst ein spezifisches Beispiel für fehlerkorrigierende Codierer beschrieben, damit die Erfindung leichter verständlich wird. Ein solcher fehlerkorrigierender Codierer wird der Kürze halber als Codierer bezeichnet, sofern dies nicht unpassend ist.
- Wie Fig. 1 zeigt, besitzt der Codierer die Ein- und Ausgänge 21 und 22. Der Codiererausgang 22 dient entweder zum Anschluß an einen Übertragungskanal oder eine Übertragungsstrecke oder an ein Speichermedium (nicht dargestellt). Der Einfachheit der Beschreibung wegen nehmen wir für den Moment an, daß der Ausgang 22 an einen Übertragungskanal angeschlossen ist.
- Der Codierereingang 21 wird mit einer Sequenz von Originalinformationssymbolen versorgt, die Informationen oder Daten darstellen, die zusammen mit einer Sequenz von Originalredundanzsymbolen als eine Sequenz von Originalcodesymbolen über den Codiererausgang 22 an den Übertragungskanal übergeben werden sollen. Die Originalinformationssymbolsequenz wird auf den Eingang 21 gelegt, indem eine Informationsbitsequenz, die die Informationen darstellt, segmentiert wird.
- Bei dem spezifischen Beispiel besteht jedes Originalinformationssymbol aus einem ersten bis dritten Bit. Jedes Originalredundanzsymbol besteht aus einem Bit und ist ein Originalredundanzbit. Jedes Originalcodesymbol besteht aus einem ersten bis vierten Bit. Der Codierer verarbeitet die Originalinformationssymbolsequenzen und die Originalcodesequenzen bitparallel. Wie weiter unten beschrieben wird, kann jedes Originalredundanzsymbol aus mehreren Bits bestehen. Dabei verarbeitet der Codierer die Originalredundanzsymbolsequenz auch bitparallel. Die Codiererzustandshalteschaltung 25 wird nacheinander mit Originalinformationssymbolen vom Codierereingang 21 versorgt. Bei dem spezifischen Beispiel wird die Zustandshalteschaltung 25 durch das erste bis dritte Parallelschieberegister 26, 27 und 28 implementiert, die zum besseren Verständnis der Darstellung gestaffelt dargestellt sind und die gleichzeitig mit dem ersten bis dritten Bit des jeweiligen Originalinformationssymbols versorgt werden. In dem dargestellten Beispiel hat jedes Schieberegister eine erste und zweite Stufe, und zwar links die erste und rechts die zweite. Die ersten Stufen der betreffenden Schieberegister 26 bis 28 werden jeweils mit einem neuen Originalinformationssymbol versorgt.
- Da jedes Schieberegister zwei Stufen hat, werden zu jedem Zeitpunkt zwei Originalinformationssymbole in der Codiererzustandshalteschaltung 25 gehalten und durch die betreffenden Schieberegister 26 bis 28 auf bekannte Weise nach rechts verschoben. Auf diese Weise hat die Codiererzustandshalteschaltung 25 einen internen Codiererzustand, der immer dann erneuert wird, wenn die Zustandshalteschaltung 25 mit einem neuen Informationssymbol versorgt wird.
- Die ersten Stufen der betreffenden Schieberegister 26 bis 28 übergeben das neue Informationssymbol an den Codiererausgang 22. Es ist zu sagen, das die Codiererzustandshalteschaltung 25 eine Informationssymbolhaltelänge von zwei Symbolen hat, weil die Zustandshalteschaltung 25 zwei Informationssymbole gleichzeitig hält, um den internen Codiererzustand darzustellen.
- Ein Codiererfunktionsgenerator 29 ist an die Codiererzustandshalteschaltung 25 auf eine vorbestimmte Weise, die nachstehend erläutert wird, angekoppelt. Als Antwort auf den internen Codiererzustand, den die Zustandshalteschaltung 25 zu jedem Zeitpunkt hat, übergibt der Funktionsgenerator 29 eines der Originalredundanzsymbole an den Codiererausgang 22, und zwar gleichzeitig mit der Übergabe eines neuen Informationssymbols aus der Zustandshalteschaltung 25 an den Ausgang 22.
- Wie Fig. 1 zeigt, weist der Codiererfunktionsgenerator 29 eine erste bis dritte Exklusiv-ODER-Schaltung 31, 32 und 33 mit zwei Eingängen und eine Exklusiv-ODER-Schaltung 34 mit drei Eingängen auf. Die erste Schaltung 31 wird mit zwei ersten Bits versorgt, die für zwei aufeinanderfolgende Originalinformationssymbole gleichzeitig im ersten Schieberegister 26 gehalten werden. Ebenso wird die zweite Schaltung 32 mit zwei zweiten Bits vom zweiten Schieberegister 27 und die dritte Schaltung 33 mit zwei dritten Bits vom dritten Schieberegister 28 versorgt. Die erste bis dritte Schaltung 31 bis 33 erzeugen ein erstes bis drittes Ausgangsbit. Als Antwort auf das erste bis dritte Ausgangsbit übergibt die Schaltung 34 als Originalredundanzsymbol oder -bit ein Bit ungerader Parität an den Codiererausgang 22.
- Es wird jetzt deutlich, daß der Codierer die Originalinformationssequenz in eine Originalcodesymbolsequenz codiert, indem er die Originalredundanzsymbolsequenz nach einer vorbestimmten Regel erzeugt und der Informationssymbolsequenz eine Redundanzsymbolsequenz hinzufügt. Bei einer anderen Regel kann der Codiererfunktionsgenerator 29 eine andere Struktur haben und/oder anders an die Codiererzustandshalteschaltung 25 angekoppelt sein. Außerdem kann der interne Codiererzustand durch eine andere Informationssymbolhaltelänge definiert sein.
- In Fig. 2 weist ein allgemeineres Beispiel eines Codierers gleiche Teile auf, die mit gleichen Bezugszeichen versehen werden und mit gleichnamigen Signalen arbeiten. In dem allgemeineren Beispiel handelt es sich um einen Codierer für Originalinformationssymbole einer gemeinsamen Bitlänge oder einer gemeinsamen Informationssymbollänge von k Bits und für Originalcodesymbole einer gemeinsamen Bitlänge oder einer gemeinsamen Codesymbollänge von n Bits. Die Originalredundanzsymbole haben eine gemeinsame Bitlänge oder eine gemeinsame Redundanzsymbollänge von (n-k) Bits.
- Die Codiererzustandshalteschaltung 25 hat eine Informationssymbolhaltelänge von K Symbolen. Man beachte in diesem Zusammenhang, daß der Buchstabe K keinen direkten Bezug hat zu dem anderen Buchstaben k. Die Zustandshalteschaltung 25 wird vorzugsweise durch ein erstes bis k-tes Parallelschieberegister implementiert, von denen jedes eine erste bis K-te Stufe hat. Die ersten Stufen des ersten bis k-ten Schieberegisters sind zusammengefaßt dargestellt, und zwar durch einen ganz links befindlichen rechteckigen Block der Zustandshalteschaltung 25. Auf jeden Fall hat die Zustandshalteschaltung 25 einen internen Codiererzustand, der immer dann erneuert wird, wenn die Zustandshalteschaltung 25 mit einem jeweils neuen Originalinformationssymbol vom Codierereingang 21 versorgt wird.
- Der Codiererfunktionsgenerator 29 ist auf vorbestimmte Weise an die Codiererzustandshalteschaltung 25 gekoppelt. Als Antwort auf den internen Codiererzustand erzeugt der Funktionsgenerator 29 die Originalredundanzsymbolsequenz nach einer vorbestimmten Regel. Es ist verständlich, daß der Codierer in Fig. 2 so funktioniert, wie er anhand von Fig. 1 beschrieben worden ist.
- Im Hinblick auf Fig. 1 und 2 sei hier erwähnt, daß verschiedene Codes zur Verwendung bei Fehlerkorrekturcodierung bereits bekannt sind, wie in dem oben erwähnten Buch von Clark jr. und Cain, insbesondere auf den Seiten 227 bis 231 beschrieben worden ist. Beipielsweise kann der Code auch ein Baumcode sein, z. B. ein Konvolutionscode oder ein Gittercode. Die Anwendung der vorbestimmten Regel zur Bereitstellung des jeweiligen Originalcodesymbols ist mit jedem der bekannten Codes möglich.
- In Fig. 3 wird ein konventioneller fehlerkorrigierender Decodierer beschrieben. Wie bei den fehlerkorrigierenden Codierern wird ein fehlerkorrigierender Decodierer der Einfachheit halber nur Decodierer genannt. Wir gehen davon aus, daß der konventionelle Decodierer als Gegenstück zu einem in Fig. 2 dargestellten Codierer dient. Insbesondere wird der Decodierer in Verbindung mit dem Codierer verwendet, der eine k-Bit- Originalinformationssequenz in eine n-Bit-Originalcodesymbolsequenz codiert. Zu diesem Zweck erzeugt der Codierer eine (n- k)-Bit-Originalredundanzsymbolsequenz nach einer vorbestimmten Regel, die anhand von Fig. 1 erläutert wird und die mit Bezug auf das Buch von Clark jr. und Cain erwähnt wird. Die Redundanzsymbolsequenz wird der Informationssymbolsequenz hinzugefügt, damit eine Codesymbolsequenz entsteht.
- Der Decodierer hat die Ein- und Ausgänge 36 und 37. Ob über einen Übertragungskanal übertragen oder in einem Speichermedium gespeichert und dann daraus reproduziert, die Originalcodesymbolsequenz wird als eine Decodierereingangssequenz empfangener Codesymbole mit einer gemeinsamen Bitlänge oder einer gemeinsamen Codesymbollänge von n Bits an den Decodierereingang 36 übergeben. Die Decodierereingangssequenz ist deshalb eine empfangene n-Bit-Codesymbolsequenz. Im Vergleich zur Originalcodesymbolsequenz hat die Decodierereingangssequenz hier und da Fehler, und zwar hauptsächlich aufgrund von Störsignalen im Übertragungskanal oder mechanischen Defekten des Speichermediums. Unabhängig davon, ob ein solcher Fehler vorhanden ist oder nicht, kann man davon ausgehen, daß die empfangenen Codesymbole den betreffenden Originalcodesymbolen entsprechen.
- In der Praxis wird der Decodierer nicht direkt mit der Decodierereingangssequenz versorgt, sondern mit einem analogen Empfangssignal. Deshalb wird ein Analog-Digital-Wandler (nicht dargestellt) zur Umwandlung des analogen Empfangsignals in die Decodierereingangssequenz für die Weitergabe an den Decodierereingang 36 verwendet. Auf jeden Fall wird die Decodierereingangssequenz vom Eingang 36 an einen Eingabepuffer 41 übergeben, der zur Akkumulierung der empfangenen Codesymbole dient.
- Als Antwort auf ein Vorlaufsignal, das weiter unten beschrieben wird, wird jedes empfangene Codesymbol in der Darstellung nach rechts verschoben, und zwar vom Eingabepuffer 41 zu einem Register 42, das das empfangene Codesymbol als neues Codesymbol temporär speichert. Dabei wird das vorherige Codesymbol weiter nach rechts aus dem Register 42 in einen internen Puffer 43 geschoben, wenn ein weiteres neues Codesymbol aus dem Eingangspuffer 41 im Register 42 gespeichert wird. Die jeweils letzten Codesymbole werden als interne Codesymbole im internen Puffer 43 akkumuliert.
- Als Antwort auf ein Rücklaufsignal, das wie das Vorlaufsignal weiter unten beschrieben wird, wird jedes empfangene Codesymbol aus dem Register 42, links im Bild, zurück in den Eingabepuffer 41 geschoben. Zu diesem Zeitpunkt wird das interne Codesymbol als neues Codesymbol nach links aus dem internen Puffer 43 in das Register 42 verschoben.
- Wie aus der weiteren Beschreibung noch hervorgehen wird, arbeitet ein sequentieller Decodiercontroller 45 einen sequentiellen Decodieralgorithmus anhand einer Controllereingangssequenz empfangener Codesymbole ab, die nacheinander vom Register 42 kommen, während die empfangenen Codesymbole in erster Linie vom Eingabepuffer 41 nach rechts in den internen Puffer 43 verschoben werden. Als Antwort auf jedes empfangene Codesymbol der Controllereingangssequenz erzeugt der sequentielle Decodiercontroller 45 ein angenommenes Informationssymbol, das als Originalinformationssymbol, das in dem betreffenden empfangenen Codesymbol enthalten ist, angenommenen oder beurteilt wird. Der sequentielle Decodiercontroller 45 erzeugt dabei eine lokale Sequenz solcher angenommener Informationssymbole. In dem dargestellten Beispiel haben die angenommenen Informationssymbole eine gemeinsame Informationssymbollänge von k Bits.
- Eine Decodiererzustandshalteschaltung 46 gleicht im Aufbau der Codiererzustandshalteschaltung 25, die im Zusammenhang mit Fig. 2 beschrieben wird, und empfängt die lokale Sequenz vom sequentiellen Decodiercontroller 45. Infolgedessen hat die Zustandshalteschaltung 46 einen lokalen internen Zustand, der immer dann erneuert wird, wenn die Zustandshalteschaltung 46 mit einem neuen angenommenen Informationssymbol versorgt wird.
- Man beachte, daß die Decodiererzustandshalteschaltung 46 in der Lage sein muß, den lokalen internen Zustand in umgekehrter Richtung zu erneuern, wenn die empfangenen Codesymbole nacheinander vom Register 42 kommen, indem sie vom Register 42 nach links zurück in den Eingabepuffer 41 und vom internen Puffer 43 zurück in das Register 42 geschoben werden. Jedes Schieberegister muß deshalb ein bidirektionales Schieberegister sein, wenn die Zustandshalteschaltung 46 durch Parallelschieberegister implementiert wird, wie im Zusammenhang mit Fig. 2 beschrieben. Auf jeden Fall erzeugt die Zustandshalteschaltung 46 eine Schaltungsausgangssequenz solcher neuer Informationssymbole.
- Der sequentielle Decodiercontroller 45 legt entweder das Vorlauf- oder das Rücklaufsignal auf einen Bus, der weiter unten teilweise dargestellt wird. Die empfangenen Codesymbole werden vom Eingabepuffer 41 zum Register 42 und vom Register 42 zum internen Puffer 43 nach rechts verschoben. Außerdem wird das Vorlaufsignal benutzt, um den lokalen internen Zustand in Vorwärtsrichtung zu erneuern, und zwar indem die angenommenen Informationssymbole durch die Decodiererzustandshalteschaltung 46 in der Abbildung nach rechts verschoben werden. Ebenso wird das Rücklaufsignal benutzt, um den lokalen internen Zustand in umgekehrter Richtung oder rückwärts zu erneuern.
- Der Decodiererfunktionsgenerator 47 hat einen Aufbau, der identisch ist mit dem des Codiererfunktionsgenerators 29, der im Zusammenhang mit Fig. 2 beschrieben wird, und ist so an die Decodiererzustandshalteschaltung 46 gekoppelt, wie der Codiererfunktionsgenerator 29 an die Codiererzustandshalteschaltung 25 gekoppelt ist. Immer wenn der lokale interne Zustand entweder in Vorwärts- oder in Rückwärtsrichtung erneuert wird, erzeugt der Funktionsgenerator 47 ein angenommenes Redundanzsymbol, das dem Originalredundanzsymbol entspricht, das in dem neuen Informationssymbol enthalten ist, um den lokalen internen Zustand zu erneuern. Auf diese Weise erzeugt der Funktionsgenerator 49 eine Generatorausgangssequenz solcher angenommener Redundanzsymbole, die eine gemeinsame Redundanzsymbollänge von (n-k) Bits haben.
- Es wird jetzt deutlich, daß eine Kombination der Codiererzustandshalteschaltung 46 und des Funktionsgenerators 47 als Codierernachbildung dient, die so funktioniert wie der im Zusammenhang mit Fig. 2 dargestellte Codierer. Insbesondere dient die Codierernachbildung zur Codierung der lokalen Sequenz in eine Nachbildungsausgangssequenz angenommener Codesymbole, indem sie die angenommenen Redundanzsymbole nach der in dem betreffenden Codierer verwendeten vorbestimmten Regel erzeugt und die angenommenen Redundanzsymbole den angenommenen Informationssymbolen hinzufügt. Die Nachbildungsausgangssequenz besteht deshalb aus der Schaltungsausgangssequenz und der Generatorausgangssequenz und ist eine n-Bit-Sequenz. Der lokale interne Zustand kann jetzt als interner Nachbildungszustand bezeichnet werden.
- Ein Wahrscheinlichkeitsrechner 48 wird mit der Nachbildungsausgangssequenz von der Codierernachbildung und nachfolgend mit den empfangenen Codesymbolen vom Register 42 versorgt und berechnet eine Wahrscheinlichkeit dafür, in welchem Maße jedes angenommene Codesymbol von n Bits einem der angenommenen Codesymbole mit gemeinsamer Codesymbollänge von n Bits ähnlich ist, wie es nachstehend beschrieben wird. Der Wahrscheinlichkeitsrechner 48 erzeugt dabei ein Wahrscheinlichkeitssignal für die Wahrscheinlichkeiten, die die angenommenen Codesymbole in bezug auf die betreffenden empfangenen Codesymbole haben. Bei einem herkömmlichen Decodierer wird das Wahrscheinlichkeitssignal direkt an den sequentiellen Decodiercontroller 45 übergeben, um die Abarbeitung des sequentiellen Decodieralgorithmus zu steuern, wie sogleich deutlich werden wird.
- Um den lokalen internen Zustand an den Decodiererfunktionsgenerator 47 und die Schaltungsausgangssequenz an den Wahrscheinlichkeitsrechner 48 zu übermitteln, erzeugt die Decodiererzustandshalteschaltung 46 nacheinander die angenommenen Informationssymbole der lokalen Sequenz und gibt sie nach rechts als Schaltungsausgangssymbole aus, während die empfangenen Codesymbole vom Eingabepuffer 41 über das Register 42 in den internen Puffer 43 nach rechts bewegt werden. Auf die bekannte Art und Weise werden die Schaltungsausgangssymbole als gepufferte Symbole in einem Ausgabepuffer 49 akkumuliert. Die gepufferten Symbole werden als Decodiererausgangs-Sequenz sequentiell vom Ausgabepuffer 49 an den Decodiererausgang 37 übergeben. Bei stabilem Betrieb des Decodierers, bei dem die empfangenen Codesymbole ständig nach rechts weitergegeben werden, ist eine Reproduktion der Originalinformationssymbolsequenz durch die Ausgangssequenz gegeben, in der Fehler, falls vorhanden, automatisch korrigiert werden.
- In dem oben zitierten Buch von Clark jr. und Cain, insbesondere auf den Seiten 267 bis 328 werden verschiedene sequentielle Decodieralgorithmen beschrieben. Beispielsweise kann der sequentielle Decodiercontroller 45 nach einem Algorithmus arbeiten, der dem Fachmann als Fano-Algorithmus bekannt ist und nachstehend erläutert wird. Der Fano-Algorithmus wird ausführlich in einem Artikel von Robert M. Fano mit dem Titel "A Heuristic Discussion of Probabilistic Decoding" in IEEE-TRANSACTIONS on Information und Theory, Band IT-9, April 1963, Seite 64 bis 74 beschrieben.
- Der Fano-Algorithmus wird nachstehend im Zusammenhang mit einem Fall beschrieben, bei dem die Originalinformationssymbole eine gemeinsame Informationslänge von 2 Bits haben. In diesem Fall kann jedes Informationssymbol eines von vier möglichen oder zulässigen Symbolen 00, 01, 10 und 11 sein. Wenn die vier möglichen Symbole in einem empfangenen Codesymbol einzeln vom Register 42 an die Codierernachbildung übergeben werden, erzeugt diese entsprechend den vier möglichen Symbolen verschiedene Nachbildungsausgangssymbole in der Nachbildungsausgangssequenz. Der sequentielle Decodiercontroller 45 vergleicht die empfangenen Codesymbole zyklisch oder anders mit den Nachbildungsausgangssymbolen und nimmt an bzw. entscheidet, daß dasjenige empfangene Codesymbol eines der Nachbildungsausgangssymbole ist, das eine maximale Wahrscheinlichkeit in bezug auf das betreffende empfangene Codesymbol hat. Auf diese Weise wird eines der vier möglichen Symbole als angenommenes Informationssymbol für das betreffende empfangene Codesymbol ausgewählt.
- In dem dargestellten herkömmlichen Decodierer werden die Wahrscheinlichkeiten vom Wahrscheinlichkeitsrechner 48 getrennt berechnet. Die Fano-Wahrscheinlichkeit λ, wie sie von Fachleuten bezeichnet wird, findet eine breite Anwendung beim Vergleichen der Wahrscheinlichkeiten für die betreffenden Nachbildungsausgangsymbole in bezug auf das jeweilige empfangene Codesymbol. Die Fano-Wahrscheinlichkeit wird wie folgt definiert:
- λ = log&sub2;[p(y x)/p(y)] - B,
- wobei folgendes gilt: p(y) ist eine Wahrscheinlichkeit dafür, daß das empfangene Codesymbol ein Codesymbol y ist, p(y x) ist eine weitere Wahrscheinlichkeit, und zwar dafür, daß das empfangene Codesymbol das Codesymbol y ist, wenn das Originalcodesymbol ein anderes Codesymbol x ist und B ein Parameter ist, der als Vorgabewert bezeichnet wird und für den ein optimaler Wert vorläufig festgelegt wird, z.B. durch Simulation. Die Fano-Wahrscheinlichkeit hat einen reellen Wert. In der Praxis wird die Fano-Wahrscheinlichkeit zur Vereinfachung der Implementierung des sequentiellen Decodiercontrollers 45 an eine ganze Zahl, die dem reellen Wert annähernd proportional ist, angenähert. Ferner werden die angenommenen Informationssymbole nacheinander angenommen, wobei eine maximale akkumulierte Wahrscheinlichkeit im sequentiellen Decodiercontroller 45 berechnet wird.
- Hierbei ist zu beachten, daß eine große Anzahl von Fehlern in der Decodierereingangssequenz auftreten kann, wenn der Übertragungskanal starken Störsignalen ausgesetzt ist oder wenn das Speichermedium viele mechanische Defekte aufweist. In einem solchen Fall kann ein Fehlersymbol als angenommenes Informationssymbol angenommen werden. Wenn eine solche Fehlerannahme durchgeführt wird, ist anschließend der lokale interne Zustand anders als der interne Codiererzustand. Das heißt, der interne Zustand der Nachbildung verliert die Synchronie mit dem internen Codiererzustand. Infolgedessen verliert der sequentielle Decodiercontroller 45 die Fähigkeit, ein angenommenes Informationssymbol zu finden. Aus der Schwierigkeit heraus, ein angenommenes Informationssymbol zu finden, kann man auf die Tatsache stoßen, daß schon vorher eine Fehlerannahme durchgeführt worden ist. Im Fano-Artikel wird ein rigoroses Kriterium dafür beschrieben, wie man entscheiden soll, ob ein Fehlersyinbol bereits als angenommenes Informationssymbol angenommen worden ist oder nicht.
- Im Fano-Algorithmus wird der lokale interne Zustand auf den vergangenen internen Zustand zurückgestellt, wenn der sequentielle Decodiercontroller 45 Mühe hat, sich für ein Nachbildungsausgangssymbol großer Fano-Wahrscheinlichkeit zu entscheiden. Danach arbeitet der sequentielle Decodiercontroller 45 noch einmal den Fano-Algorithmus ab, um zu entscheiden, ob ein weiteres Nachbildungsausgangssymbol, das eine Fano-Wahrscheinlichkeit hat, die der Höhe der für das Fehlersymbol berechneten Fano-Wahrscheinlichkeit am nächsten kommt, ein korrigiertes Symbol ist. Der Fano-Algorithmus setzt am korrigierten Symbol wieder ein.
- Wenn eine solche Rückstellung auf den vergangenen internen Zustand durchgeführt worden ist, muß das letztgenannte Nachbildungsausgangssymbol bereits in bezug auf die Fano- Wahrscheinlichkeit geprüft worden sein. In diesem Fall wird der lokale interne Zustand weiter zurückgestellt auf einen früheren internen Zustand. Die Fano-Wahrscheinlichkeit wird noch einmal berechnet, um noch ein weiteres Nachbildungsausgangssymbol als neues korrigiertes Symbol festzulegen. Der Fano-Algorithmus geht also empirisch vor.
- Um den lokalen internen Zustand nacheinander als Antwort auf angenommene Informationssymbole der lokalen Sequenz bei stabilem Betrieb des Decodierers zu erneuern und den lokalen internen Zustand entweder auf den vergangenen Zustand oder auf einen weiter zurückliegenden, vergangenen Zustand zurückzustellen, übergibt der sequentielle Decodiercontroller 45 das Vorlauf- und das Rücklaufsignal an den oben erwähnten Bus. In bestimmten Fällen ist es auch möglich, den sequentiellen Decodiercontroller 45 durch einen sequentiellen Decodieralgorithmus, der als Stapelspeicheralgorithmus bekannt ist, in Betrieb zu setzten. Ein solcher Codierer und ein herkömmlicher Decodierer werden ohne weiteres so implementiert, wie es durch George David Forney jr. in dem US-Patent US-A-3 665 396 offenbart wird.
- Wie oben beschrieben, ist der Pufferüberlauf bei mindestens einem der Puffer, also dem Eingabe-, dem internen bzw. dem Ausgabepuffer 41, 43 bzw. 49 unvermeidlich. Da die Puffer 41, 43 und 49 normalerweise verschiedene Teile eines Speichers mit wahlfreiem Zugriff (meist abgekürzt mit RAM) sind, wird der Pufferüberlauf durch einen oder mehrere Zeiger, wie bekannt, erfaßt.
- Es wurde auch bereits weiter oben im Zusammenhang mit den herkömmlichen Decodierern dargelegt, daß die Wiederherstellung nach Pufferüberlauf auf zweierlei Weise möglich ist: entweder mit der Guess-and-Restart-Technik durch Initialisieren des lokalen internen Zustands, indem anhand der empfangenen Codesymbole vom sequentiellen Decodiercontroller 45 schwere Entscheidungen getroffen werden, oder mit der Blockdatentechnik durch Initialisierung des lokalen internen Zustandes mit den eindeutigen Wörtern in der Decodierereingangssequenz und folglich auch in der Controllereingangssequenz. Diese herkömmlichen Techniken sind allerdings nicht ganz zufriedenstellend.
- Anhand von Fig. 4 wird nachstehend ein fehlerkorrigierender sequentieller Decodierer gemäß einem spezifischen, erfindungsgemäßen Ausführungsbeispiel beschrieben. Der Decodierer weist gleiche Teile auf, die mit den gleichen Referenzziffern bezeichnet sind und mit gleichnamigen Signalen arbeiten. Eine Ausnahme bilden einige neue Punkte, die nachstehend beschrieben werden und die sehr wichtig sind für die schnelle Wiederherstellung nach Pufferüberlauf mit der Guess- and-Restart-Technik und nicht mit der Blockdatentechnik.
- Wir nehmen an, daß der dargestellte Decodierer als Gegenstück eines anhand von Fig. 1 dargestellten Codierers dient. Das heißt, der Decodierer ist geeignet für die Verwendung in Verbindung mit dem Codierer, der eine aus drei Bit bestehende Originalinformationssymbolsequenz in eine aus vier Bit bestehende Originalcodesymbolsequenz mit einer aus einem Bit bestehenden Originalredundanzsymbolsequenz codiert, die nach einer im Zusammenhang mit Fig. 1 exemplifizierten vorbestimmten Regel erzeugt und der Informationssymbolsequenz hinzugefügt wird. Jedes angenommene Informationssymbol hat ein erstes bis drittes Bit, das dem ersten bis dritten Bit eines Originalinformationssymbols entspricht.
- Auf bekannte Art und Weise wird die Decodiererzustandshalteschaltung 46 durch das erste bis dritte Parallelschieberegister 51, 52 und 53 implementiert. Jedes der Schieberegister 51 bis 53 ist ein bidirektionales Schieberegister und hat eine erste und zweite Stufe, entsprechend den im Zusammenhang Fig. 1 beschriebenen Schieberegistern 26 bis 28. Es sei gesagt, daß die ersten Stufen der betreffenden Schieberegister 51 bis 53 sich am vorderen Ende der Zustandshalteschaltung 46 und die zweiten Stufen sich am hinteren Ende der Zustandshalteschaltung 46 befinden.
- Wenn das Vorlaufsignal erzeugt wird, werden das erste bis dritte Bit des jeweiligen angenommenen Informationssymbols vom sequentiellen Decodiercontroller 45 an das vordere Ende der Decodiererzustandshalteschaltung 46 im ganzen als neues Informationssymbol übergeben. Solche angenommenen Informationssymbole werden in Vorwärtsrichtung durch die Zustandshalteschaltung 46 geschoben, um vom hinteren Ende als Ausgangssymbole der oben erwähnten Schaltung an den Ausgabepuffer 49 übergeben zu werden. Nachfolgende neue Informationssymbole werden als Ausgangssequenz der oben erwähnten Schaltung an den Wahrscheinlichkeitsrechner 48 übergeben.
- Wenn ein Rücklaufsignal erzeugt wird, wird jedes gepufferte Symbol als angenommenes Informationssymbol vom Ausgabepuffer 49 an das hintere Ende der Decodiererzustandshalteschaltung 46 zurückgeführt und in umgekehrter Richtung oder rückwärts durch die Zustandshalteschaltung 46 verschoben. Bei Erreichung des vorderen Endes, also der ersten Stufen der betreffenden Schieberegister 51 bis 53 wird jedes angenommene Informationssymbol zu einem "neuen" Informationssymbol.
- Der Decodiererfunktionsgenerator 47 weist eine erste bis dritte Exklusiv-ODER-Schaltung 56, 57 und 58 mit zwei Eingängen und eine Exklusiv-ODER-Schaltung 59 mit einem Eingang auf. Wie der im Zusammenhang mit Fig. 1 beschriebene Codiererfunktionsgenerator 29 werden die Schaltungen 56 bis 59 verwendet, um die aus einem Bit bestehenden, angenommenen Redundanzsymbole der Generatorausgangssequenz als Antwort auf den internen Nachbildungszustand zu erzeugen, der entweder durch ein Vorlaufsignal in Vorwärtsrichtung erneuert oder durch ein Rücklaufsignal in umgekehrter Richtung erneuert wird.
- Bei der Beschreibung der neuen Punkte werden diejenigen angenommenen Informationssymbole Nachbildungsinformationssymbole genannt, die zum jeweiligen Zeitpunkt in der Codierernachbildung gehalten werden und ein neues Informationssymbol enthalten. Ferner wird eine Sequenz von Schaltungsausgangssymbolen als Nachbildungsinformationssequenz bezeichnet. Da der Eingabepuffer und der interne Puffer 41 und 43 für die empfangenen Codesymbole da sind, kann man jetzt sagen, daß der Decodierer eine Pufferanordnung aufweist, die für die Decodierereingangssequenz und die Nachbildungsinformationssequenz da ist und, wie oben beschrieben, dem Pufferüberlauf ausgesetzt ist.
- Die Decodierereingangssequenz besteht aus einer Teilsequenz empfangener Redundanzsymbole entsprechend den jeweiligen Originalredundanzsymbolen und einer verbleibenden Sequenz empfangener Informationssymbole entsprechend den jeweiligen Originalinformationssymbolen. In dem dargestellten Beispiel hat jedes empfangene Codesymbol ein erstes bis viertes Bit, von denen das erste bis dritte Bit zu einem empfangenen Informationssymbol gehören und dem ersten bis dritten Bit des jeweiligen angenommenen Informationssymbols entsprechen. Das vierte Bit gehört zu einem empfangenen Redundanzsymbol und entspricht einem Bit des angenommenen Redundanzsymbols. Die Teil- und die Restsequenz werden bitparallel verarbeitet. In bestimmten Fällen kann die Schaltungs- und die Generatorausgangssequenz auch als eine neue Informationssymbolsequenz bzw. als eine angenommene Redundanzsymbolsequenz bezeichnet werden.
- In Fig. 4 erzeugt der sequentielle Decodiercontroller 45 ein Initialisierungssignal, wenn der Pufferüberlauf bearbeitet werden soll. Ein Positionszähler 61 ist an den sequentiellen Decodiercontroller 45 gekoppelt, um die Positionen für die betreffenden angenommenen Informationssymbole in der lokalen Sequenz zu zählen und ein Zählsignal entsprechend der Positionszählung zu erzeugen. Der sequentielle Decodiercontroller 45 versorgt den Positionszähler 61 mit dem Vorlauf- und dem Rücklaufsignal und außerdem mit dem Initialisierungssignal als Löschsignal.
- In dem dargestellten Beispiel weist der Positionszähler 61 folgendes auf: einen 12 Bit großen Zähler 62 mit einem Löscheingang CLR, auf den das Löschsignal gelegt wird, einen aufsteigend zählenden Eingang INC und einen absteigend zählenden Eingang DEC. Das Löschsignal löscht oder initialisiert den Zähler 62 und somit den Positionszähler 61 auf dezimal Null.
- Das Vorlaufsignal wird auf einen ersten Eingang der aufsteigend zählenden UND-Schaltung 63 gelegt. Das Rücklaufsignal wird auf einen ersten Eingang der absteigend zählenden UND- Schaltung 64 gelegt. Es sei hier erwähnt, daß der 12 Bit große Zähler 62 zwischen Null und (2¹²-1) auf- und abzählt. Ein Inverter 65 dient zum Invertieren des höchstwertigen Bits eines binären 12-Bit-Ausgangssignals des Zählers 62 in ein invertiertes Bit. Ein zweiter Eingang der aufsteigend zählenden und der absteigend zählenden UND-Schaltung 63 und 64 wird mit dem invertierten Bit versorgt. Die Vorlauf- und Rücklaufsignale können dadurch die Positionen aufwärts und abwärts zählen, es sei denn, daß das höchstwertige Bit bei Positionszählerstand (2¹² - 1) nicht binär "1" wird. Die UND-Schaltungen 63 und 64 und der Inverter 65 sollen also verhindern, daß die Positionszählung auf Null zurückgeht, selbst wenn das Vorlauf-Signal für die angenommenen Informationssymbole erzeugt wird, die bei stabilem Betrieb des Decodierers ohne Pufferüberlauf größer sind als (2¹² - 1).
- Beim Wahrscheinlichkeitsrechner 48 wird ein Teilrechner mit der Teilsequenz und der angenommenen Redundanzsymbolssequenz versorgt und berechnet die Redundanzsymbolwahrscheinlichkeiten für die angenommenen Redundanzsymbole in bezug auf die betreffenden empfangenen Redundanzsymbole. Bei dem dargestellten Beispiel weist der Teilrechner eine Exklusiv-ODER- Schaltung 71 auf, die ansprechfähig ist auf die angenommene Redundanzsymbolsequenz und die Teilsequenz zur Berechnung des ersten bis dritten höchstwertigen Bits einer Redundanzsymbolwahrscheinlichkeit. Beim Teilrechner wird ein Rechnereingang 72 mit einem Rechnereingangssignal Eins versorgt, um ein viertes oder das niedrigstwertige Bit einer Redundanzsymbolwahrscheinlichkeit hervorzubringen. Jede Redundanzsymbolwahrscheinlichkeit ist also durch ein Zweierkomplement gegeben und ist eine ganze Zahl, die gleich dezimal + 1 bzw. dezimal - 7 ist, wenn die angenommene Redundanzsymbole identisch bzw. nicht identisch sind mit den betreffenden empfangenen Redundanzsymbolen.
- Ein Restrechner des Wahrscheinlichkeitsrechners 48 wird mit der Restsequenz und der neuen Informationssymbolsequenz versorgt und berechnet Informationssymbolwahrscheinlichkeiten für die angenommenen Informationssymbole in bezug auf die betreffenden empfangenen Informationssymbole. Der Restrechner erzeugt dadurch ein Teilsignal für Informationssymbolwahrscheinlichkeiten als Teil des Wahrscheinlichkeitssignals.
- Insbesondere weist der Restrechner einen Festwertspeicher (ROM) 75 auf, der mehrere Adressen hat, in die die betreffenden Informationssymbolwahrscheinlichkeiten vorläufig eingegeben werden. Die Restsequenz und die neue Informationssymbolsequenz werden gemeinsam als bitparalleles Adreßsignal für den Zugriff auf verschiedene Adressen des Festwertspeichers 75 über verschiedene Kombinationen von binären Bits, 1 und 0, der empfangenen und der neuen Informationssymbole verwendet.
- Im dargestellten Beispiel besteht jede Informationssymbolwahrscheinlichkeit aus 6 Bits und ist durch ein Zweierkomplement gegeben. Die ersten Bits jedes neuen Informationssymbols und jedes empfangenen Informationssymbols werden über eine erste Exklusiv-ODER-Schaltung 76 an den Festwertspeicher 75 übergeben. Die zweiten Bits werden über eine zweite Exklusiv-ODER-Schaltung 77 geführt. Die dritten Bits werden über eine dritte Exklusiv-ODER-Schaltung 78 geführt. Für die betreffenden Adressen des Festwertspeichers 75 lauten die Informationssymbolwahrscheinlichkeiten folgendermaßen:
- (-7) x z + 1 x (3 - z),
- wobei z die Anzahl der Bits mit dem Wert binär Eins in dem aus drei Bits bestehenden Adreßsignal sind.
- Der Decodierer weist einen Modifizierer 81 auf, der vom Positionszähler 61 mit einem Zählsignal und vom Wahrscheinlichkeitsrechner 48 mit dem Wahrscheinlichkeitssignal für die Redundanz- und die Informationssymbolwahrscheinlichkeiten versorgt wird. Der Modifizierer 81 dient zum Modifizieren des Wahrscheinlichkeitssignals zu einem modifizierten Signal zur Übergabe an den sequentiellen Decodiercontroller 45. Bei dem modifizierten Signal bleibt das Teilsignal unberührt. Die Informationssymbolwahrscheinlichkeit werden also so, wie sie sind, an den sequentiellen Decodiercontroller 45 übergeben.
- Andererseits bekommen die Redundanzsymbolwahrscheinlichkeiten nur dann einen vorbestimmten Wert, wenn die Positionszählung noch keinen vorbestimmten Stand nach Initialisierung des Positionszähler 61 oder der Positionszählung erreicht hat.
- In dem dargestellten Beispiel, in dem die Codierernachbildung zwei angenommene Informationssymbole gleichzeitig hält, ist der vorbestimmte Zählwert vorzugsweise gleich dezimal 2, also gleich einer vorbestimmten Anzahl von Nachbildungsinformationssymbolen, die zu einem bestimmten Zeitpunkt in der Codierernachbildung gehalten werden. Der Modifizierer 81 weist einen Komparatoreingang 82 auf, der mit einem Referenzsignal für den vorbestimmten Zählwert, den Referenzzählwert, versorgt wird. Als Antwort auf das Zählsignal und das Referenzsignal vergleicht der Komparator 83 die Positionszählung mit dem Referenzzählwert, um ein Vergleichsergebnissignal zu erzeugen, das den Wert logisch 0 bzw. logisch 1 hat, wenn die Positionszählung kleiner oder gleich dem Referenzzählwert bzw. wenn die Positionszählung größer als der Referenzzählwert ist.
- Die erste bis vierte UND-Schaltung 86, 87, 88 und 89 werden gemeinsam mit dem Vergleichsergebnissignal und dem ersten bis vierten Bit jeder Redundanzsymbolwahrscheinlichkeit versorgt. Jetzt wird deutlich, daß die Redundanzsymbolwahrscheinlichkeiten nur dann Null als vorbestimmten Wert bekommen, wenn die Positionszählung nicht größer ist als der Referenzzählwert. Auf diese Weise ist es möglich, Null oder einen negativen Wert als vorbestimmten Wert für die Redundanzsymbolwahrscheinlichkeiten zu wählen, die im allgemeinen einen Wert zwischen einer positiven und einer negativen ganzen Zahl annehmen können, wenn ein empfangenes Redundanzsymbol und somit ein angenommenes Redundanzsymbol mehrere Bits hat.
- Beim sequentiellen Decodiercontroller 45 wird das modifizierte Signal so verwendet, wie das Wahrscheinlichkeitssignal beim herkömmlichen Decodierer verwendet wird. Insbesondere wird das modifizierte Signal zum Steuern der Abarbeitung des sequentiellen Decodieralgorithmus verwendet. Nur wenn die Redundanzsymbolwahrscheinlichkeiten den vorbestimmten Wert bekommen haben, wird das modifizierte Signal zum Teilsignal. In diesem Fall arbeitet der sequentielle Decodiercontroller 45 den sequentiellen Decodieralgorithmus als Antwort auf das Teilsignal allein ab. In bestimmten Fällen kann es erforderlich werden, auch die Codierernachbildung wie beim herkömmlichen Decodierer nach Auftreten des Pufferüberlaufs zu initialisieren. Wie beim herkömmlichen Decodierer wird die Codierernachbildung mit dem sequentiellen Decodiercontroller 45 initialisiert, der verwendet wird, um die Codierernachbildung mit schweren Entscheidungen für die empfangenen Codesymbole der Decodierereingangssequenz statt für die angenommenen Informationssymbole der lokalen Sequenz zu versorgen.
- Anhand von Fig. 5 wird ein fehlerkorrigierender sequentieller Decodierer gemäß einem allgemeineren, erfindungsgemäßen Ausführungsbeispiel weiter beschrieben. Der Decodierer weist gleiche Teile auf, die mit gleichen Bezugszeichen versehen sind und die mit gleichnamigen Signalen arbeiten. Der Decodierer dient als Gegenstück zum Codierer, der in Fig. 2 dargestellt ist. Bezüglich der Anzahl der Bits eines Symbols sind verschiedene Symbolsequenzen identisch mit denen, die im Zusammenhang mit Fig. 3 beschrieben werden. Neben der unterschiedlichen Anzahl von Bits werden andere Symbolsequenzen und andere Signale so verwendet, wie sie im Zusammenhang mit Fig. 4 beschrieben werden. Für die Nachbildungsinformationssymbole, die in der Decodiererzustandshalteschaltung 46 der Codierernachbildung gehalten werden, um den internen Zustand der Nachbildung zu jedem Zeitpunkt zu definieren, ist die vorbestimmte Anzahl gleich K, wie im Zusammenhang mit Fig. 2 beschrieben.
- Wie anhand von Fig. 4 beschrieben wird, weist der Wahrscheinlichkeitsrechner 48 einen Teilrechner und einen Restrechner auf. Der Teilrechner weist einen Festwertspeicher in der Art des Speichers 75 auf, der im Zusammenhang mit Fig. 4 beschrieben wird, und dient zur Berechnung der Redundanzsymbolwahrscheinlichkeiten der oben beschriebenen Art. Der Restrechner dient zum Berechnen der Informationssymbolwahrscheinlichkeiten, um das Teilsignal für die Informationssymbolwahrscheinlichkeiten zu erzeugen. Der Positionszähler 61 und der Modifizierer 81 wird problemlos implementiert, wenn man sich an die Beschreibung der in Fig. 4 dargestellten Elemente hält.
- Bei Fig. 4 und Fig. 5 beachte man, daß der interne Nachbildungszustand fälschlicherweise auf einen falsch initialisierten internen Zustand initialisiert worden sein kann, und zwar durch Fehlerinformationssymbole nach dem Start des sequentiellen Decodieralgorithmus oder nach Behandlung des Pufferüberlaufs. Außerdem kann der interne Nachbildungszustand asynchron werden gegenüber dem internen Zustand des Codierers, um bei Abarbeitung des sequentiellen Decodieralgorithmus sich in einen falschen internen Zustand zu verwandeln. In Übereinstimmung mit dem internen Nachbildungszustand erzeugt, werden die angenommenen Redundanz Symbole zu falschen Redundanzsymbolen, wenn der interne Nachbildungszustand falsch ist.
- Wenn die Guess-and-Restart-Technik, wie sie bekannt ist, strikt durchgeführt wird, können die falschen Redundanzsymbole dazu führen, daß der sequentielle Decodiercontroller 45 ein richtig angenommenes Informationssymbol als falsches Informationssymbol beurteilt, weil die falschen Redundanzsymbole möglicherweise die Wahrscheinlichkeit, die hoch sein muß wenn die angenommenen Redundanzsymbole richtig waren, unangemessen reduzieren. Andererseits kann der sequentielle Decodiercontroller 45 ein falsches Informationssymbol als richtig angenommenes Informationssymbol beurteilen, wenn das falsche Informationssymbol aufgrund der falschen Redundanzsymbole eine hohe Wahrscheinlichkeit hat. In beiden Fällen ist es erforderlich, den internen Nachbildungszustand entweder auf den vorigen internen Zustand oder auf einen weiter zurückliegenden internen Zustand wiederholt zurückzustellen und die Pufferüberlaufbehandlung häufig durchzuführen.
- Erfindungsgemäß bekommen die Redundanzsymbolwahrscheinlichkeiten vom Modifizierer 81 einen vorbestimmten Wert, bis die Positionszählung des Positionszählers 61 den vorbestimmten Wert erreicht, also bis ein vorbestimmtes Zeitintervall nach Initialisierung des Positionszählers 61 vergangen ist. Die Redundanzsymbolwahrscheinlichkeiten des vorbestimmten Wertes sind erstaunlich effektiv darin, den sequentiellen Decodiercontroller 46 daran zu hindern, entweder ein richtig angenommenes Informationssymbol als falsches Informationssymbol oder ein falsches Informationssymbol als richtig angenommenes Informationssymbol zu beurteilen, wenn der interne Nachbildungszustand falsch ist. Sobald das vorbestimmte Zeitintervall vergangen ist, wird der initialisierte interne Zustand aus der Codierernachbildung gelöscht, selbst wenn der initialisierte interne Zustand vielleicht falsch ist. Dadurch verringert sich die Wahrscheinlichkeit, daß der Pufferüberlauf immer wieder stattfindet. Infolgedessen wird der Pufferüberlauf unerwartet schnell behoben, und zwar mit deutlichen Unterschied zur Guess-and-Restart-Technik, die ohne die soweit beschriebenen Verbesserungen am fehlerkorrigierenden sequentiellen Decodierer angewendet worden ist.
Claims (6)
1. Fehlerkorrigierender Decodierer zur Verwendung als
Gegenstück zu einem fehlerkorrigierenden Codierer zum Codieren
einer Sequenz von Originalinformationssymbolen in eine Sequenz
von Originalcodesymbolen durch Erzeugung von
Originalredundanzsymbolen nach einer vorbestimmten Regel und durch
Hinzufügung der Redundanzsymbole zu den betreffenden
Informationssymbolen, um die betreffenden Codesymbole zu bilden,
wobei der Decodierer folgendes aufweist: einen sequentiellen
Decodiercontroller (45) zur Abarbeitung eines sequentiellen
Decodieralgorithmus anhand einer Eingangssequenz empfangener
Codesymbole entsprechend den betreffenden
Originalcodesymbolen, um eine lokale Sequenz angenommener Informationssymbole,
die für die betreffenden Originalinformationssymbole
angenommen werden, zu erzeugen, eine Codierernachbildung (46, 47) zur
Codierung der lokalen Sequenz in eine
Nachbildungsausgabesequenz angenommener Codesymbole durch Erzeugung angenommener
Redundanzsymbole nach der vorbestimmten Regel und durch
Hinzufügung der angenommenen Redundanzsymbole zu den betreffenden
angenommenen Informationssymbolen, um die betreffenden
angenommenen Codesymbole zu bilden, und einen
Wahrscheinlichkeitsrechner (48), der ansprechfähig ist auf die Eingabe- und die
Nachbildungsausgabeseqenzen zur Berechnung der
Wahrscheinlichkeiten für die angenommenen Codesymbole in bezug auf die
betreffenden empfangenen Codesymbole, wobei der
Wahrscheinlichkeitsrechner ein Wahrscheinlichkeitssignal für die
Wahrscheinlichkeiten erzeugt, ferner mit:
einem an den sequentiellen Decodiercontroller (45)
gekoppelten Positionszähler (61) zum Zählen der Positionen für
die betreffenden angenommenen Informationssymbole in der
lokalen Sequenz, um ein Zählsignal für die Positionszählung zu
erzeugen;
einer Modifiziereinrichtung (81), die ansprechfähig ist
auf das Zählsignal zum Modifizieren des
Wahrscheinlichkeitssignals zu einem modifizierten Signal durch Vergabe eines
vorbestimmten Wertes für die Wahrscheinlichkeiten, der für die
betreffenden angenommenen Redundanzsymbole berechnet wird, bis
die Positionszählung einen vorbestimmten Zählwert nach
Initialisierung des Positionszählers erreicht; und
einer Versorgungseinrichtung zum Versorgen des
sequentiellen Decodiercontrollers (45) mit dem modifizierten Signal,
damit das modifizierte Signal die Abarbeitung des
sequentiellen Decodieralgorithmus steuert.
2. Decodierer nach Anspruch 1, wobei die
Codierernachbildung (46, 47) dazu dient, eine vorbestimmte Anzahl von
angenommenen Informationssymbolen der lokalen Sequenz zu jedem
Zeitpunkt als Nachbildungsinformationssymbole zu halten und
die Nachbildungsinformationssymbole nacheinander als
Nachbildungsinformationssequenz zu erzeugen, wobei der Decodierer
ferner eine Puffereinrichtung (41, 42, 43) zum Puffern der
Eingabesequenz und der Nachbildungsinformationssequenz und als
Pufferüberlauf aufweist, wobei der sequentielle
Decodiercontroller (45) zur Erzeugung eines Initialisierungssignals zur
Initialisierung des Positionszählers bei der Behandlung des
Pufferüberlaufs dient.
3. Decodierer nach Anspruch 2, bei dem der vorbestimmte
Zählwert gleich der vorbestimmten Anzahl ist.
4. Decodierer nach Anspruch 3, wobei die für die
betreffenden angenommenen Redundanzsymbole berechneten
Wahrscheinlichkeiten zwischen einer positiven und einer negativen
ganzen Zahl liegen, wobei der vorbestimmte Wert nicht größer
als Null ist.
5. Decodierer nach Anspruch 1, wobei die
Codierernachbildung (46, 47) die angenommenen Redundanzsymbole als
angenommene Redundanzsymbolsequenz in der
Nachbildungsausgabesequenz erzeugt, wobei die Eingabesequenz eine Teilsequenz
empfangener Redundanzsymbole entsprechend den betreffenden
Originalredundanzsymbolen aufweist, wobei:
der Wahrscheinlichkeitsrechner (48) einen Teilrechner
aufweist, der ansprechfähig ist auf die Teilsequenz und auf
die angenommene Redundanzsymbolsequenz zur Berechnung der
Redundanzsymbolwahrscheinlichkeiten für die angenommenen
Redundanzsymbole der angenommenen Redundanzsymbolsequenz in bezug
auf die betreffenden empfangenen Redundanzsymbole;
wobei die Modifiziereinrichtung (81) dazu dient, den
vorbestimmten Wert für die Redundanzsymbolwahrscheinlichkeiten
zu vergeben, bis die Positionszählung den vorbestimmten
Zählwert nach Initialisierung des Positionszählers erreicht.
6. Decodierer nach Anspruch 5, wobei die
Codierernachbildung (46, 47) dazu dient, angenommene
Informationssymbole der lokalen Sequenz als neue Informationssymbole einzeln
zu erzeugen und nacheinander neue Informationssymbole als neue
Informationssymbolsequenz in der Nachbildungsausgabesequenz zu
erzeugen, wobei die Eingabesequenz eine verbleibende Sequenz
empfangener Informationssymbole entsprechend den betreffenden
Originalinformationssymbolen aufweist, wobei:
der Wahrscheinlichkeitsrechner (48) einen Restrechner
aufweist, der ansprechbar ist auf die Restsequenz und die neue
Informationssymbolsequenz zur Berechnung von
Informationssymbolwahrscheinlichkeiten der neuen Informationssymbole in bezug
auf die betreffenden empfangenen Informationssymbole, wobei
der Restrechner dadurch ein Teilsignal entsprechend der
Informationssymbolwahrscheinlichkeiten als Teil des
Wahrscheinlichkeitssignals erzeugt;
wobei der sequentielle Decodiercontroller (45) den
sequentiellen Decodieralgorithmus als Antwort auf das Teilsignal
allein abarbeitet, während der vorbestimmte Wert an die
Redundanzsymbolwahrscheinlichkeiten vergeben wird.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP61310331A JPS63161731A (ja) | 1986-12-25 | 1986-12-25 | 逐次誤り訂正復号化装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
DE3784684D1 DE3784684D1 (de) | 1993-04-15 |
DE3784684T2 true DE3784684T2 (de) | 1993-06-17 |
Family
ID=18003945
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE8787119230T Expired - Fee Related DE3784684T2 (de) | 1986-12-25 | 1987-12-24 | Fehlerkorrekturdecoder fuer schnelle behandlung von pufferueberlaeufen. |
Country Status (6)
Country | Link |
---|---|
US (1) | US4878221A (de) |
EP (1) | EP0275546B1 (de) |
JP (1) | JPS63161731A (de) |
AU (1) | AU594221B2 (de) |
CA (1) | CA1288518C (de) |
DE (1) | DE3784684T2 (de) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4998253A (en) * | 1988-03-11 | 1991-03-05 | Kokusai Denshin Denwa Co., Ltd. | Syndrome sequential decoder |
JPH0624348B2 (ja) * | 1988-05-24 | 1994-03-30 | 日本電気株式会社 | 誤り訂正装置における同期検出方法およびその装置並びに該装置を用いる同期方法 |
FR2660503B1 (fr) * | 1990-03-30 | 1992-06-05 | Alcatel Transmission | Procede et dispositif de decodage sequentiel d'un train numerique code par un code correcteur d'erreurs de type convolutif. |
JP2671581B2 (ja) * | 1990-08-24 | 1997-10-29 | 日本電気株式会社 | 逐次復号装置 |
JP3737388B2 (ja) * | 2000-06-21 | 2006-01-18 | 株式会社 機械学習研究所 | 最尤符号探索装置及び方法 |
US6658505B2 (en) * | 2001-06-05 | 2003-12-02 | Hewlett-Packard Development Company, L.P. | System and method for checking bits in a buffer with multiple entries |
JP4227441B2 (ja) * | 2003-03-10 | 2009-02-18 | キヤノン株式会社 | データ圧縮方法およびプロセッサ |
US9665582B2 (en) * | 2010-08-04 | 2017-05-30 | Quantum Corporation | Software, systems, and methods for enhanced replication within virtual machine environments |
CA2809516C (en) | 2013-03-13 | 2016-11-08 | Khalid Nawaf Alharbi | Preventing stack buffer overflow attacks |
RU2571605C2 (ru) * | 2014-02-25 | 2015-12-20 | Открытое акционерное общество "Камчатский гидрофизический институт" (ОАО "КГФИ") | Способ помехоустойчивого кодирования и декодирования цифровых данных |
DE102015111388A1 (de) | 2015-07-14 | 2017-01-19 | Airbus Operations Gmbh | Verfahren zum verbinden von metallischen beschlägen mit rohren aus faserverbundmaterial und leitungen, nach diesem verfahren erhältlich |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3457562A (en) * | 1964-06-22 | 1969-07-22 | Massachusetts Inst Technology | Error correcting sequential decoder |
US3665396A (en) * | 1968-10-11 | 1972-05-23 | Codex Corp | Sequential decoding |
US4293951A (en) * | 1979-03-16 | 1981-10-06 | Communications Satellite Corporation | Method and apparatus for encoding/decoding a convolutional code to a periodic convolutional code block |
US4291406A (en) * | 1979-08-06 | 1981-09-22 | International Business Machines Corporation | Error correction on burst channels by sequential decoding |
US4404674A (en) * | 1981-07-10 | 1983-09-13 | Communications Satellite Corporation | Method and apparatus for weighted majority decoding of FEC codes using soft detection |
JPS5963830A (ja) * | 1982-10-04 | 1984-04-11 | Nippon Telegr & Teleph Corp <Ntt> | 光信号増幅器 |
JPS5963832A (ja) * | 1982-10-05 | 1984-04-11 | Kokusai Denshin Denwa Co Ltd <Kdd> | デ−タ信号の多重化方式 |
US4539684A (en) * | 1983-01-07 | 1985-09-03 | Motorola, Inc. | Automatic frame synchronization recovery utilizing a sequential decoder |
US4583078A (en) * | 1984-11-13 | 1986-04-15 | Communications Satellite Corporation | Serial Viterbi decoder |
DE3750456T2 (de) * | 1986-09-22 | 1995-04-20 | Nippon Electric Co | Fehlerkorrigierender, bitserieller Dekodierer. |
-
1986
- 1986-12-25 JP JP61310331A patent/JPS63161731A/ja active Granted
-
1987
- 1987-12-23 CA CA000555286A patent/CA1288518C/en not_active Expired - Fee Related
- 1987-12-24 AU AU83053/87A patent/AU594221B2/en not_active Ceased
- 1987-12-24 EP EP87119230A patent/EP0275546B1/de not_active Expired - Lifetime
- 1987-12-24 DE DE8787119230T patent/DE3784684T2/de not_active Expired - Fee Related
- 1987-12-28 US US07/138,273 patent/US4878221A/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JPH0445017B2 (de) | 1992-07-23 |
EP0275546B1 (de) | 1993-03-10 |
CA1288518C (en) | 1991-09-03 |
EP0275546A2 (de) | 1988-07-27 |
US4878221A (en) | 1989-10-31 |
DE3784684D1 (de) | 1993-04-15 |
AU594221B2 (en) | 1990-03-01 |
EP0275546A3 (en) | 1990-09-19 |
AU8305387A (en) | 1988-06-30 |
JPS63161731A (ja) | 1988-07-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE2060643C3 (de) | Schaltungsanordnung zur Korrektur von Einzelfehlern | |
DE69022705T2 (de) | System zur Kodierung/Dekodierung von digitalen Signalen zur Übertragung und/oder Speicherung. | |
DE2139731C2 (de) | Anordnung zur Code-Umsetzung | |
DE69905987T2 (de) | Verfahren und Gerät zur Kodierung und Signalübertragung unter Verwendung eines Sub-Codes von einem Produktcodes | |
DE69834542T2 (de) | Hardwareoptimierter reed-solomon-decoder zur decodierung grosser datenblöcke | |
DE69019777T2 (de) | Datenstrom-Rahmensynchronisation. | |
DE3882223T2 (de) | Ausgebreitete Fehlerkorrekturvorrichtung mit Einzel-Paket-Fehlerkorrektur und Doppel-Paket-Fehlerdetektionscoden. | |
DE3784684T2 (de) | Fehlerkorrekturdecoder fuer schnelle behandlung von pufferueberlaeufen. | |
DE2262070A1 (de) | Mit schieberegistern arbeitendes fehlerkorrektursystem | |
DE69327683T2 (de) | Erweitertes fehlergeschütztes Kommunikationssystem | |
EP0219917B1 (de) | Vermittlungsanlage mit Fehlerkorrektur | |
DE3006958A1 (de) | Digitalsignal-uebertragungssystem | |
DE4105860C2 (de) | Schaltungsanordnung zum Erkennen und Korrigieren von Fehlern in Datenworten | |
EP0545498A2 (de) | Verfahren und Schaltungsanordnung zum Decodieren von RS-codierten Datensignalen | |
DE69317766T2 (de) | Fehlerkorrekturgerät für digitale Daten zur Korrektur von Einfachfehlern (sec), von Doppelfehlern (ded) und Vielfacheinzelbytefehlern (sbd) und zur Korrektur von Einzelbytefehlern ungerader Anzahl (odd sbc) | |
DE69217931T2 (de) | Fehlererkennungs- und Fehlerkorrektureinrichtung | |
DE2053836C3 (de) | Anordnung zur Korrektur von Fehlerbündeln in binär codierten Datengruppen | |
DE3750456T2 (de) | Fehlerkorrigierender, bitserieller Dekodierer. | |
DE3424078C2 (de) | ||
DE3303269A1 (de) | Verfahren und vorrichtung zur division von bcd-zahlen | |
DE1290565B (de) | Verfahren zur empfaengerseitigen Korrektur dualkodierter Nachrichten | |
DE68911032T2 (de) | Bit und Symbol-Taktwiedergewinnung für sequentielle Dekoder. | |
DE2758952B1 (de) | Schaltungsanordnung zum Codieren oder Decodieren von Binaerinformationen | |
DE2300505A1 (de) | Vorrichtung zur schwellwertdecodierung | |
DE3104762A1 (de) | System zur binaeren datenuebertragung |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8364 | No opposition during term of opposition | ||
8339 | Ceased/non-payment of the annual fee |