Posts: 8
Threads: 4
Joined: Apr 2020
Hi Experts,
I'm wondering, is the original Pulpissimo on git be able to boot Linux kernel? (with RI5CY I guess)
If not, how can I achieve it with minor changes? (like replacing RI5CY with Ariane). I'm expecting not to use certain platform like FPGA. It's like I'm going to boot up Linux in simulation with Pulpissimo (despite of speed)
Posts: 152
Threads: 0
Joined: Oct 2018
We get this question a lot.
First the simple answer, if you want to play with RISC-V and run linux, use Ariane/CVA6.. there is already a working FPGA mapping for the Genesys2 board and it is ready to go.
Technically there is probably not much missing from RI5CY/CV32E40P to boot Linux, and with a bit of effort it could work. However, the devil is in the details there. One thing that is particularly annoying is that RI5CY/CV32E40P has instruction set extensions, and therefore requires a 'modified' toolchain to compile things. Now this would require you to rebuild EVERYTHING needed to boot linux with a compiler that has been modified for the extensions. Of course it is also possible to use the standard tool chain, (which should work) but then you do not get any of the benefits that we added for the RI5CY/CV32E40P.. so it sort of does not make so much sense..
This is why we use Ariane as our Linux booting core, and RI5CY as the core that we use for things that need to run efficiently. Ariane has no extensions and can use the standard tool chain and linux builds.
Also recently OpenHW group has put effort and made a 32bit port of Ariane/CVA6 that boots Linux. I think it is an option of CVA6.. (not sure)
In theory, if you put enough effort, anything is possible, so plugging Ariane into PULPissimo could work.. but it is not really that easy (i.e. not minor changes), and in the end what you get is not going to be 'better' or more interesting than the Ariane FPGA port we have at the moment.
Hope that helps
Visit pulp-platform.org and follow us on twitter @pulp_platform