3 ms·
How would hardware emulation even work? Wouldn't it mean Qualcomm would have to support the x86 instructions on its ARM chip? You may be thinking of how the An
by mtgx 9y ago
How would hardware emulation even work? Wouldn't it mean Qualcomm would have to support the x86 instructions on its ARM chip?
You may be thinking of how the Android emulator supports hardware acceleration for emulation, but that's just because your laptop has an x86 chip in it and the emulator is actually serving you the x86 image of Android, not the ARM one, so the "emulation" is more like Apple's "native simulation" for iOS.
- pawadu 9y ago> How would hardware emulation even work? Like this: https://en.wikipedia.org/wiki/Transmeta_Crusoe https://en.wikipedia.org/wiki/Transmeta_Crusoe In fact, most high-performance CPUs be it ARM or AMD or Intel do instruction translation internally.
- DCKing 9y agoNvidia makes an architecture (Denver [1]) that is made by former Transmeta people and is in many ways a direct successor to this chip. In its current forms, Denver is implemented to execute ARMv8 instructions, but it could in theory execute x86 just the same. Now it's performing its internal exotic VLIW instructions by performing ARM "hardware emulation", but it could do x86 "hardware emulation" just the same. Qualcomm uses a less exotic architecture in their chips so that's not an option for them. [1]: https://en.wikipedia.org/wiki/Project_Denver https://en.wikipedia.org/wiki/Project_Denver
- ethbro 9y agoDo you have any links offhand about the internal arch? Curious about it being VLIW and couldn't dig up anything on a quick trawl. Good to hear that idea's still kicking around though. Diversity in CPU design is a good thing!
- Symmetry 9y agoYeah, it's still a 7-wide VLIW like the Efficeon but it also has a unit to run native arm code in hardware emulation at a lower IPC for code that hasn't been translated. The idea is to run code that's only used once in hardware emulation but to recompile all the hot code to native VLIW execution. https://www.hotchips.org/wp-content/uploads/hc_archives/hc26/HC26-11-day1-epub/HC26.11-2-Mobile-Processors-epub/HC26.11.234-Denver-Darrell.Boggs-NVIDIA-rev4.pdf https://www.hotchips.org/wp-content/uploads/hc_archives/hc26...
- lloeki 9y agoThis is way over my head, but IIUC practically this would be both an arm CPU and an x86 CPU at the same time? Can it switch "on the fly" in a practical manner, and if so what kind of context switch are we talking about? Would it be viable to multitask between the two archs?