Cloud native EDA tools & pre-optimized hardware platforms
Model-in-Loop testing and its consecutive development phases, Software-in-Loop testing and Processor-in-Loop testing, are interdependent throughout the development process by (at least) one particular testing method: Back-to-Back testing. This testing method especially applies to model-based designs and autocode generation with Simulink and TargetLink.
Back-to-Back testing is an integral part of software development, particularly in software engineering, as it ensures the System under Test (SUT) functions in later development phases as it does in earlier phases. Specifically, Back-to-Back testing means comparing the test results of different test executions, such as MiL and SiL, for example. As long as both the test results of both executions are similar the test is passed.
The most evident advantage of Back-to-Back testing is that you can verify whether your SUT functions the way you intended it to function, as you go through the development stages. When passing from testing MiL (e.g. Simulink models) to testing SiL, the fix-point scaling of signals, for example, is particularly error-prone.
Unscaled values in MiL and scaled values in SiL in Back-to-Back test
From your test model (MiL) you can automatically generate c-code to be tested in your subsequent Back-to-Back test (regression test). This is easily done in TPT.
1. Model your test cases
2. Model your assessment
3. Configure MiL platform
4. Derive SiL platform from MiL
5. Run the tests in MiL and SiL automatically
Every signal/ value is compared individually. Moreover, a tolerance range can be set to increase robustness (time and value tolerances).
Reference signal from MiL (green) and scaled signal from SiL (blue). Tolerance range of 0.5.
Not only is Back-to-Back testing a very useful testing method, it is also required by ISO 26262. TPT fully supports Back-to-Back testing in compliance with ISO 26262.