Giter Site home page Giter Site logo

mvp's Introduction

MVP: Multi-core Virtual Platform

Overview

MVP is a multi-core whole system simulation virtual platform based on SystemC. It has:

  • ISS (instruction set simulator) supports ARMv5/v6/v6K/v7-A instruction set
  • Essential peripheral modules for Linux booting: interrupt controller, system controller, timer, uart

It is also the base platform for the CASL Hypervisor.

System Requirement

  1. Modern Mac OS X or Linux distributions (tested on OS X El Capitan)
  2. SystemC 2.3.1 (with TLM)
  3. Boost 1.58

Build

  1. Download and build SystemC from http://accellera.org.
  2. Download and install the Boost Library or get it via Homebrew.
  3. Edit Defs.mk to include proper pathes for SystemC before compiling.
    $ make pb -j4    # build for Realview Platform Baseboard with ARMv7-A ISS

    $ make vb -j4    # build for CASLab Virtual Platform with ARMv7-A ISS and Virtualization Extensions

Commands below are not functional yet.

    $ make v -j4     # build for Versatile Platform Baseboard with ARMv5 ISS

    $ make r -j4     # build for Realview Emulation Baseboard with ARMv5 ISS

    $ make rr -j4    # build for Realview Emulation Baseboard with ARMv6 ISS

    $ make rmp -j4   # build for Realview Emulation Baseboard with ARMv6K multi-core ISS

Implementation Detial

Versatile Platform Baseboard with ARMv5 ISS

Both the Versatile PB and the ARMv5 ISS implementations are based on Sing-Ying Lee's work traced back to 2010.

It can boot up a bare Linux kernel with a simple initial RAM disk. Only instructions being used during Linux boot were implemented.

For implementations, refer to mvp/armv5 and mvp/versatilepb_top.

Realview Emulation Baseboard with ARMv5, ARMv6 and ARMv6K ISS

The single-core ARMv6 ISS and multi-core ARMv6K ISS extends the ARMv5 ISS using C++ Inheritance.

This platform can boot up a multi-core (up to 4) Linux kernel with a simple initial RAM disk. Only instructions being used during Linux boot were implemented.

For implementations, refer to mvp/arm6, mvp/armv6k and mvp/realvieweb_top.

Realview Platform Baseboard with ARMv7-A ISS

The ARMv7-A ISS is a complete re-write due to the huge differences between ARMv6 and ARMv7 instructions sets.

The ARM Virtualization Extensions is implemented in the v7 ISS, but the multi-core support is not.

It can boot up a bare Linux kernel with a simple initial RAM disk. Only instructions being used during Linux boot were implemented.

For implementations, refer to mvp/arm7a and mvp/realviewpb_top.

CASLab Virtual Platform with ARMv7-A ISS and Virtualization Extensions

This is a completely virtual platform which is used to demonstrate the ARM-based CASL Hypervisor. It contains necessary peripherals to support up to four guest OSes for the CASL Hypervisor.

For implementations, refer to mvp/arm7a and mvp/meteorvb_top.

mvp's People

Contributors

ufoderek avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.