| Products & Services | Solutions | Academia | Support | User Community | Company |
| Download Product Updates | | | Get Pricing | | | Trial Software |
| Documentation → Simulink |
| Contents | Index |
| Learn more about Simulink |
Ports & Subsystems, Sources
Inport blocks are the links from outside a system into the system.
Simulink software assigns Inport block port numbers according to these rules:
It automatically numbers the Inport blocks within a top-level system or subsystem sequentially, starting with 1.
If you add an Inport block, the label is the next available number.
If you delete an Inport block, other port numbers are automatically renumbered to ensure that the Inport blocks are in sequence and that no numbers are omitted.
If you copy an Inport block into a system, its port number is not renumbered unless its current number conflicts with an Inport block already in the system. If the copied Inport block port number is not in sequence, renumber the block. Otherwise, you get an error message when you run the simulation or update the block diagram.
You can specify the dimensions of the input to the Inport block using the Port dimensions parameter. Entering a value of -1 lets the Simulink software determine the port dimension.
The Sample time parameter is the rate at which the signal is coming into the system. A value of -1 causes the block to inherit its sample time from the block driving it. You might need to set this parameter for
Inport blocks in a top-level system
Models with blocks where the Simulink software cannot determine the sample time, but these blocks drive Inport blocks.
For more information, see How to Specify the Sample Time in the Simulink User's Guide.
Inport blocks in a top-level system have two uses:
To supply external inputs from the workspace, use the Configuration Parameters dialog box (see Importing Data from a Workspace) or the ut argument of the sim command (see sim) to specify the inputs.
To provide a means for perturbation of the model by the linmod and trim analysis functions, use Inport blocks to inject inputs are injecte into the system.
Limitation: You cannot use a top-level (root) inport to supply fixed-point data that is contained in a structure. Consider using a Simulink.Timeseries object instead of a structure.
Inport blocks in a subsystem represent inputs to the subsystem. A signal arriving at an input port on a Subsystem block flows out of the associated Inport block in that subsystem. The Inport block associated with an input port on a Subsystem block is the block whose Port number parameter matches the relative position of the input port on the Subsystem block. For example, the Inport block whose Port number parameter is 1 gets its signal from the block connected to the topmost port on the Subsystem block.
If you renumber the Port number of an Inport block, the block becomes connected to a different input port, although the block continues to receive its signal from the same block outside the subsystem.
The Inport block name appears in the Subsystem icon as a port label. To suppress display of the label, select the Inport block and choose Format > Hide Name.
You can use a subsystem inport to supply fixed-point data in a structure or any other format.
You can create any number of duplicates of an Inport block. The duplicates are graphical representations of the original intended to simplify block diagrams by eliminating unnecessary lines. The duplicate has the same port number, properties, and output as the original. Changing properties of a duplicate changes properties of the original and vice versa.
To create a duplicate of an Inport block:
If you want a root level Inport of a model to produce a bus signal, you must select the Inport's Specify properties via bus object parameter and set the Inport's Bus object for validating input bus parameter to the name of a bus object that defines the bus that the Inport produces. If the bus contains mixed data types, the Inport's data type must be auto. See Using Bus Objects in the Simulink User's Guide for more information.
The Inport block accepts complex or real signals of any data type supported by Simulink software, including fixed-point and enumerated data types. For a discussion on the data types supported by Simulink software, see Data Types Supported by Simulink.
Limitation: You cannot use a top-level (root) inport to supply fixed-point data that is contained in a structure. Consider using a Simulink.Timeseries object instead of a structure.
The numeric and data types of the block's output are the same as those of its input. You can specify the signal type, data type, and sampling mode of an external input to a root-level Inport block using the Signal type, Data type, and Sampling mode parameters.
The elements of a signal array connected to a root-level Inport block must be of the same numeric and data types. Signal elements connected to a subsystem input port can be of differing numeric and data types except in the following circumstance: If the subsystem contains an Enable or Trigger block or is an Atomic Subsystem and the input port, or an element of the input port, is connected directly to an output port, the input elements must be of the same type. For example, consider the follow enabled subsystem.

In this example, the elements of a signal vector connected to In1 must be of the same type. The elements connected to In2, however, can be of differing types.
The Main pane of the Inport block dialog box appears as follows:

The Signal Attributes pane of the Inport block dialog box appears as follows:

Display the Data Type Assistant.
The Data Type Assistant helps you set the Output data type parameter.
See Specifying Block Output Data Types for more information.
See Block-Specific Parameters for the command-line information.
Specify the port number of the block.
Default: 1
This parameter controls the order in which the port that corresponds to the block appears on the parent subsystem or model block.
See Block-Specific Parameters for the command-line information.
Specify the information to be displayed on the icon of this input port.
Default: Port number
Display the name of the signal connected to this port (or signals if the input is a bus).
Display port number of this port.
Display both the port number and the names of the signals connected to this port.
See Block-Specific Parameters for the command-line information.
Output the value of the input signal at the previous time step.
Default: Off
Output the value of the input signal at the previous time step.
Do not output the value of the input signal at the previous time step.
This option applies only to triggered subsystems and is enabled only if the Inport block resides in a triggered subsystem.
Selecting this check box enables Simulink software to resolve data dependencies among triggered subsystems that are part of a loop.
Type sl_subsys_semantics at the MATLAB prompt for examples using latched inputs with triggered subsystems.
The Inport block indicates that this option is selected by displaying <Lo>.

