OVP simulators and emulators with OVP Nucleus models

Welcome to the Open Virtual Platforms (OVP) simulator and OVP Nucleus models. These make it easy and efficient to develop software on OVP Nucleus models of processors on your desktop PC running Windows or Linux.

Free Simulation for Non-Commercial Use

The OVPsim simulator is available to download and use on Windows and Linux, runs between 100 mips to 2,000 mips on a standard desktop PC and includes open source models of the OVP Nucleus models.

Using OVP models for Embedded Software Development and Test Automation

The OVPsim simulator is used by engineers needing to simulate their embedded models and systems before the hardware is available. This simulation can be used without an Operating System in a bare metal mode or can run very fast full system simulation. Users can use modern software methods like Continuous Integration to develop and test their embedded systems with the OVP Nucleus models.

OVP Nucleus models

The OVP Nucleus models can be downloaded and run from the OVP Nucleus models download pages.

Support

Support is available through our forums, and information on model availability is through our wiki based library pages.

Registration to download

You will need to be registered and logged-in to download any files from this OVP site. Click here to register/login.

OVP beginnings

OVP was founded by Imperas and they provide embedded software development tools including multicore debug and advanced software verification and the tools target OVP Nucleus models for use with bare metal and embedded OSes. OVPsim is free for non-commercial usage. If you need a simulator for commercial use - please contact Imperas.

Videos of demonstrations of OVP Nucleus models

To watch recorded demonstrations of how easy it is to download and use OVP Nucleus models, then click here to have a look at the videos.

Open Virtual Platforms (OVP) and its focus

To learn about the focus of OVP and OVP Nucleus models, then click here.

OVP Technology

To learn about the technology of OVP and OVP Nucleus models, then click here.

Models available from OVP and how to develop your own models

To find out about the other models available from OVP related to OVP Nucleus models, then click here.

OVP FAQ

For answers to commonly asked questions regarding OVP and Open Virtual Platforms, then click here.

Virtualized Software Development

If you are looking to use Eclipse or GDB to do application development with OVP Nucleus models, then click here.

About OVP

The focus of OVP is to accelerate the adoption of the new way to develop embedded software - especially for SoC and MPSoC platforms. If you are developing software to run in an embedded system you will probably already be using an Instruction Set Simulator (ISS) and associated debugger. As you move to having multiple processors or cores in your design then you will need more than just a single ISS. What is needed is a model of your platform that includes models of all the processors or cores and models of the peripherals and behavioral components that the software communicates with. This is a Virtual Platform, or more simply just a simulation model of your design. OVP provides this for you: libraries of processor and behavioral models, and APIs for building you own processors, peripherals and platforms. This is just what is needed to use existing models or build your own, and OVP is easy to use, open, flexible, and importantly, free for non-commercial use.

If you want to understand the rationale for the use of Virtual Platforms and the industry developments that have driven the creation of OVP - please look at the slides or listen to the presentation from Imperas, the company who developed the base for OVP. If you want to see who is involved with OVP and what the industry is saying then please visit the news pages.

The industry is facing a rising challenge:

"30 to 50 per cent of R&D budgets are spent on software, and the cost is rising 20 per cent a year. The software effort overtakes the hardware effort at 130nm."
Jack Browne, MIPS Technologies

"Some say we are at a crisis stage with the software side overwhelming the hardware side. Driving some of this is the proliferation of cores in system-on-chip (SoC) devices."
Steve Roddy, Tensilica

Adopting Virtual Platforms enables earlier development and testing of software, dramatically reducing SoC schedules and should significantly reduce initial development and maintenance costs for embedded software.

"Imperas believes that software virtual platform infrastructure should be open and be freely available. To that end, we are sharing, making public, and making open our simulation infrastructure technologies with the intention of establishing a common, open standard platform for software virtual platforms for software developers. We started developing our simulation infrastructure in 2004 and it has been in customer production use since early 2006. We are making this technology available to OVP users. However, it is not solely through our efforts that these technologies become successful. Participation of organizations and individuals around the world is critical to the success of OVP. We thank all those that are participating in this community."
Simon Davidmann, Imperas Software

"It is exciting and gratifying to see members of the MIPS ecosystem working together to provide new software, tools and methodology to MIPS users. The hardware virtualization features in our MIPS M51xx CPUs make them a unique and powerful offering for next-generation microcontroller-class products. We are pleased to see these new solutions from Imperas and OVP that can help our customers more quickly and easily bring secure, reliable devices to market."
Jim Nicholas, VP, MIPS Business Operations, Imagination Technologies

"OVP is addressing key issues in software development for embedded systems. By supporting the creation of virtual platforms, OVP is enabling early software development and helping expand the ARM user community."
Noel Hurley, VP Business Development, ARM

