Dismiss
InnovationQ will be updated on Sunday, Oct. 22, from 10am ET - noon. You may experience brief service interruptions during that time.
Browse Prior Art Database

Byte Wide Error Correction Code for 16-Bit Systems

IP.com Disclosure Number: IPCOM000114536D
Original Publication Date: 1992-Oct-01
Included in the Prior Art Database: 2005-Mar-28
Document File: 2 page(s) / 56K

Publishing Venue

IBM

Related People

Brown, MJ: AUTHOR [+2]

Abstract

Disclosed is a method for implementing Error Correction Codes (ECCs) in a 16-bit system that performs the error correction on each byte individually. This method will allow direct byte accesses into memory, and will maintain the 24-bit wide memory that is typically used for 16-bit systems with ECC.

This text was extracted from an ASCII text file.
This is the abbreviated version, containing approximately 66% of the total text.

Byte Wide Error Correction Code for 16-Bit Systems

       Disclosed is a method for implementing Error Correction
Codes (ECCs) in a 16-bit system that performs the error correction on
each byte individually.  This method will allow direct byte accesses
into memory, and will maintain the 24-bit wide memory that is
typically used for 16-bit systems with ECC.

      The standard method of implementing ECC in a 16-bit system is
to use a 16-data/6-check bit scheme.  This provides full single-bit
correction and double-bit detection.  The required data path width is
22 bits, usually implemented in 14-bit wide memory (with 2 unused
bits), because it is cheaper to use six 4-bit modules than some
combination of 4- and 1-bit modules to get 22 bits exactly.

      A problem with this method arises when single byte access to
the memory is required.  The 16-data/6-check bit method requires a
READ-MODIFY-WRITE operation to write a single byte of data.

      An alternate method of 16-bit ECC (which allows direct single-
byte writes) is to perform the error correction on each byte
individually.  To get full single-bit correction and double-bit
detection requires 8-data and 5-check bits of memory for each byte,
resulting in 26 bits total.  However, an 8-data/4-check bit scheme
can be used, which will fit in 24-bits of memory (see the figure).

      This BYTE-WIDE method of implementing ECC will allow individual
byte accesses without the need for READ-MODIFY-WRITE...