This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

RM46L852: Store value across PBIST RAM test

Part Number: RM46L852
Other Parts Discussed in Thread: HALCOGEN,

Hello,

I'm working on a RM46 project where we are using HALCoGen. During startup following both cold and warm resets, I'd like to determine the microcontroller reset reason and store it so it can be used later on in my program. HALCoGen's _c_int00 function contains placeholders for user code to handle different reset causes. However, if I were to add some code here to capture the reset reason in a variable, it would get overwritten by the subsequent PBIST RAM tests which I also want to use.

Is there a way I could temporarily store a single 32-bit value somewhere, maybe a CPU register, during RAM tests and then copy it back to RAM after the tests have completed?

Many thanks

  • Hello Will,

    When running PBIST, you configure which memory you are running it on. You can kick it off and include all memories or specific ones for each run allowing you to place data in one of the RAMs that isn't under test temporarily while others are being tested. Refer to your datasheet for the specific verson of the RM46 that you are using to see which RAM group selects are available. I believe the RM46L852 has multiple ESRAM sections that are selectable. This should allow you to store the data in one memory range while testing the second, then copy to the second and test the first. If ESRAM isn't able to be broken up in this way, you can always use CAN, ADC, HET, or MibSPI RAM to temporarily hold a value while PBIST is being executed.
  • That's great. I was thinking along the same lines after re-reading the datasheet, so thanks for confirming.