CPU Hardware Emporium - Intel / AMD / Intel Phi

  • ISA emulation — x86/x86-64 instruction execution.
  • Microarchitecture simulation — pipelines, caches, branch predictors, execution ports, etc.
  • System emulation — CPU + chipset + PCI + RAM + firmware.
  • Cycle/trace simulation — much slower, but useful for architectural research.

:classical_building: CPU EMPORIUM

:blue_circle: Intel — x86 lineage

I’d build the Intel wing chronologically:

8086

  • 8086
  • 8088

80186

80286

80386

  • 386DX
  • 386SX

80486

  • 486DX
  • 486SX
  • 486DX2
  • 486DX4

Pentium

  • P5
  • P54C
  • P55C / MMX

Pentium Pro

  • P6

Pentium II

  • Klamath
  • Deschutes

Pentium III

  • Katmai
  • Coppermine
  • Tualatin

Pentium 4

  • Willamette
  • Northwood
  • Prescott

Pentium M

  • Banias
  • Dothan

Core

  • Yonah
  • Conroe
  • Merom
  • Penryn

Nehalem

  • Bloomfield
  • Lynnfield
  • Westmere

Sandy Bridge

Ivy Bridge

Haswell

Broadwell

Skylake

Kaby Lake

Coffee Lake

Comet Lake

Ice Lake

Tiger Lake

Alder Lake

Raptor Lake

Meteor Lake

Arrow Lake

Lunar Lake

For the actual emulator collection, you don’t necessarily need one emulator per SKU. You want representative microarchitectures.


:red_circle: AMD — x86 lineage

K5

  • AMD K5

K6

  • K6
  • K6-2
  • K6-III

K7

This is a particularly important room:

  • Athlon
  • Athlon Classic
  • Thunderbird
  • Duron

K8

Hammer architecture

  • Athlon 64
  • Opteron
  • Turion 64

This introduces AMD64 and the integrated memory controller.

K10

  • Phenom
  • Phenom II
  • Opteron

Bulldozer

  • Bulldozer
  • Piledriver
  • Steamroller
  • Excavator

This deserves its own architectural simulator because of the unusual clustered/threaded design.

Zen

Then the modern AMD wing:

Zen 1

Zen 2

Zen 3

Zen 4

Zen 5

And server variants:

  • EPYC Naples
  • EPYC Rome
  • EPYC Milan
  • EPYC Genoa
  • EPYC Bergamo
  • EPYC Turin

:purple_circle: Intel Xeon

This should be a separate server gallery, rather than just being mixed into desktop Intel.

Pentium II Xeon

Pentium III Xeon

Xeon NetBurst

Xeon 5000/7000

Xeon 5100

Xeon 5300

Xeon 5400

Xeon 5500

Nehalem-EP

Xeon E5

This is particularly relevant to your existing hardware:

  • E5-2600
  • E5-2600 v2
  • E5-2600 v3
  • E5-2600 v4

Representatives:

Westmere

↓

Sandy Bridge-EP

↓

Ivy Bridge-EP

↓

Haswell-EP

↓

Broadwell-EP

Then:

Xeon Scalable

  • Skylake-SP
  • Cascade Lake
  • Cooper Lake
  • Ice Lake-SP
  • Sapphire Rapids
  • Emerald Rapids
  • Granite Rapids
  • Sierra Forest

:yellow_circle: Xeon Phi

Absolutely.

And I wouldn’t bury this under “Intel CPU.”

It gets a giant separate laboratory.

Knights Corner

KNC

  • Xeon Phi 5110P
  • Xeon Phi 7120P

Architecture:

many x86-derived cores

│

├── wide vector units

├── local caches

└── ring interconnect

This is fascinating because it is neither a conventional CPU nor a conventional GPU.


Knights Landing

KNL

  • Xeon Phi 7210
  • 7230
  • 7250
  • 7290

Important features:

  • many cores
  • AVX-512
  • MCDRAM
  • mesh interconnect
  • high-bandwidth memory modes

This is probably the single most interesting CPU-like machine to emulate if your goal is architectural experimentation.


Knights Mill

KNM

Deep-learning-oriented Xeon Phi.


