Version 5.0 (R14) Simulink Fixed Point Software

This table summarizes what's new in Version 5.0 (R14):

New Features and ChangesVersion Compatibility ConsiderationsFixed Bugs and Known ProblemsRelated Documentation at Web Site
Yes
Details below
Yes—Details labeled as Compatibility Considerations, below. See also Summary.Yes
Details
No

New features and changes introduced in this version are

Product Restructuring

The Fixed-Point Blockset has been replaced by two new products, Fixed-Point Toolbox™ and Simulink Fixed Point. This product restructuring reflects the broad expansion of fixed-point capabilities in the MATLAB and Simulink software. The Fixed-Point Toolbox product introduces fixed-point operations to the MATLAB language, and the Simulink Fixed Point product enables fixed-point capabilities across much of the Simulink product family.

The Simulink Fixed Point software requires the Fixed-Point Toolbox software. If you are on maintenance, you will automatically receive both of these new products in place of the Fixed-Point Blockset software.

Fixed-Point Blocks Fully Integrated into Simulink Software

All former Fixed-Point Blockset blocks have been moved into the Simulink block libraries with this release. Each of these blocks, as well as all other Simulink blocks, can be used with or without the Simulink Fixed Point software installed. You can share models with any fixed-point and floating-point Simulink blocks among the users in your organization, whether or not they have the Simulink Fixed Point software installed. However, a Simulink Fixed Point software license is required to take full advantage of the fixed-point features of Simulink blocks. For more information, refer to Sharing Fixed-Point Models in the Simulink Fixed Point User's Guide.

The following table lists all of the blocks in the Fixed-Point Blockset software as of Release 13. It tells you the current name of the block in the Simulink software and the Simulink library in which you can find the block. Most blocks have the same name as in the last release; however, some block names have changed.

Former Fixed-Point Blockset Block

Former Fixed-Point Blockset Library

Simulink Block

Simulink Library

Abs

Math

Abs

Math Operations

Accumulator

Calculus

Discrete-Time Integrator

Discrete

Accumulator Resettable

Calculus

Discrete-Time Integrator

Discrete

Accumulator Resettable Limited

Calculus

Discrete-Time Integrator

Discrete

Add

Math

Add

Math Operations

Bit Clear

Bits

Bit Clear

Logic and Bit Operations

Bit Set

Bits

Bit Set

Logic and Bit Operations

Bitwise Operator

Bits

Bitwise Operator

Logic and Bit Operations

Compare To Constant

Logic & Comparison

Compare To Constant

Logic and Bit Operations

Compare To Zero

Logic & Comparison

Compare To Zero

Logic and Bit Operations

Constant

Sources

Constant

Sources

Conversion

Data Type

Data Type Conversion

Signal Attributes

Conversion Inherited

Data Type

Data Type Conversion Inherited

Signal Attributes

Cosine

Lookup

Cosine

Lookup Tables

Counter Free

Sources

Counter Free-Running

Sources

Counter Limited

Sources

Counter Limited

Sources

Data Type Duplicate

Data Type

Data Type Duplicate

Signal Attributes

Data Type Propagation

Data Type

Data Type Propagation

Signal Attributes

Dead Zone

Nonlinear

Dead Zone

Discontinuities

Dead Zone Dynamic

Nonlinear

Dead Zone Dynamic

Discontinuities

Decrement Real World

Math

Decrement Real World

Additional Math & Discrete / Additional Math: Increment - Decrement

Decrement Stored Integer

Math

Decrement Stored Integer

Additional Math & Discrete / Additional Math: Increment - Decrement

Decrement Time To Zero

Math

Decrement Time To Zero

Additional Math & Discrete / Additional Math: Increment - Decrement

Decrement To Zero

Math

Decrement To Zero

Additional Math & Discrete / Additional Math: Increment - Decrement

Derivative

Calculus

Discrete Derivative

Discrete

Detect Change

Edge Detect

Detect Change

Logic and Bit Operations

Detect Decrease

Edge Detect

Detect Decrease

Logic and Bit Operations

Detect Fall Negative

Edge Detect

Detect Fall Negative

Logic and Bit Operations

Detect Fall Nonpositive

Edge Detect

Detect Fall Nonpositive

Logic and Bit Operations

Detect Increase

Edge Detect

Detect Increase

Logic and Bit Operations

Detect Rise Nonnegative

Edge Detect

Detect Rise Nonnegative

Logic and Bit Operations

Detect Rise Positive

Edge Detect

Detect Rise Positive

Logic and Bit Operations

Difference

Calculus

Difference

Discrete

Divide

Math

Divide

Math Operations

Dot Product

Math

Dot Product

Math Operations

Filter Direct Form I

Filters

This block is obsolete.

 

Filter Direct Form I Time Varying

Filters

This block is obsolete.

 

Filter Direct Form II

Filters

Transfer Fcn Direct Form II

Additional Math & Discrete / Additional Discrete

