DE1574528A1 - Verfahren und Vorrichtung zur Bestimmung von Pruefzeichen beliebig vorgegebener Anzahl - Google Patents
Verfahren und Vorrichtung zur Bestimmung von Pruefzeichen beliebig vorgegebener AnzahlInfo
- Publication number
- DE1574528A1 DE1574528A1 DE19681574528 DE1574528A DE1574528A1 DE 1574528 A1 DE1574528 A1 DE 1574528A1 DE 19681574528 DE19681574528 DE 19681574528 DE 1574528 A DE1574528 A DE 1574528A DE 1574528 A1 DE1574528 A1 DE 1574528A1
- Authority
- DE
- Germany
- Prior art keywords
- memory
- mod
- check
- counter
- characters
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1008—Adding 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/1012—Adding 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/104—Adding 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
- "Verfahren und Vorrichtung zur Bestimmung von Prüfzeichen beliebig vorgegebener Anzahl". Die Erfindung betrifft ein Verfahren und eine Vorrichtung zur Berechnung von Prüfziffern beliebig vorgebbarer Anzahl aus Informationsdaten und zur Kontrolle von damit abgesicherten Informationsdaten, deren einzelnen Zeichen Zahlen aus einem Restklassensystem mod M fest zugeordnet sind.
- Die Daten bestehen im allgemeinen aus einer Folge von Zeichen aus einem gegebenen Zeichenvorrat (Dezimalziffern, Alphabet etc.), dem auch die Prüfzeichen entnommen werden. Die Bestimmung der Prüfzeichen erfolgt in systematischer Weise aus den Informationszeichen, und zwar so, daß sich möglichst viele Fehler dadurch erkennen lassen. Hierzu wird zunächst jedem Zeichen eine Zahl aus einem geeigneten Restklassensystem mod M (M Primzahl ":z: Zeichenvorrat) zugeordnet. Die einzelnen Zeichen können dabei natürlich auch binär untercodiert sein oder es lassen sich im Falle binärer Daten mehrere Binärstellen zu einem Zeichen zusammenfassen. Die Prüfzeichen werden dann durch gewichtete Quersummenbildung im gewählten Restklassensystem gewonnen. Bei geeigneter Gewichtsauswahl erhält man dabei eine optimale Absicherung.
- Es wurde bereits ein Verfahren angemeldet, bei dem solche PrÜfzeichen mit geeigneter Gewichtsfolge erzeugt werden. Dieses Verfahren hat jedoch gegenüber dem hier beschriebenen den Nachteil, daß es einen wesentlich höheren Aufwand für die Prüfzeichenherstellung erfordert.
- Die Erfindung ist dadurch gekennzeichnet, daß für jede Prüfziffer ein Speicher verwendet wird, daß nach jeder Eingabe eines Zeichens die zugehörige Zahl zum Inhalt des ersten Speichers Spl mod M addiert wird, der so entstandene Inhalt zum Inhalt des nächsten Speichers Sp2 mod M addiert wird u.s.f., und daß nach Eingabe und Verarbeitung des letzten Informationszeichens bei umgekehrter Verarbeitungsfolge der Inhalt des vorletzten Speichers zum Inhalt des drittletzten Speichers addiert wird u.s.f. und in diesem ersten Schritt nach beendeter Eingabe der Inhalt des ersten Speichers festgelegt wird, danach in einem entsprechenden zweiten Schritt .der Inhalt des zweiten Speichers festgelegt wird u.s.f., bis schließlich zur Festlegung des Inhaltes des drittletzten Speichers, und daB die zuletzt erhaltenen Speicherinhalte die Prüfzeichen ergeben.
- Das hier beschriebene Verfahren benötigt keine explizite Speicherung der Gewichtsfolgen und kommt für jedes Prüfzeichen mit einem einzigen Speicherplatz aus. Es hat deshalb den Vorteil, die Prüfzeichenbestimmung bzw. Prüfung bei optimaler Absicherung mit extrem geringem Aufwand zu ermöglichen.
- Im Folgenden soll die Arbeitsweise des Verfahrens am Beispiel eines Systems mit p = 5 Prüfzeichen, mit denen m = 7 Informationszeichen .im Restklassensystem mod M = 11 abgesichert werden, im einzelnen erläutert werden. Die Informationszeichen mögender Reihe nach mit al bis a7 bezeichnet werden. Vor Beginn wird der Inhalt aller Speicher zu 0 gesetzt. Beim ersten Schritt wird a1 zum Inhalt des ersten Speichers Spl addiert, das Ergebnis zum Inhalt des zweiten Speichers Sp2 usw.' so daB schließlich in allen Speichern der Inhalt a1 steht.
- Beim zweiten Schritt wird a2 zum Inhalt a1 des ersten Speichers Spi addiert, so daß in diesem d.er Wert a1 + a2 entsteht. Dieser Inhalt wird zum Inhalt des zweiten Speichers Sp2 addiert und ergibt dort das Ergebnis 2a1 + a2 usw: In dieser Weise ergeben sich als Inhalte in den Speichern nach dem 2. Schritt:
(Spi): a1 + a2 (Sp2): 2a1 + a2 (Sp3): 3a1 + a2 (Sp4): 4a1 + a2 (Sp5): 5a1 + a2 Der 3. Schritt ergibt folgenden Stand: (Spi): a1 + a2 + a3 (Sp2): 3a1 + 2a2 + a3 (Sp3): 6a1 + 3a2 + a3 (Sp4): 10a1 + 4a2 + a3 (Sp5): 15a1 + 5a2 + a3 Weiterhin erhält man nach Schritt 4: (Spi): a1 + a2 + a3 + a4 (Sp2): 4a1 + 3a2 + 2a3 + a4 (sp3): loai + 6a2 + 3a3 + a4 (Sp4): 20a1 + 10a2 + 4a3 + a4 (Sp5): 35a1 + 15a2 + 5a3 + a4 nach Schritt 5: (SP1): a1 + a2 + a3 + a4 + a5 (SP2): 5a1 + 4a2 + 3a3 + 2a4 + a5 (Sp3): 15a1 + 10a2 + 6a3 + 3a4 + a5 (SP4): 35a1 + 20a2 + 10a3 + 4ad + a5 (Sp5): 70a1 + 35a2 + 15a3 + 5a4 + a5 nach Schritt 6: (Sp1):- a1 + a2 + a3 + a4 + a5 + a6 (Sp2): 6a1 +- 5a2 + 4a3 + 3a4 + 2a5 + a6 (Sp3): 21a1 + 15a2 + 10a3 + 6a4 + 3a5 + a6. (SP4): 56a1 + 35a2 + 20a3 + 10a4 + 4a5 + a6 (Sp5): 126a1 + 70a2 + 35a3 + 15a4 + 5a5 + a6 nach Schritt 7: (SP1): a1 + a2 + a3 + a4 + a5 + a6 + a7 (Sp2): 7a1 + 6a2 + 5a3 + 4a4 + 3a5 + 2a6 + a7 (Sp3): 28a1 + 21a2 + 15a3 + 10a4 + 6a5 + 3a6 + a7 (SP4): 84a1 + 56a2 + 35a3 + 20a4 + 10a5 + 4a6 + a7 (Sp5): 210a1 + 126a2 + 70a3 + 35a4 + 15a5 + 5a6 + a7 oder in Formeln, im@Speicher Spv nach Schritt /u den Inhalt: in den beiden letzten Speichern Sp4 und Sp5. Zur Bestimmung der übrigen Prüfzeichen wird die Bearbeitungsrichtung umge- kehrt und nun vom.vorletzten Speicher Sp.4 ausgegangen. Nach Schritt 8 ergeben sich damit folgende neue Speicherin- halte: (SP3): 112a1 + 77a2 + 50a3 + 30a4 + 16a5 + 7a6 + 2a7 (SP2): 119a1 + 83a2 + 55a3 + 34a4 + 19a5 +:-9a6 + 3a7-,#, (Sp1): 120a1 + 84a2 +, 56a3 +_35a4 + 20a5 + 10a6 + 4.g7 Der letztgenannte Speicher (Sp1) enthält damit das Prüfzei- chen P1. . In Schritt 9 wird wieder ausgehend von Sp4 die Bearbeitung wiederholt, jedoch nur noch bis zum Speicher S%, in dem da- . mit ein weiteres Prüfzeichen P2 entsteht. Die neuen Speicher- inhalte nach Schritt 9 lauten: (SP3): 196a1 + 133a2 + 85a3 + 50a4 + 26a5 + 11a6 + 3a7 (SP2): 315a1 + 216a2 + 140a3 + 84a4 + 45a5 + 20a6 + 6a7 Schließlich ergibt sich im letzten Schritt das noch fehlende Prüfzeichen zu: (Sp3): 280a1 + 189a2 + 120a3 + 70a4 + 36a5 + 15a6 + 4a7 Formelmäßig lassen sich die so gewonnenen Prüfzeichen Pv all- gemein durch.: (v = 192...p) - nd Sp2 Sodann gelangt der Inhalt von (Sp1)'/in en mod-M-Addierer Ad und dessen Ergebnis nach Sp2 usw. Nach beendeter Eingabe wird der Inhalt des vorletzten Speichers (Sp4) und des drittletzten Speichers (Sp3) in Ad addiert und das Ergebnis im letzteren Sp3 abgespeicherto Anschließend wird die Summe der Inhalte von (Sp3) und (Sp2) gebildet und nach Sp2 gebracht, sowie die Summe der Inhalte von (Sp2) und (Sp1) nach Sp1. Im nächsten Schritt wird der gleiche Arbeitsgang bis zum Abspeichern in Sp2 wiederholt und im letzten Schritt bis zum Abspeichern in Sp3o Zur Vereinfachung des Schalters S kann zusätzlich ein Zwischenspeicher Spa verwendet werden, der ebenfalls das jeweilige Ergebnis des Addierers zwischenspeichert oder/und der als Eingabespeicher des einen Summanden des Addierers dient. In Fig. 1b ist letzterer Fall genauer ausgeführt. Durch einen Taktschalter T wird in Taktstellung 1 die Summe der Inhalte des Zwischenspeichers und des über den Schalter S1 angeschlossenen Speichers gebildet und etwas verzögert in Speicher Spa zwischengespeichert. Anschließend erfolgt in Taktstellung 2 die Rückspeicherung in den angeschlossenen Speicher, so daß danach die Summe in beiden Speichern steht und der Schalter S1 in die nächste Stellung rückt. Häufig werden die Prüfzahlen nicht parallel benötigt, sondern zeitlich nacheinander, so daß die Speicher nacheinander abgefragt werden müssen. In diesem Falle kann ausgenutzt werden, daß die Prüfzeichen in einem zeitlichen Ablauf gebildet werden und jeweils im Augenblick der endgültigen Bildung bereits verwendet werden können. Dazu wird der Ausgang des mod M-Addierers Ad jeweils dann abgegriffen, wenn ein endgültiger Speicherinhalt festgelegt wird. Sind die Speicher Spl bis Sp5 als mod-M-Zähler Z1 bis Z5 ausgeführt, so kann der Addierer nebst Aufnahme- und Zwischenspeicher entfallen. Durch eine den ankommenden Zeichen a@ entsprechende Anzahl Impulse wird zunächst der Zähler Z1 um a@ Stellungen weitergestellt. Durch M weitere Impulse gelangt der Zähler Z1 wieder in die gleiche Stellung, während die Impulse nach dem 0-Durchgang des Zählers Z, auch in den Zähler Z2 laufen und damit eine Addition bewirken. Durch M Impulse in den Zähler Z2 und Ankopplung des Zählers Z3 nach dem Nulldurchgang wird eine Addition im letzten Zähler bewirkt u.s.f. Dabei ist eine Anordnung entsprechend Fig. 1a unter Weglassung von Ad und Spo bei gleicher Schalterführung S möglich. Es kann jedoch auch eine Anordnung nach Fig. 2 gewählt werden. Gemäß jedem ankommenden Zeichen aIU gelangen a@ + K o M Impulse in den Zähler Z1, alle Impulse nach dem 1. Nulldurchgang dieses Zählers auch in den Zähler Z2, alle Impulse nach dem 1. Nulldurchgang dieses Zählers auch in den Zähler Z3 u.s.f. K ist dabei eine ganze'Zahl, die entweder dadurch bestimmt wird, daß mindestens ein Nulldurchgang des vorletzten Zählers auftritt oder die fest zu K = p r 1 gewählt wird. Nach Eingabe und Verarbeitung des letzten Informationszeichens stehen zwei Prüfzeichen bereits in den beiden letzten Zählern. Zur Bestimmung der übrigen Prüfzeichen (in Fig. 2 nicht gezeichnet) gelangen K # M Impulse in den vorletzten Zähler, alle Impulse nach dessen Nulldurchgang auch in den drittletzten Zähler u.s.f. K ist dabei wieder eine ganze Zahl, die durch die Forderung nach einem Nulldurchgang des ersten oder zweiten Zählers festgelegt wird oder durch K = p-2 festgesetzt wird. Nach diesem Schritt steht das erste Prüfzeichen im Zähler 1. Zur Bestimmung des zweiten Prüfzeichens (im Fall P.> 3) laufen g # M Impulse in den vorletzten Zähler und in gleicher Weise ein entsprechender Teil in die vorhergehenden Zähler, jedoch jetzt nur noch bis zum 2. Zähler. Zähler Z1 ist also jetzt abgetrennt, Im nächsten Schritt wird Zähler Z2 abgetrennt, so daß keine Veränderung der Zählerstände von Zähler Z1 und Z2 mehr erfolgen u.s.f. Das Verfahren endet mit der Abtrennung des drittletzten Zählers bzw. unmittelbar davor. Die Prüfzeichen können aus den entstandenen Zählerständen direkt oder auch durch Umcodierung, z.B. etwa durch Komplementbildung, gewonnen werden. Werden nur drei Prüfzeichen gewünscht, so kann auch auf die Umkehr der Verarbeitungsrichtung verzichtet werden. Nach Eingabe und Verarbeitung des letzten Informationszeichens können . zwei Prüfzeichen den beiden letzten Speichern entnommen werden, sowie das dritte Prüfzeichen in diesem Falle nach einem weiteren Schritt, welcher der zusätzlichen Eingabe einer 0 entspricht, aus dem mittleren Speicherplatz, Die Prüfzeichen stehen dann jedoch nicht gleichzeitig zur Verfügung, sondern der mittlere Speicher enthält zunächst das zweite Prüfzeichen und nach einem weiteren Schritt das dritte Prüfzeichen, womit das zweite Prüfzeichen gelöscht wird.
Claims (2)
- PATETTTANSPRÜCHE 1. Verfahren zur Berechnung von Prüfziffern beliebig vorgebbarer Anzahl aus Informationsdaten und zur Kontrolle von damit abgesicherten Informationsdaten, deren einzelnen Zeichen Zahlen aus einem Restklassensystem mod M fest zugeordnet sind, dadurch gekennzeichnet, daß für jede Prüfziffer ein Speicher verwendet wird, daß nach jeder Eingabe eines Zeichens die zugehörige Zahl zum Inhalt des ersten Speichers Spl mod M addiert wird, der so entstandene Inhalt zum Inhalt des.nächsten Speichers Sp2 mod M addiert wird u.s.f., und daß nach Eingabe und Verarbeitung des letzten Informationszeichens bei umgekehrter Verarbeitungsfolge der Inhalt des vorletzten Speichers zum Inhalt des drittletzten Speichers addiert wird u.s.fo und in diesem ersten Schritt nach beendeter Eingabe der Inhalt des ersten Speichers festgelegt wird, danach in einem entsprechenden zweiten Schritt der Inhalt des zweiten Speichers festge-_ legt wird u.s.f., bis schließlich Zur Festlegung des Inhaltes des drittletzten Speichers, und daß die zuletzt erhaltenen Speicherinhalte die Prüfzeichen ergeben.
- 2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß
die Prüfzahl /a üs den Speicherinhalten abgeleitet werden, z.B.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GB333969A GB1261382A (en) | 1968-01-24 | 1969-01-21 | Method and device for determining test symbols |
FR6901369A FR2000680A1 (de) | 1968-01-24 | 1969-01-24 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DEP0043887 | 1968-01-24 |
Publications (1)
Publication Number | Publication Date |
---|---|
DE1574528A1 true DE1574528A1 (de) | 1971-05-13 |
Family
ID=7379851
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE19681574528 Pending DE1574528A1 (de) | 1968-01-24 | 1968-01-24 | Verfahren und Vorrichtung zur Bestimmung von Pruefzeichen beliebig vorgegebener Anzahl |
Country Status (1)
Country | Link |
---|---|
DE (1) | DE1574528A1 (de) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE2809341A1 (de) * | 1977-03-04 | 1978-09-07 | Cii Honeywell Bull | System zum kontrollieren der gueltigkeit einer durch eine maschine von einem beleg abgelesenen codegruppe |
-
1968
- 1968-01-24 DE DE19681574528 patent/DE1574528A1/de active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE2809341A1 (de) * | 1977-03-04 | 1978-09-07 | Cii Honeywell Bull | System zum kontrollieren der gueltigkeit einer durch eine maschine von einem beleg abgelesenen codegruppe |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE3742098C2 (de) | ||
DE2418653C3 (de) | Vorrichtung zum Anzeigen eines Extremwertes einer Folge von Digitalwerten | |
DE3002992C2 (de) | Verfahren und Vorrichtung zur Analog/Digital-Umsetzung | |
DE2508706A1 (de) | Codieren und decodieren mit einem code variierbarer wortlaenge und gegebenem bitzahlverhaeltnis | |
DE1162398B (de) | Verdichter fuer Daten, die aus Bits verschiedener Wertigkeit bestehen | |
DE2519381A1 (de) | Datenverarbeitungssystem | |
DE2518588B2 (de) | Verfahren zur ueberwachung der folgerichtigkeit von codesignalgruppen in einrichtungen der nachrichtentechnik | |
DE2503107A1 (de) | Korrekturcode fuer impulsfehler | |
CH461116A (de) | Digital-Positionsmessvorrichtung | |
DE3435539C2 (de) | ||
DE3411015A1 (de) | Verfahren und einrichtung zur signaltechnisch sicheren bildschirmdarstellung eines meldebildes | |
DE2235802C2 (de) | Verfahren und Einrichtung zur Prüfung nichtlinearer Schaltkreise | |
DE3742142A1 (de) | Verfahren und vorrichtung zur kompression und rekonstruktion von datenfolgen | |
DE1574528A1 (de) | Verfahren und Vorrichtung zur Bestimmung von Pruefzeichen beliebig vorgegebener Anzahl | |
DE3329023A1 (de) | Einrichtung zum pruefen logischer schaltwerke | |
DE3788329T2 (de) | Gerät zum Anzeigen des Wertes einer Variablen. | |
DE1474024C3 (de) | Anordnung zur willkürlichen Umordnung von Zeichen innerhalb eines Informationswortes | |
DE2111670A1 (de) | Anordnung fuer die Anzeige der mittleren Rate des Auftretens eines ein Ereignis anzeigenden Signals | |
DE3789376T2 (de) | Verfahren zur Fehlererkennung und -korrektur in einem digitalen Rechner. | |
DE3719581C2 (de) | ||
DE2920809A1 (de) | Verfahren und schaltungsanordnung zur synchronisierung bei der uebertragung von digitalen nachrichtensignalen | |
DE4014767A1 (de) | Verfahren zum gewinnen eines elektrischen signals durch korrelation | |
DE1212152C2 (de) | Statischer Zaehler | |
DE3741252C2 (de) | ||
DE3942150C2 (de) | Verfahren und Schaltungsanordnung zur Datensicherung in Speichereinheiten |