How do you test embedded hardware without the hardware?

OVP-based virtual platform of a MIPS Malta board, with MIPS dual core interAptiv processor booting SMP Linux
OVP-based virtual platform of a MIPS Malta board, with MIPS dual core interAptiv processor booting SMP Linux

You want to create an embedded piece of hardware but you don’t have the hardware yet. Is there a way to test the entire platform on your own PC?

It turns out there is: virtual platforms are increasingly being used for software development, debug and test.  Instruction accurate virtual platforms provide a software simulation environment where the same executable code that would be run on hardware is run on the simulator.  Put simply, the software should not know that it is not running on hardware.  Models of the hardware are instruction accurate only, and have no timing information.  The virtual platform can be thought of as an Instruction Set Simulator (ISS), traditionally used for software development and test, but now extended to the full System on Chip, or even the board or system. It’s like a virtual machine for hardware platforms.

OVPSim is a very popular virtual platforms. Additionally, it’s platforms simulators are, in many cases open source! Open Virtual Platforms is a website for the OVP APIs, for the OVP models and platforms, for the OVPsim simulator and for community discussion of virtual platforms on the OVP Forum. The OVP APIs are publicly available and not proprietary, and the models and platforms are available under the Apache License.

If you have an interest in virtual platforms for hardware, try out an open source OVP model or make and submit your own.

One thought on “How do you test embedded hardware without the hardware?

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s