Error Correction Code controller Peripheral

HECC (AT91S_ECC) 0xFFFFE800 (AT91C_BASE_HECC)
HECC (AT91S_ECC) 0xFFFFE800 (AT91C_BASE_HECC)

ECC Software API (AT91S_ECC)

OffsetFieldDescription
0x0ECC_CR ECC reset register
0x4ECC_MR ECC Page size register
0x8ECC_SR ECC Status register
0xCECC_PR ECC Parity register
0x10ECC_NPR ECC Parity N register
0xFCECC_VR ECC Version register

ECC Register Description

ECC: AT91_REG ECC_CR ECC reset register

OffsetNameDescription
0ECC_RST
AT91C_ECC_RST
ECC reset parity
0: No Reset.
1: Reset ECC parity + parity N register

ECC: AT91_REG ECC_MR ECC Page size register

OffsetNameDescription
1..0ECC_PAGE_SIZE
AT91C_ECC_PAGE_SIZE
Nand Flash page size
0: 512 bytes.
1: 1024 bytes.
2: 2048 bytes.
3: 4096 bytes.

ECC: AT91_REG ECC_SR ECC Status register

OffsetNameDescription
0ECC_RECERR
AT91C_ECC_RECERR
ECC error
0: No Error Occured.
1: Single Bit Or Multiple Error Occured
1ECC_ECCERR
AT91C_ECC_ECCERR
ECC single error
0: No Single Error.
1: Single bit error (correctable) Occured
2ECC_MULERR
AT91C_ECC_MULERR
ECC_MULERR
0: No Multiple Errors.
1:Multiple bits error (non-correctable) Occured

ECC: AT91_REG ECC_PR ECC Parity register

OffsetNameDescription
3..0ECC_BITADDR
AT91C_ECC_BITADDR
Bit address error
Bit adress Error (position of error for 8-16 bits devices
15..4ECC_WORDADDR
AT91C_ECC_WORDADDR
address of the failing bit
byte-word address of failing bit

ECC: AT91_REG ECC_NPR ECC Parity N register

OffsetNameDescription
15..0ECC_NPARITY
AT91C_ECC_NPARITY
ECC parity N
ECC parity N

ECC: AT91_REG ECC_VR ECC Version register

OffsetNameDescription
3..0ECC_VR
AT91C_ECC_VR
ECC version register