SiL-Simulation and Automated Test
The redBlocks Simulator implements a unique Software-in-the-Loop (SiL) concept for embedded applications. Within the redBlocks Simulator’s SiL environment, entire embedded applications can be assembled and simulated down to the high-level driver layer.
Being integrated this way, the software can be automatically tested by scripts. With this approach, the amount of time-consuming and expensive system tests can be considerably reduced.
Test Script Generation with the Test Script Recorder
The redBlocks Simulator’s built-in test recorder makes the generation of test scripts a piece of cake: Just select the peripherals you want to observe/test, perform a manual test via the graphical user interface and let the test recorder generate a test script with all stimulation actions and check conditions.
You can afterwards either enhance this generated test script manually or just use it unmodified in order to automatically perform the same test during regression testing again and again and again…
Unlike other SiL testing systems, the redBlocks Simulator offers an entirely pragmatic approach to SiL environment definition and operation: The embedded device is graphically represented in the simulation environment and can be operated just like the real device. Instead of actually pushing a button or changing a physical quantity (e. g. the temperature) in a hardware setup with the real device, the developer uses a control in the redBlocks Simulator.
The SiL environment does not need to be run on the real target hardware. Thus, the complete application may be integrated and tested long before the target hardware becomes available.
There are several options where to deploy the SiL environment:
- on a development host with the redBlocks Workbench
- on an evaluation board with the target processor
- in case the uVision IDE is used for target development, the SiL environment can be integrated on a development host within the uVision IDE's instruction set simulator (klick here in order to read more about this option)
With options 2 and 3, the target compiler is used and target hardware dependent issues (e. g. due to the target’s endianness) can be discovered very early.
In addition to its out-of-the-box support for basic hardware peripherals (e. g. digital + analog IOs, various communication interfaces), the redBlocks Simulator supports arbitrary complex hardware peripherals via its flexible scripting interface. It is even possible to simulate the interaction of multiple embedded applications, each being integrated in the redBlocks SiL environment.
Watch our Video Clips
In order to be able to integrate an embedded application with the redBlocks SiL environment, the platform independent parts of the software must be cleanly separated from the platform dependent code.
If this separation is in place, any embedded software application can be integrated with the redBlocks Simulator, no matter whether it uses the redBlocks Component Library or not. However, the redBlocks Component Library provides the best possible support to establish the required separation. This is, because the redBlocks platform abstraction concept does not introduce any overhead, compared to a monolithic solution.