| Contents | Index |
This table summarizes what's new in Version 6.4 (R2010b):
| New Features and Changes | Version Compatibility Considerations | Fixed Bugs and Known Problems |
|---|---|---|
| Yes Details below | Yes Summary | Bug
Reports Includes fixes |
New features and changes introduced in this version are
New Code Generation Optimization Uses Specified Minimum and Maximum Values
New Data Type Override Capability to Selectively Override Floating-Point or Fixed-Point Types
New Option to Turn Off Data Type Override for Individual Data Types
Improved Code Generation Efficiency for Saturating Data Type Conversions
Saturation Block Supports Logging of Minimum and Maximum Values for the Fixed-Point Tool
Simulink.Signal and Simulink.Parameter Objects Now Obey Model Data Type Override Settings
In R2010b, the Simulink Fixed Point software provides a new code generation optimization that uses specified minimums and maximums to eliminate dead code and unnecessary mathematical operations. To enable this optimization, select the new Optimize using specified minimum and maximum values parameter on the Optimization pane of the Configuration Parameters dialog box.
Note This optimization is for ERT-based targets only and requires a Real-Time Workshop® Embedded Coder™ license. |
A demo shows how this optimization works.
For more information, see Optimize Generated Code Using Specified Minimum and Maximum Values.
In R2010b, the Fixed-Point Tool provides a new Data type override applies to option. You can use this option to selectively apply data type override settings to all numeric, floating-point or fixed-point data types. Previously, data type override settings always applied to all data types. This ability provides greater control over data type override settings and helps you pinpoint the cause of fixed-point issues.
For more information, see fxptdlg in the Simulink documentation.
You can now turn off data type override for individual data types using one of the following methods:
Setting the new DataTypeOverride property on Simulink.NumericType or embedded.numerictype objects to Off.
Setting the new Data type override parameter on the Data Type Assistant to Off.
Using the fixdt function and setting the DataTypeOverride property to Off. For example, fixdt(1,16,2, 'DataTypeOverride', 'Off').
You can specify one of the following options when using numeric types in your Simulink model:
Inherit — When you select this option, the data type inherits the data type override setting from its context, that is, from the block, signal or Stateflow® chart in Simulink that is using the data type. This is the default setting of this parameter.
Off — When you select this option, the specified data type is used regardless of the data type override setting. The data type ignores the data type override setting of its context.
The ability to turn off data type override for an individual data type provides greater control over the data types in your model when you apply data type override. For example, you can use this option to ensure that data types meet the requirements of downstream blocks.
For more information, see Simulink.NumericType, fixdt, and Using the Data Type Assistant in the Simulink documentation.
The Fixed-Point Advisor can now convert models that contain floating-point inheritance blocks, such as Discrete Filter, Transfer Fcn, and other Simulink, Communications Blockset™, Signal Processing Blockset™, and Video and Image Processing Blockset™ blocks.
What is a floating-point inheritance block?
The Fixed-Point Advisor can now remove output inheritance and propose data types for floating-point inheritance blocks.
For more information, see Remove output data type inheritance in the Fixed-Point Advisor Reference.
In R2010b, the Simulink Fixed Point software has improved generated code for fixed-point casts to generate smaller, more efficient cast expressions.
The following example demonstrates the difference between the generated code with and without this enhancement. The code generated with the enhancement uses fewer temporary variables, and avoids unnecessary implicit downcasts and upcasts.
| Code Generated Without Enhancement | Code Generated With Enhancement |
|---|---|
int32_T tmp;
int16_T tmp_0;
tmp = U1 + U2;
if (tmp > 32767) {
tmp_0 = MAX_int16_T;
} else if (tmp <= -32768) {
tmp_0 = MIN_int16_T;
} else {
tmp_0 = (int16_T)tmp;
}
Y = U3 * tmp_0;
| int32_T tmp;
tmp = U1 + U2;
if (tmp > 32767) {
tmp = 32767;
} else {
if (tmp <= -32768) {
tmp = -32768;
}
}
Y = U3 * tmp;
|
When you set Fixed-point instrumentation mode to Minimums, maximums and overflows in the Fixed-Point Tool, the Saturation block logs minimum and maximum values. Previously, this block did not support logging of minimum or maximum values.
The names of the following Fixed-Point Tool options have been updated:
| Fixed-Point Tool Parameter | Old Option Name | New Option Name |
|---|---|---|
| Data type override | Force off | Off |
| Scaled doubles | Scaled double | |
| True doubles | Double | |
| True singles | Single |
For more information, see fxptdlg in the Simulink documentation.
The Simulink.NumericType class now has the following methods:
isboolean
isdouble
isfixed
isfloat
isscalingbinarypoint
isscalingslopebias
isscalingunspecified
issingle
In R2010b, because overriding boolean data types does not affect quantization, data type override no longer applies to the boolean data type.
In previous releases, data type override did apply to the boolean data type, sometimes causing update diagram errors if downstream blocks did not accept the override type.
You can no longer override the boolean data type in your model. If you want to override this type, you must change it to a type that can represent boolean data, such as, uint8.
Simulink.Signal and Simulink.Parameter objects now honor model-level data type override settings. This capability allows you to share fixed-point models that use Simulink.Signal or Simulink.Parameter objects with users who do not have a Simulink Fixed Point license.
To simulate a model without using Simulink Fixed Point, use the Fixed-Point Tool to set the model-level Data type override setting to Double or Single and the Data type override applies to parameter to All numeric types.
If you use fi objects or embedded numeric data types in your model, set the fipref DataTypeOverride property to TrueDoubles or TrueSingles and the DataTypeOverrideAppliesTo property to All numeric types to match the model-level settings.
For more information, see fxptdlg in the Simulink documentation.
The Summarize blocks with locked scaling task has been renamed Review locked data type settings, and is now the first task in the Prepare for Data Typing and Scaling folder.
For more information, see Review locked data type settings in the Fixed-Point Advisor Reference.
The following demo has been added:
| Demo... | Shows How You Can ... |
|---|---|
| Fixed-Point Optimizations Using Specified Minimum and Maximum Values | Optimize fixed-point operations in the generated code using the minimum and maximum values specified in a model. |
![]() | Version 6.5 (R2011a) Simulink Fixed Point Software | Version 6.3 (R2010a) Simulink Fixed Point Software | ![]() |

Learn more about Simulink through this collection of videos, articles, technical literature and the Getting Started with Simulink Guide.
| © 1984-2012- The MathWorks, Inc. - Site Help - Patents - Trademarks - Privacy Policy - Preventing Piracy - RSS |