Learning path

Full curriculum

Full curriculum

Unit content

Instruction set architectures and microarchitectures

A processor's instruction set architecture (ISA) is the software-visible contract describing the machine instructions, registers, data widths, addressing rules and other behaviour that machine code can rely on.

Examples of ISA families include x86-64 and AArch64.

ISA versus implementation

Two processors can implement the same ISA while having very different internal organizations. That internal implementation is the microarchitecture.

Pipeline depth, cache sizes, execution units and branch predictors can differ while both processors execute the same machine-code interface.

software
   ↓
ISA            ← contract
   ↓
microarchitecture
   ↓
logic circuits

Compatibility

A binary requires an ISA and, sometimes, optional instruction-set extensions. A faster or newer implementation does not automatically define a different software interface.

Keeping ISA and microarchitecture distinct explains how software compatibility can survive large changes in processor design.