DE1295245B - Vorrichtung zur Pruefzeichenberechnung oder zur Addition von Quotienten im Zahlensystem der Restklassen - Google Patents

Vorrichtung zur Pruefzeichenberechnung oder zur Addition von Quotienten im Zahlensystem der Restklassen

Info

Publication number
DE1295245B
DE1295245B DE1964P0034886 DEP0034886A DE1295245B DE 1295245 B DE1295245 B DE 1295245B DE 1964P0034886 DE1964P0034886 DE 1964P0034886 DE P0034886 A DEP0034886 A DE P0034886A DE 1295245 B DE1295245 B DE 1295245B
Authority
DE
Germany
Prior art keywords
counter
divisor
factor
memory
character
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.)
Pending
Application number
DE1964P0034886
Other languages
English (en)
Inventor
Dipl-Math Gerhard
Renelt
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.)
Philips Intellectual Property and Standards GmbH
Original Assignee
Philips Patentverwaltung GmbH
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 Philips Patentverwaltung GmbH filed Critical Philips Patentverwaltung GmbH
Priority to DE1964P0034886 priority Critical patent/DE1295245B/de
Publication of DE1295245B publication Critical patent/DE1295245B/de
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1008Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
    • G06F11/1012Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices using codes or arrangements adapted for a specific type of error
    • G06F11/104Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices using codes or arrangements adapted for a specific type of error using arithmetic codes, i.e. codes which are preserved during operation, e.g. modulo 9 or 11 check

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Detection And Correction Of Errors (AREA)

