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

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
How Static Analysis Supports DO-178C Verification
Hrutik Champaneri

How Static Analysis Supports DO-178C Verification

Developing software for airborne systems requires strong verification evidence, especially for higher-criticality applications. DO-178C defines objectives for airborne software development and ve[...]

Read more
Installing and Using AbsInt Astrée with Visual Studio Code
Hrutik Champaneri

Installing and Using AbsInt Astrée with Visual Studio Code

AbsInt Astrée can be integrated with Visual Studio Code using the A3C extension, allowing developers to run Astrée analysis and review detected alarms directly within the editor. Install and Con[...]

Read more
Modern Embedded Debugging with Keil Studio for Visual Studio Code
Hrutik Champaneri

Modern Embedded Debugging with Keil Studio for Visual Studio Code

Visual Studio Code has rapidly become a preferred development environment for embedded software, and many engineering teams are now looking beyond editing and building firmware. The Arm Keil Stud[...]

Read more
Running Arm User-Based Licensing in Modern CI/CD Workflows
Hrutik Champaneri

Running Arm User-Based Licensing in Modern CI/CD Workflows

Modern embedded software development no longer ends at a successful local build. Firmware is now continuously compiled, tested, analyzed, and packaged through automated pipelines running on Jenki[...]

Read more