Filter Direct Form II Time Varying

Filters

Transfer Fcn Direct Form II Time Varying

Additional Math & Discrete / Additional Discrete

Filter First Order

Filters

Transfer Fcn First Order

Discrete

Filter Lead or Lag

Filters

Transfer Fcn Lead or Lag

Discrete

Filter Real Zero

Filters

Transfer Fcn Real Zero

Discrete

FIR

Filters

Weighted Moving Average

Discrete

Gain

Math

Gain

Math Operations

Gateway In

Data Type

Data Type Conversion

Signal Attributes

Gateway In Inherited

Data Type

Data Type Conversion Inherited

Signal Attributes

Gateway Out

Data Type

Data Type Conversion

Signal Attributes

Increment Real World

Math

Increment Real World

Additional Math & Discrete / Additional Math: Increment - Decrement

Increment Stored Integer

Math

Increment Stored Integer

Additional Math & Discrete / Additional Math: Increment - Decrement

Index Vector

Select

Index Vector

Signal Routing

Integer Delay

Delays & Holds

Integer Delay

Discrete

Integrator Backward

Calculus

Discrete-Time Integrator

Discrete

Integrator Backward Resettable

Calculus

Discrete-Time Integrator

Discrete

Integrator Backward Resettable Limited

Calculus

Discrete-Time Integrator

Discrete

Integrator Forward

Calculus

Discrete-Time Integrator

Discrete

Integrator Forward Resettable

Calculus

Discrete-Time Integrator

Discrete

Integrator Forward Resettable Limited

Calculus

Discrete-Time Integrator

Discrete

Integrator Trapezoidal

Calculus

Discrete-Time Integrator

Discrete

Integrator Trapezoidal Resettable

Calculus

Discrete-Time Integrator

Discrete

Integrator Trapezoidal Resettable Limited

Calculus

Discrete-Time Integrator

Discrete

Interval Test

Logic & Comparison

Interval Test

Logic and Bit Operations

Interval Test Dynamic

Logic & Comparison

Interval Test Dynamic

Logic and Bit Operations

Logical Operator

Logic & Comparison

Logical Operator

Logic and Bit Operations

Lookup Table

Lookup

Lookup Table

Lookup Tables

Lookup Table Dynamic

Lookup

Lookup Table Dynamic

Lookup Tables

Lookup Table (2-D)

Lookup

Lookup Table (2-D)

Lookup Tables

Matrix Gain

Math

Gain

Math Operations

MinMax

Math

MinMax

Math Operations

MinMax Running Resettable

Math

MinMax Running Resettable

Math Operations

Multiply

Math

Product

Math Operations

Multiply Matrix

Math

Product

Math Operations

Multi-Port Switch

Select

Multiport Switch

Signal Routing

Product

Math

Product

Math Operations

Product of Elements

Math

Product of Elements

Math Operations

Product of Elements Inverted

Math

Product of Elements

Math Operations

Rate Limiter

Nonlinear

Rate Limiter

Discontinuities

Rate Limiter Dynamic

Nonlinear

Rate Limiter Dynamic

Discontinuities

Relational Operator

Logic & Comparison

Relational Operator

Logic and Bit Operations

Relay

Nonlinear

Relay

Discontinuities

Repeating Sequence Interpolated

Sources

Repeating Sequence Interpolated

Sources

Repeating Sequence Stair

Sources

Repeating Sequence Stair

Sources

Sample Rate Probe

Calculus

Weighted Sample Time

Signal Attributes

Sample Time Add

Calculus

Weighted Sample Time

Signal Attributes

Sample Time Divide

Calculus

Weighted Sample Time

Signal Attributes

Sample Time Multiply

Calculus

Weighted Sample Time

Signal Attributes

Sample Time Probe

Calculus

Weighted Sample Time

Signal Attributes

Sample Time Subtract

Calculus

Weighted Sample Time

Signal Attributes

Saturation

Nonlinear

Saturation

Discontinuities

Saturation Dynamic

Nonlinear

Saturation Dynamic

Discontinuities

Scaling Strip

Data Type

Data Type Scaling Strip

Signal Attributes

Shift Arithmetic

Bits

Shift Arithmetic

Logic and Bit Operations

Sign

Nonlinear

Sign

Math Operations

Sine

Lookup

Sine

Lookup Tables

State-Space

Filters

Fixed-Point State-Space

Additional Math & Discrete / Additional Discrete

Subtract

Math

Subtract

Math Operations

Sum

Math

Sum

Math Operations

Sum of Elements

Math

Sum of Elements

Math Operations

Sum of Elements Negated

Math

Sum of Elements

Math Operations

Switch

Select

Switch

Signal Routing

Tapped Delay

Delays & Holds

Tapped Delay

Discrete

Unary Minus

Math

Unary Minus

Math Operations

Unit Delay

Delays & Holds

Unit Delay

Discrete

Unit Delay Enabled

Delays & Holds