Description

  • Die Erfindung bezieht sich auf eine Vorrichtung zur Prüfzeichenberechnung oder zur Addition von aus ganzen Zahlen eines Restklassensystems gebildeten Quotienten aus Dividendenfaktoren f1 und B und einem Divisor D zu einer vorgegebenen ganzen Zahl, wobei eine direkte oder über Speicher codierte Eingabe für den einen Faktor A des Dividenden und den Divisor D vorgesehen ist, die an mod-M-Zähler liegen, und wobei für die Prüfzeichenberechnung der Dividendenfaktor A einem Zeichen der abzusichernden Zeichenfolge und der Dividendenfaktor B einem frei wählbaren Faktor bzw. umgekehrt entsprechen und der Divisor D dem Kehrwert des Gewichtes des jeweiligen Zeichens entspricht.
  • Zum Schutz gegen Fehler, wie sie besonders bei der Eingabe, Ubertragung oder Verarbeitung von Daten entstehen, ist es üblich, die Information in Blöcke einzuteilen und jedem Informationsblock einen Prüfteil hinzuzufügen. Der Prüfteil besteht dabei aus Prüfzeichen, welche zweckmäßigerweise aus Linearkombinationen der einzelnen Zeichen des Informationsblocks gewonnen werden. Sinnvollerweise wird dabei jedem Zeichen, insbesondere auch den Buchstaben oder allgemein nicht numerischen Zeichen eine Ziffer aus einem Restklassensystem zugeordnet. Durch die Verwendung eines Restklassensystems modulo einer ganzen Zahl M wird gleichzeitig eine entsprechende Begrenzung der möglichen Werte für jedes Prüfzeichen erreicht. Jede Linearkombination läßt sich dann derart darstellen, daß jede Prüfziffer k, im Restklassensystem durch eine gewichtete Quersumme erhalten wird, wobei die Gewichte G, auch von der Stelle ,p der einzelnen Zeichen im Block abhängen.
  • Die Wirksamkeit der mit den Prüfzeichen erreichten Absicherung ist dabei wesentlich von der richtigen Wahl der Gewichte abhängig. Es ist bereits eine optimale Absicherung der Informationsziffern a1, a, . . . «i mit den Prüfziffern k1, k, . . . kp,: wobei die Gesamtblocklänge i + p bis zu M + 1 Zeichen betragen kann, vorgeschlagen worden, wenn die Gewichte G.." wie folgt gewählt werden: Während sich das erste Prüfzeichen aus der einfachen Quersumme ergibt, werden also alle weiteren aus Quotientensummen gewonnen, insbesondere erhält man das zweite Prüfzeichen aus das dritte aus Die Brüche lassen sich zwar in jedem Restklassensystem modulo einer Primzahl M wieder durch ganze Zahlen ausdrücken, die dadurch gefunden werden können, daß man aus der Folge 1, 1 + hl, 1 +2M, 1 + 3 M . . . eine Zahl auswählt, die durch !, teilbar ist und mit dieser den Quotienten bildet. Beispielsweise erhält man im Restklassensystem modulo 11 so die Werte 1j2=(1+11):2=_6, 1/3=(1+11):3=.J, 1;4(1+11):4=_3. 1/5=(1+44):5 = 9 USW. Bei den letzteren sowie bei allen folgenden Zahlenwertgleichungen ist das »mod 11« der Einfachheit halber weggelassen worden, da die Zahlenbeispiele nur in dem Restklassensystem modulo 11 arbeiten.
  • Die entstehende Gewichtsfolge (hier 1. 6, 4, 3, 9 ... ) läßt aber das einfache Bildungsgesetz nicht mehr unmittelbar erkennen, so claß für diesen Fall bisher eine explizite Speicherung der verschiedenen Gewichte notwendig erschien.
  • Im allgemeinen Fall dieses optimalen Absicherungssystems können die Summanden mit je einem frei wählbaren Faktor multipliziert werden, so daß die Dividenden der Summanden aus Faktoren bestehen.
  • Bei einigen bekannten Vorrichtungen zur Realisierung von Absicherungssystemen gelangen die abzusichernden Informationszeichen einzeln nacheinander in einen einstellbaren Multiplikator mit nachgeschalteter Aufsummierungsvorrichtung für die entstehenden Produkte, wobei für jede Stelle eine Neueinstellung des Multiplikators gemäß dem dieser Stelle zugeordneten Gewichtsfaktor G,," erfolgen muß.
  • Es ist jedoch auch bereits eine Vorrichtung bekannt, die ein Prüfzeichen ohne Speicherung der einzelnen Gewichte nach einem rekursiven Verfahren berechnet. Bei dieser Vorrichtung werden die Prüfzeichen jedoch nach einem ganz anderen mathematischen Gesetz gebildet, wodurch sich andere Absicherungseigenschaften ergeben und auch eine Berechnung mehrerer verschiedener Prüfzeichen für ein optimales Absicherungssystem nicht ohne weiteres möglich ist.
  • Aufgabe der Erfindung ist es, eine Vorrichtung anzugeben, mittels der auf einfache Weise Quotienten aus Dividendenfaktoren und einem Divisor gebildet und aufsummiert werden können, und das besonders günstig für die Berechnung von Prüfziffern benutzt werden kann.
  • Die Erfindung löst diese Aufgabe dadurch, daß der eine Zähler zunächst die anfangs vorgegebene Zahl und nach der Beendigung des Hinzuzählens das Ergebnis enthält, wobei der Inhalt des Faktorspeichers zum Inhalt des Zählers addierbar und der Inhalt des Divisorspeichers zum Inhalt des anderen Zählers addierbar sind, und beide Zähler so viele Male die Addition wiederholen, bis der vor Beginn der Additionen sich in einer Grundstellung befindliche Divisorzähler nach einer der wiederholten Additionen einen Zählerstand erreicht hat, dessen Differenzwert bezüglich der anfänglichen Grundstellung gleich dem Wert des anderen Faktors des Dividenden ist.
  • Weiterbildungen der Erfindung sind in den Unteransprüchen gekennzeichnet. .
  • Die Quotientenbildung wird also auf eine Multiplikation zurückgeführt, die wiederum aus der wiederholten Addition besteht, wie am folgenden Beispiel erläutert werden soll: Der Divisorzähler Z" habe k mal den Inhalt des Divisorspeichers (SP"), d. h. also den Wert D, addiert und damit den Zählerstand B (Wert des Faktors B) erreicht k-D --°BmodAl.
  • Dann gilt für den anderen Zähler (Z,) und seinen Zählerstand X zu diesem Zeitpunkt: k-fl==XmodA1. Wenn hier k aus der oberen Gleichung eingesetzt wird, ergibt sich so daß also der Zählerstand des Zählers (Z,) auf diese Weise den gesuchten Quotienten angibt, wenn der Zähler (Z,) den gesamten Vorgang mit der Nullstellung beginnt. Falls der Zähler (Z,) jedoch zu Beginn bereits die vorgegebene Zahl S enthält, gibt seine Zählerstellung nach dem beschriebenen Vorgang automatisch die Summe aus der vorgegebenen Zahl S und dem gesuchten Quotienten an, da die Zähler nur addierend bzw. nur feste Schritte weiterzählend arbeiten.
  • Jedes Prüfzeichen des Systems (2) kann durch ein solches Ausführungsbeispiel gewonnen werden. Es ist ein Vorteil der Erfindung, daß sich durch sie eine beliebige Anzahl p von Prüfzeichen in einem beliebigen Restklassensystem (modulo einer Primzahl M) in einfacher Weise herstellen lassen. Insbesondere wird damit auch die technische Realisierung von Optimalsystemen (2) mit höherer Basiszahl A'1 und größerer Blocklänge (bis M -1- 1) möglich, die wegen des hohen Aufwandes der Praxis bisher nicht zugänglich waren. Dies ist um so wichtiger, weil Bekannterweise das Verhältnis von erkannten zu unerkannten Fehlern bei einem Optimalsystem gemäß MP ansteigt, so daß also dann bereits mit relativ wenig Prüfzeichen praktisch alle Fehler erkannt werden, ohne daß - - wie sonst üblich einschränkende Annahmen über die Verteilung der auftretenden Fehler gemacht werden müssen. Auch ist es bei Zahlensystemen mit höherer Basiszahl in größerem Maße möglich, die Zeichen des Zahlensystems aus Unterzeichen zusammenzusetzen. Es können dann nicht nur etwa mehr Binärstellen zu einem neuen Zeichen zusammengesetzt werden, sondern es ist beispielsweise bei einer Basis M 100 (etwa M = 101 oder M = 127) auch möglich, die Informationszeichen aus je zwei Dezimalziffern zu bilden. Eine solche Untercodierung hat zudem den Vorteil, daß beim Auftreten von Bündelstörungen dann nur ein oder wenige Gesamtzeichen betroffen sind, so daß diese Fehler mit einem Optimalsystem damit um so sicherer erkannt werden.
  • Ausführungsbeispiele der Erfindung werden nachfolgend an Hand der F i g. 1 bis 8 näher erläutert. Ein einfaches Blockschaltbild der wesentlichen Bestandteile zeigt F i g. 1. Die Vorrichtung möge in ihrer Wirkungsweise an einigen Beispielen erläutert werden. Es sei der Quotient 7 : 3 im Restklassensystem modulo 11 zu bilden. Hierzu bringt man die Zahlen beispielsweise mit Hilfe eines Impulsgebers durch entsprechende Impulsfolgen in die vorgesehenen Plätze, etwa den Faktor A = 7 in den Faktorspeicher SPA und den Divisor D = 3 in den Divisorspeicher SP", während die modulo-M-Zähler Z, und Z" auf Null gestellt werden (vorgegebene Zahl S = 0). Es wird dann A = 7 so lange im Ergebniszähler Z, und gleichzeitig D = 3 so lange im Divisorzähler Z" aufsummiert, bis der Inhalt des Zählers Z" mit dem Inhalt des Vergleichers VGLB übereinstimmt, der in unserem Fall den Wert B = 1 enthalten möge, d. h. also, bis der Zähler Z" den Wert 1 erreicht hat. Der Reihe nach ergeben sich so die folgenden Zählerstände: Zs=0+7, Z"=0+3=3; Z,=7+7=3, Z"=3+3=6; Z,=3+7=10,Z"=6+3=9; Z, = 10+7 = 6, Z" = 9+3 = 1. Der gesuchte Quotient 7: 3 = 6 kann dann aus dem Ergebniszähler Z, entnommen werden. Wie man sich leicht überzeugt wird die Gleichung (7:3)-3=6-3=7mod11 vom Ergebnis erfüllt. Soll anschließend der Quotient 4:9 hinzuaddiert werden, so erhält man mit A = 4 und D = 9, nachdem der Zähler Z" auf Null zurückgestellt wurde, anschließend folgende Zählerstände: Z,=6+4= 10, Z"=0+9=9; Z,=0+4=3, Z"=9+9=7; Zs=3+4=7,Z"=7+y=5; Zs=7+4=0, Z"=5+9=3; Zs=0+4=4, Z"=3+9= 1. Man erhält also im Restklassensystem mod 11 das Ergebnis 7/3 + 4/9 = 4, was mit 25/9 = 4 oder 25 = 4 - 9 mod 11 verifiziert werden kann. In der gleichen Weise können anschließend weitere Quotienten aufaddiert werden.
  • Eine andere Bestimmungsmöglichkeit für die Quotienten ist bei anderer Aufteilung der Dividendenfaktoren gegeben. Mit den Faktoren A = 1 und B = 7 sowie dem Divisor D = 3 erhält man ein Ausführungsbeispiel, bei dem der Inhalt D = 3 des Speichers SP, so oft im Zähler Z" aufaddiert wird, bis sich der Zählerstand um B = 7 Schritte erhöht hat. Bei einem Anfangszustand Z" = 0 kann wieder die Ubereinstimmung mit einem Vergleicher, in dem jetzt der Wert B = 7 steht, als Kriterium hierfür herangezogen werden. Statt dessen können aber die Additionen auch beim Erreichen des Zählerstandes Z" = 0 beendet werden, wenn die Anfangsstellung des Zählers einfach durch das M-Komplement des Dividendenfaktors B eingestellt wird: Z" = M - B. Da bei jeder Addition im Zähler Zs hier nur jeweils eine 1 zu addieren ist, kann bei dieser Anordnung der Faktorspeicher SP., auch entfallen (F i g. 2). Mit diesem Ausführungsbeispiel ergeben sich folgende Zählerstände (Anfangswerte Z, = 0, Z" = 11 - 7 = 4): Z,= 1, Z"=4+3=7; Zs=2,Z"=7+3=10; Zs=3,Z"=10+3=2; Z, =4, Z" =5; Zs=5, Z" =8, Zs=b, Z" =0. Das Ergebnis ist natürlich das gleiche. Wird anschließend der Quotient 4:9 aufsummiert, so werden mit A = 1, B = 4, D = 9 (Anfangswert Z" = 11 - 4 = 7) dann folgende Zählerstände eingenommen: Z,7, Z"=7+9=5; Z,8, Z"=5+9=3; Z,9, Z"=3+9= 1; Z, = 10, Z" = 10; Z, = 0, Z" = 8; Z,= I, Z" =6;Zs=2,Z"=4; Z,=3, Z"=2; Z,=4_, Zn =0. Schließlich möge dieses Resultat noch mit einem Ausführungsbeispiel aus dem Quotienten 25:9 gewonnen werden, bei dem die Faktoren A = 5 und B = 5 und der Divisor D = 9 eingegeben werden. Mit den Zähleranfangsständen Zs = () und Z" = 11 - 5 = 6 folgen dann die Zählerstände: Z,=0+5=5, Z"=6+9=4; ZS=5+5=10,Z"=4+9=2; Zs= 10+5=4, Z"=2+9=0.
  • Es sei an dieser Stelle angemerkt, daß mit den beschriebenen Ausführungsbeispielen in jedem Restklassensystem inodulo einer Primzahl M eindeutige Quotientenwerte für alle möglichen Zahlen gewonnen werden. Die Zahl der notwendigen Additionen in jedem Zähler beträgt dabei höchstens M - 1, wie man durch Aufstellung einer Multiplikationstabelle leicht erkennen kann. Die Division durch den Divisor 0 mod M muß hierbei selbstverständlich ausgeschlossen werden. Ist M keine Primzahl, so ist zur Gewinnung eindeutiger Quotientenwerte zu fordern, daß der Divisor D teilerfremd zu Al ist.
  • Im allgemeinen können in das beschriebene Ausführungsbeispiel bis zu drei Ziffernfolgen A", BI" D,, eingegeben werden. Mit dem Anfangswert 0 entsteht dann im Ergebniszähler Zs die Summe aus den Quotienten A" - B,: D".
  • In dem für die Anwendung besonders wichtigen Fall der Prüfzeichenbestimmung gemäß den Gleichungen (2a) oder (2b) usw. genügt jedoch die Eingabe einer Ziffernfolge, nämlich die der abzusichernden Information. Diese liefert die Dividenden, denn der zweite Dividendenfaktor läßt sich hier konstant zu 1 wählen. Der jeweils benötigte Divisor D kann in dem Ausführungsbeispiel in einfacher Weise selbst erzeugt werden, indem nach Einarbeitung jedes Quotienten und vor Einlauf der nächsten 'ZitTer der Inhalt des Speichers SPI, um 1 erhöht wird. Dies läßt sieh bei einem Ausführungsbeispiel gemäß Beispiel 1 in einfacher Weise dadurch erreichen, daß nach Beendigung der Quotientenbildung der Inhalt des Divisorspeichers SPI, noch einmal zu dem Zählerstand Z1, der hier ja 1 beträgt, hinzuaddiert und das Resultat unter Nullsetzung dieses Zählers in den Speicher S11, zurückgegeben wird. Eine andere einfache Ausführung erhält man dafür, wenn als Speicher S11, ebenfalls ein Zähler verwendet wird, der sich dann leicht um einen Schritt weiterschalten läßt. Dies gilt besonders auch bei elektronischer Ausführung des Ausführungsbeispiels mit aus Flip-Flops aufgebauten Speichern und Zählern.
  • Ein Ausführungsbeispiel zur Realisierung eines Systems nach Gleichung (2) mit vier Prüfzeichen, die in paralleler Arbeitsweise hergestellt werden. zeigt F i g. 3. Dabei genügt ein Faktorspeicher SPA zur Aufnahme des gerade zu verarbeitenden Zeichens a" für alle Prüfzeichen. Vor jedem Arbeitsabschnitt, d. h. beim Ubergang zum nächsten zu verarbeitenden Zeichen a"+1 werden alle Divisorzähler Z" auf 0 gestellt und die Inhalte der Divisorspeicher SPD um 1 erhöht. Ein Arbeitsabschnitt ist beendet, wenn alle Zähler Z, gemäß B = 1 auf 1 stehen. Die Anfangswerte für das erste Zeichen im Block sind SPI,2 = 1, SP"3 = 2, SPD4 = 3 und alle Zs = 0. Im Ergebniszähler Zsl wird gemäß der einfachen Quersumme in jedem Arbeitsabschnitt immer nur eine Addition ausgeführt, so daß für diesen der andere Zähler entfallen kann. Natürlich ist es aber genauso auch bei den folgenden Ausführungsbeispielen möglich, die Steuerung in gleicher Weise mit einem Speicher SPI,I Inlt konstantem Inhalt 1 vorzunehmen. Ein gleichwertiges Ausführungsbeispiel mit paralleler Arbeitsweise, bei dem der andere Dividendenfaktor A = 1 gesetzt ist, zeigt F i g. 4. Im Gegensatz zu dem Ausführungsbeispiel von F i g. 3 werden hier am Beginn jedes Arbeitsabschnitts die Zähler Z" auf den Komplementwert des zu verarbeitenden Zeichens: M - a" eingestellt und ist der Arbeitsabschnitt beendet, wenn alle Zähler Z" auf 0 stehen.
  • Ein einfaches Ausführungsbeispiel, mit dem das gleiche Ergebnis besonders schnell errechnet wird, zeigt F i g. 5. Das Ausführungsbeispiel arbeitet mit nur einem Zähler Z" für alle Prüfzeichen, allerdings ist mit Ausnahme des ersten für jedes ein Speicher SP,, vorzusehen. Diese Speicher sind in Form eines Schieberegisters zusammengeschaltet. Zu Beginn jedes Arbeitsabschnitts gelangt das neue Zeichen a" in den Speicher S1',2, während das vorhergehende an SPA3 abgegeben wird usf. Die aus dem letzten (SPA4) auslaufenden Informationszeichen werden im Zähler Z" zur einfacher. Quersumme aufsummiert. Der Anfangswert für das erste Zeichen des Blocks beträgt SPI,= 1, sonst gilt das gleiche wie bei dem Ausführungsbeispiel von F i g. 3. Wird wieder der andere Dividendenfaktor zu A = 1 gewählt, so erhält man ein Ausführungsbeispiel nach F i g. 6. Auch hier gelangen die einlaufenden Zeichen vorteilhaft in ein Schieberegister, das sich in diesem Falle aber im Vergleicherteil befindet.
  • Während in den bisher besprochenen Ausführungsbeispielen die Prüfzeichen weitgehendst parallel berechnet wurden, zeigt F i g. 7 ein Ausführungsbeispiel, bei dem die Prüfzeichen zeitlich nacheinander gewonnen werden. Hier genügt ein Zähler Z" und ein Speicher SP,, für das gerade zu verarbeitende Zeichen Il". Im ersten oder auch letzten Schritt wird dessen Inhalt einmal zum Inhalt des Zählers Z" hinzugezählt. Im nächsten Schritt erfolgen die Summationen in den Zähler ZS2, bis der Zähler Z", ausgehend vom Ausgangswert 0, den Endwert 1 erreicht hat. Sodann wird dieser Zähler wieder auf () gesetzt, während der Speicher SPI,, der für das erste Zeichen den Anfangswert 1 hat, um 1 erhöht wird und die Siammationen sodann in den Zähler Z" folgen. Der Bearbeitungsabschnitt für das Zeichen a" endet, wenn das Hinzuzählen im letzten Ergebniszähler (Zs4) beendet ist. Der Speicherinhalt SPI, dann um I erniedrigt (oder M - 1 erhöht) und das nächste Zeichen a,-,1 kann verarbeitet werden.
  • Hierzu gleichwertig ist das Ausführungsbeispiel nach F i g. 8, bei dem das gerade zu bearbeitende Zeichen im Vergleicher YGLD gespeichert wird und die Zähler ZSZ ... jeweils um so viele Schritte weitergeschaltet werden, wie Additionen in den Zähler Z" zum Erreichen des gleichen Zählerstandes (B) notwendig sind. Infolge der zeitlich seriellen Arbeitsweise der zuletzt besprochenen Ausführungsbeispiele (F i g. 7 und 8) wird für die Berechnung der Prüfzeichen etwas mehr Zeit benötigt als bei den parallel arbeitenden Ausführungsbeispielen, was aber besonders bei elektronischer Realisierung nicht sehr ins Gewicht Fällt und durch den geringen technischen Aufwand wieder ausgeglichen wird.
  • Bei den beschriebenen Ausführungsbeispielen wurde jeweils nur ein oder höchstens einige wenige der Informationszeichen in dem Ausführungsbeispiel gespeichert. Liegt dagegen der Informationsblock insgesamt gespeichert vor, so genügt zur Berechnung aller Prüfzeichen sogar ein einfaches Ausführungsbeispiel nach F i g. 1 oder 2, indem jedes Prüfzeichen in einem eigenen Durchlauf des gesamten Informationsblocks erstellt wird und erst danach dann mit dem gleichen Ausführungsbeispiel das nächste Prüfzeichen gewonnen wird. Neben der Bildung der einfachen Quersumme bedarf es zur Herstellung der verschiedenen Prüfzeichen dabei nur einer einfachen Änderung des Anfangswertes (Erhöhung um je 1) im Speicher SPD.
  • Die Ausführungsbeispiele zur Bestimmung mehrerer Prüfzeichen wurden am Beispiel eines Systems mit vier Prüfzeichen beschrieben. In ganz entsprechender Weise lassen sich aber in allen Fällen auch eine andere und größere Anzahl von Prüfzeichen herstellen. Die Ausführungsbeispiele können außerdem dadurch etwas verändert werden, daß Zähler durch Addierer und Speicher ersetzt werden. Dabei kann für jeden Zähler neben einem Speicher ein eigener modulo-M-Addierer vorhanden sein. Es ist aber auch möglich, für mehrere oder auch alle Zähler nur einen modulo-M-Addierer vorzusehen, der dann nacheinander zyklisch mit den verschiedenen Speichern verbunden wird und die betreffenden Additionen in die Zählerersatzspeicher vornimmt. Werden insbesondere die Ergebniszähler Zs in Ausführungsbeispielen gemäß F i g. 3, 4 oder 6 durch je einen Speicher und zusammen einen modulo-M-Addierer mit einem Zusatzspeicher ersetzt, so ist es vorteilhaft, im Addierer und Zusatzspeicher zunächst nur die reinen Vielfachen zu bilden und die Additionen zum Inhalt der einzelnen Zählerersatzspeicher erst dann vorzunehmen, wenn die betreffende Bedingung im zugehörigen Zähler ZD (bzw. in dessen Ersatzvorrichtung), beispielsweise mit ZD = 1 eingetreten ist.
  • Durch die beschriebenen Ausführungsbeispiele lassen sich in einfacher Weise die Absicherungssysteme (2) realisieren, die eine optimale Fehlererkennung in Datenblöcken ermöglichen. Eine gleich gute Absicherung erhält man dann nur noch durch Systeme, die aus der Form (2) durch Umordnung oder Multiplikation mit von Null verschiedenen Konstanten A, und B, gewonnen werden können. Abgesehen von Umordnungen, die lediglich eine andere Reihenfolge der Informations- und Prüfzeichen bewirken, werden diese Systeme damit allgemein durch die folgenden Gewichte gegeben: Auch diese allgemeineren Optimalsysteme können durch Ausführungsbeispiele nach F i g. 1 realisiert werden. Wird zunächst nämlich einmal von einer Multiplikation mit den Faktoren A, abgesehen (A, = 1) und B, = b. sowie u + v - 2 = d, gesetzt, so werden die Prüfzeichen dieses Absicherungssystems gemäß (1) aus der Summierung der Quotienten a,, - b,, : d" erhalten. Es tritt also zusätzlich lediglich der zweite Faktor b" auf, der entweder von außen (wie a ) in das Ausführungsbeispiel einzugeben ist oder in Am Ausführungsbeispiel auch in irgendeiner Form gespeichert vorliegen oder nach einem bestimmten Bildungsgesetz (beispielsweise durch Addition oder Multiplikation mit einer Konstanten) dort erarbeitet werden kann. Die Errechnung des Divisors dm kann dabei wieder durch jeweilige Erhöhung um 1 erfolgen, während die verschiedenen Prüfzeichen v durch verschiedene (von v abhängige) Anfangswerte entstehen. Wird auch eine Multiplikation mit den Faktoren A,, zugelassen, so kann diese beispielsweise dadurch berücksichtigt werden, daß auch die Faktoren b" (jetzt mit b,, =A , - B,,) vom Index v des Prüfzeichens abhängen oder noch einfacher dadurch, daß die einzelnen wie oben gebildeten Prüfzeichen k, zum Schluß noch mit den Faktoren A, -multipliziert werden, was bei der Prüfzeichenanzeige durch entsprechende Decodierung meist ohne zusätzlichen Aufwand möglich ist. Damit können alle Prüfzeichen auch der allgemeineren Absicherungssysteme (3) errechnet werden.
  • Mit den beschriebenen Ausführungsbeispielen ist aber nicht nur die Errechnung der Prüfzeichen möglich, sondern es kann mit ihnen mit Hilfe einer kleinen Zusatzvorrichtung auch die Prüfung auf Fehlerfreiheit des gesamten Informationsblocks einschließlich Prüfteils vorgenommen werden. Dies kann dadurch geschehen, daß die Prüfzeichen nochmals in gleicher Weise aus dem Informationsteil des Blocks hergestellt und zusätzlich mit den Prüfzeichen des Blocks verglichen werden. Bei Fehlerfreiheit des Blocks müssen alle so entstehenden Prüfzeichenpaare übereinstimmen. Andernfalls liefert das Ausführungsbeispiel dann ein Fehlersignal das beispielsweise optisch oder akustisch oder auch durch eine Sperrfunktion auf den aufgetretenen Fehler hinweist. Eine andere Möglichkeit für die Fehlerprüfung besteht darin, nach der Ermittlung der Prüfzeichen aus dem Informationsteil des Blocks eine Komplementbildung (M - k,) vorzunehmen und das betreffende Prüfzeichen des Prüfteils hinzuzuzählen oder die Komplementbildung bei letzterem vorzunehmen. Als Kriterium für die Fehlerfreiheit kann dann eine Nullprüfung aller Ergebniszähler Zs dienen.

