DE2417932A1 - Verfahren und vorrichtung zum gewinnen der zyklischen codegruppe einer binaeren nachricht - Google Patents

Verfahren und vorrichtung zum gewinnen der zyklischen codegruppe einer binaeren nachricht

Info

Publication number
DE2417932A1
DE2417932A1 DE19742417932 DE2417932A DE2417932A1 DE 2417932 A1 DE2417932 A1 DE 2417932A1 DE 19742417932 DE19742417932 DE 19742417932 DE 2417932 A DE2417932 A DE 2417932A DE 2417932 A1 DE2417932 A1 DE 2417932A1
Authority
DE
Germany
Prior art keywords
shift register
bits
register
code group
cyclic code
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.)
Ceased
Application number
DE19742417932
Other languages
English (en)
Inventor
Jean Maurice Finet
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.)
Bull SA
Original Assignee
Bull SA
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 Bull SA filed Critical Bull SA
Publication of DE2417932A1 publication Critical patent/DE2417932A1/de
Ceased legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/13Linear codes
    • H03M13/15Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes

Landscapes

  • Physics & Mathematics (AREA)
  • Algebra (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Error Detection And Correction (AREA)
  • Detection And Correction Of Errors (AREA)
  • Communication Control (AREA)

Description

COMPAGNIE HONEYWELL BULL
94» Avenue Gambetta
PARIS (20) /ffranlcreioh
Unser Zeichen·. H 998
Verfahren und Vorrichtung zum Gewinnen der zyklischen Codegruppe einer binären Nachricht
Die Erfindung betrifft ein Verfahren und eine Vorrichtung zum Berechnen der zyklischen Codegruppe einer binären Nachricht. Das Verfahren und die Vorrichtung werden in Datenverarbeitungs- und Datenübertragungsanlagen verr· wendet und sie ermöglichen das Kontrollieren von Fehlern, die aufgrund von Rauschen auf der Übertragungsleitung in die Übertragung einer Nachricht eingeführt werden können.
409843/0923
Eine kurze Darlegung der Theorie der zyklischen Codes und des Standes der Technik auf diesem Gebiet ist erforderlich, um die durch die Erfindung verfolgten Ziele besser verständlich zu machen:
Es wird eine Nachricht betrachtet, die η Binärstellen (Bits) von Informationen enthält. Diese Bits können als die Koeffizienten eines Polynoms I einer Variablen X angesehen werden, welches mit I (X) bezeichnet wird und für welches geschrieben werden kann:
I(X) = An-1X1^VAn-2X11"2 + "...' + A1X + A0-
Auf diese Weise kann beispielsweise die Nachricht 10 10 0 10 1 durch das Polynom X7 + X5 + X2 + 1 in modulo 2 - Algebra dargestellt werden. Der Grad von I (X) ist kleiner oder gleich n-1,und A _1 ist das erste gesendete oder empfangene Bit.
Es gibt ein Polynom A(X) mit dem Grad k, welches als Generatorpolynom des zyklischen Codes bezeichnet wird und für welches geschrieben werden kann:
G(X) = Xk + Gj51-1 Xk~1 + + G1X + GQ.
Die zyklische Codegruppe ist die Folge der Bits, die durch die Koeffizienten des Restes C(X) der "modulo 2" - Division des Polynoms X . I (X) durch das Generatorpolynom G(X) gebildet sind, und unter diesen Bedingungen gilt:
Xk ' I (X) = Q(X) . G(X) Θ C(X),
wobei Q(X) den Quotienten der Division von X · I (X) durch G(X) darstellt und. wobei Φ das Rechenvorζeichen der "mo dulo 2" - Addition und C(X) von einem Grad ist, der kleiner oder gleich k-1 ist.
Unter Berücksichtigung der Tatsache, daß roch dem Gesetz der modulo 2 - Addition gilt C(X)® C(X) = 0, kann man schreiben: 409843/092 3
Xk . I(X) Θ C(X) = Q(X) · G(X).
Daraus folgt, daß der Block, der aus den η Informationsbits der Nachricht gefolgt von k Prüfbits der zyklischen Codegruppe gebildet ist, durch das Generatorpolynom teilbar ist, wobei Q(X) der Quotient ist.
Beim Senden werden die Informationsbits der Nachricht einem Codierungsverfahren unterworfen, welches einer Division durch das Generatorpolynom nach einer Multiplikation mit X äquivalent ist. Der Rest wird auf der Leitung unmittelbar nach den Informationsbits in abnehmender Folge der Ausdrücke übertragen.
Beim Empfang wird der vollständige Block einem Decodierungsverfahren unterworfen, welches einer Division durch das Generatorpolynom äquivalent ist. Diese Division ergibt, wenn kein Fehler vorhanden ist, einen Rest Null. Ein von Null verschiedener Rest zeigt das Vorhandensein eines Fehlers an. Eine andere Methode besteht darin, das Codierungsverfahren nur auf die Informationsbits anzuwenden, d.h. auf die empfangenen η ersten Bits,und die anschließend empfangenen k Bits mit dem berechneten Wert zu vergleichen. Eine Differenz zwischen diesen beiden Werten gibt das Vorhandensein eines Fehlers an.
Von der Wahl des Generatorpolynoms G(X), welches in verschiedenen Werken beschrieben ist, wird hier nicht gesprochen .
Es ergibt sich daraus, daß die Decodierung ebenso wie die Codierung auf eine Division des die Nachricht darstellenden Polynoms durch das GeneratorpoIynom des zyklischen Codes gemäß einem modulo 2 - Additionsgesetz zurückgeführt werden können. Diese Division läßt sich leicht verwirklichen, wie das folgende Beispiel zeigt:
409843/0923
1X7- 1 X3+0X +1X + 1
1X7- X 4 +x
OX6 H
J- OX6 H
l· 1X5 -
h 1X5 -
l· OX4 -
1X4 -
1X4-
1.X4-
OX3 H
h OX3 J
f- OX3 J
H OX3 -
l· 1X2 H
l· OX2 H
l· 1X2 J
I- 1X2 -
h OX+1
l· 0X+0
OX+1
I- 1X+0
1X+1
Zur Vereinfachung kann die Division lediglich mit den Koeffizienten dargestellt werden, ohne sich über den Quotienten Gedanken zu machen, der nicht verwendet wird:
10 10 0 10 1 10 11
10 10 1 10 11
1 1
10 11
Die Ausführungsregel ist folgende:
- Die Ausdrücke höheren Grades des Dividenden und des Divisors werden in einer Reihe angeordnet und danach werden sämtliche Ausdrücke derselben Stelle subtrahiert, was in modulo 2 - Algebra, bei welcher 1+1=0 ist, dazu führt, daß diese Ausdrücke hinzugefügt werden.
Die Operation wird mit dem Resultat der Subtraktion wiederholt, bis ein Teildividend erreicht ist, dessen Grad kleiner ist als der des Divisors.
- Eine Prüfung dieser Operationen zeigt, daß sie durch eine Folge von modulo 2 - Additionen verwirklicht werden können.
Bekannte Vorrichtungen, die das Berechnen der zyklischen Codegruppe einer Nachricht ermöglichen,enthalten Addierglieder, in Reihe mit den Speicherplätzen eines rückgekoppelten Schieberegisters. Die Anzahl der Addierer mit Antivalenzverknüpfung und ihre Lage mit Bezug auf die Speicherplätze dieses Registers hängen von der Form des Ge-
409843/0923
- 5 - 2417S32
neratorpolynoms ab. Jedes Bit der zu codierenden Nachricht wird bei jedem Rechenschritt in das Schieberegister eingeführt. Eine Vorrichtung dieser Art ist in dem "Livre blanc" des Comite consultatif International Telegraphique et Telephonique, Band VIII/ Avis v41, S.11-13, beschrieben.
Es ist bekannt, diese Nachricht aus η Bits in Worte mit vorbestimmter Länge zu zerlegen, wobei jeweils mehrere Nachrichtenbits <q Bits) umgruppiert werden: Die zyklische Codegrujpe wird nun Wort für Wort berechnet, aber unter der Bedingung, daß die Zerlegung dieser Nachricht in einer genauen Anzahl von Wörtern erfolgt, d.h. einem nfachen von q.
Die Erfindung bezweckt, diese Einschränkung zu beseitigen und das Berechnen der zyklischen Codegruppe einer Nachricht mit beliebiger Länge (n-faches von q oder nicht) zu ermöglichen.
Die Erfindung betrifft zunächst ein Verfahren zum Berechnen der zyklischen Codegruppe einer Nachricht, die eine beliebige Anzahl von η Informationsbits enthält, bei welchem in einem Schritt diese Nachricht in eine ganze Zahl S von Wörtern unterteilt wird, die q Informationsbits und einen Rest von.r Informationsbits enthalten, so daß die Beziehung:
η = sq + r
erfüllt ist, wobei r gleich 0 ist, wenn q ein Teilvielfaches von η ist, und wobei r eine ganze Zahl ist, die von 0 verschieden und kleiner als q ist, wenn q kein Teilvielfaches von η ist.
Dieses Verfahren umfaßt außerdem einen Schritt zum Berechnen der zyklischen Codegruppe der auf diese Weise unterteilten Nachricht, und es ist dadurch gekennzeichnet, daß der Schritt zum Berechnen der unterteilten Nachricht umfaßt:
409843/09??
- Eine Phase, in welcher durch eine Recheneinrichtung Wort für Wort die zyklische Codegruppe der Gesamtheit der Wörter berechnet wird, die nacheinander ! in ein Schieberegister geladen werden.
- Eine Phase, in welcher das Vorhandensein des Restes geprüft wird, nach der:
a) die Prüfung in dem Fall negativ ist, in welchem kein Rest vorhanden ist; die zyklische Codegruppe der Nachricht ist dann in dem Schieberegister enthalten.
b) die Prüfung An dem Fall positiv ist, in welchem ein Rest vorhanden ist, was eine Operation zum Berechnen der zyklischen Codegruppe der Gesamtheit der Wörter und des Restes, d.h. der zyklischen Codegruppe der Nachricht durch die Recheneinrichtung auslöst; diese zyklische Codegruppe ist dann in dem Schieberegister enthalten.
Die Erfindung betrifft außerdem eine Vorrichtung zum Berechnen der zyklischen Codegruppe einer Nachricht, die eine beliebige Anzahl von η Informationsbits enthält. Diese Vorrichtung, die zur Durchführung des soeben beschriebenen Verfahrens dient, enthält:
1) Einrichtungen zum Unterteilen dieser Nachricht in Wörter, wobei jedes Wort g Informationsbits und
einen Rest von r Informationsbits enthält, so daß die Beziehung: η = sq + r. erfüllt ist, wobei r Null ist, wenn q ein Teilvielfaches von η ist, und wobei r eine ganze Zahl ist, die von Null verschieden und kleiner als g ist, wenn g kein Teilvielfaches von η ist.
2) Ein Schieberegister, das mit den Ausgängen der Unterteilungseinrichtungen verbunden ist und in welches
409843/0973
die Wörter der Nachricht nacheinander geladen werden.
3) Recheneinrichtungen, die mit den Ausgängen der Unterteilungseinrichtungen und mit den Ausgängen des Schieberegisters verbunden sind und die Berechnung der zyklischen Codegruppe der unterteilten Nachricht ermöglichen.
Diese Vorrichtung ist dadurch gekennzeichnet, daß die Recheneinrichtungen enthalten:
1) Eine erste Recheneinheit, mittels welcher die zyklische Godegruppe - der Gesamtheit der Wörter Wort für Wort berechnet wird und die mit den Ausgängen des Schieberegisters verbunden ist.
2) Einrichtungen, die eine Prüfung des Vorhandenseins des Restes in Verbindung mit den Unterteilungseinrichtungen ermöglichen und die liefern:
a) Entweder ein Signal, daß die Prüfung negativ ist, in dem Fall, in welchem kein Rest vorhanden ist, wobei die zyklische Codegruppe der Gesamtheit der Wörter dann in dem Schieberegister enthalten ist.
b) Oder ein Signal, daß die Prüfung positiv ist, in dem Fall, in welchem ein Rest vorhanden ist, wobei dieses Signal eine zweite Recheneinheit für das Berechnen der zyklischen Codegruppe der Gesamtheit der Wörter und des Restes steuert, die mit den Ausgängen der Unterteilungseinrichtungen und mit den Ausgängen des Schieberegisters verbunden ist.
Weitere Ziele, Merkmale und Vorteile der Erfindung werden anhand der folgenden Beschreibung von bevorzugten Ausführungsformen unter Bezugnahme auf die beigefügten Zeich-
409843/097 3
nungen besser verständlich. Es zeigen:
Fig. 1 die Hauptschritte des Verfahrens nach der Erfindung zur Berechnung der zyklischen Codegruppe,
Fig. 2 eine erste Variante des Verfahrens nach der Erfindung zur Berechnung der zyklischen Codegruppe,
Fig. 3 ein Schema einer Vorrichtung, die die Durchführung des in Fig. 2 dargestellten Verfahrens ermöglicht,
Fig. 4 eine zweite Variante des Verfahrens zur Berechnung der zyklischen Codegruppe unter Verwendung einer Speichertabelle,
Fig. 5 ein Schema einer Vorrichtung, die die Durchführung des in Fig. 4 dargestellten Verfahrens ermöglicht,
Fig. 6 die Schritte der Erzeugung der mit Bezug auf Fig. 4 genannten Speichertabelle, und
Fig. 7 ein Schema der Einrichtungen, die für die Erzeugung der Tabelle von Fig. 6 verwendet werden.
Die Hauptoperationen des Verfahrens, welches gemäß der Erfindung die Berechnung der zyklischen Codegruppe einer Nachricht ermöglicht, sind in Fig. 1 dargestellt.
Die Nachricht wird zuerst bei B in S Wörter Ki unterteilt, die jeweils q Informationsbits und einen Rest von r Bits enthalten.
409843/09? 3
2417832
Diese Wörter werden anschließend nacheinander bei D in ein Schieberegister geladen, und dann eines nach dem anderen so verarbeitet, daß die zyklische Codegruppe der Gesamtheit der Wörter gewonnen wird. Es ist nun erforderlich, daß man bei E weiß, ob die Unterteilung der Nachricht dazu führt, daß ein Wortrest r auftritt; das ist der Fall, wenn η kein Vielfaches von q ist.
Wenn die Antwort auf die Frage E "JA" heißt, wird nun die zyklische Codegruppe der Nachricht bei F aus der zyklischen Codegruppe der Gesamtheit der Wörter unter Berücksichtigung des Restes r berechnet. Das Schieberegister enthält an dem Ende G dieser Operationen die zyklische Codegruppe
der Nachricht. Dagegen, wenn die Antwort auf die Frage E "NEIN" heißt, ist es möglich, direkt bei G zu bestimmen, daß das Schieberegister die zyklische Codegruppe der Nachricht enthält, ohne die Operation F auszuführen.
Die in Fig. 2 dargestellte erste Variante- des Rechenverfahrens enthält zuallererst einen Schritt 1, während welchem die Nachricht, die aus η Bits gebildet ist und von der man die zyklische Codegruppe berechnen will, in eine ganze Zahl S von Wörtern unterteilt wird, die jeweils q Informationsbits und einen Rest von r Informationsbits enthalten. Diese Nachricht stammt beispielsweise aus einem Speicherregister RM. Die Unterteilung erfolgt, indem mit dem ersten gesendeten Bit begonnen wird.
Die Beziehung, die dann zwischen n, s und q besteht, hat die Form:
η = sq + r
Die Zahl r ist gleich 0, wenn die Zahl q der jedes Wort Ki der Nachricht bildenden Bits ein Teilvielfaches der Zahl η von in der Nachricht enthaltenen Informationen ist, und diese Zahl r ist in dem Fall, in welchem q kein "■eilvielfaches von r. istp eine von Q verschiedene Zahl,
I C' Cr C. ;· r- f ■·*;?■: -.
- ίο - 2417332
die aber kleiner als die Zahl q von Bits eines Wortes ist.
An die Unterteilung der Nachricht schließt sich ein Rückstellen eines Schieberegisters RD auf Null und ein Beginn der Zählung der Stelle i der Wörter an, die nacheinander in dieses Register eingegeben werden.
Das Register RD hat eine Länge, die mindestens gleich der um eine Einheit verringerten Zahl der Koeffizienten des Generatorpolynoms der zyklischen Codegruppe ist, und es dient zum Laden der aufeinanderfolgenden Wörter der Nachricht und zum wortweisen Berechnen der zyklischen Codegruppe derselben.
Das in Fig. 2 dargestellte Verfahren läßt danach eine Aufeinanderfolge von Operationen 3, 4, 5, 6, 7, 7a und auftreten, die im folgenden mehr ins Einzelne gehend untersucht werden und die einen Schritt der Berechnung der zyklischen Codegruppe der Gesamtheit der Wörter der Nachricht, die nacheinander in das Schieberegister RD geladen werden, bilden. Die Phase 9 besteht darin, festzustellen, ob die unterteilte Nachricht eine Anzahl von η Binärinformationen darstellt, die ein Vielfaches der Zahl q von Bits jedes Wortes ist, sonst besteht die Phase 9 darin, zu prüfen, ob am Ende der unterteilten Nachricht ein Wortrest r vorhanden ist. Wenn die Antwort auf diese Prüfung "NEIN" ist, könnte direkt bei 15 bestimmt werden, daß nach den vorhergehenden Operationen, die das Berechnen der zyklischen Codegruppe der Gesamtheit der Wörter ermöglichen, das Schieberegister eine, zyklische. Codegruppe der Nachricht enthält. Wenn dagegen die Antwort "JA" heißt, so ist es erforderlich, mit 10, 11, 12, 13, 14 bezeichnete zusätzliche Rechenoperationen auszuführen, um die Berechnung der zyklischen Codegruppe der Nachricht unter Berücksichtigung des Vorhandenseins eines sich aus der Unterteilung ergebenden Wortrestes zu beenden.
4 0 9 3 £ 3 / 0 9 ? 3
Die Operationen 3 bis 8, die das Berechnen der zyklischen Codegruppe der Gesamtheit der Wörter der Nachricht ermöglichen, werden jetzt mehr ins Einzelne gehend untersucht:
Nach dem Nullstellen des Schieberegisters in der mit 3 bezeichneten Operation wird das Register mit den Bits geladen, die sich aus einer Summierung mit EXCLÜSIVES ODER-Verknüpfung (geschrieben Θ) zwischen seinem vorherigen Inhalt, das heißt 0 und den Bits ergibt, die das erste Wort K, der Nachricht darstellen, wobei dieses Wort bündig mit dem Ausgang des Schieberegisters ausgerichtet ist und wobei das erste zu sendende Bit das erste an der Seite des Ausganges des Registers ist.
Nach dem Laden des Schieberegisters wird eine Operation 4 ausgeführt, die darin besteht, den Inhalt dieses Registers um einen Speicherplatz zu dem Ausgang desselben hin zu verschieben und dabei an seinem Eingang den Binärwert 0 einzugeben.
Nach dieser Verschiebung erfolgt eine Operation 5 zur Bestimmung des Wertes des Bits, welches das Register R_ verläßt; dieser Wert kann gleich 0 oder gleich 1 sein. Wenn dieser Wert gleich 1 ist, wird das Schieberegister wieder mit den Bits geladen, die sich aus einer Summierung 6 mit EXCLÜSIVES ODER-Verknüpfung zwischen dem Inhalt des Registers Rn nach der Verschiebung und den Bits ergibt, die die Koeffizienten des GeneratorpoIynoms der zyklischen Codegruppe der Nachricht darstellen, welche in einem Hilfsregister RÄ enthalten sind. Diese Koeffizienten sind von der Seite dieses Registers aus, welche dem Ausgang von Rß entspricht, in einer absteigenden Folge G, ,,...G.., G geordnet.
Nach dieser Summierung erfolgt eine Prüfoperation 7, die darin besteht, die Zahl von Verschiebungen festzustellen,
409843/0973
die der Inhalt des Registers RD erfahren hat. Diese Operation wird, ohne über die Operation 6 zu gehen, direkt ausgeführt, wenn das Bit, welches von dem Register nach der Verschiebung abgegeben wird, gleich 0 ist. Wenn q Verschiebungen des Inhalts des Registers nicht ausgeführt worden sind, ist die Antwort auf die Prüfung 7 "NEIN" und der Zyklus der Operationen 3 bis 8 wird nun wieder aufgenommen, wie zuvor.
Wenn für das in Verarbeitung befindliche Wort q aufeinanderfolgende Verschiebungen des Inhalts des Registers R^ ausgeführt worden sind, ist die Antwort auf die Prüfung 7 "JA" und es ist nun erforderlich, eine Inkrementierung um eine Einheit des Wertes von i auszuführen, die mit 7A bezeichnet ist und die ermöglicht, auf das folgende Wort überzugehen. An sie schließt sich eine Prüfung 8 der Zahl der Wörter an, die verarbeitet worden sind.
Wenn die Antwort auf diese Prüfung "NEIN" ist, anders gesagt, wenn die S Wörter der Nachricht nicht verarbeitet worden sind, ist es erforderlich, die vorhergehenden Operationen 3 bis 8 mit dem folgenden Wort K„ wieder zu beginnen, und sofort, bis zu dem letzten Wort K0.
Die Operation 3, die für das erste Wort einer Ladung des Schieberegisters R_ mit den Bits äquivalent war, die dieses erste Wort darstellen, besteht für die folgenden Worte darin, nach dem letzten Wort, das verarbeitet worden ist, dieses Register mit dem Resultat der Summenbildung mit EXCLUSIVES ODER-Verknüpfung zwischen dem vorhergehenden Inhalt des Schieberegisters und den Bits zu laden, die das folgende Wort darstellen. Diese Summenbildung ist in Fig. 1 mit R © K. bezeichnet, wobei dieselbe Ausrichtung wie die zuvor beschriebene angewendet wird.
409843/0923
Die Operationen 10 bis 14, die das Berechnen der zyklischen Codegruppe der Nachricht ermöglichen, welche einen Unterteilungsrest aufweist, werden jetzt mehr ins Einzelne gehend untersucht:
Die Berechnung geht von der zyklischen Codegruppe der Gesamtheit der Wörter aus, die in dem Schieberegister R am Ende der Operation 8 enthalten ist. Die Operation 10 besteht darin, das Schieberegister R_ mit den Bits zu laden, die sich aus einer Summenbildung mit EXCLUSIVES ODER-Verknüpfung zwischen dem letzten Inhalt des Schieberegisters RD, d.h. der zyklischen Codegruppe der Gesamtheit der s Wörter und den den Rest darstellenden Bits ergeben.
Danach führt man im Verlauf der Operation 11 eine Verschiebung des neuen Inhalts des Registers R um einen Speicherplatz zu seinem Ausgang hin aus. Danach bestimmt man bei 12.den Wert des Bits, der aus diesem Register herauskommt, bei welchem es sich um den Wert 0 oder 1 handeln kann. Wenn dieser Wert gleich 1 ist, wird das Schieberegister R bei der Operation 13 erneut mit Bits geladen, die sich aus einer Sümmenbildung mit EXCLUSIVES ODER-Verknüpfung zwischen den Bits, die es zuvor am Ende der Operation 11 enthielt, und den Bits ergeben, die das Generatorpolynom der zyklischen Codegruppe darstellen und in einem Hilfsregister Rs enthalten sind. Nach dieser Summenbildung erfolgt eine Operation 14 zur Prüfung der Zahl von Verschiebungen, die der Inhalt des Registers R erfahren hat. Wenn diese Prüfung negativ ist, d.h. wenn r Verschiebungen nicht ausgeführt worden sind, wird der Zyklus der Operationen 11 bis 14 wieder aufgenommen, bis diese Zahl r von Verschiebungen erreicht ist, wonach es möglich ist, bei 15 zu bestimmen, daß die zyklische Codegruppe 'der Nachricht vollständig in dem Schieberegister enthalten ist.
409843/0923
Wenn im Verlauf der Operation 12 der Wert des Bits, der das Schieberegister verläßt, gleich 0 ist, wird die Operation 13, die das Generatorpolynom zum Eingreifen bringt, nicht ausgeführt, sondern die Operation 14 erfolgt direkt nach der Operation 12.
Die Vorrichtung, die die Durchführung des soeben beschriebenen Verfahrens ermöglicht, ist in Fig. 3 dargestellt. Diese Figur zeigt ein Speicherregister RM, in welchem die aus einer Datenverarbeitungseinheit UT kommende Nachricht gespeichert wird, bevor diese Nachricht in Wörter und feinen Wortrest durch Unterteilungseinrichtungen M unterteilt wird, wobei ein Zähler Cs, der durch die Informationsverarbeitungseinheit UT auf den Wert S gestellt wird, welcher der Anzahl von Wörtern der Nachricht entspricht, und ein Zähler Cr verwendet wird, der auf den Wert r gestellt wird, welcher dem Rest entspricht. Diese Figur zeigt auch das Schieberegister R^, dessen Serienverschiebungsausgang mit S und dessen Verschiebungseingang mit E bezeichnet ist.
Die Einrichtungen, die die Durchführung der Operationen 3 bis 8 des zuvor beschriebenen Verfahrens und das wortweise Berechnen der zyklischen Codegruppe der Gesamtheit der Wörter der Nachricht ermöglichen, sind durch eine Recheneinheit E- dargestellt, während die Einrichtungen, die das Berechnen der zyklischen Codeqruppe der Geamtheit von s Wörtern und des Restes ermöglichen, durch eine Recheneinheit E„ dargestellt sind. Das Vorhandensein dieses Restes wird durch Einrichtungen R^ ermittelt, die das Vorhandensein des Restes prüfen und die, beispielsweise, mit einem Ausgang der Unterteilungseinrichtungen M und mit dem Zähler Cr verbunden sind. Die Prüfeinrichtungen R„ liefern ein negatives Prüfsignal in dem Fall, in welchem kein Rest vorhanden ist, und ein positives Prüfsignal, welches die Recheneinheit E2 auslöst, in dem Fall,
409843/0923
in welchem ein Rest vorhanden ist. '
Die Recheneinheit E1 für den zyklischen Code der Gesamtheit der Wörter enthält einen Zähler Cq, der beispielsweise durch die Verarbeitungseinheit UT gesteuert ist. Dieser Zähler wird am Anfang jedes Wortes der Nachricht auf den Wert q gestellt.'Er ermöglicht, die q aufeinanderfolgenden Verschiebungen des Inhalts des Registers Rj, zu zählen; bei jeder Verschiebung wird in den Eingang E_ dieses Registers eine Null eingegeben. Dieser Zähler Cq, der durch einen Ausgang mit dem Zähler Cs verbunden ist, greift bei jedem Wort der Nachricht, das aus den Unterteilungseinrichtungen M kommt, ein; er wird bei jedem Taktimpuls, der bei C zu dem Register Rß gelangt und der eine Verschiebung hervorruft, um eine Einheit dekrementiert.
Eine erste Summiereinrichtung A1, die einerseits mit den Ausgängen der Unterteilungseinrichtungen M und andererseits mit den Parallelausgängen Sp des Schieberegisters verbunden ist, ermöglicht, das Schieberegister erneut mit den Bits zu laden, die sich aus der Summenbildung mit EXCLUSIVES ODER-Verknüpfung zwischen den Bits der zyklischen Codegruppe des Wortes, welches soeben verarbeitet worden ist, und den Bits des folgenden Wortes ergeben. Diese Summiereinrichtung A1 kann am Anfang jedes Wortes mit Hilfe eines Signals freigegeben werden, welches durch einen Ausgang Sv der Unterteilungseinrichtungen M geliefert wird.
Die Recheneinrichtungen E haben außerdem ein Hilfsregister R .. , welches Bits enthält, die das Generatorpolynom der zyklischen Codegruppe der Nachricht darstellen und die am Anfang durch die Verarbeitungseinheit UT von einem Ausgang S. derselben aus geladen worden sind. Eine zweite Summiereinrichtung A„, die einerseits mit den Parallelausgängen des Hilfsregisters RA1 und andererseits
409843/0973
2417832
mit den Parallelausgängen S des Schieberegisters R verbunden ist, ermöglicht, dieses Register wieder mit Bits zu laden, die- sich aus einer Summenbildung mit EXCLUSIVES ODER-Verknüpfung zwischen den in dem Schieberegister enthaltenen Bits und den Bits ergeben, die das Generatorpolynom der zyklischen Codegruppe der Nachricht darstellen und die in dem Register RA. enthalten sind. Diese zweite Summiereinrxchtung empfängt ein Freigabesignal oder Sperrsignal aus Einrichtungen EV. zum Auswerten des Wertes des an dem Serienausgang S des Registers R erscheinenden Bits. Nach jeder Verschiebung liefern die Einrichtungen EV. in dem Fall, daß sie ein Bit empfangen haben, welches gleich 1 ist, ein Freigabesignal, dagegen, wenn das Bit gleich O ist, liefern sie ein Sperrsignal.
Die Einrichtungen E„ zum Berechnen der zyklischen Codegruppe der Gesamtheit der Wörter und des Restes enthalten eine dritte Summiereinrxchtung A3, die einerseits mit den Parallelausgängen S des Schieberegisters Rn und andererseits mit den Ausgängen S„ der Leseeinrichtungen M verbunden ist. Sie ermöglichen, das Schieberegister R wieder mit den Bits zu laden, die aus einer Summenbildung mit EXCLUSIVES ODER-Verknüpfung zwischen den Bits, die die zyklische Codegruppe der Gesamtheit der Wörter darstellen, und den Bits resultieren, die den Rest darstellen. Diese dritte Summiereinrxchtung A kann durch ein positives Prüfsignal, welches aus einem Ausgang von Einrichtungen R- kommt, die das Vorhandensein des Restes prüfen, in dem Augenblick freigegeben werden, in welchem die Berechnung der zyklischen Codegruppe der Gesamtheit der Wörter beendet ist,aber lediglich in dem Fall, in welchem ein Rest vorhanden ist. In dem gegenteiligen Fall und während der gesamten Berechnung der zyklischen Codegruppe der Gesamtheit der Wörter ist diese dritte Summiereinrxchtung durch ein negatives Prüfsignal blockiert.
4Q9843/09?3
Diese Recheneinrichtungen Ε~ haben außerdem Einrichtungen, mittels welchen r aufeinanderfolgende Verschiebungen des Inhalts des Registers R ausgeführt werden können. Ein Zähler C , der durch die Verarbeitungseinheit UT am Anfang auf den Wert r eingestellt wird, zählt die r Verschiebungen des Inhalts des Registers RD, wenn eine Null in den Eingang E dieses Registers eingegeben wird und wenn ein eine Verschiebung hervorrufender Taktimpuls an dem Schieberegister R bei C ankommt. Nach jeder der r Verschiebungen wird das das Schieberegister R verlassende Bit durch die Einrichtungen EV- ausgewertet , die in dem Fall, in welchem das Bit gleich 1 ist, ein Freigabesignal liefern, während sie ein Sperrsignal liefern, wenn dieses Bit gleich 0 ist. Diese Einrichtungen EV^ können durch ein Signal ausgelöst werden, welches ab dem Augenblick, in welchem ein Rest festgestellt worden ist, aus den Prüfeinrichtungen R0 kommt.
Das Freigabesignal steuert eiie vierte Summiereinrichtung A4,
die einerseits mit den Parallelausgängen S des Schieberegisters RQ und andererseits mit den Parallelausgängen eines weiteren Hilfsregisters RA3 verbunden ist, welches mit den Bits geladen ist, die das Generatorpolynom der Nachricht darstellen. Diese vierte Summiereinrichtung A. ermöglicht, das Register R wieder mit den Bits zu laden, die aus einer Summenbildung mit EX-CLUSIVES ODER-Verknüpfung zwischen den Bits, die nach der Verschiebung in dem Register R enthalten sind, und den Bits resultiert, die in dem Register RA2 enthalten sind.
Nach r Verschiebungen des Inhalts des Registers RQ enthält dasselbe die zyklische Codegruppe der vollständigen Nachricht. Diese Codegruppe ist an den Ausgängen S„ des Schieberegisters verfügbar, die von den Ausgängen S abgeleitet sind.
9843/0923
Es ist zu bemerken, daß die Register R1, R und R^, die dieselbe Anzahl von Speicherplätzen besitzen, in Fig. 3 zur Erleichterung der Darstellung verschieden groß dargestellt worden sind.
Eine weitere Variante des Verfahrens zur Berechnung der zyklischen Codegruppe einer Nachricht ist in Fig. dargestellt. Die Operationen 1, 2, 3, 7a, 8, 9, 15 sind mit denen identisch,■die für die in Fig.2 dargestellte erste Variante des Verfahrens beschrieben worden sind.
Es wird zunächst die Operation 4A beschrieben, die durch einfaches Lesen der Ordnungsnummereintragung J einer Speichertefel das Auffinden der zyklischen Codegruppe E des Wortes ermöglicht, welches durch die q Bits gebildet wird, die in dem Schieberegister auf der Ausgangsseite desselben enthalten sind und die aus einer Summenbildung mit EXCLüSIVES ODER-VErknüpfung zwischen seinem vorherigen Inhalt und den Bits resultieren, die das Wort im Verlauf der Verarbeitung bei der Unterteilung einer Nachricht darstellen. Der Wert J wird durch q Bits gebildet und gehorcht der Beziehung:
0 < J«2q"1
Die Einzelheiten der Operationen zur Erzeugung dieser Tafel werden im folgenden angegeben.
Die Operation 5,, die dem Lesen der Tafel folgt, besteht aus einer Verschiebung des neuen Inhalts des Registers R um q Speicherplätze zu dem Ausgang dieses Registers hin. An sie schließt sich eine Operation 6 an, bei welcher das Register R_ mit den Bits geladen wird, die aus einer Summenbildung mit EXCLÜSIVES ODER-Verknüpfung zwischen den in dem Register nach der Verschiebung um q Speicherplätze enthaltenen Bits und den Bits der in der Tafel gelesenen zyklischen Codegruppe E resultieren.
409843/0923
Es ist nun erforderlich, die Anzahl S von Wörtern Ki zu kennen, die verarbeitet worden sind, und, wenn diese Anzahl nicht erreicht ist, auf das folgende Wort überzugehen; diese' Operation, die mit 7A bezeichnet ist, ermöglicht das Übergehen von dem Wort Ki auf das Wort Ki + 1.
Die. Operationen 3, 4A, 5w 6w 7. werden dann wieder in identischer Weise aufgenommen, bis die S Wörter verarbeitet worden sind.
Wenn die S Wörter der Nachricht verarbeitet worden sind, ist die Antwort auf die Prüfung 8 "JA". Es wird nun eine Operation 9 ausgeführt, in welcher das Vorhandensein eines Restes r geprüft wird, der aus der Unterteilung der Nachricht resultieren kann. Wenn die Prüfung eine negative Antwort ergibt, d.h. wenn kein Rest vorhanden ist, kann das Verfahren direkt bei der Operation angehalten werden, ohne über die Zwischenschritte 1OA, 11A, 12A, 13A, 14A zu gehen, und das Schieberegister enthält die zyklische Codegruppe der Nachricht.
Wenn dagegen die Antwort auf die Prüfung 9 "JA" heißt, ist ein Rest vorhanden und die Operationen 10A bis 14A werden das Berechnen der zyklischen Codegruppe der Nachricht und ihres Unterteilungsrestes ermöglichen. Diese Berechnung geht von der zyklischen Codegruppe der Gesamtheit der Wörter aus, die seit dem Ende der Operation 8 in dem Schieberegister R enthalten ist.
Die Operation 1OA besteht darin, das Register R und ein Obergangsregister R1- mit den Bits zu laden, die aus einer Summenbildung mit EXCLUSIVES ODER-Verknüpfung zwischen den Bits, welche die zyklische Codegruppe der Gesamtheit der in dem Register R enthaltenen Wörter darstellen, und den den Rest darstellenden Bits resultieren.
409843/0923
Die anschließende Operation 11A besteht darin, den Inhalt des Schieberegisters R zu dem Eingang dieses Registers hin um eine Anzahl von Speicherplätzen zu verschieben, die gleich q - r ist, wobei andererseits q - r Nullen in den Ausgang des Registers R eingegeben werden. Nach diesem erfolgt ein Schritt 12A, bei welchem in dert ρ en Eintragung einer Speichertafel die zyklische Codegruppe E1 des durch die q Bits gebildeten Wortes gelesen wird, die in dem Register R^ an seinem Ausgang enthalten und aus dem Rest gebildet sind.
Diese Tafel ist dieselbe wie die, die zuvor angegeben worden ist, und ihr Erzeugungsverfahren wird später angegeben.
Der Inhalt des Registers R^ der seit der Operation 1OA nicht geändert worden ist, wird nun im Verlauf der Operation 13A um r Speicherplätze zu dem Ausgang dieses Registers hin verschoben.
Schließlich wird eine Operation 14A ausgeführt, die aus einem Laden des Registers R mit den Bits besteht, die aus einer Summenbildung mit EXCLUSIVES ODER-Verknüpfung zwischen den Bits, die in dem Register R_ nach r Verschiebungen enthalten sind, und den durch die Tafel gelieferten Bits der zyklischen Codegruppe E' resultieren. Das Ende des Verfahrens zur Berechnung der zyklischen Codegruppe erscheint bei 15. Das Schieberegister R enthält nun die zyklische Codegruppe der vollständigen Nachricht.
Die Vorrichtung, die die Durchführung dieser zweiten Variante des Verfahrens zur Berechnung der zyklischen Codegruppe, welches soeben beschrieben worden ist, ermöglicht, ist in Fig. 5 dargestellt. Diese Figur zeigt, wie Fig. 2, das Speicherregister R , indem die aus der Informationsverarbeitungseinheit UT stammende Nachricht
409843/0923
gespeichert wird. Die Unterteilung dieser Nachricht in Wörter und einen Wortrest erfolgt anschließend durch Unterteilungseinrichtungen M, die an einem Eingang durch einen Zähler Cq gesteuert sind, der auf den Wert S eingestellt ist, der. der Anzahl von Wörtern der Nachricht entspricht,und die an einem anderen Eingang durch einen Zähler Cr gesteuert sind, der auf den Wert r eingestellt ist, welcher dem Rest entspricht. Man erkennt in dieser Figur außerdem das Schieberegister R , dessen Serienverschiebungseingang mit Sn bezeichnet ist und dessen Parallelverschiebungseingang mit E bezeichnet ist. Die Einheit zum Berechnen der zyklischen Codegruppe der Gesamtheit der Wörter ist bei E1 dargestellt, während die Einheit, die das Berechnen der zyklischen Codegruppe der Wörter und des Restes ermöglicht, bei E« dargestellt ist. Das Vorhandensein dieses Restes wird durch Prüfeinrichtungen R„ ermittelt, die beispielsweise mit einem Ausgang der Unterteilungseinrichtungen M verbunden sind.
Wie zuvor, liefern diese Prüfeinrichtungen Rc ein negatives Prüfsignal in dem Fall," in welchem kein Rest vorhanden ist, und ein die Einheit E„ auslösendes positives Prüfsignal in dem Fall, in welchem ein Rest vorhanden ist.
Die Einheit E1 zur Berechnung der zyklischen Codegruppe der Gesamtheit der Wörter hat eine Speichertafel T1, die die zyklischen Codegruppen E sämtlicher Wörter mit q Bits angibt, die in dem Register enthalten sein können.
Sie hat außerdem Einrichtungen, die aus einem Zähler C bestehen, der beispielsweise auf den Wert q eingestellt ist und für jedes Wort im Verlauf der Verarbeitung das Zählen der Verschiebung des Inhalts des Registers R um q Speicherplätze zu dem Serienverschiebungsausgang S_ dieses Registers hin ermöglicht. Diese Verschiebung er-
4 0 9843/0923
folgt aufgrund von Taktimpulsen, die über C zu dem Zähler C und zu dem Schieberegister R gelangen, wobei bei jeder Verschiebung in den Eingang des Registers IL· eine 0 eingegeben wird.
Die Operation 6A7 bei welcher das Register R^ mit den Bits geladen wird, die aus der Summenbilduhg mit EXCLU-SIVES ODER-Verknüpfung zwischen den in dem Register R nach der Verschiebung enthaltenen Bits und den Bits der zyklischen Codegruppe E resultieren, wird mit Hilfe der ersten Summiereinrichtung A. verwirklicht, die einerseits mit den Ausgängen der Tafel T.. und andererseits mit den Ausgängen des Registers R verbunden ist. Diese erste Summiereinrichtung A1 kann durch ein aus dem Zähler Cq stammendes Signal jedesmal dann freigegeben werden, wenn q Verschiebungen des Inhalts des Registers R ausgeführt worden sind. Man erkennt in Fig. 5 außerdem eine zweite Summiereinrichtung A ', die, solange nicht sämtliche Wörter verarbeitet worden sind, das erneute Läden des Registers R^ mit den Bits ermöglicht, die aus der Summenbildung mit EXCLUSIVES ODER-Verknüpfung zwischen dem vorherigen Inhalt des Registers R für das verarbeitete Wort und den Bits resultieren, die das dem verarbeiteten Wort folgende Wort darstellen. Diese zweite Summiereinrichtung, die einerseits mit den Ausgängen des Schieberegisters RD und andererseits mit den Ausgängen der ünterteilungseinrichtungen M verbunden ist, kann am Anfang der Verarbeitung jedes Wortes durch ein Signal aus den Unterteilungseinrichtungen M freigegeben werden.
Die Recheneinheit E„, die das Berechnen der zyklischen Codegruppe der Gesamtheit der Wörter und des Restes ermöglicht, hat eine dritte Summiereinrichtung A'3, die einerseits mit den Ausgängen der Unterteilungseinrichtungen M und andererseits mit den Parallelausgängen S des Schieberegisters RQ verbunden ist. Die Ausgänge
409843/0923
der dritten Summiereinrichtung sind mit den Paralleleingängen E des Registers R verbunden. Diese dritte Summiereinrichtung A' ermöglicht das Ausführen der Operation 1OA von Fig. 3f die darin besteht, das Register R wieder mit den Bits zu laden, die aus der Summenbildung mit EXCLUSIVES ODER-Verknüpfung zwischen den Bits, die in dem Register R enthalten sind und die die. zyklische Codegruppe der Gesamtheitheit der Wörter darstellen, und den Bits resultieren, die den Rest darstellen.
Die dritte Summiereinrichtung A' kann durch ein Signal freigegeben werden, welches von den Prüfeinrichtungen geliefert wird, sobald ein Rest festgestellt.worden ist.
Die Recheneinheit E2 hat außerdem ein Übergangsschieberegister R-, welches mit den Ausgängen der Summiereinrichtung A1_ verbunden und mit den Bits geladen ist, die aus der vorherigen Summierung resultieren, die durch die Summiereinrichtung A1^ ausgeführt wird. Einrichtungen Cr, die beispielsweise aus einem Zähler bestehen, der durch die Verarbeitungseinheit UT gesteuert ist, ermöglichen das Zählen der r Verschiebungen, die der Inhalt des Registers R™ zu dessen Ausgang hin erfährt . . Jede Verschiebung wird durch einen Impuls erzeugt, der bei C_ an dem Zähler C und dem Register R ankommt, während eine Null in den Eingang dieses Registers eingegeben wird.
Eine Rechentafel T~ ist mit den Ausgängen des Schieberegisters RD verbunden und liefert die zyklische Codegruppe E1 .j des Inhalts dieses Registers nach der vorangehenden Summierung, während die Einrichtungen Cq-r, die mit dem Ausgang S, des Schieberegisters Rn verbunden sind und aus einem Zähler bestehen, das Zählen der q-r Verschiebungen ermöglichen, die der Inhalt des Registers Rn zu dessen Ausgang hin vor dem Lesen der Tafel T2 erfährt, wobei jede Verschiebung durch das Eingeben des Bits
409843/0973
an dem Ausgang S des Registers R_ erzeugt wird.
Schließlich ermöglicht eine vierte Summiereinrichtung A'., deren Eingänge einerseits mit den Ausgängen des Übergangsregisters R_ und andererseits mit den
Ausgängen der Tafel T2 verbunden sind, das erneute
Laden des Registers RQ mit den Bits, die die zyklische Codegruppe der vollständigen Nachricht darstellen. Diese vierte Summiereinrichtung A1 . kann durch
ein Ausgangssignal des Zählers Cr freigegeben werden, nachdem derselbe die r Verschiebungen des Inhalts des Übergangsregisters R„ gezählt hat. Die zyklische Codegruppe steht nun an den Ausgängen S„ des Schieberegisters R zur
geleitet sind.
gisters R zur Verfügung, die von den Ausgängen S ab-
Das Verfahren zur Erzeugung der Tafel wird jetzt mit Hilfe der Fig. 6 beschrieben.
Die erste Operation B ist eine Initialisierungsphase der Zählung von i entsprechend der Stelle i der zu berechnenden Exntragtng. An diese Initialisierungsphase
schließt sich eine Operation 16 an, bei welcher das Register R mit den Bits geladen wird, die den Wert i darstellen, welcher folgendermaßen definiert ist: 0«i<i2™
Die Operation 17, die sich anschließt, besteht darin, eine Verschiebung des Inhalts des Registers R um einen Speicherplatz zu seinem Ausgang hin vorzunehmen, woran anschließend eine Operation 18 ausgeführt wird, bei welcher der Wert des das Register R verlassenden Bits geprüft wird.
Wenn das das Register verlassende Bit gleich 1 ist, so wird eine Operation 19 ausgeführt, bei welcher das Schieberegister R mit den Bits geladen wird, die aus einer Summenbildung mit EXCLÜSIVES ODER-Verknüpfung zwischen dem vorhergehenden Inhalt des Registers Rß nach der Ver-
409843/0973
Schiebung und dem Inhalt eines Hilfsregisters R resultieren, welches mit den Bits geladen ist, die die Koeffizienten des Generatorpolynoms der zyklischen Codegruppe darstellen. Die Operation 20 besteht darin, die Anzahl von Verschiebungen des Inhalts des Registers R zu zählen,' die bis dahin ausgeführt worden sind. Wenn q Verschiebungen nicht ausgeführt worden sind, wird der Zyklus der Operationen 16 bis 20 in identischer Weise wieder aufgenommen. Wenn dagegen q Verschiebungen ausgeführt worden sind, kann man bei 21 bestimmen, daß das Schieberegister R die zyklische Codegruppe enthält, welche den Bits entspricht, die es am Anfang enthielt, d.h. die zyklische Codegruppe des durch den Wert i gebildeten Wortes.
Wenn dagegen das das Schieberegister R verlassende Bit gleich 0 ist, wird direkt auf die Operation 20 übergegangen, die darin besteht, die Anzahl von Verschiebungen des Inhalts des Registers R zu zählen, die bis dahin ausgeführt worden sind. Wenn q Verschiebungen nicht ausgeführt worden sind, wird, wie zuvor, der Zyklus der Operationen 16 bis 20 in identischer Weise wieder aufgenommen, bis q Verschiebungen ausgeführt worden sind, woran anschließend man bei 21 bestimmen kann, daß das Register R die zyklische Codegruppe enthält, die den Bits entspricht, die es am Anfang enthielt.
Die Operation 22, die sich anschließt, besteht darin,
ten den Inhalt des Registers RQ in den i Eingang einer Speichertafel M1 einzureihen, von wo aus dieser Inhalt im geeigneten Augenblick entnommen werden kann.
Die Operation 23 besteht darin, i um eine Einheit zu inkrementieren, dann bei 24, nämlich wenn der Wert i = 2^ erreicht ist.
Wenn die Antwort auf die Frage 24 "NEIN" ist, wird der
409843/0923
Zyklus der Operationen 16 bis 24 in identischer Weise wieder aufgenommen, bis sämtliche Eintragungen berechnet worden sind.
Wenn dagegen die Antwort auf die Frage 24 "JA" ist, kann man bei 25 bestimmen, daß das Verfahren zum Füllen der Speichertafel mit den Bits, die für die Berechnung der zyklischen Codegruppe der Nachricht gemäß der zweiten Variante erforderlich sind, beendet wird.
Die Vorrichtung, die das Berechnen der Tafel gemäß dem Verfahren ermöglicht, welches soeben beschrieben worden ist, ist bei T in Fig. 7 dargestellt.
Diese Figur zeigt die Verarbeitungseinheit UT und das Schieberegister R , welches Paralleleingänge E , Parallelausgänge S ,einen Serienverschiebungseingang E und einen Verschiebungsausgang S hat. Das Schieberegister R wird am Anfang mit den g Bits geladen, die den zu verarbeitenden Wert i darstellen. Die Einrichtungen, die das Ausführen von g aufeinanderfolgenden Verschiebungen des Inhalts des Registers R ermöglichen, bestehen aus dem Zähler C , welcher durch, die Verarbeitungseinheit UT gesteuert und am Anfang des Verfahrens auf den Wert g eingestellt wird. Dieser Zähler zählt die Verschiebungen, die nach dem Eingeben von O-Bits in den Eingang E des Registers R ausgeführt werden. Die Einrichtungen, mittels welchen nach jeder Verschiebung der Wert des Bits, welches das Register R^ verläßt, ausgewertet wird, sind durch EV dargestellt. Sie liefern der Summiereinrichtung A ein Freigabesignal, wenn das herauskommende Bit gleich 1 ist, und ein Blockierungssignal, wenn dieses Bit gleich O ist.
Die Vorrichtung hat außerdem ein Hilfsregister R,, welches durch die Verarbeitungseinheit UT mit den Bits geladen wird, die das Generatorpolynom der zyklischen Code-
409843/097 3
gruppe darstellen. Der Addierer mit EXCLUSIVES ODER-Verknüpfung ermöglicht das erneute Laden des Registers R^ mit den Bits/ die aus der Summierung .des Inhalts dieses Registers und des Inhalts des Hilfsregisters R, resultieren. Eine erneute Verschiebung des Inhalts des Registers R wird nun durch den Zähler C
gezählt, der in diesem Augenblick durch ein Signal gesteuert ist, welches beispielsweise aus den Auswertungseinrichtungen EV kommt, nach einer Zeit, die von der Dauer der Summieroperation abhängig ist. Die verschiedenen Informationen, die in dem Register R^ für
jeden Wert von i enthalten sind, werden in die entsprechenden Eingänge i eines Speichers M1 eingereiht. Sie können an den Ausgängen S dieses Speichers entnommen werden.
Diese Verfahren und diese Vorrichtungen zum Berechnen der zyklischen Codegruppen von Nachrichten sind bei der Übertragung von Daten in der Informatik anwendbar. Die Codegruppe wird schritthaltend nach- der Nachricht übertragen und bei dem Empfang kann dasselbe Verfahren oder dieselbe Vorrichtung für die Decodierung verwendet werden, unter der Bedingung, daß bei den verschiedenen
Verschiebungen, die durchgeführt werden, nicht nur die Anzahl der Bits der Nachricht sondern auch die Anzahl der Prüfbits gezählt wird,
die die nach der Nachricht übertragene zyklische Codegruppe bilden. Man kann auch nach der Nachricht Nullen derart anfügen, daß die Zahl der Bits der vollständigen Nachricht ein Mehrfaches von q ist. Die Decodierung führt in diesem Fall nicht mehr auf einen Rest und wird dadurch vereinfacht. In beiden Fällen zeigt das Vorhandensein eines von Null verschiedenen Restes das Vorhandensein eines Fehlers an.
Es ist'außerdem möglich, bei dem Empfang einen Vergleich zwischen den Prüfbits, die empfangen worden sind, und
409843/0923
denjenigen Bits auszuführen, die allein wieder aus den η Informationsbits der empfangenen Nachricht berechnet werden.
Eine Differenz zwischen diesen beiden Werten gibt das Vorhandensein von Fehlern an.
Die Einrichtungen zum Berechnen der zyklischen Codegruppe der Gesamtheit der Wörter und zum Berechnen der zyklischen Codegruppe der Gesamtheit der Wörter und des Restes, die zur einfacheren Darstellung unterschiedlich dargestellt worden sind, können in einer einzigen Einrichtung vereinigt sein, die in verschiedenen Augenblicken im Verlauf des Ablaufs der Operationen des Verfahrens eingreift, wodurch die Rechenvorrichtung noch vereinfacht wird.
Das erste und das zweite Verfahren ermöglichen die Berechnung der zyklischen Codegruppe von Nachrichten, die η Bits enthalten, indem die Nachrichten in Wörter mit q Bits unterteilt werden, und zwar unabhängig von den Werten von η und g und insbesondere, wenn η kein Vielfaches von q ist.
Bei dem zweiten Verfahren wird eine Speichertafel verwendet, wodurch die Berechnungen vereinfacht und be-, schleunigt werden, da die Berechnung der Tafel ein für allemal ausgeführt wird. Diese Tafel gilt einzig für ein Generatorpolynom mit gegebenem Code, und insbesondere ist sie nicht von dem Inhalt der zu übertragenden Nachricht abhängig.
Sie kann in einer der Codierung der Nachricht selbst vorangehenden Zeit berechnet werden, beispielsweise in einem Zeitpunkt, in welchem die Verarbeitungseinheit wenig belastet ist.
409843/092 3
Im Rahmen der Erfindung kann in dem Verfahren zur Berechnung der zyklischen Codegruppe, welches oben beschrieben worden ist, eine Operation durch eine äquivalente Operation ersetzt werden, und in der Rechenvorrichtung können die verwendeten Einrichtungen durch Einrichtungen ersetzt werden, welche dieselbe technische Funktion erfüllen.
409843/0923

