Simulink Check

Verify compliance with style guidelines and modeling standards


Simulink Check™ provides industry-recognized checks and metrics that identify standard and guideline violations during development. Supported high-integrity software development standards include DO-178, ISO 26262, IEC 61508, IEC 62304, and MathWorks Advisory Board (MAB) Style Guidelines. Edit-time checks identify compliance issues as you edit. You can create custom checks to comply with your own standards or guidelines.

Simulink Check provides metrics such as size and complexity that you can use to evaluate your model’s architecture and compliance to standards. A consolidated metrics dashboard lets you assess design status and quality. Automatic model refactoring lets you replace duplicate design elements, reduce design complexity, and identify reusable content. The Model Slicer tool isolates problematic behavior in a model and generates a simplified model for debugging.

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

Get Started:

Check Model Quality

Verify compliance with style guidelines and modeling standards.

Ready-to-Use Checks for Developing High-Integrity Software

To improve the quality and security of models and generated code, Simulink Check provides preconfigured checks for industry standards such as DO-178C, DO-331, ISO 26262, IEC 61508, and EN 50128 as well as MISRA C:2012, MAB style guidelines, IEC 62304 standards for developing high-integrity software, and secure coding standards such as CERT C, CWE, and ISO/IEC TS 17961.

Interactive reports with results and recommended actions.

Identify and Fix Errors As You Edit

Much like spell checking helps you avoid spelling errors in a document, edit-time checking notifies you of violations as you edit the model. You can correct errors as you go to minimize costly rework and additional testing late in the development process.

Detect and fix compliance issues at design time.

Configure, Customize, and Automate Model Checks

To ensure your model complies with your organization’s own standards or guidelines, you can tailor modeling checks and configurations using Model Advisor APIs or the Model Advisor Configuration Editor. You can run checks on multiple machines in parallel to accelerate compliance verification.

Create custom checks using the Model Advisor Configuration Editor.

Check for Compliance to Security Standards

To improve compliance of your generated code to CERTC, CWE, and ISO/IEC TS 17961, you can check your model to identify potential modeling constructs that may introduce coding standard compliance.

Detect blocks that may reduce secure coding standard compliance of the generated code.

Measure and View Model Metrics

Assess your project status with metrics from tools for Model-Based Design.

Collect Model Metrics

Simulink Check collects model metrics that you can use to assess your model’s architecture, complexity, and readability in compliance with DO-178, DO-331, IEC 61508, IEC 62304, ISO 26262, and EN 50128 standards.

Use the model metric API to collect custom metrics. 

View Consolidated Metrics Using a Dashboard

The Metrics Dashboard integrates metrics such as model size, lines of code, status of guideline compliance, reuse, and complexity in a single view, providing you with insight into the quality of your project.

Metrics Dashboard with a consolidated view of design status.

Simplify and Debug Complex Models

Use Model Slicer to isolate functionality through a combination of dynamic and static analysis.

Highlight Dependencies

Model Slicer uses static dependency analysis to highlight interdependencies of blocks, signals, and model components and dynamic dependency analysis based on active behavior during simulation to better understand functional dependencies in a large or complex model.

Create Simplified Standalone Model

Model Slicer can isolate a portion of the model based on a user-specified starting point, logged signals, or simulation time window and save it as a smaller model that preserves simulation behavior to help debugging and improve performance.

Highlight portion of model for slicing.  

Activity-Based Time Slicing with Stateflow

The model highlighting can be constrained to simulation time intervals when only selected states and transitions in Stateflow™ are simultaneously active during a simulation to isolate the behavior of interest.

Identify active logic when a state is active.

Refactor Models to Improve Designs and Increase Component Reuse

Identify clones and modeling patterns that can be automatically refactored to improve maintainability.

Identify and Refactor Modeling Clones

The Identify Modeling Clones tool analyzes a model to locate duplicate modeling patterns. These duplicated clones can then be automatically refactored with a reusable library to improve maintainability and reduce design complexity.

Transform Models to Improve Component Reusability and Model Readability

The Model Transformer tool identifies modeling patterns that can be transformed into Variant Source or Variant Subsystem blocks and refactors the model to improve model componentization and reusability. It can identify data store blocks that can be eliminated to improve readability.

Find modeling patterns that can be replaced with variants.

Latest Features

MAB 5.0 Support

Automate checking of models to MAB 5.0 modeling style guidelines

Improved Model Advisor Configuration Editor

Create and update custom check configurations using more flexible and streamlined editor

DO-254 Checks

Verify compliance with DO-254 standards 

Additional JMAAB 5.1 Checks

Automate checking of models to JMAAB 5.1 modeling style guidelines

Edit-Time Checks in Code Perspective

Identify blocks not supported by code generation

Automated Clone Refactoring App

Detect subsystem or library pattern clones, refactor, and check equivalency of refactored model

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

Panel Navigation

11 Best Practices for Developing ISO 26262 Applications with Simulink

Manage model interface complexity and data exchanges. Generate code with freedom of interference and separation of files. Increase overall efficiency in the verification, validation, and documentation phases.