SH7751 Group, SH7751R Group
Section 6 Floating-Point Unit
R01UH0457EJ0301 Rev. 3.01
Page 185 of 1128
Sep 24, 2013
•
FSCHG
This instruction changes the value of the SZ bit in FPSCR, enabling fast switching between
use and non-use of pair single-precision data transfer.
Programming Note:
When FPSCR.SZ = 1 and big-endian mode is used, FMOV can be used for a double-precision
floating-point load or store. In little-endian mode, a double-precision floating-point load or store
requires execution of two 32-bit data size operations with FPSCR.SZ = 0.
6.7
Usage Notes
6.7.1
Rounding Mode and Underflow Flag
When using the Round to Nearest rounding mode, the underflow flag may not be set in cases
defined as underflow by the IEEE754 standard.
Under the IEEE754 standard, when the Round to Nearest rounding mode is used and infinite-
precision operation result
x
is (i) or (ii) (single-precision) or (iii) or (iv) (double-precision), there
are cases where “the result after rounding is a normalized number, but an underflow results.”
In such cases where “the result after rounding is a normalized number, but an underflow results,”
the FPU does not set the underflow flag to 1. In these cases the operation result, the value written
to FRn, is correct. Also, if an FPU exception occurs, the underflow flag is not set to 1 but the
inexact flag is set to 1 in such cases. Generation of FPU exceptions can be enabled by setting the
enable field to 1.
(i) H'007FFFFF < x < H'00800000
(ii) H'807FFFFF > x > H'80800000
(iii) H'000FFFFF FFFFFFFF < x < H'00100000 00000000
(iv) H'800FFFFF FFFFFFFF > x > H'80100000 00000000
Examples
•
Single-precision
When FPSCR.RM = 00 (Round to Nearest) and FPSCR.PR = 0 (single-precision), and the
FMUL instruction (H'00FFF000 * H'3F000800) is executed.
a. According to IEEE754 standard
Operation result: H'00800000
FPSCR: H'0004300C