Claims (12)

  1. 30 -
    Patentans pr ü c h e
    Λ J Verfahren zum Gewinnen der zyklischen Codegruppe einer η Informationsbits enthaltenden Nachricht, bei welchem in einem Schritt diese Nachricht durch Unterteilungseinrichtungen in eine ganze Anzahl·S von Wörtern unterteilt wird, die q Informationsbits Und einen Rest von r Informationsbits enthalten, so daß die Beziehung:
    η = sq + r
    erfüllt ist, wobei r gleich Null ist, wenn q ein Teilvielfaches von η ist, und wobei r eine von"Null verschiedene ganze Zahl ist, die kleiner als q ist, wenn q kein Teilvielfaches von η ist, und bei welchem in einem weiteren Schritt die zyklische Codegruppe der auf diese Weise unterteilten Nachricht gewönnen wird, dadurch gekennzeichnet, daß der Schritt des Gewinnens der zyklischen Codegruppe der unterteilten Nachricht umfaßt:
    - eine Phase, in welcher durch eine Recheneinrichtung Wort für Wort die zyklische Codegruppe der Gesamtheit der Wörter gewonnen wird, die nacheinander in ein Schieberegister geladen werden, und
    - eine Phase, in welcher das Vorhandensein des Restes geprüft wird,
    nach der in dem Fall, in welchem kein Rest vorhanden ist, ein Signal, daß die Prüfung negativ ist, geliefert wird, wobei dann die zyklische Codegruppe der Nachricht in dem Schieberegister enthalten ist, und
    in dem Fall, in welchem ein Rest vorhanden ist, ein Signal, daß die Prüfung positiv ist, gelie-
    409843/092 3
    fert wird/ wodurch eine Operation zum Gewinnen der zyklischen Codegruppe der Gesamtheit der Wörter und des Restes, d.h. der zyklischen Code-gruppe der Nachricht, aus der Recheneinrichtung ausgelöst wird, wobei diese zyklische Codegruppe dann am Ende dieser Operation in dem Schieberegister enthalten ist.
  2. 2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß die Phase der wortweisen Gewinnung der zyklischen Codegruppe der Gesamtheit der Wörter für ein Wort gemäß folgendem Zyklus abläuft:
    - Eine Aufeinanderfolge von q Verschiebungen des Inhalts des Schieberegisters zu dem Ausgang desselben hin,
    - nach jeder dieser Verschiebungen erfolgt die Bestimmung des Wertes des aus dem Schieberegister herauskommenden Bits, wobei dieses Bit einen Wert 0 oda: 1 hat und wobei diese Bestimmung des Wertes mit Hilfe von Auswertungseinrichtungen erfolgt,
    in dem Fall, in welchem das herauskommende Bit gleich 1 ist, durch eine Operation, in welcher eine Summenbildung mit EXCLüSIVES ODER-Verknüpfung zwischen dem Inhalt des Schieberegisters und dem Inhalt eines Hilfsregisters erfolgt, in welches die Bits geladen sind, die die Koeffizienten eines Generatorpolynoms der zyklischen Codegruppe darstellen, wobei, die aus dieser Summenbildung resultierenden Bits wieder in das Register geladen werden, dessen Inhalt erneut verschoben wird,
    in dem Fall, in welchem das herauskommende Bit 409843/09 23
    gleich O ist, dadurch, daß eine erneute Verschiebung des Inhalts des Schieberegisters ausgeführt wird, wobei dieses Register nach q Verschiebungen die zyklische Codegruppe des Wortes enthält, wobei der Zyklus in identischer Weise mit dem folgenden Wort wieder aufgenommen wird, wobei das Schieberegister vorher mit den Bits geladen worden ist, die aus einer Summenbildung mit EXCLUSIVES ODER-Verknüpfung zwischen der zyklischen Codegruppe des Wortes und den q Bits resultieren, die das folgende Wort darstellen, und wobei der Zyklus S-mal wiederholt wird, woran anschließend das Schieberegister die zyklische Codegruppe der-Gesamtheit von Wörtern enthält.
  3. 3. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß die Operation zur Gewinnung der zyklischen Codegruppe der Gesamtheit der Wörter des Restes umfaßt:
    - EiH Laden des Schieberegisters mit den Bits, die aus einer Summenbildung mit EXCLUSIVES ODER-Verknüpfung zwischen der zyklischen Codegruppe der Gesamtheit der Wörter und den r Bits, die den Rest darstellen, resultieren,
    - eine Aufeinanderfolge von r Verschiebungen des Inhalts des Schieberegisters zu dessen Ausgang hin,
    - die Bestimmung des Wertes des aus dem Schieberegister herauskommenden Bits nach jeder dieser Verschiebungen, wobei dieses Bit einen Wert 0 cder 1 hat und wobei diese Bestimmung mit Hilfe von Auswertungseinrichtungen durchgeführt wird,
    . In dem Fall, in welchem das herauskommende Bit gleich 1 ist, durch eine Operation, in welcher
    409843/09?:-!
    3ο - -
    eine Suiranenbildung mit EXCLUSIVES ODER-Verknüpfung zwischen dem Inhalt des Schieberegisters und dem Inhalt des Hilfsregister erfolgt, · wobei die aus dieser Summenbildung resultierenden Bits wieder in das Schieberegister geladen werden, dessen Inhalt erneut verschoben wird,
    . In dem Fall, in welchem das herauskommende Bit gleich O ist, durch .eine erneute Verschiebung des Inhalts'des Schieberegisters, wobei dieses Register nach diesen r Verschiebungen die zyklische Codegruppe der Gesamtheit der Wörter und des Restes enthält.
  4. 4. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß die Phase der wortweisen Gewinnung der zyklischen Codegruppe der Gesamtheit der Wörter folgende aufeinanderfolgende Operationen umfaßt:
    tön
    - In einer Speichertafel wird in der J Eintragung dieser Tafel die zyklische Codegruppe des Wortes gelesen, welches durch die in dem Schieberegister auf der Seite seines Ausganges enthaltenen und den Wert J darstellenden Bits gebildet ist,
    - eine Verschiebung des Inhalts des Schieberegisters um q Speicherplätze zu dem Ausgang des Registers hin für jedes in Verarbeitung befindliche Wort,
    - eine Summenbildung mit EXCLUSIVES ODER-Verknüpfung zwischen dem neuen Inhalt des Registers nach dieser Verschiebung und dem Inhalt der Speichertafel für das betreffende Wort, wobei die Operationen nun mit dem folgenden Wort wieder aufgenommen werden, wobei das Schieberegister vorher mit den Bits geladen worden ist, die aus einer Summenbildung mit EXCLUSIVES ODER-Verknüpfung zwischen dem vorherigen Inhalt des Schie-
    4 098 43/097 3
    beregisters und den q Bits resultierten-, die das folgende Wort darstellen, und wobei diese Operationen S-mal wiederholt werden, woran anschließend das Schieberegister die zyklische Codegruppe der Gesamtheit der Wörter enthält.
  5. 5. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß die Operation der Berechnung der zyklischen Codegruppe der Gesamtheit der Wörter und des Restes folgende aufeinanderfolgende Phasen umfaßt:
    - Ein Laden des Schieberegisters und eines Übergangsschieberegisters mit den Bits, die aus einer Summenbildung mit EXCLUSIVES ODER-Verknüpfung zwischen der zyklischen Codegruppe der Gesamtheit der innerhalb des Schieberegisters enthaltenen Wörter und der r Bits resultieren, die den Rest darstellen,
    - eine Verschiebung des Inhalts des Schieberegisters um q-r Einheiten zu dem Eingang dieses Registers hin,
    - in einer Speicherrechentafel wird in der ρ Eintragung derselben die zyklische Codegruppe des Wortes gelesen, -welches durch die q Bits gebildet wird, die in dem Schieberegister auf der Seite seines Ausgangs enthalten sind und die den Rest r aufgrund der Summieroperation, die vorangeht, berücksichtigen,
    - eine Verschiebung des Inhalts des Übergangsregisters um r Einheiten zu dem Ausgang dieses Registers hin, und
    - eine Summenbildung mit EXCLUSIVES ODER-Verknüpfung zwischen diesem letzten Inhalt des Übergangsregisters und den Bits der zyklischen Codegruppe, die die Tafel liefert, wobei die aus dieser Summieroperation re-
    409843/0923
    sultierenden Bits die zyklische Codegruppe der Gesamtheit der Wörter und des Restes darstellen, die wieder in das Schieberegister geladen werden.
  6. 6. Verfahren nach Anspruch 4 oder 5, dadurch gekennzeichnet, daß die Tafel, in welcher die zyklische Codegruppe gelesen wird, die den q Bits entspricht, welche in dem Schieberegister auf der Seite seines Ausgangs enthalten sind, gemäß folgenden Operationen erzeugt wird:
    - Eine Initialisierung des Wertes i, wobei ein Wert von i jeder Eintragung der Tafel entspricht,
    - ein Laden des Schieberegisters mit den Bits, die
    ' ten
    den Wert i für die Berechnung der i Eintragung der Tafel darstellen, wobei i folgendermaßen definiert ist:
    eine Aufeinanderfolge von q Verschiebungen des in dem Schieberegister enthaltenen Wortes zu dem Ausgang desselben hin;
    nach jeder dieser Verschiebungen erfolgt die Bestimmung des Wertes des das Schieberegister verlassenden Bits, wobei dieses Bit den Wert 0 oder
    1 hat,
    . In dem Fall, in welchem das herauskommende Bit gleich 1 ist, wird eine Summenbildung mit EXCLU-SIVES ODER-Verknüpfung zwischen dem Inhalt des Schieberegisters und dem Inhalt eines Hilfsregisters ausgeführt, welches mit den Bits geladen ist, die die Koeffizienten des Generatorpolynoms der zyklischen Codegruppe darstellen, wobei die aus dieser Summenbildung resultierenden Bits wiedein das Schieberegister geladen werden, dessen
    Inhalt erneut verschoben wird, 409843/0923
    . In dem Fall, in welchem das herauskommende Bit gleich 0 ist, wird eine erneute Verschiebung des Inhalts des Schieberegisters durchgeführt, wobei das Register nach q der vorgenannten Verschiebungen die zyklische Codegruppe des Wortes enthält, die sie am Anfang enthielt und die
    tön
    in der i ELntegung dar Speichertafel angeordnet ist, und wobei die Operationen in identischer Weise mit dem folgenden Wert i + 1 wieder aufgenommen werden, bis die 2^ * Eintragungen berechnet worden sind.
  7. 7. Vorrichtung zur Durchführung des Verfahrens nach Anspruch 1, mit:
    . - Einrichtungen zum Unterteilen der Nachricht in Wörter, die jeweils q Informationsbits und einen Rest r von Informationsbits enthalten, derart, daß die Beziehung
    η = sg + r
    erfüllt ist, wobei r Null ist, wenn q ein Teilvielfaches von η ist, und wobei r eine von Null verschiedene ganze Zahl ist, die kleiner als q ist, wenn q kein Teilvielfaches von η ist,
    - einem Schieberegister, welches mit den Ausgängen der Unterteilungseinrichtungen verbunden ist und in welches die Wörter der Nachricht nacheinander geladen werden,
    - Recheneinrichtungen, die mit den Ausgängen der Unterteilungseinrichtungen verbunden sind, und die Berechnung der zyklischen Codegruppe der unterteilten Nachricht ermöglichen,
    dadurch gekennzeichnet, daß die Recheneinrichtungen umfassen:
    409843/0923
    - Eine Einheit zum wortweisen Berechnen der zyklischen Codegruppe der Gesamtheit der Wörter, wobei diese Einheit durch Eingänge mit den Ausgängen des Schieberegisters und mit den Ausgängen der Unterteilungseinrichtungen verbunden ist,
    - Einrichtungen, die eine Prüfung des Vorhandenseins des Restes in Verbindung mit den Unterteilungseinrichtungen ermöglichen, wobei diese Prüfeinrichtungen liefern:
    . Ein negatives Prüfsignal in dem Fall, in welchem kein Rest vorhanden ist; die zyklische Codegruppe der Gesamtheit der Wörter wird dann in das Schieberegister geladen,
    - ein positives Prüfsignal in dem Fall, in welchem ein Rest vorhanden ist, wobei dieses Signal eine zweite Einheit zur Berechnung der zyklischen Codegruppe der Gesamtheit der Wörter und des Restes steuert, die mit den Ausgängen der Unterteilungseinrichtungen und mit den Ausgängen des Schieberegisters verbunden ist.
  8. 8. Vorrichtung ' nach Anspruch 7, dadurch gekennzeichnet, daß die Einheit zum wortweisen Berechnen der zyklischen Codegruppe der Gesamtheit der Wörter der Nachricht umfaßt:
    - Einrichtungen, mittels welchen der Inhalt des Schieberegisters q-mal zu dem Ausgang desselben hin verschoben werden kann,
    - erste Einrichtungen zur Auswertung des Wertes des aus dem Schieberegister herauskommenden Bits, welches irgendeinen der Werte 0 und 1 hat, wobei diese Auswertungseinrichtungen an jeder Verschiebung beteiligt
    409843/Q923
    8 -
    sind und ein Freigabesignal in dem Fall liefern, in welchem das herauskommende Bit gleich 1 -ist, und ein Blockierungssignal in dem Fall liefern, in welchem das herauskommende Bit gleich 0 ist,
    ein Hilfsregister, welches mit den Bits.geladen ist, die die Koeffizienten des Generatorpolynoms der zyklischen Codegruppe darstellen,
    eine erste Summiereinrichtung mit EXCLUSIVES ODER-Verknüpfung, deren Eingänge einerseits mit den Ausgängen des Schieberegisters und andererseits mit den Ausgängen des Hilfsregisters verbunden sind und dessen Ausgänge derart mit den Eingängen .des Schieberegisters verbunden sind, daß, wenn die Auswertungseinrichtungen ein Freigabesignal liefern, ein Laden des Schieberegisters mit den Bits erfolgt, die aus' der Summenbildung mit EXCLUSIVES ODER-Verknüpfung zwischen dem Inhalt des Schieberegisters und dem Inhalt des Hilfsregisters vor einer erneuten Verschiebung resultieren, und daß eine direkte Verschiebung des Inhalts des Schieberegisters erfolgt, wenn die Auswertungseinrichtungen ein Blockierungssignal liefern;
    eine zweite Summiereinrichtung mit EXCLUSIVES ODER-Verknüpfüng, deren Eingänge einerseits mit den Ausgängen des Schieberegisters und andererseits mit den Ausgängen der Unterteilungseinrichtungen -verbunden sind und deren Ausgänge mit den Eingängen des Schieberegisters verbunden sind und ein Freigabesignal am Anfang jedes Wortes empfangen, so daß das Schieberegister mit den Bits geladen wird, die aus einer Summenbildung mit EXCLUSIVES ODER-Verknüpfung zwischen den Bits, die das Wort darstellen, und den Bits der zyklischen Codegruppe des vorhergehenden Wortes resultieren.
    409843/0973
  9. 9. Vorrichtung nach Anspruch 7, dadurch gekennzeichnet, daß die Einheit zur Berechnung der zyklischen Codegruppe der Gesamtheit der Wörter und des Restes umfaßt:
    - eine dritte Summiereinrichtung mit EXCLUSIVES ODER-Verknüpfung, deren Eingänge einerseits mit den Ausgängen des Schieberegisters und andererseits mit den Ausgängen der Leseeinrichtungen verbunden sind, wobei die dritte Summiereinrichtung am Ende der Berechnung der zyklischen Codegruppe der Gesamtheit von S Wörtern derart freigegeben wird, daß das Laden des Schieberegisters mit den Bits ermöglicht wird, die aus einer Summenbildung mit EXCLUSIVES ODER-Verknüpfung zwisehen den Bits, die die zyklische Codegruppe der Gesamtheit der Wörter darstellen, und den Bits resultieren,die den Rest darstellen,
    - Einrichtungen, mittels welchen der Inhalt des Schieberegisters r-mal zu dem Ausgang desselben hin verschoben werden kann,
    - zweite Einrichtungen zum Auswerten des Wertes des aus dem Schieberegister herauskommenden Bits, welches irgendeinen der Werte 0 und 1 hat, wobei die zweiten Auswertungseinrichtungen an jeder Verschiebung beteiligt sind und in dem Fall, in welchem das herauskommende Bit gleich 1 ist, ein Freigabesignal liefern, und in dem Fall, in welchem das herauskommende Bit gleich 0 ist, ein Blockierungssignal liefern,
    - Ein Hilfsregister, welches mit den Bits geladen ist, die die Koeffizienten des Generatorpolyhoms der zyklischen Codegruppe darstellen, und
    409843/0973
    - eine vierte Summiereinrichtung mit EXCLÜSIVES ODER-Verknüpfung, deren Eingänge einerseits mit den Ausgängen des Schieberegisters und andererseits mit den Ausgängen des Hilfsregisters verbunden sind und deren Ausgänge mit den Eingängen des Schieberegisters derart verbunden sind, daß, wenn die Auswertungseinrichtungen ein Freigabesignal liefern, ein Laden des Schieberegisters mit den Bits erfolgt, die aus der Summenbildung mit EXCLÜSIVES ODER-Verknüpfung zwischen dem Inhalt des Schieberegisters und dem Inhalt des Hilfsregisters vor einer neuen Verschiebung resultieren, und daß eine direkte Verschiebung des Inhalts des Schieberegisters erfolgt, wenn die zweiten Auswertungseinrichtungen ein Blockierungssignal liefern, wobei das Schieberegister nach r Verschiebungen die zyklische Codegruppe der Gesamtheit der Wörter und des Restes enthält.
  10. 10. Vorrichtung nach Anspruch 7, dadurch gekennzeichnet, daß die Einheit zum wortweisen Berechnen der zyklischen Codegruppe der Gesamtheit der Wörter der Nachricht umfaßt:
    - eine Speicherrechentafel, die mit den Ausgängen des Schieberegisters verbunden ist und in welcher die zyklischen Codegruppen sämtlicher Wörter aus q Bits, die in dem Schieberegister auf der Seite von dessen Ausgang vorhanden sein können, im voraus berechnet und gespeichert worden sind,
    - Einrichtungen zum Verschieben des Inhalts des Schieberegisters um g Einheiten zu dem Ausgang dieses
    . Registers hin für jedes Wort,
    409843/097 3
    - eine erste Summiereinrichtung mit EXCLUSIVES ODER-Verknüpfung, die einerseits mit den Ausgängen des Schieberegisters und andererseits mit den Ausgängen der Speicherrechentafel verbunden ist und die Durchführung einer ersten Summenbildung mit EXCLUSIVES ODER-Verknüpfung zwischen dem Inhalt des Registers nach der Verschiebung um q.Einheiten und cbn Bits ermöglicht, die die zyklische Codegruppe darstellen, von dar Tafel geliefert werden und das in Verarbeitung befindliche Wort betreffen, wobei das Ergebnis dieser Summierung wieder in das Schieberegister geladen wird, und
    - eine zweite Summiereinrichtung mit EXCLUSIVES ODER-Verknüpfung,.die einerseits mit den Ausgängen der Lese- und Unterteilungseinrichtung und andererseits mit den Ausgängen des Schieberegisters verbunden ist und das erneute Laden dieses Registers mit den Binärelementen ermöglicht, die aus einer zweiten Summenbildung mit EXCLUSIVES ODER-Verknüpfung zwischen den Bits, die nach der ersten Summierung erhalten werden, und den Bits resultieren, die das Wort nach dem in Verarbeitung befindlichen Wort darstellen, wobei das Schieberegister die zyklische Codegruppe der Gesamtheit der Wörter enthält, wenn die Summiereinrichtungen S-mal freigegeben worden sind, und wobei die letzte Freigabe die Einrichtungen zum Prüfen des Vorhandenseins des Restes auslöst.
  11. 11. Vorrichtung nach Anspruch 7, dadurch gekennzeichnet, daß die Einheit zur Berechnung der zyklischen Codegruppe der Gesamtheit der Wörter und des Restes umfaßt:
    - eine dritte Summiereinrichtung mit EXCLUSIVES ODER-
    409843/0923
    Verknüpfung, die einerseits mit den Ausgängen des Schieberegisters und andererseits mit den Ausgängen der Lese- und Unterteilungseinrichtungen verbunden ist und deren Ausgänge mit den Eingängen des Schieberegisters derart verbunden sind, daß dieses Register wieder mit den Bits geladen wird, die aus einer Summenbildung mit EXCLUSIVES ODER-Verknüpfung zwischen den Bits, welche die zyklische Codegruppe der in dem Schieberegister enthaltenen Wörter darstellen, und den r Bits resultieren, die den Rest darstellen,
    ein Übergangsregister, welches mit den Ausgängen der dritten Summiereinrichtung verbunden und mit den Bits geladen ist, die aus der genannten Summenbildung resultieren,
    Einrichtungen, mittels welchen q-r Verschiebungen des Inhalts des Schieberegisters zu dem Eingang desselben hin ausgeführt werden können,
    eine Speicherrechentafel, die mit den Ausgängen des
    te Schieberegisters verbunden ist, und deren ρ Eintragung die zyklische Codegruppe der q Bits enthält, die in dem Schieberegister auf der Seite von dessen Ausgang enthalten sind, wobei diese q Bits durch die genannte Summenbildung an den Rest gebunden sind,
    Einrichtungen, mittels welchen r Verschiebungen des Inhalts des Übergangsregisters zu dem Ausgang desselben hin ausgeführt werden können,
    eine vierte Summiereinrichtung mit EXCLUSIVES ODER-Verknüpfung, die einerseits mit den Ausgängen des Übergangsregisters und andererseits mit einem Ausgang der Rechentafel, der der ρ n Eintragung ent-
    409843/0923
    spricht, verbunden ist, wobei die Ausgänge der vierten Summiereinrichtung mit den Eingängen des Schieberegisters derart verbunden sind, daß dieses Register mit den Bits geladen wird, die die zyklische Codegruppe der Gesamtheit der Wörter und des Restes darstellen.
  12. 12. Vorrichtung nach Anspruch 10 oder 11, dadurch gekennzeichnet, daß die Tafel, die das Berechnen und Speichern der zyklischen Codegruppen, die sämtlichen Werten von entsprechen, welche aufeinanderfolgend auf der Seite des Ausgangs des Schieberegisters in dasselbe geladen werden, in aufeinanderfolgenden Gruppen von g Bits ermöglicht, aufweist:
    - Einrichtungen, die für jeden Wert von i das Ausführen von q aufeinanderfolgenden Verschiebungen des Inhalts des Schieberegisters ermöglichen,
    - Einrichtungen zum Prüfen des Wertes des bei jeder der q Verschiebungen aus dem Schieberegister herauskommenden Bits, welches den Wert 0 oder 1 hat, wobei die Prüfeinrichtungen ein Freigabesignal liefern, wenn dieses herauskommende Bit gleich 1 ist, und ein Blockiersignal liefern, wenn dieses Bit gleich 0 ist,
    - ein Hilfsregister, welches mit den Bits geladen ist, die die Koeffizienten des Generatorpolynoms der zyklischen Codegruppe darstellen,
    - eine Summiereinrichtung mit EXCLUSIVES ODER-Verknüpfung, die einerseits mit den Ausgängen des Schieberegisters und andererseits mit den Ausgängen des Hilfsregisters verbunden ist und deren Ausgänge mit den Eingängen des Schieberegisters derart verbunden sind, daß, wenn diese Summiereinrichtung
    409843/097 3
    ein Freigabesignal empfängt, das Schieberegister wieder mit den Bits geladen wird, die aus einer Summenbildung mit EXCLUSIVES ODER-Verknüpfung zwischen dem Inhalt dieses Registers und dem Inhalt des Hilfsregisters vor jeder erneuten Verschiebung resultieren, und daß eine direkte Verschiebung des Inhalts des Schieberegisters ohne Summieroperation in dem Fall ausgeführt wird, in welchem die Summiereinrichtung ein Blockierungssignal empfängt, wobei das Schieberegister nach q Verschiebungsoperationen die seinen· Anfangsinhalt darstellende zyklische Codegruppe enthält, und
    einen Speicher, in welchem die auf diese Weise für jeden Wert von i erhaltenen zyklischen Codegruppen in entsprechenden Eintragungen angeordnet sind.
    409843/0973
