Main Content

Embedded Coder Model Advisor Checks for Standards, Guidelines, and Code Efficiency

To check that your model meets guidelines, standards, and is ready to generate code, you can use the Model Advisor checks available with Embedded Coder®.

  • On the Modeling tab, select Model Advisor.

  • In the Model Advisor window, expand the By Task folder. The folder contains Model Advisor checks that you can run to help accomplish the task.

For more information about the Model Advisor, see Run Model Advisor Checks.

The table summarizes the Embedded Coder Model Advisor checks that are available in the By Task folders.

By Task folderModel Advisor checks

Modeling Standards for MAB

Check for blocks not recommended for C/C++ production code deployment

Code Generation Efficiency

Identify lookup table blocks that generate expensive out-of-range checking code

Check output types of logic blocks

Identify questionable software environment specifications

Identify questionable code instrumentation (data I/O)

Identify blocks that generate expensive fixed-point and saturation code

Identify blocks that generate expensive rounding code

Identify questionable fixed-point operations

Check configuration parameters for generation of inefficient saturation code

Modeling Standards for

  • IEC 61508, IEC 62304, ISO 26262, and EN 50128

Check for blocks not recommended for C/C++ production code deployment

Modeling Standards for DO-178C/DO-331

Check for blocks not recommended for C/C++ production code deployment

Check the hardware implementation

Identify questionable subsystem settings

Modeling Guidelines for MISRA C:2012

Check configuration parameters for MISRA C:2012

Check for blocks not recommended for C/C++ production code deployment

Check for blocks not recommended for MISRA C:2012

Check for unsupported block names

Check usage of Assignment blocks

Check for switch case expressions without a default case

Check for missing error ports for AUTOSAR receiver interfaces

Check for bitwise operations on signed integers

Check for recursive function calls

Check for equality and inequality operations on floating-point values

Check for missing const qualifiers in model functions

Check bus object names that are used as element names

Modeling Guidelines for secure coding standards (CERT C, CWE, ISO/IEC TS 17961)

Check configuration parameters for secure coding standards

Check for blocks not recommended for C/C++ production code deployment

Check for blocks not recommended for secure coding standards

Check usage of Assignment blocks

Check for switch case expressions without a default case

Check for bitwise operations on signed integers

Check for equality and inequality operations on floating-point values

Check integer word length

If you have a Simulink® Design Verifier™ license, the following checks are also available.

Detect Dead Logic (Simulink Design Verifier)

Detect Integer Overflow (Simulink Design Verifier)

Detect Division by Zero (Simulink Design Verifier)

Detect Out Of Bound Array Access (Simulink Design Verifier)

Detect Violation of Specified Minimum and Maximum Values (Simulink Design Verifier)

Related Topics