Instruction window organizations
Single-stage issue out of a central instruction window
Multi-stage issue: Operand availability and resource availability checking is split into two separate stages.
Decoupling of instruction windows: Each instruction window is shared by a group of (usually related) functional units, most common: separate floating-point window and integer window.
Combination of multi-stage issue and decoupling of instruction windows:
- In a two-stage issue scheme with resource dependent issue preceding the data-dependent dispatch, the first stage is done in-order, the second stage is performed out-of-order.