DE2447255A1 - Verfahren und schaltungsanordnungen zur fehlerpruefung - Google Patents

Verfahren und schaltungsanordnungen zur fehlerpruefung

Info

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
Application number
DE19742447255
Other languages
English (en)
Other versions
DE2447255B2 (de
Inventor
Paul Emile Boudreau
Wynene Donald Brodd
Robert Anderson Donnan
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of DE2447255A1 publication Critical patent/DE2447255A1/de
Publication of DE2447255B2 publication Critical patent/DE2447255B2/de
Granted legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/0057Block codes
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion 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/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • H03M7/40Conversion to or from variable length codes, e.g. Shannon-Fano code, Huffman code, Morse code
    • H03M7/4025Conversion 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
Verfahren und Schaltungsanordnungen zur Fehlerprüfung
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>.
Beispiel 1-Ä
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.
Zusammenfassung für die Beispiele 1:
Es gibt eine Art von Übertragungsfehlern dieses Typs, bei denen ein oder mehrere zusätzliche Bits als Teil des Informationsfeldes ohne Blockfehleranzeige gewertet werden.
Beispiel 2-A
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.
Beispiel 2-B
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
Zusammenfassung für die Beispiele 2:
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.
Beispiel 3-A
GESENDET: FOllllllO
EMPFANGEN: FOOOOOOOO
" W
Fehlerhaft
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 .
Zusammenfassung für die Beispiele 3:
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
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.
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)

  1. 2U7255
    PATENTANSPRÜCHE
    Verfahren 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) der
    nachstehenden Gleichung gebildet:
    V1"* . G(X)
    R1 (X) «Ljtest ^ ^ i—4J6> K2(X)
    A. (X)] j WJ
    mit:
    R'(X) als Polynomdarstellung des Blockprüffeldes (BC), X als Variabler bei der Polynomdarstellung von
    Bits,
    η 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) und
    2 als von null verschiedene Konstanten darstellende Polynome eines Grades kleiner als n-k, P(X) als Generatorpolynom des Grades n-k
    b) 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) und
    mindestens eines End-Markierers (F) über das übertrar· gungsmedium.
    c) Im Empfänger erfolgt pro empfangenes Datenfeld (D D)
    die Bildung eines Blockprüfrestes
    RA 972 008
    509824/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. 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. 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) und
    der 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. 4. Schaltungsanordnung zur Durchführung des Verfahrens nach Anspruch 1, gekennzeichnet durch
    a) 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 72
    die 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 und
    c) 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
DE2447255A 1973-11-23 1974-10-03 Verfahren und Schaltungsanordnungen zur Fehlerprüfung In digitalen Datenübertragungsanlagen Granted DE2447255B2 (de)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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

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