21264/EV67 Microarchitecture

The Ebox has 80 register-file entries that contain storage for the values of the 31 Alpha integer registers (the value of R31 is not stored), the values of 8 PALshadow registers, and 41 results written by instructions that have not yet been retired.

Ignoring cross-cluster delay, the two copies of the Ebox register file contain identical values. Each copy of the Ebox register file contains four read ports and six write ports. The four read ports are used to source operands to each of the two subclusters within a cluster. The six write ports are used as follows:

Two write ports are used to write results generated within the cluster.

Two write ports are used to write results generated by the other cluster.

Two write ports are used to write results from load instructions. These two ports are also used for FTOIx instructions.

2.1.3Floating-Point Execution Unit

The floating-point execution unit (Fbox) has two paths. The Fbox executes both VAX and IEEE floating-point instructions. It support IEEE S_floating-point and T_floating- point data types and all rounding modes. It also supports VAX F_floating-point and G_floating-point data types, and provides limited support for D_floating-point format. The basic structure of the floating-point execution unit is shown in Figure 2–7.

Figure 2–7 Floating-Point Execution Units

Floating-Point

Execution Units

FP Mul

Reg

FP Add

FP Div

SQRT

LK98-0004A

The Fbox contains the following resources:

72-entry physical register file

Fully-pipelined multiplier with 4-cycle latency

Fully-pipelined adder with 4-cycle latency

Nonpipelined divide unit associated with the adder pipeline

Nonpipelined square root unit associated with the adder pipeline

The 72 Fbox register file entries contain storage for the values of the 31 Alpha floating- point registers (F31 is not stored) and 41 values written by instructions that have not been retired.

2–10Internal Architecture

Alpha 21264/EV67 Hardware Reference Manual

Page 38
Image 38
Compaq EV67, 21264 specifications Floating-Point Execution Unit, 10Internal Architecture