11. Floating-Point Data Types
Floating-point designs are useful in:
- Scientific applications
- Numerical algorithms
- High-dynamic range data designs
- Statistical modelling
Fixed-point designs often cannot support data with a high dynamic range unless the design explicitly uses a high precision type. Floating-point designs can represent data over a high dynamic range with limited precision. A compact representation makes efficient use of memory and minimizes data widths. The lowest precision type that DSP Builder supports is float16_m10, otherwise known as half-precision float, which occupies 16 bits of storage. It can represent a range between –216 to +216 (exclusive) and non-zero magnitudes as small as 2-14.
Typically, fixed-point designs may include fixed-point types of various bit widths and precisions. When you create fixed-point designs, keep variations in word growth and word precision within acceptable limits. When you create floating-point designs, you must limit rounding error to ensure an accurate result. A floating-point design typically has only one or two floating-point data types.
DSP Builder provides a comprehensive library of elementary mathematical functions with complete support for all floating-point types. Each core is parameterized by precision, clock frequency, and device family.