Simulation behavior for denormal numbers
Description
Specify the desired behavior for denormal results from arithmetic operations.
Denormal numbers are any non-zero numbers whose magnitude is smaller than the
smallest normalized floating-point number (see realmin
). Some hardware targets
flush denormal results from arithmetic operations to zero. You can emulate this
behavior by setting the parameter to Flush To Zero
(FTZ)
.
Settings
Default:
Gradual Underflow
Gradual Underflow
Denormal numbers are used in the results from arithmetic operations. This setting is supported by all simulation modes.
Flush To Zero (FTZ)
Emulates flush-to-zero behavior for denormal numbers. This setting is supported for Accelerator, SIL, and PIL modes. This setting is not supported during normal mode simulation.
For x86 processors, denormal results from arithmetic operations are set to zero.
For ARM® processors, all denormal numbers are treated as zero, including denormal values used as inputs to arithmetic operations. This behavior is known as denormals-are-zero (DAZ) on x86 processors.
Tips
In a model reference hierarchy, you can simulate a top model using gradual
underflow with any simulation mode. Models referenced by the top model can simulate the
flush-to-zero behavior only if the instance of the referenced model uses an accelerated
simulation mode and has the Simulation behavior for denormal numbers
parameter set to Flush to zero (FTZ)
.
Command-Line Information
Parameter:
DenormalBehavior |
Value:
'GradualUnderflow' |
'FlushToZero' |
Default:
'GradualUnderflow' |
Dependency
This parameter requires a Fixed-Point Designer™ license only when both of these conditions are met:
The
DenormalBehavior
parameter is set to'FlushToZero'
.The model is simulated in Accelerator, SIL, or PIL mode. SIL and PIL simulations require an Embedded Coder® license.
When the DenormalBehavior
parameter is set to
'GradualUnderflow'
for all models in the model hierarchy,
then no license is required.