A large organization like Alibaba spending the effort to get Android running on their own RISC-V platform seems like a clear sign that we're on the cusp of seeing RISC-V development and adoption snowball in the next few years.
Could someone elaborate a bit on how RISC-V relates to ARM?
From what I understand the former is a completely open source spec, and ARM is a proprietary one. But both are just specs, right? It’s not as if I can buy a RISC-V CPU from an organization behind it, it’ll have to be from a manufacturer that produces their own RISC CPUs?
Is it also an entirely different instruction set? How does it compare to x86 and ARM in terms of performance?
Last but not least, other than it being free / opensource, what are some of the reasons why anyone would choose RISC? Phrased differently, if they are going to take marketshare in the CPU world in the next decade, what will be the reason?
The spec is free, and a lot of cores are free as well. Here's the HDL for AliBaba's cores they've been developing this against: https://github.com/T-head-Semi/openc910
There are also non-free RISC-V cores, but they essentially have to continuously make the argument for their existence against the free cores that are available (support, verification resources, just being better designs in the short term, already being hardened for proprietary process nodes, etc.)
Nit: you shouldn’t use RISC as a shorthand for RISC-V. The former is a well-known term.
Yes, RISC-V is an open ISA, yes, like ARM there is no fab making canonical RISC-V chips. It does at least have the benefit of having support in the UEFI spec pretty much right out of the gate, which offers a standard boot path of sorts (Arm64 also supports UEFI, but most devices to this day have their own bespoke boot firmware and protocols, AFAIK. The unifying factor tends to be something like uboot, again, AFAIK.) but it also has more flexibility, which has the knock-on effect that it may be harder to know which RISC-V software can run on which RISC-V hardware.
I’m very curious to see where it goes. As a tinkerer I definitely have been looking for entire desktop computers that, weak or not, are truly open source and documented from the ground up. RISC-V platforms don’t solve that entirely (in fact it’s probably the remainder of SoC IP that poses the biggest problems) but it does offer an interesting option for a CPU.
take my comment with a bag full of sand, i am no expert, still
when you talk about ARM, you have to license designs from the ARM, inc. Apple with its apple silicon is licensing from ARM the designs and IP from them.
with RISC-v, there is no company to hold you hostage for designs and all. its all open source so you can build your own chip, own design, own tech, everything.
this also means i assume that in the long run, if RISC-v and ARM are on equal footing, RISC-v would be more freer, cheaper because there is no licensing and other corporate stuff to go through like with ARM, inc
ARM does develop their own core designs which they license to many companies. However, they have several different licenses available which range from using ARM's designs, tweaking ARM's designs, up to the Architectural license which allows companies to develop their own ARM ISA compatible cores own their own. Apple is one of the companies which has an Architectural license. The current cores used by Apple were designed by Apple and not based on designs from ARM.
Upstream toolchains won't readily accept extensions that aren't part of the standard, and maintaining forks is costly.
There is no incentive not to get extensions standardized. In the first place, what's even missing in RISC-V? As of December's 15 extensions, it is pretty much there already, in terms of functionality.
Intel and AMD each have instructions in their x86 chips that the other doesn't have. No one cares, pretty much. If you're building your own performance-critical software to run on a specific chip then you might enable some of them (or just do "gcc -march=native") but software distributed in binary form generally gets on fine without them.
>Is it also an entirely different instruction set? How does it compare to x86 and ARM in terms of performance?
It's a bit of a mixed bag. I'd say if macro op fusion turns out to be viable, it can become the fastest of the three, if not, it will be somewhere between ARM and x86 due to its unique compression scheme. This obviously depends on your particular chip. Apple is way ahead of Qualcomm on the same ISA.
I sure hope so. I think we may be on the cusp of a renaissance in the CPU space. Intel UCIe, RISC-V, ARM, etc, have all been quite exciting lately.
I'm an optimist so I imagine buying made to order CPUs from Intel or TSMC where you can pick and choose features and chiplets that can come from any number of companies.
The problem with your "mix and match" idea is that it's hugely expense to create masks for chip design, even for chips that simple compositions of predesigned cores, memory, and interconnect, and that expense only pays off because the one mask is used to fabricate anywhere from tens of thousands to millions of chips. A custom choice just for you would be very pricy.
We already live in a world where chip designers pick and choose cores and components from any number of companies: processors we all know about, but things like USB3, HDMI, Bluetooth, and many others are often licensed from third parties. But for the numbers to work you've got to make lots of chips to handle the fixed costs.
Does anyone have a decent break down of the cost of masks? I've never really gotten a good sense of what's actually COGS of the actual mask set, and how much is NRE costs that's subject to disruption if chip making is commoditized as we get further up the s-curve that is Moore's Law.
While it isn't directly applicable, here's a decent analysis of the costs of doing a custom ASIC to replace generic components, should provide an idea.
8051s are heavily cloned, but it's not like there's heavily used HDL floating around for free. Additionally the gate count niche of an 8051 is rather constrained.
MIPS made a big deal about being open, but at the end of the day that seemed to just mean that they put their sales contacts on the main page. 'Open' in that case meant 'open access for our business partners to make RTL changes with the right signed contract'.
AliBaba has been open sourcing their designs though. AFAIK, this work is mainly against their XuanTie C910 cores that have the source published here: https://github.com/T-head-Semi/openc910
Mostly, I'm surprised that Google isn't the one leading the charge here. Although it's kind of cool from an ecosystem perspective to see somebody else moving things forward.
Android used to support MIPS and x86_64 - in fact I think it still supports the latter. Of course, that might just mean that Google is painfully aware of how annoying that is to handle:)
With Espressif shifting towards a RISC-V focus, it sure does look like a the market is opening up nicely. Though does seem that any ARM sale/IPO may well need to happen sooner or later as this will surely start making dents.