Main Content

Model Configuration Parameters: Data Validity Diagnostics

The Diagnostics > Data Validity category includes parameters for detecting issues related to data (signals, parameters, and states). These issues include:

  • Loss of information due to data type quantization and overflow.

  • Loss of parameter tunability in the generated code.

  • Loss of information due to Data Store Write and Data Store Read block ordering.

On the Configuration Parameters dialog box, the following configuration parameters are on the Data Validity pane.

ParameterDescription

Signal resolution

Select how Simulink® software resolves signals and states to Simulink.Signal objects.

Division by singular matrix

Select the diagnostic action to take if the Product, Matrix Multiply block detects a singular matrix while inverting one of its inputs in matrix multiplication mode.

Underspecified data types

Select the diagnostic action to take if Simulink software could not infer the data type of a signal during data type propagation.

Simulation range checking

Select the diagnostic action to take when signals exceed specified minimum or maximum values.

String truncation checking

Select the diagnostic action to take if the string signal is truncated.

Wrap on overflow

Select the diagnostic action to take if the value of a signal overflows the signal data type and wraps around.

Underspecified dimensions

Select the diagnostic action to take if Simulink software could not infer the signal dimension at compile time.

Saturate on overflow

Select the diagnostic action to take if the value of a signal is too large to be represented by the signal data type, resulting in a saturation.

Inf or NaN block output

Select the diagnostic action to take if the value of a block output is Inf or NaN at the current time step.

"rt" prefix for identifiers

Select the diagnostic action to take during code generation if a Simulink object name (the name of a parameter, block, or signal) begins with rt.

Detect downcast

Select the diagnostic action to take when a parameter downcast occurs during code generation.

Detect overflow

Select the diagnostic action when Simulink detects a parameter overflow.

Bits of error threshold

Set a threshold of one bit, half bit, or zero bits for parameter overflow detection.

Detect underflow

Select the diagnostic action when Simulink detects a parameter underflow.

Detect precision loss

Select the diagnostic action to take when Simulink detects parameter precision loss.

Suppress double to single detection

Suppress the double to single parameter precision loss detection.

Absolute difference threshold

Report parameter precision loss when the quantization error exceeds both absolute and relative difference thresholds.

Relative difference threshold

Report parameter precision loss when the quantization error exceeds both absolute and relative difference thresholds.

Detect loss of tunability

Select the diagnostic action to take when an expression with tunable variables is reduced to its numerical equivalent in the generated code.

Detect read before write

Select the diagnostic action to take if the model attempts to read data from a data store to which it has not written data in this time step.

Detect write after read

Select the diagnostic action to take if the model attempts to write data to a data store after previously reading data from it in the current time step.

Detect write after write

Select the diagnostic action to take if the model attempts to write data to a data store twice in succession in the current time step.

Multitask data store

Select the diagnostic action to take when one task reads data from a Data Store Memory block to which another task writes data.

Duplicate data store names

Select the diagnostic action to take when the model contains multiple data stores that have the same name. The data stores can be defined with Data Store Memory blocks or Simulink.Signal objects.

These configuration parameters are in the Advanced parameters section.

ParameterDescription

Array bounds exceeded

Ensure that Simulink-allocated memory used in S-functions does not write beyond its assigned array bounds when writing to its outputs, states, or work vectors.

Model Verification block enabling

Enable model verification blocks in the current model either globally or locally.

Detect multiple driving blocks executing at the same time step

Select the diagnostic action to take when the software detects a Merge block with more than one driving block executing at the same time step.

Underspecified initialization detection

Select how Simulink software handles initialization of initial conditions for conditionally executed subsystems, Merge blocks, subsystem elapsed time, and Discrete-Time Integrator blocks.

Detect ambiguous custom storage class final values

Detect if a signal using a Reusable custom storage class does not have a unique endpoint. The run-time environment should not read the variable because its value is ambiguous.

Detect non-reused custom storage classes

Detect if a signal uses a Reusable custom storage class that the code generator cannot reuse with other uses of the same Reusable custom storage class. If the code generator cannot implement reuse, the generated code will likely contain additional global variables.

Related Topics