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.