3 ms·
>I think complexity always costs. You have to devote more gates to implementing it, more engineering, more area, and more power. Complexity also benefits - ins
by Qwertious 3y ago
>I think complexity always costs. You have to devote more gates to implementing it, more engineering, more area, and more power.
Complexity also benefits - instead of having to do 12 different simple instruction, you can just do the one obscure instruction appropriate to the situation.
The question is whether the actual perf benefits outweigh the costs, and the only correct answer to this is to actually measure what runs faster.
Currently we don't have a decades-mature RISC-V chip, but ARM currently outperforms RISC-V massively so it's best to reserve judgement, and not make any hasty claims. Especially since people were claiming RISC would beat out CISC since at least the 90s, and yet three decades later CISC still dominates.
- gary_0 3y ago> instead of having to do 12 different simple instruction, you can just do the one obscure instruction appropriate to the situation That one instruction just turns into 12 micro-ops, though, and then you need a much more complicated front-end to decode it. (And a smart enough compiler to use it in the first place.) You do benefit from higher code density, but when you compare real-world RISC and CISC code the size difference is arguably small enough that it's not worth it, especially when there are other improvements to spend resources on that provide more benefits, like better branch prediction. Also, instruction sets like ARM and RISC-V aren't needlessly minimalist, so you still get "extra" instructions such as vector/SIMD extensions where it makes sense. The old-school kitchen-sink instruction sets aren't popular any more for a reason.
- brucehoult 3y ago> ARM currently outperforms RISC-V massively Only if you compare CPUs with vastly different microarchitectures e.g. a 4-wide OoO Arm and a single issue in-order RISC-V, or an Arm running SIMD code to a RISC-V CPU without SIMD/Vector. Arm has more advanced microarchitectures and Neon deployed in the field right at this moment, certainly, but RISC-V vendors have cores up to Cortex-X3 (SiFive) or even Zen/M1 level designed, simulated, and announced and those will all be in chips you can buy in 3-4 years. Comparing similar to similar e.g. SiFive U74 vs Arm A55 (on code not using Neon) you'll find very similar performance, and in my experience the U74 usually winning.
- imtringued 3y agoLook I'm a fan of x86 processors for the high end, because the gap is just that large. But when you are building these MCUs, you actually want your transistor count to be as small as possible. These chips don't have anything complicated going on. They probably have a simple five stage pipeline with most of the transistors going into the minimum 32 general purpose registers, CSR registers and pipeline registers instead of actual logic.