2 Threads (SMT) Haswell Core 2 Threads (SMT) Core 2 Threads (SMT) Nehalem Core 2 Threads (SMT) Merom

Branch Branch Branch Branch Branch L1 Instruction Cache Prediction L1 Instruction Cache Prediction L1 Instruction Cache Prediction L1 Instruction Cache Prediction L1 Instruction Cache Prediction Unit Unit Unit Unit Unit

Instruction Fetch Unit Instruction Fetch Unit Instruction Fetch Unit Instruction Fetch Unit Instruction Fetch Unit

5-way Instruction Decode Units 4-way x86 Instruction Decode Units 4-way x86 Instruction Decode Units 4-way x86 Instruction Decode Units 4-way x86 Instruction Decode Units

Up to 4 Fused MicroOPs Up to 4 Fused MicroOPs Up to 4 Fused MicroOPs Up to 4 Fused MicroOPs uOP Cache uOP Cache uOP Cache Up to 6 Fused MicroOPs Scheduler Scheduler

Scheduler Scheduler Scheduler Up to 6 MicroOPs(uOPs) Up to 6 MicroOPs(uOPs) Up to 8 MicroOPs(uOPs) Up to 8 MicroOPs(uOPs) Up to 6 MicroOPs(uOPs) Load/Store Pipe Load/Store Pipe Load/Store Pipe Load/Store Pipe Load/Store Pipe Load/Store Pipe Integer Pipe Integer Pipe Integer Pipe Integer Pipe Integer Pipe Integer Pipe Integer Pipe Integer Pipe Integer Pipe Integer Pipe Integer Pipe Integer Pipe Integer Pipe Integer Pipe Integer Pipe Integer Pipe Integer Pipe FP/Int MAD FP/Int MAD FP/Int MAD FP/Int MAD FP Shuffle Store Pipe Store Pipe FP Shuffle Store Pipe FP Shuffle Store Pipe FP Shuffle Load Pipe Load Pipe FP Misc FP ADD FP ADD FP ADD FP MUL FP MUL FP MUL 128-bit 128-bit 128-bit 128-bit 128-bit 128-bit 256-bit 256-bit 256-bit 256-bit 256-bit 256-bit

L1 Data Cache L1 Data Cache L1 Data Cache L1 Data Cache L1 Data Cache

L2 Cache L2 Cache L2 Cache L2 Cache L2 Cache

Shared L3 Cache Shared L3 Cache Shared L3 Cache Shared L3 Cache

Silvermont Core Bonnell Core + L2 Cache 4 Threads (SMT) 2 Threads (SMT)

Branch Branch Branch L1 Instruction Cache Prediction L1 Instruction Cache Prediction L1 Instruction Cache Prediction Unit Unit Unit

Instruction Fetch Unit Instruction Fetch Unit Instruction Fetch Unit

2-way x86 Decode 2-way x86 Decode 2-way x86 Decode

FP Integer Scheduler FP Scheduler Integer Scheduler Scheduler AGU AGU Load/Store Pipe Load/Store Pipe Integer Pipe Integer Pipe Integer Pipe Integer Pipe Integer 64-bit FADD 64-bit FMUL 64-bit FADD 64-bit FMUL FP/Int MAD FP/Int MAD 512-bit 512-bit Integer Pipe Integer Pipe

L1 Data Cache L1 Data Cache L1 Data Cache

L2 Cache Shared L2 Cache Shared L2 Cache

Copyright (c) 2016 Hiroshige Goto All rights reserved.

5-way x86 Instruction Decode Units

4-way x86 Instruction Decode Units

3-way x86 Instruction Decode

2-way x86 Decode