The RISC-V instruction set architecture has seen huge excitement and growth in
recent years (10B cores estimated to have shipped as of Dec
2022)
and I've been keeping very busy with RISC-V related work at
Igalia. I thought it would be fun to look
beyond the cores I've been working with and to enumerate the SoCs that are
available for direct purchase or in development boards that feature RISC-V
cores programmable by the end user. I'm certain to be missing some
SoCs or have some mistakes or missing information - any corrections very
gratefully received at asb@muxup.com or
asbradbury.org on bsky. I'm focusing almost
exclusively on the RISC-V aspects of each SoC - i.e. don't expect a detailed
listing of other on-chip peripherals or accelerators.
A few thoughts
It was absolutely astonishing how difficult it was to get basic information
about the RISC-V specification implemented by many of these SoCs. In a
number of cases, just a description of a "RV32 core at xxMHz" with further
detective work being needed to find any information at all about even the
standard instruction set extensions supported.
The way I've focused on the details of individual cores does a bit of a
disservice to those SoCs with compute clusters or interesting cache
hierarchies. If I were to do this again (or if I revisit this in the
future), I'd look to rectify that. There a whole bunch of other
micro-architectural details it would be interesting to detail too.
I've picked up CoreMark numbers where available, but of course that's a
very limited metric to compare cores. It's also not always clear which
compiler was used, which extensions were targeted and so on. Plus when the
figure is taken from an IP core product page, the numbers may refer to a
newer version of the IP. Where there are multiple numbers floating about
I've listed them all.
There's a lot of chips here - but although I've likely missed some, not so
many that it's impossible to enumerate. RISC-V is growing rapidly, so
perhaps this will change in the next year or two.
A large proportion of the SoC designs listed are based on proprietary core
designs. The exceptions are the collection of SoCs based on the T-Head
cores, the SiFive E31 and Kendryte K210 (Rocket-derived) and the GreenWaves
GAP8/GAP9 (PULP-derived). As a long-term proponent of open source silicon
I'd hope to see this change over time. Once a company has moved from a
proprietary ISA to an open standard (RISC-V), there's a much easier
transition path to switch from a proprietary IP core to one that's open
source.
4 x RV64GC SFive U74 application
cores, 1 x RV64IMAC SiFive S71 monitor core.
It's hard to find details for the S71 core, the FU740 manual refers to
it as an S7 while the HiFive Unmatched refers to it as the S71 - but
neither have a page on SiFive's site. I'm told that the S71 has the same
pipeline as the S76, just no support
for the F and D extensions.
The U74 is a dual-issue in-order pipeline with 8 stages.
4 x "RV64GBC" SiFive P550 application cores (docs not yet available, but
an overview is
here).
As the 'B' extension was broken up into smaller sub-extensions, this is
perhaps RV64GC_Zba_Zbb like the SiFive U74.
13 stage, 3 issue, out-of-order pipeline.
As the bit manipulation extension was split into a range of
sub-extensions it's unclear exactly which of the 'B' family extensions
will be supported.
Key stats:
2.2 GHz, fabbed on Intel's '4' process node
(ref).
The C910 is a 3-issue out-of-order pipeline with 12 stages, the C906 is
single-issue in-order with 5 stages, and the E902 is single-issue in-order
with 2 stages.
Verilog for the cores is up on GitHub under the Apache license:
C910,
C906,
E902.
See discussion
on what is included).
Features an NSITEXE
DR1000C
RISC-V parallel coprocessor, comprised of RV32I scalar processor units,
a control core unit, and a vector processing unit based on the RISC-V
vector extension.
The CH32V203 is also
available but I haven't listed it separately as it's not clear how the
QingKe V4b core in that chip differs to the V4c in this one.
1 x RV32IMAFC AndesCore
D25F
with additional vendor-specific instruction set extensions.
5 stage pipeline, single issue in-order.
Key stats:
100 MHz
Development board:
None available currently.
Bonus: Other SoCs that don't match the above criteria or where there's insufficient info
The Espressif ESP32-P4 was
announced, featuring a dual-core 400MHz RISC-V CPU with "an AI instructions
extension". I look forward to incorporating it into the list above when more
information is available.
I won't try to enumerate every use of RISC-V in chips that aren't
programmable by end users or where development boards aren't available, but
it's worth noting the use of RISC-V Google's Titan
M2
In January 2022 Intel Mobileye
announced
the EyeQ Ultra featuring 12 RISC-V cores (of unknown design), but there
hasn't been any news since.
Article changelog
2024-12-03: Replace twitter link with bsky.
2023-03-31: Add Renesas R9A06G150 to the list.
2023-03-26: Add HPM6750 to the list.
2023-03-19: Add note on silicon bug in the Renesas RZ/Five.
2023-03-12: Clarified details of several SiFive cores and made the
listing of SoCs using cores derived from open source RTL exhaustive.