Implement discrete transfer function
Simulink / Discrete
HDL Coder / Discrete
HDL Coder / HDL Floating Point Operations
The Discrete Transfer Fcn block implements the z-transform transfer function as follows:
where m+1 and n+1 are the number of numerator and denominator coefficients, respectively. num and den contain the coefficients of the numerator and denominator in descending powers of z. num can be a vector or matrix, while den must be a vector. The order of the denominator must be greater than or equal to the order of the numerator.
Specify the coefficients of the numerator and denominator polynomials in descending powers of z. This block lets you use polynomials in z to represent a discrete system, a method that control engineers typically use. Conversely, the Discrete Filter block lets you use polynomials in z-1 (the delay operator) to represent a discrete system, a method that signal processing engineers typically use. The two methods are identical when the numerator and denominator polynomials have the same length.
The Discrete Transfer Fcn block applies the z-transform transfer function to each independent channel of the input. The Input processing parameter allows you to specify whether the block treats each column of the input as an individual channel (frame-based processing) or each element of the input as an individual channel (sample-based processing). To perform frame-based processing, you must have a DSP System Toolbox™ license.
Use the Initial states parameter to specify initial filter states. To determine the number of initial states you must specify and how to specify them, use the following tables.
Frame-Based Processing
Input | Number of Channels | Valid Initial States (Dialog Box) | Valid Initial States (Input Port) |
---|---|---|---|
| 1 |
|
|
| N |
|
|
Sample-Based Processing
Input | Number of Channels | Valid Initial States (Dialog Box) | Valid Initial States (Input Port) |
---|---|---|---|
| 1 |
|
|
| N |
|
|
| K × N |
|
|
When the Initial states is a scalar, the block initializes all filter
states to the same scalar value. To initialize all states to zero, enter
0
. When the Initial states is a vector
or a matrix, each vector or matrix element specifies a unique initial state for a
corresponding delay element in a corresponding channel:
The vector length must equal the number of delay elements in the
filter, M = max(number of zeros, number of
poles)
.
The matrix must have the same number of rows as the number of delay
elements in the filter, M = max(number of zeros, number of
poles)
. The matrix must also have one column for each
channel of the input signal.
The following example shows the relationship between the initial filter output and the initial input and state. Given an initial input u1, the first output y1 is related to the initial state [x1, x2] and initial input by as follows:
u
— Input signalInput signal, specified as a scalar, vector, or matrix.
Data Types: single
| double
| int8
| int16
| int32
| fixed point
Num
— Numerator coefficientsCoefficients of the numerator polynomial specified as a vector or matrix in descending powers of z. Use a row vector to specify the coefficients for a single numerator polynomial. Use a matrix to specify coefficients for multiple filters to be applied to the same input. Each matrix row represents a set of filter taps. The order of the denominator must be greater than or equal to the order of the numerator.
To enable this port, set Numerator Source to
Input port
.
Numerator and denominator coefficients must have the same complexity. They can have different word lengths and fraction lengths.
Data Types: single
| double
| int8
| int16
| int32
| fixed point
Den
— Denominator coefficientsCoefficients of the denominator polynomial specified as a vector in descending powers of z. Use a row vector to specify the coefficients for a single denominator polynomial. Use a matrix to specify coefficients for multiple filters to be applied to the same input. Each matrix row represents a set of filter taps. The order of the denominator must be greater than or equal to the order of the numerator.
To enable this port, set Denominator Source
to Input port
.
Numerator and denominator coefficients must have the same complexity. They can have different word lengths and fraction lengths.
Data Types: single
| double
| int8
| int16
| int32
| fixed point
External reset
— External reset signalExternal reset signal, specified as a scalar. When the specified trigger event occurs, the block resets the states to their initial conditions.
Tip
The icon for this port changes based on the value of the External reset parameter.
To enable this port, set External reset to
Rising
,
Falling
,
Either
,
Level
, or Level
hold
.
The reset signal must be a scalar of type single, double, Boolean, or integer.
Fixed-point data types, except for ufix1
, are not
supported.
Data Types: single
| double
| Boolean
| int8
| int16
| int32
| fixed point
x0
— Initial statesInitial states, specified as a scalar, vector, or matrix. For more information about specifying states, see Specifying Initial States. States are complex when either the input or the coefficients are complex.
To enable this port, set Initial states
Source to Input
port
.
Data Types: single
| double
| int8
| int16
| int32
| fixed point
Port_1
— Output signalOutput signal specified as a scalar, vector, or matrix.
Data Types: single
| double
| int8
| int16
| int32
| fixed point
Numerator Source
— Source of numerator coefficientsDialog
(default) | Input port
Specify the source of the numerator coefficients as
Dialog
or Input
port
.
Block Parameter:
NumeratorSource |
Type: character vector |
Values:
'Dialog' | 'Input port' |
Default:
'Dialog'
|
Numerator Value
— Numerator coefficients[1]
(default) | scalar | vector | matrixNumerator coefficients of the discrete transfer function. To specify the coefficients,
set the Source to
Dialog
. Then, enter the coefficients in
Value as descending powers of
z. Use a row vector to specify the coefficients
for a single numerator polynomial. Use a matrix to specify coefficients
for multiple filters to be applied to the same input. Each matrix row
represents a set of filter taps.
To enable this parameter, set the Numerator
Source to Dialog
.
Block Parameter:
Numerator |
Type: character vector |
Values: scalar | vector | matrix |
Default:
'[1]'
|
Denominator Source
— Source of denominator coefficientsDialog
(default) | Input port
Specify the source of the denominator coefficients as
Dialog
or Input
port
.
Block Parameter:
DenominatorSource |
Type: character vector |
Values:
'Dialog' | 'Input port' |
Default:
'Dialog'
|
Denominator Value
— Denominator coefficients[1 0.5]
(default) | scalar | vector | matrixDenominator coefficients of the discrete transfer function. To specify
the coefficients, set the Source to
Dialog
. Then, enter the coefficients in
Value as descending powers of
z. Use a row vector to specify the coefficients
for a single denominator polynomial. Use a matrix to specify
coefficients for multiple filters to be applied to the same input. Each
matrix row represents a set of filter taps.
To enable this parameter, set the Denominator
Source to Dialog
.
Block Parameter:
Denominator |
Type: character vector |
Values: scalar | vector | matrix |
Default:
'[1 0.5]'
|
Initial states Source
— Source of initial statesDialog
(default) | Input port
Specify the source of the initial states as
Dialog
or Input
port
.
Block Parameter:
InitialStatesSource |
Type: character vector |
Values:
'Dialog' | 'Input port' |
Default:
'Dialog'
|
Initial states Value
— Initial filter states0
(default) | scalar | vector | matrixSpecify the initial filter states as a scalar, vector, or matrix. To learn how to specify initial states, see Specifying Initial States.
To enable this parameter, set Initial states
Source to Dialog
.
Block Parameter:
InitialStates |
Type: character vector |
Values: scalar | vector | matrix |
Default:
'0'
|
External reset
— External state resetNone
(default) | Rising
| Falling
| Either
| Level
| Level hold
Specify the trigger event to use to reset the states to the initial conditions.
Reset Mode | Behavior |
---|---|
None | No reset |
Rising | Reset on a rising edge |
Falling | Reset on a falling edge |
Either | Reset on either a rising or falling edge |
Level | Reset in either of these cases:
|
Level hold | Reset when the reset signal is nonzero at the current time step |
Block Parameter:
ExternalReset |
Type: character vector |
Values: 'None' |
'Rising' | 'Falling' |
'Either' | 'Level' | 'Level
hold' |
Default: 'None' |
Input processing
— Sample- or frame-based processingElements as channels (sample
based)
(default) | Columns as channels (frame based)
Specify whether the block performs sample- or frame-based processing.
Elements as channels (sample based)
— Process each element of the input as an independent
channel.
Columns as channels (frame based)
— Process each column of the input as an independent
channel.
Note
Frame-based processing requires a DSP System Toolbox license.
For more information, see Sample- and Frame-Based Concepts (DSP System Toolbox).
Block Parameter:
InputProcessing |
Type: character vector |
Values:
'Elements as channels (sample based)' | 'Columns as
channels (frame based)' |
Default:
'Elements as channels (sample
based)' |
Optimize by skipping divide by leading denominator coefficient (a0)
— Skip divide by a0off
(default) | on
Select when the leading denominator coefficient, a0, equals 1. This parameter optimizes your code.
When you select this check box, the block does not perform a divide-by-a0 either in simulation or in the generated code. An error occurs if a0 is not equal to one.
When you clear this check box, the block is fully tunable during simulation, and performs a divide-by-a0 in both simulation and code generation.
Block Parameter:
a0EqualsOne
|
Type: character vector |
Values:
'off' | 'on' |
Default:
'off'
|
Sample time (-1 for inherited)
— Interval between samples-1
(default) | scalar | vectorSpecify the time interval between samples. To inherit the sample time,
set this parameter to -1
. For more information, see
Specify Sample Time.
Block Parameter:
SampleTime |
Type: character vector |
Values: scalar | vector |
Default:
'-1' |
State
— State data typeInherit: Same as input
(default) | int8
| int16
| int32
| int64
| fixdt(1,16,0)
| <data type expression>
Specify the state data type. You can set it to:
A rule that inherits a data type, for example,
Inherit: Same as input
A built-in integer, for example,
int8
A data type object, for example, a
Simulink.NumericType
object
An expression that evaluates to a data type, for example,
fixdt(1,16,0)
Click the Show data type assistant
button to display the Data Type Assistant,
which helps you set the data type attributes. For more information, see Specify Data Types Using Data Type Assistant.
Numerator coefficients
— Numerator coefficient data typeInherit: Inherit via internal
rule
(default) | int8
| int16
| int32
| int64
| fixdt(1,16)
| fixdt(1,16,0)
| <data type expression>
Specify the numerator coefficient data type. You can set it to:
A rule that inherits a data type, for example,
Inherit: Inherit via internal
rule
A built-in integer, for example,
int8
A data type object, for example, a
Simulink.NumericType
object
An expression that evaluates to a data type, for example,
fixdt(1,16,0)
Click the Show data type assistant
button to display the Data Type Assistant,
which helps you set the data type attributes. For more information, see Specify Data Types Using Data Type Assistant.
Block Parameter:
NumCoeffDataTypeStr |
Type: character vector |
Values:
'Inherit: Inherit via internal rule' | 'int8' | 'int16'
| 'int32' | 'int64' | 'fixdt(1,16)' | 'fixdt(1,16,0)' |
'<data type expression>' |
Default:
'Inherit: Inherit via internal rule' |
Numerator coefficient minimum
— Minimum value of numerator coefficients[]
(default) | scalarSpecify the minimum value that a numerator coefficient can have. The
default value is []
(unspecified). Simulink® software uses this value to perform:
Parameter range checking (see Specify Minimum and Maximum Values for Block Parameters)
Automatic scaling of fixed-point data types
Block Parameter:
NumCoeffMin |
Type: character vector |
Values: scalar |
Default:
'[]' |
Numerator coefficient maximum
— Maximum value of numerator coefficients[]
(default) | scalarSpecify the maximum value that a numerator coefficient can have. The
default value is []
(unspecified). Simulink software uses this value to perform:
Parameter range checking (see Specify Minimum and Maximum Values for Block Parameters)
Automatic scaling of fixed-point data types
Block Parameter:
NumCoeffMax |
Type: character vector |
Values: scalar |
Default:
'[]' |
Numerator product output
— Numerator product output data typeInherit: Inherit via internal
rule
(default) | Inherit: Same as input
| int8
| int16
| int32
| int64
| fixdt(1,16,0)
| <data type expression>
Specify the product output data type for the numerator coefficients. You can set it to:
A rule that inherits a data type, for example,
Inherit: Inherit via internal
rule
A built-in data type, for example,
int8
A data type object, for example, a
Simulink.NumericType
object
An expression that evaluates to a data type, for example,
fixdt(1,16,0)
Click the Show data type assistant
button to display the Data Type Assistant,
which helps you set the data type attributes. For more information, see Specify Data Types Using Data Type Assistant.
Block Parameter:
NumProductDataTypeStr |
Type: character vector |
Values:
'Inherit: Inherit via internal rule' | 'Inherit: Same
as input' | 'int8' | 'int16' | 'int32' | 'int64' |
'fixdt(1,16,0)' | '<data type
expression>' |
Default:
'Inherit: Inherit via interal rule' |
Numerator accumulator
— Numerator accumulator data typeInherit: Inherit via internal
rule
(default) | Inherit: Same as input
| Inherit: Same as product output
| int8
| int16
| int32
| int64
| fixdt(1,16,0)
| <data type expression>
Specify the accumulator data type for the numerator coefficients. You can set it to:
A rule that inherits a data type, for example,
Inherit: Inherit via internal
rule
A built-in data type, for example,
int8
A data type object, for example, a
Simulink.NumericType
object
An expression that evaluates to a data type, for example,
fixdt(1,16,0)
Click the Show data type assistant
button to display the Data Type Assistant,
which helps you set the data type attributes. For more information, see Specify Data Types Using Data Type Assistant.
Block Parameter:
NumAccumDataTypeStr |
Type: character vector |
Values:
'Inherit: Inherit via internal rule' | 'Inherit: Same
as input' | 'Inherit: Same as product output' | 'int8' |
'int16' | 'int32' | 'int64' | 'fixdt(1,16,0)' | '<data
type expression>' |
Default:
'Inherit: Inherit via interal rule' |
Denominator coefficients
— Denominator coefficient data typeInherit: Inherit via internal
rule
(default) | int8
| int16
| int32
| int64
| fixdt(1,16)
| fixdt(1,16,0)
| <data type expression>
Specify the denominator coefficient data type. You can set it to:
A rule that inherits a data type, for example,
Inherit: Inherit via internal
rule
A built-in integer, for example,
int8
A data type object, for example, a
Simulink.NumericType
object
An expression that evaluates to a data type, for example,
fixdt(1,16,0)
Click the Show data type assistant
button to display the Data Type Assistant,
which helps you set the data type attributes. For more information, see Specify Data Types Using Data Type Assistant.
Block Parameter:
DenCoeffDataTypeStr |
Type: character vector |
Values:
'Inherit: Inherit via internal rule' | 'int8' | 'int16'
| 'int32' | 'int64' | 'fixdt(1,16)' | 'fixdt(1,16,0)' |
'<data type expression>' |
Default:
'Inherit: Same wordlength as input' |
Denominator coefficient minimum
— Minimum value of denominator coefficients[]
(default) | scalarSpecify the minimum value that a denominator coefficient can have. The
default value is []
(unspecified). Simulink software uses this value to perform:
Parameter range checking (see Specify Minimum and Maximum Values for Block Parameters)
Automatic scaling of fixed-point data types
Block Parameter:
DenCoeffMin |
Type: character vector |
Values: scalar |
Default:
'[]' |
Denominator coefficient maximum
— Maximum value of denominator coefficients[]
(default) | scalarSpecify the maximum value that a denominator coefficient can have. The
default value is []
(unspecified). Simulink software uses this value to perform:
Parameter range checking (see Specify Minimum and Maximum Values for Block Parameters)
Automatic scaling of fixed-point data types
Block Parameter:
DenCoeffMax |
Type: character vector |
Values: scalar |
Default:
'[]' |
Denominator product output
— Denominator product output data typeInherit: Inherit via internal
rule
(default) | Inherit: Same as input
| int8
| int16
| int32
| int64
| fixdt(1,16,0)
| <data type expression>
Specify the product output data type for the denominator coefficients. You can set it to:
A rule that inherits a data type, for example,
Inherit: Inherit via internal
rule
A built-in data type, for example,
int8
A data type object, for example, a
Simulink.NumericType
object
An expression that evaluates to a data type, for example,
fixdt(1,16,0)
Click the Show data type assistant
button to display the Data Type Assistant,
which helps you set the data type attributes. For more information, see Specify Data Types Using Data Type Assistant.
Block Parameter:
DenProductDataTypeStr |
Type: character vector |
Values:
'Inherit: Inherit via internal rule' | 'Inherit: Same
as input' | 'int8' | 'int16' | 'int32' | 'int64' |
'fixdt(1,16,0)' | '<data type
expression>' |
Default:
'Inherit: Inherit via interal rule' |
Denominator accumulator
— Denominator accumulator data typeInherit: Inherit via internal
rule
(default) | Inherit: Same as input
| Inherit: Same as product output
| int8
| int16
| int32
| int64
| fixdt(1,16,0)
| <data type expression>
Specify the accumulator data type for the denominator coefficients. You can set it to:
A rule that inherits a data type, for example,
Inherit: Inherit via internal
rule
A built-in data type, for example,
int8
A data type object, for example, a
Simulink.NumericType
object
An expression that evaluates to a data type, for example,
fixdt(1,16,0)
Click the Show data type assistant
button to display the Data Type Assistant,
which helps you set the data type attributes. For more information, see Specify Data Types Using Data Type Assistant.
Block Parameter:
DenAccumDataTypeStr |
Type: character vector |
Values:
'Inherit: Inherit via internal rule' | 'Inherit: Same
as input' | 'Inherit: Same as product output' | 'int8' |
'int16' | 'int32' | 'int64' | 'fixdt(1,16,0)' | '<data
type expression>' |
Default:
'Inherit: Inherit via interal rule' |
Output
— Output data typeInherit: Inherit via internal
rule
(default) | Inherit: Same as input
| int8
| int16
| int32
| int64
| fixdt(1,16)
| fixdt(1,16,0)
| <data type expression>
Specify the output data type. You can set it to:
A rule that inherits a data type, for example,
Inherit: Inherit via internal
rule
A built-in data type, for example,
int8
A data type object, for example, a
Simulink.NumericType
object
An expression that evaluates to a data type, for example,
fixdt(1,16,0)
Click the Show data type assistant
button to display the Data Type Assistant,
which helps you set the data type attributes. For more information, see Specify Data Types Using Data Type Assistant.
Block Parameter:
OutDataTypeStr |
Type: character vector |
Values:
'Inherit: Inherit via internal rule' | 'Inherit: Same
as input' | 'int8' | 'int16' | 'int32' | 'int64' |
'fixdt(1,16)' | 'fixdt(1,16,0)' | '<data type
expression>' |
Default:
'Inherit: Inherit via interal rule' |
Output minimum
— Minimum value of output[]
(default) | scalarSpecify the minimum value that the block can output. The default value
is []
(unspecified). Simulink uses this value to perform:
Simulation range checking (see Specify Signal Ranges)
Automatic scaling of fixed-point data types
Block Parameter:
OutMin |
Type: character vector |
Values: scalar |
Default:
'[]' |
Output maximum
— Maximum value of output[]
(default) | scalarSpecify the maximum value that the block can output. The default value
is []
(unspecified). Simulink uses this value to perform:
Simulation range checking (see Specify Signal Ranges)
Automatic scaling of fixed-point data types
Block Parameter:
OutMax |
Type: character vector |
Values: scalar |
Default:
'[]' |
Lock data type settings against changes by the fixed-point tools
— Prevent fixed-point tools from overriding data typesoff
(default) | on
Select this parameter to prevent the fixed-point tools from overriding the data types you specify on this block. For more information, see Lock the Output Data Type Setting (Fixed-Point Designer).
Block Parameter: LockScale |
Type: character vector |
Values: 'off' | 'on' |
Default: 'off' |
Integer rounding mode
— Rounding mode for fixed-point operationsFloor
(default) | Ceiling
| Convergent
| Nearest
| Round
| Simplest
| Zero
Specify the rounding mode for fixed-point operations. For more information, see Rounding (Fixed-Point Designer).
Block parameters always round to the nearest representable value. To control the rounding of a block parameter, enter an expression using a MATLAB® rounding function into the mask field.
Block Parameter:
RndMeth |
Type: character vector |
Values:
'Ceiling' | 'Convergent' | 'Floor' | 'Nearest' | 'Round' | 'Simplest' |
'Zero' |
Default:
'Floor' |
Saturate on integer overflow
— Method of overflow actionoff
(default) | on
Specify whether overflows saturate or wrap.
Action | Rationale | Impact on Overflows | Example |
---|---|---|---|
Select this check box ( |
Your model has possible overflow, and you want explicit saturation protection in the generated code. |
Overflows saturate to either the minimum or maximum value that the data type can represent. |
The maximum value that the |
Do not select this check box ( |
You want to optimize efficiency of your generated code. You want to avoid overspecifying how a block handles out-of-range signals. For more information, see Troubleshoot Signal Range Errors. |
Overflows wrap to the appropriate value that is representable by the data type. |
The maximum value that the |
When you select this check box, saturation applies to every internal operation on the block, not just the output, or result. Usually, the code generation process can detect when overflow is not possible. In this case, the code generator does not produce saturation code.
Block Parameter: SaturateOnIntegerOverflow |
Type: character vector |
Values:
'off' | 'on' |
Default: 'off' |
State name
— Unique name for block state''
(default) | alphanumeric stringUse this parameter to assign a unique name to the block state. The default is ' '
. When this field is blank, no name is assigned. When using this parameter, remember these considerations:
A valid identifier starts with an alphabetic or underscore character, followed by alphanumeric or underscore characters.
The state name applies only to the selected block.
This parameter enables State name must resolve to Simulink signal object when you click Apply.
For more information, see C Code Generation Configuration for Model Interface Elements (Simulink Coder).
Block Parameter: StateName |
Type: character vector |
Values: unique name |
Default: '' |
State name must resolve to Simulink signal object
— Require state name resolve to a signal objectoff
(default) | on
Select this check box to require that the state name resolves to a Simulink signal object.
To enable this parameter, specify a value for State name. This parameter appears only if you set the model configuration parameter Signal resolution to a value other than None
.
Selecting this check box disables Code generation storage class.
Block Parameter: StateMustResolveToSignalObject |
Type: character vector |
Values:
'off' | 'on' |
Default: 'off' |
Signal object class
— Custom storage class package nameSimulink.Signal
(default) | <StorageClass.PackageName>
Choose a custom storage class package by selecting a signal object class that the target package defines. For example, to apply custom storage classes from the built-in package mpt
, select mpt.Signal
. Unless you use an ERT-based code generation target with Embedded Coder®, custom storage classes do not affect the generated code.
To use a storage class package other than the Simulink package, you must load the package into the model's Embedded Coder Dictionary. See Load Storage Class Packages into Embedded Coder Dictionary (Embedded Coder).
For information about configuring model data by using storage classes, see C Code Generation Configuration for Model Interface Elements (Embedded Coder). For information about custom storage classes, see Organize Data into Structures in Generated Code (Embedded Coder).
Block Parameter: StateSignalObject |
Type: character vector |
Values:
'Simulink.Signal' |
'<StorageClass.PackageName>' |
Default: 'Simulink.Signal' |
Code generation storage class
— State storage class for code generationAuto
(default) | Model default
| ExportedGlobal
| ImportedExtern
| ImportedExternPointer
| BitField (Custom)
| Model default
| ExportToFile (Custom)
| ImportFromFile (Custom)
| FileScope (Custom)
| AutoScope (Custom)
| Struct (Custom)
| GetSet (Custom)
| Reusable (Custom)
Select state storage class for code generation.
Auto
is the appropriate storage class for states that you do not need to interface to external code.
applies the storage class or custom storage class that you select from the list. For information about storage classes, see C Code Generation Configuration for Model Interface Elements (Simulink Coder). For information about custom storage classes, see Organize Parameter Data into a Structure by Using Struct Storage Class (Embedded Coder).StorageClass
Use Signal object class to select custom storage classes from a package other than Simulink
.
To enable this parameter, specify a value for State name.
Block Parameter:
StateStorageClass |
Type: character vector |
Values:
'Auto' | 'Model default' | 'ExportedGlobal' | 'ImportedExtern' |
'ImportedExternPointer' | 'Custom' | ... |
Default: 'Auto' |
TypeQualifier
— Storage type qualifier''
(default) | const
| volatile
| ...Specify a storage type qualifier such as const
or volatile
.
Note
TypeQualifier will be removed in a future release. To apply storage type qualifiers to data, use custom storage classes and memory sections. Unless you use an ERT-based code generation target with Embedded Coder, custom storage classes and memory sections do not affect the generated code.
During simulation, the block uses the following values:
The initial value of the signal object to which the state name is resolved
Minimum and Maximum values of the signal object
For more information, see Data Objects.
To enable this parameter, set Code generation storage class to ExportedGlobal
, ImportedExtern
, ImportedExternPointer
, or Model default
. This parameter is hidden unless you previously set its value.
Block Parameter: RTWStateStorageTypeQualifier |
Type: character vector |
Values:
'' | 'const' |
'volatile' | ... |
Default: '' |
HDL Coder™ provides additional configuration options that affect HDL implementation and synthesized logic.
This block has a single, default HDL architecture.
General | |
---|---|
ConstMultiplierOptimization | Canonical signed digit (CSD) or factored CSD optimization. The
default is |
ConstrainedOutputPipeline | Number of registers to place at
the outputs by moving existing delays within your design. Distributed
pipelining does not redistribute these registers. The default is
|
InputPipeline | Number of input pipeline stages
to insert in the generated code. Distributed pipelining and constrained
output pipelining can move these registers. The default is
|
OutputPipeline | Number of output pipeline stages
to insert in the generated code. Distributed pipelining and constrained
output pipelining can move these registers. The default is
|
Native Floating Point | |
---|---|
HandleDenormals | Specify whether you want HDL Coder to insert additional logic to handle denormal numbers in your design.
Denormal numbers are numbers that have magnitudes less than the smallest floating-point
number that can be represented without leading zeros in the mantissa. The default is
|
LatencyStrategy | Specify whether to map the blocks in your design to
|
MantissaMultiplyStrategy | Specify how to implement the mantissa multiplication operation during code generation.
By using different settings, you can control the DSP usage on the target FPGA device.
The default is |
Double data types are not supported for this block. Use single data types instead.
Frame, matrix, and vector input data types are not supported.
The leading denominator coefficient (a0) must be 1 or -1.
The Discrete Transfer Fcn block is excluded from the following optimizations:
Resource sharing
Distributed pipelining
This block only supports signed fixed-point data types.