Five Good Things About RISC-V
codasip.com
codasip.com
Is there a desktop class CPU and a server class CPU in RISC-V space which can compete for money with X86 and ARM?
If not, the how much time it will take?
I'm trying to understand what "growing rapidly" means.
And RISC-V is an ISA, which is a part of the architecture not the microarchitecture.
"Ecosystem" here refers to: the compilers and tools, supported OS, the suggested ISA extensions, the research movements who work and experiment with it, and so on.
I gather they have started to publish "profiles" that might rein in the worst of this. And the profile meant for desktop workstation use appears to have "popcount" and a few other concessions. But, unlike in the x86, ARM, or POWER worlds, where we have the notion of a generation on a timeline, nothing like that helps contain the complexity of development targets. Each extension is its own extra dimension to be used or compensated for lack of, separately.
I have not seen any chip with a popcount instruction yet, but have not checked this year.
Given the low cost of transistors, it seems parsimonious to be defining lots of incompatible variations on the RISC-V theme. Look at the ARM market, with minor variations in the number of timers and IO pins, most chips follow one of only a few common directions - eg. we've got small bit-pushing chips as controllers, and larger chips with FP and MMU for "computers".
That's how it's already being done on x86. If AVX-512 is available, use it. If not, maybe fall back to AVX-2. Else fall back to SSE2. Etc.
GCC multiversioning:
https://gcc.gnu.org/wiki/FunctionMultiVersioning
Clang multiversioning:
https://clang.llvm.org/docs/AttributeReference.html#cpu-disp...
I get that it's good, but I don't think it deserves 4 of the 5 different reasons.
I assume the title was written first (5, V, gettit?) But the author couldn't actually think of 5 reasons
Goal: USB keyboard firmware directly in 64bits risc-v assembly.
(I have such boards, but with 32bits risc-v cores and I am unable to self-motivate myself to go 32bits assembly, even knowing there are provisions for 32bits<->64bits ports in risc-v).
I guess, I'll have to go for those overkill boards.