Instant PC simulation of embedded applications: The Drag Emb’ Drop concept™

Simulation of embedded applications can be a real challenge. Depending on developers’ goals, a simulator has to reflect several aspects of the system itself such as cycle accurate execution, functional behavior, or hardware-in-the-loop capabilities. In most cases the simulated application doesn’t have the expected behavior when deployed on target hardware and often requires additional development to be adapted to the target and run properly. The Java technology makes simulation of embedded applications easier through the virtualization concept.

The Virtualization is the abstraction of physical characteristics of an electronic resource. It consists in the creation of a virtual machine that acts like an independent system. Software running on a virtual machine is separated from the underlying hardware resource: The simulation can concentrate on functionalities that have to be valid within that virtual execution environment, whatever hardware and firmware.

Being able to decouple software from hardware, it becomes easy to instantly test the application prototype on PC. This enables to rapidly modify the application and validate its behavior and design with the project team. Engaging stakeholders into a more collaborative and iterative work obviously speeds up the specification process.

All the properties of the embedded device can be simulated: RTOS scheduling, front panels (LCD display, buttons, LEDs), sensors, actuators, special communication protocols, among many others. Beyond these prototyping considerations, the embedded environment can actually be fully tested and debugged directly on PC. Once the application is tested, it can simply be deployed to the embedded system without recompilation. It goes fast, it’s easy to do and make you save time. This is Drag Emb’ Drop™.

Drag Emb’ Drop™ is one of MicroEJ® features.