Unit Delay Enabled

Additional Math & Discrete / Additional Discrete

Unit Delay Enabled External IC

Delays & Holds

Unit Delay Enabled External IC

Additional Math & Discrete / Additional Discrete

Unit Delay Enabled Resettable

Delays & Holds

Unit Delay Enabled Resettable

Additional Math & Discrete / Additional Discrete

Unit Delay Enabled Resettable External IC

Delays & Holds

Unit Delay Enabled Resettable External IC

Additional Math & Discrete / Additional Discrete

Unit Delay External IC

Delays & Holds

Unit Delay External IC

Additional Math & Discrete / Additional Discrete

Unit Delay Resettable

Delays & Holds

Unit Delay Resettable

Additional Math & Discrete / Additional Discrete

Unit Delay Resettable External IC

Delays & Holds

Unit Delay Resettable External IC

Additional Math & Discrete / Additional Discrete

Unit Delay With Preview Enabled

Delays & Holds

Unit Delay With Preview Enabled

Additional Math & Discrete / Additional Discrete

Unit Delay With Preview Enabled Resettable

Delays & Holds

Unit Delay With Preview Enabled Resettable

Additional Math & Discrete / Additional Discrete

Unit Delay With Preview Enabled Resettable External RV

Delays & Holds

Unit Delay With Preview Enabled Resettable External RV

Additional Math & Discrete / Additional Discrete

Unit Delay With Preview Resettable

Delays & Holds

Unit Delay With Preview Resettable

Additional Math & Discrete / Additional Discrete

Unit Delay Preview Resettable External RV

Delays & Holds

Unit Delay With Preview Resettable External RV

Additional Math & Discrete / Additional Discrete

Wrap To Zero

Nonlinear

Wrap To Zero

Discontinuities

Zero-Order Hold

Delays & Holds

Zero-Order Hold

Discrete

API for User-Written Fixed-Point S-Functions

You can now write your own Simulink C S-functions that directly handle fixed-point data types with a newly published API. For more information, refer to Writing Fixed-Point S-Functions in the Simulink Fixed Point User's Guide.

Fixed-Point Advisor

The Simulink Fixed Point software now includes Model Advisor checks to help you to configure your fixed-point models to achieve a more efficient design and optimize your generated code. To use the Model Advisor to check your fixed-point models:

  1. Select Model Advisor from the Tools menu of the model you wish to analyze. The Model Advisor appears in the Documents window on the MATLAB desktop.

  2. Click Select All to enable all Model Advisor checks. For fixed-point code generation, the most important check boxes to select are Identify questionable fixed-point operations, Identify blocks that generate expensive saturation and rounding code, and Check the Hardware Implementation.

  3. Click Check Model. Any tips for improving the efficiency of your fixed-point model appear in the browser.

Arithmetic with Non-Zero Bias Fully Supported

Code generation has been enhanced to generate bit-true fixed-point code that supports multiplication, division, and reciprocal for signal and parameters with non-zero bias. Previously, these cases lead to code generation errors. Code will now be generated for these cases, and that code will make efficient use of just C integer operations.

Generated Code for Lookup Tables Uses Less ROM

In prior releases, the size of the generated code for models that contained lookup tables with similar attributes was larger than necessary. Such lookup tables produced similar algorithms that appeared throughout the code multiple times. In this release, some common algorithms have been placed into functions which are called by the lookup tables. This enables the same code to be reused multiple times. The overall size of the generated code has been reduced through this enhancement.

Functions Moved to Simulink Software

The following former Fixed-Point Blockset functions are now installed with the Simulink software:

Obsolete Functions

The functions fixpt_restore_links and fpupdate are obsolete.

Compatibility Considerations

These functions are no longer needed to update models.

Major Bug Fixes

This section summarizes the major bug fixes introduced in Version 5.0 of the Simulink Fixed Point software.

Simulation Error for 65-Bit+ Multiplication Corrected

In prior releases, fixed-point multiplication could produce the wrong answer under certain simulation conditions. For this error to occur, one input had to have at least 33 bits and the other input at least 32 bits. The correct answer had to be negative, and some additional numerical criteria had to be met. This error could only occur in simulation; it never occurred in generated code. This error has been fully corrected for this release.

Fixed-Point Settings Interface Usable for Large Fonts

In the previous release, the Fixed-Point Settings interface was unusable if your system setup defined large default system fonts. When trying to open the dialog, an error would be reported and the dialog would not appear. The creation of the dialog has now been made robust to large fonts, and this problem is solved.

Lookup Table (2-D) Code Generation Bug Fixed

In a previous release, code generation would error out for the Lookup Table (2-D) block if the input data type had non-zero bias or non-one fractional slope, and the corresponding breakpoints were evenly spaced. This problem has been fixed.

  


 © 1984-2008- The MathWorks, Inc.    -   Site Help   -   Patents   -   Trademarks   -   Privacy Policy   -   Preventing Piracy   -   RSS