Filter checks

Passed  
Failed  
Warning  
Not Run  
   

Navigation

V Model Guidelines Check
1 Modeling Standards for MAAB
1.1 Naming Conventions
1.2 Model Architecture
1.3 Model Configuration Options
1.4 Simulink
1.5 Stateflow
2 Code Generation Efficiency
3 Modeling Standards for ISO 26262

View

Scroll to top
Show check details
Model Advisor Report - VDP.slx
Simulink version: 9.0 Model version: 'M104C104'
System: VDP Current run: 2021/04/10 17:05:21
  Model Advisor configuration: ...Model_Guidelines_Check.mat
Treat as Referenced Model: off  

Run Summary
Pass Fail Warning Not Run Total
   43    0    10    13 66


V Model Guidelines Check


    1 Modeling Standards for MAAB  34  0  9  2


        1.1 Naming Conventions  5  0  1  0


  Check file names

Identify file names with incorrect characters or formatting.

Passed
All files have correct names.


  Check folder names

Identify folders using incorrect characters and formatting.

Passed
All folder names have correct formatting.


  Check subsystem names

Identify subsystem names that use characters that are not correct in C code.

Warning
The following subsystem names contain incorrect characters:

Error Subsystem block
Name contains incorrect characters. VDP/VDP/0B5_10ms
Name contains incorrect characters. VDP/VDP/2A3_10ms
Name contains incorrect characters. VDP/VDP/2A5_100ms
Name contains incorrect characters. VDP/VDP/2A7_100ms


Recommended Action
Rename the subsystem blocks using correct characters.


  Check port block names

Identify names of Inport or Outport blocks that use characters that are not correct in C code.

Passed
All the Inport or Outport block names use correct characters.


  Check character usage in signal labels

Identify signal labels that are not correct for C variable names.

Passed
All signal labels use correct characters.


  Check character usage in block names

Identify block names that use characters that are not correct in C code.

Passed
All blocks use correct characters.



        1.2 Model Architecture  0  0  1  0


  Check for mixing basic blocks and subsystems

Identify levels in the model that include basic blocks and subsystems. Each level of a model must be designed with blocks of the same level (for example, only subsystems or only basic blocks).

Warning
The following level(s) in the model include basic blocks and subsystems:

System Block path
VDP VDP/LoadMptEnvironment
VDP VDP/MptCodeGenerate1


Recommended Action
If possible, replace blocks at the identified level of the model hierarchy with basic blocks. Move nonvirtual blocks into the identified subsystem.



        1.3 Model Configuration Options  2  0  0  0


  Check Implement logic signals as Boolean data (vs. double)

Identify whether Implement logic signals as Boolean data (vs. double) is selected.

Passed
Implement logic signals as Boolean data (vs. double) is selected.


  Check model diagnostic parameters

Identify diagnostic parameters that are set to none.

Passed
All of the diagnostic parameters are set to error or warning.



        1.4 Simulink  14  0  7  1

        1.5 Stateflow  13  0  0  1


  Check usage of exclusive and default states in state machines

Identify Stateflow charts and substates that incorrectly use or define exclusive and default states.

_________________________________________________________________________________________

Check Stateflow charts for exclusive states
Identify Stateflow charts that have singular exclusive (OR) states.

Passed
The Stateflow charts do not have singular exclusive (OR) states.
_________________________________________________________________________________________

Check Stateflow charts for undefined default states
Identify Stateflow charts that do not define default states.

Passed
Each Stateflow chart defines a default state.
_________________________________________________________________________________________

Check for multiple states assigned as the default state
At the root level in the Stateflow hierarchy only one state should be assigned as the default.

Passed
The root level of the chart has only one default state assigned.
_________________________________________________________________________________________

Check for substates with singular OR states
States configured as OR should always be part of a group of states.

Passed
No singular OR states were detected.
_________________________________________________________________________________________

Check for substates without default states defined
At every level in the Stateflow hierarchy a default state should be assigned.

Passed
All substates have default states assigned.
_________________________________________________________________________________________

Check for substates with multiple default states defined
At every level in the Stateflow hierarchy only one state should be assigned as the default.

Passed
All levels of the chart have only one default state assigned.


  Check transition orientations in flowcharts

Identify transitions in Stateflow flow charts that are drawn incorrectly.

_________________________________________________________________________________________

Check for conditions drawn horizontally
Condition expressions should be drawn on the horizontal segments of flow charts.

Passed
All condition expressions were drawn horizontally.
_________________________________________________________________________________________

