DE2447255A1 - Verfahren und schaltungsanordnungen zur fehlerpruefung - Google Patents
Verfahren und schaltungsanordnungen zur fehlerpruefungInfo
- Publication number
- DE2447255A1 DE2447255A1 DE19742447255 DE2447255A DE2447255A1 DE 2447255 A1 DE2447255 A1 DE 2447255A1 DE 19742447255 DE19742447255 DE 19742447255 DE 2447255 A DE2447255 A DE 2447255A DE 2447255 A1 DE2447255 A1 DE 2447255A1
- Authority
- DE
- Germany
- Prior art keywords
- zero
- signal
- bit
- polynomial
- bits
- 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.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0056—Systems characterized by the type of code used
- H04L1/0057—Block 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
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M7/00—Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
- H03M7/30—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
- H03M7/40—Conversion to or from variable length codes, e.g. Shannon-Fano code, Huffman code, Morse code
- H03M7/4025—Conversion to or from variable length codes, e.g. Shannon-Fano code, Huffman code, Morse code constant length to or from Morse code conversion
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Error Detection And Correction (AREA)
- Detection And Prevention Of Errors In Transmission (AREA)
- Detection And Correction Of Errors (AREA)
Description
Böblingen, 24. Mai 1974 ker/fr-fe
Anmelderin: International Business Machines
- Corporation, Arcnonk, N.Y. 10504
Amtl. Aktenzeichen: Neuanmeldung
Aktenzeichen der Anmelderin: RA 972 008
Die Erfindung betrifft Verfahren und Schaltungsanordnungen zur Fehlerprüfung in digitalen Datenübertragungsanlagen entsprechend
dem Oberbegriff des Patentanspruchs 1.
Bei der übertragung digitaler Daten werden üblicherweise Datenblöcke
gebildet unter Anfügung von einem oder mehreren Zeichen zur Blockprüfung. Eine solche Blockprüfung ermöglicht auf der
Empfangsseite eine einfache Absicherung gegenüber mit Fehlern
übertragenen Einzelzeichen oder Zeichenfolgen. Insbesondere sind solche Nachrichtenabsicherungen interessant bei Kanälen mit
Störungen und Rauschen.
Es sind bereits zahlreiche Verfahren entwickelt worden zur Aufdeckung
von Fehlern in übertragenen Digitalnachrichten. Ein sehr wirksames Verfahren besteht in der Anwendung sogenannter
zyklischer Codes. Solche Codes und Schaltungsanordnungen zur Durchführung der Fehleraufdeckung mit solchen Codes sind in
einer Arbeit von W. W. Peterson und D. T. Brown ab Seite der Ausgabe vom Januar 1961 der Proceedings of the IRE beschrieben
worden. In dieser Arbeit diskutieren Peterson und Brown die Codierung von k binären Ziffern unter Anhängung
von n-k binären Ziffern zur Prüfung und die übertragung der k Informationsziffern und darauf der n-k Prüfziffern. Die ein-
•"809824/0672
zelnen binären Ziffern können dabei als Koeffizienten eines Polynoms der Variablen X verstanden werden.
Ein zyklischer Code kann als Terme einer Funktion P(X) des Grades n-k definiert werden. Ein Polynom eines Grades kleiner
als η ist dann und nur dann als Codepolynom für eine übertragung
brauchbar, wenn es durch die Funktion P(X) teilbar ist. Es werden dabei nur Codes verwendet, bei denen P(X) nicht durch
X teilbar ist.
Zur Codierung eines Nachrichtenpolynoms G(X) dividieren wir
Xn G(X) durch P(X) und addieren dann den sich bei dieser
n—k Division ergebenden Rest R(X) zu X G(X) zur Bildung des
Codepolynoms Xn~k G(X) = Q(X) P(X) + R(X), wobei Q(X) der
Quotient und R(X) der Rest ist. Bei Zugrundelegung' der Modulo-2-Arithmetik
ergeben sowohl Addition als auch Subtraktion dasselbe :
F(X) = Xn~k G(X) + R(X) = Q(X) P(X).
F(X) ist ein Vielfaches von P(X) und somit ein Codepolynom. R(X) ist kleineren Grades als n-k, und Xn"k G(X) weist Nullkoeffizienten
für alle Ausdrücke kleineren Grades als n-k auf. Somit sind die k Koeffizienten höchster Ordnung von F(X) dieselben
Wie die Koeffizienten von F(X) und die Koeffizienten von R(X); diese bilden die Prüfzeichen.
Beim Aufbau einer solche Codes verwendenden Anlage ist ein Codierer im Sender und ein Decoder im Empfänger vorzusehen.
Codierer und Decoder können in Form zweier rückgekoppelter Schieberegister ausgelegt werden und zwar unter Berücksichtigung
des zu verwendenden speziellen Polynoms und unter Vorkehrung von n-k Stufen. Vor Beginn jeder Übertragung werden
beide Schieberegister auf null gelöscht.
n—k Im Codierer werden die k zu verarbeitenden Ziffern mit X
multipliziert, dann durch den vorbestimmten Divisor geteilt und die n-k Prüfziffern an die eigentliche Nachricht ange-
RA 972 008 609624/0572
hängt. Im Decoder wird der gesamte Block aus empfangenen Nutz-
und Prüfziffern durch den Divisor geteilt. Wenn ein Rest null
im Decoder am Ende der Division übrigbleibt, dann bedeutet dies eine fehlerfreie übertragung.
Bei der übertragung von Informationen variierbarer Länge sind
Vorkehrungen zur Trennung aufeinanderfolgender Informationsblöcke vorzusehen. Verschiedene Formen von Blockteilern sind
anwendbar. Sie sollen im folgenden kurz als Markierer oder Markierfolgen bezeichnet werden. Bei solchen Verfahren treten
jedoch Probleme auf, wenn Fehler in der übertragung in oder in
der Nähe der Markierfolgen auftreten. Es mögen dazu die nachfolgenden Beispiele betrachtet werden, bei denen F eine bestimmte
Markierfolge ist, D ein Datenfeld variierbarer Länge und BC die Blockprüfziffer(n>.
GESENDET: F [D EMPFANGEN: F [D
D] BC
01111110
01111110
D] BC j 00000000 I 01111110
Ohne Fehler empfangen
Fehlerhaft' empfangen
BC = Nullen BC = Nullen
FEHLER: Ein übertragungsfehler bewirkte den Empfang
einer beendenden Markierfolge als lauter Nullen.
ERGEBNIS: Acht reine O-Bits am Ende eines Rahmens werden
ohne Blockfehleranzeige empfangen.
PJ. 972 008
109824/051 §
BEISPIEL 1-B
GESENDET: F [D D] BC 01111110 01111110
EMPFANGEN: F [D D] BC 00111111. 01111110
Ohne Fehler
_ «j
empangen
Λ /
Fehlerhaft empfangen
BC = Nullen
FEHLER: Wegen eines Übertragungsfehlers innerhalb von zwei Bits wird die beendende Markierfolge ein
Bit versetzt empfangen.
ERGEBNIS: Ein zusätzliches Bit wurde im Rahmen ohne
Blockfehleranzeige empfangen. Das erste Bit des empfangenen Blockprüffeldes wird als Teil
des Informationsfeldes gewertet.
Es gibt eine Art von Übertragungsfehlern dieses Typs, bei denen ein oder mehrere zusätzliche Bits als Teil des Informationsfeldes ohne Blockfehleranzeige gewertet werden.
GESENDET: F [D —— D] BC 01111110 [D D] BC FFF
EMPFANGEN: FAC [· ] BC
Ohne Fehler empfangen
oggoogoo [d d] bc fff
wti t
Fehlerhaft empfangen
BC = Nullen
Ohne Fehler
«Mi
empfangen
BC = Nullen BC = Nullen
2A 972 008
— C _
FEHLER: Aufgrund eines Übertragungsfehlers wurde
der Markierer zwischen zwei aufeinanderfolgenden Rahmen als lauter Nullen empfangen.
ERGEBNIS: Die beiden aufeinanderfolgenden Rahmen η und n+1 werden als ein Rahmen ohne Blockfehleranzeige
empfangen. Die Rahmen werden mit den folgenden Bits, sämtlich als Informationsbits
gewertet, aufgenommen: 1) Das Blockprüffeld des Rahmens n, 2) acht O-Bits und 3) das
Datenfeld des Rahmens n+1.
GESENDET: F [D D] BC
EMPFANGEN: F [D D] BC
Ohne Fehler empfangen
01111110
00111111
tu r
[0 D DJ BC FF
0[D D] BC FF
Fehlerhaft empfangen
Ohne Fehler empfangen
BC = Nullen
BC = Nullen BC = Nullen
FEHLER: Wegen eines 2-Bit-übertragungsfehlers wird der
Markierer zwischen zwei aufeinanderfolgenden Rahmen um ein Bit versetzt empfangen.
ERGEBNIS: Der erste Rahmen wird mit einem angehängten
O-Bit empfangen. Der zweite Rahmen wird ohne vorangehendes O-Bit empfangen. Beide Rahmen
werden ohne die erforderliche zwischenliegende Blockprüfanzeige empfangen.
RA 972 008
609824/0672
Es gibt eine Art von übertragungsfehlern dieses Typsf die sich
im Empfang von Rahmen mit weniger oder mehr empfangenen Bits gegenüber den gesendeten Bits ohne Blockfehleranzeige auswirken.
GESENDET: FOllllllO
EMPFANGEN: FOOOOOOOO
EMPFANGEN: FOOOOOOOO
" W
Fehlerhaft
empfangen
empfangen
BC = Nullen
[D D]
[D D]
Ohne Fehler empfangen
BC FF BC FF
BC = Nullen
BC = Nullen
FEHLER: Der trennende Anfangs-Markierer wurde
aufgrund eines übertragungsfehlers als lauter
Nullen empfangen.
ERGEBNIS: Der Markierer wird nicht als solcher erkannt und als Daten mit lauter Nullen gewertet. Der
empfangene Rahmen weist acht zusätzliche 0-Bits ohne Blockfehleranzeige auf.
Beispiel | 3-B | BC | [OD —— | [D t Ohne |
BC | BC FF | FF |
GESENDET: | FOllllllO | O i |
BC I |
||||
EMPFANGEN | : FOOllllll \ f Fehlerhaft |
- D] | illen | ||||
empfangen | = Nu | - D] Fehler |
= Nx. | ||||
empfangen | |||||||
Ilen |
RA 972 008
509824/0672
FEHLER: Wegen eines 2-Bit-Fehlers im Beginn-Markierer
erkennt der Empfänger die Markierfolge um ein Bit verzögert, wobei das erste Bit des
ggf. nachfolgenden Adreßfeldes als letztes Bit des Markierers gewertet wird.
ERGEBNIS: Das erste Bit des nachfolgenden Rahmens wird nicht als Adreßbit dieses Rahmens gewertet.
Der nachfolgend empfangene Rahmen wird mit einem Bit zuwenig empfangen ohne Blockfehleranzeige
.
Es gibt eine Art von übertragungsfehlern dieses Typs, die sich
als Zufügung oder Unterschlagung von Bits in den empfangenen Rahmen auswirken. Dabei keine Blockfehleranzeige.
Aus dem Vorgenannten läßt sich erkennen, daß es zahlreiche Fälle mit übertragungsfehlern während oder in der Nähe der MarkierfοIgen
gibt, die bei Verwendung der Verfahren nach dem genannten Stande der Technik nicht unter Fehleranzeige erkannt
werden.
Die Aufgabe der vorliegenden Erfindung ist die Nennung eines
Verfahrens, das von den vorgenannten Nachteilen' frei' ist.
Die Lösung dieser Aufgabe ist im Patentanspruch 1 gekennzeichnet.
Vorteilhafte Schaltungsanordnungen zur Durchführung sind in. den Unteransprüchen beschrieben.
Es wird zur Lösung der Aufgabe entsprechend der vorliegenden
Erfindung ein Codierer und ein Decoder verwendet unter Multipli-
n—k
kation der Informationsbits mit X und darauffolgender Teilung durch ein vorgegebenes Polynom. Vor der Bildung des Blockprüffeldes· wird der Codierer jedoch auf eine Nicht-O-Stellung gesetzt gegenüber der O-Stellung entsprechend dem Stande der
kation der Informationsbits mit X und darauffolgender Teilung durch ein vorgegebenes Polynom. Vor der Bildung des Blockprüffeldes· wird der Codierer jedoch auf eine Nicht-O-Stellung gesetzt gegenüber der O-Stellung entsprechend dem Stande der
V a72 no* 8 0&824/0B72
Technik.
Nach der Division im Codierer werden die sich ergebenden Bits in antivalenter ODER-Bedingung mit einem von null abweichenden
Wert verknüpft und dabei die Blockprüfbits BC zum Anhängen
an die Informationsbits erzeugt. Im Empfänger wird nach Empfang des voranlaufenden Markierers der Decoder auf den gleichen von
null abweichenden Wert gestellt, der im Codierer vorgesehen wurde. Am Ende der Decodierung enthält der Decoder dann den vorgegebenen
von null abweichenden Wert, womit die fehlerfreie Übertragung bestätigt wird. - Ergibt sich ein vom vorgegebenen
Zusatzwert abweichender Wert, dann liegt ein übertragungsfehler vor.
Ein Ausführungsbeispiel der Erfindung ist in den Zeichnungen dargestellt und wird im folgenden näher erläutert. Es zeigen:
Fig. 1 das Blockschaltbild eines Senderausgangs
entsprechend der vorliegenden Erfindung,
Fig. 2 das Blockschaltbild der Folgesteuerungskreise
gemäß Fig. 1,
Fig. 3 das Blockschaltbild des CRC-Akkumulators gemäß
Fig. 1,
Fig. 4 das Blockschaltbild der Null-Einfügungskreise
gemäß Fig. 1,
Fig. 5 das Blockschaltbild eines Empfängereingangs f
Fig. 6 das Blockschaltbild eines Zählers zur Aufnahme
von Ausgangssignalen gemäß Fig. 5,
Fig. 7 das Blockschaltbild eines Schieberegisters
zur Aufnahme der Ausgangssignale gemäß Fig. und
RA §72 008 S09824/0S72
Fig. 8 das Blockschaltbild des CRC-Akkumulators und
der zugehörigen Schaltkreise im Empfänger.
Vor der Beschreibung von Einzelheiten anhand der Zeichnungen sollen jedoch noch einige Kriterien näher erläutert werden.
Wie bereits genannt wurde, soll mit Blöcken bzw. Rahmen variierbarer
Länge gearbeitet werden. Die einzelnen aufeinanderfolgenden Rahmen werden dabei mit einem oder mehreren Markierern
F getrennt. Die benutzte Markiererfolge und deren Bitlänge sind Gegenstand der freien Vorabauslegung. Im Beispiel ist ein
Markierer mit acht Bits gewählt, wobei selbstverständlxch auch andere Längen festgelegt v/erden könnten. Entsprechend wäre
natürlich das Gerät anzupassen. Als Markierfolge soll 01111110 ins Auge gefaßt werden. Andere Folgen wären ebenfalls wiederum
möglich.
Die Bits der Rahmen zwischen je zwei Markierfolgen umfassen ein Informationsfeld und ein Blockprüffeld BC. Es soll ein Blockprüffeld
mit 16 Bits verwendet werden. Das Informationsfeld hat, wie bereits genannt, variierbare Länge. Es soll eine Datenbitmenge
von Bits D aufweisen. Darunter mögen im einzelnen ein Adreßfeld A, ein Steuerfeld C und das eigentliche Datenfeld D'verstanden
werden. Damit laufen Übertragungen der Folge F, A, C, D1, BC, F
ab. üblicherweise enthalten das Adreßfeld und das Steuerfeld
jeweils eine vorgegebene Länge von z.B. je acht Bits. Das Datenfeld D1 soll jedoch von Rahmen zu Rahmen variieren können. Das
Iß 12 5
verwendete Fehlerprüfpolynom soll sein: X+X+X+l.
In der nachfolgenden Beschreibung sollen die einzelnen vorkommenden
Eingangs- und Ausgangssignale an den betrachteten Schältungspunkten
als positiv oder negativ oder als ein oder aus bezeichnet werden. Es wird dabei im wesentlichen nur mit zweipegeligen
Signalen gearbeitet. Die Bezeichnungen "ein" und "aus" sind dabei gleichbedeutend mit den Bezeichnungen "positiv" und
"negativ".
1^972008 509824/0572
Die Endeinrichtungen zur Eingabe zu übertragender Daten oder zur Aufnahme empfangener Daten gehören nicht zur eigentlichen Erfindung.
Sie müssen jedoch ggf. zur Erhöhung des Verständnisses immer wieder angesprochen werden.
In Fig. 1 ist ein Senderausgang dargestellt, der von einer Endeinrichtung
Daten zugeführt bekommt. Fig. 2 zeigt die zugehörigen Folgesteuerungskreise zur Erzeugung der erforderlichen Steuersignale.
Gemäß Fig. 2 wird ein Signal START SENDEN von der Endeinrichtung
empfangen. Dabei läuft ein positiver Impuls zum UND-Glied 10 ein. Zur Zeit TAKT A wird dieser vom betrachteten
UND-Glied über ein ODER-Glied 11 zu einem Verriegelungsglied 12 durchgegeben. Dabei wird das Verriegelungsglied eingeschaltet
und ein positiver Pegel zur Bildung der Signale MARK SENDEN und LÖSCHEN abgegeben.
Das Signal TAKT A gibt dazu die Auslösung. Wie bei anderen Maschinen werden solche Taktsignale zur Steuerung verschiedener
aufeinanderfolgender Funktionen benutzt. Beim vorliegenden Beispiel sollen für jedes Bit die aufeinanderfolgenden Taktimpulse
A bis H verwendet werden. Sie werden auf herkömmliche Weise durch einen freilaufenden, nicht dargestellten Zählring erzeugt.
Zu Beginn einer übertragung soll ein Markierer F gesendet werden.
Dies bewirkt der Markierungsgenerator 13 gem. Fig. 1. Es handelt sich dabei im wesentlichen um einen 8-Bit-Zähler, der die Verriegelungsglieder
14, 15, 16 und 17 umfaßt, denen, wie dargestellt, Eingangsimpulse über zwei UND-Glieder 18 und 19 zugeführt
werden. Zu Beginn vor dem Anfang der Markierungserzeugung sind alle vier Verriegelungsglieder gelöscht. Mit dem Signal MARK
SENDEN aus Fig. 2 gibt das UND-Glied 18 zur Zeit TAKT B einen Eingangsimpuls zum Verriegelungsglied 14. Das UND-Glied 19 wird
durch ein negatives Ausgangssignal vom Verriegelungsglied 17 noch gesperrt gehalten. Mit dem nächsten Impuls TAKT B geht
das Verriegelungsglied 14 wieder aus. Dabei gelangt ein positiver Impuls zum Verriegelungsglied 15, um dieses einzuschalten. Wei-
972 °°8 509824/0572
tere Impulse TAKT B lassen in bekannter Weise den Zähler weiterlaufen,
bis das Verriegelungsglied 17 einschaltet. Damit gelangt ein positives Signal zum UND-Glied 19. Zur Zeit TAKT F gelangt
ein positiver Impuls vom UND-Glied 19 zu den Löscheingängen der Verriegelungsglieder 14 bis 17; dieser positive Impuls dient
auch als Signal MARK ENDE.
Im eingeschalteten Zustand der Verriegelungsglieder 15 und werden dem ODER-Glied 20 positive Ausgangssignale zugeführt.
Diese Signale werden zusammengefaßt dem ODER-Glied 21 zugeführt und weiter einem UND-Glied 23 und über einen Inverter 22 einem
UND-Glied 24. Diese beiden UND-Glieder 23 und 24 werden zur Einschaltung und Löschung eines Verriegelungsgliedes 25 verwendet
.
Um zu verstehen^ wie die Markiererfolge 01111110 durch das Verriegelungsglied
25 erzeugt wird, ist zu beachten, daß bei gelöschtem Markierungsgenerator 13 vor dem Beginn des Markierers
die beiden Verriegelungsglieder 15 und 16 ausgeschaltet sind und somit ihre Ausgänge über die ODER-Glieder 20 und 21 vom
Inverter 22 ein positives Signal zum UND-Glied 24 gelangen lassen. Damit wird zur Zeit TAKT E ein positiver Impuls über
das UND-Glied 24 zum Löscheingang des Verriegelungsgliedes gegeben.
Wenn im Markierungsgenerator ein Zählstand 1 erreicht wird,
sind die beiden Verriegelungsglieder 15 und 16 und ebenfalls der Ausgang des ODER-Glieds 20 noch aus. Das Verriegelungsglied
25 bleibt somit gelöscht, wobei sein Ausgang negativ verbleibt. DJ.es bewirkt die Anfangs-0 des zu erzeugenden Markierers. Wenn
im Markierungsgenerator der Zählstand 2 erreicht wird und das
Verriegelungsglied 15 seinen Ein-Zustand einnimmt, gelangt ein positives Signal über die ODER-Glieder 20 und 21 zum UND-Glied
23. Zur Zeit TAKT E wird ein positiver Impuls über das UND-Glied 23 zum Einschalteingang des Verriegelungsgliedes
gegeben. Damit wird dessen Ausgang positiv und erzeugt eine
RA 972 008
S09824/0572
binäre Eins für das zweite Bit des Markierers. Beim Zählstand 3 ist das Verriegelungsglied 15 im Markierungsgenerator noch
eingeschaltet; damit bleibt auch das Verriegelungsglied 25 eingeschaltet
und gibt eine binäre Eins als drittes Bit des Markierers ab.
Dies setzt sich fort bis zum Erreichen des Zählstandes 8 im Markierungsgenerator. Dann gehen die beiden Verriegelungsglie-·
der 15 und 16 auf aus. Damit wird wiederum zur Zeit TAKT E ein Impuls über das UND-Glied 24 zur Löschung des Verriegelungs·
gliedes 25 durchgegeben. Dabei entsteht die binäre Null als letztes Bit des Markierers.
Wie bereits angedeutet, wird mit der Einschaltung des Verriegelungsgiiedes
17 beim Zählstand 8 das UND-Glied 19 vorbereitet zur Durchgabe eines Impulses TAKT F zur Löschung der Verriegelungsglieder
14 bis 17 und zur Abgabe eines Signals MARK ENDE. Dieses Signal löscht in Fig. 2 das Verriegelungsglied 12 und
bewirkt das Umschalten dessen Ausgangs vom Positiven zum Negativen. Das Signal MARK ENDE gelangt des weiteren über ein UND-Glied
26 in Fig. 2 und bewirkt ein Signal START SENDEN LÖSCHEN für die Endeinrichtung, um dabei auch das von dieser empfangene
Signal START SENDEN abzuschalten. Gleichzeitig wird mit dem positiven Ausgangssignal des UND-Glieds 26 ein Verriegelungsglied 27 eingeschaltet, das seinerseits ein Signal DATEN SENDEN
zur eingebenden Endeinrichtung abgibt und des weiteren gemäß Fig. 1 das UND-Glied 28 zur Durchgabe von Datenbits von der
Endeinrichtung vorbereitet.
Die von der Endeinrichtung ankommenden Datenbits passieren das UND-Glied 28 und gelangen zum CRC-Akkumulator 29, dessen Einzelheiten
in Fig. 3 dargestellt sind und noch beschrieben werden sollen. Die Daten gelangen des weiteren über ein ODER-Glied
zu einem UND-Glied 31, dessen Ausgang über das ODER-Glied 21 parallel zu den bereits genannten Gliedern 22 bis 25 führt.
Damit können die zu sendenden Daten dem vorangeschickten Mar™
509824/0S72
kierer nachgesandt werden.
Die das ODER-Glied 30 passierenden Daten werden des weiteren Null-Einfügungskreisen 32 zugeführt, deren Einzelheiten in
Fig. 4 dargestellt sind. Der Zweck dieser Null-Einfügungskreise ist die Absicherung dagegen, daß eine Markierer-Bitfolge im
Datenfeld übermittelt werden könnte. Wenn fünf aufeinanderfolgende Einsen über die Datenbiteingabe einlaufen, wird.das
nächste Bit O oder 1 nicht Übertragen, bevor eine zusätzliche Null eingefügt worden ist. Damit wird die unerwünschte Vortäuschung
eines Markierers während der Übertragung von Datenbits unterbunden.
Wenn die angeschlossene Endeinrichtung zur Einleitung eines Markierers das Signal START SENDEN gibt, wird das erste Bit des
Datenfeldes dem UND-Glied 28 zugeführt. Dieses ist aber noch nicht geöffnet, bevor das Signal DATEN SENDEN nach der Markierungserzeugung
ansteht. Erst von dann ab wird das Verriegelungsglied 25 im Takte der Datenbits arbeiten. Wenn das erste
Datenbit z.B. eine Null ist, dann ist der Ausgang des UND-Glieds 28 negativ, womit auch der Ausgang des ODER-Glieds 30,
des UND-Glieds 31 und des ODER-Glieds 21 negativ ist. Der Ausgang des Inverters 22 ist dagegen positiv, und es läßt das
Signal TAKT E über das UND-Glied 24 das Verriegelungsglied 25 weiter im gelöschten Zustand, in dem es sich bereits vom zweiten
O-Bit des Markierers her befindet.
Wenn das erste Datenbit dagegen eine Eins ist, dann sind die Ausgänge
des UND-Glieds 28, des ODER-Glieds 30, des UND-Glieds 31 und des ODER-Glieds 21 positiv. Damit wird über das UND-Glied
23 ein Signal TAKT E zum Einschalteingang des Verriegelungsglieds 25 durchgegeben. Somit wird an dessen Ausgang auch ein
positives Signal abgegeben.
Beim gewählten Ausführungsbeispiel bietet die Endeinrichtung jeweils
ein Bit über die Dateneingabe an und wartet dann, bis das
RA 972 008 509824/0572
2U7255
nächste Bit abgerufen wird. Der Abruf für das nächste Bit erfolgt über das UND-Glied 33 gemäß Fig. 1. Angenommen, das erste Bit wäre
bereits empfangen. Dabei ist noch keine Notwendigkeit für eine Null-Einfügung gegeben? das Ausgangssignal der Null-Einfügungskreise
32 ist noch negativ. Damit ist der Ausgang des Inverters 34 positiv und läßt Daten über das UND-Glied 31 zum Verriegelungsglied
25 gelangen. Das gleiche Signal vom Inverter 34 bereitet ebenfalls das UND-Glied 33 vor, damit dieses einen positiven Im-
,als
puls zur Zeit TAKT A^ANFORDERUNG NÄCHSTES BIT für die Endainrichtung
geben kann. Daraufhin sendet die Endeinrichtung das nächste
Bit zum UND-Glied 28.
Dann, wenn die Null-Einfügungskreise 32 erkennen lassen, daß eine Null zur Verhinderung sechs aufeinanderfolgander Einsen
im Datenfeld einzufügen ist, wird der Ausgang des Inverters 34 negativ und verhindert die Erzeugung des Signals ANFORDERUNG
NÄCHSTES BIT seitens des UND-Glieds 33.
Bezüglich der Einzelheiten des CRC-Akkumulators 29 soll nun das Blockschaltbild gemäß Fig. 3 erläutert werden« Darin ist ein
rückgekoppeltes Schieberegister zur Multiplikation mit X * und zur Division der Datenbits durch das gewählte Polynom dargestellt.
Dieses Schieberegister enthält 16 Binärstufen, 35 bis 50. Wie dargestellt, sind drei antivalente ODER-Glieder 51, 52 und 54
zwischen einigen Stufen vorgesehen. Die Datenbiteingabe vom UND-Glied
28 gem. Fig. 1 führt über Leitung 5 3 zum antivalenten ODER-Glied 54, dessen anderer Eingang mit dem Ausgang der Stufe 50
des Schieberegxsters verbunden ist. Der Ausgang des antivalenten ODER-Glieds 54 dient als ein Eingang eines UND-Glieds 55.
Der andere Eingang dieses UND-Glieds 55 ist mit dem Ausgang eines Inverters 56 verbunden, dem das Signal CRC SENDEN zugeführt wird,
dessen Erzeugung noch beschrieben wird. Vor der Erzeugung dieses letztgenannten Signals ist der Ausgang des Inverters 56 positiv
und läßt durch das UND-Glied 55 das Ausgangssignal vom antivalenten
ODER-Glied 5 4 hindurchgehen. Das UND-Glied 55 gibt die Eingangssignale zur Stufe 35 des Schieberegisters und des weite-
RA 9 72 008
509824/0572 BADOR191MAU
ren für je einen Eingang der antivalenten ODER-Glieder 51 und
ab.
über eine Leitung 5 7 werden sämtlichen Schieberegisterstufen 35
bis 50 Verschiebeimpulse zugeführt, über eine Leitung 58 wird
den einzelnen Stufen des weiteren das schon genannte Löschsignal zugeführt. Die Verschiebeimpulse werden im Rhythmus des Signals
TAKT D gebildet. Das Löschsignal wird nach Durchführung der Abgabe eines Blockprüfsignals zur Vorbereitung auf den nächstfolgenden
Datenblock angelegt.
Was bis zu diesem Punkte von Fig. 3 beschrieben wurde, entspricht dem wohlbekannten Stande der Technik. Die Unterschiede zwischen
einzelnen ausgeführten rückgekoppelten Schieberegistern nach dem Stande der Technik sind im einzelnen jeweils durch das verwendete
Fehlerprüfpolynom bestimmt. Die gezeigte Anordnung nach Fig. 3 wird verwendet zur Division der Datenbiteingabe durch
das Polynom X16 + X12 + X5 + 1.
Was hier allerdings abweicht, ist die Tatsache, daß das Schieberegister
auf eine vorgegebene von lauter Nullen abweichende Einstellung gelöscht wird. Wie im Beispiel gezeigt, werden sämtliche
Schieberegisterstufen mittels des LÖSCHEN-Signals über die
Leitung 58 auf den binären Zustand "1" gelöscht. Dies entspricht einer antivalenten ODER-Verknüpfung von 16 "1"-Bits mit den 16
höchsten Bitstellen der einlaufenden Information.
Es könnte selbstverständlich auch auf eine andere von lauter Nullen abweichende Anfangseinstellung gelöscht werden.. Die gewählte Einstellung auf lauter Einsen ist eine dabei praktisch
gebotene Möglichkeit. Zur Löschung auf lauter Einsen ist in einfacher Weise die Löschungsleitung mit der gleichen Seite aller
Stufen zu verbinden; ein Löschsignal ausreichender Dauer stellt das Verbleiben der einzelnen Stufen tatsächlich im gelöschten
Zustande sicher. Wenn es erwünscht we.rden sollte, einige der Stufen jedoch auf null zu löschen, dann müßte die Löschleitung
509824/0572
2U7255
in diesen Stufen mit der entgegengesetzten Seite verbunden v/erden.
Dies entspricht dem Stande der Technik und benötigt an dieser Stelle nicht näher erläutert zu werden.
Wenn das erste Datenbit am antivalenten ODER-Glied 54 einläuft,
wird es dabei mit der Stellung der Stufe 50 des Schieberegisters verglichen. Die Funktion solcher antivalenten ODER-Glieder ist
wohlbekannt. Entsprechend den Regeln der Bool1sehen Algebra
wird seine Funktion bezeichnet mit dem Zeichen Φ. Ein solches antivalentes ODER-Glied gibt nur dann ein positives Zvusgangssignal
ab, wenn der eine oder der andere seiner Eingänge, aber nicht beide gleichzeitig, positiv beaufschlagt wird. Wenn somit
das erste einlaufende Bit eine binäre Null verkörpert, wird ein positives Ausgangssignal vom antivalten ODER-Glied 54 abgegeben,
da der Ausgang der Stufe 50 durch die vorangegangene Löschung auf eins gestellt wurde. Wenn dagegen das erste Datenbit
eine binäre Eins ist, dann ist das Ausgangssignal des antivalenten
ODER-Glieds 54 negativ, da beide Eingänge gleichzeitig positiv gespeist werden.
Für die weitere Beschreibung der Funktionen des Schieberegisters
soll angenommen werden, däß das erste einlaufende Datenbit eine binäre Eins ist. Da das Ausgangsignal der Stufe 50 ebenfalls
eins ist (durch die vorangegangene Löschung), ist der Ausgang von 54 negativ, das heißt, beim betrachteten Beispiel binär null.
Das UND-Glied 55 bleibt somit gesperrt. Damit wird mit dem nächsten Verschiebeimpuls die Stufe 35 auf null geschaltet. Wenn im
Gegensatz hierzu das antivalente ODER-Glied 51 von der Stufa 39
mit EIN gespeist wird und mit AUS über die Rückkopplungsleitung,
so wird ein EIN-Eingangssignal der Stufe 40 zugeführt und beläßt
diese im gelöschten Zustand binär eins. Dasselbe spielt sich über das antivalente ODER-Glied 52 ab. Damit ergibt sich nach der
Eingabe der ersten binären Eins die folgende Stallung der Stufen 35 bis 50: Olllllllllllllll.
Wenn dagegen das erste zugeführte Bit eine binäre Null gewesen
609824/0572
wäre, dann wäre ein positives Ausgangssignal vom antivalenten
ODER-Glied 5 4 über das UND-Glied 55 geführt worden. Damit hätte sich ergebeben, daß die erste Stufe 35 in ihrer gelöschten Eins-Stellung
verblieben wäre. Die antivaltenten ODER-Glieder 51 und 52 hätten dagegen anders reagiert und ein negatives Ausgangssignal
abgegeben. Die Stufen 40 und 47 wären dann auf binär null gestellt worden. Mit einer als erstes Bit zugeführten Null hätte
sich dabei die Schieberegisterstellung ergeben: 1111101111110111.
Es wurde bereits angedeutet, daß die Verschiebeimpulse dem Schieberegister
über die Leitung 57 zugeführt werden. Die Impulse werden dabei wie folgt gewonnen. Dem UND-Glied 59 werden die Ausgangssignale
von einem Inverter 60 und von einem ODER-Glied 61 zugeführt. Der Inverter 60 wird mit einem Signal NULL-BIT-EINFÜGUNG
gespeist, dessen Erzeugung- noch erläutert wird. Es kann gesagt werden, daß der Ausgang des Inverters positiv sein muß,
wenn keine Null eingefügt v/erden soll. Wenn eine Null eingefügt werden soll, muß der Ausgang des Inverters negativ sein und das
UND-Glied 59 für Verschiebeimpulse sperren'. Dem ODER-Glied 61 werden die Signale DATEN SENDEN und CRC SENDEN zugeführt. Somit
ist der Ausgang des ODER-Glieds 61 während der Datensendung eingeschaltet.
Aus dem Vorgenannten ergibt sich, daß während der Datensendung Impulse zur Zeit des TAKT D abgegeben werden, vorausgesetzt allerdings,
daß keine Nullen einzufügen sind. Wenn Nullen einzufügen wären, würden keine Verschiebeimpulse durchgegeben, wenn das
Signal NULL-BIT-ETNFüGUNG am Eingang des Inverters 60 positiv
ansteht.
So erfolgt die Verarbeitung der eingegebenen binären Einsen und Nullen, wobei sich in den einzelnen Stufen 35 bis 50 des Schieberegisters
der Schaltung entsprechende Zustände einstellen. Der Inhalt des Schieberegisters stellt dabei jeweils" laufend einen
Rost eines DivisionsVorganges dar, wobei Bit für Bit des Datenfeldes
dem Schieberegister zugeführt werden.
RA 972 008
■509824/0572 SAD OftlQJNAL
2U7255
Wenn die sendende Endeinheit das letzte Bit des Datenfeldes eingegeben
hat, gibt sie ein positives Signal DATENEWDE zu dem Pinen Eingang eines UND-Glieds 62 gem. Fig. 2, wenn das nächstfolgende
Signal ANFORDERUNG NÄCHSTES BIT gebildet wird. Das Signal DATEN-ENDE wird zur Zeit TAKT B zum Einschalteingang eines Vsrriegslungsgliedes
6 3 gegeben und bildet dabei an dessen Ausgang das positive Signal CRC SENDEN. Das Verriegelungsglied 6 3 v/ird wieder
gelöscht, wenn alle Prüfbits übertragen sind. Dies erfolgt durch das Signal CRC-ENDE. Dieses Signal wird gem. Fig. 3 srzeugt,
wie noch beschrieben wird.
Soweit sind die Vorgänge bis zum Auslesen der Prüfbits aus dam
Schieberegister gemäß Fig. 3 erläutert. Dies wird dann die Ausgabefunktion des CRC-Akkumulators 29 gem. Fig. 1 sein. Das gem.
Fig. 2 gebildete Signal CRC SENDEN wird über das ODER-Glied 61 dem UND-Glied 59 gem. Fig. 3 zugeführt und gewährt die Vorschiebeimpulse
über die Leitung 5 7, ausgenommen jedoch, wenn ein Signal NULL-BIT-EINFÜGUNG angibt, daß Nullen hinzufügen sind.
Das Signal CRC SENDEN wird des weiteren dem Inverter 5 6 zugeführt, der seinerseits das UND-Glied 55 während Schieberegisterausgabeoperationen
sperrt. Das Signal CRC SENDEN gelangt auch zum UND-Glied 64 und läßt durch dieses die Verschiebeimpulse vom
UND-Glied 59 in eine zweite Richtung gelangen.
Der Ausgang des UND-Glieds 6 4 ist mit einem fünfstufigen Binärzähler
verbunden, der in allgemein bekannter Weise bis 16 zählen kann. Dieser Zähler umfaßt die binären Verriegelungsglieder 6 5
bis 69. Bei einem Zählstand 16 wird ein positives Ausgangssignal
von der letzten Zählerstufe 69 einem UND-Glied 70 zugeführt und ein TAKT F-Signal vom Ausgang des UND-Glieds 70 als Signal CRCENDE
und zur Löschung des fünfstufigen Zählers abgegeben.
Das Signal CRC-ENDE gelangt zum ODER-Glied 11 in Fig. 2, dessen Ausgangssignal zur Einschaltung des Verriegelungsglieds 12 und
somit zur Erzeugung eines weiteren Signals MARK SENDEN dient.
509824/0572
- ig -
Damit wird die Bildung der den übertragenen Rahmen beendenden Markiererfolge erzeugt.
Wie bereits genannt, sind die über die CRC-Ausgabe gem. Fig. 3
auslaufenden Prüfbits die Ausgangssignale des CRC-Akkumulators
29 gem. Fig. 1. Ein wichtiger Teil des Gegenstands der vorliegenden Erfindung umfaßt die antivalente ODER-Verknüpfung einer
von Null verschiedenen Zahl mit den Prüfbits, bevor diese an die zum Empfänger zu übertragenden Datenbits angehängt werden. Im
erläuterten Beispiel wird dies durch Inversion der Prüfbits durchgeführt. Die Ausgangssignale des CRC-Akkumulators 29 werden
einem Inverter 71 zugeführt. - Es könnten auch andere bekannte Techniken für die antivalente ODER-Verknüpfung mit einem von
Null verschiedenen Wert zur Erzeugung des Blockprüffeldes BC als Anhängsel an das Datenfeld verwendet werden.
Entsprechend Fig. 1 ist der Ausgang des Inverters 71 mit einem
Eingang eines UND-Glieds 72 verbunden, dessen anderem Eingang das Signal CRC SENDEN zugeführt wird. Wenn also das Signal CRC
SENDEN ansteht, dann kann das Ausgangssignal des Inverters 71
über das UND-Glied 72 zum ODER-Glied 30 und weiter zum UND-Glied 31 gelangen. Auf die gleiche Weise wie vorbeschrieben, gelangt
das Ausgangssignal vom UND-Glied 31 an das Verriegelungsglied
25 am Senderausgang. Von dort geht es weiter über das nicht dargestellte Modem zwecks Anpassung an die vorgesehene übertragungsleitung.
Einer der Schaltkreise in der Fig. 1 ist noch nicht im einzelnen
beschrieben worden. Das sind die Null-Einfügungskreise. 32. Wie bereits angedeutet, ist die Aufgabe dieser Schaltkreise die Sicherstellung, daß keine Markiererfolge innerhalb eines übertragenen Datenfeldes D oder innerhalb eines Blockprüffeldes BC am
Ausgang des Verriegelungsglieds 25 auftritt. Wenn dies nicht abgesichert wäre, könnte eine unerwünscht auftretende Bitfolge,
die mit der Markiererfolge identisch ist, im Empfänger fälschlicherweise als solche verstanden werden und dabei unbeabsich-
RA 972 008
509824/0572
- 20 tigt ein Rahmenende kennzeichnen.
Die Null-Einfügungskreise 32 sind im Detail in Fig. 4 dargestellt.
Die Aufgabe dieser Schaltkreise ist die Vorkehrung eines Signals NULL-EINFÜGUNG immer dann, wenn fünf aufeinanderfolgende
Einsen im Daten- oder im Prüffeld auftreten. Ohne diese Vorkehrung könnte der Empfänger unerwünscht auf eine Markiererfolge
schließen.
Dazu ist ein dreistufiger Binärzähler mit den Binärstufen 76, 77 und 78 vorgesehen. Das Signal LÖSCHEN vom Verriegelungsglied
12 gem. Fig. 2 wird über ein ODER-Glied 81 den drei Stufen 76 bis 78 zur Löschung zugeführt, wenn zu einer Markiererfolge aufgerufen
wird. Jede in einem Datenfeld oder Blockprüffeld auftretende Eins läßt den Zähler um einen Schritt aufwärts zählen.
Jede Null im Datenfeld oder Blockprüffeld läßt dagegen den Zähler löschen, vorausgesetzt allerdings, daß der Zähler noch nicht
den Stand 5 erreicht hat, was kennzeichnen würde, daß eine Null einzufügen wäre. Die Datenfeldsignale und die Blockprüffeldsignale
vom ODER-Glied 30 gem. Fig. 1 erscheinen in Fig. 4 auf einer mit DATEN/CRC bezeichneten Eingangsleitung. Diese Signale
gelangen direkt zu einem UND-Glied 73 und zu einem Inverter 74 zur Ansteuerung eines UND-Glieds 75. Jedes dieser auf der Leitung
DATEN/CRC auftretende Eins-Signal bewirkt einen positiven Impuls am Ausgang des UND-Glieds 73 zur Zeit TAKT G. Dieser Ausgangsimpuls
des UND-Glieds 73 wird zur Aufzählung des Zählers jeweils um eins verwendet. Wenn ein eine binäre Null darstellendes
Signal auf der Leitung DATEN/CRC erscheint, v/ird ein positives Signal vom Inverter 74 zum UND-Glied 75 abgegeben. Solange
der Zähler noch nicht den Stand 5 erreicht hat, wird ein positives Signal vom UND-Glied 75 über ein ODER-Glied 81 weitergegeben
zur Löschung aller Stufen des Zählers auf AUS. Auf diese Weise zählt der Zähler mit sämtlichen zugeführten Einsen um
eins auf und wird sofort gelöscht, wenn eine Null ankommt, ausgenommen jedoch, wenn der Stand 5 vorher erreicht ist.
1^972008 509824/0572
Gem. Fig. 1 wird das Signal NULL-EINFÜGUNG von den Null-Einfügungskreisen 32 dem Inverter 34 zugeführt, dessen Ausgang mit
Eingängen der UND-Glieder 31 und 33 verbunden ist. Wenn also ein positives Signal NULL-EINFÜGUNG erzeugt wird, welches kennzeichnet, daß fünf Eins-Bits nacheinander aufgetreten sind, dann
werden die UND-Glieder 31 und 33 durch den Inverter 34 gesperrt, über das UND-Glied 33 kann somit nun kein Signal ANFORDERUNG
NÄCHSTES BIT abgegeben werden. Während das sechste Bit noch dem UND-Glied 31 zugeführt wird, ist dieses bereits gesperrt. Somit
wird eine Null vermittels des Verriegelungsglieds 25 abgegeben. Wenn der Ausgang des UND-Glieds 31 negativ wird, wird ebenfalls
der Ausgang des ODER-Gliedes 21 negativ und läßt den Ausgang des Inverters 22 positiv werden. Dann wird über das UND-Glied
24 ein positiver Impuls zur Zeit TAKT E dem Löscheingang des Verriegelungsglieds 25 zugeführt? auf diese Weise wird eine
binäre Null am Ausgang des Verriegelungsglieds 25 erzwungen.
Gem. Fig. 4 wird im Anschluß an die Erzeugung des Signals NULLEINFÜGUNG der Zähler mit den Verriegelungsgliedern 76 bis 78
mit dem nächsten Signal TAKT F gelöscht. Damit geht auch das Signal NULL-EINFÜGUNG selbst wieder aus. Der Inverter 34 in
Fig. 1 bekommt wieder einen positiven Ausgang und läßt das sechste Bit, das bereits ansteht, über das UND-Glied 31 weiterlaufen.
Solange vorher das Signal NULL-EINFÜGUNG noch eingeschaltet war,
gelangte es auch zum inverter 60 gem. Fig. 3. Damit wurde der Ausgang dieses Inverters negativ und sperrte das UND-Glied 59,
damit keine Verschiebesignale zum Schieberegister gelangen konnten. Des weiteren wurde das UND-Glied 64 gesperrt und die Aufzählung im CRC-Zähler unterbunden.
Immer dann also, wenn fünf aufeinanderfolgende Einsen im Datenfeld oder im Blockprüffeld auftreten, wird eine Null eingefügt
und das sechste Bit solange zurückgehalten, bis die Null einge-
RA 972 008
509824/0572
fügt ist.
Wenn nach Durchgabe eines Datenfeldes D das zugehörige Blockprü'ffeld
BC übermittelt ist, folgt ein Schluß-Markierer
01111110. Die vollständige übertragung eines Rahmens ist damit abgeschlossen.
Es wurde erläutert, wie ein Blockprüffeld in Form des Polynoms R1 (X) erzeugt wurde, welches seinerseits dem Divisionsrest bei
der Division [Xn"k : G(X) φ X^K (X) ] durch P(X) entspricht,
wobei dieser Divisionsrest in antivalenter ODER-Verknüpfung
mit K2(X) verbunden wird. Dies entspricht der folgenden Gleichung:
/'X*1"* . ' G(X) © XkK (X)
R1 (X) = Rest ^r7T7, —±— I © K. (X)
P(X)
Darin sind:
R1 (X)
G(X)
K1(X)
und
K2(X)
P(X)
das Blockprüfpolynom,
die Variable bei der Polynomdarstellung von Bits,
die Bitzahl zwischen zwei Markierern,
die Bitzahl des Datenfeldes,
das die k Datenbits im Datenfeld darstellende
Polynom,
Polynome eines Grades kleiner als n-k, welche von null verschiedene Konstanten darstellen,
und
das Generatorpolynom des Grades n-k.
das Generatorpolynom des Grades n-k.
Nun wird beginnend mit Fig. 5 ein passender Empfänger erläutert,
Die Leitung mit der Bezeichnung BIT-EINGANG ist die von einem
nicht dargestellten Modem kommende Eingabeleitung, über sie
RA 972 008
50 9824/0572
2U7255
werden die über die übertragungsleitung empfangenen Daten zugeführt.
Die Leitung BIT-EINGANG ist mit einem Taktring 100 verbunden, dar riit den Signalwechseln in der einlaufenden Bitfolge
synchronisiert wird. Ausgangsleitungen dieses Taktrings geben
von 1 bis 10 bezeichnete TAKT-SIGNALE ab. Je 10 Impulse folgen aufeinander im zeitlichen Abstand pro gegebenes Bit. Da es
zv/eckmäßig.. ist, die einlaufenden · Datenbits in der Nähe der Bitmitte
abzutasten, ist der Taktring 100 so ausgelegt, daß der 1 jeweils in der Mitte eines Bits liegt.
Die Leitung BIT-EINGAIn[G führt des weiteren zu einem UND-Glied
101 und über einen Inverter 103 zu einem UND-Glied 102. Diese beiden UND-Glieder werden zur Zeit TAKT 1 geöffnet und ihre Ausgangssignale
steuern ein Verriegelungsglied 104. Eine ankommende binäre Eins schaltet das Verriegelungsglied ein und eine ankommende
binäre Null schaltet es aus.
Die Ausgangsleitung des Verriegelungsglieds 104 ist bezeichnet
mit EMPFANGENES BIT. Das darüber laufende Ausgangssignal wird verwendet zur Steuerung eines Zählers, der auf Markierer prüft.
Dieser Zähler besteht aus drei Stufen 105, 106 und 107. Die Ausgänge dieser drei Stufen sind mit zwei UND-Gliedern 108 und 109
verbunden, deren erstes zur Erkennung von sechs aufeinanderfolgenden Eins-Bits und deren zweites zur Erkennung von fünf aufeinanderfolgenden
Eins-Bits dient.
Der Ausgang des Verriegelungsglieds 104 ist mit einem UND-Glied 110 und des weiteren über einen Inverter 111 mit zwei UND-Gliedern
112 und 115 verbunden. Ein Verriegelungsglied 113 wird durch
die beiden UND-Glieder 114 und 115 gesteuert, deren erstes mit dem Ausgang des UND-Glieds 108 und deren zweites mit dem Ausgang
des Inverters 111 verbunden, ist.
Der die Stufen 105 bis 107 umfassende Zähler zählt am Ausgang des Verriegelungsgliedss 104 aufeinanderfolgende Einsen über den BITEINGANG ab, wird jedoch jeweils über eine ankommende binäre Null
RA 972 008
509824/0572
sofort gelöscht. Bei der Feststellung eines Markierers 01111110
versetzt die erste Null das Verriegelungsglied 104 in seine gelöschte
Stellung, womit ein negatives Ausgangssignal vom Verriegelungsglied
104 abgegeben wird. Dieses negative Ausgangssignal wird
im Inverter 111 umgekehrt und den UND-Gliedern 115 und 112 zugeführt. Zur Zeit TAKT 8 läßt das UND-Glied 112 dann einen positiven
Impuls über das ODER-Glied 116 zur Löschung des Zählers gelangen. Zur Zeit TAKT 9 schaltet das UND-Glied 115 das Verriegelungsglied
113 ein und bewirkt ein Ausgangssignal zum UND-Glied 110.
Die aufeinanderfolgenden Eins-Bits des Markierers lassen mit Ausgangssignalen vom UND-Glied 110 den Zähler aufwärts zählen. Beim
Zählstand 6 gibt das UND-Glied 108 ein positives Ausgangssignal über das UND-Glied 114 zur Löschung des Verriegelungsglieds 113,
das seinerseits das UND-Glied 110 blockiert, und über das ODER-Glied 116 zur Löschung des Zählers. Das Ausgangssignal des UND-Glieds
108 wird des weiteren zu einem UND-Glied 117 geführt, dem andererseits das Ausgangssignal eines Inverters 118 zugeführt wird.
Wenn das nächstfolgende Bit eine Null ist, gibt das UND-Glied 117 zur Zeit TAICT 2 ein Aus gangs sign al ab zur Einschaltung eines Verriegelungsglieds
119, welches seinerseits ein positives Ausgangssignal MARK ERKANNT abgibt. Das Verriege lungs glied 119 wird darauf
zur Zeit TAKT 10 wieder gelöscht.
Der eben beschriebene Zähler arbeitet ähnlich, wenn seitens des Senders zusätzlich eingefügte Nullen wieder zu unterdrücken
sind. Sobald ein Zählstand fünf erreicht wird, gibt das UND-Glied 109 ein positives Ausgangssignal zum UND-Glied 120. Wenn
das nächste Bit wieder eine Eins ist, ist das Ausgangssignal des
Inverters 118 negativ und blockiert das UND-Glied 120. Somit gibt das UND-Glied 120 zur Zeit TAKT 2 ein Ausgangssignal nur dann
weiter, wenn das folgende Bit ein Null-Bit ist. Das Ausgangssignal des UND-Glieds 120 schaltet ein Verriegelungsglied 121 ein,
das seinerseits ein positives Signal UNTERDRÜCKUNG NULL abgibt. Zur Zeit TAKT 8 wird das Verriegelungsglied 121 wieder gelöscht.
Während einer echten Markiererfolge wird das Signal UNTERDRÜCKUNG
RA 9 72 008
509824/0572
NULL somit nicht erzeugt, wird aber erzeugt, wenn sendeseitig eingefügte Nullen zu unterdrücken sind.
Wenn also ein Markierer empfangen wird, wird das Signal HARK
ERKANNT abgegeben.—Wenn fünf aufeinanderfolgende Einsen empfangen
werden und das sechste Bit eine Null ist, wird ein Signal
UNTERDRÜCKUNG NULL erzeugt. Die Verwendung dieser Signale wird noch beschrieben.
Dia Schaltungsanordnung gem. Fig. 6 zählt die acht Bits im Anschluß
an die Erkennung eines Markierers. Es muß festgestellt werden, wenn ein zweiter Markierer empfangen wird. Das Signal
MARK ERKANNT wird"'über ein ODER-Glied 129 den Löscheingängen
eines binären Zählers mit den Stufen 125 bis 128 zugeführt. Das Signal MARK ERKANNT wird des weiteren einem UND-Glied 122 zugeführt,
welches zur Zeit TAKT 6 ein Verriegelungsglied 123 einschaltet, das seinerseits ein UND-Glied 124 vorbereitet. Daraufhin
kann ein zugeführter Verschiebeimpuls zur ersten Stufe 125 des Zählers gelangen.
Dabei schaltet jeder einlaufende Verschiebeimpuls während des Empfangs nicht zu unterdrückender Null-Bits den Zähler um eins
weiter. Im Zusammenhang mit Fig. 5 wurde erläutert, daß ein Signal UNTERDRÜCKUNG NULL nicht während des Empfanges eines Markierers
erzeugt wird. Bei einer Abzählung von acht Bits wird der
Ausgang der Stufe 128 positiv und bereitet das UND-Glied 130
vor, sodaß über dieses der Zähler und auch das Verriegelungsglied 12 3 gelöscht werden können. Wenn eine zweite Markierer-Folge einläuft,
löscht das Signal MARK ERKANNT den Zähler bereits vor dem Erreichen des Zählstandes 8. Somit erscheint ein positives Signal
8 BITS am Ausgang.der Stufe 128 nur dann, wenn 8 Bits nach
einem ersten Markierer abgezählt werden und es sich dabei nicht um einen zweiten Markierer handelt. Alle aufeinanderfolgend einlaufenden
Markiererfolgen werden auf gleiche Weise behandelt.
Wenn das MARK ERKANNT erzeugt wird, wird dieses gem. Fig. 7
RA 9 72 008
B09824/0672
zur Zeit TAKT 9 über ein UND-Glied 131 zur Löschung der Stufen 132 bis 139 eines Schieberegisters verwendet. Das nächste
Signal EMPFANGENES BIT vom Verriegelungsglied 104 in Fig. 5
wird der ersten Stufe 132 des Schieberegisters zugeführt. Dieses Schieberegister schaltet bei jedem Bit um eine Stufe weiter,
außer beim Empfang von zugefügten Null-Bits. Dazu wird das Signal UNTERDRÜCKUNG NULL- über einen Inverter 140 einem UND-Glied
141 zugeführt. Wenn somit keine Nullunterdrückung ansteht, kann das UND-Glied 141 zur Zeit TAKT 3 Impulse VERSCHIEBEN abgeben.
Diese Impulse werden auch dem UND-Glied 124 in Fig. 6, wie bereits erwähnt, zugeführt.
Die Ausgabe aus dem Schieberegister erfolgt über die Stufe 139.
Dabei werden nur solche Bits abgegeben, die auf einen Markierer folgen und zwar um 8 Bits verzögert. Während dieser Verzögerungszeit kann ein Markierer erkannt werden, der dem letzten Bit
eines Blockprüffeldes nachfolgt.
Fig. 8 zeigt den empfangsseitigen Decodierer in Form eines 16-stufigen
rückgekoppelten Schieberegisters; dabei sind Vorkehrungen für das gleiche Fehlerpolynom wie auf der Sendeseite getroffen.
Das empfangsseitige Schieberegister arbeitet auch auf
ähnliche Weise wie das sendeseitige im Codierer und enthält die Stufen 142 bis 157 mit antivalenten ODER-Gliedern 158, 159 und
160.
Wenn das Signal MARK ERKANNT zur Zeit TAKT 9 über das UND-Glied 161 durchgegeben wird, werden alle Stufen des Schieberegisters
auf die vorgesehene von null abweichende Stellung gebracht. .Wie auf der Sendeseite vorgesehen, werden auch hier sämtliche Stufen
auf eins gestellt. Dabei muß selbstverständlich dieselbe Kombination wie im Schieberegister des Codierers auf der Sendeseite
verwendet werden.
Das Schieberegister-rAusgangssignal von Fig. 7 dient für den Decoder
als Eingangssignal und wird diesem über das antivalente ODER-
RA 972 008
509824/0572
Glied 160 zugeführt. Der Inhalt des Decoder-Schieberegisters ist jeweils um eine Stufe zu verschieben, wenn ein Bit, ausgenommen
jedoch zu unterdrückende Null-Bits, empfangen wird. Diese Verschiebungen werden mittels des UND-Glieds 162 bewerkstelligt,
dem das Signal EMPFANG, das noch beschrieben werden soll, zugeführt- wird. Das Signal UNTERDRÜCKUNG NULL wird dem UND-Glied 16 2
über einen Inverter 16 3 zugeführt. Zur Zeit TAKT 5, wenn sämtliche Eingänge des UND-Glieds 16 2 positiv sind, wird ein Signal
VERSCHIEBEN CRC erzeugt und den Stufen 142 bis 157 zugeführt. Wenn natürlich das Signal UNTERDRÜCKUNG NULL positiv ist und anzeigt,
daß ein Null-Bit unterdrückt werden muß, wird das UND-Glied 162 vermittels des Inverters 16 3 gesperrt.
Nun soll anhand des oberen Teils der Fig. 8 beschrieben werden, wie das Signal EIiPFANG erzeugt wird. Das UND-Glied 164 empfängt
einerseits das Signal 8 BITS von Fig. 6. Zur Zeit TAKT 4 gibt
dann das UND-Glied 164 einen Impuls weiter zur Einschaltung des Verriegelungsglieds 165. Dieses Verriegelungsglied wurde vermittels
des UND-Glieds 166 zur Zeit TAKT 4 gelöscht, wenn das Signal MARK ERKANNT anstand. Das Ausgangssignal des Verriegelungsglieds
165 ist das Signal EMPFANG, das zürn UND-Glied 162 weitergeführt wird.
Wenn ein Markierer empfangen worden ist und feststeht, daß die nächsten 8 Bits nicht auch ein Markierer sind, muß angenommen
werden, daß die nächsten einlaufenden Bits zu empfangende Datenbits
sind. Somit wird das Signal EMPFANG auch zu einem UND-Glied 167 geführt. Das Signal UNTERDRÜCKUNG NULL gelangt über einen Inverter
168 zum UND-Glied 16 7. Da zu Beginn des Datenfeldes jetzt gewiß noch keine Notwendigkeit zur Unterdrückung eines Null-Bits
besteht, kann das UND-Glied 16 7 zur Zeit TAKT 2 ein positives Signal erzeugen, dag als BEDIENUNGSANFORDERUNG der angeschlossenen
Maschine bzw. dem verwendeten nicht dargestellten Gerät als
Kennzeichen zugeführt wird, daß Daten zu empfangen sind.
Um das erste Datenbit des Datenfeldes der angeschlossenen Maschi-RA
972 008 " Ä Λ ~,
509824/0572
2U7255
ne bzw. dem verwendeten Gerät zuzuführen, wird das Signal SCHIEBEREGISTER AUSGANG dem UND-Glied 16 9 und über einen Inverter
170 dem UND-Glied 171 zugeführt. Das Ausgangssignal des UND-Gliedes
171 löscht das Verriegelungsglied 172 zur Zeit TAKT 2, wenn
das gegenwärtige Datenbit eine Null ist, und das UND-Glied 169 schaltet das Verriegelungsglied 172 ein, wenn das gegenwärtige
Datenbit eine Eins ist. Von diesem Verriege lungs glied 172 v/erden
somit Ausgangs-Bits zur weiteren Verarbeitung abgegeben.
Das Signal BEDIENUNGSANFORDERUNG dient dabei als Kennzeichnung, daß Ausgangs-Bits als zu verarbeitende Daten anstehen.
Wenn der Markierer am Ende des Blockprüffeldes erkannt wird, dient das zum UND-Glied 166 geführte Signal MARK ERKAlWT zur
Löschung des Verriegelungsglieds 165 zur Zeit TAKT 4; dabei wird dessen Ausgang negativ. Bevor dieser negative Pegel eingenommen
wird, gibt kurz vorher zur Zeit TAKT 2 das UND-Glied 173 ein Ausgangssignal RAHMEN EMPFANGEN ab und zwar als Kennzeichnung
für die angeschlossene Maschine bzw. das verwendete Gerät,
daß der Rahmen beendet ist.
Nachdem der End-Markierer empfangen worden ist, ist es wünschenswert
zu wissen, ob eine ordnungsgemäße übertragung stattgefunden
hat. Ist dies der Fall, dann müßten die Stufen 142 bis 157 wieder eine vorgegebene Zahlenwertstellung beinhalten. Dieser
Zahlenwert ist wieder von dem von null abweichenden Zahlenwert abhängig, der in antivalenter ODER-Verknüpfung dem CRC-Akkumulator
29 im Sender (Fig. 1) zugeführt wurde. Im vorliegenden Falle, bei dem das Ausgangssignal des Akkumulators 29 invertiert
wird, müßte das Schieberegister 1111000010111000 beinhalten, wobei die einzelnen Bits von links nach rechts die
Sehaltzustände der Stufen 142 bis 15 7 wiedergeben.
Um die Richtigkeit einer übertragung festzustellen, sind die
Ausgänge der Stufen 142 bis 15 7 mit den Eingängen eines großen UND-Gliedes 174 verbunden. Wenn der vorgegebene Zahlenwert im
RA 9 72 008
509824/0572
Schieberegister steht, werden alle Eingänge des UND-Glieds 174 positiv beaufschlagt. Dies bewirkt die Abgabe eines Signals
CRC RICHTIG. Dieses Signal wird über einen Inverter 175 einem UND-Glied 176 zugeführt. Dieses UND-Glied bekommt des v/eiteren
das Signal EMPFANG und das Signal MARK ERKANNT zugeführt. Wenn
dann das -Signal CRC RICHTIG nicht anstehen sollte, wird das Ausgangssignal des Inverters 175 positiv, und zur Zeit TAKT 2
gibt der Ausgang des UND-Glieds 176 ein Signal CRC-FEHLER ab. Andererseits wird, wenn ein Signal CRC RICHTIG ansteht, kein
CRC-FEHLER-Signal abgegeben.
Im Empfänger wird somit nach Erkennung eines Markierers der rückgekoppelte Schieberegister-Akkumulator auf den von null
verschiedenen Zahlenwert gelöscht.- Im beschriebenen Beispiel v/erden dabei sämtliche Register stuf en auf eins gestellt. Nach
dem Empfang eines Datenfeldes und des nachfolgenden Blockprüffeldes
wird das Schieberegister den vorgegebenen Zahlenwert beinhalten, wenn die übertragung fehlerfrei war. Der Zeitpunkt
zur überprüfung des Standes des Schieberegisters fällt mit dem Empfang des End-Markierers zusammen; damit wird auch das Rahmenende
angezeigt. Dabei werden die dem rückgekoppelten Schieberegister zugeführten Bits um 8 Bitzeiten aufgrund der Wirkung
des 8-Bit-Schieberegisters gem. Fig. 7 verzoegert. zugeführt. Im Empfänger werden das empfangene Datenfeld, das Blockprüffeld
und gegebenenfalls eine Fehlerfolge decodiert und dabei der folgende Rest gebildet:
^-k |xn-k ^ G(x) ^v Rl (χ) φ ^k (χ) φ Ε(χ)1
P(X)
Darin ist E(X) ein den empfangenen Fehler darstellendes Polynom. Wenn E(X) null ist und damit angibt, daß kein Übertragungsfehler
vorliegt, dann ist der vorstehend angegebene Rest gleich Kg(X); dies ist ein Polynom, welches den im Decoder-Schieberegister
verbleibenden vorgegebenen Zahlenwert darstellt, wenn die Prüfung auf Korrektheit der übertragung durchgeführt wird.
RA 9 72 008
509824/0572
Das anfangs angegebene Beispiel 1-A betraf einen Fall, bei dem
der gesarate einen Rahmen abschließende End-Markierer als Nullen
empfangen wurde. Der nächstfolgende Markierer wurde wieder ordnungsgemäß empfangen. Dabei würda das rückgekoppelte Schieberegister
im Empfänger 8 zusätzliche Null-Eits empfangen, bevor
wirklich ein Markierer erkannt wird. Diese 8 zusätzlichen riullen
wurden das Schieberegister von 1111000010111000 vor dem
Empfang der 8 zusätzlichen Null-Bits auf 0011100100110011 mit den empfangenen 8 zusätzlichen Null-Bits abändern, wie dies
nachstehend gezeigt ist. Der Fehler würde also erkannt.
Stallung des Schieberegisters .
vor dem Empfang der zusätzlichen 8 Null-Bits 1111000010111000
erstes zusätzliches Null-Bit 0111100001011100
zweites zusätzliches Null-Bit OOllllOOOOlOlllO
drittes zusätzliches Null-Bit OOOllllOOOOlOlll
viertes zusätzliches Null-Bit lOOÖlO1100000011
fünftes zusätzliches Null-Bit llOOOOÖllOOOlOOl
sechstes zusätzliches Null-Bit Il10010011001100 .
siebentes zusätzliches Null-Bit 0111001001100110
achtes zusätzliches Null-Bit 0011100100110011
Entsprechend dem Beispiel 1-B wurde ein zusätzliches Null-Bit
vor einem falsch empfangenen Markierer aufgenommen. Dabei würde
das Schieberegister nach dem Empfang des besagten zusätzlichen Null-Bits den Stand 0111100001011100 beinhalten und damit
den Fehler erkennen lassen.
Entsprechend Beispiel 2-A stünde das rückgekoppelte Schieberegister
nach dem Empfang von 8 zusätzlichen Null-Bits auf 001llQOlOOl10011. Während das Schieberegister vor Beginn des
Empfangs des nächsten Rahmens auf lauter Einsen stehen sollte, ist die Schieberegisterstellung nach Empfang des nächsten Rahmens/frflüboo
10111000, das heißt falsch. Damit wird ein Feh-
972 008 509824/0572
ler angezeigt.
Entsprechend Beispiel 2-B steht das Schieberegister nach dem Empfang des ersten zusätzlichen Null-Bits auf 0111100001011100.
Wenn der um ein Bit verschobene Markierer erkannt wird und die Prüfung durchgeführt wird, dann wird der Blockprüffehler angezeigt.
- -
Das Beispiel 3-A zeigt einen Fall, der dem des Beispiels 2-A
ähnlich ist. Die den vorangehenden Rahmen empfangende Station nimmt den zweiten Rahmen, auf, der gar nicht an sie gerichtet war;
ein Fehler wird jedoch am Ende des zweiten Rahmens angezeigt. Bei ungestörtem Betrieb kann der Sender annehmen, daß der letzte an
eine bestimmte Station gerichtete Rahmen ordnungsgemäß empfangen wurde. Eine Vorkehrung, die das überprüft, ist nicht Teil der vorliegenden
Erfindung.. Es soll lediglich darauf hingewiesen werden, daß der Sender, wenn er annehmen muß, daß eine übertragung nicht
ordnungsgemäß empfangen wurde, er als nächsten Rahmen den wiederholt, der dem letzten ordnungsgemäß empfangenen folgte. Dabei ist
es auch wiederum vorteilhaft, eine Fehleranzeige zu erhalten, die die Aufnahme von zusätzlichen und überflüssigen Bits ausschließt.
Im Beispiel 3-B ergab ein Zwei-Bit-Fehler in einem Beginn-Markierer
ein fehlendes Null-Bit im empfangenen Rahmen. Dabei wird auch am Ende des Rahmens ein Blockprüffehler angezeigt.
In der vorgenannten Beschreibung wurde erläutert, daß allerlei
Fehlermöglichkeiten in der Nähe oder während der übertragung der Markierer bei Verfahren nach dem Stande der Technik unerkannt
bleiben könnten, die nach dem vorgeschlagenen Verfahren jedoch mit Sicherheit aufgedeckt werden.
RA 9 72 008
509824/0572
Claims (4)
- 2U7255PATENTANSPRÜCHEVerfahren zur Fehlerprüfung in digitalen Datenübertragungsanlagen, in denen zwischen einem Sender und einem Empfänger über ein fehleranfälliges Übertragungsmedium Datenfelder variierbarer Länge unter Vorkehrung feldtrennender Markierer vorgegebener Bitfolge übermittelt werden, gekennzeichnet durch die folgenden Merkmale:a) Im Sender wird für jedes zu übermittelnde Datenfeld(D D) als Blockprüffeld (BC) je ein Polynom R1(X) dernachstehenden Gleichung gebildet:V1"* . G(X)R1 (X) «Ljtest ^ ^ i—4J6> K2(X)A. (X)] j WJmit:R'(X) als Polynomdarstellung des Blockprüffeldes (BC), X als Variabler bei der Polynomdarstellung vonBits,
η als zahl der Bits zwischen den Markierern (F),k als Zahl der Bits des Datenfeldes (D D),G(X) als die k Datenbits des Datenfeldes (D D)darstellendes Polynom,
K1(X) und2 als von null verschiedene Konstanten darstellende Polynome eines Grades kleiner als n-k, P(X) als Generatorpolynom des Grades n-kb) Es erfolgt nacheinander für jedes zu übermittelnde Datenfeld (D D) die Übertragung eines Beginn-Markierers (F),des Datenfeldes (D D), des Blockprüffeldes (BC) undmindestens eines End-Markierers (F) über das übertrar· gungsmedium.c) Im Empfänger erfolgt pro empfangenes Datenfeld (D D)die Bildung eines BlockprüfrestesRA 972 008509824/0572. G(X) 0 1R1 (X) © A1(X) (£> E(X)] ρ(χ)multipliziert mit einer beliebigen Potenz von X, wobei E(X) ein Polynom ist, das einen empfangenen Fehler erkennbar macht.d) Erkennung eines aufgetretenen Übertragungsfehlers am gebildeten Blockprüfrest, wenn dieser vom sehdeseitig vorgegebenen, von null verschiedenen Polynom abweicht. - 2. Schaltungsanordnung zur Durchführung des Verfahrens nach Anspruch 1, gekennzeichnet durch einen sendeseitigen Codierer zur Bildung des Blockprüffeldes (BC) und durch einen empfangsseitigen Decoder zur Bildung des vorgegebenen Blockprüfrestes, sowie durch einen Vergleicher zum. Vergleich des gebildeten Blockprüfrestes mit dem sendeseitig vorgegebenen, von null verschiedenen Polynom.
- 3. Schaltungsanordnung nach Anspruch 2, gekennzeichnet durch sendeseitige Bit-Einfügungskreise (Null-EMügungskreise 32) zur Vermeidung die vorgegebenen Markierer (F)imitierenderBitfolgen während der Datenfelder (D D) undder Blockprüffelder (BC) und durch entsprschende empfangsseitige Bi-t-Unterdrückungskreise (Null-Unterdrückungskreise) , mit deren Hilfe die sendessitig eingefügten Bits wieder äusblendbar sind.
- 4. Schaltungsanordnung zur Durchführung des Verfahrens nach Anspruch 1, gekennzeichnet durcha) ein sendeseitiges und ein empfangsseitiges Schieberegister in an sich bekannter Verwendung als codierende und decodierende Akkumulatoren zur Bildung der vorgegebenen Prüfpolynome, ·wobei diese Schieberegister eine gleich große Zahl von Schieberegisterstufen (35 - 50, 142 - 157) aufweisen,οό8 509824/05 72die jeweils zu Beginn einer Polynombildung sämtlich auf ein ("1") gelöscht werden,b) einendem sendeseitigen Schieberegister-Akkumulator (29) nachgeschalteten Inverter (71) zur antivalenten ODER-Verknüpfung des gebildeten Polynoms mit einer vorgegebenen Binärfolge (1 1) vor der Aussendung undc) ein empfangsseitiges UND-Glied (174), dessen (sechzehn) Eingänge zur Prüfung des gebildeten Polynoms auf E(X) = Null mit den (sechzehn) Ausgängen der einzelnen Schieberegisterstufen (142 - 157) verbunden sind, wobei am Ausgang des UND-Glieds (174) ein die fehlerfreie Übertragung bestätigendes Signal (CRC RICHTIG) abnehmbar ist.5098 24/0572
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US418351A US3872430A (en) | 1973-11-23 | 1973-11-23 | Method and apparatus of error detection for variable length words using a polynomial code |
Publications (2)
Publication Number | Publication Date |
---|---|
DE2447255A1 true DE2447255A1 (de) | 1975-06-12 |
DE2447255B2 DE2447255B2 (de) | 1975-10-23 |
Family
ID=23657759
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE2447255A Granted DE2447255B2 (de) | 1973-11-23 | 1974-10-03 | Verfahren und Schaltungsanordnungen zur Fehlerprüfung In digitalen Datenübertragungsanlagen |
Country Status (10)
Country | Link |
---|---|
US (1) | US3872430A (de) |
JP (1) | JPS558856B2 (de) |
CA (1) | CA1017867A (de) |
CH (1) | CH576216A5 (de) |
DE (1) | DE2447255B2 (de) |
FR (1) | FR2252603B1 (de) |
GB (1) | GB1469465A (de) |
IT (1) | IT1025687B (de) |
NL (1) | NL7415304A (de) |
SE (1) | SE399793B (de) |
Families Citing this family (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS54132350A (en) * | 1977-09-16 | 1979-10-15 | Hiroshi Ise | Hydrant with water storage tank |
US4216540A (en) * | 1978-11-09 | 1980-08-05 | Control Data Corporation | Programmable polynomial generator |
EP0097158B1 (de) * | 1981-12-30 | 1989-02-08 | International Business Machines Corporation | Informationssystem mit fehlersyndromverwendung für besondere steuerung |
JPS58147807A (ja) * | 1982-02-26 | 1983-09-02 | Toshiba Corp | 誤り訂正回路 |
CA1212437A (en) * | 1983-03-04 | 1986-10-07 | Radyne Corporation | Data transmission system with error correcting data encoding |
DE3484245D1 (de) * | 1984-05-29 | 1991-04-11 | Siemens Ag | Verfahren und anordnung zum ueberwachen des synchronlaufs von schluesselgeraeten. |
US4723244A (en) * | 1985-10-01 | 1988-02-02 | Harris Corporation | Method and apparatus for preserving the integrity of the error detection/correction word in a code word |
US4712215A (en) * | 1985-12-02 | 1987-12-08 | Advanced Micro Devices, Inc. | CRC calculation machine for separate calculation of checkbits for the header packet and data packet |
GB2242104B (en) * | 1990-02-06 | 1994-04-13 | Digital Equipment Int | Method and apparatus for generating a frame check sequence |
GB9015426D0 (en) * | 1990-07-13 | 1990-08-29 | Indep Broadcasting Authority | Error protection for variable length codestreams |
US5251215A (en) * | 1992-01-13 | 1993-10-05 | At&T Bell Laboratories | Modifying check codes in data packet transmission |
GB9213272D0 (en) * | 1992-06-23 | 1992-08-05 | Digital Equipment Int | Check sequence preservation |
USRE38391E1 (en) | 1993-12-23 | 2004-01-20 | Stmicroelectronics S.A. | Circuit for detecting word sequences in a modem |
US5984512A (en) * | 1994-07-29 | 1999-11-16 | Discovision Associates | Method for storing video information |
GB9419785D0 (en) * | 1994-09-30 | 1994-11-16 | Plessey Telecomm | Cyclic redundancy code checking |
US6111922A (en) * | 1994-12-20 | 2000-08-29 | Sgs-Thomson Microelectronics S.A. | Circuit for detecting word sequences in a modem |
US6119213A (en) * | 1995-06-07 | 2000-09-12 | Discovision Associates | Method for addressing data having variable data width using a fixed number of bits for address and width defining fields |
GB9622539D0 (en) * | 1996-10-30 | 1997-01-08 | Discovision Ass | Galois field multiplier for reed-solomon decoder |
US5951707A (en) * | 1997-06-27 | 1999-09-14 | International Business Machines Corporation | Method of partitioning CRC calculation for a low-cost ATM adapter |
US6681364B1 (en) | 1999-09-24 | 2004-01-20 | International Business Machines Corporation | Cyclic redundancy check for partitioned frames |
CN102480760B (zh) * | 2010-11-23 | 2014-09-10 | 中兴通讯股份有限公司 | 系统间链路协议帧丢帧处理、补偿帧判别方法及装置 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3638182A (en) * | 1970-01-02 | 1972-01-25 | Bell Telephone Labor Inc | Random and burst error-correcting arrangement with guard space error correction |
US3646518A (en) * | 1970-05-05 | 1972-02-29 | Bell Telephone Labor Inc | Feedback error control system |
US3648238A (en) * | 1970-05-15 | 1972-03-07 | Precision Instr Co | Error-correcting encoder and decoder for asymmetric binary data channels |
-
1973
- 1973-11-23 US US418351A patent/US3872430A/en not_active Expired - Lifetime
-
1974
- 1974-09-18 GB GB4059474A patent/GB1469465A/en not_active Expired
- 1974-09-30 CH CH1315574A patent/CH576216A5/xx not_active IP Right Cessation
- 1974-10-03 DE DE2447255A patent/DE2447255B2/de active Granted
- 1974-10-09 FR FR7434703A patent/FR2252603B1/fr not_active Expired
- 1974-10-16 JP JP11831674A patent/JPS558856B2/ja not_active Expired
- 1974-11-01 CA CA212,863A patent/CA1017867A/en not_active Expired
- 1974-11-14 IT IT29422/74A patent/IT1025687B/it active
- 1974-11-18 SE SE7414446A patent/SE399793B/xx not_active IP Right Cessation
- 1974-11-22 NL NL7415304A patent/NL7415304A/xx not_active Application Discontinuation
Also Published As
Publication number | Publication date |
---|---|
SE7414446L (de) | 1975-05-26 |
JPS5085201A (de) | 1975-07-09 |
FR2252603A1 (de) | 1975-06-20 |
NL7415304A (nl) | 1975-05-27 |
FR2252603B1 (de) | 1976-10-22 |
CH576216A5 (de) | 1976-05-31 |
SE399793B (sv) | 1978-02-27 |
IT1025687B (it) | 1978-08-30 |
JPS558856B2 (de) | 1980-03-06 |
GB1469465A (en) | 1977-04-06 |
CA1017867A (en) | 1977-09-20 |
US3872430A (en) | 1975-03-18 |
DE2447255B2 (de) | 1975-10-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE2447255A1 (de) | Verfahren und schaltungsanordnungen zur fehlerpruefung | |
DE2342009C2 (de) | Prüfsystem | |
DE2727533B2 (de) | Datenübertragungssystem | |
DE1223414B (de) | Schaltungsanordnung fuer Codeuebersetzer in Empfangseinrichtungen fuer Nachrichten in fehlerkorrigierendem Code | |
DE2602807C2 (de) | ||
DE2508706A1 (de) | Codieren und decodieren mit einem code variierbarer wortlaenge und gegebenem bitzahlverhaeltnis | |
DE2364874A1 (de) | Kodieranordnung fuer ein differentialphasenmodulationssystem | |
DE2060643A1 (de) | Schaltungsanordnung zur Korrektur von Einzelfehlern | |
DE2320422A1 (de) | Verfahren zur fehlererkennung | |
DE1959231C3 (de) | Verfahren und Vorrichtung zur Korrektur von bis zu drei Fehlern eines aus 23 Bits bestehenden Codewortes | |
DE2047868A1 (de) | Schaltung zur Korrektur von Einzel fehlern in den Wortern eines zyklischen (n, k) Codes | |
DE1252727B (de) | Verfahren zum störungsfreien Empfang übertragener Daten | |
DE1815233A1 (de) | Verfahren und Schaltungsanordnungen zur Synchronlaufkontrolle bei der UEbertragung digitaler Nachrichten | |
DE1168677B (de) | System zur Fehlerermittlung und Fehlerkorrektur | |
DE2838228B2 (de) | Verfahren zum Synchronisieren einer Datenbitfolge | |
DE1290565B (de) | Verfahren zur empfaengerseitigen Korrektur dualkodierter Nachrichten | |
DE2057256A1 (de) | Verfahren und Schaltungsanordnung zur Datensicherung bei der UEbertragung binaerer Daten | |
DE2447255C (de) | Verfahren und Schaltungsanordnungen zur Fehlerprüfung in digitalen Datenübertragungsanlagen | |
DE2827615B2 (de) | Verfahren und Schaltungsanordnung zum Synchronisieren zwei oder mehrerer räumlich voneinander entfernter digital arbeitender nachrichtentechnischer Einrichtungen | |
DE2365957B2 (de) | Übertragungsverfahren für umkodierte Nachrichten | |
DE2203414C3 (de) | Verfahren und Schaltungsanordnung zum Herstellen des Gleichlaufs von Sende- und Empfangseinrichtungen bei der Übertragung von Datenblöcken | |
DE2150638A1 (de) | Empfaenger fuer Datenuebertragungsanlagen | |
DE2163105A1 (de) | Verfahren und schaltungsanordnung zum dekodieren und korrigieren eines sogenannten convolutional-code | |
DE1524884A1 (de) | Verfahren und Schaltungsanordnung zur UEbertragung digitaler Nachrichten unter Bildung und Einfuegung von Pruefbits | |
DE1449905C (de) | Einrichtung zur Berechnung von Prüfzeichen für eine digitale Übertragungsanlage und Fehleranzeige- und Korrektureinrichtung unter Verwendung der Prüfzeichen |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C3 | Grant after two publication steps (3rd publication) | ||
E77 | Valid patent as to the heymanns-index 1977 | ||
8339 | Ceased/non-payment of the annual fee |