DE3543976A1 - Arrangement for generating check words for data blocks - Google Patents
Arrangement for generating check words for data blocksInfo
- Publication number
- DE3543976A1 DE3543976A1 DE19853543976 DE3543976A DE3543976A1 DE 3543976 A1 DE3543976 A1 DE 3543976A1 DE 19853543976 DE19853543976 DE 19853543976 DE 3543976 A DE3543976 A DE 3543976A DE 3543976 A1 DE3543976 A1 DE 3543976A1
- Authority
- DE
- Germany
- Prior art keywords
- word
- data
- words
- memory
- test
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, 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/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error 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
Landscapes
- Physics & Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
Description
Die Erfindung betrifft eine Anordnung zum Erzeugen von Prüfwörtern für Datenblöcke gemäß dem Oberbegriff des Anspruchs 1.The invention relates to an arrangement for generating Check words for data blocks according to the generic term of Claim 1.
Aus "Taschenbuch der Informatik" von Steinbuch/Weber, Band 2, Seiten 111 bis 115, Springer-Verlag, 1974 sind fehlererkennende und korrigierende Codes bekannt, bei denen Datenblöcken vor deren Weiterverarbeitung, wie Übertragung oder Speicherung, Prüfwörter hinzugefügt werden. Diese werden vor der Übertragung eines jeden Datenblockes durch eine je nach Art des Sicherungscodes mehr oder weniger aufwendige Rechenoperation gewonnen, z. B. wird die zu übertragende Information durch ein Polynom dividiert und der Divisionsrest zusammen mit der Information übertragen. Nach der Übertragung oder dem Auslesen aus dem Speicher werden die Datenblöcke nochmals derselben Rechenoperation unterworfen, und das dabei gebildete Prüfwort wird mit dem empfangenen verglichen. Im Falle einer Abweichung kann, falls der Sicherungscode dies zuläßt, der Fehler korrigiert oder die Übertragung wiederholt werden. Für diese Art der Datensicherung müssen, wenn mit hoher Datenrate übertragen oder gespeichert wird, die Prüfwörter ebenfalls mit hoher Geschwindigkeit berechnet werden, wozu ein sehr leistungsfähiger und damit aufwendiger Rechner erforderlich ist.From "Taschenbuch der Informatik" by Steinbuch / Weber, Volume 2, Pages 111 to 115, Springer-Verlag, 1974 are error-detecting and corrective codes in which data blocks are known before further processing, such as transfer or Storage, test words can be added. These will before the transmission of each data block by a depending on the type of security code, more or less complex Arithmetic operation won, e.g. B. will be the one to be transferred Information divided by a polynomial and the Division remainder transferred together with the information. After transferring or reading from memory the data blocks become the same arithmetic operation again subject, and the test word thus formed is with the received received. In the event of a discrepancy, if the security code permits, the error is corrected or the transmission can be repeated. For this type of Backup must be done when transferred at high data rate or saved, the test words also with high Speed are calculated, which is a very powerful and therefore a complex computer is required.
Der vorliegenden Erfindung liegt die Aufgabe zugrunde, eine Anordnung zu schaffen, mit der die Prüfwörter mit einfachen Mitteln schnell gewonnen werden können. The present invention has for its object a To create arrangement with which the test words with simple Funds can be obtained quickly.
Diese Aufgabe wird mit den im kennzeichnenden Teil des Anspruchs 1 angegebenen Maßnahmen gelöst.This task is carried out in the characteristic part of the Claim 1 specified measures solved.
Für die gebräuchlichen Sicherungscodes ist die logische Verknpüfung, die bitweise Addition ohne Übertrag, also eine EXKLUSIV-ODER-Verknüpfung der einander entsprechenden Bits. Vorteilhaft haben die Wörter eine Länge von je 8 Bit, jedoch ist auch der eine Grenzfall von 1 Bit möglich. Es sind dann doppelt so viele Speicherzellen erforderlich, wie der Datenblock Bit hat, im anderen Grenzfall besteht der Block aus einem einzigen Wort. Bei einer Blocklänge von n Bit ist die Anzahl der Speicherzellen dann gleich 2 n , also im allgemeinen unbrauchbar groß. Vorteilhaft ist die Datenwortlänge gleich der Prüfwortlänge. Dies bedeutet, daß bei einer Blocklänge von 256 Bit und einer Prüfwortlänge von 8 Bit der Block in 32 Wörter von je 8 Bit unterteilt wird.For the common security codes, the logical combination, the bitwise addition without carry, is an EXCLUSIVE-OR combination of the corresponding bits. The words advantageously have a length of 8 bits each, but a limit case of 1 bit is also possible. Then twice as many memory cells are required as the data block has bits, in the other limit the block consists of a single word. With a block length of n bits, the number of memory cells is then equal to 2 n , that is to say generally unusable. The data word length is advantageously equal to the test word length. This means that with a block length of 256 bits and a test word length of 8 bits, the block is divided into 32 words of 8 bits each.
Anhand der Zeichnung, in der das Prinzipschaltbild eines Ausführungsbeispiels dargestellt ist, werden im folgenden die Erfindung und weitere Ausgestaltungen näher beschrieben und erläutert.Using the drawing, in which the block diagram of a Embodiment is shown below the invention and further embodiments described in more detail and explained.
Mit DBL ist ein Datenblock mit 16 Wörtern W 1, W 2 . . . W 16 zu je 8 Bit bezeichnet. Die Wörter werden, von einem Taktgeber TG gesteuert, parallel in ein Senderegister SRG eingetragen, aus dem sie seriell zur Übertragung ausgelesen werden. Um eine kontinuierliche Übertragung sicherzustellen, können zwei Senderegister vorhanden sein, in die wechselweise die Datenwörter eingetragen und seriell ausgelesen werden. Nach einem Startimpuls, der einem Eingang ST des Taktgebers TG zugeführt wird, gibt dieser über einen Ausgang T 1 einen Übernahmeimpuls auf das Senderegister SRG und ein Adressenregister ADR sowie einen Rücksetzimpuls auf die Rücksetzeingänge R eines Wortzählers WZ und eines Pufferregisters PRG. Das erste Wort W 1 wird daher in die beiden Register SRG und ADR eingetragen und der Wortzähler WZ sowie das Pufferregister PRG auf Null gestellt. Der Inhalt des Adressenregisters ADR und der Stand des Wortzählers WZ werden als Adresse dem Adresseneingang AE eines Speichers SP zugeführt, der 16 Speicherbereiche BR 1, BR 2 . . . BR 16 mit je 256 Zellen zu 8 Bit aufweist. Im Bereich BR 1 sind die 256 Prüfwörter für alle möglichen Datenwörter W 1 enthalten. Entsprechend sind die Prüfwörter für die Datenwörter W 2 im Bereich BR 2 enthalten und so fort. Die Basisadressen für die einzelnen Bereiche werden vom Wortzähler WZ geliefert, die Teiladressen für die einzelnen Prüfwörter sind die im Adressenregister ADR enthaltenen Datenwörter. Die Speicheradressen sind in hexadezimaler Schreibweise für einige ausgewählte Zellen angegeben.With DBL is a data block with 16 words W 1 , W 2 . . . W 16 with 8 bits each. The words, controlled by a clock generator TG , are entered in parallel in a transmission register SRG , from which they are read out serially for transmission. In order to ensure continuous transmission, there can be two transmit registers, into which the data words are alternately entered and read out serially. After a start pulse, which is fed to an input ST of the clock generator TG , this gives an takeover pulse to the transmit register SRG and an address register ADR via an output T 1 and a reset pulse to the reset inputs R of a word counter WZ and a buffer register PRG . The first word W 1 is therefore entered in the two registers SRG and ADR and the word counter WZ and the buffer register PRG are set to zero. The content of the address register ADR and the status of the word counter WZ are supplied as addresses to the address input AE of a memory SP , which has 16 memory areas BR 1 , BR 2 . . . BR 16 with 256 cells of 8 bits each. The BR 1 area contains the 256 test words for all possible data words W 1 . Correspondingly, the test words for the data words W 2 are contained in the area BR 2 and so on. The base addresses for the individual areas are supplied by the word counter WZ , the partial addresses for the individual test words are the data words contained in the address register ADR . The memory addresses are given in hexadecimal notation for some selected cells.
Mit der Übernahme des ersten Datenwortes W 1 in das Adressenregister ADR und dem Rückstellen des Zählers WZ wird über eine Verzögerungsstufe VZ 1 ein Lesebefehl an den Speicher SP gegeben, von dem über einen Datenausgang DA der Inhalt der Zelle 001(H) auf den Eingang einer EXKLUSIV- ODER-Anordnung EXO ausgegeben wird. Diese besteht aus acht EXKLUSIV-ODER-Gliedern, deren einen Eingängen das jeweils aus dem Speicher SP ausgelesene Prüfwort zugeführt ist. Ihre anderen Eingänge sind an die acht Ausgänge des Pufferregisters PRG angeschlossen. Da das Pufferregister PRG nach dem Rücksetzen nur Signale log. "0" enthält, gibt die EXKLUSIV- ODER-Anordnung EXO das vom Speicher SP abgegebene Prüfwort unverändert aus. Dieses Prüfwort wird mit einem Übernahmeimpuls, der mittels einer Verzögerungsstufe VZ 2 aus dem Leseimpuls für den Schreiber SP abgeleitet ist, in das Pufferregister PRG übernommen. Der Inhalt des Pufferregisters PRG ist daher zu diesem Zeitpunkt "01101100".With the transfer of the first data word W 1 into the address register ADR and the resetting of the counter WZ , a read command is given to the memory SP via a delay stage VZ 1 , from which the content of cell 001 (H) is input to a via a data output DA EXCLUSIVE OR arrangement EXO is output. This consists of eight EXCLUSIVE-OR gates, one input of which is supplied with the test word read from the memory SP . Your other inputs are connected to the eight outputs of the PRG buffer register. Since the buffer register PRG only logs signals after the reset. Contains "0", the EXCLUSIVE OR arrangement EXO outputs the test word emitted by the memory SP unchanged. This test word is transferred into the buffer register PRG with a takeover pulse, which is derived from the read pulse for the writer SP by means of a delay stage VZ 2 . The content of the buffer register PRG is therefore "01101100" at this time.
Während der Übertragung des ersten Datenwortes W 1 wird am Eingang des Senderegisters SRG das zweite Datenwort W 2 bereitgestellt. Nach der Übertragung gibt der Taktgeber TG einen Übernahmeimpuls auf das Senderegister SRG und das Adreßregister ADR sowie einen Zählimpuls auf den Wortzähler WZ und ferner über die Verzögerungsstufe VZ 1 einen Leseimpuls auf den Speicher SP. Es wird daher das Prüfwort "10011110" aus der Speicherzelle mit der Adresse 1FF(H) ausgelesen und mit dem im Pufferregister PRG enthaltenen Prüfwort EXKLUSIV-ODER-verknüpft. Das Ergebnis ist 11110010. Mit diesem wird das im Pufferregister PRG enthaltene Wort überschrieben. Entsprechend wird mit jedem Datenwort eine neue Speicheradresse und ein neues Prüfwort im Pufferregister PRG gebildet. Es ist ersichtlich, daß für einen Speicherzugriff und eine EXKLUSIV-ODER-Verknüpfung und Eintrag des Verknüpfungsergebnisses in das Pufferregister PRG die Zeit zur Verfügung steht, die für die Übertragung von 8 Bit erforderlich ist. Es kann daher auch bei einer hohen Datenübertragungsrate das Prüfwort während der Übertragung gebildet werden. Mit dem letzten Datenwort W 16 wird im Speicherbereich BR 16 die Zelle mit der Adresse FFC(H) aufgerufen und deren Inhalt mit dem des Pufferregisters PRG EXKLUSIV-ODER-verknüpft. Das so gebildete Ergebnis ist das Prüfwort für den Datenblock DBL und wird im Pufferregister PRG für die Übertragung bereitgestellt. Nach der Übertragung des Wortes W 16 gibt der Taktgeber TG über seinen Ausgang T 2 einen Übernahmeimpuls auf das Schieberegister SRG, so daß in dieses das Prüfwort zur Übertragung eingeschrieben wird. Unmittelbar anschließend kann ein weiterer Datenblock übertragen und gleichzeitig das Prüfwort gebildet werden.During the transmission of the first data word W 1 , the second data word W 2 is provided at the input of the transmission register SRG . After the transmission, the clock generator TG gives a take-over pulse to the transmission register SRG and the address register ADR and a counting pulse to the word counter WZ and furthermore a read pulse to the memory SP via the delay stage VZ 1 . The test word "10011110" is therefore read out of the memory cell with the address 1FF (H) and EXCLUSIVE-OR-linked with the test word contained in the buffer register PRG . The result is 11110010. This overwrites the word contained in the buffer register PRG . Accordingly, a new memory address and a new test word are formed in the buffer register PRG with each data word. It can be seen that the time required for the transfer of 8 bits is available for a memory access and an EXCLUSIVE-OR link and entry of the link result in the buffer register PRG . The test word can therefore be formed during the transmission even with a high data transmission rate. With the last data word W 16 , the cell with the address FFC (H) is called in the memory area BR 16 and its content is EXCLUSIVE-OR-linked with that of the buffer register PRG . The result thus formed is the test word for the data block DBL and is made available for transmission in the buffer register PRG . After the word W 16 has been transmitted, the clock generator TG outputs a takeover pulse to the shift register SRG via its output T 2 , so that the test word is written into it for transmission. Immediately afterwards, another data block can be transmitted and the test word can be formed at the same time.
Im beschriebenen Ausführungsbeispiel werden zwecks leichterem Verständnis für die einzelnen Funktionen gesonderte Baueinheiten, wie Zähler, Register, EXKLUSIV-ODER-Glied, angegeben. Zweckmäßig wird jedoch anstelle dieser Einheiten ein Mikroprozessor eingesetzt, der alle Funktionen, zumindest zum größten Teil, übernimmt. In the described embodiment, for the purpose of being easier Understanding the individual functions separately Units, such as counters, registers, EXCLUSIVE OR elements, specified. Instead of these units, however, it is useful a microprocessor is used that performs all functions, at least for the most part.
Für den Empfang der Daten ist zunächst eine byteweise Serien-Parallel-Umsetzung erforderlich. Die empfangenen Daten werden zwischengespeichert und gleichzeitig wird, wie oben für den Sendevorgang beschrieben, ein Block- Prüfwort gebildet. Dieses wird mit dem empfangenen Prüfwort verglichen. Im Falle einer Differenz werden die üblichen Sicherungsmaßnahmen, wie Fehlerkorrektur, mit Hilfe des Prüfwortes oder Wiederholung der Datenübertragung, durchgeführt.There is first a byte for the reception of the data Series-parallel implementation required. The received Data is cached and at the same time, as described above for the sending process, a block Test word formed. This is with the received test word compared. In the event of a difference, the usual security measures, such as error correction, with Help of the test word or repetition of the data transmission, carried out.
Claims (4)
- die Datenblöcke sind in Wörter vorgegebener Länge unterteilt,
- Prüfwörter für sämtliche Bit-Kombinationen des ersten Datenwortes (W 1) sind in einem ersten Speicherbereich (BR 1), die des zweiten Wortes in einem zweiten Speicherbereich (BR 2) und so fort hinterlegt;
- das erste Datenwort (W 1) wird als Adresse dem ersten Speicherbereich (BR 1), das zweite Datenwort (W 2) dem zweiten Speicherbereich (BR 2) und so fort zugeführt, wobei das Prüfwort des ersten Datenwortes mit dem des zweiten Datenwortes logisch verknüpft wird und das Verknüpfungsergebnis mit dem jeweils nachfolgend ausgelesenen Prüfwort logisch verknüpft wird und das Ergebnis nach der Verknüpfung mit dem letzten Datenwort (W 16) das Prüfwort für den Datenblock ist.1. Arrangement for generating test words for data blocks, characterized by
the data blocks are divided into words of a predetermined length,
- Check words for all bit combinations of the first data word ( W 1 ) are stored in a first memory area ( BR 1 ), those of the second word in a second memory area ( BR 2 ) and so on;
- The first data word ( W 1 ) is supplied as an address to the first memory area ( BR 1 ), the second data word ( W 2 ) to the second memory area ( BR 2 ) and so on, the test word of the first data word being logical with that of the second data word is linked and the link result is logically linked to the test word subsequently read out and the result after the link with the last data word ( W 16 ) is the check word for the data block.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE19853543976 DE3543976A1 (en) | 1985-12-12 | 1985-12-12 | Arrangement for generating check words for data blocks |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE19853543976 DE3543976A1 (en) | 1985-12-12 | 1985-12-12 | Arrangement for generating check words for data blocks |
Publications (2)
Publication Number | Publication Date |
---|---|
DE3543976A1 true DE3543976A1 (en) | 1987-06-19 |
DE3543976C2 DE3543976C2 (en) | 1988-12-22 |
Family
ID=6288297
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE19853543976 Granted DE3543976A1 (en) | 1985-12-12 | 1985-12-12 | Arrangement for generating check words for data blocks |
Country Status (1)
Country | Link |
---|---|
DE (1) | DE3543976A1 (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE3707143A1 (en) * | 1987-03-06 | 1988-09-15 | Blaupunkt Werke Gmbh | DEVICE FOR RECEIVING DATA |
EP0664626A1 (en) * | 1993-12-08 | 1995-07-26 | TEMIC TELEFUNKEN microelectronic GmbH | Data transmission method |
-
1985
- 1985-12-12 DE DE19853543976 patent/DE3543976A1/en active Granted
Non-Patent Citations (3)
Title |
---|
D.J.GAUSHELL "Error Control in Digital Trans- mission" Control Engineering, Vol.19, H.6, 1972, S.58-64 * |
R.KLUTTIG, E.WELFONDER, "Universelles PDV-Bus- Interface", Elektronik 1979, H.25, S.73-81 * |
STEINBUCH/WEBER, "Taschenbuch der Informatik", Bd.2, Springer Verlag 1974, S.111-115 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE3707143A1 (en) * | 1987-03-06 | 1988-09-15 | Blaupunkt Werke Gmbh | DEVICE FOR RECEIVING DATA |
EP0664626A1 (en) * | 1993-12-08 | 1995-07-26 | TEMIC TELEFUNKEN microelectronic GmbH | Data transmission method |
Also Published As
Publication number | Publication date |
---|---|
DE3543976C2 (en) | 1988-12-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE2328869C2 (en) | Method and circuit arrangement for operating a digital storage system | |
DE2806024C2 (en) | ||
DE2916710C2 (en) | ||
DE3513834C2 (en) | ||
DE3111447C2 (en) | ||
DE1250163B (en) | Device for the parity check of memory words | |
DE2311503C2 (en) | Data processing system with several central units | |
EP1222545B1 (en) | Method and circuit configuration for storing data words in a ram module | |
DE2657118A1 (en) | ARRANGEMENT FOR THE PROCESSING OF DATA | |
DE3543976C2 (en) | ||
DE3000012A1 (en) | CIRCUIT ARRANGEMENT FOR EXECUTING A TRANSMISSION COMMAND IN A DATA PROCESSING SYSTEM | |
EP0439649A1 (en) | Device for generating error patterns with soft decision decoding of block codes | |
DE2004934B2 (en) | MEMORY ARRANGEMENT WITH CIRCUITS FOR ERROR DETECTION AND ERROR CORRECTION | |
DE3433679A1 (en) | Method and arrangement for securing important information in memory units with optional access, particularly for control bits in buffer memories acting as cache memories in a data processing system | |
EP0029216B1 (en) | Data transmission device with a buffer memory and devices for data protection | |
DE2742881C2 (en) | ||
DE3009317A1 (en) | HYBRID ASSOCIATIVE MEMORY | |
DE3431770A1 (en) | Method and arrangement for the error control of important information in memory units with random access, in particular such units comprising RAM modules | |
DE1424746A1 (en) | Data processing system | |
DE2133323A1 (en) | ERROR DETECTION AND CORRECTION CIRCUIT FOR BINARY DATA SIGNALS | |
DE2939412A1 (en) | CIRCUIT ARRANGEMENT FOR ADDRESSING DATA FOR READING AND WRITING ACCESSES IN A DATA PROCESSING SYSTEM | |
DE2837709C2 (en) | Circuit arrangement for handling partial words in computer systems | |
DE4030629C2 (en) | Arrangement for securing control information coupled to the memory entries of a working memory in a multiprocessor system | |
DE1943859C3 (en) | Method and device for checking and / or correcting data words and / or for generating check digits | |
DE4244275C1 (en) | Verification of data integrity with buffered data transmission |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OP8 | Request for examination as to paragraph 44 patent law | ||
D2 | Grant after examination | ||
8364 | No opposition during term of opposition | ||
8339 | Ceased/non-payment of the annual fee |