Hi Nxp,
I found S32K314 TCM1 cannot work. As we Know,S32K314 has only core 0, so if we want to have access to TCM1,we can use TCM backdoor address.
ITCM_1 Backdoor address is 0x11400000, length is 32KB.
DTCM_1 Backdoor address is 0x21400000, length is 64KB.
But I found DTCM1 can work well, ITCM1 can not. Only few addrees can have access right as picture bellow.
Before using TCM1, I have initialized TCM1 ECC , disable MPU and Cache.
Could some one help me how to use TCM1 correctly on S32K314?Thanks a lot!
Solved! Go to Solution.
Hi @davidtosenovjan ,
Thanks for your Suggestion. Now ITCM can work OK. I found we cannot use a uint64_t pointer to init ITCM ECC as picture bellow.
The correct way to init ITCM ECC is picture bellow:
Hi, have you initialized ECC by 64-bit writes? it is necessary for ITCM, as it used different ECC checksum boundary.
ITCM is basically intended for instruction fetching, so it is possible there is some limitation for address alignment for writes (64-bit) or read (16/32-bit).
Hi @davidtosenovjan ,
Thanks for your Suggestion. Now ITCM can work OK. I found we cannot use a uint64_t pointer to init ITCM ECC as picture bellow.
The correct way to init ITCM ECC is picture bellow: