You want to find out exactly how the ExecutionPlatform can help with your project? In a practice-oriented demonstration, you will come to understand how the ExecutionPlatform can simplify your life as a developer.
The ExecutionPlatform shortens the typical slow embedded feedback cycles, so you can bring a better product to the market faster.
Do you want to deliver a quality product?
The ExecutionPlatform verifies your software by executing code on the real microcontroller. In this way, you can do the tests on your microcontroller via the platform, parallel to the development process. This ensures that the test environment corresponds to the resulting firmware.
Furthermore, you can use the same tools and libraries for firmware and tests. This is the only way to achieve reliable results. Minimize risks in the firmware by executing code under realistic conditions!
Optimally supported user cases
Advantages at a glance
Execution of a wide range of tasks on the microcontroller
No additional hardware is required
Mapping of microcontroller and toolchain bugs
Best possible risk minimization
Reduce the barrier to the microcontroller
Supported for many architectures
How does the ExecutionPlatform function?
Each ExecutionPlatform is individually designed, according to your specifications, and provides you with two microcontrollers of your choice. Work packages are received via an Ethernet interface and processed on the microcontrollers. The results are displayed instantly. We deliver a Board Support Package for each microcontroller.
The apps we supply support frequent scenarios.
For example, you can use an app to work with the popular Google Test Framework, without the need for any adjustments. No configuration is required. Users can begin working immediately, with their user code. The first results are possible within minutes. Two tasks can be executed simultaneously.
Execute unit tests on the microcontroller easily with the ExecutionPlatform
The ExecutionPlatform can be used to execute unit tests on the target system. Apps support the popular frameworks, googletest, Catch2 and Unity. It is easy to integrate further frameworks too.
The result is delivered to you as a test report, in the usual format. Even existing tests can be executed directly on the microcontroller, without the need for any further adjustments. Program code is tested as it will run in the actual product.
Incorporate hardware and peripherals
Due to the execution on the microcontroller, the tests have full access to the peripherals. For example, a DMA driver can be tested in a range of different scenarios. This is important, because a stable driver layer is the backbone of any firmware.
Automate manual working steps
When developing firmware, you often encounter tasks that have to be executed manually on the microcontroller.
This happens, for example, if a runtime measurement for a certain code segment needs to be executed in order to determine the worst-case execution time. By linking various apps, the ExecutionPlatform makes it easy to perform such tasks. Incorporation into a unit test framework enables quick automation.
Open interfaces allow easy definition of new work packages. Working steps are therefore permanently automated and can be reproduced at any time, resulting in a significant reduction in the risk of regression.
Execute precise runtime measurements with the ExecutionPlatform
The ExecutionPlatform enables you to execute precise time measurements on the microcontroller
There is an app that offers various functions for measuring the time it takes to execute C and C++ functions.
• Achieve the highest level of temporal accuracy
• Determine the performance of functions or entire components quickly
• Detect performance regression in real time, via refactoring, compiler changes and adjusted settings
The following example determines how long it takes to calculate a CRC checksum in the crc32 function. For the measurement, test data is defined. Via bb_invoke, the actual measurement on the microcontroller, for a specific set of arguments, is initiated. The results show how many processor cycles each call has required.
Testing the microcontroller with the ExecutionPlatform
The explore app helps you in cases where you quickly want to try out a certain piece of program code on the microcontroller. It eliminates the need for time-consuming debugging on the target system. Output to the console is automatically redirected here, for example, so that you can quickly check the function of a certain register or an assembler statement.
• Evaluate microcontroller functions without additional hardware
• Use assembler and architecture-specific libraries
The ExecutionPlatform is a perfect match for continuous integration and build server environments.
For the first time embedded projects with microcontrollers can be easily integrated in CI systems such as Jenkins or Bamboo.