Please sign-up for and participate in the forums, have a look at new developments, and please do download some of the examples, get a feel for the benefits you can get from the adoption of OVP - and please use OVP in your commercial, research, or educational projects - and use the forums for feedback, advice, questions - and to get involved please go to and 'get involved' in the forum!

The Rationale for Software Virtual Platforms

OVP Documentation

View OVPsim, API and other documents

OVP Simulator Download

Virtual Platform Simulator package

OVP Model Downloads

Here are some links to other pages that have downloads for the different processor families

ARM Processors

OVP Source Models, Examples and Demonstrations of different ARM models and platforms, including the OVP ARM IntegratorCP platform that boots Linux in about 4 seconds, and the OVP ARM Versatile Express platform booting Linux and Android... and including OVP ARM Cortex models

MIPS Processors

Source Models, Examples and Demonstrations of different MIPS models and platforms, including the MIPS Malta platform booting Linux in 4 seconds...

RISC-V Processors

Source Models, Examples and Demonstrations of different RISC-V models and platforms.

There are many processor model variants available both 32 bit and 64bit and with all the different standard instruction extensions: RV32IM, RV32IMAC, RV32IAMFD, RV32GC, RV64IM, RV64IMAC, RV64IAMFD, RV64GC. Also using OVP it is very easy to extend the model with your own custom instruction extensions and registers.

Synopsys ARC Processors

Source Models, Examples and Demonstrations of different Synopsys ARC models and platforms

Renesas v850 and RH850 Processors

Source Models, Examples and Demonstrations of different Renesas v850 and RH850 models and platforms

Renesas Mitsubishi M16C Processors

Source Models, Examples and Demonstrations of different Renesas M16C models and platforms

Power Architecture Processors

Source Models, Examples and Demonstrations of different Power Architecture and PowerPC models and platforms

Xilinx MicroBlaze Processors

Source Models, Examples and Demonstrations of different Xilinx MicroBlaze models and platforms

OpenCores Processors

Source Models, Examples and Demonstrations of different OpenCores models and platforms

SystemC TLM2.0 Processor Models

Source Models, Examples and Demonstrations of different SystemC TLM2.0 models and platforms, including platforms that boot Linux, Nucleus, Micrium uC/OS-II



More Information

For more information on any other items, go to the OVP Home page or click on one of the links below:
Nucleus models, Nucleus open source model, Nucleus ISS, Nucleus for Continuous Integration, Nucleus for Continuous Integration of Embedded Systems, Nucleus for CI, Nucleus for Continuous Integration using Jenkins, Nucleus for Continuous Integration of Embedded Systems using Jenkins, Nucleus for CI, Nucleus for CI using Jenkins, Nucleus for Agile CI, Nucleus for Agile Continuous Integration, Nucleus for Automated Testing, Nucleus for Automated Testing of Embedded Software, Nucleus for Test Automation, Nucleus for Test Automation of Embedded Software, Nucleus for Testing Embedded Software, Nucleus for Developing Embedded Software, Nucleus virtual prototype, Nucleus virtual platform, Nucleus processor model, Nucleus platform models, Nucleus platform model, Nucleus platform simulations, Nucleus platform simulator, Nucleus platform emulations, Nucleus platform emulator, Nucleus processor simulations, Nucleus multicore simulations, Nucleus multicore simulator, Nucleus multicore software, Nucleus multicore software development, Nucleus multicore software simulation, Nucleus processor emulations, Nucleus processor emulator, Nucleus CPU simulations, Nucleus CPU simulator, Nucleus CPU emulations, Nucleus CPU emulator, Nucleus CPU model, Nucleus evaluation board, Nucleus eval board, Nucleus proto board, Nucleus prototype board, Nucleus fast TLM model, Nucleus fast TLM2.0 model, Nucleus TLM2.0 model, Nucleus TLM model, Nucleus fast model, Nucleus fast processor model, Nucleus fast CPU model, Nucleus fast ISS model, Nucleus virtual processor, Nucleus virtual platform, Nucleus TLM virtual prototype, Nucleus TLM virtual platform, Nucleus TLM virtual platforms, Nucleus virtual CPU, Nucleus Virtualized Systems Development, Nucleus Virtualized Software Development, Nucleus free processor simulator, Nucleus free platform simulator, Nucleus free simulator, Nucleus emulator, Nucleus simulator, Nucleus platform, Nucleus free CPU simulator, Nucleus GDB debug, Nucleus GDB debugging, Nucleus multicore debugging, Nucleus multicore GDB debugging, Virtualized Software Development Platforms