DE1280315B - Schaltungsanordnung zur Berechnung von Pruefzeichen und zur Gewinnung einer direktenKorrekturangabe - Google Patents

Schaltungsanordnung zur Berechnung von Pruefzeichen und zur Gewinnung einer direktenKorrekturangabe

Info

Publication number
DE1280315B
DE1280315B DE1966P0038742 DEP0038742A DE1280315B DE 1280315 B DE1280315 B DE 1280315B DE 1966P0038742 DE1966P0038742 DE 1966P0038742 DE P0038742 A DEP0038742 A DE P0038742A DE 1280315 B DE1280315 B DE 1280315B
Authority
DE
Germany
Prior art keywords
counter
counters
circuit arrangement
zero position
pulses
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
DE1966P0038742
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 DE1966P0038742 priority Critical patent/DE1280315B/de
Publication of DE1280315B publication Critical patent/DE1280315B/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)
  • Error Detection And Correction (AREA)

Description

  • Schaltungsanordnung zur Berechnung von Prüfzeichen und zur Gewinnung einer direkten Korrekturangabe Die Erfindung betrifft eine Schaltungsanordnung zur Berechnung von Prüfzeichen aus Zahlenfolgen und zur Gewinnung einer direkten Korrekturangabe für mit solchen Prüfzeichen abgesicherten fehlerhaften Zahlenfolgen aus einem Restklassensystem mod einer ganzen Zahl M, mit der drei Prüfzeichen in entsprechenden Zählern aus den nacheinander eingegebenen Zahlen der Zahlenfolgen schrittweise durch nach jeder Eingabe wiederholte Anwendung der gleichen arithmetischen Operation, die im ersten Zähler die eingegebenen Zahlen einfach addiert, aus den Zählerständen der drei Zähler nach beendeter Eingabe gewonnen und den abzusichernden Zahlenfolgen zugeftigt werden und mit der zur Prüfung von derartig abgesicherten Zahlenfolgen die Prüfzeichen _ daraus erneut in der gleichen Weise in den Zählern ermittelt und dann die bereits vorhandenen Prüfziffern von den entsprechenden Zählerständen abgezogen werden und die Zählerstände auf Erreichen der Null-Stellung geprüft werden.
  • Ein Erkennen und Beseitigen von aufgetretenen Fehlern bei Eingabe und Ubertragung von Daten ist möglich, wenn den Daten geeignete Prüfzeichen zugefügt werden.
  • Es ist bekannt, Prüfzeichen k,. aus den Daten, die allgemein aus einer Folge von Zeichen z; bestehen, zu gewinnen, indem man dieser eine den jeweiligen Zeichen entsprechende Folge von Zahlen a; aus einem Restklassensystem mod einer ganzen Zahl M fest zuordnet und mit diesen zugeordneten Zahlen gewichtete Quersummenbildungen mit den Gewichten G,.; ableitet: k,. = G,., - a, + G,.2 - a2 + ... + G,.," ° a", mod M, v = 1, 2, 3 (1) Eine optimale Absicherung für drei Prüfzeichen erhält man genau dann, wenn M eine Primzahl und die Anzahl der Informationszeichen m = M - 2 ist und alle Determinanten l., 2. und 3. Ordnung, die aus der Gewichtsmatrix G,.; gebildet werden können, nwd M nicht verschwinden. Dies ist der Fall, wenn die Gewichte G,.; wie folgt gewählt werden: G,; 0 beliebig, G2; = A2 - G, t,'(C', + D;); G3; = A3 ' G, J-(C3 + D;)mod M , (2) wobei die Grüßen A,. := 0 noch beliebig und C,. und D; so angesetzt werden können, daß für v -4 v und i @ i immer C,. @=C,, und D; 4 D; sowie C,. + D; 4= 0 niod M gilt. Die dabei auftretenden Brüche können im Restklassensystem als ganze Zahlen ausgedrückt werden. Beispielsweise erhält man für M = 11, G, a =1, A,, =1, C,,=v-2undD,=idamit:.G,;=1, oder explizit: Bei dieser Wahl der Gewichte werden die Prüfzeichen, insbesondere k2 und k3 nach Gleichung (1), aus Quotientensummen bzw. aus den entsprechenden Produktsummen gewonnen. Vorrichtungen zur Bildung solcher Quotientensummen wurden bereits vorgeschlagen. Diese Vorrichtungen ermöglichen für eine beliebige Anzahl v6n Prüfzeichen eine optimale Absicherung. Demgegenüber bezweckt die vorliegende Erfindung für den wichtigen Spezialfall von drei Prüfzeichen bei ebenfalls optimaler Gewichtswahl eine noch einfachere technische Realisierung der Prüfzeichenbildung sowie darüber hinaus bei aufgetretenen Fehlern die Gewinnung einer direkten Korrekturangabe und eine direkte Fehlerkorrektur der Zeichenfolge.
  • Absicherungen mit drei optimalen Prüfzeichen sind deshalb besonders bedeutungsvoll, weil sie bei reiner Fehlererkennung bereits eine außerordentlich hohe Sicherheit gewährleisten und auch bei automatischer Fehlerkorrektur einen für viele Fälle ausreichenden Fehlerschutz ergeben. So liegt beispielsweise die Restfehlerwahrscheinlichkeit für unerkannte Fehler bei statistischer Fehlerverteilung und einer Blockfehlerwahrscheinlichkeit von 10% bei reiner Fehlererkennung mit einem solchen Optimalsystem M = 11 unter 3,10-' und bei M = 31 sogar unter 2,10'. Wird automatische Fehlerkorrektur angewendet, so läßt sich die Wahrscheinlichkeit für eine Falscherkennung mit solch einem Optimalsystem schon-bei M = 11' unter einen Wert von 0,02%o senken.
  • Es sind bereits verschiedene Verfahren und Vorrichtungen bekannt, die eine oder mehrere Prüfziffern mittels Rekursionsformelri, d. h. durch Anwendung arithmetischer Operationen,-auf die abzusichernden Zahlen in Zählern berechnen, ohne daß eine fest gespeicherte Gewichtsmatrix notwendig ist. Bei der Berechnung mehrerer Prüfziffern entsteht eine der Prüfziffern häufig aus der einfachen Quersumme der eingegebenen Zahlen. Diese bekannten Verfahren und Vorrichtungen erzeugen jedoch alle nur Prüfziffern, mit denen Fehler in damit abgesicherten -Zahlenfolgen angegeben werden, dagegen sind keine Korrekturmöglichkeiten angegeben und scheinen auf einfache Weise auch nicht möglich.
  • Hier gibt die Erfindung eine Lösung an; aus drei Prüfzeichen mit geringem zusätzlichem Aufwand eine Korrekturangabe zu gewinnen, die wesentlich durch Realisierung ganz bestimmter Rekursiortsformeln für die Berechnung des zweiten und dritten Prüfzeichens entsteht und die dadurch gekennzeichnet ist, daß für den zweiten, seinen Zählerinhalt um einen konstanten Faktör c vervielfachenden Zähler und für den dritten, seinen Zählerinhalt um einen Faktor . reduzierenden Zähler eine Additions- oder Subtraktionsvorrichtung vorgesehen ist, die den Inhalt des ersten Zählers oder einen nur davon abhängigen Wert oder die gerade eingegebene Zahl zum bzw. vom Inhalt des zweiten und dritten Zählers addiert oder subtrahiert, und daß bei Nichterreichen der Null-Stellung aller Zähler nach einer Prüfung von abgesicherten Zahlenfolgen diese Zähler wie bei der Eingabe der Ziffer 0 mehrfach wiederholt ansteuerbar sind und bei gleichzeitigem Erreichen der Null-Stellung des zweiten und dritten Zählers nach einer Ansteuerung der Inhalt des ersten Zählers als Korrekturgröße ausgegeben wird und aus der Anzahl der zur Erreichung der Null-Stellung' der beiden anderen Zähler notwendigen wiederholten Ansteuerungen ein Markiersignal für die von vorn gerechnete Stelle einer (M-2)-stelligen Zahl abgeleitet ist.
  • Weiterbildungen der Erfindung sind in den Unteransprüchen gekennzeichnet.
  • . Ausführungsbeispiele der Erfindung werden an Hand der Zeichnung erläutert. Ep zeigt F i g. 1- eine Ausführung mit durch Impulse angesteuerte Zähler, F i g. 2a und 2b zwei Möglichkeiten zur Vervielfachung des Zählerstandes um einen festen Faktor, F i g. 3 eine Ausführung mit paralleler Ansteuerung der Zähler. ' In F i g. 1 werden die einzelnen Zeichen durch Impulsfolgen von den zugeordneten Restklassenzahlen entsprechender Länge repräsentiert, die von dem Impulsgeber I kommen. Nach Eingabe eines jeden Zeichens wird der mod M-Zähler Z1 um eine entsprechende Anzahl Schritte weitergestellt, so daß nach Verarbeitung des (i + 1)-ten Zeichens der Inhalt Z,(! + 1) entsteht. Modul M-Zähler sind dabei in an sich bekannter Weise z. B. aus Magnetkernen oder bistabilen Kippstufen aufgebaute Schieberingregister, die immer nach M Zähler-Schritten den Inhalt der letzten Binärstufe in die erste zurückführen, oder mehrstufige Binärzähler, die z. B. bei ungeradem M durch Rückführung des Übertrags der höchsten Stelle in die letzten und gegebenenfalls weitere Stellen rückgekoppelt sind. In einer ersten Ausführungsform wird außerdem der Inhalt Z2 (i) des zweiten mod M-Zählers um den Faktor c vervielfacht und der Inhalt des ersten Zählers Z1 (i + 1) subtrahiert: Z2(i+1) = c'Z2(i)-Zl(i+1) und gleichzeitig oder danach der Inhalt Z1 (i + 1) des ersten Zählers zum Inhalt des dritten mod M-Zählers addiert und das Ergebnis durch den Faktor - reduziert: Z3(1 + 1) _ [Z3 (i) + Zl(i + 1)1 Die jeweilige Vervielfachung des Zählerinhalts mod M erfolgt dabei gemäß F .i g. 2 a durch zusätzliche M Impulse oder M Impulsgruppen, von denen zunächst jeder oder, jede den Zähler Z jeweils einen Schritt weiter schaltet, bis ein bestimmter Zustand des Zählers, der als Null-Zustand bezeichnet werden möge, erreicht ist, wodurch der Schalter S betätigt wird, und danach durch Fortschaltung des Zählers um jeweils c Schritte durch jeden der restlichen Impulse oder Impulsgruppen. Entsprechend wird eine Vervielfachung um den Faktor (Division durch c) dadurch erreicht, daß zunächst jeder Impuls oder jede Impulsgruppe den Zähler um c Schritte weiterschaltet, bis nach einem Impuls oder einer Impulsgruppe der Null-Zustand des Zählers erreicht wird, und daß danach nur noch eine Fortschaltung um je einen Schritt vorgenommen wird. Die Weiterschaltung um c Schritte kann, wie bereits vorgeschlagen, dabei entweder durch eine Impulsgruppe von c Impulsen oder bei Einfachimpulsen durch Mehrfachzählung dieser Impulse, z. B. mittels Einschaltung zusätzlicher Verzögerungsglieder und!oder der Zählung von Vor- und Rückflanken der Impulse, oder durch Benutzung verschiedener Zählereingänge erfolgen. Eine andere Ausführung der Division ist nach F i g. 2b dadurch gegeben, daß auch in diesem Falle der Zähler zunächst nur um jeweils einen Schritt von jedem Impuls weitergeschaltet wird, bis der Null-Zustand erreicht ist, wodurch mittels S eine Auswahlschaltung A, z. B. ein mod c-Zähler, eingeschaltet wird, die nur noch jeden c-ten der übrigen Impulse durchläßt; wird hierbei nach dem letzten der M Impulse nicht wieder der Ausgangszustand (Null-Zustand) der Auswahlschaltung erreicht, so werden vom Impulsgeber weitere M Impulse angefordert, bis am Ende die Auswahlschaltung wieder ihren Ausgangswert einnimmt. Nach dem letzten der abgegebenen Zusatzimpulse wird der Schalter S wieder in seinen Ausgangszustand zurückgeschaltet. Andere Möglichkeiten zur Realisierung von Multiplikation und Division sind, wie bereits angemeldet, besonders für c = 2 mit rückgekoppelten Binärzählern durch Stellenverschiebung gegeben.
  • An einem Beispiel möge die Arbeitsweise eines Ausführungsbeispiels erläutert werden. Es sei eine Zeichenfolge abzusichern, die durch die zugeordneten Zahlen: 6 3 7 9 0'4 8 1 3 im Restklassensystem mod M = 11 gegeben sei. Ausgehend vom Anfangszustand 0 der Zähler Z1, Z2, Z3 gelangt im ersten Schritt gemäß dem ersten Zeichen eine Impulsfolge von 6 Zeichen in den Zähler Z,. Die Addition bzw. Subtraktion des so entstandenen Zählwerts des Zählers Z1(1) = 6 in die anderen Zähler geschieht mittels M = 11 Impulsen, die den Zähler Z, schrittweise über seine Null-Stellung wieder in die alte Stellung bringen. Dabei wird ein Umschalter U, betätigt, der den Teil der M Impulse, der zum Erreichen des Null-Zustandes von Z, erforderlich ist, auch in den Zähler Z2, die restlichen Impulse über U2 dagegen in den Zähler Z3 gelangen läßt. Im Beispiel sind dies 5 Impulse in den Zähler Z2 und 6 Impulse in den Zähler Z3. Anschließend erfolgt die Vervielfachung V bzw. Y2 mit dem Faktor c bzw. wobei für c vorzugsweise eine Primitivwurzel des Restklassensystems verwendet wird. Im Beispiel kann c = 2 gewählt werden. Der Zähler Z2 gelangt so aus dem Zustand 5 (durch die ersten sechs der zusätzlichen 11 Impulse in den Null-Zustand und durch die restlichen 5 Impulse um 5 - 2 Schritte weiter) in den Zustand 10, der Zähler Z3 dagegen aus dem Zustand 6 (durch die ersten 5 Impulse in den Null-Zustand und durch die restlichen 6 Impulse um - Schritte weiter) in den Zustand 3. Werden die Zustände der Zähler Z, und Z3 direkt, die des Zählers Z2 dagegen so decodiert angezeigt, daß das Ergebnis vor der Verdoppelung erscheint, so erhält man als angezeigten Inhalt der Zähler nach Verarbeitung des ersten Zeichens Z, (1) = 6; Z2(1) = 5; Z3(1) = 3; das zweite Zeichen führt zur Weiterschaltung des Zählers Z, um 3 Schritte Zum Zählerstand 9. Die zwei Impulse bis zur Null-Stellung schalten der, Zähler 22 in den Zustand 1 (10 + 2 = 1), die übrigen 9 Impulse den Zähler Z3 ebenfalls in die Stellung 1 (3 + 9 = 1). Anschließende Verdoppelung bzw. Halbierung der Zählerstände führt bei Z2 zum Zustand 2 und bei Z, zum Zustand 6 (1 + 10 + 1 - 2 = 2, so daß nach Verarbeitung des zweiten Zeichens die Inhalte 7,(2) = 9; Z2(2) = 1; Z3(2) = 6 angezeigt werden. Das dritte Zeichen führt schließlich zu Z,(3) .= 5; Z2(3) = 8; Z3(3) = 0 (9 + 7 = 5; 1 - 2 + 6 = 8; und die weiteren Zeichen zu:
    Z,(4) = 3; Z2(4) = 2; Z3(4) = 7.
    Z, (5) = 3; Z,2(5) = 1; Z3(5) = 5.
    Z1(6) = 7; Z2(6) = 6; Z3(6) = 6.
    Z, (7) = 4; Z2(7) = 8; Z3(7) = 5.
    Z1(8) = 5; Z2(8) = 0; Z3(8) = 5.
    Z, (9) = 8; Z2(9) = 3; Z3(9) = 1 .
    Die angezeigten Inhalte der Zähler Z,,_ Z2, Z3 nach Verarbeitung des letzten. Zeichens liefern direkt die gesucht , Prüfzeichen, so daß die abgesicherte Zeichenfolge durch 6379048 I 3-83 1 gegeben ist. Setzt man den rekursiven Vorgang zusammen, so erkennt man, daß das Ergebnis mit dem übereinstimmt, welches man nach (1) mit den Gewichten G, i = 1, Gei = I -cm4'1-i, G3 i --- 1-ci-M-' erhält; insbesondere ergeben sich im Beispiel die Gewichte: Für kürzere Zeichenfolgen sind die vorderen Spalten zu streichen. Man verifiziert diesbezüglich leicht die folgenden Relationen: Z1(1) = 1 -a,; Z2(1) = 10-a,; -Z3(I) = 6' ai usw. bis schließlich Z,(9)=6+3+7+9+0+4+8+1 +3 =8 mod11; Z2(9) =6-6+3-9+7-5+9-3+0-2+4-7 +8-4+1-8+3-10=3 mod11; Z3(9) = 6 10 +3-8+7-4+9-7+0-2+4-3 +85+1-9+3-6=1 mod11. Durch Ausrechnung sämtlicher Determinanten erster, zweiter und dritter Ordnung, die sich aus der Gewichtsmatrix G"i bilden lassen, kann man feststellen, daß keine von ihnen verschwindet, so daß sichergestellt ist, daß mit dem vorgeschlagenen Verfahren tatsächlich eine optimale Absicherung erreicht wird: Ein wichtiges Resultat, das sich auch aus (2) mit A2=A3=C2=I,C3=O,Di=-c`1"` und G, i = I+Di bei entsprechender Umnumerierung gewinnen läßt.
  • Da es für die Wirksamkeit der Absicherung unwesentlich ist, in welcher Weise die Prüfzeicben aus den Zählerendständen decodiert werden, wenn diese Decodierung nur umkehrbar eindeutig ist, können die Prüfzeichen insbesondere auch mit konstanten Faktoren multipliziert werden, z. B. mit dem Faktor 2 oder - I oder -2. Damit können weitere, besonders einfache Ausführungsformen der Erfindung angegeben werden. Insbesondere ist es damit auch möglich, Substraktionen durch Additionen und umgekehrt zu ersetzen. Bier sei als Beispiel noch eine einfache Ausführungsform beschrieben, die nur mit Additionen arbeitet und bei denen eine Direktanzeige (Direktdecodierung) aller Zählerstände erfolgt. Zunächst wird wieder der mod M-Zähler Z, durch eine Impulsfolge um so viele Schritte weitergeschaltet, wie die dem gerade verarbeiteten Zeichen zugeordnete Zahl angibt: Z,(i+l) = Z,(i)+ai+l, sodann werden entsprechend dem entstandenen Resultat die mod M-Zähler Z2 und Z3 weitergeschaltet, wozu derjenige Teil der M Zusatzimpulse dient, der den Zähler Z, nach seinem Null-Durchgang wieder auf seinem alten Wert bringt. Anschließend erfolgt eine Ver-c-fachung bzw. Ver- fachung der entstandenen Zählerstände: Z2 (i+1) _ [Z2 (i)+Z,(i+1)] - c und Ist z. B. die Zahlenfolge 7 0 0 2 0 0 4 3 9 mod 11 mit c = 2 abzusichern, so ergeben sich nacheinander folgende Zählerstände:
    Zi(0) = 0, Z2(0) = 0, Z3(0) = 0.
    Z, (1) = 7; Z2(1) = 3; Z3(1) = 9.
    Z, (2) = 7; Z2(2) = 9; Z3(2) = B.
    Z, (3) = 7: Z2(3) = 10; Z3(3) = 2.
    Z, (4) = 9; Z2(4) = 5; Z3(4) = 0.
    Z1(5) = 9; Z2(5) = 6; Z3(5) = 10.
    Z1(6) = 9; Z2(6) = 8; Z3(6) = 4.
    Z1(7) = 2; Z2(7) = 9; Z3(7) = 3.
    Z1(8) = 5; Z2(8) = 6; Z3(8) = 4.
    Z1(9) = 3; Z2(9) = 7; Z3(9) = 9.
    .Als Prüfzeichen erhälf man also k1 = 3, k2 = 7 und k3 = 9. Die Prüfzeichenbildung nach diesem Verfahren liefert dabei dieselben Ergebnisse, wie eine Bestimmung nach (1) mit den folgenden Gewichten ergeben würde: Gegenüber der zuerst beschriebenen Ausführungsform unterscheiden sich die Gewichte für das zweite Prüfzeichen hier um den Faktor -2.
  • Eine weitere Ausführungsform zeigt F i g. 3. Bei dieser gelangt die Impulsfolge, deren Länge die zugeordnete Zahl des gerade verarbeiteten Zeichens angibt, in alle drei mod M-Zähler Z1, Z2, Z3. Anschließend wird der Inhalt des Zählers Z2 überV ver-c-facht und der Inhalt des Zählers Z3 über V ver- -facht. Nach Verarbeitung des letzten Zeichens folgen die Prüfzeichen aus dem entstandenen Zählerstand Z1 und den Differenzen der Zählerstände zwischen Z2 und Z1 sowie Z3 und Z1 und werden entsprechend mittels P1, P2, P3 angezeigt. Natürlich kann die Differenzbildung auch durch zusätzliches Hinzufügen des negativen Zählerinhalts von Z1 nach Verarbeitung des letzten Zeichens in den Zählern ZZ und Z3 und Anzeige der so entstandenen Zählerstände erfolgen. Dieses Verfahren ergibt in den Zählern ZZ und Z3 zunächst Zählerstellungen, die einer gewichteten Summenbildung mit Gewichten gemäß auf- und absteigenden c-Potenzen entsprechen, welche durch die Differenzbildung zur einfachen Quersumme um 1 erniedrigt werden, so daß (abgesehen von den Vorzeichen) das gleiche Ergebnis wie in der zuerst besprochenen Ausführung entsteht. Natürlich können auch hier die Zeichen beliebig codiert werden, bei Zahlen z. B. auch direkt gemäß 1 - 1, 2-2 usw. und 0-0 oder 0 - 10.
  • Schließlich können alle besprochenen Ausführungsformen auch dadurch variiert werden, daß die Vervielfachung Y bzw. V im Zähler Z2 und/oder Z3 auch vor der Addition bzw. Subtraktion ausgeführt wird.
  • Bisher wurde nur die Gewinnung der Prüfzeichen besprochen. Mit der angegebenen Schaltungsanordnung ist jedoch auch eine einfache Fehlererkennung von bereits abgesicherten Zeichenfolgen möglich. Hierzu werden die Prüfzeichen neu bestimmt und mit den Prüfzeichen der abgesicherten Zeichenfolge verglichen. Die Prüfzeichen der Zeichenfolge können dabei durch ein Sonderzeichen (z. B. einen vorgestellten Bindestrich) oder durch ihre Stellung (bei konstanter Stellenzahl) gekennzeichnet sein. Erzielte Übereinstimmung wird als Kriterium für die Fehlerfreiheit gewertet. Der Vergleich kann durch Subtraktion der vorhandenen Prüfzeichen von den neu errechneten in den Zählern Z1 bis Z3 erfolgen, so daß diese bei erzielter Übereinstimmung in ihre Null-Stellun-en gelangen. Soll eine Subtraktion vermieden werden, so verwendet man als Prüfzeichen die Komplementwerte zu M und zeigt diese an; der Vergleich geschieht dann durch Addition mit dem gleichen Null-Kriterium äller Zählerstände für Fehlerfreiheit.
  • Wird keine Übereinstimmung erzielt, so enthält die Zeichenfolge einen Fehler. Da weitaus die häufigsten Fehler Einzeichenfehler sind, bei denen nur ein Zeichen der Zeichenfolge falsch ist, wird man es meist mit solchen zu tun haben. Es ist ein großer Vorteil des vorgeschlagenen Verfahrens, daß damit auch unmittelbar die direkte Fehlerkorrektur dieser häufigsten Fehler durchgeführt werden kann. Dient, wie oben ausgeführt, die Null-Kontrolle als Kriterium für die Fehlerfreiheit, so wird beim Auftreten eines Einzeichenfehlers in den Prüfzeichen die Null-Bedingung von zwei Zählern erfüllt, während der dritte Zähler die Größe des Fehlers in dem betreffenden Prüfzeichen anzeigt. Wichtiger ist jedoch der Fall, daß der Fehler in einem dm Informationszeichen aufgetreten ist. Zur Bestimmung von Lage und Größe eines solchen Fehlers wird die Verarbeitung in der angegebenen Schaltungsanordnung in gleicher Weise wie bei der Verarbeitung der Informationszeichen schrittweise gemäß eingegebener Nullen fortgesetzt, so daß der Zählerstand Z1 also nach jedem Schritt unverändert ist. Nehmen wir an, daß die Länge der Zeichenfolge inklusive Prüfzeichen M+ 1 beträgt (bei kürzeren Zeichenfolgen erfolgt lediglich eine Verschiebung in der Stellenabzählüng), so liefert nach dem ersten zusätzlichen Schritt das erste Zeichen der Zeichenfolge keinen Beitrag zur Zählerstellung von Z2 und Z3. Nach dem zweiten Schritt gilt dies gerade für das zweite Zeichen usf. Die neuen Zählerstellungen ergeben sich nämlich gemäß (1) mit einer Gewichtsmatrix, die gegenüber den angegebenen Gewichtsmatrizes @G,.i unter Hinzufügung einer linken Gewichtsspalte (1, 0, 0) durch zyklische Verschiebung der so gewonnenen Gewichtsmatrix um einen bzw. zwei usf. Schritte entstehen. Durch einen Fehler in der i-ten Stelle gelangen deshalb nach dem P en Schritt die Zähler Z2 und Z3 in den Null-Zustand, während der Zählerstand in Z1 die Größe des aufgetretenen Fehlers angibt. Durch Subtraktion des ermittelten Fehlers ist dann die fehlerhafte Zeichenfolge leicht zu korrigieren. In den Fällen, in denen die Zeichenfolge nicht gespeichert vorliegt, wird der Korrekturwert nach Größe urd Lage angegeben. Dies kann unter anderem vorteilhaft dadurch geschehen, daß nach jedem Schritt zur Bestimmung der Fehlerlage, bei dem in den Zählern ZZ und Z3 nicht die Null-Stellung erreicht wird, die Ausgabe einer Null erfolgt, während nach Erreichen der Null-Stellung beider Zähler eine Größe gemäß der Zählerstellung Z1 ausgegeben wird.
  • Ein Beispiel möge diesen Vorgang illustrieren: An Stelle der in unserem ersten Beispiel behandelten Zahlenfolge sei fälschlicherweise die Zahlenfolge 6 3 7 9 0 4 8 7 3 - 8 3 1 aufgetreten. Die neue Berechnung der Prüfzeichen ergibt:
    Z, (7) = 4; Z2(7) = 8; Z3(7) = 5.
    Z, (8) = 0; Z2(8) = 5; Z3(8) = B.
    Z1(9) = 3; Z2(9) = 7; Z3(9) = 0.
    Nach Subtraktion der alten Prüfzeichen ergeben sich die Zählerstände 3 - 8 = 6; 7 - 3 = 4; 0 - 1.=10 inod 11 und damit das Kriterium für einen aufgetretenen Fehler. Der anschließende Vorgang zur Bestimmung des Fehlers verläuft wie folgt:
    Z,(0') = 6; Z2(0') = 4; Z3(0') = 10.
    Z, (I') = 6; Z2(1') = 2; Z3(1') = B.
    Z,(2') = 6; Z2(2') = 9; Z3(2') = 7.
    Z,(3') = 6; Z2(3') = I; Z3(3') = 1
    Z,(4') = 6; Z2(4') = 7; Z3(4') = 9.
    Z,(5') = 6; Z2(5') = 8; Z3(5') = 2.
    Z,(6') = 6; Z2(6') = 10; Z3(6') = 4.
    Z, (T) ='6; Z2(7') = 3; Z3(7') = 5.
    Z,(8') = 6; Z2(8') = 0; Z3(8') = 0.
    Das Ergebnis zeigt also einen Fehler von 6 Einheiten in der B. Stelle; zur obigen Zahlenfolge ist die Zahlenfolge -000 000 060 hinzuzufügen.
  • Mit den beschriebenen Vorrichtungen können alle Einzeichenfehler nach Größe und Lage bestimmt und damit direkt ohne Wiederholungsanforderung korrigiert werden. Tritt weder das Kriterium für Fehlerfreiheit (alle 3 Zähler in Null-Stellung) noch in einem der anschließenden Schritte das Kriterium für einen aufgetretenen Einzeichenfehler ein (2 Zähler in Null-Stellung), so handelt es sich um einen der selteneren Mehrfachfehler, die ohne zusätzliche (willkürliche) Annahmen nicht korrigierbar sind. In diesem Falle erfolgt lediglich eine Fehleranzeige.
  • Soll dagegen auch hier eine direkte Korrektur erfolgen, die naturgemäß nicht mehr eindeutig ist, so kann man eine solche ebenfalls mit der angegebenen Schaltungsanordnung erhalten, wenn man die Bedingung, daß zur Lagebestimmung eines Fehlers 2 Zähler in Null-Stellung sein sollen, auf die Bedingung für einen Zähler ermäßigt. Die Wahrscheinlichkeit für Falscherkennung wird durch eine solche Maßnahme zur Ausgabe einheitlicher Ergebnisse natürlich erheblich vergrößert.
  • Die erfindungsgemäßen Schaltungsanordnungen wurden für Systeme mit 3 Prüfzeichen beschrieben. Infolge ihrer optimalen Absicherungseigenschaften gewähren sie einen hervorragenden und selbst bei automatischer Fehlerkorrektur bei kleineren Fehlerquoten noch einen recht guten Schutz gegen verbleibende, unerkannte Fehler. Für geringere Sicherheitsansprüche, wenn die Verwendung zweier Prüfzeichen genügt, kün,Pcn mit der gleichen Schaltungsanordnung - led:;@lich unter Weglassung eines Zählers (7_2 oder Z3) ---- ebenfalls die Prüfzeichen gewonnen und eine Prüfung sowie direkte Korrektur aufgetretener 17chler oder mit nur einem Zähler die Fehlererkerca@;nernit nur einem Prüfzeichen durchgeführt werden.

Claims (11)

  1. Patentansprüche: 1. Schaltungsanordnung zur Berechnung von Prüfzeichen aus Zahlenfolgen und zur Gewinnung einer direkten Korrekturangabe für mit solchen Prüfzeichen abgesicherten fehlerhaften Zahlenfolgen aus cinem Restklassensystem mod einer ganzen Zahl M, mit der drei Prüfzeichen in entsprechenden Zählern aus den nacheinander eingegebenen Zahlen der Zahlenfolgen schrittweise durch nach jeder Eingabe wiederholte Anwendung der gleichen arithmetischen Operation, die im ersten Zähler die eingegebenen Zahlen einfach addiert, aus den Zählerständen der drei Zähler nach beendeter Eingabe gewonnen und den abzusichernden Zahlenfolgen zugefügt werden und mit der zur Prüfung von derartig abgesicherten Zahlenfolgen die Prüfzeichen daraus erneut in der gleichen Weise in den Zählern ermittelt und dann die bereits vorhandenen Prüfziffern von den entsprechenden Zählerständen abgezogen werden und die Zählerstände auf Erreichen der Null-Stellung geprüft werden, d adurch gekennzeichnet, daß für den zweiten, seinen Zählerinhalt um einen konstanten Faktor c vervielfachenden Zähler (ZZ) und für den dritten, seinen Zählerinhalt um einen Faktor reduzierenden Zähler (Z3) eine Additions- oder Subtraktionsvorrichtung vorgesehen ist, die den Inhalt des ersten Zählers (Z,) oder einen nur davon abhängigen Wert oder die gerade eingegebene Zahl zum bzw. vom Inhalt des zweiten Zählers (ZZ) und dritten Zählers (Z3) addiert oder subtrahiert, und daß bei Nichterreichen der Null-Stellung aller Zähler nach einer Prüfung von abgesicherten Zahlenfolgen diese Zähler (Z,, Z2, Z3) wie bei der Eingabe der Ziffer 0 mehrfach wiederholt ansteuerbar sind und bei gleichzeitigem Erreichen der Null-Sfellung des zweiten und dritten Zählers nach einer Ansteuerung der Inhalt des ersten Zählers (Z,) als Korrekturgröße ausgegeben wird und aus der Anzahl der zur Erreichung der Null-Stellung der beiden anderen Zähler (Z2, Z3) notwendigen wiederholten Ansteuerungen ein Markiersignal für die von vorn gerechnete Stelle einer (M-2)-stelligen Zahl abgeleitet ist.
  2. 2. Schaltungsanordnung nach Anspruch 1, dadurch gekennzeichnet, daß für eine Addition oder Subtraktion der Zähler mittels von einem Impulsgeber (1) abgegebener Impulsfolge, deren Länge jeweils durch den Summanden, Subtrahenden oder - deren M-Komplement gegeben ist, schrittweise weiterschaltbar ist.
  3. 3. Schaltungsanordnung nach Anspruch 1, dadurch gekennzeichnet, daß zur Addition oder Subtraktion eines Zählerstandes zu einem anderen Zählerstand der erste Zähler vom Impulsgeber (1) M Impulse erhält und daß die Null-Stellung des ersten Zählers einen Umschalter (U,, UZ) auslöst, der die Takteingänge der beiden Zähler parallel schaltet bzw. eine Parallelschaltung des zweiten Zählers unterbricht.
  4. 4. Schaltungsanordnung nach einem der Ansprüche 1 bis 3, dadurch gekennzeichnet, daß zur Vervielfachung des Zählerinhalts um den Faktor c der mod M-Zähler M zusätzliche Impulse oder Impulsgruppen erhält, die den Zähler um je einen Schritt weiterschalten, und die Null-Stellung des Zählers einen Umschalter (S) auslöst, durch den jeder Impuls oder jede Impulsgruppe den Zähler jeweils um c Schritte weiterschaltet.
  5. 5. Schaltungsanordnung nach einem der Ansprüche 1 bis 4, dadurch gekennzeichnet, daß zur Reduzierung des Zählerstandes um den Faktor der mod M-Zähler M zusätzliche Impulse oder Impulsgruppen erhält, von denen jeder- oder jede den Zähler um jeweils c Schritte weiterschaltet, und die Null-Stellung des Zählers einen Umschalter (S) auslöst, durch den jeder Impuls oder jede Impulsgruppe den 'Zähler jeweils um einen Schritt weiterschaltet.
  6. 6. Schaltungsanordnung nach einem der An- sprüche 1 bis 4, dadurch gekennzeichnet, daß zur Reduzierung des Zählerstandes um den Faktor vom Impulsgeber der rnod M-Zähler M zusätzliche Impulse erhält und die Null-Stellung des Zählers eine Auswahlschaltung (A), vorzugsweise als mod c-Zähler ausgebildet, einschaltet, die nur jeden c-ten Impuls an den Zähler gibt und die jeweils dann, wenn sie nach dem letzten der M Impulse nicht in der Null-Stellung steht, weitere M Impulse auslöst.
  7. 7. Schaltungsanordnung nach einem der Ansprüche 3 bis 6, dadurch gekennzeichnet, daß Additionen und/oder Subtraktionen und/oder Vervielfachungen und/oder Reduzierungen in verschiedenen Zählern gleichzeitig unter Benutzung derselben M Impulse erfolgen. B.
  8. Schaltungsanordnung nach einem der vorangegangenen Ansprüche, dadurch gekennzeichnet, daß die mod M-Zähler rückgekoppelte Binärzähler sind und zur Vervielfachung des Zählerstandes um den Faktor c bzw. vorzugsweise bei c = 2 eine Stellenverschiebung erfolgt.
  9. 9. Schaltungsanordnung nach einem der vorangegangenen Ansprüche, dadurch gekennzeichnet, daß die Vervielfachungen und Reduzierungen der Inhalte der Zähler in jedem Schritt nach oder auch vor den Additionen bzw. Subtraktionen anderer Zählerinhalte erfolgen.
  10. 10. Schaltungsanordnung nach Anspruch 1, dadurch gekennzeichnet, daß nach jeder der wiederholten Ansteuerung, bei der nicht beide der Zähler (Z2, Z3) in die Null-Stellung gelangt. sind, eine Null ausgegeben wird, im anderen Falle dagegen eine Zahl gemäß der Stellung des ersten, nicht in der Null-Stellung befindlichen Zählers Z1.
  11. 11. Schaltungsanordnung nach Anspruch 1 zur automatischen Fehlerkorrektur, dadurch gekennzeichnet, daß die voVliegende Zahlenfolge durch den nach Lage und Größe festgestellten Fehler korrigiert wird, vorzugsweise dadurch, daß bei jedem zusätzlichen Schritt, nach dem keiner oder nicht beide der Zähler in die Null-Stellung gelangt sind, die zugehörige Zahl der Zahlenfolge unverändert bleibt, während im anderen Falle der Inhalt des nicht in Null-Stellung befindlichen Zählers von der zugehörigen Zahl der Zahlenfolge subtrahiert wird. In Betracht gezogene Druckschriften: Deutsche Auslegeschriften Nr. 1 159 501, 1 162 603, 1 187 831, 1 195 804; _ schweizerische Patentschrift Nr. 366 988; W. P e t e r s e n, »Error-Correeting-Codes«, 1965, Juli, MIT- Press, S. 81 bis 85 und S. 137 bis 143.
DE1966P0038742 1966-02-10 1966-02-10 Schaltungsanordnung zur Berechnung von Pruefzeichen und zur Gewinnung einer direktenKorrekturangabe Pending DE1280315B (de)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE1966P0038742 DE1280315B (de) 1966-02-10 1966-02-10 Schaltungsanordnung zur Berechnung von Pruefzeichen und zur Gewinnung einer direktenKorrekturangabe

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE1966P0038742 DE1280315B (de) 1966-02-10 1966-02-10 Schaltungsanordnung zur Berechnung von Pruefzeichen und zur Gewinnung einer direktenKorrekturangabe

Publications (1)

Publication Number Publication Date
DE1280315B true DE1280315B (de) 1968-10-17

Family

ID=7376066

Family Applications (1)

Application Number Title Priority Date Filing Date
DE1966P0038742 Pending DE1280315B (de) 1966-02-10 1966-02-10 Schaltungsanordnung zur Berechnung von Pruefzeichen und zur Gewinnung einer direktenKorrekturangabe

Country Status (1)

Country Link
DE (1) DE1280315B (de)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CH366988A (de) * 1958-05-31 1963-01-31 Telefunken Gmbh Einrichtung für datenverarbeitende Maschinen zur Prüfung von Eingabedaten
DE1159501B (de) * 1961-05-12 1963-12-19 Siemens Ag Verfahren und Schaltungsanordnung zur gesicherten UEbertragung von Nachrichtenzeichen
DE1162603B (de) * 1956-04-11 1964-02-06 Theodorus Reumerman Verfahren und Vorrichtung zur UEberpruefung von Zeichengruppen
DE1187831B (de) * 1960-09-14 1965-02-25 Int Standard Electric Corp Rechenanordnung zur Berechnung einer Pruefziffer aus einer Dezimalzahl
DE1195804B (de) * 1961-09-14 1965-07-01 Theodorus Reumerman Verfahren zur UEberpruefung von Daten

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE1162603B (de) * 1956-04-11 1964-02-06 Theodorus Reumerman Verfahren und Vorrichtung zur UEberpruefung von Zeichengruppen
CH366988A (de) * 1958-05-31 1963-01-31 Telefunken Gmbh Einrichtung für datenverarbeitende Maschinen zur Prüfung von Eingabedaten
DE1187831B (de) * 1960-09-14 1965-02-25 Int Standard Electric Corp Rechenanordnung zur Berechnung einer Pruefziffer aus einer Dezimalzahl
DE1159501B (de) * 1961-05-12 1963-12-19 Siemens Ag Verfahren und Schaltungsanordnung zur gesicherten UEbertragung von Nachrichtenzeichen
DE1195804B (de) * 1961-09-14 1965-07-01 Theodorus Reumerman Verfahren zur UEberpruefung von Daten

Similar Documents

Publication Publication Date Title
DE2246968A1 (de) Einrichtung zur kombination, insbesondere multiplikation, zweier gleitkommazahlen
DE1169166B (de) Modulí¬9 Pruefzahl-Rechner
DE2311386C2 (de) Datensignalerkennungsvorrichtung
DE3302013C2 (de)
DE2244741C3 (de) Anordnung zur digitalen Messung einer physikalischen Größe durch einen Impulszähler mit ganzer invariabler Zählbasis
DE1280315B (de) Schaltungsanordnung zur Berechnung von Pruefzeichen und zur Gewinnung einer direktenKorrekturangabe
DE1925917C3 (de) Binäre Impulsfrequenz-Multiplizierschaltung
DE1183724B (de) Anordnung zur Feststellung von Regelwidrigkeiten beim Betrieb einer Chiffriermaschine
DE1806749C3 (de)
DE1449837B2 (de)
DE2910543A1 (de) Schaltungsanordnung zum durchfuehren arithmetischer operationen mit indirekter digital/analog-umwandlung
DE1234055B (de) Anordnung zur Addition oder Subtraktion
DE2505534C3 (de) Verfahren zur schnellen Stellung der von einem Dauerkalender angezeigten Information und Vorrichtung zur Durchführung desselben
DE1449837C (de) Vorrichtung zur Prufzeichenberech nung fur die Informationsabsicherung
DE1090885B (de) Parallel arbeitende, synchrone, elektrische, binaerrechnende Zahlenrechenmaschine, welche die Operation x+yz selbsttaetig auszufuehren vermag
DE1295245B (de) Vorrichtung zur Pruefzeichenberechnung oder zur Addition von Quotienten im Zahlensystem der Restklassen
DE1219973B (de) Verfahren und Schaltungsanordnung zur Verringerung der bei der UEbertragung eines codierten Wertes benoetigten Stellenzahl, insbesondere in PCM-Systemen
DE1766432C (de) Digitaler Spannungsmesser
DE1958662C (de) Digitaler Impulsfolgenteiler mit optimaler Gleichverteilung der aus einer äquidistanten Eingangsimpulsfolge ausgewählten Impulse einer Ausgangsimpulsfolge
DE1193098B (de) Kontrollvorrichtung fuer einen elektronischen Zaehler mit zwei Registern
DE2704258B2 (de) Digital-Analog-Wandler
DE1499256C (de) Anordnung zur Kontrolle der Zeichen verarbeitung , insbesondere fur Fernmelde Vermittlungsanlagen
DE2050604A1 (de) Schaltung eines Generators fur eine binomische Zufallsfolge von Impulsen
DE1803607C3 (de) Schaltungsanordnung zur Umsetzung einer Dualzahl in eine im BCD Kode ver schlüsselte Dezimalzahl
AT253259B (de) Einrichtung zum Prüfen einer Zeichengruppe mit angehängtem Prüfzeichen