Where to start with RISC-V
How to get started, where to contribute, and what to do next
*FYI, Rhys has moved all of his writings to his own site musing-press.com, if you like this article, maybe have a peek over there?**
RISC-V made the news recently when BeagleBoard.org revealed the BeagleV (Beagle Five) SBC (single board computer). The first affordable, highly available SBC that uses the RISC-V architecture. The board isn’t yet commercially available but you can register to be considered for the first wave when they ship in April. For those who don’t know anything about RISC-V, let me explain.
What is RISC-V?
RISC-V stands for ‘reduced instruction set computer’. Every CPU in a computer uses instruction sets which let you speak to the CPU and tell it what to do. Reduced instruction set CPUs like RISC-V or ARM are highly configurable for specific use cases but can be limited in their capabilities to do lots of things at once.
RISC-V came out of Berkley in 2010. It was the fifth version of an Open Source RISC architecture (hence RISC-V) and has since become the definitive RISC architecture today. About a year ago the RISC-V foundation became RISC-V international, a global non-profit organisation HQ-ed Geneva, Switzerland. It’s now a global community with over 750 members in more than 50 countries.
A large contributing factor is that RISC-V is becoming mainstream with companies and universities all over the world getting in evolved. Folks can join as a big company, a small company or an individual contributor. I recommend you go to their website and do all the signing up and reading you like.
Getting started with RISC-V
RISC-V is easy to get started with if you know where to look. Members of the community have put together troves of documentation, tutorials, course materials and book for all levels.
You can sign up for the online training, a course created in collaboration with ‘imagination university’ entitled: ‘RVFPGA: Complete Course in Understanding Computer Architecture’. If you follow the same link you can also contribute course materials there too.
If you’re an organisation you can become a RISC-V training partner. This is a technical program where groups of people can gain expertise in RISC_V and engage with the wider community at the same time.
If you’re more of a self server there are also lots of more general educational resources too. The community has put together a list of interactive RISC-V courses, the materials that go with them, various courses that use RISC-V in someway and an assortment of other helpful courses.
More information and a few more resources can found under /community/learn on their website. I found it a little difficult to dig up so there it is in case you see it here.
BeagleV RISC-V SBC
The BeagleBoard.org foundation, Seeed Studio, and Chinese silicon vendor Starfive partnered to design and launch the BeagleV SBC. It’s powered by StarFive JH7100 dual-core SiFive U74 RISC-V processor with Vision DSP, NVDLA engine, and neural network engine for AI acceleration. If that doesn't make a whole lot of sense to you it means the board is capable. You’ll be able to use it like most other development boards out there and know that it is built to handle AI/ML processes.
This really means two things. From a practical perspective, it means you can develop an all open AI/ML device. No proprietary code, no proprietary silicon, all open-source (unless you count buying the board I suppose). It’s an impressive board. But second, if successful, nicely proves the validity and ability of fully open-source tech in real-world products. It’ll be one for the open-source die-hards out there, and everyone else too. Large hardware companies will be more ready to adopt the RISC-V architecture, it will become more accessible to hobbyists and small businesses because ultimately it will be cheaper, the communities will grow providing more support and, perhaps most exciting of all, we could see an increase in new hardware/device companies that capitalise on all open-source AI.
Like most modern-day open-source projects and communities, anyone can contribute and it's easy to do so. Gone are the day when you needed a CS degree to really contribute anything useful. If you are a developer and would like to contribute though you can go to the GitHub, have a poke around, see what you can do. If you’re not, first become an individual contributor (a type of free membership) and sign up to the working groups and mailing lists where your skills can come in handy. There’s docs groups, marketing groups, events groups, tech groups, and more. From what I’ve seen RISC-V as an org have done a great job in making it easy to get started. So if you’re interested in contributing to RISC-V the all open-source architecture, you can.
Full disclosure, I am brand new to the RISC-V community. The first thing I was involved in was the first London Open Source RISC-V meet up of 2021 the other day. But I’ve been looking for an open hardware something to get stuck into and think this is it. They seem a good sort, the first 20 minutes of the virtual meet up was a discussion about biscuits. And then the three talks that followed were terribly impressive if occasionally a little too technical for me, but I’ll get there.
If you want to get involved with the community the best thing to do is to sign up and start working your way through stuff. Join some open meetings, sign up to some groups, send messages to the mailing lists and generally spread the word. If you want to sign up as an individual or as an organisation just do it.