5 ms·
Can you expand on that as someone who is learning more about low-level architectures in relation to the hardware and microcode layer?
by pyinstallwoes 4y ago
Can you expand on that as someone who is learning more about low-level architectures in relation to the hardware and microcode layer?
- fragmede 4y agoIt's never been publicly clear how much is done in hardware, and how much is actually done via microcode. This blows the doors open and reveals that there's actually a lot more being done in microcode than previously suspected. What's pivotal, is how much more possible this makes microcode-based attacks against Intel-based systems.
- pyinstallwoes 4y agoYeah if they can ship code that fixes "critical security" faults in a physical product, then it's probably at the software level all the way down.
- astrange 4y agoIt's more like they can patch any instruction to become microcoded, but that doesn't mean it shipped that way originally.
- saagarjha 4y agoThis makes microcode more auditable to most people. Relying on the “security” of most people being unable to inspect their microcode is not really a good position to have.
- blacklion 4y agoIt is true ("lot more being done in microcode than previously suspected"), but only for Atom cores. Which are much simpler than "Core" cores, and, to be honest, it should be expected for small, simple and slow core - as microcoded execution is much simplier and make sense for these cores. On the other hand, most of 12-series CPUs contains them :-(
- ac29 4y ago> On the other hand, most of 12-series CPUs contains them :-( E cores in Alder Lake are not listed as vulnerable to this attack.
- jsjohnst 4y ago> as microcoded execution is much simplier and make sense for these cores Say what? Can you explain what you are basing that on?
- AnimalMuppet 4y agoIf you build a simple, lower-end chip, you do so by giving it fewer hardware resources - fewer things where the implementation is via gates. That means that, in order to implement the same instruction set, you have to implement more via microcode. I think that's what's being referred do. Microcoded execution is much simpler in terms of the hardware that you have to implement.
- jsjohnst 4y ago> Microcoded execution is much simpler in terms of the hardware that you have to implement. That’s contrary to everything I’ve ever heard.
- blacklion 4y agoLets take it to extreme: you need very little resources (transistors) to implement Turing Machine, but providing enough microcode (which is very simple structure on silicon - it is ROM, which is trivial and very dense comparing to complex logic) you could emulate any complex ISA on this machine. For real world example, you could have divider as very complex logic device or as small patch of ROM implementing "school" algorithm in terms of (hardware implemented) additions, shifts and subtractions.
- jsjohnst 4y ago> For real world example, you could have divider as very complex logic device or as small patch of ROM implementing "school" algorithm in terms of (hardware implemented) additions, shifts and subtractions. Can you show one example of a commercially produced general purpose CPU that does that, let alone a fairly mainstream x86_64 one? In a purely theoretical sense, what you say is plausible, but in the “real world” it’s simply not done.
- mjg59 4y agoI don't think it's true that there's more being done in microcode than previously suspected? The microcode updates for various CPU vulnerabilities clearly demonstrated that microcode is able to manipulate internal CPU state that isn't accessible via "normal" CPU instructions.
- sroussey 4y agoBasic CPU design in 1990 undergrad had everything as microcode, so I’m not sure there was much of any question or any conspiracy other that EE is much harder than CS and attracts far fewer people to it, and thus less information gets spread around, I guess.