Skip to content
This repository has been archived by the owner on Mar 27, 2021. It is now read-only.

Latest commit

 

History

History
263 lines (221 loc) · 25.8 KB

README.md

File metadata and controls

263 lines (221 loc) · 25.8 KB

THIS REPO IS NOW ARCHIVED. If you would like to make an addition or change, please contact content@riscv.org

RISC-V Software Ecosystem Overview

This document captures the status of the RISC-V Software Ecosystem. Please add to the list and fix inaccuracies by making a Pull Request against the software list repository on GitHub.

We would like to enlist community help for the software ports in the Help Wanted section.

Simulators

Name Links License Maintainers
riscvOVPsimPlus website Proprietary freeware Imperas
DBT-RISE-RISCV github BSD 3-Clause MINRES Technologies
FireSim website, mailing list, github, ISCA 2018 Paper BSD Sagar Karandikar, Howard Mao, Donggyu Kim, David Biancolin, Alon Amid, Berkeley Architecture Research
gem5 SW-dev thread, repository BSD-style Alec Roelke (University of Virginia)
OVPsim website, github Proprietary (core simulation platform), Apache License (processor / platform model) Imperas
jor1k website, github BSD 2-Clause Sebastian Macke
Jupiter github GPL-3.0 Andrés Castellanos
MARSS-RISCV github MIT Gaurav N Kothari, Parikshit P Sarnaik, Gokturk Yuksek (State University of New York at Binghamton)
QEMU upstream GPL Sagar Karandikar (University of California, Berkeley), Bastian Koppelmann (University of Paderborn), Alex Suykov, Stefan O'Rear and Michael Clark (SiFive)
RARS github MIT Benjamin Landers
Renode website, github MIT Antmicro
Ripes github MIT Morten Borup Petersen
RISC-V Virtual Prototype website, github MIT Vladimir Herdt (University of Bremen, AGRA)
TinyEMU website MIT Fabrice Bellard
Spike github BSD 3-clause Andrew Waterman & Yunsup Lee (SiFive)
Swerv-ISS github GPL - 3 Joseph Rahmeh (Western Digital)
VLAB VLAB Works Proprietary ASTC
WebRISC-V github BSD 3-clause Gianfranco Mariotti, Roberto Giorgi (University of Siena)
PQSE website Proprietary PQShield
riscv-rust website github MIT Takahiro Aoyagi
terminus github MIT Yang Li
Vulcan github MIT Victor Miguel de Morais Costa
riscv-vm github MIT Aidan Dodds
EmulsiV Working Instance, GitHub Open (MPL2.0) Guillaume Savaton

Object toolchain

Name Links License Maintainers
Binutils RISC-V repo, Upstream repos GPLv2 Andrew Waterman (SiFive), Palmer Dabbelt (Google) & Jim Wilson (SiFive)
LLVM GitHub mirror Apache 2.0 with LLVM exception Alex Bradbury (lowRISC)
Cranelift GitHub Apache 2.0 Cranelift core team

Debugging

Name Links License Maintainers
GDB Upstream GPLv2 Andrew Burgess (Embecosm), Palmer Dabbelt (Google)
OpenOCD Upstream repo, RISC-V repo GPLv2 Tim Newsome (SiFive), Megan Wachs (SiFive), Palmer Dabbelt (Google)
GNU MCU Eclipse OpenOCD Website, GitHub GPLv2 Liviu Ionescu
TRACE32 JTAG Debugger Website TRACE32 license Lauterbach
Ozone - the J-Link Debugger Website SEGGER commercial license (J-Link PLUS) SEGGER
Ashling RiscFree Debugger Website Ashling commercial license Ashling
Imperas Multi Processor Debugger Website Imperas Commercial License Imperas
TCF Debugger Website, GitHub Eclipse Distribution License 1.0 (BSD) / Eclipse Public License 1.0 Sanimir Agovic
PlatformIO Unified Debugger Docs Apache 2.0 PlatformIO
Green Hills Probe Website Proprietary Green Hills
GRMON Website Evaluation license, Proprietary Cobham Gaisler

C compilers and libraries

Name Links License Maintainers
GCC Upstream, RISC-V repository GPLv3 Andrew Waterman (SiFive), Palmer Dabbelt (Google), Jim Wilson (SiFive), Kito Cheng (SiFive)
GNU MCU Eclipse RISC-V Embedded GCC (riscv-non-embed-gcc) Web, Repository, Build, Binary package installer Eclipse Public License Liviu lonescu
Clang/LLVM Upstream Apache 2.0 Alex Bradbury (lowRISC)
CompCert Upstream INRIA Non-Commercial License Agreement Xavier Leroy
Glibc Upstream, RISC-V repository GPLv2 Palmer Dabbelt (Google), Andrew Waterman (SiFive), DJ Delorie (Red Hat), Darius Rad(Bluespec)
Newlib Upstream, RISC-V repository GPLv2 Kito Cheng (SiFive)
SEGGER Runtime Library Website SEGGER commercial license SEGGER
SEGGER Floating Point Library Website SEGGER commercial license SEGGER
Musl GitHub MIT -
Green Hills Optimizing C/C++ Compilers Website Proprietary Green Hills
OpenArkCompiler (MAPLE) Upstream MulanPSL-2.0 Futurewei
Andes MCUlib website Andes commercial license Andes