:green_circle: ARM

If we’re building an emporium, I’d absolutely add ARM.

ARM1

ARM2

ARM6

ARM7

ARM9

ARM11

Cortex-A8

Cortex-A9

Cortex-A15

Cortex-A53

Cortex-A57

Cortex-A72

Cortex-A76

Neoverse

And then:

  • ARMv7
  • ARMv8-A
  • ARMv9-A

:orange_circle: RISC-V

This deserves a completely separate room because you can actually build the machines yourself.

Representatives:

  • RV32I
  • RV32IM
  • RV64I
  • RV64GC
  • RV64GCV

Then more ambitious cores:

  • Rocket
  • BOOM
  • CVA6
  • XiangShan

This is where CPU emulation starts blending into CPU design research.


:brown_circle: IBM / Power

Another very worthwhile wing:

  • POWER3
  • POWER4
  • POWER5
  • POWER6
  • POWER7
  • POWER8
  • POWER9
  • POWER10

And:

  • PowerPC 601
  • PowerPC 603
  • PowerPC 604
  • G3
  • G4
  • G5

:purple_circle: MIPS

Classic emulation territory:

  • MIPS I
  • MIPS II
  • MIPS III
  • MIPS IV
  • MIPS32
  • MIPS64

Useful because of the clean RISC architecture.


:white_circle: SPARC

  • SPARC V7
  • SPARC V8
  • SPARC V9
  • UltraSPARC
  • UltraSPARC II
  • UltraSPARC III
  • UltraSPARC IV

:blue_square: DEC

For the serious archaeology department:

  • PDP-11
  • VAX
  • Alpha

Alpha deserves special attention:

  • DEC Alpha 21064
  • 21164
  • 21264
  • EV6
  • EV7

It’s one of the great lost RISC architectures.


:red_square: Transmeta

And if we’re going full mad-scientist museum:

  • Crusoe
  • Efficeon

These are particularly fascinating because the architecture involved code morphing.


:yellow_square: Itanium

Absolutely:

  • Itanium
  • Itanium 2
  • IA-64

This gives you an entirely different philosophy:

x86:

hardware discovers parallelism

IA-64:

compiler exposes parallelism

Very worthwhile as an architectural counterexample.


:brain: The emulator stack I’d actually build

I’d organize the CPU collection into four levels:

                    CPU EMPORIUM
                         │
          ┌──────────────┴──────────────┐
          │                             │
       ISA EMULATION              MICROARCH SIM
          │                             │
   ┌──────┼─────────┐          ┌────────┼────────┐
   │      │         │          │        │        │
 x86    ARM       RISC-V     caches   OoO     branch
   │      │         │          │        │        │
   └──────┴─────────┘          └────────┴────────┘
                  │
                  ▼
            SYSTEM EMULATION
                  │
        ┌─────────┼─────────┐
        │         │         │
       RAM       PCI      chipset
        │         │         │
        └─────────┼─────────┘
                  ▼
              BARE METAL
                  │
             BIOS / ROM
                  │
             REAL MACHINE

And for your particular collection, I’d prioritize:

Tier A — must-have

  1. 8086
  2. 80286
  3. 80386
  4. 80486
  5. Pentium
  6. Pentium Pro
  7. Pentium III
  8. Pentium 4
  9. Core 2
  10. Nehalem
  11. Sandy Bridge
  12. Haswell
  13. Skylake
  14. AMD K6
  15. Athlon/K7
  16. K8
  17. Phenom/K10
  18. Bulldozer
  19. Zen
  20. Zen 2
  21. Zen 3
  22. Zen 4
  23. Xeon Phi KNC
  24. Xeon Phi KNL

Tier B — architectural oddities

  1. Itanium
  2. Transmeta Crusoe
  3. Alpha
  4. POWER
  5. SPARC
  6. MIPS
  7. RISC-V

And I’d give Xeon Phi KNL a prominent place, because it bridges your original GPU-emulator concept and CPU-emulator concept beautifully:

x86 instruction semantics + many-core execution + AVX-512 + high-bandwidth memory + mesh topology.

That’s almost a perfect experimental “middle machine” between a conventional Xeon and a GPU.