Can you imagine that one day x86 CPUs disappeared from the market due to the abandonment of AMD and Intel to the x86 ISA? This scenario that for many would be impossible is not one that is impossible. But what is preventing such a move from being made?
Will AMD and Intel never abandon x86?
The reason for this is that they are the only two companies, other than VIA, that can manufacture CPUs with this set of registers and instructions and therefore can run software with the same binary code. Despite the enormous rivalry between the two companies in the market, inside they have a great collaboration and have made the ISA evolve together since its launch in the late 70s with the 8086 until today.
That does not mean that Intel or AMD will not make CPUs with ISA ARM, since they have the capacity for it, but their duopoly in the PC world and the fact that there is hardly any competition for x86 CPUs are an incentive enough strong enough not to abandon said ISA.
Keep in mind that in the ARM CPU market there is enormous competition, in addition, if the green light ends up being given to the purchase of ARM by NVIDIA, there is no doubt that the royalties for building a CPU compatible with the ISA ARM will rise like foam.
The downside of x86 vs. ARM
The great disadvantage of the ISA x86 compared to the ISA ARM has to do with the decoding of instructions during the instruction cycle, since while the size of the opcodes in the case of ARM are always the same size in bits, in the case of x86 is variable. This forces to build a much more complex control unit, which consumes much more.
The consequences of this are simple, the resources in the form of transistors facing the control unit do not allow creating a CPU with the ability to increase the amount of instructions it processes in parallel within the same thread of execution. Which means that the CPUs under ISA x86 are going to have a much lower IPC increase than those of ISA ARM.
Due to their greater complexity when decoding instructions, x86 CPUs have a great disadvantage when it comes to being adapted to very low consumption environments or they end up having a worse performance than expected. Which has made the ISA ARM unrivaled in very low-power environments and makes many consider a complete overhaul of the ISA x86.
Does the ISA x86 need to be renewed?
In order to avoid the problems of the x86 ISA, both Intel and AMD should meet to renew this completely by reviewing all the instructions. The idea of this revision would be to create a series of instructions of the same length in bits through a process of selecting them.
The objective would be to create a new ISA that was fully compatible with the current x86 assembly language, but in which instead of generating the old binary code, it would generate a new binary code according to the standards of the new ISA. Initially, the software would be distributed with the two types of binaries in a combined way in a process that is usually called Fat Binary where binaries from different ISAS are included.
The idea is not to create new instructions, but there has to be a 1: 1 correlation in terms of instructions. Those that are too complex may have mode or option bits, which explain how they work on different variables. These bits would be different from the instruction bits and would help simplify decoding.
Now, both AMD and Intel have been using the same instruction decoders for years, which they are making more and more complex. Every time they create a new CPU, they tend to reuse a good part of what was created on newer processors. The fact of not only renovating the entire ISA to the point of recreating it, as well as creating the entire process of decoding the instructions is a daunting task that can take many years.
The only real advantage? The fact that they could put x86 CPUs in PostPC devices, but then they should convince those who make software for those devices to adapt the code of their applications and operating systems.
Renew ISA x86, a problem for current software
Given the premise of the previous entry section, we can think that x86 are inferior to ARM, in reality we cannot lose sight of the context, since thanks to the fact that there are applications on the PC that demand high performance, ARM cores cannot to compete. We cannot forget that CPUs are designed to move the most demanding software on a platform at the highest possible speed.
For example in the case of video games, all engines are optimized to squeeze every last instruction out of the x86 CPUs. Which have the absolute monopoly on PC and consoles. Adapting such graphics engines to ARM requires a long time that translates into money. If you look when it comes to talking about the performance of its M1 games, Apple gives as examples old games that are not a problem to move due to the lack of optimization of the code.
Renewing the x86 ISA in the case of the different applications on the market would imply not only a daunting task on the part of Intel and AMD but also of different types of software and hardware manufacturers on the one hand. The renewal would be as complex as an ISA change. Apple can do it because it controls its ecosystem with an iron fist, but on PC its variety makes this task ten times greater.