USH1176H - Bit dispersement method for enhanced SEC-DED error detection and correction in multi-bit memory devices - Google Patents
Bit dispersement method for enhanced SEC-DED error detection and correction in multi-bit memory devices Download PDFInfo
- Publication number
- USH1176H USH1176H US07/400,071 US40007189A USH1176H US H1176 H USH1176 H US H1176H US 40007189 A US40007189 A US 40007189A US H1176 H USH1176 H US H1176H
- Authority
- US
- United States
- Prior art keywords
- bit
- bits
- sec
- ded
- memory device
- 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.)
- Abandoned
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/1028—Adjacent errors, e.g. error in n-bit (n>1) wide storage units, i.e. package error
Definitions
- This invention relates generally to methods of error detection and correction for computer systems.
- SEC-DED Single Error Correction--Double Error Detection
- the SEC-DED method of error detection and correction is capable of detecting two bits in error and correcting one bit in error.
- the number of bits in error is dependent on the type of failure that occurs. For example, the failure of a single memory cell would cause only a single bit error, while the failure of a multi-bit memory device would cause multi-bit errors. It is readily recognized in the art that the SEC-DED method is most effective in those memory organizations that use single bit memory devices. Thus, the failure of a memory device corrupts at most one bit position in a data word.
- the present invention discloses a method of detecting multi-bit errors using SEC-DED codewords when the multi-bit memory devices are ⁇ 4 bits wide.
- the bits from each memory device are dispersed into separate bytes of the codeword.
- the dispersal involves regrouping or rewiring the bit positions from each multi-bit memory device. Such dispersal permits the SEC-DED codeword to detect the multi-bit errors that occur when the multi-bit memory device fails.
- FIGS 1A-FIG. 1I herein after collectively referred to as FIG. 1, show a (72,64) coding matrix and bit dispersement pattern used to detect multi-bit memory device failures.
- the present invention discloses a method of detecting multi-bit errors using a SEC-DED coding method when the multi-bit memory devices are ⁇ 4 bits wide.
- the method comprises dispersing bits from each multi-bit memory device into separate bytes of the codeword. Such dispersal permits the SEC-DED codeword to detect multi-bit errors.
- the dispersal involves regrouping or rewiring the bit positions from each multi-bit memory device.
- One advantage of the present invention is that the same SEC-DED encoding and decoding hardware can be used as with standard SEC-DEDs.
- SEC-DEDs are linear block codes.
- a (n,k) linear block code is a k-dimensional subspace of a binary n-dimensional vector space. This vector space is called a codeword.
- An r x n parity check matrix H is used to describe the code.
- V (v 1 , v 2 , . . ., v n ) is an n-bit vector
- the encoding process for codewords consists of generating r check bits for every k data bits.
- the encoding process of a codeword consists of generating 8 check bits for a set of 64 data bits.
- the first k bits of a codeword are the data bits and the last r bits are the check bits.
- the H matrix is illustrated in FIG. 1 where P is an 8 ⁇ 64 binary matrix comprised of 8 ⁇ 8 submatrices 10-24 and I r is the 8 ⁇ 8 identity matrix 26.
- the "X" characters in the H matrix represent "1" bits for the SEC-DED coding method and the "-" characters in the H matrix represent "0" bits for the SEC-DED coding method.
- An algorithm for correcting single errors and detecting multiple errors first determines whether S is zero. If S is zero, then the codeword is assumed to be error-free. If S is not zero, then a match is attempted for S and a column of the H matrix. If S is the same as the ith column of H, then the ith bit of the codeword is in error. If S is not equal to any column of H, then the errors detected are uncorrectable. When applied to a SEC-DED codeword, this algorithm corrects all single errors and detects all double errors.
- Multi-bit errors may not be detected or may be falsely corrected.
- the extent of multiple errors detected depends on the structure of the codeword.
- Multi-bit errors can be detected by Single Error Correction--Double Error Detection--Single Byte Detection (SEC-DED-SBD) codewords when the number of bits in error is less than or equal to four.
- Most SEC-DED codewords can be reconfigured as SEC-DED-SBD codewords to detect single-byte errors. The reconfiguration involves the regrouping or rewiring of the bit positions of the original code. Since the same encoding and decoding hardware can be used, no additional hardware is required to reconfigure a SEC-DED codeword for single-byte error detection.
- FIG. 1 illustrates the bit dispersal method of the present invention.
- each column of the H matrix is labeled with a reference number which indicates which 4-bit wide memory device stores the corresponding bit of the codeword.
- each bit from a 4-bit wide memory device is dispersed to a different byte of the codeword.
- the bit dispersal pattern comprises: bits 0, 9, 23, and 28 from a first 4-bit wide memory device 28; bits 1, 10, 21, and 30 from a second 4-bit wide memory device 30; bits 2, 11, 22, and 31 from a third 4-bit wide memory device 32; bits 3, 8, 20, and 29 from a fourth 4-bit wide memory device 34; bits 4, 13, 19, and 24 from a fifth 4-bit wide memory device 36; bits 5, 14, 17, and 26 from a sixth 4-bit wide memory device 38; bits 6, 15, 18, and 27 from a seventh 4-bit wide memory device 40; bits 7, 12, 16, and 25 from a eighth 4-bit wide memory device 42; bits 32, 41, 55, and 60 from a ninth 4-bit wide memory device 44; bits 33, 42, 53, and 62 from a tenth 4-bit wide memory device 46; bits 34, 43, 54, and 63 from an eleventh 4-bit wide memory device 48; bits 35, 40, 52, and 61 from an twelfth 4-bit wide memory device 50; bits 36, 45, 51, and 56 from an thirteenth 4-bit wide memory device
- bit dispersal pattern calculated to achieve the same result may be used.
- the bits are dispersed so that none of the bits from a multi-bit memory device share the same byte of the codeword. Only the check bits in the check byte share two memory devices between the eight bits thereof.
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)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
Description
Claims (1)
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US07/400,071 USH1176H (en) | 1989-08-30 | 1989-08-30 | Bit dispersement method for enhanced SEC-DED error detection and correction in multi-bit memory devices |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US07/400,071 USH1176H (en) | 1989-08-30 | 1989-08-30 | Bit dispersement method for enhanced SEC-DED error detection and correction in multi-bit memory devices |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| USH1176H true USH1176H (en) | 1993-04-06 |
Family
ID=23582122
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| US07/400,071 Abandoned USH1176H (en) | 1989-08-30 | 1989-08-30 | Bit dispersement method for enhanced SEC-DED error detection and correction in multi-bit memory devices |
Country Status (1)
| Country | Link |
|---|---|
| US (1) | USH1176H (en) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5781568A (en) * | 1996-02-28 | 1998-07-14 | Sun Microsystems, Inc. | Error detection and correction method and apparatus for computer memory |
Citations (9)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US3812336A (en) | 1972-12-18 | 1974-05-21 | Ibm | Dynamic address translation scheme using orthogonal squares |
| US4006467A (en) | 1975-11-14 | 1977-02-01 | Honeywell Information Systems, Inc. | Error-correctible bit-organized RAM system |
| US4485471A (en) | 1982-06-01 | 1984-11-27 | International Business Machines Corporation | Method of memory reconfiguration for fault tolerant memory |
| US4488298A (en) | 1982-06-16 | 1984-12-11 | International Business Machines Corporation | Multi-bit error scattering arrangement to provide fault tolerant semiconductor static memories |
| US4489403A (en) | 1982-05-24 | 1984-12-18 | International Business Machines Corporation | Fault alignment control system and circuits |
| US4506364A (en) | 1982-09-30 | 1985-03-19 | International Business Machines Corporation | Memory address permutation apparatus |
| US4584682A (en) | 1983-09-02 | 1986-04-22 | International Business Machines Corporation | Reconfigurable memory using both address permutation and spare memory elements |
| US4802170A (en) | 1987-04-29 | 1989-01-31 | Matrox Electronics Systems Limited | Error disbursing format for digital information and method for organizing same |
| US4835627A (en) | 1984-02-21 | 1989-05-30 | Mitsubishi Denki Kabushiki Kaisha | Magnetic recorder/reproducer |
-
1989
- 1989-08-30 US US07/400,071 patent/USH1176H/en not_active Abandoned
Patent Citations (9)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US3812336A (en) | 1972-12-18 | 1974-05-21 | Ibm | Dynamic address translation scheme using orthogonal squares |
| US4006467A (en) | 1975-11-14 | 1977-02-01 | Honeywell Information Systems, Inc. | Error-correctible bit-organized RAM system |
| US4489403A (en) | 1982-05-24 | 1984-12-18 | International Business Machines Corporation | Fault alignment control system and circuits |
| US4485471A (en) | 1982-06-01 | 1984-11-27 | International Business Machines Corporation | Method of memory reconfiguration for fault tolerant memory |
| US4488298A (en) | 1982-06-16 | 1984-12-11 | International Business Machines Corporation | Multi-bit error scattering arrangement to provide fault tolerant semiconductor static memories |
| US4506364A (en) | 1982-09-30 | 1985-03-19 | International Business Machines Corporation | Memory address permutation apparatus |
| US4584682A (en) | 1983-09-02 | 1986-04-22 | International Business Machines Corporation | Reconfigurable memory using both address permutation and spare memory elements |
| US4835627A (en) | 1984-02-21 | 1989-05-30 | Mitsubishi Denki Kabushiki Kaisha | Magnetic recorder/reproducer |
| US4802170A (en) | 1987-04-29 | 1989-01-31 | Matrox Electronics Systems Limited | Error disbursing format for digital information and method for organizing same |
Non-Patent Citations (2)
| Title |
|---|
| Franco, Coding for Error-Free Communications, Electro-Technology, Jan. 1968, FIG. 7. |
| Singh et al., Word Line, Bit Line Address Interchanging to Enhance Memory Fault Tolerance, IBM Tech. Discl. Bulletin, vol. 26, No. 6, Nov. 1983, pp. 2747-2748. |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5781568A (en) * | 1996-02-28 | 1998-07-14 | Sun Microsystems, Inc. | Error detection and correction method and apparatus for computer memory |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US5418796A (en) | Synergistic multiple bit error correction for memory of array chips | |
| Hsiao | A class of optimal minimum odd-weight-column SEC-DED codes | |
| US9600365B2 (en) | Local erasure codes for data storage | |
| US6081918A (en) | Loss resilient code with cascading series of redundant layers | |
| US5856987A (en) | Encoder and decoder for an SEC-DED-S4ED rotational code | |
| EP2218003B1 (en) | Correction of errors in a memory array | |
| US8806295B2 (en) | Mis-correction and no-correction rates for error control | |
| JPS5960654A (en) | Error correction system | |
| EP0075985A1 (en) | A data processing device for processing multiple-symbol data-words based on a symbol-correcting code and having multiple operating modes | |
| US20180343020A1 (en) | Generalized low-density parity-check (gldpc) code with variable length constituents | |
| US5757823A (en) | Error detection and correction for four-bit-per-chip memory system | |
| US5450423A (en) | Data error correcting/detecting system and apparatus compatible with different data bit memory packages | |
| US6539513B1 (en) | Dual functioning symbol error correction code | |
| US4882731A (en) | Data processing device composed of four data processing modules of identical construction, with protection both against simultaneous single-bit failures in the data processing modules and against failure of a single data processing module | |
| EP0300139B1 (en) | Error correcting code for b-bit-per-chip memory with reduced redundancy | |
| US4713816A (en) | Three module memory system constructed with symbol-wide memory chips and having an error protection feature, each symbol consisting of 2I+1 bits | |
| US5535227A (en) | Digital information error correcting apparatus for single error correcting (SEC), double error detecting (DED), single byte error detecting (SBED), and odd numbered single byte error correcting (OSBEC) | |
| US12261625B2 (en) | Single error correct double error detect (SECDED) error coding with burst error detection capability | |
| US6463563B1 (en) | Single symbol correction double symbol detection code employing a modular H-matrix | |
| Breitbach et al. | Array codes correcting a two-dimensional cluster of errors | |
| US11700017B2 (en) | Method and system for providing minimal aliasing error correction code | |
| US5956351A (en) | Dual error correction code | |
| USH1176H (en) | Bit dispersement method for enhanced SEC-DED error detection and correction in multi-bit memory devices | |
| US5809042A (en) | Interleave type error correction method and apparatus | |
| US7721177B2 (en) | Device and method for determining a position of a bit error in a bit sequence |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| AS | Assignment |
Owner name: CRAY RESEARCH, INC., 608 SECOND AVENUE SOUTH, MINN Free format text: ASSIGNMENT OF ASSIGNORS INTEREST.;ASSIGNOR:SCHWOERER, GERALD A.;REEL/FRAME:005262/0612 Effective date: 19900221 |
|
| STCF | Information on status: patent grant |
Free format text: PATENTED CASE |
|
| AS | Assignment |
Owner name: TERA COMPUTER COMPANY, WASHINGTON Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:CRAY RESEARCH, L.L.C.;REEL/FRAME:011231/0132 Effective date: 20000524 |
|
| AS | Assignment |
Owner name: CRAY, INC., WASHINGTON Free format text: CHANGE OF NAME;ASSIGNOR:TERA COMPUTER COMPANY;REEL/FRAME:011712/0145 Effective date: 20010423 |
|
| AS | Assignment |
Owner name: CRAY INC., WASHINGTON Free format text: CORRECTIVE ASSIGNMENT TO CORRECT THE NAME OF THE ASSIGNEE, FILED ON 12-31-2001. RECORDED ON REEL 012322, FRAME 0143;ASSIGNOR:TERA COMPUTER COMPANY;REEL/FRAME:012322/0143 Effective date: 20000403 |
|
| AS | Assignment |
Owner name: WELLS FARGO BANK, N.A., CALIFORNIA Free format text: SECURITY AGREEMENT;ASSIGNOR:CRAY INC.;REEL/FRAME:016446/0675 Effective date: 20050531 |