Features Supported
The Compute Compare Module (CCM) is the R5F sub-system’s implementation for the lockstep error detection logic. The R5F sub-system, when bootstrapped to lockstep mode, has a logic that compares the outputs of the two cores and asserts an interrupt whenever an error is detected. There is also a logic to test the comparison logic.
The CCM module provides APIs to:
- Initialize the R5F CCM for the operating modes and verify the config
- Perform Self-test of the supported operating modes (normal and error forcing)
- Inject an error
- Read back the static config registers
- Clear errors that have occurred due to error injection or actual fault
SysConfig Features
Features NOT Supported
Important Usage Guidelines
Example Usage
The following shows an example of SDL R5F CCM API usage by the application.
Initialize the R5F CCM instance
if (result != SDL_PASS)
{
DebugP_log(
"CCM_Test_init: Error result = %d\n", result);
retValue = -1;
}
else
{
DebugP_log(
"\nCCM_Test_init: CCM Init complete \n");
}
Verify the configuration
if (result != SDL_PASS)
{
DebugP_log(
"R5F-CPU example application CCM_Test_init: Error result = %d\n", result);
retValue = -1;
}
else
{
DebugP_log(
"\nR5F-CPU example application CCM_Test_init: CCM Init complete \n");
}
Perform a self-test:
10000000);
if (result != SDL_PASS )
{
DebugP_log(
"\n R5F-CPU example application CCM self test failed");
retVal = -1;
}
else
{
DebugP_log(
"\n R5F-CPU example application CCM Self Test complete");
}
Inject an error:
if (result != SDL_PASS ) {
DebugP_log(
"\n R5F-CPU example application CCM inject failed");
retVal = -1;
} else {
DebugP_log(
"\n R5F-CPU example application CCM inject Test complete");
}
API
APIs for CCM MODULE