AnsweredAssumed Answered

Help! S32K144 EIM register is not setted.

Question asked by jk son on Jul 16, 2018
Latest reply on Jul 18, 2018 by Diana Batrlova

I would like to run RAM test by using Error Injection Module in S32K144.

So, I set EIMCR[GEIEN] = 1, EICHEN[EICH0EN] = 1, EICHEN[EICH1EN] = 1 and EICHD0_WORD0[CHKBIT_MASK] = 0x7F.

 

However, when I monitor the Registers, EICHEN[EICH0EN] and EICHEN[EICH1EN] value is not set to 1.

So I can't inject an error to RAM.

(Other registers in EIM are set all well.)

 

How can I enable the Error injection channel?

 

--------------------------------------------[My test code]---------------------------------------

/* Enable Error Injection Module & Channel Enable */
EIM->EIMCR |= EIM_EIMCR_GEIEN(1);
EIM->EICHEN |= EIM_EICHEN_EICH0EN(1);
EIM->EICHEN |= EIM_EICHEN_EICH1EN(1);


/* Error Injection */
EIM->EICHDn[0].WORD0 |= EIM_EICHDn_WORD0_CHKBIT_MASK(0x7F);
EIM->EICHDn[1].WORD0 |= EIM_EICHDn_WORD0_CHKBIT_MASK(0x7F);

--------------------------------------------------------------------------------------------------------

 

Thanks.

 

 

 

--> 2018-07-18

I solve this problem.

I find that after error injection, related channel enable status is cleared.

So, If you want error injection test, 

First, Make Error injection,

Second, Enable the Error injection module and channel.

Then, your ERM can capture the RAM error.

Have a good day!

Outcomes