DE19742417932 1973-04-13 1974-04-11 Verfahren und vorrichtung zum gewinnen der zyklischen codegruppe einer binaeren nachricht Ceased DE2417932A1 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
FR7313501A FR2225890B1 (de) 1973-04-13 1973-04-13

Publications (1)

Publication Number Publication Date
DE2417932A1 true DE2417932A1 (de) 1974-10-24

Family

ID=9117948

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19742417932 Ceased DE2417932A1 (de) 1973-04-13 1974-04-11 Verfahren und vorrichtung zum gewinnen der zyklischen codegruppe einer binaeren nachricht

Country Status (8)

Country Link
US (1) US3893078A (de)
JP (1) JPS5723471B2 (de)
BR (1) BR7402775D0 (de)
DE (1) DE2417932A1 (de)
ES (1) ES424914A1 (de)
FR (1) FR2225890B1 (de)
GB (1) GB1440165A (de)
IT (1) IT1014588B (de)

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS4974918A (de) * 1972-11-17 1974-07-19
JPS5832421B2 (ja) * 1976-09-10 1983-07-13 株式会社日立製作所 フイ−ドバツクシフトレジスタ
JPS5515685U (de) * 1978-07-18 1980-01-31
JPS55163621A (en) * 1979-06-08 1980-12-19 Hitachi Ltd Composite type magnetic head
US4422148A (en) * 1979-10-30 1983-12-20 Pitney Bowes Inc. Electronic postage meter having plural computing systems
US4525785A (en) * 1979-10-30 1985-06-25 Pitney Bowes Inc. Electronic postage meter having plural computing system
US4498187A (en) * 1979-10-30 1985-02-05 Pitney Bowes Inc. Electronic postage meter having plural computing systems
US4301507A (en) * 1979-10-30 1981-11-17 Pitney Bowes Inc. Electronic postage meter having plural computing systems
JPS58212613A (ja) * 1982-06-03 1983-12-10 Mitsubishi Electric Corp 複合形薄膜磁気ヘツド
JPS58212614A (ja) * 1982-06-03 1983-12-10 Mitsubishi Electric Corp 複合形薄膜磁気ヘツド
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
JPH02312004A (ja) * 1989-05-26 1990-12-27 Sharp Corp 磁気ヘツド
JPH03272224A (ja) * 1990-03-20 1991-12-03 Canon Inc 情報信号処理方法
US5428629A (en) * 1990-11-01 1995-06-27 Motorola, Inc. Error check code recomputation method time independent of message length
GB2322526A (en) * 1997-02-22 1998-08-26 The Technology Partnership Plc Encoding and decoding data
US6694476B1 (en) * 2000-06-02 2004-02-17 Vitesse Semiconductor Corporation Reed-solomon encoder and decoder

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3805232A (en) * 1972-01-24 1974-04-16 Honeywell Inf Systems Encoder/decoder for code words of variable length
US3821703A (en) * 1972-12-26 1974-06-28 Ibm Signal transferring