Claims (14)

  1. Patentansprüche: 1. Vorrichtung zur Prüfzeichenberechnung oder zur Addition von aus ganzen Zahlen eines Restklassensystems gebildeten Quotienten aus Dividendenfaktoren A und B und einem Divisor D zu einer vorgegebenen ganzen Zahl (S), wobei eine direkte oder über Speicher (SPD, SPA) codierte Eingabe für den einen Faktor A des Dividenden und den Divisor D vorgesehen ist, die an mod-M-Zähler (z. B. ZD, ZS) liegen, und wobei für die Prüfzeichenberechnung der Dividendenfaktor A einem Zeichen der abzusichernden Zeichenfolge und der Dividendenfaktor B einem frei wählbaren Faktor bzw. umgekehrt entsprechen und der Divisor D dem Kehrwert des Gewichtes des jeweiligen Zeichens entspricht, d a d u r c h g e k e n n z e 'i c h n e t, daß der eine Zähler (Zs) zunächst die anfangs vorgegebene Zahl (S) und nach Beendigung des Hinzuzählens das Ergebnis enthält, wobei der Inhalt des Faktorspeichers (SPA) zum Inhalt des Zählers (Zs) addierbar und der Inhalt des Divisorspeichers (SPD) zum Inhalt des anderen Zählers (Divisorzähler ZD) addierbar sind, und beide Zähler so viele Male die Addition wiederholen, bis der vor Beginn der Additionen sich in einer Grundstellung befindliche Divisorzähler (ZD) nach einer der wiederholten Additionen einen Zählerstand erreicht hat, dessen Differenzwert bezüglich der anfänglichen Grundstellung gleich dem Wert des anderen Faktors (B) des Dividenden ist.
  2. 2. Vorrichtung nach Anspruch 1, dadurch gekennzeichnet, daß die Grundstellung des Divisorzählers durch die Nullstellung gegeben ist und für den zweiten Faktor (B) des Dividenden eine speichernde Vergleichsvorrichtung (VGLB) vorgesehen ist, von der bei Gleichheit ein Signal für die Beendigung der Additionswiederholung abgeleitet ist.
  3. 3. Vorrichtung nach Anspruch 1, dadurch gekennzeichnet, daß die Grundstellung des Divisorzählers (ZD) durch den Komplementwert des zweiten Dividendenfaktors (B) gegeben ist und die Additionen beendet werden, wenn der Zählerstand des Divisorzählers (ZD) die Nullstellung erreicht (F i g. 2).
  4. 4. Vorrichtung nach Anspruch 3, dadurch gekennzeichnet, daß dem Divisorzähler (Z") ein Komplementwertbildner (KPL) für den zweiten Dividendenfaktor (B) vorgeschaltet ist.
  5. 5. Vorrichtung nach Anspruch 4, dadurch gekennzeichnet, daß der Gewichtsfaktor durch Anwendung von Addition und/oder Multiplikation mit einer Konstanten in einer Vorrichtung berechnet wird.
  6. 6. Vorrichtung nach Anspruch 5, dadurch gekennzeichnet, daß der Divisorspeicher (SP") den Divisor für jedes neu zu verarbeitende Zeichen der Zeichenfolge um 1 erhöht.
  7. 7. Vorrichtung nach den Ansprüchen 5 oder 6 zur Bestimmung aller Prüfzeichen eines optimalen Absicherungssystems, dadurch gekennzeichnet, daß zur Gewinnung jedes Prüfzeichens, außer höchstens einem, welches in einem modulo-M-Zähler aus der einfachen Quersumme aller abzusichernden Zahlen ermittelt wird, jeweils eine Vorrichtung vorgesehen ist. B.
  8. Vorrichtung nach Anspruch 7, dadurch gekennzeichnet, daß zur Aufnahme des gerade zu verarbeitenden Zeichens nur ein Faktorspeicher (SPA) bzw. nur eine Vorrichtung für den Vergleich (VGLI) oder die Komplementbildung (KPL) für alle Prüfzeichen vorgesehen ist (F i g. 3, 4).
  9. 9. Vorrichtung nach Anspruch 8, dadurch gekennzeichnet, daß zur Gewinnung aller Prüfzeichen eigene Ergebniszähler (ZSI ... 4) mit entsprechenden Divisorzählern (ZDZ ... 4) in paralleler Arbeitsweise vorgesehen sind (F i g. 4).
  10. 10. Vorrichtung nach Anspruch 7 oder einem der folgenden, dadurch gekennzeichnet, daß neben den übrigen Bauteilen für alle Prüfzeichen zusammen nur ein Divisorzähler (ZD) und ein Divisorspeicher (SPD) zur Aufnahme des Divisors vorgesehen sind (F i g. 5).
  11. 11. Vorrichtung nach Anspruch 7, dadurch gekennzeichnet, daß für die den abzusichernden Zeichen zugeordneten Zahlen ein anfangs mit Nullen angefülltes Schieberegister vorgesehen ist, in dessen verschiedenen Stellen die Dividendenfaktoren oder die Dividenden für die Gewinnung der verschiedenen Prüfzeichen gleichzeitig zur Verfügung stehen und die Zahl dieser Stellen vorzugsweise gleich oder um 1 kleiner als die Zahl der Prüfzeichen ist.
  12. 12. Vorrichtung nach Anspruch 11, dadurch gekennzeichnet, daß zur praktisch gleichzeitigen Gewinnung aller Prüfzeichen an das Schieberegister entsprechend viele Zähler (ZSI . . . Z54) angeschlossen sind.
  13. 13. Vorrichtung nach Anspruch 10 zur zeitlichen Hintereinanderreihung aller Prüfzeichen, dadurch gekennzeichnet, daß ein erster Ergebniszähler (ZSI), bei dem nach Einlauf jedes abzusichernden Informationszeichens zunächst nur das Hinzuzählen des Quotienten für das erste Prüfzeichen erfolgt, und ein zweiter Ergebniszähler (ZSZ) vorgesehen ist, in dem anschließend nur das zweite Prüfzeichen bearbeitet wird, und der an den Divisorspeicher (SPD) angeschlossene Divisorzähler (ZD) die jeweilige Anzahl der Additionen steuert und daß der Inhalt dieses Speichers (SP") beim Ubergang zum nächsten zu bearbeitenden Prüfzeichen um 1 erhöht ist und eine den Inhalt beim Einlauf des nächsten Informationszeichens so korrigierende Vorrichtung vorgesehen ist, daß er um 1 gegenüber dem Stand bei Einlauf des vorhergehenden Informationszeichens erhöht ist (F i g. 7, 8).
  14. 14. Vorrichtung nach Anspruch 13, dadurch gekennzeichnet, daß nur ein Ergebniszähler und ein Faktorspeicher sowie nur ein Divisorzähler mit einem ihm zugeordneten Speicher zur Bestimmung aller Prüfzeichen vorhanden ist und in einem ersten Durchlauf des Blocks nur das erste Prüfzeichen entsteht und danach jedes der übrigen Prüfzeichen in einem eigenen Durchgang zeitlich hintereinander mit den gleichen Zählern ermittelt wird.
DE1964P0034886 1964-08-14 1964-08-14 Vorrichtung zur Pruefzeichenberechnung oder zur Addition von Quotienten im Zahlensystem der Restklassen Pending DE1295245B (de)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE1964P0034886 DE1295245B (de) 1964-08-14 1964-08-14 Vorrichtung zur Pruefzeichenberechnung oder zur Addition von Quotienten im Zahlensystem der Restklassen

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE1964P0034886 DE1295245B (de) 1964-08-14 1964-08-14 Vorrichtung zur Pruefzeichenberechnung oder zur Addition von Quotienten im Zahlensystem der Restklassen

Publications (1)

Publication Number Publication Date
DE1295245B true DE1295245B (de) 1969-05-14

Family

ID=7373931

Family Applications (1)

Application Number Title Priority Date Filing Date
DE1964P0034886 Pending DE1295245B (de) 1964-08-14 1964-08-14 Vorrichtung zur Pruefzeichenberechnung oder zur Addition von Quotienten im Zahlensystem der Restklassen

Country Status (1)

Country Link
DE (1) DE1295245B (de)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB777286A (en) * 1954-04-02 1957-06-19 Standard Telephones Cables Ltd Calculating means
FR1185154A (fr) * 1956-10-26 1959-07-30 Int Standard Electric Corp Système calculateur numérique
DE1122298B (de) * 1955-09-13 1962-01-18 Int Computers & Tabulators Ltd Verfahren und Vorrichtung zum Bilden eines Pruefwertes
FR80604E (fr) * 1960-09-14 1963-05-24 Int Standard Electric Corp Système calculateur numérique

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB777286A (en) * 1954-04-02 1957-06-19 Standard Telephones Cables Ltd Calculating means
DE1101819B (de) * 1954-04-02 1961-03-09 Int Standard Electric Corp Kontrolleinrichtung zu Pruefzwecken
DE1122298B (de) * 1955-09-13 1962-01-18 Int Computers & Tabulators Ltd Verfahren und Vorrichtung zum Bilden eines Pruefwertes
FR1185154A (fr) * 1956-10-26 1959-07-30 Int Standard Electric Corp Système calculateur numérique
FR80604E (fr) * 1960-09-14 1963-05-24 Int Standard Electric Corp Système calculateur numérique

Similar Documents

Publication Publication Date Title
DE2508706C2 (de) Schaltungsanordnung zur Codierung von Datenbitfolgen
DE2523860C3 (de) Vorrichtung zur digitalen, linearen Interpolation einer fabulierten Funktion
DE2246968A1 (de) Einrichtung zur kombination, insbesondere multiplikation, zweier gleitkommazahlen
DE2701500A1 (de) Frequenzvervielfacher
DE1169166B (de) Modulí¬9 Pruefzahl-Rechner
DE1007085C2 (de) Elektronisch arbeitender Zaehler
DE1295245B (de) Vorrichtung zur Pruefzeichenberechnung oder zur Addition von Quotienten im Zahlensystem der Restklassen
DE2440530A1 (de) Einrichtung zum vergleichen zweier binaersignale
DE2244741C3 (de) Anordnung zur digitalen Messung einer physikalischen Größe durch einen Impulszähler mit ganzer invariabler Zählbasis
DE2111670A1 (de) Anordnung fuer die Anzeige der mittleren Rate des Auftretens eines ein Ereignis anzeigenden Signals
DE1183724B (de) Anordnung zur Feststellung von Regelwidrigkeiten beim Betrieb einer Chiffriermaschine
DE1449837B2 (de)
DE1766432B1 (de) Digitaler Spannungsmesser
DE1280315B (de) Schaltungsanordnung zur Berechnung von Pruefzeichen und zur Gewinnung einer direktenKorrekturangabe
DE885317C (de) Vergleichsvorrichtung
DE1958662A1 (de) Digitaler Impulsfolgenteiler mit optimaler Gleichverteilung der aus einer aequidistanten Eingangsimpulsfolge ausgewaehlten Impulse einer Ausgangsimpulsfolge
DE1958662C (de) Digitaler Impulsfolgenteiler mit optimaler Gleichverteilung der aus einer äquidistanten Eingangsimpulsfolge ausgewählten Impulse einer Ausgangsimpulsfolge
DE1766432C (de) Digitaler Spannungsmesser
EP0191452A1 (de) Verfahren und Schaltungsanordnung zur Überwachung der Summe bzw. Differenz zweier Grössen durch Vergleich mit einer dritten Grösse in binärer Darstellung
DE2838102C2 (de) Verfahren zum Messen der Dauer von Ereignissen in rechnergesteuerten Anlagen, insbesondere für Verkehrsmessung in Fernmeldeanlagen
DE1193098B (de) Kontrollvorrichtung fuer einen elektronischen Zaehler mit zwei Registern
DE1549372C3 (de)
AT253259B (de) Einrichtung zum Prüfen einer Zeichengruppe mit angehängtem Prüfzeichen
DE2704258B2 (de) Digital-Analog-Wandler
DE1449837C (de) Vorrichtung zur Prufzeichenberech nung fur die Informationsabsicherung