Part of the issue here is that nobody is going to build something free on top of someone else's property. What good is a "free" design if you still have to pay ARM?
Whereas once you have a free ISA which is actually in widespread use, you could get some designs out of universities or major corporations which intend to use them rather than sell them as their primary business and then release the design for the same reason they do for Linux code, potentially under a copyleft-style license.
Those designs aren't going to be competitive with the state of the art, at least in the beginning, but they don't have to be. All they have to be is low power enough to stick in an embedded device and fast enough to run the display on a refrigerator and the lack of a license fee would cause them to replace a zillion ARM chips that currently go into every IoS device and <$200 phone and consumer internet router. That's a huge chunk of ARM's market.
Then someone like Amazon evaluates this thing for something like the Kindle and finds that it's almost good enough, all they have to do is throw a couple of engineers at it for a short period of time, so they do and it gets released because what do they care of some non-competitor uses it in some cheap laptop. Commoditize your complement -- now laptops are cheaper and people buy more laptops on Amazon.
Meanwhile the "small project" uncompetitive boards start to have their own open source BSP and SDK under the BSD license, which means anybody else can fork it for their own thing, and that's a competitive advantage so it happens a lot. But now it's way easier to reverse engineer the code because 95% of it is unmodified, so you start getting community replacements for that stuff and with any luck the OEMs stop even producing it and point you to the open source repository.
It could be a long time before that takes over the high end, if that ever happens, but the low end? It's almost inevitable. And the high end is AMD64 and Apple, the latter of which has all the leverage in the world over ARM because they could always switch to RISC-V.
> Whereas once you have a free ISA which is actually in widespread use, you could get some designs out of universities or major corporations which intend to use them rather than sell them as their primary business and then release the design for the same reason they do for Linux code, potentially under a copyleft-style license.
We've had open ISAs for decades. The problem isn't with ISA licensing, the problem is cost-of-entry.
Most people have a computer...it costs nothing to install Linux and GCC/rustc/Python/etc and start contributing to open source software. For open hardware, you need (at minimum) a decent FPGA for testing/development; but access to fabrication resources to be in anyway competitive.
Don't get me wrong, I'm generally pro on RISC-V; I just don't think it's the revolution everyone is making it out to be.
> Most people have a computer...it costs nothing to install Linux and GCC/rustc/Python/etc and start contributing to open source software. For open hardware, you need (at minimum) a decent FPGA for testing/development;
That wasn't even true when open source got started. Typical access was to expensive mainframes and VAXen available only in universities and major corporations. PCs were only starting to become a thing and most people didn't have one.
That model still works if you need something expensive. Get your university to buy one, or your company if it will save them $0.05/unit on the millions of devices they sell. Or you rent one in the cloud.
You also might not need your own. A project gets started by someone who does have access to a decent FPGA, you want to contribute to it, great. They give you remote access to the FPGA.
Meanwhile FPGA prices keep going down.
> but access to fabrication resources to be in anyway competitive.
Which is available to anyone, if you have customer demand. They've made millions of Raspberry Pis.
> That wasn't even true when open source got started.
Which is why it took off when computers became accessible; and continued growing with even further ubiquity.
> You also might not need your own. A project gets started by someone who does have access to a decent FPGA, you want to contribute to it, great. They give you remote access to the FPGA.
Cool, so we're back to bottlenecked accessibility.
> Which is available to anyone, if you have customer demand.
Not hobbyists. To reiterate, open hardware (including ISAs) is as old as open software.
You're delusional if you think either are anywhere equivalent.
> Which is why it took off when computers became accessible; and continued growing with even further ubiquity.
So things like FPGA prices going down over time or being available to hobbyists via cloud providers.
> Cool, so we're back to bottlenecked accessibility.
Anyone with a computer and an internet connection can contribute, all they have to do is send an email to the project maintainers. It's obviously not as good as everybody already having the hardware, but it could be good enough to actually make it happen.
> Not hobbyists.
The model would be that there is a public repository with a design in it, anyone can contribute, and then every year or two they do a freeze and a production run which anyone can buy including the hobbyists who made contributions.
It feels like your argument is that Debian can't exist because a hobbyist doesn't have the resources to build a whole operating system. One doesn't, but a million of them do, especially if they can start with a basic design released by a major corporation or university or government.
As a layperson though, how would I be able to tell whether any of this is true? When I have to target platforms as a software developer, the truth is, I’ll do whatever Microsoft and Apple tell me to. By the time Apple is shipping a RISC-V phone I hope to be retired!
> As a layperson though, how would I be able to tell whether any of this is true?
You probably won't ever know. Do you know the architecture of the microcontroller on your first computer's hard drive? I don't.
The stuff that RISC-V will replace first is the low-margin hardware that can be mass-produced by China et. al and exported without license violation. ARM's goose was already cooked in this sense, and even ARM China won't fix it. For IO controllers, ICs and network switches, it's hard to see why manufacturers would stick with higher-margin ARM hardware. If RISC-V cores are cheap, stable and available, you could replace them without the user ever noticing.
> By the time Apple is shipping a RISC-V phone I hope to be retired!
Apple holds a rare Architecture license to the ARM ISA due to their role as a founding partner, and can make original implementations without incurring licensing dues, as they do with the A and M series CPUs. I understand why they would want to switch to homegrown designs instead of licensing ARM reference designs (which they do have to pay for), but why migrate instruction sets too when RISC-V doesn't save them any marginal cost over novel ARM designs that would be binary compatible with the existing firmware?
> Apple holds a rare Architecture license to the ARM ISA due to their role as a founding partner, and can make original implementations without incurring licensing dues
Sorry, the architecture license wasn’t a thing when Arm was founded and there is no way that Arm would hand out free licenses at a later date. It’s just a myth.
"We have entered into a new long-term agreement with Apple that extends beyond 2040, continuing our longstanding relationship of collaboration with Apple and Apple's access to the Arm architecture," - ARM's IPO Document.
I assume they paid something for it, but who knows how much, ARM and Apple have not decided to tell us.
Western Digital announced an open source core ("SweRV") in 2019, so I assume they already use them now that we are a few years on from that announcement.
For any kind of high-level code, "platform" is something like win32 or Android or Qt. The underlying hardware architecture is the compiler/interpreter's problem.
The people dealing with assembly know who they are, but much of that is the sort of work that cares a lot about shaving off a few cents worth of license fee for an embedded device.
For users of general purpose computers this is caused almost entirely by closed-source software. Most of the architecture-specific code is part of the operating system, and by the time you're doing an architecture transition the OS itself runs on the new architecture. The third party applications largely aren't dependent on a specific architecture but they're compiled for one.
With open source you could just recompile for the new architecture. Linux has always run on just about every one under the sun and the user largely can't even tell the difference. But if you don't have the source code you can't do that.
Closed-source systems could avoid this by compiling to bytecode, which is essentially what Android does, so transitioning to RISC-V would be much less trouble there than it would be for e.g. Windows.
Honestly, this is conjecture at best, there have been other open ISAs that didn't manage to capture the market like this. That isn't to say I don't think RISC-V will capture a lot of market share, but I'm not going to make specific predictions about how much and where.
Of course it's conjecture. If you know anyone who can reliably predict the future I'd like to meet them.
But previous open ISAs were in the wrong market segment. Okay, SPARC is open, but it's also Oracle and no one trusts them, and the existing SPARC ecosystem is the enterprise market which expects big, hot hundred-thread systems and has no use for a simple dual-core CPU at 800 milliwatts. But that's the thing you can produce with a low budget, so it never goes anywhere or no one even makes one.
People are starting to use RISC-V for the thing where that actually works.
MIPS wasn't opened up until they were already dead, and then almost immediately threw in the towel and joined up with RISC-V.
PowerPC basically the same, not opened until after it was irrelevant. OpenPOWER is in the same enterprise market as SPARC and IBM is not far from Oracle on the "do not engage litigious bureaucracy" chart.
MIPS didn't really open. They made a big deal about it, but it turned out to mean something to the effect of 'we'll open more of our build system to partners who pay for a traditional MIPS license. No third party MIPS cores. No general release of MIPS RTL.'
Whereas once you have a free ISA which is actually in widespread use, you could get some designs out of universities or major corporations which intend to use them rather than sell them as their primary business and then release the design for the same reason they do for Linux code, potentially under a copyleft-style license.
Those designs aren't going to be competitive with the state of the art, at least in the beginning, but they don't have to be. All they have to be is low power enough to stick in an embedded device and fast enough to run the display on a refrigerator and the lack of a license fee would cause them to replace a zillion ARM chips that currently go into every IoS device and <$200 phone and consumer internet router. That's a huge chunk of ARM's market.
Then someone like Amazon evaluates this thing for something like the Kindle and finds that it's almost good enough, all they have to do is throw a couple of engineers at it for a short period of time, so they do and it gets released because what do they care of some non-competitor uses it in some cheap laptop. Commoditize your complement -- now laptops are cheaper and people buy more laptops on Amazon.
Meanwhile the "small project" uncompetitive boards start to have their own open source BSP and SDK under the BSD license, which means anybody else can fork it for their own thing, and that's a competitive advantage so it happens a lot. But now it's way easier to reverse engineer the code because 95% of it is unmodified, so you start getting community replacements for that stuff and with any luck the OEMs stop even producing it and point you to the open source repository.
It could be a long time before that takes over the high end, if that ever happens, but the low end? It's almost inevitable. And the high end is AMD64 and Apple, the latter of which has all the leverage in the world over ARM because they could always switch to RISC-V.