SystemC  2.3.2
Accellera SystemC proof-of-concept library
scfx_ieee.h File Reference
Include dependency graph for scfx_ieee.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

union  sc_dt::ieee_double
 IEEE 754 double-precision format. More...
 
class  sc_dt::scfx_ieee_double
 Convenient interface to union ieee_double. More...
 
union  sc_dt::ieee_float
 IEEE 754 single-precision format. More...
 
class  sc_dt::scfx_ieee_float
 Convenient wrapper to union ieee_float. More...
 

Namespaces

 sc_dt
 

Macros

#define SCFX_MASK_(Size)   ((1u << (Size))-1u)
 
#define MSB_STATEMENT(x, n)   if( x >> n ) { x >>= n; i += n; }
 
#define LSB_STATEMENT(x, n)   if( x << n ) { x <<= n; i -= n; }
 

Functions

double sc_dt::scfx_pow2 (int exp)
 Computes 2. More...
 
double sc_dt::uint64_to_double (uint64 a)
 Platform independent conversion from double uint64 to double. More...
 

Variables

const unsigned int sc_dt::SCFX_IEEE_DOUBLE_BIAS = 1023U
 
const int sc_dt::SCFX_IEEE_DOUBLE_E_MAX = 1023
 
const int sc_dt::SCFX_IEEE_DOUBLE_E_MIN = -1022
 
const unsigned int sc_dt::SCFX_IEEE_DOUBLE_M_SIZE = 52
 
const unsigned int sc_dt::SCFX_IEEE_DOUBLE_M0_SIZE = 20
 
const unsigned int sc_dt::SCFX_IEEE_DOUBLE_M1_SIZE = 32
 
const unsigned int sc_dt::SCFX_IEEE_DOUBLE_E_SIZE = 11
 
const unsigned int sc_dt::SCFX_IEEE_FLOAT_BIAS = 127U
 
const int sc_dt::SCFX_IEEE_FLOAT_E_MAX = 127
 
const int sc_dt::SCFX_IEEE_FLOAT_E_MIN = -126
 
const unsigned int sc_dt::SCFX_IEEE_FLOAT_M_SIZE = 23
 
const unsigned int sc_dt::SCFX_IEEE_FLOAT_E_SIZE = 8
 

Macro Definition Documentation

◆ LSB_STATEMENT

#define LSB_STATEMENT (   x,
 
)    if( x << n ) { x <<= n; i -= n; }

Definition at line 362 of file scfx_ieee.h.

◆ MSB_STATEMENT

#define MSB_STATEMENT (   x,
 
)    if( x >> n ) { x >>= n; i += n; }

Definition at line 326 of file scfx_ieee.h.

◆ SCFX_MASK_

#define SCFX_MASK_ (   Size)    ((1u << (Size))-1u)

Definition at line 70 of file scfx_ieee.h.