Simulink Design Verifier



Simulink Design Verifier

Identify design errors, prove requirements compliance, and generate tests


Simulink Design Verifier™ uses formal methods to identify hidden design errors in models. It detects blocks in the model that result in integer overflow, dead logic, array access violations, and division by zero. It can formally verify that the design meets functional requirements. For each design error or requirements violation, it generates a simulation test case for debugging.

Simulink Design Verifier generates test cases for model coverage and custom objectives to extend existing requirements-based test cases. These test cases drive your model to satisfy condition, decision, modified condition/decision (MCDC), and custom coverage objectives. In addition to coverage objectives, you can specify custom test objectives to automatically generate requirements-based test cases.

The Model Slicer tool in Simulink Design Verifier isolates problematic behavior in a model. You can view blocks affecting a subsystem output, and trace a signal path through multiple switches and logic.

Support for industry standards is available through IEC Certification Kit (for IEC 61508 and ISO 26262) and DO Qualification Kit (for DO-178).

Design Error Detection

Discover design errors in your model before simulation, including run-time errors, diagnostic errors, and dead logic.

Run-Time and Diagnostic Errors

Before you run simulations, you can detect run-time and modeling errors, including integer overflow, division by zero, array out of bounds, subnormal values, and floating-point errors as well as data validity errors. 

Catching run-time errors before simulation.

Dead Logic

Find objects in your model that cannot be activated during simulation and execution of generated code.

Viewing dead logic in your models.

Test Case Generation

Generate test cases for dynamic simulation to achieve structural and functional coverage goals.

Test Cases to Increase Coverage

Augment and extend existing manually created test cases to address incomplete model coverage.

Requirements-Based Test Cases

Generate test cases from models of system requirements.

Test Cases for C/C++ Code

Generate test cases to increase coverage of generated code and C/C++ code called from Simulink® blocks and in Stateflow® charts.

Generating tests for models that call C code.

Requirements-Based Verification

Verify formal requirements expressed using MATLAB, Simulink, and Stateflow.

Safety Requirements

Verify that your design behaves according to formally defined safety requirements that you express using MATLAB®, Simulink, and Stateflow.

Express requirements using Simulink.

Simplification of Complex Designs for Debugging

Use the Model Slicer tool to isolate behaviors of interest in a model. Model Slicer uses a combination of dynamic and static analysis to trace dependencies.

Isolate Troubling Behavior

Highlight an area of interest and specify a relevant time interval to generate a simplified, sliced model for debugging.

Simplification of Variant Models

Use the Variant Reducer to generate a reduced model for a subset of valid configurations.

Simplify Models for Deployment

After you have fully validated your master variants model, use Variant Reducer to generate a reduced model for a subset of valid configurations. All related files and variable dependencies are also reduced. The reduced artifacts are packaged in a separate folder to enable easy deployment and sharing with customers and partners.

Creating a reduced model.

Latest Features

Improved Floating-Point Analysis

Reduce rational approximation for models containing single- and double-precision floating-point arithmetic

Export-Function Model Support

Analyze and generate tests for models by automatically creating schedulers that invoke model functions

Stateflow Custom Code Support

Analyze and generate tests for C/C++ constructs within Stateflow charts

C Function Block Support

Analyze and generate tests for C/C++ code in blocks

Floating-Point Design Error Detection

Detect occurrences of non-finite, NaN, and subnormal floating-point values

Model Slicer

Leverage fast restart to streamline model debugging workflows

See the release notes for details on any of these features and corresponding functions.

How to Use Simulink for ISO 26262 Projects

Learn how Model-Based Design with Simulink enables you to design and test your whole embedded automotive system under a wide range of driving conditions and fault scenarios long before you go to the proving grounds. 

Get a Free Trial

30 days of exploration at your fingertips.

Download now

Ready to Buy?

Get pricing information and explore related products.

Are You a Student?

Get MATLAB and Simulink student software.

Learn more