1.50 CLASSB_SRAM_MarchTestInit

Function

CLASSB_TEST_STATUS CLASSB_SRAM_MarchTestInit(uint32_t * start_addr, uint32_t test_size, CLASSB_SRAM_MARCH_ALGO march_algo, bool running_context);

Summary

This self-test checks the SRAM with the help of RAM March algorithm.

Description

This self-test run the selected RAM March algorithm on the SRAM to detect stuck-at fault, DC fault and addressing fault.

Precondition

None.

Parameters

start_addr - Starting address of the memory block.

test_size - Size of the memory block.

march_algo - The selected RAM March algorithm. It can be March C, March C minus or March B.

running_context - False for startup test. True for run-time test.

Returns

CLASSB_TEST_STATUS - Status of the test.

Example

CLASSB_TEST_STATUS classb_test_status = CLASSB_TEST_NOT_EXECUTED;
// Perform run-time test of the internal SRAM
classb_test_status = CLASSB_SRAM_MarchTestInit((uint32_t *)CLASSB_SRAM_APP_AREA_START,
    1024, CLASSB_SRAM_MARCH_C, true);

Remarks

This self-test can be used during startup as well as run-time. Initial 1kB of the SRAM must be reserved for the Class B library.