Abstract:
An error correcting system is provided for information sequences divided into bytes of b bits each. The information is encoded in accordance with an H matrix consisting of a predetermined number of submatrices, each of which operates on distinct partitioned portions of the sequence of message bytes. Each of the submatrices are concatenated iteratively by b so that the submatrices can be designated by Hr,b; H(r b),b; H(r 2b),b . . . H(2b c),b where r kb+c and 0
Abstract:
A method for correcting errors in up to three tracks or channels in a multi-track data system is provided. Message data is formed into a codeword by adding three check bytes thereto which are dependent on each other and are generated from the information bytes. After the data has undergone some form of transposition, at which time it is desirable to check for errors and correct any errors within the capability of the code, the transposed data is decoded so as to generate three syndromes. At the time of data transposition, error pointers may be provided. When the provided pointers indicate that either two or three tracks contain errors, error patterns are generated and added to the information already within the tracks in error, to correct the errors. If only one pointer is provided, a check is made to see whether or not another track is in error even though a pointer was not provided, and, if an additional track is in error, its pointer is generated. Thereafter these two tracks are corrected. Similarly, if no pointer is provided, a check is made to determine whether or not there was at least one track in error. If so, the pointer is generated and the error is corrected. An uncorrectable error indication is provided when errors are encountered that lie outside of the correction capability of the code.
Abstract:
Error detection is enhanced by using multiple independent error codes combined with nonlinear changes in the data field as applied to different error codes. Such nonlinear permutations increase the probability of detecting errors thereby maximizing the utilization of check bit redundancies. In a magnetic tape subsystem, error detection and correction can be enhanced by scrambling track-to-error code relationships between a plurality of independent codes. Tracks with the highest probability of errors, i.e., the outside tracks on a 1/2 inch tape, for example, are connected to nonadjacent inputs of error correction code apparatus. Additionally, the input-to-track relationship of various code apparatus can be scrambled, either permanently or during a tape transducing operation. The above permutations provide best advantage with selected error correction codes and systems having identifiable probability of error patterns.
Abstract:
A system for correcting two tracks in error in a multi-track data arrangement is provided. The message data Z1, Z2, . . . Zk is encoded by adding two check bytes C1 and C2 thereto which are generated from the message data which is arranged in blocks of k bytes, where each byte has f bits of data arranged in a cross track direction, where f b X m and m and b are integers >1 and k is an integer 2
Abstract:
A cyclic code is encoded for double error correction in accordance with the following parity check matrix: WHERE THE CODE LENGTH N IS GIVEN BY 2M-1 AND Alpha IS A PRIMITIVE ELEMENT OF GF(2m) represented by a binary column vector. Decoding of the coded message requires establishing a one to one correspondence between n2+n/2 distinct error patterns and the corresponding syndromes. The n2+n/2 distinct syndromes are mapped into n+1/2 fixed syndromes by an arithmetic operation as follows: The syndrome is obtained in two parts for an error in each of digit positions i and j given by: This syndrome is mapped into: There are only n+1/2 distinct values of S'' to cover all possible single and double errors. The error positions resulting from the corresponding S'' are then mapped into actual error locations i and j.
Abstract:
An error correcting system is provided for a parallel track or parallel channel information handling system in which the information is divided into blocks of bytes of b-bits each. The information is encoded by attaching a plurality of check bytes in accordance with an H matrix consisting of a predetermined number of submatrices, each of which operates on distinct partitioned portions of the message bytes. Each of the submatrices are concatenated iteratively by b so that the matrix H can be designated by submatrices Hr,b; H(r b) , b; H(r 2b) ,b. . . H(2b c) ,b where r kb c and 0
Abstract:
Errors in code words fetched from memory or utilized in some other device are detected by apparatus distributed throughout the memory and then corrected. Illustratively, a 72-bit parallel code word, comprising a 64-bit information portion and an 8-bit check portion is fetched from the memory. The check bit generator consists of 8 identical modular units which, in the case of use in a memory, can be located at different locations within the memory. The identical modular units are connected in accordance with connections determined by an H matrix. The H matrix is partitioned into eight equal sections associated with eight information bits forming a byte and a single check bit. The rows of each partition or section are cyclically permutated from section to section. For example, the first row of the first section becomes the second row of the second section, etc. Each partition of the H matrix contains the same number of 1''s and each row within a partition is part of a different code group. Each of the identical modular arrangements contains a logic circuit grouping. The input information byte bits are connected to the circuits of the logic grouping so as to produce as circuit outputs the parities of the part of the code groups in the partition or section associated with the module. The identical modular units also contain circuitry to receive the partial code groups parities from the other modular units concerned with the same code group. These partial code group parities and the partial code group parity of the respective module are combined to provide the check bit for the particular module. The partial code group parity outputs from the module are transmitted to the successive other modules to form the partial code group parity inputs for the respective modules. After the information has been utilized such as writing in storage, the information bits and check bits are read into an error detector which compares the check bits generated from the received information bits with the received check bits. An error locator analyzes any mismatch to determine the location of an error. An error corrector then corrects any information or check bit which is identified as incorrect by the error locator. The error detector can consist of the same identical modular units as the check bit generator.
Abstract:
An improved method and apparatus for encoding and decoding binary data is disclosed. For improving data density for storage or transmission, the waveform has an upper frequency limit such that transitions in the encoded waveform occur no closer together than the time for one data digit. To provide suitable clocking for waveform detection circuits, the waveform has a lower frequency limit that transitions occur no farther apart than two data digit times. In addition, the waveform is symetrical about a zero signal level within narrow limits. The encoding is called ''''zero modulation'''' (or ZM) for zero direct component. Since the waveform has a constrained direct component, it can be used with circuit devices of the type that will not transmit a direct component. Circuits for detecting errors in the decoded waveform are also disclosed.