Automated Fixed-Point Conversion in MATLAB

Conversion to fixed point using the Fixed-Point Converter app

The Fixed-Point Converter app enables you to convert floating-point MATLAB® code to fixed-point MATLAB code.

Use fiaccel to convert floating-point MATLAB code to fixed-point MATLAB code at the command line.

Apps

Fixed-Point ConverterConvert MATLAB code to fixed point

Functions

fiaccelAccelerate fixed-point code and convert floating-point MATLAB code to fixed-point MATLAB code
coder.configCreate configuration object for fixed-point or single-precision conversion
coder.mexconfigCode acceleration configuration object
coder.approximationCreate function replacement configuration object
coder.allowpcodeControl code generation from protected MATLAB files
coder.constFold expressions into constants in generated code
coder.extrinsicDeclare extrinsic functions
coder.inlineControl inlining in generated code
coder.loadLoad compile-time constants from MAT-file or ASCII file into caller workspace
coder.newtypeCreate a coder.Type object to represent the type of an entry-point function input
coder.nullcopyDeclare uninitialized variables in code generation
coder.resizeResize coder.Type object
coder.targetDetermine if code generation target is specified target
coder.typeofCreate coder.Type object to represent the type of an entry-point function input
coder.unrollUnroll for-loop by making a copy of the loop body for each loop iteration
coder.varsizeDeclare variable-size data

Classes

coder.MexConfigCode acceleration configuration object for use with fiaccel
coder.FixptConfigFloating-point to fixed-point conversion configuration object
coder.ArrayTypeRepresent set of MATLAB arrays
coder.ConstantRepresent set containing one MATLAB value
coder.EnumTypeRepresent set of MATLAB enumerations
coder.FiTypeRepresent set of MATLAB fixed-point arrays
coder.PrimitiveTypeRepresent set of logical, numeric, or char arrays
coder.StructTypeRepresent set of MATLAB structure arrays
coder.TypeRepresent set of MATLAB values

Topics

Automated Fixed-Point Conversion Workflow

Decide Which Workflow is Right for Your Application

Learn the benefits of each conversion workflow to help you decide which one best fits your needs.

Fixed-Point Conversion Workflows

Learn which fixed-point conversion method best matches your end goal and your level of fixed-point expertise.

Automated Fixed-Point Conversion

Using the Fixed-Point Converter app for automated fixed-point conversion.

Automated Fixed-Point Conversion Best Practices

Generate fixed-point code according to best practices.

Propose Data Types Based on Simulation Ranges

Propose fixed-point data types based on simulation ranges using the Fixed-Point Converter app.

Propose Data Types Based on Derived Ranges

Propose fixed-point data types based on static ranges using the Fixed-Point Converter app.

Convert Fixed-Point Conversion Project to MATLAB Scripts

Use project settings for fixed-point conversion at the command line.

Propose Fixed-Point Types

Specify Type Proposal Options

Specify options when proposing types for automated fixed-point conversion.

View and Modify Variable Information

View and modify variable information for fixed-point conversion.

Detect Dead and Constant-Folded Code

Learn how the app detects dead code or code that is constant folded during simulation of your test file.

Convert to Fixed Point

Generated Fixed-Point Code

Avoid issues with generated fixed-point code.

Replacing Functions Using Lookup Table Approximations

Generate lookup table approximations to replace custom functions or functions that are not supported for fixed point.

Replace the exp Function with a Lookup Table

Replace a function with a lookup table approximation in fixed-point code generated with the Fixed-Point Converter app.

Replace a Custom Function with a Lookup Table

Replace a custom function with a lookup table approximation function by using the Fixed-Point Converter app.

Verify Fixed-Point Conversion

Visualize Differences Between Floating-Point and Fixed-Point Results

Use a custom plot function to compare the behavior of the generated fixed-point code against the behavior of the original floating-point MATLAB code.

Enable Plotting Using the Simulation Data Inspector

Inspect and compare floating-point and fixed-point logged input and output data.

Custom Plot Functions

Visualize numerical differences during fixed-point conversion.

Detect Overflows

Detect overflows using the app.

Supported Language Features

MATLAB Language Features Supported for Automated Fixed-Point Conversion

Learn which language features are and are not supported for automated fixed-point conversion.

Convert Code Containing Global Variables to Fixed-Point

Convert MATLAB code using global variables to fixed-point using the app.

Convert Code Containing Structures to Fixed Point

Convert a MATLAB algorithm containing structures to fixed point using the Fixed-Point Converter app.

Generate Fixed-Point MATLAB Code for Multiple Entry-Point Functions

Generate fixed-point code for multiple entry-point functions using the Fixed-Point Converter app.

Fixed-Point Code for MATLAB Classes

Use supported constructs and coding style best practices for fixed-point conversion of MATLAB classes.

Convert Code Containing Global Data to Fixed Point

Convert MATLAB code using global variables to fixed-point programmatically.

Convert dsp.FIRFilter Object to Fixed-Point Using the Fixed-Point Converter App

Convert a dsp.FIRFilter System object™, which filters a high-frequency sinusoid signal, to fixed-point using the Fixed-Point Converter app.

System Objects Supported by Fixed-Point Converter App

Use the Fixed-Point Converter app to automatically propose and apply data types for commonly used system objects.

Command Line Workflow

Propose Data Types Based on Simulation Ranges

Propose fixed-point data types based on simulation ranges using the fiaccel function.

Propose Data Types Based on Derived Ranges

Propose fixed-point data types based on static ranges using the fiaccel function.

Detect Overflows

Detect overflows at the command line.

Replace the exp Function with a Lookup Table

Replace a function with a lookup table approximation in fixed-point code generated with the fiaccel function.

Replace a Custom Function with a Lookup Table

Replace a custom function with a lookup table approximation function by using the fiaccel function.

Enable Plotting Using the Simulation Data Inspector

Inspect and compare floating-point and fixed-point logged input and output data.

Visualize Differences Between Floating-Point and Fixed-Point Results

Use a custom plot function to compare the behavior of the generated fixed-point code against the behavior of the original floating-point MATLAB code.

Troubleshooting

Generated Fixed-Point Code

Avoid issues with generated fixed-point code.

Data Type Issues in Generated Code

Highlight potential data type issues in report.

Debug Numerical Issues in Fixed-Point Conversion Using Variable Logging

Learn how to debug your fixed-point code when you need more than out of the box conversion.

Why Does the Fixed-Point Converter App Not Propose Data Types for System Objects?

Troubleshoot missing data type proposals for System objects.

Slow Operations in the Fixed-Point Converter App

Determine whether code generation readiness screening is causing slow operations in the app.