By Zhangxi Tan, Lin Zhang, Yi Li, and David Patterson of the RISC-V International Open Source Laboratory Tsinghua-Berkeley Shenzhen Institute RISC-V, the royalty-free open-source alternative to proprietary instruction sets, is growing globally in popularity. This has led to many free and open-source processor designs, a free and open software stack and an international organization that maintains and promotes the instruction set. However, while key pieces of an open-source ecosystem for RISC-V already exist, many parts are missing to match the completeness of ecosystems for the older, proprietary instruction sets. Enter…the PicoRioTM open-source project. Stewarded by the RISC-V International Open Source Laboratory (also known as RIOS Lab) – a nonprofit research lab at Tsinghua-Berkeley Shenzhen Institute (TBSI), the PicoRio will be a RISC-V-based small-board computer available at an affordable price point. The RIOS Lab uses collaborative engineering from both academia and industry to elevate the RISC-V software and hardware ecosystem, and in the PicoRio, we have created an open, affordable, Linux-capable RISC-V hardware platform to aid software developers in porting many modern programs that require JavaScript or graphics processing units (GPUs). PicoRio will build upon high-quality IPs and software components from expert industry engineers and academic researchers. It’s not proprietary to any specific vendor and platform and will have complete documentation to help people build quality products in a short amount of time. The aim is to ship PicoRio 1.0 in the first half of 2021. The PicoRio will aim to offer the following features and benefits:
- Independently maintained: The RIOS Lab will be the solo non-profit organization that governs the architecture development, ensures compliance and will publish the design. It will also be the gatekeeper for both hardware and software, from software on a chip (SoC) and firmware/drivers to high-level software and documentation. The PicoRio will be vendor-agnostic and not proprietary, and the RIOS Lab will work with academic and commercial organizations that will commit to its expansion and volume manufacturing.
- Open source: Unlike Raspberry Pi, which uses proprietary Broadcom SoCs, PicoRio will open source as many components as possible, including the central processing unit (CPU) and main SoC design, chip package and board design files, device drivers and firmware. The exceptions are foundry-related IPs (e.g., TSMC SRAM configurations), commercial high-speed interfaces and complex commercial IP blocks like GPU. Nevertheless, our goal is to reduce the commercial closed-source IPs for each successive release of PicoRio, with the long-term goal of having a version that is as open as is practical.
- High-quality IPs: The openness of PicoRio will not come at the cost of lower-quality IP blocks. A major goal of the RIOS lab is to develop open-source, industrial-strength hardware IP to help the RISC-V ecosystem catch up with those of the older, proprietary ISAs. Thus, PicoRio aims at a high-quality silicon release using open-source IP. The IP blocks will have gone through rigorous real tapeout verifications that meet industry quality. Also, we will open-source our verification process, to help improve transparency and trustworthiness.
- Modern software-stack support: PicoRio utilizes a heterogeneous multicore architecture and is Linux-capable (RV64GC). We also designed PicoRio hardware to run modern, managed languages (such as JavaScript/WebAssembly) as well as graphical applications (such as the Chrome web browser). At the RIOS Lab, PicoRio is also the hardware platform for several other open-source software projects, such as the RISC-V ports for V8 JavaScript engine and Chromium OS.
- Low power and low cost: The target metrics of PicoRio are long battery life and low cost, rather than offering high-performance and requiring large amounts of memory, making it a better match for RISC-V. In contrast, Raspberry Pi uses power-hungry ARM processors. For example, the idle power consumption in the latest version of Raspberry Pi has risen from 0.4 Watts to 2.7 Watts².