2.1.2.1 DIAG_STACK_MarchCMinus()

diag_result_t DIAG_STACK_MarchCMinus (void )

Implements the March C- test on the stack. It is a complete and irredundant test capable of detecting stuck-at Fault, addressing Fault, transition Fault and CF. This test has a complexity of 11n, where n is the number of bits. Since this is a destructive test, DIAG_MarchBufferAddress is used to save and restore user memory during the test.

March C test algorithm is executed in six steps: Step 1: Ascending (w0) Step 2: Ascending (r0, w1) Step 3: Ascending (r1, w0) Step 4: Descending (r0, w1) Step 5: Descending (r1, w0) Step 6: Ascending (r0)

Parameters:
None.
Returns:

DIAG_PASS - No faults detected

DIAG_FAIL - Fault detected