OVP timeline
home about technology newsblog download forum library resources contact


Simulation for M14K, M14Kc microMIPS processor cores

Models available in OVP from March 2010.

In November 2009 MIPS announced a new range of 32 bit cores and its new microMIPS very efficient compressed instruction set. There are initially two cores, the M14K, and M14Kc with cache controller and virtual memory support. Datasheets for the M14K are available here and for the M14Kc here.

Imperas and MIPS working together

Imperas has been working with MIPS on Instruction Accurate simulation for these new cores. OVP is now making available the simulation fast models of these cores as part of the MIPS-Verified partnership program.

The M14K and M14Kc models are available for free download from this OVPworld.org website and are the first simulation models available that simulate this new microMIPS instruction set.

The instruction accurate simulation models work with the OVP and Imperas simulators and come with interfaces to be used in C, C++, SystemC, and TLM2.0 virtual platforms. OVP MIPS models have been tested to work with leading simulation solutions from Cadence, Mentor, Synopsys, and OSCI.

The fastest recorded speed for OVP MIPS32 processor models on a 3GHz desktop PC is running the peakspeed1 benchmark at 1228 MIPS. The speed of models depends on the complexity of the platforms and the instruction workload being performed. Users report speeds of many 100's MIPS running real workloads.

Customer feedback includes "Finding that the simulation performance of the Imperas/OVP model was 50 times faster than our previous solution opens up new possibilities for us in software testing, and enables us to increase our test coverage and product reliability".

OVP M14K/M14Kc model features

The OVP models are normally provided pre-compiled as a binary, but are also available as open source under the Apache 2.0 license. The models are configurable for the different available options and can be used in single core or multicore platforms.

M14K/M14Kc bare metal platforms

Included with the release of the new models is a bare metal platform that can be loaded with a compiled microMIPS binary. This can run the binary and will provide any console output e.g. 'printf' to a shell. A GDB debugger can be connected to the platform to enable source code debug of the microMIPS code. Also an Eclipse IDE can be used to provide graphical debug of the M14K/M14Kc software.

The platform is provided as source and so like any other OVP platform you can add other peripheral components such as UARTs, VGA, LCD, interrupt controllers, ethernet, USB etc. You can also instance any other OVP processors making the platform fully multicore.

To have a look at this platform, install the 'M14K bare metal platforms package' called OVPsim_demo_M14K for your Linux or Windows host. When installed have a look at the *Imperas\Demo\OVPsim_M14K directory. Read the README.txt, and run with RUN_OVPsim_M14K_dhrystone.bat or debug with DEBUG_GDBRSP_OVPsim_M14K_dhrystone.bat etc.

Download M14K/M14Kc/microMIPS models, platforms and tools

In the right hand side of this page you will see links for the specific downloads that are available for these new processor cores. There are currently the models and platforms. There is also a link to get the GNU compiler and debugger tools.

In the next few weeks we will also include downloads for Eclipse IDE usage and other example platforms. We will also include links to specific presentations and videos that relate to these new cores.

Below is information relating the other MIPS-Verified OVP models of MIPS processors.

OVP Download for MIPS 4K, 24K, 34K, 74K, 1004K, 1074K processors

For first time MIPS download page, go here.

For videos related to MIPS Malta Platforms running Linux and debugging user applications, please click here.

MIPS-Verified(tm) - all processors models of MIPS Technologies processors available from this site are now MIPS-Verified(tm). Please see the associated press release for more information.

On the right you will see the different downloads available for MIPS cores - from simple single processor platforms running benchmark applications through to multi-core examples and also a Malta platform that boots Linux.

Also - there is the download of the models themselves - including many examples of using them - and its source is available in the Library section.

Also there are GCC, GDB etc toolchains you will need to compile and run applications.

Using the OVP MIPS model

To use the MIPS model you will need several things downloaded. You will need to download a) the OVPSim simulator, b) the MIPS model itself (included as binary in the OVPsim package), and c) if you don't already have the toolchain to compile up applications, you will need that too... And then take a look at some of the examples - they provide pointers as to what is needed for starter platforms. Then you will need to write your own platform.c file, application.c and when compiled - you will be all set.

MIPS Demo Slide Presentation View Large

You could walk through this presentation to get a feel for how easy it is to use the MIPS model. To find out more about the technology behind the model - please go to the Technology pages.

click to view OVP MIPSDEMO1 demo

MIPS Demo Video Presentation View Large

For a demo of how easy it is to download, and a quick walk through downloading and running the applications please watch the video:

OVP demo

MIPS Malta Linux Videos

Linux Penguin

MIPS Malta Linux Video 1) - Installing OVPsim simulator, MIPS Malta Platform and Booting Linux (boots in 4 seconds)

Video demonstration showing the download of the OVP simulator, download of the Linux image, install and booting the OVP MIPS Malta Virtual Platform with Linux 2.6:

