...
However, if your ECC module can be interfaced with the software ECC generic controller extension, you could limit the code to be developed to the ECC layer only. If this is the case, you will need to provide the implementation of the API as shown in Listing - ECC API type definition:
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
typedef struct ecc_calc {
CPU_SIZE_T BufLenMin; (1)
CPU_SIZE_T BufLenMax; (2)
CPU_INT08U ECC_Len; (3)
CPU_INT08U NbrCorrectableBits; (4)
ECC_CALC_FNCT Calc; (5)
ECC_CHK_FNCT Chk; (6)
ECC_CORRECT_FNCT Correct; (7)
} ECC_CALC;
|
Panel |
---|
(1) Minimum buffer length that the ECC module can handle. (2) Maximum buffer length that the ECC module can handle. (3) Length, in octets, of the code for a single buffer. (4) Number of bits the module can correct for each buffer. (5) Pointer to the code calculation function. (6) Pointer to the error detection function. (7) Pointer to the error correction function. |
For more details on the implementation, please refer to the µC/CRC User Manual.