See Block-Specific Parameters for the command-line information.
Copy the block's signal output into a buffer before executing the contents of the subsystem and use this copy as the block's output during execution of the subsystem.
Default: Off
Copy the block's signal output into a buffer before executing the contents of the subsystem and use this copy as the block's output during execution of the subsystem.
Do not copy the block's signal output into a buffer before executing the contents of the subsystem to use as the block's output during execution of the subsystem.
This parameter applies only to function-call subsystems and is enabled only if the Inport block resides in a function-call subsystem.
This parameter ensures that the subsystem's inputs, including those generated within the subsystem's context, will not change during execution of the subsystem.
The Inport block indicates that this option is selected by displaying <Li>.

See Block-Specific Parameters for the command-line information.
Cause the block to interpolate or extrapolate output at time steps for which no corresponding workspace data exists when loading data from the workspace.
Default: On
Cause the block to interpolate or extrapolate output at time steps for which no corresponding workspace data exists when loading data from the workspace.
Do not cause the block to interpolate or extrapolate output at time steps for which no corresponding workspace data exists when loading data from the workspace.
See Block-Specific Parameters for the command-line information.
Use a bus object to define the structure of the bus that is input or output by this block.
Default: Off
Use a bus object to define the structure of the bus that is input or output by this block.
Do not use a bus object to define the structure of the bus that is input or output by this block.
Selecting this parameter is required if the bus is nonvirtual (including a nonvirtual bus that was converted from a virtual bus as described in Automatic Bus Conversion) and is optional otherwise.
This parameter enables Bus object for validating input bus.
This parameter enables Output as nonvirtual bus in parent model.
See Block-Specific Parameters for the command-line information.
Specify the name of the bus object that defines the structure that a bus must have to connect to this port.
Default: BusObject
A bus object is an instance of class Simulink.Bus that is defined in the base workspace.
At the beginning of a simulation or when you update the model's diagram, Simulink software checks whether the bus connected to this port has the specified structure. If not, Simulink software displays an error message.
Specify properties via bus object enables this parameter.
See Block-Specific Parameters for the command-line information.
Output a nonvirtual bus.
Default: Off
Select this option if you want code generated from this model to use a C structure to define the structure of the bus signal output by this block.
All signals in a nonvirtual bus must have the same sample time, even if the elements of the associated bus object specify inherited sample times. Any bus operation that would result in a nonvirtual bus that violates this requirement generates an error. Therefore, if you select this option all signals in the bus must have the same sample time. You can use a Rate Transition block to change the sample time of an individual signal, or of all signals in a bus, to allow the signal or bus to be included in a nonvirtual bus.
Specify properties via bus object enables this parameter.
See Block-Specific Parameters for the command-line information.
Specify the dimensions of the input signal to the block.
Default: -1
Valid values are:
-1 | Dimensions are inherited from input signal |
n | Vector signal of width n accepted |
[m n] | Matrix signal having m rows and n columns accepted |
Clearing Specify properties via bus object enables this parameter.
See Block-Specific Parameters for the command-line information.
Specify the type of signals allowed into this port.
Default: Inherit
Allow variable-size and fixed-size signals.
Do not allow variable-size signals.
Allow only variable-size signals.
When the signal at this port is a variable-size signal, the Port dimensions parameter specifies the maximum dimensions of the signal.
| Parameter: VarSizeSig |
| Type: string |
| Value: 'Inherit'| 'No' | 'Yes' |
| Default: 'Inherit' |
Specify the time interval between samples.
Default: -1
To inherit the sample time, set this parameter to -1.
See How to Specify the Sample Time in the online documentation for more information.
See Block-Specific Parameters for the command-line information.
Select to lock the output data type setting of this block against changes by the Fixed-Point Tool and the Fixed-Point Advisor.
Default: Off
Locks the output data type setting for this block.
Allows the Fixed-Point Tool and the Fixed-Point Advisor to change the output data type setting for this block.
See Block-Specific Parameters for the command-line information.
For more information, see Fixed-Point Tool and Fixed-Point Advisor in the Simulink Fixed Point documentation.
Specify the numeric type of the external input.
Default: auto
Accept either real or complex as the numeric type.
Specify the numeric type as a real number.
Specify the numeric type as a complex number.
See Block-Specific Parameters for the command-line information.
Specify whether the output signal is Sample based or Frame based.
Default: auto
Accept any sampling mode.
The output signal is sample-based.
The output signal is frame-based.
To generate frame-based signals, you must have the Signal Processing Blockset product installed.
See Block-Specific Parameters for the command-line information.
Specify the minimum value that the block should output.
Default: []
The default value, [], is equivalent to -Inf. Simulink software uses this value to perform:
Simulation range checking (see Checking Signal Ranges)
Automatic scaling of fixed-point data types
This number must be a double scalar value.
See Block-Specific Parameters for the command-line information.
Specify the maximum value that the block should output.
Default: []
The default value, [], is equivalent to -Inf. Simulink software uses this value to perform:
Simulation range checking (see Checking Signal Ranges)
Automatic scaling of fixed-point data types
This number must be a double scalar value.
See Block-Specific Parameters for the command-line information.
Specify the output data type of the external input.
Default: Inherit: auto
A rule that inherits a data type
Data type is double.
Data type is single.
Data type is int8.
Data type is uint8.
Data type is int16.
Data type is uint16.
Data type is int32.
Data type is uint32.
Data type is boolean.
Data type is fixed point fixdt(1,16,0).
Data type is fixed point fixdt(1,16,2^0,0).
Data type is enumerated.
The name of a data type object, for example Simulink.NumericType
This parameter can also be an expression that evaluates to a data type, for example, float('single')
See Block-Specific Parameters for the command-line information.
Select the category of data to specify.
Default: Inherit (Constant, Data Type Conversion, Discrete Time Integrator, Gain, Inport, Outport, Product, Saturation, Sum, Switch), Built in (Logical Operator, Relational Operator)
Inheritance rules for data types. Selecting Inherit enables a second menu/text box to the right. The following list is the possible values, which can vary by block:
Inherit from 'Constant value' (Constant block default)
Inherit via internal rule (Discrete-Time Integrator, Gain, Product, Sum, Switch block default)
Inherit via back propogation (Data Type Conversion block default)
auto (Inport, Outport block default)
Logical (see Configuration Parameters: Optimization)
Same as first input
Same as input (Saturation block default)
Same as accumulator
Built-in data types. Selecting Built in enables a second menu/text box to the right. The following list is the possible values, which can vary by block:
double (Constant, Data Type Conversion, Discrete-Time Integrator, Gain, Inport, Outport, Product, Saturation, Sum, Switch block default)
single
int8
uint8
int16
uint16
int32
uint32
boolean (Logical Operator, Relational Operator block default)
Fixed-point data types.
Enumerated data types. This option is available on some blocks. Selecting Enumerated enables a second menu/text box to the right. The following list is the possible values, which can vary by block:
<class name>
Expressions that evaluate to data types. Selecting Expression enables a second menu/text box to the right. The following list is the possible values, which can vary by block:
<data type expression>
Clicking the Show data type assistant button enables this parameter.
See Block-Specific Parameters for the command-line information.
See Using the Data Type Assistant in the Simulink User's Guide.
Specify whether you want the fixed-point data as signed or unsigned.
Default: Signed
Selecting Mode > Fixed point enables this parameter.
See Block-Specific Parameters for the command-line information.
See Specifying a Fixed-Point Data Type in the Simulink User's Guide for more information.
Specify the bit size of the word that holds the quantized integer.
Default: 16
Minimum: 0
Maximum: 32
Large word sizes represent large values with greater precision than small word sizes.
Selecting Mode > Fixed point enables this parameter.
See Block-Specific Parameters for the command-line information.
See Specifying a Fixed-Point Data Type in the Simulink User's Guide for more information.
Specify the method for scaling your fixed-point data to avoid overflow conditions and minimize quantization errors.
Default: Best precision (Constant), Binary point (Data Type Conversion, Discrete-Time Integrator, Gain, Inport, Outport, Product, Saturation, Sum, Switch), Integer (Logical Operator, Relational Operator)
Specify binary point location.
Enter slope and bias.
Specify best-precision values. This option appears for some blocks.
Specify integer. This setting has the same result as specifying a binary point location and setting fraction length to 0. This option appears for some blocks.
Selecting Mode > Fixed point enables this parameter.
Selecting Binary point enables:
Fraction length
Calculate Best-Precision Scaling
Selecting Slope and bias enables:
Slope
Bias
Calculate Best-Precision Scaling
See Block-Specific Parameters for the command-line information.
See Specifying a Fixed-Point Data Type in the Simulink User's Guide for more information.
Specify fraction length for fixed-point data type.
Default: 0
Binary points can be positive or negative integers.
Selecting Scaling > Binary point enables this parameter.
See Block-Specific Parameters for the command-line information.
See Specifying a Fixed-Point Data Type in the Simulink User's Guide for more information.
Specify slope for the fixed-point data type.
Default: 2^0
Specify any positive real number.
Selecting Scaling > Slope and bias enables this parameter.
See Block-Specific Parameters for the command-line information.
See Specifying a Fixed-Point Data Type in the Simulink User's Guide for more information.
Specify bias for the fixed-point data type.
Default: 0
Specify any real number.
Selecting Scaling > Slope and bias enables this parameter.
See Block-Specific Parameters for the command-line information.
See Specifying a Fixed-Point Data Type in the Simulink User's Guide for more information.
Sample Time | Specified in the Sample time parameter |
Dimensionalized | Yes |
Multidimensionalized | Yes |
Virtual | Yes, if the block does not reside in a conditionally-executed or atomic subsystem and does not connect directly to an Outport block For more information, see Virtual Blocks in the Simulink documentation. |
![]() | Index Vector | Integer Delay | ![]() |

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