Boot loaders and monitors

Name Links License Maintainers
coreboot Upstream GPLv2 Ron Minnich (Google), Jonathan Neuschäfer
U-Boot Upstream GPLv2 Rick Chen (Andes)
Proxy Kernel/BBL GitHub BSD 3-clause SiFive
OpenSBI GitHub BSD 2-clause Anup Patel (Western Digital), Atish Patra (Western Digital)
RustSBI GitHub Mulan PSL v2 Luo Jia (Huazhong Univ. of Sci. & Tech.)
UEFI edk2 GitHub BSD 2-Clause Patent Abner Chang (Hewlett Packard Enterprise), Daniel Schaefer (Hewlett Packard Enterprise)

Hypervisors and related tools

Name Links License Brief Maintainers
Xvisor Website, Upstream, RISC-V Repo GPLv2 Type-1 baremetal monolithic hypervisor Anup Patel (Western Digital)
KVM Website, RISC-V Repo, RISC-V Wiki GPLv2 Type-2 hypervisor Anup Patel (Western Digital), Atish Patra (Western Digital)
KVMTOOL Upstream, RISC-V Repo GPLv2 Userspace tool for the KVM hypervisor Anup Patel (Western Digital), Atish Patra (Western Digital)
RVirt GitHub Apache-2.0 Trap-and-emulate hypervisor Jonathan Behrens (MIT)

OS and OS kernels

Linux built from source

Name Links License Maintainers
Linux Kernel github, kernel.org GPLv2 Andrew Waterman (SiFive), Albert Ou (SiFive), Palmer Dabbelt (Google)
Yocto Project/OpenEmbedded github MIT Khem Raj
Buildroot busybox.net Mark Corbin (Embecosm)

Linux distributions

Name Links License Maintainers
Fedora fedoraproject.org Richard WM Jones, Stefan O’Rear, David Abdurachmanov
Debian debian wiki, mit.edu, riscv.org, Annc Manuel A. Fernandez Montecelo
OpenMandriva openmandriva.org, openmandriva.org Bernhard "Bero" Rosenkränzer
openSUSE opensuse.org Andreas Schwab (SUSE)
Gentoo github Palmer Dabbelt (University of California, Berkeley)
Parabola GNU/Linux-libre github, parabola.nu Andreas Grapentin (University of Potsdam, HPI)
Ataraxia Linux github protonesso
Slackware Linux github Álvaro Figueroa (of Greencore Solutions)
Ubuntu ubuntu.com xnox

Real-time Operating Systems

Name Links License Maintainers
RT-Thread github, rt-thread.io Apache 2.0 RT-Thread
embOS Website, RISC-V port SEGGER commercial license, free for non-commercial use SEGGER
RTEMS rtems.org, docs.rtems.org Hesham Almatary
FreeRTOS sourceforge, freertos.org MIT AWS
Zephyr github, docs Apache 2.0 Karol Gugala (Antmicro), Peter Gielda (Antmicro), Nathaniel Graff (SiFive)
LiteOS github, docs Chaifangming (Huawei), Pengzhouhu (Huawei), Huerjia (Huawei)
NuttX bitbucket.org, nuttx.org
Apache Mynewt riscv.org Apache 2.0 James Pace, Runtime
OpenWrt github, binary repo Zoltan Herpai
seL4 github, seL4.systems GPLv2 (kernel and proofs), various open-source licenses (userland) Trustworthy Systems group, Data61 CSIRO
PikeOS Press release Proprietary SYSGO
VxWorks Press release Proprietary Wind River
Embox github, embox.rocks Embox
Phoenix-RTOS github, documentation BSD Phoenix Systems

BSD distributions

Name Links License Maintainers
FreeBSD github, wiki.freebsd.org, presentation Ruslan Bukin (FreeBSD)
NetBSD netbsd.org, github Matt Thomas (NetBSD), Reinoud Zandijk (NetBSD)

Compilers and runtimes for other languages