OVP Linux Video 1

MIPS Malta Linux Video 2)- Installing, creating full disk image and booting multiuser Linux

Video demonstration of how to use OVP to create a full multi user Linux disk image and boot from it:

OVP Linux Video 2

MIPS Malta Linux Video 3) - Cross compiling user applications and debugging them on simulated MIPS Linux

Video demonstration of how to use OVP to cross compile MIPS Linux applications, install them into the Linux disk image and then simulate them - and debug them with GDB and Eclipse:

OVP Linux Video 3

OVP Documentation

Search and view all the OVP documents by visiting here.

Obtaining a license key

OVPsim requires a license key to run. This can be obtained by visiting the Obtaining an OVPsim License Key page

OVP Downloads

Previous Releases

To view and download previous OVP releases, visit here.

Current release: 20120313.0

The current release has been available for 67 days. Please uninstall the previous release before installing the new release or components of it. The changes in this release can be viewed here. Don't mix releases.

MIPS M14K relatedExample platforms and demonstrations of different applications/benchmarks running MIPS M14K processors

M14K bare metal platforms and examples
Windows  Linux
Several example platforms instancing 1, 2, 24 cores which can be selected to be M14K, M14Kc, or microMIPS. Platforms can be loaded with any compiled microMIPS binary. For the single core baremetal platform you can select normal or GDB debug run. Platforms available in C or SystemC TLM2.0.

Malta Platform using microMIPS running linux
Windows  Linux
Self contained M14KcTLB Malta platform that boots linux. Includes binary of microMIPS compiled linux.

MIPS 32 OVP model
Windows  Linux
MIPS 32 configurable model of 4K, 24K, 34K, 74K, 1004K, 1074K, M14K. Includes all model source code.

MIPS32 ExamplesExamples and demonstrations of different applications/benchmarks running on platforms using MIPS processors

Self contained MIPS
Windows  Linux
Several simple example C programs running on MIPS processors. Includes single and multicore examples running fibonacci, linpack, dhrystone etc.

Malta Platform booting Linux2.6
Windows  Linux
MIPS Malta Virtual Platform and all peripherals that boots Linux 2.6 on single core MIPS 24K or dual core SMP Linux 2.6 on MIPS 34K. Available as source from library section of website.

Malta Platform booting Nucleus
Windows  Linux
MIPS Malta Virtual Platform and all peripherals that boots Nucleus 2.2 on single core MIPS 24K.

SystemC TLM2.0 MIPS Malta Platform running linux
Windows  Linux
OVP TLM2.0 self contained 4KEc Malta platform that boots linux. Includes binary of MIPS linux.

Malta Platform Downloading Full Linux Distribution
Windows  Linux
MIPS Malta Virtual Platform and all peripherals that runs Linux 2.6 Kernel on single core MIPS and performs a full linux distribution download and installation.

1074K bare metal platforms and examples
Windows  Linux
Example platforms instancing cores which can be selected to be 1074Kc or 1074f. Platforms can be loaded with any compiled MIPS32 binary. The baremetal platform can select normal or GDB debug run and for GDB which core to connect to. Platforms available in C or SystemC TLM2.0.

Multi-Core Platform ExamplesExamples and demonstrations of different small applications/benchmarks running on different multicore platforms

ARM7 and MIPS32 hetero multicore
Windows  Linux
Simple platform with 1xARM7 and 3xMIPS32 processors with local and shared memory.

Versatile Express booting Linux on Cortex-A9MP Single, Dual and Quad Core
Windows  Linux
ARM Versatile Express Virtual Platform including Cortex-A9MP Core, all peripherals and software to boot Linux2.6

Platform including ARM Cortex-A9MPx4 to run ARM MPCore Sample Code
Windows  Linux
Minimal Virtual Platform including ARM Cortex-A9MPx4 to run the ARM MPCore Boot and Synchronization Example Code

MIPS32 ModelsOVP Models of MIPS Processors, associated examples

MIPS 32 OVP model
Windows  Linux
MIPS 32 configurable model of 4K, 24K, 34K, 74K, 1004K, 1074K, M14K. Includes all model source code.

MIPS32 ToolchainsCompilers, linkers, debuggers for use with MIPS processors

Compilers, linkers, debuggers for use with MIPS processors
Windows  Linux
GNU GCC GDB etc for MIPS. Compiled versions of open source tools.

OVPsim Fast SimulatorJust-In-Time Code Morphing simulator that runs OVP models up to 2,000 MIPS for embedded software development.

List of Changes
Windows or Linux
Documentation of the changes version by version for OVPsim.

OVP Documentation
Windows or Linux
All OVP Documentation files in one Package.

Main OVP Download including OVPsim Simulator
Windows  Linux
Binary of the simulator, headers, examples of creating processors, peripherals and platforms, and running. Includes full documentation. Includes all model source code.

Comments on OVP...

footer