3 ms·
Given that everything is just microcode anyway, it would be really interesting if some (ex Intel) took their design and only switched out the instruction decode
by MBCook 4y ago
Given that everything is just microcode anyway, it would be really interesting if some (ex Intel) took their design and only switched out the instruction decode to decode ARM (or whatever) instead.
Sure it wouldn’t be perfect since the chip is optimized based on x86-64 workloads, and they’d never publish it anyway. Plus it may only be simulated instead of spending the money on manufacturing the one-offs.
But boy would it be interesting to see how it performed in various dimensions, just as an exercise.
- userbinator 4y agoGiven that everything is just microcode anyway, it would be really interesting if some (ex Intel) took their design and only switched out the instruction decode to decode ARM (or whatever) instead. You probably mean uops, but that thought has also crossed my mind in the past --- a multi-ISA CPU. They could add the decoders for other ISAs, along with extra GDT descriptor types for "ARM mode", "RISC-V mode", etc. segments like they did with V86. It's not a new idea either, https://en.wikipedia.org/wiki/NEC_V30#ISA_extensions https://en.wikipedia.org/wiki/NEC_V30#ISA_extensions could execute both x86 and 8080 code and of course ARM has cores with the triple-mode ARM32/Thumb/Aarch64 ISAs.
- MBCook 4y agoYes I did, thanks. It’s also kind of reminiscent of the Transmeta Crusoe. The problem I think multi-ISA would run into is the “master of none” issue. Intel can tune for how x86-64 works, Apple and Samsung for ARM. But if one chip runs it all, it can’t tune for anything too specific. It must not be worth it. I wonder if Apple would have done something like that for the M series to let it keep running Intel software. They must have tried to figure out if it was worth it right? I know they added a few instructions or an addressing mode or something to help. But they must have determined it wasn’t worth it and it could be done well enough in software.
- audunw 4y agoExactly, they added an flag to enable total store ordering to help x86 instructions map cleanly to ARM instruction. https://twitter.com/ErrataRob/status/1331735383193903104 https://twitter.com/ErrataRob/status/1331735383193903104 Considering how fast Apple M series can emulate x86 it's clearly not worth adding much more hardware than what they have now.
- rft 4y agoBack when we were digging into microcode we found a mention of this as a PoC/toy example [1]. Sadly we never found more than an overview, would have liked to know more about it, especially how the update was accepted. [1] https://troopers.de/events/troopers16/655_the_chimaera_processor/ https://troopers.de/events/troopers16/655_the_chimaera_proce... by https://twitter.com/cynicalsecurity https://twitter.com/cynicalsecurity