Hardware Reference
In-Depth Information
Lower x Lower (46b)
Middle x Lower (47b)
Lower x Middle (47b)
23b
Upper x Lower (29b)
CPA Output
+
=
Lower x Upper (29b)
Reduction Array Output
Middle x Middle (48b)
Upper x Middle (30b)
Middle x Upper (30b)
23b
CPA Output
+
=
Upper x Upper (12b)
Reduction Array Output
CPA Output (53b + Guard/Round)
Sticky
Fig. 3.36
Double-precision FMUL emulation by four multipliers
accumulated to the lower-by-lower product by the reduction array, and its lower 23
bits are also used to generate a sticky bit. At the third step, the remaining four prod-
ucts of middle-by-middle, upper-by-middle, middle-by-upper, and upper-by-upper
are produced and accumulated to the already accumulated intermediate values.
Then the CPA adds the sum and carry of the final product, and 53-bit result and
guard/round/sticky bits are produced. The accumulated terms of the second and
third steps are ten because each product consists of sum and carry, but the bitwise
position of some terms are not overlapped. Therefore, the eight-term reduction array
is enough to accumulate them.
3.1.6.3
Performance Evaluation with 3D Graphics Benchmark
The SH-X floating-point architecture was evaluated by a simple 3D graphics bench-
mark. The difference from the benchmark in Sect. 3.1.5.3 is mainly the transform
matrix types and strip model adaption. The affine transformation was used for the
SH-4 evaluation, but the general transformation was used for the SH-X. It can
express scaling as well as rotation and parallel displacement, but requires more
calculations. The strip model is a 3D object expression method to reduce the num-
ber of vertex vectors. In the model, each triangle has three vertexes, but each vertex
is shared by three triangles, and the number of vertex per triangle is one. The bench-
mark is expressed as follows, where T represents a general transformation matrix;
V and N represent vertex and normal vectors of a triangle before the coordinate
transformations, respectively; N ¢ and V ¢ represent the ones after the transforma-
tions, respectively; S and S represent x and y coordinates of the projection of V ¢ ,
respectively; L represents a vector of the parallel beam of light; I represents an
intensity of a triangle surface; and V ″ is an intermediate value of the coordinate
transformations:
 
Search WWH ::




Custom Search