Comment by Shugyousha
9 hours ago
> Where is the RTL? Where are the GDSII masks? Why am I unable to look at the branch predictor unit in the Github code viewer? Or (God forbid!) the USB/HDMI/GPU IP? I reject the notion that these are unreasonable questions.
As you note correctly, the ISA is open, not this CPU (or board).
The important point is that using an open ISA allows you to create your own CPU that implements it. This CPU can then be open (i.e. you providing the RTL, etc.), if you so desire
I assume it will be much more difficult (or impossible?) to provide the RTL for a CPU with an AMD64 ISA, since that one has to be licensed. I wonder if you paying for the license allows you to share your implementation with the world. Even if it does, it's less likely that you will do so, given that you will have to pay for the licensing fee and make your money back
Since there is no license to pay for in case of RISC-V, it allows you to open up the design of your CPU without you having to pay for that privilege
The important point is that using an open ISA allows you to create your own CPU that implements it.
So? You've been able to do that since...computers. Anyone can roll their own ISA any time they want. It's a low-effort project that someone with maybe a Masters student level of knowledge can do competently. When I was in school, we even had a class where you would cook up an (simple) ISA and implement it (2901 bit-slice processors); these days they use FPGAs.
So you got your own processor for your own ISA...that was slow, expensive (no economy of scale) and without a market. But very fun, and open source, at least. And if "create your own CPU that implements it" is what you want, go forth and conquer...everything you need is already there and has been for a long time.
But if your goal is "I want an open source ISA that I can produce that's price and/or performance competitive with the incumbents", well, that's a totally different ballgame.
And there are open source ISAs that have been around for decades (SPARC, POWER, SuperH). These are ISAs that already have big chunks of ecosystem already in place. The R&D around how to make them competitive already exists. Some, like LEON SPARC have even gone into something like production (and flown in space).
So, yes, an open source ISA affords the possibility that we can make processors based on our own ISAs on our own terms. It has even in extremely rare occasions produced a product. But the fact remains, the market hasn't cared in the slightest to invest what's required to turn that advantage into a real competitor to the incumbent processors.
My superficial understanding is that arm does not prevent from sharing implementation details of your own design but most chips also license a starting implementation that has such limitations. So the end result is often more restricted than the ISA licence some would require
Most ARM licensees aren't permitted to create custom implementations, only to use IP cores provided by ARM. There are a couple of companies who do have an architectural license, allowing them to create their own implementations, but there are only a few of those and they aren't likely to share. (It's also possible that the terms of their license prohibit them from making their designs public.)