AMD's future microprocessors could increase their microcode size by over two times compared to existing AMD CPUs, according to a new Linux patch spotted by Phoronix. The increased microcode size may suggest that AMD's upcoming processors based on the Zen 5 microarchitecture and its successors will support more complex instructions or will be able to add new features after release — or maybe AMD just wants to ensure that it can update microcodes in a more thorough manner.
The maximum microcode patch size for AMD CPUs that the Linux kernel currently supports is 12KB (three times the Linux kernel page size of 4096 bytes). The latest patch released by AMD for future CPUs (most likely those based on Zen 5, or perhaps its successors) indicates that microcode size could increase all the way to 32KB — or eight times the Linux kernel page size.
"Future AMD CPUs will have microcode patches that exceed the current limit of three 4K pages," a statement by AMD reads. "Increase substantially to avoid future size increases."
The increased microcode patch size does not necessarily mean that microcode of AMD's Zen 5 CPUs will be over 2.6 times larger compared to that of AMD's Zen 4 processors. Nonetheless, it points to the fact that it is going to be larger.
CPU microcode is a low-level code that defines how a CPU operates. To a large degree, microcode is a step-by-step guide for how the CPU performs each machine code instruction: it takes higher-level machine code instructions and breaks them down into simpler hardware-level instructions that the CPU can execute. CPU microcode can often be updated, enabling processor developers to fix bugs or security vulnerabilities in the CPU after it has been deployed.
Microcode allows a CPU to handle more complex instructions that would be hard or inefficient to implement directly in hardware. Therefore, the more complex the instruction set, the more complex microcode gets. Hence, if AMD is to implement complex new instruction set extensions into its Zen 5-based products and its successors, it needs to expand its microcode size.
Another reason to increase CPU microcode size is that AMD may anticipate adding new features or capabilities (instructions, optimizations, hardware bug fixes, security enhancements, etc.), and wants to do so without needing to redesign the entire CPU — which is prohibitively costly on the current and upcoming process technologies.