Also Published As

Publication number Publication date
BR7402775D0 (pt) 1974-11-05
FR2225890A1 (de) 1974-11-08
FR2225890B1 (de) 1976-09-10
ES424914A1 (es) 1976-06-01
GB1440165A (en) 1976-06-23
JPS5028249A (de) 1975-03-22
JPS5723471B2 (de) 1982-05-19
US3893078A (en) 1975-07-01
IT1014588B (it) 1977-04-30

Similar Documents

Publication Publication Date Title
DE2417932A1 (de) Verfahren und vorrichtung zum gewinnen der zyklischen codegruppe einer binaeren nachricht
EP0079471B1 (de) Schaltungsanordnung und Verfahren zur Bildung von Skalarprodukten und Summen von Gleitkommazahlen mit maximaler Genauigkeit
DE2418653C3 (de) Vorrichtung zum Anzeigen eines Extremwertes einer Folge von Digitalwerten
DE1549476C3 (de) Anordnung zur Ausführung von Divisionen
DE2523860C3 (de) Vorrichtung zur digitalen, linearen Interpolation einer fabulierten Funktion
DE2712224A1 (de) Datenverarbeitungsanlage
DE1162111B (de) Gleitkomma-Recheneinrichtung
DE2405858A1 (de) Normalisierendes verschiebezaehlernetzwerk
DE4019646C2 (de) Vorrichtung und Verfahren zum Multiplizieren von Datenwörtern in Zweier-Komplement-Darstellung
DE3507605A1 (de) Schleifensteuersystem fuer digitale verarbeitungseinrichtungen
DE2203143B2 (de) Rechenanordnung zum Dividieren von Dezimalzahlen
DE10219161A1 (de) Vorrichtung und Verfahren zum Umrechnen eines Terms
DE1549485C3 (de) Anordnung zur Division binärer Operanden ohne Rückstellung des Restes
DE1234055B (de) Anordnung zur Addition oder Subtraktion
DE2300505A1 (de) Vorrichtung zur schwellwertdecodierung
DE2539245C2 (de)
DE1915493C3 (de) Schaltung für Multiplikation nach dem Prinzip der fortgesetzten, stellenversetzten Addition
DE2063565C3 (de) Verfahren und Vorrichtung zur Umwandlung von in einem Code m aus n auftretenden Eingangssignalen in normale binär codierte Eingangssignale
DE1958662A1 (de) Digitaler Impulsfolgenteiler mit optimaler Gleichverteilung der aus einer aequidistanten Eingangsimpulsfolge ausgewaehlten Impulse einer Ausgangsimpulsfolge
DE1524178C3 (de) Vorrichtung zum Umsetzen einer Ausgangszahl, die in einer ersten Basis ausgedrückt ist in eine Ergebniszahl, die in einer zweiten größeren Basis ausgedrückt ist
DE102019211829A1 (de) Recheneinheit, Verfahren und Computerprogramm zur Multiplikation
DE2150853C3 (de) Divisions-Vorrichtung für ein serielles Vier-Spezies-Rechenwerk
DE3030438C2 (de)
DE1549477C (de) Einrichtung zur schnellen Akkumulation einer Anzahl mehrstelliger binarer Operan den
DE1035943B (de) Einrichtung zur Konvertierung von Dezimalzahlen in Binaerzahlen oder umgekehrt

Legal Events

Date Code Title Description
OGA New person/name/address of the applicant
8110 Request for examination paragraph 44
8131 Rejection