Amid chip shortages, companies bet on RISC-V(allaboutcircuits.com) |
Amid chip shortages, companies bet on RISC-V(allaboutcircuits.com) |
https://hackaday.com/2020/10/22/stm32-clones-the-good-the-ba...
Having an openly implementable ISA is just one less thing to worry about
You will find Chinese companies at forefront of riscv development (ie Alibaba) and Huawei harmonyos supports riscv.
I don’t know why the article doesn’t mention this aspect.
Secondary challenge here, going beyond the ISA, are pre-defined blocks of functionality already implemented (eg: an ethernet controller, internal CPU busses, memory controllers, etc). Even in the RISC-V world many of these are commercial and require a license.
So unless there was a pin-for-pin/electrical standard for chips, the ISA is of no effect.
https://www.persistencemarketresearch.com/market-research/hi....
I am more than happy to chance my mind, if provided evidence.
https://www.waferworld.com/post/9-things-you-might-not-have-...
deterred by the size of the profits for the winners, and the losses for those who do not compete in global markets.. yet I suggest there are few things more interesting than a personal, general purpose computer
Other features you're likely to want are also included in the specification, so if you want to write code that uses for example the B bit manipulation extension or the V vector extension (which is scalable with vector width as well, unlike SSE/AVX) you just have to check a standardized 'CPUID' bit and can run your code, and otherwise fall back to other code.
I also believe that the spec may let operating systems hook these instructions and provide fallbacks so application developers don't have to, but I'm not too sure on the specifics of the privileged ISA of RISC-V.
Boards are getting designed for a specific chip and you are extremely unlikely to change that - unless the original is no longer available. Re-engineering for a new chip can be a massive pain - even if the new one is pin-compatible. If you are delivering high-quality products, you are not going to switch.
With the exception of some trivial ones, western manufacturers don't really make pin-compatible chips. Creating a chip which is electronically identical is not easy at all - and don't forget you probably have to make it firmware-compatible as well. The end result is that you now have exactly the same product as your competitor, so you are now competing primarily on price and making it easier for your customers to leave you. Oh, and you open yourself up to lawsuits too. Creating unique products is way for those manufacturers.
On the other hand, eastern manufacturers are more than happy to create exact clones. A lot of shitty electronics don't really care too much about things like longevity, warranty, compatibility, or even regulations. Just make sure it functions well enough to make it out of the store. So a manufacturer like GigaDevice creates the GD32F103, which is pretty much a clone of the STM32F103 by STMicroelectronics - down to firmware compatibility. Won't get used in any product whose brand you recognize, but with the ongoing chip shortage they are definitely selling like hot cakes.
But implementing an instruction set is not easy, and ARM might actually try to do something about it if you do it without their permission. With RISC-V, you can just grab any random implementation! Perhaps even an open-source one? GigaDevice has already released their first RISC-V clone: the GD32VF103. Again a clone of the STM32F103, but you now need to recompile for a different ISA.
First of all, we aren't really talking about motherboards or CPUs here. It is embedded electronics, not desktop computing. They are highly specialized application-specific electronics, which require a lot of engineering time to design, validate, and certify. It is nothing at all like the computer ecosystem, where you can just swap in a different motherboard. Boards are designed to use very specific chips, with a chip swap easily costing tens if not hundreds of thousands of dollars.
Second, the chip shortage is mostly affecting "legacy" chips - which have often been available for a decade or more. The applications they are being used in do not really require a lot of processing power, but they do need to be extremely reliable. We are talking about things like Atmel's ATmega32u4, which was initially released in 2008. Can't really do a lot, but plenty of power for some obscure automotive module.
Although recycling is technically sort-of possible, it is extremely labor-intensive. Even with the current shortage and associated price hike, it isn't really economically viable. Even worse, the resulting chips are of unknown quality: you simply don't know what happened to them! And exhaustively testing them isn't really possible either. Are you willing to buy a car with an airbag controller which contains a chip they dug out of a landfill? Newly manufactured hardware has a known quality, which means you can guarantee it works properly.
On the other hand, we are wasting a lot of opportunities on the other side of the usage cycle. Electronics can often be repaired, but we throw them away instead. Look at smartphone and laptop manufacturers, for example: often they just throw out an entire logic board when a single chip is defective. A skilled technician could replace that chip, but smartphone and laptop manufacturers are actively trying to obstruct this. It is "reduce, reuse, recycle" for a reason: recycling should be the the last resort - not the first.
A skilled technician replacing a 2¢ part on a $10 board costs more than a new $10 board. Just disassembling that board to recycle parts off of it will cost more than the board originally cost to manufacture.
You also run into the same argument against landfill airbag controllers. A factory that produces a million boards can have very good reliability metrics. A skilled technician not only has more variable output but less accurate quality metrics unless they put a lot of extra effort into process controls.
A recycled board will cost more and be statistically less reliable from a brand new board. It would be more efficient to just mechanically separate them to extract raw materials.
> It depends.
I hardly ever give up a computer, we still have a '98 Windows laptop doing recipe duty in the kitchen. (It's getting harder to find a small 32 bit Linux distro these days, though.) Energy efficiency is another concern, one machine I took to be "recycled" (I know--maybe or maybe not) was a Mac G4 which was good as a space heater in the winter, but that's about it--and I didn't feel like moving it 1500 miles with our latest relocation.
I started with electronics many years ago, and would balk at replacing a surface mount chip, but people could learn basic electronic repair literacy for things that commonly break like cords which would help a lot. I also don't tend to buy products like smart phones which are glued together and difficult to repair.
As for RISC-V, it is hard to find even a dev board with the chip shortages (I bought a HiFive Inventor kit to experiment with as a first project):
Additionally, and not knowing much about the hardware side of things, if I put myself in the shoes of a manufacturer, it seems challenging to ship a product where the expected lifetime of some of its components is unknown. Support and warranties would be affected too.
Over the last 40 years all manner of circuits composed of discrete components have been replaced with chips. Voltage regulation is a chip, battery protection is a chip, rectification is a chip.
That's kind of like suggesting someone use a stapler (not a staple) when they need a lag bolt because "well they're both steel".
The single-purpose nature of ASICs and hardware blocks is what makes them fast and power-efficient.
But solar panel prices continue to drop rapidly, and quite a few silicon-based semiconductors are still widely available at low prices.
The chip shortage is a direct result of a covid-induced demand shift. Manufacturers of cars and consumer electronics seriously mispredicted consumer demand. The resulting mass-cancellation followed by mass-ordering resulted in a demand shockwave for mature microcontrollers, which manufacturers were unable to absorb with existing stock. Due to plant shutdowns and the general multi-month production time, immediate replenishment is not possible. The resulting shortages in turn made downstream manufacturers switch from JIT to hoarding, which made the problem even worse. Microcontroller manufacturers in turn aren't able to adjust supply because fabs are really difficult, expensive, and time-consuming to build.
Nothing about this has anything to do with quartz.
We're already at a breaking point for low frequency quartz. You literally can't get it small enough for modern packages until you up the frequency. Find a 2x2mm 8Mhz part, I'll wait while you fail.
We're JUST NOW starting to get standardization on SMD oscillators in common packages, and these packages have typically pin incompatible (an enable pin instead of a two pin pierce oscillator setup) but same footprint digital alternatives about.
Maybe you read an article, but is incorrect to say we're being held up by quartz availability.
I'm surprised you even need one like that. Most modern electronics to use clock dividers or multipliers anyways, especially once your chip is small enough that you need a 2x2mm xtal. Or they just have an internal low-accuracy oscillator. In my experience one of the plentiful 4-pin 2520 or 3225 ones usually does the job, and the market has done a decent job standardizing their footprint.
One-man project. It works, right now, at A76 levels. The aim is M1 level, and the bottlenecks to that are known and being addressed.
There is NO WAY one person could do with with a complex ISA such as x86, ARM, or POWER.
That’s hard to believe. Are there any benchmarks?
Replacing a $0.02 part on a $10 board doesn't make sense, but why aren't we replacing $0.02 parts on $500+ boards?
A whole board needs to be pretty valuable to replace a 2¢ part because the technician's time is expensive. A 2¢ part that takes an hour to replace and test is $40-50 in skilled technician labor. That assumes you know exactly what 2¢ part needs to be replaced. Every technician hour adds a premium onto a refurbished board. Even a skilled technician can also screw up a repair so the rate of failed repairs also adds a premium. As does shipping and storage on the repaired units.
If you design boards to be more easily be repaired by a technician you're adding test leads and headers that cost money and take up space. In a phone that eats into your envelope budget meaning a smaller battery, a larger device, or tighter thermals. Anymore the same is true for laptops.
Even stuff like the Framework laptop doesn't envision people replacing surface mount ICs. They design around LRUs and have people send back old parts to refurbish or recycle.
There's not really any 2¢ parts for smartphones and laptops. There's $100.02 parts including all the expenses. So the part needs to be well over $100.02 in value to the manufacturer to make it worthwhile for them to refurbish it rather than just replace it and recycle the broken unit. A consumer isn't going to spend $100 to fix a $200 phone. They're better off spending $100 on a used replacement and sending the broken device to be recycled.
High end OoO cores in other ISAs are BREAKING DOWN complex instructions into µops. RISC-V is pre-broken down. The one exception to that is current x86 and ARM cores DO do instruction fusion, to combine a compare with a following conditional branch. Which is a singe instruction in RISC-V in the first place. SO it is actually the other way around.
Low end cores shouldn't be doing either fusion or breaking down into µops. They are supposed to be as simple as possible, and doing either of those is a complication using significant silicon area and energy.
There might be a place for instruction fusion in mid-range cores. Things in the ARM Cortex A53 / A55 / A510 range. The most popular RISC-V core in that segment, the SiFive U74 (used in the HiFive Unmatched, BeagleV Starlight, VisionFive v1, VisionFive 2, Pine64 Star64 .. and probably more yet to be announced) doesn't fuse multiple instructions into one instruction, but it does pair a forward conditional branch past a single instruction with that following instruction. Both instructions still exist, they each go down one of the two execution pipelines side by side, the same as if the branch was predicted not-taken. At the final pipe stage if the branch turns out to be taken, instead of taking a mis-predicted branch penalty and flushing the pipeline, the U74 simply does not write the result of that following instruction back to the destination register.
That's the closest any currently shipping RISC-V core I know of comes to instruction fusion.
"crazy difficult to implement levels of instruction fusion" does not exist anywhere, and is not needed. It's just an idea from an academic which doesn't actually exist in the real world, at least at present.
But these days, you have advanced 600MHz microcontrollers with simple GPUs, and full-featured CPUs which get used as an embedded platform. You can even build a Linux kernel for no-MMU platforms.
It's a fuzzy line.
https://www.arm.com/company/news/2022/04/arm-china-majority-...
The two desires are definitely at odds with each other. Like the RISC-V foundation moved to Switzerland to avoid the possibility in 2019. So the foundation is definitely trying to keep things more open.
At the end of the day it's just ISA and not a micro-architecture design or set of cell libraries and fab processes. So it's not a complete bypass of all possible sanctions. ARM for instance does provide designs and not just an ISA.
The main problem is that a chip made in a sanctioned country with RISC-V can still would have value outside the sanctioned entity unlike some organically developed or a chip made without legally licensing some-other ISA. So sanctioned entity could easily make the chips and then make them look like they are made elsewhere or by someone else and still have something to sell the wider world.
Now I know that doesn't sound like much. Don't kid yourself into thinking Apple Silicon M1 and M2 came from nowhere, though. If it wasn't for growing capability in the ARM lines in other products Apple would not have been so likely to invest in it for their new technology, Rosetta or no. Exynos Chromebooks and such led the way to ARM Macbooks the same way the IBM PC led to displacing DEC and Sun workstations, then minicomputers, then x86 servers replacing most other servers in the DC.
I think chrome books had very little to do with it. A lot of the work had already happened with the PowerPC switch. On the processor front, Apple’s arm processors aren’t at all like exynos chips that use standard arm cores. I would say that the apple silicon macs are more influenced by iPhone and iPad success than anything else, especially since iOS already runs a lot of macOS
There's a whole world of ARM processors out there. The ISA, packaging, software, and expertise around it everywhere in the world helps make that ecosystem stronger. Before ARM there was Intel, and before Intel was PowerPC, yet even before that there were the 68000 series Macs. And before the Mac, there were the 65816 in the IIgs and the 6502 in the Apple II. Don't be surprised if Apple is an early adopter of RISC-V for support processors. If they decide they've made them performant enough after a few years of that, don't be surprised if they use them as CPUs and stop needing to license cores and ISAs from ARM at all.
But I can promise you one thing. Apple didn't look at the 18 MHz v7 cores from Cirrus Logic in the Psion Series 5 and immediately decide they could make a mainstream desktop CPU out of it. The competition of companies like Samsung, Qualcomm, and Broadcom in consumer electronics has a lot to do with how ARM cores became suitable for Macbook.
I can definitely see that hobbyist market and future Pi-like devices moving to RISC-V, but I'm less certain about mainstream use unless Windows and Mac (or maybe even Android and ChromeOS) really decide to move over.
And I know of 3 families that have pi based desktops at home, and use them as desktops. (One of those has a person that works in IT in it.) I don't know anybody that has "experimental desktops" that they use only to thinker with, AFAIK, when people assembly a desktop, it's because they want to use as a desktop.
But I think more importantly, there will be no demand until someone makes a RISC-V CPU that can actually compete with Intel, AMD and Apple on performance.
$100 Laptops, $70 phones and $50 tablets will be a big target for RISC-V.
If RISC-V doesn't see the development for upmarket products it's not going to magically take over the downmarket segments. No one footing the development bill is going to selling $50 tablets.
But over ten or fifteen years? Very possibly. And if not porting apps directly to RISC-V, then porting them to WASM and letting browser vendors optimize WASM performance on RISC-V.
One thing that RISC-V enables is open source hardware CPUs. There are quite a few people who're upset by stuff like the Intel Management Engine IME making them distrust their personal computer.
These folks don't really have any options that fit their criteria right now.
Some RISC-V CPU could fit in there.
There are some open source riscv cores, but the paid ones make money for a reason
L1$ is always starved, thus it is always good to fit more code in it.
Given that and in the absence of a clear rationale I find it hard to see why Apple would want to to incur the costs of a move to an ISA it’s had no influence over - certainly not to save an immaterial licensing fee.
Psion adopted a CPU Apple was using in, AND A COMPANY THEY OWNED developed for, the Newton and eMate, not the other way around. The ARM710 used in the Series 5 was the same as Apple used in the eMate.
Apple plays a long game, but saying they funded ARM in the mid 1980s so they could slowly grow those cores by themselves for themselves in 2020 and later ignores a whole lot of history about both Apple and ARM.
Apple knew that when it invested in Arm and chose Arm for Newton, for the iPod and the iPhone (note Apple has been selling Arm based products continuously since 1993 apart from 1998-2001).
It’s no accident that there is an Arm based CPU in the Mac now. Apple’s most important Mac is the MacBook and performance per watt is key. Until someone can offer an architecture that demonstrably does much better on this metric Apple will stick with Arm.
It’s more likely that Psion looked at the 20 MHz ARM cores that Apple shipped in the Newton and decided they could make a Psion with that.
In an embedded context, a lot of that doesn't matter either way - your dumb coffee maker doesn't have a lot of opportunity to spy on you anyway. Smart devices are a very different story. However, Chinese embedded chips are often very cheap for the capabilities.
Given all of that, China seems like a great option if they produce RISC-V processors.
The number of Windows-exclusive programs are rapidly dwindling. In a few years, it may not be such a big deal to simply avoid that with Linux (or FreeBSD).
State sponsored extortion is still a thing.
Outside the hobbyist space people do seem to be shunning Chinese SoCs AFAICT. Maybe no name TV boxes have rockchips, but other than that not much.