Re: Ecc Size




"David Tweed" <dtweed@xxxxxxx> wrote in message
news:4313A2D6.98530AEB@xxxxxxxxxx
> "Rufus V. Smith" wrote:
>> Remember, when using an ECC code, the number of bits must be
>> twice as large as the number of bits required to provide a
>> "bit address" of a single bit error.
>
> Not quite. You've got the general idea, but you're misremembering
> some of the details.
>
> Hamming code requires enough ECC check bits to count all of the
> bits in both the data and the ECC itself plus 1. For example,
> 6 check bits can protect up to 57 bits of data. 58 through 120
> bits of data requires 7 check bits, etc.
>
> Hamming code can correct a single-bit error, but can't distinguish
> multi-bit errors, treating them as incorrect single-bit errors.
> By adding just one more check bit, you can create a SECDED code
> (single-error correcting, double-error detecting) which tends to
> be much more useful. With this sort of code, you can protect
> 8 bytes (64 bits) of data with 8 check bits.
>
> For more details, see problems #4 to #8 (particularly #5) on
> this page:
> http://www.circuitcellar.com/library/eq/179/index.htm
>
>> 256 byte data (2048 bits) has a 22 bit ECC. 2048=2^11. 2*11=22
>> 512 byte data (4096 bits) has a 24 bit ECC. 4096=2^12. 2*12=24
>
> Actually, 512 bytes (4096 bits) can be protected with a 14-bit
> SECDED code. But Hamming-based codes are less useful on large
> blocks of data because the probability of multi-bit errors is
> too high. It's better to switch to codes that work on multi-bit
> symbols such as Reed-Solomon.
>
> -- Dave Tweed

Hi Dave, I always stand to be corrected when running from cerebral memory,
but my posting is consistent with this document (I found the link):

http://www.samsung.com/Products/Semiconductor/Flash/TechnicalInfo/Eccalgo.pdf

Perhaps the ECC described isn't a Hamming Code?

Please solve this mystery for me, as it has been bothering me for a long
time now.

Rufus



.



Relevant Pages

  • [PATCH 03/35] ocfs2: Add the underlying blockcheck code.
    ... This is the code that computes crc32 and ecc for ocfs2 metadata blocks. ... * Calculate the bit offset in the hamming code buffer based on the bit's ... * offset in the data buffer. ... * bc should be a pointer inside data, ...
    (Linux-Kernel)
  • Re: FreeBSD 6.x CVSUP today crashes with zero load ...
    ... ECC, your single-bit error in your data will go to the disk unnoticed, and you'll lose your data. ... With ECC, hardware will correct it. ... Does the standard fs, UFS2, do "extra sanity checks", then? ...
    (freebsd-stable)
  • Re: DIMM Specs
    ... I agree with everything Paul wrote, except for the importance of ECC. ... ECC delivers single-bit error correction and double-bit error detection ... mis-read instruction will be executed instead of the real instruction ...
    (alt.comp.periphs.mainboard.asus)