3 ms·
> Even the most RISC architecture these days likely has AES instructions AFAIK these sorts of instructions are typically things that would be trivial to implem
by NobodyNada 5y ago
> Even the most RISC architecture these days likely has AES instructions
AFAIK these sorts of instructions are typically things that would be trivial to implement in hardware but extremely cumbersome to implement in software, like shuffling a bunch of bits around (ARM's "JavaScript instruction" is another famous example). These sorts of things would only require a single micro-operation (or a very small number of uops).
My understanding is that the big distinction between CISC/RISC comes from things like addressing modes, by which a CISC processor lets you cram many hardware operations into a single software instruction. For instance, on x86 you can write an instruction like 'ADD rax, rbx, [rcx + 0x1234 + 8*rdx]' that performs several additions, a bit shift, and a memory access. Whereas on ARM, you would have to split those multiple hardware operations into multiple instructions.
> Even the most CISC architecture is using RISC like micro ops
Yes, but as the parent comment points out, that requires a complicated decoder with limited throughput. Using a RISC architecture throughout therefore moves some (but not all) of that instruction-decoding work into the compiler.
(I'm not at all knowledgeable in the field of processor design, so I would be happy to be proven wrong.)