Name Links License Maintainers
Go Upstream, RISC-V repository, Stef's fork BSD 3-clause Benjamin Barenblat (Google), Michael Pratt (Google), Stef O'Rear
Ocaml Upstream, RISC-V repository LGPL Nicolás Ojeda Bär
Maxine VM (Java Virtual Machine) Upstream GPLv2 Maxine team
Jikes RVM (Java Virtual Machine) Upstream Eclipse Public License (EPL) Martin Maas (University of California, Berkeley)
OpenJDK/HotSpot (Java Virtual Machine) ? ? Alexey Baturo, Michael Knysnek, Martin Maas
OpenJDK/OpenJ9 (Java Virtual Machine) Upstream Eclipse Public License 2.0 (EPLv2) with ClassPath Exception & Apache 2.0 Cheng Jin
BishengJDK/HotSpot (Java Virtual Machine) Upstream GPLv2 with Classpath Exception Yadong Wang
Free Pascal Upstream ? Jeppe Johansen and others
Nim Upstream MIT Andreas Rumpf and others
Ada (GNAT) Upstream GPLv3 with linking exception AdaCore
Rust Upstream Apache and MIT Rust Project
muForth Upstream ? David Frech
ibForth Upstream GPLv3 Lars Brinkhoff
Mecrisp-Quintis Forth kernel Upstream ? Matthias Koch
Mono Initial support in upstream MIT Alex Rønne Petersen
Zen Zen-Lang.org Commercial, AGPLv3 connectFree Corporation
V8 (JS) Upstream github BSD RIOS, Futurewei, PLCT Lab
Node.js github MIT RIOS, Futurewei, PLCT Lab
OpenArkCompiler (MAPLE) Upstream MulanPSL-2.0 Futurewei
Eclipse OMR github Eclipse Public License 2.0 (EPLv2) with ClassPath and Assembly Exception & Apache 2.0 Eclipse OMR Project

IDEs, SDKs and binary toolchain distributions

Name Links License Maintainers
riscv-gnu-toolchain Website GPLv3 RISC-V International
JianChi CDK website Alibaba commercial license T-Head (Alibaba group)
Imperas M*SDK Website Proprietary Imperas
GNU MCU Eclipse Website, Repositories, Binary distribution EPL-1.0 / various Liviu Ionescu
RT-Thread Studio Website EPL-1.0 / various RT-Thread
AndeSight IDE website Andes comercial License Andes
Embedded Studio Website, RISC-V spec SEGGER commercial license, free for non-commercial use SEGGER
IAR Embedded Workbench Website commercial IAR Systems
PlatformIO Website, IDE, Docs Apache 2.0 PlatformIO
Freedom Studio Website EPL 1.0/various SiFive
Nuclei Studio Website EPL 1.0/various Nuclei System Technology
Ashling RiscFreeTM IDE Website Ashling commercial license Ashling
SoftConsole Website Various, see RN Microchip
GCC Sourcery CodeBench Lite Website GPLv3 Mentor, a Siemens Business
LLVM Sourcery CodeBench Lite Website Apache 2.0 Mentor, a Siemens Business
MULTI IDE Website Proprietary Green Hills

Security

Name Links License Maintainers
emCrypt Website Commercial, free for non-commercial use SEGGER
CoreGuard Website Proprietary Dover Microsystems, Inc.
MultiZone API GitHub ISC Hex Five Security Inc.
Secure IoT Stack GitHub MIT, GPLv2, GPLv3, Evaluation license Hex Five Security Inc.
MultiZone Security TEE & Enclave SDK, Enclave Evaluation license Hex Five Security Inc.
Keystone Enclave Website, Repositories BSD 3-clause Keystone Team
SecureRF Website, SDK Proprietary SecureRF Corp.
IntrinsicID Quiddikey Proprietary Intrinsic ID
Penglai Enclave Website, GitHub Mulan PSL v1 IPADS
PQSLIB / PQSoC Website Proprietary PQShield
Ghidra Website, Github Apache 2.0 National Security Agency

Machine Learning / AI

Name Links License Maintainers
TF Lite demo, blog note Apache 2.0 Antmicro / Google TF Lite team
ncnn GitHub BSD 3-clause Tencent Open Source
Andes NN Library website Andes commercial license Andes

Configuration

Name Links License Maintainers
RISC-V Explorer Website Proprietary BlueSpec

Verification Tools

Name Links License Maintainers
OneSpin RISC-V Verification App Website Proprietary OneSpin
OneSpin Floating-Point Unit App Website Proprietary OneSpin
RISCV-DV GitHub Apache 2.0 CHIPS Alliance Tools/DV workgroup
STING Website Proprietary Valtrix Systems
ImperasDV SystemVerilog HW DV Website Proprietary Imperas
Axiomise formalISA app Website Proprietary Axiomise

Accelerated Libraries

Name Links License Maintainers
OpenBLAS (Support RISC-V V extension 0.7.1) GitHub BSD 3-clause PerfXLab
Andes DSP Library website Andes commercial license Andes
Andes Vector Library website Andes commercial license Andes

Help Wanted

  • Dart