Reset using certified STL for RL78-GE

We are using R01AN0749EG0201- VDE Certified IEC60730 60335 Self Test Library in our RL78G13.

We are now implementing the march_x to check all the RAM in several steps.

After checking the 0xFFEA1U a reset is generated due to a RAM parity error.

Implemented source code:

#define RAM_TEST_START  (0xFF788U)

#define RAM_TEST_END      (0xFFEDFU)

 

#pragma dataseg=RAM_TEST_DATA

/* Variable definitions used for RAM Test modules */

__no_init uint8_t g_data_backup;

__no_init uint8_t *g_pMX_StAdr;

__no_init uint16_t g_RAM_MarchX_lgth;

#pragma dataseg=default

 

    g_RAM_MarchX_lgth = 1U;        /* Set RAM end address (length + 1) */

 

    if ((g_pMX_StAdr > (uint8_t *) RAM_TEST_END) ||

        (g_pMX_StAdr < (uint8_t *)RAM_TEST_START))

    {

                g_pMX_StAdr = (uint8_t *)&RAM_TEST_START;

    }

    else

    {

      /* Execute March X test */

      __disable_interrupt();

      /* Save the content of the location to be tested */

      g_data_backup = *g_pMX_StAdr;

      g_resultBool = stl_RL78_march_x(g_RAM_MarchX_lgth, g_pMX_StAdr);

      /* Restore the content of the tested location */

      *g_pMX_StAdr = g_data_backup;

      __enable_interrupt();

      g_pMX_StAdr ++;

    }

Thank you for your help.

Best regards,