Signed integer division rounds to
Description
Describe how your compiler for the hardware rounds the result of dividing two signed integers.
Category: Hardware Implementation
Settings
Default:
Zero
Undefined
Choose this option if neither
Zero
norFloor
describes the compiler behavior, or if that behavior is unknown.
Zero
If the quotient is between two integers, the compiler chooses the integer that is closer to zero as the result.
Floor
If the quotient is between two integers, the compiler chooses the integer that is closer to negative infinity.
Tips
To simulate rounding behavior of the C compiler that you use to compile generated code, use the Integer rounding mode parameter for blocks. This setting appears on the Signal Attributes pane of the parameter dialog boxes of blocks that can perform signed integer arithmetic, such as the Product block.
For most blocks, the value of Integer rounding mode completely defines rounding behavior. For blocks that support fixed-point data and the
Simplest
rounding mode, the value of Signed integer division rounds to also affects rounding. For details, see Rounding Modes (Fixed-Point Designer).For more information on how this parameter affects code generation, see Hardware Implementation Options (Simulink Coder).
This table lists the compiler behavior described by the options for this parameter.
N D Ideal N/D Zero Floor Undefined 33
4
8.25
8
8
8
-33
4
-8.25
-8
-9
-8
or-9
33
-4
-8.25
-8
-9
-8
or-9
-33
-4
8.25
8
8
8
or9
Dependency
Selecting a device by using the Device vendor and Device type parameters sets a device-specific value for this parameter.
This parameter is enabled only if you can modify it for the selected hardware.
Command-Line Information
Parameter:
ProdIntDivRoundTo |
Type: string |
Value:
'Floor' | 'Zero' |
'Undefined' |
Default:
'Zero' |
Recommended settings
Application | Setting |
---|---|
Debugging | No impact for simulation or
during development.Undefined for
production code generation. |
Traceability | No impact for simulation or
during development.Zero or
Floor for production code generation. |
Efficiency | No impact for simulation or
during development.Zero for production
code generation. |
Safety precaution | No
recommendation for simulation
without code generation. |
See Also
Hardware Implementation Options (Simulink Coder)
Specifying Production Hardware Characteristics (Simulink Coder)