Check for action transitions drawn vertically
Transition actions should be drawn on the vertical segments of flow charts.

Passed
All transition actions were drawn vertically.
_________________________________________________________________________________________

Check for junctions for default transitions
All Junctions in a flow chart should have a default exit transition.

Passed
All Junctions have a default exit transition.
_________________________________________________________________________________________

Check for transitions that combine condition and action
Flow charts should not combine condition evaluations and action expressions in a single transition.

Passed
No combined expressions were found in the chart.


  Check entry formatting in State blocks in Stateflow charts

Identify missing line breaks between entry action (en), during action (du), and exit action (ex) entries in states. Identify missing line breaks after semicolons (;) in statements.

Passed
No Stateflow charts were found.


  Check return value assignments of graphical functions in Stateflow charts

Identify graphical functions with multiple assignments of return values in Stateflow charts.

Passed
No Stateflow charts were found.


  Check default transition placement in Stateflow charts

Identify all groupings of states that do not have a default transition or do not have the default state as the top-most state.

Passed
No Stateflow charts were found.


  Check for Strong Data Typing with Simulink I/O


Identify whether Stateflow charts have Use Strong Data Typing with Simulink I/O cleared.

Passed
No Stateflow charts were found.


  Check Stateflow data objects with local scope


Identify Stateflow data objects with local scope that are not scoped at the chart level or below.

Passed
All Stateflow data objects are properly scoped.


  Check usage of return values from a graphical function in Stateflow charts

Identify calls to graphical functions that are used in conditional expressions.

Passed
No conditional expressions containing calls to graphical functions were found.


  Check for MATLAB expressions in Stateflow charts

Identify Stateflow objects that use MATLAB expressions that are not suitable for code generation.
Note: This check applies only to Stateflow charts that use C as the action language.

Passed
No Stateflow objects that use MATLAB expressions were found.


  Check for pointers in Stateflow charts

Identify pointer operations on custom code variables.
Note: This check applies only to Stateflow charts that use C as the action language.

Passed
No pointer operations were found.


  Check for event broadcasts in Stateflow charts

Not Run


  Check transition actions in Stateflow charts

Identify missing line breaks between transition actions.

Passed
All transition actions are formatted correctly.


  Check for comparison operations in Stateflow charts

Identify comparison operations with different data types in Stateflow objects.

Passed
No comparison operations with different data types were found.


  Check for mismatches between names of Stateflow ports and associated signals


Identify mismatches between names of Stateflow ports and the associated signals.

Passed
No Stateflow charts were found.



    2 Code Generation Efficiency  5  0  0  0


  Identify blocks using one-based indexing

Check the model for blocks configured for one-based indexing

Passed
All blocks in the model use zero-based indexing.
_________________________________________________________________________________________


  Identify questionable software environment specifications

Passed


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

These settings can lead to inefficient code generation when inputs always fall within the range of valid breakpoint values for lookup table blocks, including Lookup Table blocks, Prelookup blocks and Interpolation blocks.

Passed
The lookup table blocks have been configured to generate range-checking free code.


  Identify questionable code instrumentation (data I/O)

Passed


  Check output types of logic blocks

Identify logic blocks that are outputting non-Boolean data types.

Passed
All logic blocks are being used appropriately.



    3 Modeling Standards for ISO 26262  4  0  1  11


  Check for unconnected objects

Identify unconnected lines, input ports, and output ports in the model

Passed
There are no unconnected lines, input ports, and output ports in this model.


  Check for fully defined interface

Not Run


  Check for questionable constructs

Check for constructs in the model that are not recommended for production code generation
Identify blocks that are not recommended to be used for code generation.

Passed
Constructs that are not recommended for production code generation were not found in the model or subsystem


  Check state machine type of Stateflow charts

Not Run


  Check usage of Math Operations blocks

Identify usage of Math Operation blocks in Simulink that might impact safety

Check usage of Abs blocks
Identify Absolute Value blocks that might produce unreachable code or overflows

Passed
There are no Abs blocks in the model.
_________________________________________________________________________________________

Check usage of Gain blocks
Identify Gain blocks whose value equals 1

Passed
No Gain blocks with value equal to 1 in the model or subsystem
_________________________________________________________________________________________

Check Usage of Assignment blocks
Identify Assignment blocks with possibly incomplete array initialization that do not have the simulation run-time diagnostic Action if any output element is not assigned set to:

  • Warning, if Assignment block is in an iterator subsystem
  • Error, if Assignment block is not in an iterator subsystem


