Skip to content

Cart

Your cart is empty

Virtual Platforms as a Foundation for Modern Embedded Development
ARM

Virtual Platforms as a Foundation for Modern Embedded Development

Modern embedded software development is no longer limited to writing code and waiting for a physical target. As engineering teams adopt CI/CD pipelines, distributed development, and parallel hardware-software workflows, virtual platforms have become an increasingly important part of the embedded software lifecycle.

 

Rather than simply replacing physical hardware, virtual platforms allow software bring-up, debugging, regression testing, and continuous validation to begin earlier while providing a repeatable and scalable execution environment.

 

At the core of these solutions is Arm Fast Models, the simulation technology used to build functionally accurate virtual representations of Arm-based systems. Fixed Virtual Platforms (FVPs) are ready-to-run virtual systems built using Fast Models, providing software developers with complete simulation environments for debugging and software bring-up. Arm Virtual Hardware (AVH) builds upon these virtual platforms by integrating them into a broader ecosystem that supports cloud execution, CI/CD pipelines, automation, and scalable software validation.

 

For Cortex-M software development, Arm Virtual Hardware, available with Keil MDK Professional, enables engineering teams to execute software in virtual environments without relying on physical evaluation boards. Instead of maintaining dedicated hardware for every developer or CI server, teams can automatically build, execute, and validate firmware locally or in cloud-based pipelines. This allows more frequent regression testing, faster feedback on every code change, and better utilization of engineering resources while reducing dependence on shared development hardware.

 

For more complex Cortex-A, Cortex-R, and system-level software development, Fixed Virtual Platforms (FVPs) available with Arm Development Studio provide functionally accurate models for software bring-up and interactive debugging. Developers can inspect memory, debug drivers, validate boot sequences, and analyze software behavior using familiar Arm Development Studio tools, allowing much of the early integration effort to begin in a virtual environment before transitioning to physical validation.

 

Although they are often mentioned together, AVH and FVPs are designed for different purposes. FVPs provide the virtual targets that developers use for software development and debugging, while AVH extends those capabilities into a scalable development ecosystem by integrating virtual targets with cloud infrastructure, DevOps workflows, and CI/CD automation. Rather than competing technologies, they complement one another one focuses on interactive software development, while the other enables automated software validation at scale.

 

While Arm Development Studio includes a broad range of pre-built FVPs, organizations developing custom silicon can use the Arm Fast Models Library and System Generator (SG_Simulator) to create platform-specific virtual models, allowing software bring-up and validation to begin on architectures that do not yet exist as standard reference platforms.

 

As embedded systems continue to increase in complexity, virtual platforms are becoming more than just simulation tools. They are helping engineering teams improve software quality, increase testing frequency, reduce hardware dependencies, and build modern embedded development workflows that scale from a developer's desktop to enterprise CI/CD environments.

 

Interested in learning more about Arm Virtual Hardware, Fixed Virtual Platforms (FVPs), or Arm Development Studio? Contact Hrutik Champaneri at hrutik.champaneri@joraltechnologies.com.

 

Watch our Arm Virtual Hardware video here

RELATED NEWS

Beyond Code Generation: AI-Assisted Embedded Development with Arm CMSIS
Hrutik Champaneri

Beyond Code Generation: AI-Assisted Embedded Development with Arm CMSIS

AI coding assistants can generate a UART driver in seconds. But when the output is garbled or an application unexpectedly enters a HardFault handler, the problem may not be obvious from the sourc[...]

Read more
Configuring QA-MISRA for Real-World Embedded C/C++ Projects
Hrutik Champaneri

Configuring QA-MISRA for Real-World Embedded C/C++ Projects

Getting QA-MISRA running is only the first part of the setup. For an actual embedded project, you will usually need to decide which coding rules should be checked, how compiler-specific code sho[...]

Read more
Setting Up a QA-MISRA Evaluation License and VS Code Extension
Hrutik Champaneri

Setting Up a QA-MISRA Evaluation License and VS Code Extension

The following steps explain how to activate a QA-MISRA evaluation license, configure the local server, install the QA-MISRA extension in Visual Studio Code, and run an example analysis. 1. Requ[...]

Read more
Using QA-MISRA to Bring Coding Standards into C/C++ Development
Hrutik Champaneri

Using QA-MISRA to Bring Coding Standards into C/C++ Development

In embedded and safety-critical software, coding standards help reduce risky language behaviour, improve consistency, and make software easier to review and verify. This is especially important i[...]

Read more
When Breakpoints Aren’t Enough: Debugging Faster with ULINKpro Trace
Hrutik Champaneri

When Breakpoints Aren’t Enough: Debugging Faster with ULINKpro Trace

Most embedded developers are familiar with the usual debugging cycle: set a breakpoint, stop the processor, inspect the problem, make a change, and try again.   That works well until the problem [...]

Read more