Part Number: AM2434
Other Parts Discussed in Thread: SYSCONFIG
Hi experts:
We used the AM2434 EVM Demo board to test the DDR ECC function, wanted to test whether all DDR addresses could be successfully injected and interrupts could be generated.
Env:
SDK version: 11.1.0.17
CCS: 12.8.1
We made some changes based on the routine ddr_ecc_test_main_esm_am243x-evm_r5fss0-0_nortos_ti-arm-clang
- sysconfig:
- ddr_ecc_test.c
See the source code file: ddr_ecc_test.c
Question 1:
The problem encountered is that we can trigger ECC normally from 0x8000_0000 to 0x8000_0007
Exception 0x8000_0008 to 0x8000_0001F
0x8000_0020 to 0x8000_00027 return to normal. The subsequent addresses follow the same pattern.
Debugging findings: When injected into the address 0 x8000_0000 ~ 0 x8000_0001f, ECCErrorInfo. SinglebitErrorAddress value is always 0, singlebitErrorCount becomes 1, This 8-byte alignment judgment will affect the results from 0x8000_0008 to 0x8000_001F. Does this judgment not take all scenarios into account? How can it be modified?
Question 2:
What is the way ECC data is stored? Is 64 bytes of ECC data generated for every 512 bytes? Or generate 1Byte of data for every 8 bytes? Is ECC data stored right next to DDR data or at the end of the DDR space?




