Package: float_generic_pkg
- File: float_generic_pkg.vhdl
Constants
Name | Type | Value | Description |
---|---|---|---|
CopyRightNotice | STRING | "Copyright 2008 by IEEE. All rights reserved." |
Types
Name | Type | Description |
---|---|---|
UNRESOLVED_float | array (INTEGER range <>) of STD_ULOGIC | main type |
valid_fpstate | (nan, -- Signaling NaN (C FP_NAN) quiet_nan, -- Quiet NaN (C FP_NAN) neg_inf, -- Negative infinity (C FP_INFINITE) neg_normal, -- negative normalized nonzero neg_denormal, -- negative denormalized (FP_SUBNORMAL) neg_zero, -- -0 (C FP_ZERO) pos_zero, -- +0 (C FP_ZERO) pos_denormal, -- Positive denormalized (FP_SUBNORMAL) pos_normal, -- positive normalized nonzero pos_inf, -- positive infinity isx) |
--------------------------------------------------------------------------- The 128 bit floating point number is "long double" in C (on some systems this is a 70 bit floating point number) and FLOAT32 in Fortran. The exponent is 15 bits wide and the fraction is 112 bits wide. This number can handle approximately 33 decimal digits. Infinity is 2*32,767 in this number system. --------------------------------------------------------------------------- purpose: Checks for a valid floating point number |
Functions
- Classfp ( x : UNRESOLVED_float;
-- floating point input check_error : BOOLEAN := float_check_error) return valid_fpstate
Description
deferred constant
Returns the class which X falls into
- add ( l,
r : UNRESOLVED_float;
-- floating point input constant round_style : round_type := float_round_style;
-- rounding option constant guard : NATURAL := float_guard_bits;
-- number of guard bits constant check_error : BOOLEAN := float_check_error;
-- check for errors constant denormalize : BOOLEAN := float_denormalize) return UNRESOLVED_float
Description
Basic parameter list
round_style - Selects the rounding algorithm to use
guard - extra bits added to the end if the operation to add precision
check_error - When "false" turns off NAN and overflow checks
denormalize - When "false" turns off denormal number processing
- subtract ( l,
r : UNRESOLVED_float;
-- floating point input constant round_style : round_type := float_round_style;
-- rounding option constant guard : NATURAL := float_guard_bits;
-- number of guard bits constant check_error : BOOLEAN := float_check_error;
-- check for errors constant denormalize : BOOLEAN := float_denormalize) return UNRESOLVED_float
- multiply ( l,
r : UNRESOLVED_float;
-- floating point input constant round_style : round_type := float_round_style;
-- rounding option constant guard : NATURAL := float_guard_bits;
-- number of guard bits constant check_error : BOOLEAN := float_check_error;
-- check for errors constant denormalize : BOOLEAN := float_denormalize) return UNRESOLVED_float
- divide ( l,
r : UNRESOLVED_float;
-- floating point input constant round_style : round_type := float_round_style;
-- rounding option constant guard : NATURAL := float_guard_bits;
-- number of guard bits constant check_error : BOOLEAN := float_check_error;
-- check for errors constant denormalize : BOOLEAN := float_denormalize) return UNRESOLVED_float
- remainder ( l,
r : UNRESOLVED_float;
-- floating point input constant round_style : round_type := float_round_style;
-- rounding option constant guard : NATURAL := float_guard_bits;
-- number of guard bits constant check_error : BOOLEAN := float_check_error;
-- check for errors constant denormalize : BOOLEAN := float_denormalize) return UNRESOLVED_float
- modulo ( l,
r : UNRESOLVED_float;
-- floating point input constant round_style : round_type := float_round_style;
-- rounding option constant guard : NATURAL := float_guard_bits;
-- number of guard bits constant check_error : BOOLEAN := float_check_error;
-- check for errors constant denormalize : BOOLEAN := float_denormalize) return UNRESOLVED_float
- reciprocal ( arg : UNRESOLVED_float;
-- floating point input constant round_style : round_type := float_round_style;
-- rounding option constant guard : NATURAL := float_guard_bits;
-- number of guard bits constant check_error : BOOLEAN := float_check_error;
-- check for errors constant denormalize : BOOLEAN := float_denormalize) return UNRESOLVED_float
Description
reciprocal
- dividebyp2 ( l,
r : UNRESOLVED_float;
-- floating point input constant round_style : round_type := float_round_style;
-- rounding option constant guard : NATURAL := float_guard_bits;
-- number of guard bits constant check_error : BOOLEAN := float_check_error;
-- check for errors constant denormalize : BOOLEAN := float_denormalize) return UNRESOLVED_float
- mac ( l,
r,
c : UNRESOLVED_float;
-- floating point input constant round_style : round_type := float_round_style;
-- rounding option constant guard : NATURAL := float_guard_bits;
-- number of guard bits constant check_error : BOOLEAN := float_check_error;
-- check for errors constant denormalize : BOOLEAN := float_denormalize) return UNRESOLVED_float
Description
Multiply accumulate result = l*r + c
- sqrt ( arg : UNRESOLVED_float;
-- floating point input constant round_style : round_type := float_round_style;
constant guard : NATURAL := float_guard_bits;
constant check_error : BOOLEAN := float_check_error;
constant denormalize : BOOLEAN := float_denormalize) return UNRESOLVED_float
Description
Square root (all 754 based implementations need this)
- Is_Negative (arg : UNRESOLVED_float) return BOOLEAN
- eq ( -- equal = l,
r : UNRESOLVED_float;
-- floating point input constant check_error : BOOLEAN := float_check_error;
constant denormalize : BOOLEAN := float_denormalize) return BOOLEAN
Description
compare functions
=, /=, >=, <=, <, >, maximum, minimum
- ne ( -- not equal /= l,
r : UNRESOLVED_float;
-- floating point input constant check_error : BOOLEAN := float_check_error;
constant denormalize : BOOLEAN := float_denormalize) return BOOLEAN
- lt ( -- less than < l,
r : UNRESOLVED_float;
-- floating point input constant check_error : BOOLEAN := float_check_error;
constant denormalize : BOOLEAN := float_denormalize) return BOOLEAN
- gt ( -- greater than > l,
r : UNRESOLVED_float;
-- floating point input constant check_error : BOOLEAN := float_check_error;
constant denormalize : BOOLEAN := float_denormalize) return BOOLEAN
- le ( -- less than or equal to <= l,
r : UNRESOLVED_float;
-- floating point input constant check_error : BOOLEAN := float_check_error;
constant denormalize : BOOLEAN := float_denormalize) return BOOLEAN
- ge ( -- greater than or equal to >= l,
r : UNRESOLVED_float;
-- floating point input constant check_error : BOOLEAN := float_check_error;
constant denormalize : BOOLEAN := float_denormalize) return BOOLEAN
- std_match (l,
r : UNRESOLVED_float) return BOOLEAN
- find_rightmost (arg : UNRESOLVED_float;
y : STD_ULOGIC) return INTEGER
- find_leftmost (arg : UNRESOLVED_float;
y : STD_ULOGIC) return INTEGER
- maximum (l,
r : UNRESOLVED_float) return UNRESOLVED_float
- minimum (l,
r : UNRESOLVED_float) return UNRESOLVED_float
- resize ( arg : UNRESOLVED_float;
-- Floating point input constant exponent_width : NATURAL := float_exponent_width;
-- length of FP output exponent constant fraction_width : NATURAL := float_fraction_width;
-- length of FP output fraction constant round_style : round_type := float_round_style;
-- rounding option constant check_error : BOOLEAN := float_check_error;
constant denormalize_in : BOOLEAN := float_denormalize;
-- Use IEEE extended FP constant denormalize : BOOLEAN := float_denormalize) return UNRESOLVED_float
Description
conversion functions
Converts one floating point number into another.
- resize ( arg : UNRESOLVED_float;
-- Floating point input size_res : UNRESOLVED_float;
constant round_style : round_type := float_round_style;
-- rounding option constant check_error : BOOLEAN := float_check_error;
constant denormalize_in : BOOLEAN := float_denormalize;
-- Use IEEE extended FP constant denormalize : BOOLEAN := float_denormalize) return UNRESOLVED_float
- to_float32 ( arg : UNRESOLVED_float;
constant round_style : round_type := float_round_style;
-- rounding option constant check_error : BOOLEAN := float_check_error;
constant denormalize_in : BOOLEAN := float_denormalize;
-- Use IEEE extended FP constant denormalize : BOOLEAN := float_denormalize) return UNRESOLVED_float32
- to_float64 ( arg : UNRESOLVED_float;
constant round_style : round_type := float_round_style;
-- rounding option constant check_error : BOOLEAN := float_check_error;
constant denormalize_in : BOOLEAN := float_denormalize;
-- Use IEEE extended FP constant denormalize : BOOLEAN := float_denormalize) return UNRESOLVED_float64
- to_float128 ( arg : UNRESOLVED_float;
constant round_style : round_type := float_round_style;
-- rounding option constant check_error : BOOLEAN := float_check_error;
constant denormalize_in : BOOLEAN := float_denormalize;
-- Use IEEE extended FP constant denormalize : BOOLEAN := float_denormalize) return UNRESOLVED_float128
- to_slv (arg : UNRESOLVED_float) return STD_LOGIC_VECTOR
Description
Converts an fp into an SLV (needed for synthesis)
- to_sulv (arg : UNRESOLVED_float) return STD_ULOGIC_VECTOR
Description
Converts an fp into an std_ulogic_vector (sulv)
- to_float ( arg : STD_ULOGIC_VECTOR;
constant exponent_width : NATURAL := float_exponent_width;
-- length of FP output exponent constant fraction_width : NATURAL := float_fraction_width) return UNRESOLVED_float
Description
std_ulogic_vector to float
- to_float ( arg : INTEGER;
constant exponent_width : NATURAL := float_exponent_width;
-- length of FP output exponent constant fraction_width : NATURAL := float_fraction_width;
-- length of FP output fraction constant round_style : round_type := float_round_style) return UNRESOLVED_float
Description
Integer to float
- to_float ( arg : REAL;
constant exponent_width : NATURAL := float_exponent_width;
-- length of FP output exponent constant fraction_width : NATURAL := float_fraction_width;
-- length of FP output fraction constant round_style : round_type := float_round_style;
-- rounding option constant denormalize : BOOLEAN := float_denormalize) return UNRESOLVED_float
Description
real to float
- to_float ( arg : UNRESOLVED_UNSIGNED;
constant exponent_width : NATURAL := float_exponent_width;
-- length of FP output exponent constant fraction_width : NATURAL := float_fraction_width;
-- length of FP output fraction constant round_style : round_type := float_round_style) return UNRESOLVED_float
Description
unsigned to float
- to_float ( arg : UNRESOLVED_SIGNED;
constant exponent_width : NATURAL := float_exponent_width;
-- length of FP output exponent constant fraction_width : NATURAL := float_fraction_width;
-- length of FP output fraction constant round_style : round_type := float_round_style) return UNRESOLVED_float
Description
signed to float
- to_float ( arg : UNRESOLVED_ufixed;
-- unsigned fixed point input constant exponent_width : NATURAL := float_exponent_width;
-- width of exponent constant fraction_width : NATURAL := float_fraction_width;
-- width of fraction constant round_style : round_type := float_round_style;
-- rounding constant denormalize : BOOLEAN := float_denormalize) return UNRESOLVED_float
Description
unsigned fixed point to float
- to_float ( arg : UNRESOLVED_sfixed;
constant exponent_width : NATURAL := float_exponent_width;
-- length of FP output exponent constant fraction_width : NATURAL := float_fraction_width;
-- length of FP output fraction constant round_style : round_type := float_round_style;
-- rounding constant denormalize : BOOLEAN := float_denormalize) return UNRESOLVED_float
Description
signed fixed point to float
- to_float ( arg : INTEGER;
size_res : UNRESOLVED_float;
constant round_style : round_type := float_round_style) return UNRESOLVED_float
Description
size_res functions
Integer to float
- to_float ( arg : REAL;
size_res : UNRESOLVED_float;
constant round_style : round_type := float_round_style;
-- rounding option constant denormalize : BOOLEAN := float_denormalize) return UNRESOLVED_float
Description
real to float
- to_float ( arg : UNRESOLVED_UNSIGNED;
size_res : UNRESOLVED_float;
constant round_style : round_type := float_round_style) return UNRESOLVED_float
Description
unsigned to float
- to_float ( arg : UNRESOLVED_SIGNED;
size_res : UNRESOLVED_float;
constant round_style : round_type := float_round_style) return UNRESOLVED_float
Description
signed to float
- to_float ( arg : STD_ULOGIC_VECTOR;
size_res : UNRESOLVED_float) return UNRESOLVED_float
Description
sulv to float
- to_float ( arg : UNRESOLVED_ufixed;
-- unsigned fixed point input size_res : UNRESOLVED_float;
constant round_style : round_type := float_round_style;
-- rounding constant denormalize : BOOLEAN := float_denormalize) return UNRESOLVED_float
Description
unsigned fixed point to float
- to_float ( arg : UNRESOLVED_sfixed;
size_res : UNRESOLVED_float;
constant round_style : round_type := float_round_style;
-- rounding constant denormalize : BOOLEAN := float_denormalize) return UNRESOLVED_float
Description
signed fixed point to float
- to_unsigned ( arg : UNRESOLVED_float;
-- floating point input constant size : NATURAL;
-- length of output constant round_style : round_type := float_round_style;
-- rounding option constant check_error : BOOLEAN := float_check_error) return UNRESOLVED_UNSIGNED
Description
float to unsigned
- to_signed ( arg : UNRESOLVED_float;
-- floating point input constant size : NATURAL;
-- length of output constant round_style : round_type := float_round_style;
-- rounding option constant check_error : BOOLEAN := float_check_error) return UNRESOLVED_SIGNED
Description
float to signed
- to_ufixed ( arg : UNRESOLVED_float;
-- fp input constant left_index : INTEGER;
-- integer part constant right_index : INTEGER;
-- fraction part constant overflow_style : fixed_overflow_style_type := fixed_overflow_style;
-- saturate constant round_style : fixed_round_style_type := fixed_round_style;
-- rounding constant check_error : BOOLEAN := float_check_error;
-- check for errors constant denormalize : BOOLEAN := float_denormalize) return UNRESOLVED_ufixed
Description
purpose: Converts a float to unsigned fixed point
- to_sfixed ( arg : UNRESOLVED_float;
-- fp input constant left_index : INTEGER;
-- integer part constant right_index : INTEGER;
-- fraction part constant overflow_style : fixed_overflow_style_type := fixed_overflow_style;
-- saturate constant round_style : fixed_round_style_type := fixed_round_style;
-- rounding constant check_error : BOOLEAN := float_check_error;
-- check for errors constant denormalize : BOOLEAN := float_denormalize) return UNRESOLVED_sfixed
Description
float to signed fixed point
- to_unsigned ( arg : UNRESOLVED_float;
-- floating point input size_res : UNRESOLVED_UNSIGNED;
constant round_style : round_type := float_round_style;
-- rounding option constant check_error : BOOLEAN := float_check_error) return UNRESOLVED_UNSIGNED
Description
size_res versions
float to unsigned
- to_signed ( arg : UNRESOLVED_float;
-- floating point input size_res : UNRESOLVED_SIGNED;
constant round_style : round_type := float_round_style;
-- rounding option constant check_error : BOOLEAN := float_check_error) return UNRESOLVED_SIGNED
Description
float to signed
- to_ufixed ( arg : UNRESOLVED_float;
-- fp input size_res : UNRESOLVED_ufixed;
constant overflow_style : fixed_overflow_style_type := fixed_overflow_style;
-- saturate constant round_style : fixed_round_style_type := fixed_round_style;
-- rounding constant check_error : BOOLEAN := float_check_error;
-- check for errors constant denormalize : BOOLEAN := float_denormalize) return UNRESOLVED_ufixed
Description
purpose: Converts a float to unsigned fixed point
- to_sfixed ( arg : UNRESOLVED_float;
-- fp input size_res : UNRESOLVED_sfixed;
constant overflow_style : fixed_overflow_style_type := fixed_overflow_style;
-- saturate constant round_style : fixed_round_style_type := fixed_round_style;
-- rounding constant check_error : BOOLEAN := float_check_error;
-- check for errors constant denormalize : BOOLEAN := float_denormalize) return UNRESOLVED_sfixed
Description
float to signed fixed point
- to_real ( arg : UNRESOLVED_float;
-- floating point input constant check_error : BOOLEAN := float_check_error;
-- check for errors constant denormalize : BOOLEAN := float_denormalize) return REAL
Description
float to real
- to_integer ( arg : UNRESOLVED_float;
-- floating point input constant round_style : round_type := float_round_style;
-- rounding option constant check_error : BOOLEAN := float_check_error) return INTEGER
Description
float to integer
- realtobits (arg : REAL) return STD_ULOGIC_VECTOR
Description
For Verilog compatability
- bitstoreal (arg : STD_ULOGIC_VECTOR) return REAL
- to_01 ( arg : UNRESOLVED_float;
-- floating point input XMAP : STD_LOGIC := '0') return UNRESOLVED_float
Description
Maps metalogical values
- Is_X (arg : UNRESOLVED_float) return BOOLEAN
- to_X01 (arg : UNRESOLVED_float) return UNRESOLVED_float
- to_X01Z (arg : UNRESOLVED_float) return UNRESOLVED_float
- to_UX01 (arg : UNRESOLVED_float) return UNRESOLVED_float
- break_number ( arg : in UNRESOLVED_float;
denormalize : in BOOLEAN := float_denormalize;
check_error : in BOOLEAN := float_check_error;
fract : out UNRESOLVED_UNSIGNED;
expon : out UNRESOLVED_SIGNED;
-- NOTE: Add 1 to get the real exponent! sign : out STD_ULOGIC) return ()
Description
These two procedures were copied out of the body because they proved
very useful for vendor specific algorithm development
Break_number converts a floating point number into it's parts
Exponent is biased by -1
- break_number ( arg : in UNRESOLVED_float;
denormalize : in BOOLEAN := float_denormalize;
check_error : in BOOLEAN := float_check_error;
fract : out UNRESOLVED_ufixed;
-- a number between 1.0 and 2.0 expon : out UNRESOLVED_SIGNED;
-- NOTE: Add 1 to get the real exponent! sign : out STD_ULOGIC) return ()
- normalize ( fract : UNRESOLVED_UNSIGNED;
-- fraction,
unnormalized expon : UNRESOLVED_SIGNED;
-- exponent - 1,
normalized sign : STD_ULOGIC;
-- sign bit sticky : STD_ULOGIC := '0';
-- Sticky bit (rounding) constant exponent_width : NATURAL := float_exponent_width;
-- size of output exponent constant fraction_width : NATURAL := float_fraction_width;
-- size of output fraction constant round_style : round_type := float_round_style;
-- rounding option constant denormalize : BOOLEAN := float_denormalize;
-- Use IEEE extended FP constant nguard : NATURAL := float_guard_bits) return UNRESOLVED_float
Description
Normalize takes a fraction and and exponent and converts them into
a floating point number. Does the shifting and the rounding.
Exponent is assumed to be biased by -1
- normalize ( fract : UNRESOLVED_ufixed;
-- unsigned fixed point expon : UNRESOLVED_SIGNED;
-- exponent - 1,
normalized sign : STD_ULOGIC;
-- sign bit sticky : STD_ULOGIC := '0';
-- Sticky bit (rounding) constant exponent_width : NATURAL := float_exponent_width;
-- size of output exponent constant fraction_width : NATURAL := float_fraction_width;
-- size of output fraction constant round_style : round_type := float_round_style;
-- rounding option constant denormalize : BOOLEAN := float_denormalize;
-- Use IEEE extended FP constant nguard : NATURAL := float_guard_bits) return UNRESOLVED_float
Description
Exponent is assumed to be biased by -1
- normalize ( fract : UNRESOLVED_UNSIGNED;
-- unsigned expon : UNRESOLVED_SIGNED;
-- exponent - 1,
normalized sign : STD_ULOGIC;
-- sign bit sticky : STD_ULOGIC := '0';
-- Sticky bit (rounding) size_res : UNRESOLVED_float;
-- used for sizing only constant round_style : round_type := float_round_style;
-- rounding option constant denormalize : BOOLEAN := float_denormalize;
-- Use IEEE extended FP constant nguard : NATURAL := float_guard_bits) return UNRESOLVED_float
- normalize ( fract : UNRESOLVED_ufixed;
-- unsigned fixed point expon : UNRESOLVED_SIGNED;
-- exponent - 1,
normalized sign : STD_ULOGIC;
-- sign bit sticky : STD_ULOGIC := '0';
-- Sticky bit (rounding) size_res : UNRESOLVED_float;
-- used for sizing only constant round_style : round_type := float_round_style;
-- rounding option constant denormalize : BOOLEAN := float_denormalize;
-- Use IEEE extended FP constant nguard : NATURAL := float_guard_bits) return UNRESOLVED_float
Description
Exponent is assumed to be biased by -1
- maximum (l : UNRESOLVED_float;
r : REAL) return UNRESOLVED_float
Description
minimum and maximum overloads
- minimum (l : UNRESOLVED_float;
r : REAL) return UNRESOLVED_float
- maximum (l : REAL;
r : UNRESOLVED_float) return UNRESOLVED_float
- minimum (l : REAL;
r : UNRESOLVED_float) return UNRESOLVED_float
- maximum (l : UNRESOLVED_float;
r : INTEGER) return UNRESOLVED_float
- minimum (l : UNRESOLVED_float;
r : INTEGER) return UNRESOLVED_float
- maximum (l : INTEGER;
r : UNRESOLVED_float) return UNRESOLVED_float
- minimum (l : INTEGER;
r : UNRESOLVED_float) return UNRESOLVED_float
- Copysign (x,
y : UNRESOLVED_float) return UNRESOLVED_float
Description
Note: "sla", "sra", "sll", "slr", "rol" and "ror" not implemented.
Recommended Functions from the IEEE 754 Appendix
returns x with the sign of y.
- Scalb ( y : UNRESOLVED_float;
-- floating point input N : INTEGER;
-- exponent to add constant round_style : round_type := float_round_style;
-- rounding option constant check_error : BOOLEAN := float_check_error;
-- check for errors constant denormalize : BOOLEAN := float_denormalize) return UNRESOLVED_float
Description
Returns y * 2n for integral values of N without computing 2n
- Scalb ( y : UNRESOLVED_float;
-- floating point input N : UNRESOLVED_SIGNED;
-- exponent to add constant round_style : round_type := float_round_style;
-- rounding option constant check_error : BOOLEAN := float_check_error;
-- check for errors constant denormalize : BOOLEAN := float_denormalize) return UNRESOLVED_float
Description
Returns y * 2n for integral values of N without computing 2n
- Logb (x : UNRESOLVED_float) return INTEGER
Description
returns the unbiased exponent of x
- Logb (x : UNRESOLVED_float) return UNRESOLVED_SIGNED
- Nextafter ( x,
y : UNRESOLVED_float;
-- floating point input constant check_error : BOOLEAN := float_check_error;
-- check for errors constant denormalize : BOOLEAN := float_denormalize) return UNRESOLVED_float
Description
returns the next representable neighbor of x in the direction toward y
- Unordered (x,
y : UNRESOLVED_float) return BOOLEAN
Description
Returns TRUE if X is unordered with Y.
- Finite (x : UNRESOLVED_float) return BOOLEAN
- Isnan (x : UNRESOLVED_float) return BOOLEAN
- zerofp ( constant exponent_width : NATURAL := float_exponent_width;
-- exponent constant fraction_width : NATURAL := float_fraction_width) return UNRESOLVED_float
Description
Function to return constants.
- nanfp ( constant exponent_width : NATURAL := float_exponent_width;
-- exponent constant fraction_width : NATURAL := float_fraction_width) return UNRESOLVED_float
- qnanfp ( constant exponent_width : NATURAL := float_exponent_width;
-- exponent constant fraction_width : NATURAL := float_fraction_width) return UNRESOLVED_float
- pos_inffp ( constant exponent_width : NATURAL := float_exponent_width;
-- exponent constant fraction_width : NATURAL := float_fraction_width) return UNRESOLVED_float
- neg_inffp ( constant exponent_width : NATURAL := float_exponent_width;
-- exponent constant fraction_width : NATURAL := float_fraction_width) return UNRESOLVED_float
- neg_zerofp ( constant exponent_width : NATURAL := float_exponent_width;
-- exponent constant fraction_width : NATURAL := float_fraction_width) return UNRESOLVED_float
- zerofp ( size_res : UNRESOLVED_float) return UNRESOLVED_float
Description
size_res versions
- nanfp ( size_res : UNRESOLVED_float) return UNRESOLVED_float
- qnanfp ( size_res : UNRESOLVED_float) return UNRESOLVED_float
- pos_inffp ( size_res : UNRESOLVED_float) return UNRESOLVED_float
- neg_inffp ( size_res : UNRESOLVED_float) return UNRESOLVED_float
- neg_zerofp ( size_res : UNRESOLVED_float) return UNRESOLVED_float
- WRITE ( L : inout LINE;
-- access type (pointer) VALUE : in UNRESOLVED_float;
-- value to write JUSTIFIED : in SIDE := right;
-- which side to justify text FIELD : in WIDTH := 0) return ()
Description
string and textio Functions
writes S:EEEE:FFFFFFFF
- READ (L : inout LINE;
VALUE : out UNRESOLVED_float) return ()
Description
width of field
Reads SEEEEFFFFFFFF, "." and ":" are ignored
- READ (L : inout LINE;
VALUE : out UNRESOLVED_float;
GOOD : out BOOLEAN) return ()
- OWRITE ( L : inout LINE;
-- access type (pointer) VALUE : in UNRESOLVED_float;
-- value to write JUSTIFIED : in SIDE := right;
-- which side to justify text FIELD : in WIDTH := 0) return ()
- OREAD (L : inout LINE;
VALUE : out UNRESOLVED_float) return ()
Description
width of field
Octal read with padding, no separators used
- OREAD (L : inout LINE;
VALUE : out UNRESOLVED_float;
GOOD : out BOOLEAN) return ()
- HWRITE ( L : inout LINE;
-- access type (pointer) VALUE : in UNRESOLVED_float;
-- value to write JUSTIFIED : in SIDE := right;
-- which side to justify text FIELD : in WIDTH := 0) return ()
Description
Hex write with padding, no separators
- HREAD (L : inout LINE;
VALUE : out UNRESOLVED_float) return ()
Description
width of field
Hex read with padding, no separators used
- HREAD (L : inout LINE;
VALUE : out UNRESOLVED_float;
GOOD : out BOOLEAN) return ()
- to_string (value : UNRESOLVED_float) return STRING
Description
returns "S:EEEE:FFFFFFFF"
- to_hstring (value : UNRESOLVED_float) return STRING
Description
Returns a HEX string, with padding
- to_ostring (value : UNRESOLVED_float) return STRING
Description
Returns and octal string, with padding
- from_string ( bstring : STRING;
-- binary string constant exponent_width : NATURAL := float_exponent_width;
constant fraction_width : NATURAL := float_fraction_width) return UNRESOLVED_float
- from_ostring ( ostring : STRING;
-- Octal string constant exponent_width : NATURAL := float_exponent_width;
constant fraction_width : NATURAL := float_fraction_width) return UNRESOLVED_float
- from_hstring ( hstring : STRING;
-- hex string constant exponent_width : NATURAL := float_exponent_width;
constant fraction_width : NATURAL := float_fraction_width) return UNRESOLVED_float
- from_string ( bstring : STRING;
-- binary string size_res : UNRESOLVED_float) return UNRESOLVED_float
- from_ostring ( ostring : STRING;
-- Octal string size_res : UNRESOLVED_float) return UNRESOLVED_float
- from_hstring ( hstring : STRING;
-- hex string size_res : UNRESOLVED_float) return UNRESOLVED_float