Passed
All Assignment blocks are configured with block parameter Action if any output element is not assigned set to Warning or Error.


  Check usage of Signal Routing blocks

Not Run


  Check usage of Logic and Bit Operations blocks

Not Run


  Check usage of Ports and Subsystems blocks

Not Run


  Check for inconsistent vector indexing methods

Check consistent usage of vector indexing methods across the model or subsystem

Passed
No blocks using vector indexing were found


  Check for model objects that do not link to requirements

Not Run


  Check for root Inports with missing properties

Identify Inport blocks in the top-level of the model with missing or inherited sample times, data types, or port dimensions. Inport block properties are specified with block parameters or Simulink signal data objects that explicitly resolve to the connected signal lines.

Warning
The following Inport blocks have undefined or inherited sample times, data types or port dimensions

Inport Link Signal Object Conditions
5 VDP/GeISP_AppInvld_enum - Missing signal data type
Missing port dimension
6 VDP/GcISP_App_pct - Missing signal data type
Missing port dimension
7 VDP/GbISP_0B5Tiout_flg - Missing signal data type
Missing port dimension
8 VDP/GcISP_ChrgLdReq_numb - Missing signal data type
Missing port dimension
9 VDP/GeISP_VcuPwrReqBatA_enum - Missing signal data type
Missing port dimension
10 VDP/GeISP_PreThmVcuPmt_enum - Missing signal data type
Missing port dimension
11 VDP/GbISP_VcuChrgDisable_flg - Missing signal data type
Missing port dimension
12 VDP/GeISP_HVonOvrtmErr_enum - Missing signal data type
Missing port dimension
13 VDP/GeISP_HVoffOvrtmErr_enum - Missing signal data type
Missing port dimension
14 VDP/GbISP_LeadAcidChgHvOn_flg - Missing signal data type
Missing port dimension
15 VDP/GbISP_2A3Tiout_flg - Missing signal data type
Missing port dimension
16 VDP/GeISP_ElecMod_enum - Missing signal data type
Missing port dimension
17 VDP/GeISP_PreThmEna_enum - Missing signal data type
Missing port dimension
18 VDP/GbISP_2A5Tiout_flg - Missing signal data type
Missing port dimension
19 VDP/GeISP_VcuFalutLvl_enum - Missing signal data type
Missing port dimension
20 VDP/GeISP_VcuWrkSt_enum - Missing signal data type
Missing port dimension
21 VDP/GbISP_BrkPedSt_flg - Missing signal data type
Missing port dimension
22 VDP/GbISP_BrkPedInvld_flg - Missing signal data type
Missing port dimension
23 VDP/GbISP_2A7Tiout_flg - Missing signal data type
Missing port dimension
24 VDP/GbISP_PtCANBusoff_flg - Missing signal data type
Missing port dimension
25 VDP/GcLDP_Kl30Volt_mV - Missing signal data type
Missing port dimension
26 VDP/GcADP_YearSet_Yr - Missing signal data type
Missing port dimension
27 VDP/GbADP_OTAmodeONReq_flg - Missing signal data type
Missing port dimension
28 VDP/GbISP_DiagModeONReq_flg - Missing signal data type
Missing port dimension
29 VDP/GbISP_ChkSumMsg2A3Err_flg - Missing signal data type
Missing port dimension
30 VDP/GbISP_RcMsg2A3Err_flg - Missing signal data type
Missing port dimension
31 VDP/GbISP_ChkSumMsg2A5Err_flg - Missing signal data type
Missing port dimension
32 VDP/GbISP_RcMsg2A5Err_flg - Missing signal data type
Missing port dimension
33 VDP/GbISP_ChkSumMsg2A7Err_flg - Missing signal data type
Missing port dimension
34 VDP/GbISP_RcMsg2A7Err_flg - Missing signal data type
Missing port dimension
35 VDP/GeISP_NetWkUpSt_enum - Missing signal data type
Missing port dimension
∧ Less


Recommended Action
Explicitly define all missing Inport block properties identified in the results
  • Missing port dimension: Model contains Inports with inherited port dimension (-1). Specify port dimension for the listed Inport blocks or Simulink signal objects.
  • Missing signal data type: Model contains Inports with inherited data type. Specify a data type for the listed Inport blocks or Simulink signal objects.


  Display bug reports for Embedded Coder

Not Run


  Display bug reports for IEC Certification Kit

Not Run


  Display bug reports for Polyspace products for C/C++

Not Run


Not Run


Not Run