The RISC-V hardware instruction set architecture is unique, in that it’s a modern architecture that’s both open source and useful in the real world. But, it was mostly developed with embedded processing solutions in mind, such as for IoT applications or edge computing. Of course, that doesn’t mean there isn’t any interest in a RISC-V PC, and so this team developed one that can run Fedora Linux with the help of an FPGA.
This project, which was a collaboration between AB Open, SiFive, Microsemi, Fedora, Debian, and Western Digital, was quite the undertaking. That’s a big team from a number of corporations, but all of that expertise was necessary to make the pieces work together. RISC-V processors don’t have the benefit of an established desktop architecture, so getting one to work with standard desktop peripherals and components, like USB HID devices and hard drives, was a major challenge.
The team started with a SiFive HiFive Unleashed RISC-V-based, Linux-capable development board. That has a 64-bit quad-core RISC-V processor, 8GB DDR4 ECC memory, a UART, and gigabit Ethernet. But, it doesn’t have any kind of onboard USB, PCIe, or SATA interface. Those necessitated the use of an expansion board from Microsemi, which utilizes a Polarfire FPGA to provide access to those peripheral I/O connections.
As anyone who has worked with an FPGA knows, this is a bit of an oversimplification, but the team was able to use that Microsemi expansion board to give the RISC-V processor access to those peripherals that are necessary for a desktop PC. With the help of Atish Patra from Western Digital, they were able to compile a Fedora Linux kernel that works with the RISC-V architecture and the peripherals through the FPGA. They then laser cut an acrylic enclosure, and had a working RISC-V PC! It’s not something you can pick up at your local Best Buy, but it does demonstrate what’s possible.