The Princeton Parallel Group led by David Wentzlaff and the Digital Circuits and Systems Group of ETH Zürich led by Luca Benini have joined forces to bring you the OpenPiton open-source research processor platform with first-class support for 64-bit Ariane RISC-V cores. OpenPiton is now the go-to multicore environment for Ariane. Likewise, Ariane has first-class upstream support in OpenPiton.
The combined platform, OpenPiton+Ariane, is a permissively-licensed open-source framework designed to enable scalable architecture research prototypes. With the recent addition of SMP Linux running on FPGA, OpenPiton+Ariane is the first Linux-booting, open-source, RISC-V system that scales from single-core to manycore. This makes OpenPiton+Ariane the ideal RISC-V hardware research platform.
OpenPiton began as the world’s first open source, general-purpose, multithreaded manycore processor and framework. It leverages the industry hardened OpenSPARC T1 core with modifications and builds upon it with a scratch-built, scalable uncore creating a flexible, modern manycore design. OpenPiton provides a complete verification infrastructure of over 8000 tests, is supported by mature software tools, runs full-stack multiuser Debian Linux, and is written in industry standard Verilog. In addition, OpenPiton provides synthesis and backend scripts for ASIC and FPGA to enable other researchers to bring their designs to implementation. Multiple implementations of OpenPiton have been created including a taped-out 25-core implementation in IBM’s 32nm process and multiple Xilinx FPGA prototypes.
It is on this mature foundation that we built OpenPiton+Ariane. Ariane is a 64-bit RISC-V application processor, which implements the RV64GC instruction set. Ariane has been taped-out in multiple foundry processes and is capable of booting Linux single-core. By modifying the L1 cache interface for Ariane to support the P-Mesh cache-coherence protocol, we built OpenPiton+Ariane into a Linux-booting, RISC-V manycore. OpenPiton+Ariane inherits all of the capabilities of OpenPiton and of Ariane, bringing them together in a single scalable, configurable, and easy-to-use platform ideal for rapid prototyping of ideas.
This tutorial will introduce the user to OpenPiton+Ariane including how to use the framework to build different designs. The tutorial will introduce the verification framework (Verilog simulation), how to synthesize a multicore OpenPiton+Ariane processor for a Xilinx FPGA board, it will demonstrate booting RISC-V Linux on an FPGA version of OpenPiton+Ariane, it will familiarize users with how to use the OpenPiton framework to target an ASIC tapeout, and it will show users how to configure and extend the OpenPiton architecture to enable architecture research.
Researchers and practitioners in academia or industry looking for a free, (permissively-licensed) open-source, RISC-V hardware platform. Common research uses include computer architecture research, EDA-tool exploration on a complex design, operating system research, and compiler research.
Attendees that wish to try out the hand-on tutorial should have a some experience with using Linux and a Linux-based text editor. Attendees should bring a laptop and charger for the tutorial. Each attendee will receive a USB flash drive containing: VirtualBox installers for Windows, Mac OS X, Linux; and a Linux virtual machine containing all of the code and tools for the tutorial, along with PDFs of the slides and handouts. Attendees will need approximately 10GB of free disk space to install and use the virtual machine.
Linux booting on FPGA playing Tetris on OpenPiton |
|
OpenPiton Paper | |
Princeton Parallel Group |
This work was partially supported by the NSF under Grants No. CCF-1217553, CCF-1453112, and CCF-1438980, AFOSR under Grant No. FA9550-14-1-0148, and DARPA under Grants No. N66001-14-1-4040 and HR0011-13-2-0005. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of our sponsors.