Re: Only ugly bed-wetting pansies use RISC-V
"We all say so, so it must be true"
(Kipling: Jungle Book: Kaa's Hunting: Bandar Log)
Arm has taken offline its website attacking rival processor architecture RISC-V within days of it going live – after its own staff objected to the underhand tactic. The site – riscv-basics.com – was created at the end of June, and attempted to smear open-source RISC-V, listing five reasons why Arm cores are a better choice …
How about a follow up article? It would be interesting to know if RiscV compilers are as well optimised yet.
How will RiscV avoid fragmentation of the instruction set, i.e. same op-codes having different implementations?
Can they adopt a standard like UEFI so an OS can be compiled once to boot on all capable RiscV devices?
How soon before RaspVian + RaspVpie?
RISC-V compilers are certainly newer and less optimised than ARM ones.
Despite this, SiFive's new E20 and E21 cores outperform ARM's Cortex-M0+ and Coptex-M4 on a Dhrystone MIPS/MHz and Coremarks/MHz basis, when both are compiled with gcc.
https://hackadaycom.files.wordpress.com/2018/06/coremarks.png
The ARM chips benchmark higher than the SiFive ones when using the IAD compiler. IAD has promised a beta of a RISC-V compiler for around the end of the year.
The RISC-V standard suggests that all but the very smallest RISC-V systems should include a "device tree" description of themselves in an onboard ROM.
The Raspberry Pi and other similar boards use obsolete SoCs that have already shipped in the millions in phones or other devices. For example the Odroid XU4 uses the same Samsung Exynos 5422 SoC as was in the Galaxy S5 phone. The Odroid C2 uses an Amlogic S905 SoC that was designed for set-top boxes. (I highly recommend both these boards over Raspberry Pi btw if you do want a high performance ARM board at a good price)
As RISC-V is new, it will be a while before there are obsolete SoCs that have already had their costs amortised in consumer products. What you have now in the Sifive HiFive1 ($59 320 MHz Arduino-compatable) and HiFive Unleashed ($999 quad core 1.5 GHz Linux board) are development boards aimed at professional engineers to evaluate the technology and prototype their software and products before they get their own hardware made. While $999 is expensive compared to a Pi or Odroid it's a drop in the bucket if you're paying an engineer $100k+ to work with it. Not to mention that the HiFive Unleashed has a lot of expensive stuff on it ... the 8 GB of DDR4 costs a lot more all by itself than the the Pi or Odroid (which have 1 or 2 GB of DDR3) retail for.
The key point of Risc-V is that it has a core ISA + set of standard extensions which are guaranteed not to change and are sufficient for standard programming, OS etc. Thus assuming implementations include the standard base config the things like OSes will run and standard compilers will gernerate code for the core. If people want to add extensions to the ISA then they can add their own instructions for their application domain and can run code using those on their cores.
So code (including OS) can definitely be compiled to run on any RiscV core but "efficiient" applications using extensions to the ISA for a particular application maybe limited to certain cores.
It's obviously not beyond the resources of an Apple or Samsung to design their own RISC cpu.
The real clever stuff comes in the process design which, at least on the higher end parts, you need to do yourself.
With opensource compilers the tool chain and so the experienced developers are there for you.
I always assumed it was that if you were an Apple or Samsung the royalties to ARM dropped to teh point where they were just less than creating your own architecture
Both Samsung and Apple depend on instruction set architectures. So whatever they do they need to be able to run ARM-code.
So they can't make it ARM compatible as ARM would sue, and they couldn't make an emulator, since ARM would sue.
The hope is that Risc-V might become important enough that Application developers see it as important enough to compile their software for it. Yes, Android can use Java, but none, but the most trivial apps can work without additional native blobs.
I think, with no data to back it up other than hearsay, that the ARM business model was broadly to say quite reasonably 'you design te silicon we design the architecture and then, your hardware is compatible with 3rd party software..'
I,e it was open source Wintel emulation in terms of business model Unless CPU chip architecture is your thing, open source lets you get on with spending money on better silicon and not having to worry about software support. Just as banging in an INTEL chip meant it could run windows...and running windows meant access to a huge base of software.
And ARM were not greedy.
So I am surprised not that it has taken so long, but that it has happened at all.
Do we actually need ANOTHER chip architecture?
Obviously these people think we do.
>> the consumer still makes the ultimate decision.
This is not about the bigger/fatter ARM cores (at least not yet). Those are where the larger ecosystems matter.
These are about the smaller arm cores, which mostly run proprietary code, that consumers never see or touch. Your DECT phone, wifi, usb dongle, and so on. Clocked say no more than 300 MHz if that.
As the code is proprietary and likely mostly written in a higher level language and therefore reasonbale portable, a switch of compiler is far more feasible here and is the market where arm made themselves - well before smartphones and SBCs came along.
So if RISC-V offers a compiler and enough performance, the switch is controlled and internal to the development teams involved.
Hence why ARM is panicking. RISC-V does not have to the best, it just needs to be able to do a reasonable job that justifies the cost difference and lowers the overheads per device which is the ARM licence model. It's like capex vs opex.
I suspect ARM will be revising their license model for the cortex M range if (when?) RISC-V takes off for this market.