Simulink® Model Referencing Requirements

About Model Referencing Requirements

A model reference hierarchy must satisfy various Simulink® requirements, as described in this section. Some limitations also apply, as described in Simulink® Model Referencing Limitations.

Name Length Requirement

The name of a referenced model must contain fewer than 60 characters, exclusive of the .mdl suffix. An error occurs if the name of a referenced model is too long.

Configuration Parameter Requirements

A referenced model uses a configuration set in the same way that any other model does, as described in Configuration Sets. By default, every model in a hierarchy has its own configuration set, which it uses in the same way that it would if the model executed independently.

Because each model can have its own configuration set, configuration parameter values can be different in different models. Furthermore, some parameter values are intrinsically incompatible with model referencing. Simulink's response to an inconsistent or unusable configuration parameter depends on the parameter:

When a model reference hierarchy contains many submodels that have incompatible parameter values, or a changed parameter value must propagate to many submodels, manually eliminating all configuration parameter incompatibilities can be tedious. You can control or eliminate such overhead by using configuration references to assign an externally-stored configuration set to multiple models. See Referencing Configuration Sets for details.

The tables in the following sections list Configuration parameter options that can cause problems if set in certain ways, or if set differently in a referenced model than in a parent model. Where possible, Simulink resolves violations of these requirements automatically, but most cases require changes to the parameters in some or all models.

Configuration Requirements for All Referenced Model Simulation

Dialog Box PaneOptionRequirement
SolverStart timeThe start time of the top model and all referenced models must be the same, but need not be zero.
Stop timeSimulink uses the top model's Stop time for simulation, overriding any differing Stop time in a submodel.
Type
Solver
The top model's Type and Solver apply throughout the hierarchy. See Solver Requirements.
Data Import/ExportInitial stateCan be on for the top model, but must be off for a referenced model.

Optimization

Inline parametersCan be on or off for a top model, but must be on for a referenced model. See Inline Parameter Requirements.

Application lifespan (days)

Must be the same for top and referenced models.

Model ReferencingTotal number of instances allowed per top modelMust not be Zero in a referenced model. Specifying One rather than Multiple is preferable or required in some cases. See Model Instance Requirements.

Hardware Implementation

Embedded hardware options

All values must be the same for top and referenced models.

Solver Requirements.   Model referencing works with both fixed-step and variable-step solvers. All models in a model reference hierarchy use the same solver, which is always the solver specified by the top model. An error occurs if the solver type specified by the top model is incompatible with the solver type specified by any submodel, as shown in the following table:

Top Model Solver TypeSubmodel Solver TypeCompatibility
Fixed StepFixed StepAllowed
Variable StepVariable StepAllowed
Variable StepFixed-stepAllowed unless the submodel is multi-rate and specifies both a discrete sample time and a continuous sample time
Fixed StepVariable StepError

If an incompatibility exists between the top model solver and any submodel solver, one or both models must change as needed to use compatible solvers. For information about solvers, see Solvers and Choosing a Solver.

Inline Parameter Requirements.   Simulink requires Configuration Parameters > Optimization > Inline parameters (see Inline parameters) to be enabled for all referenced models in a reference hierarchy. The top model can enable or disable inline parameters. If a referenced model disables inlined parameters, and you try to build the parent model:

Simulink ignores tunable parameter specifications in the Model Parameter Configuration Dialog Box for both the top model and referenced models. Consequently, you cannot use this dialog box to override the inline parameters optimization for selected parameters and thereby permit them to be tuned. Parameterizing Model References describes alternate techniques.

Model Instance Requirements.   A referenced model must specify that it is available for such use, and whether it can be used at most once or can have multiple instances. Configuration Parameters > Model Referencing > Total number of instances allowed per top model provides this specification. See Total number of instances allowed per top model for more information. The possible values for this parameter are:

Setting Total number of instances allowed per top model to Multiple for a model that is referenced only once can reduce execution efficiency slightly, but does not affect data values that result from simulation or from executing code generated by Real-Time Workshop . Specifying Multiple when only one model instance exists facilitates later reusing the model in the same hierarchy, or multiple times in a different hierarchy, without having to change or rebuild the model.

Some model properties and constructs require Total number of instances allowed per top model to be set to One, limiting the model to being used only once in a hierarchy. For details, see General Reusability Limitations and Accelerator Mode Reusability Limitations.

Model Structure Requirements

The following requirements relate to the structure of a model reference hierarchy independently of configuration parameter requirements.

Signal Propagation Requirements

The signal name must explicitly appear on any signal line connected to an Outport of a referenced model. A signal that is connected by an unlabeled line to an Outport of a referenced model cannot propagate out of the Model block to the parent model.

Bus Usage Requirements

A bus that propagates between a parent model and a referenced model must be nonvirtual, and the same bus object must specify the properties of the bus in both the parent and the referenced model. This object must be defined in the MATLAB® workspace. See Using Buses for more information.

Sample Time Requirements

The first nonvirtual block connected to a root-level Inport or Outport of a referenced model must have the same sample time as the port to which it connects. You can use Rate Transition blocks to match input and output sample times as illustrated in the following diagram.

  


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