MXAM Report
|
MES Model Examiner®
|
EV3Control_V1
Failed
|
User:
|
KSchmidt
|
Generated at:
|
2019-10-12 14:13:09
|
Duration:
|
00:01:00
|
Support Contact:
|
Model Engineering Solutions GmbH, support@model-engineers.com
|
Artifacts:
|
GlobalPosition_demo_ec
|
com.modelengineers.mxam.tooladapter.matlab#Identification feature
|
SID
|
|
Contents
|
1 Result Overview
This section provides overviews on the guideline and check compliance, and the distribution of findings.
Failed
|
1.1 Artifact Result Overview
[» Contents]
This chart summarizes all artifact results. The artifact result evaluation is derived from the result type of the most severe guideline result.
|
1.2 Total Guideline Compliance
[» Contents]
This chart summarizes all guideline results. The guideline result evaluation is derived from the result type of the most severe finding of any of its checks.
|
1.3 Total Check Compliance
[» Contents]
This chart summarizes all check results. The check result evaluation is derived from the result type of the most severe finding of the check.
|
1.4 Findings Summary
[» Contents]
This chart summarizes the results of all check findings.
|
|
1.5 Linked Heat Map
[» Contents]
This heat map highlights guideline violations as a matrix of checks and artifacts. It shows the total number of findings in the color code of the respective check result.
|
|
|
|
|
|
Document
|
Chapter
|
Guideline ID
|
Check ID
|
|
|
|
Configuration
|
TL_RULE_STATEFLOW_MEALYMOORE_CHART
|
mcheck_mes_cgtl_4103
|
|
|
TL_RULE_STATEFLOW_OUTPUT_CHART_WAKEUP
|
mcheck_mes_cgtl_4104
|
|
|
TL_RULE_STATEFLOW_SUPERSTEP_CHART
|
mcheck_mes_cgtl_4105
|
|
|
mes_is_0002
|
mcheck_mes_is_0002
|
|
|
mes_slsf_3106
|
mcheck_mes_slsf_3106
|
|
|
|
|
|
5
|
misra_slsf_034_a
|
mcheck_misra_slsf_034_a
|
|
|
misra_slsf_034_d
|
mcheck_misra_slsf_034_d
|
|
|
Defensive Implementation Techniques
|
TL_RULE_LOGICBIT_LIB_RELOP_NAN
|
mcheck_mes_slsf_4109
|
|
|
|
|
|
1
|
misra_slsf_038_b
|
mcheck_misra_slsf_038_b
|
|
|
misra_slsf_038_c
|
mcheck_misra_slsf_038_c
|
|
|
sdt_ic003
|
mcheck_sdt_ic003
|
|
|
Enforcement of Strong Typing
|
misra_slsf_036_a
|
mcheck_misra_slsf_036_a
|
|
|
misra_slsf_037_h
|
mcheck_misra_slsf_037_h
|
|
|
sdt_sc002
|
mcheck_sdt_sc002_a
|
|
|
mcheck_sdt_sc002_b
|
|
|
mcheck_sdt_sc002_c
|
|
|
mcheck_sdt_sc002_d
|
|
|
mcheck_sdt_sc002_e
|
|
|
|
|
|
1
|
|
|
1
|
|
|
1
|
Established Design Principles
|
db_0110
|
mcheck_db_0110
|
|
|
mes_cgtl_4102
|
mcheck_mes_cgtl_4102
|
|
|
mes_sltl_001
|
mcheck_mes_sltl_001
|
|
|
mes_sltl_002
|
mcheck_mes_sltl_002_a
|
|
|
mcheck_mes_sltl_002_b
|
|
|
|
|
|
2
|
misra_slsf_006_e
|
mcheck_misra_slsf_006_e
|
|
|
misra_slsf_008_a
|
mcheck_misra_slsf_008_a
|
|
|
misra_slsf_012_a
|
mcheck_misra_slsf_012_a
|
|
|
misra_slsf_013_b
|
mcheck_misra_slsf_013_b
|
|
|
misra_slsf_013_c
|
mcheck_misra_slsf_013_c
|
|
|
misra_slsf_017_a
|
mcheck_misra_slsf_017_a
|
|
|
misra_slsf_017_b
|
mcheck_misra_slsf_017_b
|
|
|
misra_slsf_018_d
|
mcheck_misra_slsf_018_d
|
|
|
misra_slsf_018_e
|
mcheck_misra_slsf_018_e
|
|
|
na_0032
|
mcheck_na_0032_a
|
|
|
mcheck_na_0032_b
|
|
|
sdt_sc005
|
mcheck_sdt_sc005
|
|
|
Events
|
db_0126
|
mcheck_db_0126
|
|
|
misra_slsf_047_ab
|
mcheck_misra_slsf_047_ab
|
|
|
Execution Order
|
misra_slsf_009_b
|
mcheck_misra_slsf_009_b
|
|
|
Language Subset
|
TL_RULE_STATEFLOW_MATLAB
|
mcheck_ds_0064
|
|
|
jm_0001
|
mcheck_jm_0001
|
|
|
misra_slsf_005_a
|
mcheck_misra_slsf_005_a
|
|
|
misra_slsf_005_b
|
mcheck_misra_slsf_005_b
|
|
|
misra_slsf_043_b
|
mcheck_misra_slsf_043_b
|
|
|
misra_slsf_046_a
|
mcheck_misra_slsf_046_a
|
|
|
Model Architecture
|
mes_arch_1301
|
matlab_mxray_1301
|
|
|
mes_arch_1302
|
matlab_mxray_1302
|
|
|
mes_arch_1303
|
matlab_mxray_1303
|
|
|
mes_arch_1304
|
matlab_mxray_1304
|
|
|
mes_arch_1306
|
matlab_mxray_1306
|
|
|
Modeling of Data Flow
|
misra_slsf_005_c
|
mcheck_misra_slsf_005_c
|
|
|
misra_slsf_018_a
|
mcheck_misra_slsf_018_a
|
|
|
misra_slsf_018_b
|
mcheck_misra_slsf_018_b_1
|
|
|
mcheck_misra_slsf_018_b_2
|
|
|
misra_slsf_029_a
|
mcheck_misra_slsf_029_a
|
|
|
misra_slsf_029_f
|
mcheck_misra_slsf_029_f
|
|
|
misra_slsf_030_abc
|
mcheck_misra_slsf_030_ab
|
|
|
mcheck_misra_slsf_030_c
|
|
|
Naming Conventions
|
TL_RULE_SWDESIGN_IDENTIFIER_LENGTH
|
mcheck_misra_tl_2_3
|
|
|
|
|
|
13
|
|
|
|
5
|
jc_0201
|
mcheck_jc_0201
|
|
|
jc_0221
|
mcheck_jc_0221
|
|
|
misra_slsf_052_b
|
mcheck_misra_slsf_052_b
|
|
|
misra_tl_1_2
|
mcheck_misra_tl_1_2_a
|
|
|
mcheck_misra_tl_1_2_b
|
|
|
No Hidden Data Flow or Control Flow
|
db_0125
|
mcheck_db_0125
|
|
|
misra_slsf_037_b
|
mcheck_misra_slsf_037_b
|
|
|
Grand Total
|
29
|
29
|
|
1.6 Linked Document Structure
[» Contents]
This section shows the structure of the guideline document with the aggregated result for each chapter level.
Failed
|
1 MXAM Starter Set - Extended Version
|
Unselected
|
|
Passed
|
|
Passed
|
mes_arch_1301 - Restricted Local Complexity
|
Passed
|
matlab_mxray_1301 - Restricted Local Complexity
|
Passed
|
mes_arch_1302 - Restricted Number of Hierarchy Levels
|
Passed
|
matlab_mxray_1302 - Restricted Number of Hierarchy Levels
|
Passed
|
mes_arch_1303 - Restricted Number of Inports
|
Passed
|
matlab_mxray_1303 - Restricted Number of Inports
|
Passed
|
mes_arch_1304 - Restricted Number of Outports
|
Passed
|
matlab_mxray_1304 - Restricted Number of Outports
|
Passed
|
mes_arch_1306 - Effective Interfaces
|
Passed
|
matlab_mxray_1306 - Restricted Unused Elementary Inputs (globally, %)
|
Failed
|
|
Failed
|
|
Failed
|
|
Failed
|
|
Failed
|
|
Failed
|
|
Passed
|
jc_0201 - Usable Characters for Subsystem Names
|
Passed
|
mcheck_jc_0201 - Usable Characters for Subsystem Names
|
Passed
|
jc_0221 - Usable Characters for Signal Line Names
|
Passed
|
mcheck_jc_0221 - Usable Characters for Signal Line Names
|
Passed with Infos
|
1.3.2 Modeling of Data Flow
|
Passed with Infos
|
misra_slsf_018_a - Usage of "from" and "goto" Blocks - Visibility
|
Passed with Infos
|
mcheck_misra_slsf_018_a - Usage of "from" and "goto" Blocks - Visibility
|
Passed with Infos
|
misra_slsf_018_b - Usage of "from" and "goto" Blocks - Tag
|
Passed with Infos
|
mcheck_misra_slsf_018_b_1 - Usage of "from" and "goto" Blocks - Tag (Goto)
|
Passed with Infos
|
mcheck_misra_slsf_018_b_2 - Usage of "from" and "goto" Blocks - Tag (From)
|
Passed with Infos
|
misra_slsf_005_c - Allowable Simulink Blocks - Data Store Memory
|
Passed with Infos
|
mcheck_misra_slsf_005_c - Allowable Simulink Blocks - Data Store Memory
|
Passed
|
misra_slsf_030_abc - Port Location
|
Passed
|
mcheck_misra_slsf_030_ab - Port Location - Inports and Outports
|
Passed
|
mcheck_misra_slsf_030_c - Port Location - Trigger, Enable, and Action Ports
|
Passed
|
misra_slsf_029_a - Signal and Bus Line Positioning - Orientation
|
Passed
|
mcheck_misra_slsf_029_a - Signal and Bus Line Positioning - Orientation
|
Unselected
|
misra_slsf_029_be - Signal and Bus Line Positioning - Overlaps and Branching
|
Unselected
|
misra_slsf_029_c - Signal and Bus Line Positioning - Crossings of line and block
|
Passed
|
misra_slsf_029_f - Signal and Bus Line Positioning - Branching
|
Passed
|
mcheck_misra_slsf_029_f - Signal and Bus Line Positioning - Branching
|
Passed
|
|
Passed
|
misra_slsf_009_b - Block Execution Frequency and Order - Block Priority
|
Passed
|
mcheck_misra_slsf_009_b - Block Execution Frequency and Order - Block Priority
|
Unselected
|
1.3.4 Block and Text Appearance
|
Failed
|
|
Failed
|
1.4.1 Simulink/TargetLink
|
Passed
|
|
Passed
|
misra_slsf_005_b - Allowable Simulink Blocks - Prohibited Blocks
|
Passed
|
mcheck_misra_slsf_005_b - Allowable Simulink Blocks - Prohibited Blocks
|
Passed
|
misra_slsf_005_a - Allowable Simulink Blocks - Simulink Block Library
|
Passed
|
mcheck_misra_slsf_005_a - Allowable Simulink Blocks - Simulink Block Library
|
Passed
|
jm_0001 - Prohibited Simulink Standard Blocks Inside Controllers
|
Passed
|
mcheck_jm_0001 - Prohibited Simulink Standard Blocks Inside Controllers
|
Passed with Infos
|
1.4.1.2 Defensive Implementation Techniques
|
Passed with Infos
|
sdt_ic003 - Default Paths of Switch Case Blocks
|
Passed with Infos
|
mcheck_sdt_ic003 - Default Paths of Switch Case Blocks
|
Failed
|
1.4.1.3 Established Design Principles
|
Passed
|
misra_slsf_006_e - Block Parameters - Masked Subsystems
|
Passed
|
mcheck_misra_slsf_006_e - Block Parameters - Masked Subsystems
|
Passed
|
misra_slsf_017_a - Unconnected Blocks, Signal Lines and Busses - Blocks
|
Passed
|
mcheck_misra_slsf_017_a - Unconnected Blocks, Signal Lines and Busses - Blocks
|
Passed
|
misra_slsf_017_b - Unconnected Blocks, Signal Lines and Busses - Signals and Busses
|
Passed
|
mcheck_misra_slsf_017_b - Unconnected Blocks, Signal Lines and Busses - Signals and Busses
|
Passed with Infos
|
misra_slsf_018_d - Usage of "from" and "goto" Blocks - Matching "from" Block
|
Passed with Infos
|
mcheck_misra_slsf_018_d - Usage of "from" and "goto" Blocks - Matching "from" Block
|
Passed with Infos
|
misra_slsf_018_e - Usage of "from" and "goto" Blocks - Matching "goto" Block
|
Passed with Infos
|
mcheck_misra_slsf_018_e - Usage of "from" and "goto" Blocks - Matching "goto" Block
|
Passed
|
sdt_sc005 - Propagation of Signal Names
|
Passed
|
mcheck_sdt_sc005 - Propagation of Signal Names
|
Passed
|
db_0110 - Tunable Parameters in Basic Blocks
|
Passed
|
mcheck_db_0110 - Tunable Parameters in Basic Blocks
|
Passed with Infos
|
na_0032 - Use of Merge Blocks
|
Passed with Infos
|
mcheck_na_0032_a - Use of Merge Blocks - Identical Buses
|
Passed with Infos
|
mcheck_na_0032_b - Use of Merge Blocks - Signals Entering Merge Block
|
Failed
|
|
Failed
|
|
Passed with Infos
|
misra_slsf_013_b - Multiport Switch Block - Control Input
|
Passed with Infos
|
mcheck_misra_slsf_013_b - Multiport Switch Block - Control Input
|
Passed with Infos
|
misra_slsf_013_c - Multiport Switch Block - Value Range of Control Input
|
Passed with Infos
|
mcheck_misra_slsf_013_c - Multiport Switch Block - Value Range of Control Input
|
Passed
|
mes_sltl_001 - Magic Constants in Constant Blocks
|
Passed
|
mcheck_mes_sltl_001 - Magic Constants in Constant Blocks
|
Passed with Infos
|
mes_sltl_002 - Comparison of Floating-Point Signals
|
Passed with Infos
|
mcheck_mes_sltl_002_a - Comparison of Floating-Point Signals in Simulink and TargetLink
|
Passed with Infos
|
mcheck_mes_sltl_002_b - Comparison of Floating-Point Signals in Stateflow
|
Passed with Infos
|
misra_slsf_012_a - Switch Block
|
Passed with Infos
|
mcheck_misra_slsf_012_a - Switch Block
|
Passed with Infos
|
1.4.1.4 Naming Conventions
|
Unselected
|
misra_slsf_026_c - Simulink Block, Subsystem and Library Naming - Port Names
|
Passed with Infos
|
TL_RULE_SWDESIGN_IDENTIFIER_LENGTH - Identifier Length
|
Passed with Infos
|
mcheck_misra_tl_2_3 - Restricting identifiers to 31 characters
|
Passed
|
misra_tl_1_2 - Comments in Block Properties
|
Passed
|
mcheck_misra_tl_1_2_a - Comments in block properties
|
Passed
|
mcheck_misra_tl_1_2_b - Umlaute in Block Properties
|
Unselected
|
TL_RULE_GENERAL_NAMING - General Naming Conventions
|
Unselected
|
1.4.1.5 Initialization of Variables
|
Failed
|
|
Failed
|
|
Failed
|
|
Passed with Infos
|
|
Passed with Infos
|
|
Passed with Infos
|
misra_slsf_046_a - History Junction
|
Passed with Infos
|
mcheck_misra_slsf_046_a - History Junction
|
Passed with Infos
|
TL_RULE_STATEFLOW_MATLAB - MATLAB Functionality
|
Passed with Infos
|
mcheck_ds_0064 - MATLAB Functionality
|
Unselected
|
TL_RULE_STATEFLOW_EXPLICIT_INPUT_SPEC - Avoidance of TargetLink Specifications for Stateflow Input Variables
|
Passed with Infos
|
1.4.2.2 Defensive Implementation Techniques
|
Passed with Infos
|
misra_slsf_038_b - Operators in State Machines - Permitted Operations
|
Passed with Infos
|
mcheck_misra_slsf_038_b - Operators in State Machines - Permitted Operations
|
Passed with Infos
|
misra_slsf_038_c - Operators in State Machines - C Library Functions
|
Passed with Infos
|
mcheck_misra_slsf_038_c - Operators in State Machines - C Library Functions
|
Unselected
|
misra_slsf_041_a - Usage of Boxes
|
Unselected
|
mes_sf_001 - No Loops in Multi Segmented Transitions
|
Unselected
|
mes_sf_003 - Interaction between Parallel States
|
Unselected
|
1.4.2.3 Established Design Principles
|
Passed with Infos
|
1.4.2.4 Naming Conventions
|
Passed with Infos
|
misra_slsf_052_b - State Labelling - State Name and Data Items
|
Passed with Infos
|
mcheck_misra_slsf_052_b - State Labelling - State Name and Data Items
|
Passed with Infos
|
1.4.2.5 Enforcement of Strong Typing
|
Passed with Infos
|
misra_slsf_036_a - Stateflow/Simulink Interface Signals, Parameters and Naming - Bus Inputs
|
Passed with Infos
|
mcheck_misra_slsf_036_a - Stateflow/Simulink Interface Signals, Parameters and Naming - Bus Inputs
|
Passed with Infos
|
misra_slsf_037_h - Internal Data - Type
|
Passed with Infos
|
mcheck_misra_slsf_037_h - Internal Data - Type
|
Unselected
|
misra_slsf_048_e - Stateflow Coding - Custom Code Variables
|
Unselected
|
|
Passed with Infos
|
1.4.2.7 No Hidden Data Flow or Control Flow
|
Passed with Infos
|
db_0125 - Scope of Internal Signals and Local Auxiliary Variables
|
Passed with Infos
|
mcheck_db_0125 - Scope of Internal Signals and Local Auxiliary Variables
|
Passed with Infos
|
misra_slsf_037_b - Internal Data - Local Data
|
Passed with Infos
|
mcheck_misra_slsf_037_b - Internal Data - Local Data
|
Passed with Infos
|
|
Passed with Infos
|
misra_slsf_047_ab - Stateflow Events
|
Passed with Infos
|
mcheck_misra_slsf_047_ab - Stateflow Events
|
Passed with Infos
|
db_0126 - Scope of Events
|
Passed with Infos
|
mcheck_db_0126 - Scope of Events
|
Unselected
|
TL_RULE_STATEFLOW_IMPLICIT_EVENTS - No Use of Implicit Events
|
Unselected
|
TL_RULE_STATEFLOW_ORDER_PARALLEL_STATES - Order Numbers for Parallel States
|
Passed with Infos
|
|
Passed with Infos
|
mes_is_0002 - User-specified State/transition Execution Order
|
Passed with Infos
|
mcheck_mes_is_0002 - User-specified State/Transition execution order
|
Passed with Infos
|
mes_slsf_3106 - Avoid Global Stateflow Functions
|
Passed with Infos
|
mcheck_mes_slsf_3106 - Avoid Global Stateflow Functions
|
Passed with Infos
|
misra_slsf_034_a - Chart Properties - C-like Bitwise Operators
|
Passed with Infos
|
mcheck_misra_slsf_034_a - Chart Properties - C-like Bitwise Operators
|
Passed with Infos
|
misra_slsf_034_d - Chart Properties - Chart Initialization
|
Passed with Infos
|
mcheck_misra_slsf_034_d - Chart Properties - Chart Initialization
|
Passed with Infos
|
TL_RULE_STATEFLOW_MEALYMOORE_CHART - No Support for Mealy or Moore State Machine Types
|
Passed with Infos
|
mcheck_mes_cgtl_4103 - No Support for Mealy or Moore State Machine Types
|
Passed with Infos
|
TL_RULE_STATEFLOW_OUTPUT_CHART_WAKEUP - No Output initialization When Chart Wakes Up
|
Passed with Infos
|
mcheck_mes_cgtl_4104 - No Output initialization When Chart Wakes Up
|
Passed with Infos
|
TL_RULE_STATEFLOW_SUPERSTEP_CHART - No Chart Execution with Super Step Semantics
|
Passed with Infos
|
mcheck_mes_cgtl_4105 - No Chart Execution with Super Step Semantics
|
Warnings
|
|
Warnings
|
1.5.1 Simulink/TargetLink
|
Unselected
|
|
Warnings
|
1.5.1.2 Defensive Implementation Techniques
|
Passed with Infos
|
TL_RULE_LOGICBIT_LIB_RELOP_NAN - Relational Operator with IsInf, IsNaN, IsFinite Checks
|
Passed with Infos
|
mcheck_mes_slsf_4109 - Relational Operator with IsInf, IsNaN, IsFinite Checks
|
Warnings
|
|
Warnings
|
|
Passed with Infos
|
1.5.1.3 Established Design Principles
|
Passed
|
misra_slsf_008_a - Rounding and Saturation in Simulink Blocks - Saturation Property
|
Passed
|
mcheck_misra_slsf_008_a - Rounding and Saturation in Simulink Blocks - Saturation Property
|
Passed with Infos
|
mes_cgtl_4102 - Data Type Conversion Block in TargetLink Models
|
Passed with Infos
|
mcheck_mes_cgtl_4102 - Data Type Conversion Block in TargetLink Models
|
Warnings
|
1.5.1.4 Enforcement of Strong Typing
|
Unselected
|
misra_tl_5_1 - Attributes of Look-Up table outputs
|
Unselected
|
misra_tl_6_7 - Avoiding rescaling of input signals to LookupTables
|
Unselected
|
sdt_sa001 - Strong Data Typing at the Input of Logical Operator Blocks
|
Unselected
|
sdt_sa002 - Output Type of Logical and Relational Operator Blocks
|
Warnings
|
|
Warnings
|
|
Warnings
|
|
Warnings
|
|
Unselected
|
sdt_sc003 - Strong Data Typing of Merge Blocks
|
Unselected
|
sdt_sc004 - Strong Data Typing of Arithmetic Blocks
|
Unselected
|
na_0002 - Appropriate Implementation of Fundamental Logical and Numerical Operations
|
Unselected
|
TL_RULE_USERFUNC_LIB_FCN_BLOCK - Restrictions with Regard to the Fcn Block
|
Unselected
|
|
Passed with Infos
|
|
Passed with Infos
|
|
Passed with Infos
|
misra_slsf_043_b - Transitions - Transition-Actions
|
Passed with Infos
|
mcheck_misra_slsf_043_b - Transitions - Transition-Actions
|
Passed with Infos
|
1.5.2.2 Enforcement of Strong Typing
|
Passed with Infos
|
sdt_sc002 - Strong Data Typing at the Stateflow Interface
|
Passed with Infos
|
mcheck_sdt_sc002_a - Strong Data Typing at the Stateflow Interface - Chart Option "Strong Data Typing with Simulink I/O"
|
Passed with Infos
|
mcheck_sdt_sc002_b - Strong Data Typing at the Stateflow Interface - Input Interface
|
Passed with Infos
|
mcheck_sdt_sc002_c - Strong Data Typing at the Stateflow Interface - Output Interface
|
Passed with Infos
|
mcheck_sdt_sc002_d - Strong Data Typing at the Stateflow Interface - Data Range
|
Passed with Infos
|
mcheck_sdt_sc002_e - Strong Data Typing at the Stateflow Interface - Variable Range
|
|
1.7 Result Color Legend
[» Contents]
This section shows all occuring result types in order of severeness and the respective color legend.
Aborted
|
Canceled
|
Unknown
|
Review
|
Unrepaired
|
Failed
|
Warnings
|
Passed with Infos
|
Repaired
|
Passed
|
Inapplicable
|
Unselected
|
|
|
|
2 Execution Details
[» Contents]
This section shows details about the executed analysis.
2.1 Analyzed Artifacts
[» Contents]
This section lists details of all analyzed artifacts.
Name
|
Additional Information
|
GlobalPosition_demo_ec
|
modeltype: MOD dynamic: modelpath: D:\Programme\MTestDev\MTest_Autobuilds\EV3Build_Update2020\EV3Control_ec\ModelsAllVersions\V02_statAna\GlobalPosition_demo_ec.slx Creator: stuermer Model Version: 1.26 Source File: D:\Programme\MTestDev\MTest_Autobuilds\EV3Build_Update2020\EV3Control_ec\ModelsAllVersions\V02_statAna\GlobalPosition_demo_ec.slx Created: Wed Aug 29 09:15:49 2018 Modified: Wed Aug 19 14:08:32 2020
|
2.2 Execution Environment
[» Contents]
This section lists details about the environment in which the analysis has been executed.
MES Model Examiner®
|
6.0.0
|
Expires
|
Permanent license
|
MATLAB-Adapter -v2.3
|
9.5
|
Operating system
|
Windows 7
|
Java Version
|
1.8.0_131
|
JVM Architecture
|
amd64
|
2.3 Global Check Parameters
[» Contents]
This section lists the configuration of all global check parameters and their applied values during analysis.
Parameter Name
|
Value
|
Description
|
Comment
|
DebugInfo
|
false
|
This option specifies whether or not to print debug infos in MATLAB.
|
Default Setting
|
FollowLinks
|
on
|
This option specifies whether or not to follow links into library blocks.
|
Default Setting
|
Global.CheckItemResultMappings
|
{''}
|
List of strings with a mapping to change the result type of check items for certain checks. This might be helpful if e.g. layout checks have a lower priority for you and you want to see only warnings instead of failures in your report. The following keywords are available: - f2w: faulty to warning, convert all rule violations for this check or list of checks to warnings - f2n: faulty to note, convert rule violations to notes - f2p: faulty to passed, omit all rule violations from report - f2r: faulty to review, convert all rule violations to review results - w2f: warnings to faulty, convert all warnings to rule violations - w2n: warning to note, convert all warnings to notes - w2p: warning to passed, omit all warnings from report - w2r: warning to review, convert all warnings to review results - n2f: note to faulty, convert all notes to rule violations - n2w: note to warning, convert notes to warnings - n2p: note to passed, omit notes from report - n2r: note to review, convert all notes to review results - r2f: review to faulty - r2w: review to warning - r2n: review to note - r2p: review to passed
Examples: - {'mcheck_ds_0055,mcheck_ds_0012:w2p'} Suppresses all warnings of check mcheck_ds_0055 and mcheck_ds_0012 - {'*:w2n,n2p','mcheck_is_0007:f2w'} Suppresses notes and converts warnings to notes for all checks. In addition, it converts all violations to warnings for check mcheck_is_007.
Please note, that it's not allowed to combine conflicting keywords, e.g. in '*:w2n w2p' or in {'*:f2n','mcheck_is_0007:f2w'}.
|
Default Setting
|
Global.FilterConfigurableSubsystems
|
0
|
Enables to selectively or completely filter out configurable subsystems, with or without its content. - 0: Do not apply. Configurable subsystems will be checked along with their content. - 1: Filter out configurable subsystems and all its content (selected or not selected) - 2: Filter out all content of configurable subsystems but keep the configurable subsystem blocks. - 3: Filter out unselected content of configurable subsystems, but keep the selected content.
|
Default Setting
|
Global.IgnoreBlocksByAttrFormatStr
|
0
|
If this parameter is set to true, the filter defined in the attribute format string is evaluated by each check of the analysis. The filter is ignored if the parameter is set to false.
|
Default Setting
|
Global.IgnoredBlockTypes
|
{''}
|
List of block types to be ignored by all checks. Expected MATLAB type: cell array of strings, e.g. {'Blocktype1','Blocktype2'}
|
Default Setting
|
Global.IgnoredLibraries
|
{''}
|
List of library names of which included blocks will be ignored by all checks.Note: This list is not evaluated if the parameter Global. SkipLinkedSystems is set to a value greater than 0. Expected MATLAB type: cell array of strings, e.g. {'Library1','Library2'}
|
Default Setting
|
Global.IgnoredLibrariesContentOnly
|
true
|
If true, only the contents of blocks linked to libraries given in the parameter Global.IgnoredLibraries will be filtered out. If false, the blocks themselves will be filtered out, too.
|
Default Setting
|
Global.IgnoredMaskedSubsystems
|
{''}
|
List of mask types to be ignored by all checks. Expected MATLAB type: cell array of strings, e.g. {'Masktype1','Masktype2'}
|
Default Setting
|
Global.IgnoredMaskedSubsystemsContentOnly
|
true
|
If true, only the content of the masked subsystems given in the parameter Global.IgnoredMaskedSubsystems will be filtered out. If false, the subsystems themselves will be filtered out too.
|
Default Setting
|
Global.SkipLinkedSystems
|
0
|
Enables to filter linked systems and their content. - 0: Do not apply - 1: Filter out systems/blocks linked to a library and their content - 2: Filter out content of systems/blocks that are linked to a library but keep the linked blocks
|
Default Setting
|
Global.SkipSLObjectsInCharts
|
true
|
If true, Simulink objects in Stateflow charts will be filtered out.
|
Default Setting
|
Global.SkipTLBlockChildren
|
true
|
If true, Simulink blocks located in TargetLink subsystems will be filtered out.
|
Default Setting
|
LogFilterStatistics
|
0
|
This option specifies if and for which level statistics of the filter actions will be returned.
|
Default Setting
|
LookUnderMasks
|
all
|
This option specifies whether or not to look under masked subsystems.
|
Default Setting
|
MXRAY.ShowCyclomaticComplexity
|
false
|
If true, the cyclomatic complexity (local) for each subsystem in the analyzed model will be shown.
|
Default Setting
|
MXRAY.ShowInports
|
true
|
If true, the number of inports for each subsystem in the analyzed model will be shown.
|
Default Setting
|
MXRAY.ShowLevel
|
true
|
If true, the level for each subsystem in the hierarchy of the analyzed model will be shown.
|
Default Setting
|
MXRAY.ShowLocalComplexity
|
true
|
If true, the local complexity for each subsystem in the analyzed model will be shown.
|
Default Setting
|
MXRAY.ShowOutports
|
true
|
If true, the number of outports for each subsystem in the analyzed model will be shown.
|
Default Setting
|
MXRAY.ShowUnusedElementaryInputs
|
true
|
If true, the percentage of unused elementary inputs for each subsystem in the analyzed model will be shown.
|
Default Setting
|
NoteLevels
|
4
|
This option specifies the level for reported notes.
|
Default Setting
|
Progressbar step
|
50
|
This option specifies the granularity for the progress bar steps.
|
Default Setting
|
ResolveModelReferences
|
false
|
Follow references to other MATLAB models
|
Default Setting
|
UseCache
|
false
|
This option specifies whether or not to use cached items in MATLAB.
|
Default Setting
|
WarningLevels
|
4
|
This option specifies the level for reported warnings.
|
Default Setting
|
|
3 Project Configuration
This section shows information about the pre-configured project settings for analysis.
3.1 General Information
[» Contents]
This section shows general project information and settings.
Title:
|
EV3Control_V1
|
Location:
|
D:\Programme\MTestDev\MTest_Autobuilds\EV3Build_Update2020\EV3Control_ec\ModelsAllVersions\MXAM_Project\EV3Control_V1_MXAM.mxmp
|
Author:
|
KSchmidt
|
Access:
|
public
|
Selection change allowed:
|
true
|
Annotations enabled:
|
true
|
Result Priority Order:
|
Aborted, Canceled, Unknown, Review, Unrepaired, Failed, Warnings, Passed with Infos, Repaired, Inapplicable, Passed, Unselected
|
3.2 Guideline Documents
[» Contents]
This section lists the guideline documents that were selected for analysis.
ID
|
Title
|
Location
|
Properties
|
mes_first_set_modeling_guidelines_fs
|
MXAM Starter Set - Extended Version
|
D:\Programme\MXAM_6_0\libraries\documents\Model-Engineering-Solutions\mes_first_set_modeling_guidelines_fs\v04
|
Version: 4 Author: Model Engineering Solutions GmbH Last modified: 09/20/2019 11:40:52 Status: released Selected: true
|
3.3 Ignore Lists
[» Contents]
This section lists all rules of applied ignore-list definitions.
3.4 Custom Check Parameter Settings
[» Contents]
This section lists all check parameters, shared parameters, and global parameters that were customized and overwritten by the project configuration.
|
4 User Changes
This sections shows user changes that affect the results.
4.1 Annotations for Justified Deviations
[» Contents]
This sections lists all user annotations on findings, including comments and result changes.
4.2 Guideline Document Selection Changes
[» Contents]
This section lists all user-made selection changes deviating from the initial project configuration of the guideline documents.
ID
|
Change
|
Message
|
Guideline document: mes_first_set_modeling_guidelines_fs
|
mcheck_ar_0001
|
SELECTED
|
Selected check 'mcheck_ar_0001' in 'mes_first_set_modeling_guidelines_fs/Layout and Design/Naming Conventions/ar_0001'
|
mcheck_ar_0002
|
SELECTED
|
Selected check 'mcheck_ar_0002' in 'mes_first_set_modeling_guidelines_fs/Layout and Design/Naming Conventions/ar_0002'
|
mcheck_sdt_sc002_e
|
SELECTED
|
Selected check 'mcheck_sdt_sc002_e' in 'mes_first_set_modeling_guidelines_fs/Implementation Model/Stateflow/Enforcement of Strong Typing/sdt_sc002'
|
mcheck_sdt_sc002_c
|
SELECTED
|
Selected check 'mcheck_sdt_sc002_c' in 'mes_first_set_modeling_guidelines_fs/Implementation Model/Stateflow/Enforcement of Strong Typing/sdt_sc002'
|
mcheck_jc_0221
|
SELECTED
|
Selected check 'mcheck_jc_0221' in 'mes_first_set_modeling_guidelines_fs/Layout and Design/Naming Conventions/jc_0221'
|
mcheck_sdt_sc002_a
|
SELECTED
|
Selected check 'mcheck_sdt_sc002_a' in 'mes_first_set_modeling_guidelines_fs/Implementation Model/Stateflow/Enforcement of Strong Typing/sdt_sc002'
|
mcheck_misra_slsf_043_b
|
SELECTED
|
Selected check 'mcheck_misra_slsf_043_b' in 'mes_first_set_modeling_guidelines_fs/Implementation Model/Stateflow/Language Subset/misra_slsf_043_b'
|
matlab_mxray_1306
|
SELECTED
|
Selected check 'matlab_mxray_1306' in 'mes_first_set_modeling_guidelines_fs/Model Architecture/mes_arch_1306'
|
mcheck_sdt_sc002_d
|
SELECTED
|
Selected check 'mcheck_sdt_sc002_d' in 'mes_first_set_modeling_guidelines_fs/Implementation Model/Stateflow/Enforcement of Strong Typing/sdt_sc002'
|
mcheck_jc_0201
|
SELECTED
|
Selected check 'mcheck_jc_0201' in 'mes_first_set_modeling_guidelines_fs/Layout and Design/Naming Conventions/jc_0201'
|
mcheck_sdt_sc002_b
|
SELECTED
|
Selected check 'mcheck_sdt_sc002_b' in 'mes_first_set_modeling_guidelines_fs/Implementation Model/Stateflow/Enforcement of Strong Typing/sdt_sc002'
|
|
5 Guideline and Check Findings Details
[» Contents]
This sections shows all guideline and check descriptions and the respective findings.
|
Guideline: ar_0001 - Filenames
[» Contents]
[» Document Structure]
[» Heat Map]
Failed
|
|
Status
|
released
|
Author
|
Model Engineering Solutions GmbH
|
Version
|
1
|
Priority
|
mandatory
|
Objective
|
code generation, readability, workflow, simulation
|
Source
|
MAAB 2.1, MAAB 3.0
|
MATLAB Versions
|
all
|
TargetLink Versions
|
irrelevant
|
Embedded Coder Versions
|
irrelevant
|
Automatically Checkable
|
partly
|
Manual Review Required
|
yes
|
Description
|
A filename conforms to the following constraints: FORM - filename = name.extension
- name: no leading digits, no blanks
- extension: no blanks
UNIQUENESS - all filenames within the parent project directory
- cannot conflict with C/C++ or MATLAB keywords
ALLOWED CHARACTERS - name: a b c d e f g h i j k l m n o p q r s t u v w x y z A B C D E F G H I J K L M N O P Q R S T U V W X Y Z 0 1 2 3 4 5 6 7 8 9 _
- extension: a b c d e f g h i j k l m n o p q r s t u v w x y z A B C D E F G H I J K L M N O P Q R S T U V W X Y Z 0 1 2 3 4 5 6 7 8 9
UNDERSCORES name: - can use underscores to separate parts
- cannot have more than one consecutive underscore
- cannot start with an underscore
- cannot end with an underscore
extension: - should not use underscores
|
Rationale
|
Readability, Workflow, Simulation, Code Generation
|
Review Measures
|
Each file name within a given project directory does not contain a C/C++ keyword.
|
Related Guidelines
|
hisl_0031
|
Model Type
|
functional model
|
ISO 26262-6 Mapping
|
T1.1d Use of Defensive Implementation Techniques, T1.1h Use of Naming Conventions
|
ISO 25119-3 Mapping
|
T3-1.1 Suitable Programming Language, T3-2.2 Defensive Programming
|
Last Change
|
3.0
|
Check: mcheck_ar_0001 - Filenames
[» Contents]
[» Document Structure]
[» Heat Map]
Failed
|
|
Compiled Model Required
|
no
|
TargetLink Required
|
no
|
Model Root Required
|
no
|
MATLAB Versions
|
all
|
TargetLink Versions
|
irrelevant
|
Embedded Coder Versions
|
irrelevant
|
Pass-Fail Criteria
|
The check analyzes the name of each file found within the given root directory and its sub directories. The root directory is defined by the check parameter MAAB.ar_0001.ParentDirectory. The filenames specified in the check parameter MAAB.ar_0001.IgnoredFileNames as well as the files contained in the directories specified in MAAB.ar_0001.IgnoredDirectoryNames are not analyzed. - Failed 1: At least one of the following cases hold for a file name:
- starts with a digit or an underscore
- has more than one consecutive underscore
- ends with an underscore
- contains a MATLAB function name
- Failed 2: The file name or file extension consists of at least one character that is not allowed or it contains at least one blank.
- Failed3: The extension contains an underscore.
- Failed4: The same file name is assigned more than once to a file within the given root directory and its sub directories.
- Warning: The given root directory does not exist.
The check result is passed if no failed case applies. The allowed characters are: - file name: a b c d e f g h i j k l m n o p q r s t u v w x y z A B C D E F G H I J K L M N O P Q R S T U V W X Y Z 0 1 2 3 4 5 6 7 8 9 _
- file extension: a b c d e f g h i j k l m n o p q r s t u v w x y z A B C D E F G H I J K L M N O P Q R S T U V W X Y Z 0 1 2 3 4 5 6 7 8 9
|
Technical Notes
|
The guideline ar_0001 states that file names should not contain C/C++ keywords. This is not checked automatically. By default, the root directory is the directory path of the model (artifact).
The check might be time consuming as the analysis depends on the number of files found within the root directory and its sub directories.
|
Solution
|
Rename each reported file according to the rules set by the guideline ar_0001.
|
Repair Action
|
No automatic repair action available.
|
Example
|
|
Prerequisites
|
|
Parameter Name
|
Value
|
Description
|
Comment
|
MAAB.ar_0001.ParentDirectory
|
'modelroot'
|
Defines the root directory from which the check searches for files recursively. Default value 'modelroot' is the directory path of the model (artifact). If the parameter is set to 'pwd' the current directory is analyzed. The parameter must not be empty. Syntax: '<Full path of the directory, where the files are to be checked>'.
|
Default Setting
|
MAAB.ar_0001.IgnoredFileNames
|
{''}
|
Defines the names of the files to be ignored. Syntax: {'file name1','file name2',.....'file nameN'} Each file name must include the respective file extension.
|
Default Setting
|
MAAB.ar_0001.IgnoredDirectoryNames
|
{'_sfprj','_self','_sfun'}
|
Defines the names of the directories to be ignored. Syntax: {'directory name1','directory name2',.....'directory nameN'}
|
Default Setting
|
Findings: GlobalPosition_demo_ec | mcheck_ar_0001
[» Contents]
[» Document Structure]
[» Heat Map]
|
Failed
Open the HTML report in the MATLAB browser to use the model links of MATLAB checks.
|
|
1. D:\Programme\MTestDev\MTest_Autobuilds\EV3Build_Update2020\EV3Control_ec\ModelsAllVersions\V02_statAna\MXAMProject\MXAM-Report_EV3Control_V1_EV3Control_demo_ec_2019-10-12_12.59
|
Name:
|
|
Message:
|
The file name (custom5) violates the following rules:<br>- file extension is empty.
|
|
|
|
|
2. D:\Programme\MTestDev\MTest_Autobuilds\EV3Build_Update2020\EV3Control_ec\ModelsAllVersions\V02_statAna\MXAMProject\MXAM-Report_EV3Control_V1_EV3Control_demo_ec_2019-10-12_12.59
|
Name:
|
|
Message:
|
The file name (custom6) violates the following rules:<br>- file extension is empty.
|
|
|
|
|
3. D:\Programme\MTestDev\MTest_Autobuilds\EV3Build_Update2020\EV3Control_ec\ModelsAllVersions\V02_statAna\MXAMProject
|
Name:
|
MXAM-Report_EV3Control_V1_EV3Control_demo_ec_2019-10-12_12.59.html
|
Message:
|
The file name (MXAM-Report_EV3Control_V1_EV3Control_demo_ec_2019-10-12_12.59.html) violates the following rules:<br>- it contains prohibited characters.
|
|
|
|
|
4. D:\Programme\MTestDev\MTest_Autobuilds\EV3Build_Update2020\EV3Control_ec\ModelsAllVersions\V02_statAna\MXAMProject
|
Name:
|
MXAM-Report_EV3Control_V1_EV3Control_demo_ec_2019-10-12_12.59.mxmr
|
Message:
|
The file name (MXAM-Report_EV3Control_V1_EV3Control_demo_ec_2019-10-12_12.59.mxmr) violates the following rules:<br>- it contains prohibited characters.
|
|
|
|
|
5. D:\Programme\MTestDev\MTest_Autobuilds\EV3Build_Update2020\EV3Control_ec\ModelsAllVersions\V02_statAna\MXAMProject\MXAM-Report_EV3Control_V1_GlobalPosition_demo_ec_2019-10-12_13.07
|
Name:
|
|
Message:
|
The file name (custom20) violates the following rules:<br>- file extension is empty.
|
|
|
|
|
6. D:\Programme\MTestDev\MTest_Autobuilds\EV3Build_Update2020\EV3Control_ec\ModelsAllVersions\V02_statAna\MXAMProject\MXAM-Report_EV3Control_V1_GlobalPosition_demo_ec_2019-10-12_13.07
|
Name:
|
|
Message:
|
The file name (custom21) violates the following rules:<br>- file extension is empty.
|
|
|
|
|
7. D:\Programme\MTestDev\MTest_Autobuilds\EV3Build_Update2020\EV3Control_ec\ModelsAllVersions\V02_statAna\MXAMProject
|
Name:
|
MXAM-Report_EV3Control_V1_GlobalPosition_demo_ec_2019-10-12_13.07.html
|
Message:
|
The file name (MXAM-Report_EV3Control_V1_GlobalPosition_demo_ec_2019-10-12_13.07.html) violates the following rules:<br>- it contains prohibited characters.
|
|
|
|
|
8. D:\Programme\MTestDev\MTest_Autobuilds\EV3Build_Update2020\EV3Control_ec\ModelsAllVersions\V02_statAna\MXAMProject
|
Name:
|
MXAM-Report_EV3Control_V1_GlobalPosition_demo_ec_2019-10-12_13.07.mxmr
|
Message:
|
The file name (MXAM-Report_EV3Control_V1_GlobalPosition_demo_ec_2019-10-12_13.07.mxmr) violates the following rules:<br>- it contains prohibited characters.
|
|
|
|
|
9. D:\Programme\MTestDev\MTest_Autobuilds\EV3Build_Update2020\EV3Control_ec\ModelsAllVersions\V02_statAna\MXAMProject\MXAM-Report_EV3Control_V1_ManageVehicleStates_demo_ec_2019-10-12_13.10
|
Name:
|
|
Message:
|
The file name (custom30) violates the following rules:<br>- file extension is empty.
|
|
|
|
|
10. D:\Programme\MTestDev\MTest_Autobuilds\EV3Build_Update2020\EV3Control_ec\ModelsAllVersions\V02_statAna\MXAMProject\MXAM-Report_EV3Control_V1_ManageVehicleStates_demo_ec_2019-10-12_13.10
|
Name:
|
|
Message:
|
The file name (custom31) violates the following rules:<br>- file extension is empty.
|
|
|
|
|
11. D:\Programme\MTestDev\MTest_Autobuilds\EV3Build_Update2020\EV3Control_ec\ModelsAllVersions\V02_statAna\MXAMProject
|
Name:
|
MXAM-Report_EV3Control_V1_ManageVehicleStates_demo_ec_2019-10-12_13.10.html
|
Message:
|
The file name (MXAM-Report_EV3Control_V1_ManageVehicleStates_demo_ec_2019-10-12_13.10.html) violates the following rules:<br>- it contains prohibited characters.
|
|
|
|
|
12. D:\Programme\MTestDev\MTest_Autobuilds\EV3Build_Update2020\EV3Control_ec\ModelsAllVersions\V02_statAna\MXAMProject
|
Name:
|
MXAM-Report_EV3Control_V1_ManageVehicleStates_demo_ec_2019-10-12_13.10.mxmr
|
Message:
|
The file name (MXAM-Report_EV3Control_V1_ManageVehicleStates_demo_ec_2019-10-12_13.10.mxmr) violates the following rules:<br>- it contains prohibited characters.
|
|
|
|
|
13. D:\Programme\MTestDev\MTest_Autobuilds\EV3Build_Update2020\EV3Control_ec\ModelsAllVersions\V02_statAna
|
Name:
|
|
Message:
|
The following file names exist more than once in the given parent directory: <br>- checksumOfCache.mat<br>- simulink_cache.xml<br>- varInfo.mat
|
|
|
|
|
|
|
|
|
|
Guideline: ar_0002 - Directory Names
[» Contents]
[» Document Structure]
[» Heat Map]
Failed
|
|
Status
|
released
|
Author
|
Model Engineering Solutions GmbH
|
Version
|
1
|
Priority
|
mandatory
|
Scope
|
MAAB
|
Objective
|
code generation, readability, workflow, simulation
|
Source
|
MAAB 2.1, MAAB 3.0
|
MATLAB Versions
|
all
|
TargetLink Versions
|
irrelevant
|
Embedded Coder Versions
|
irrelevant
|
Automatically Checkable
|
fully
|
Manual Review Required
|
no
|
Description
|
A directory name conforms to the following constraints: FORM - directory name = name
- name: no leading digits, no blanks
UNIQUENESS - all directory names within the parent project directory
ALLOWED CHARACTERS - name: a b c d e f g h i j k l m n o p q r s t u v w x y z A B C D E F G H I J K L M N O P Q R S T U V W X Y Z 0 1 2 3 4 5 6 7 8 9 _
UNDERSCORES name: - underscores can be used to separate parts
- can not have more than one consecutive underscore
- can not start with an underscore
- can not end with an underscore
|
Rationale
|
Readability, Workflow, Simulation, Code Generation
|
Related Guidelines
|
hisl_0031
|
Model Type
|
functional model
|
ISO 26262-6 Mapping
|
T1.1d Use of Defensive Implementation Techniques, T1.1h Use of Naming Conventions
|
ISO 25119-3 Mapping
|
T3-1.1 Suitable Programming Language, T3-2.2 Defensive Programming
|
Last Change
|
1.0
|
Check: mcheck_ar_0002 - Directory Names
[» Contents]
[» Document Structure]
[» Heat Map]
Failed
|
|
Compiled Model Required
|
no
|
TargetLink Required
|
no
|
Model Root Required
|
no
|
MATLAB Versions
|
all
|
TargetLink Versions
|
irrelevant
|
Embedded Coder Versions
|
irrelevant
|
Pass-Fail Criteria
|
The check analyzes the name of each directory found within the given root directory and its sub directories. The root directory is defined by the check parameter MAAB.ar_0002.ParentDirectory. The directory names specified in the check parameter MAAB.ar_0002.IgnoredDirectoryNames are not analyzed. - Failed 1: At least one of the following cases hold for a directory name:
- starts with a digit or an underscore
- has more than one consecutive underscore
- ends with an underscore
- Failed 2: The directory name consists of at least one character that is not allowed or it contains at least one blank.
- Failed 3: The same directory name is assigned more than once to a directory within the given root directory and its sub directories.
- Warning: The given root directory does not exist.
The check result is passed if no failed case applies. The allowed characters are: - a b c d e f g h i j k l m n o p q r s t u v w x y z A B C D E F G H I J K L M N O P Q R S T U V W X Y Z 0 1 2 3 4 5 6 7 8 9 _
|
Technical Notes
|
By default, the parameter is set to 'modelroot'. The check might be time consuming as the analysis depends on the number of directories found within the root directory and its sub directories.
|
Solution
|
Rename each reported directory according to the rules set by the guideline ar_0002.
|
Repair Action
|
No automatic repair action available.
|
Example
|
|
Prerequisites
|
|
Parameter Name
|
Value
|
Description
|
Comment
|
MAAB.ar_0002.ParentDirectory
|
'modelroot'
|
Defines the root directory from which the check searches recursively. Default value 'modelroot' is the directory path of the model (artifact). If the parameter is set to 'pwd' the current directory is analyzed. The parameter must not be empty. Syntax: '<Full path of the directory to be checked>'
|
Default Setting
|
MAAB.ar_0002.IgnoredDirectoryNames
|
{'_sfprj','_self','_sfun'}
|
Defines the names of the directories to be ignored. Syntax: {'directory name1','directory name2',.....'directory nameN'}
|
Default Setting
|
Findings: GlobalPosition_demo_ec | mcheck_ar_0002
[» Contents]
[» Document Structure]
[» Heat Map]
|
Failed
Open the HTML report in the MATLAB browser to use the model links of MATLAB checks.
|
|
1. D:\Programme\MTestDev\MTest_Autobuilds\EV3Build_Update2020\EV3Control_ec\ModelsAllVersions\V02_statAna\MXAMProject
|
Name:
|
MXAM-Report_EV3Control_V1_EV3Control_demo_ec_2019-10-12_12.59
|
Message:
|
The directory name (MXAM-Report_EV3Control_V1_EV3Control_demo_ec_2019-10-12_12.59) violates the following rules:<br>- it contains prohibited characters.
|
|
|
|
|
2. D:\Programme\MTestDev\MTest_Autobuilds\EV3Build_Update2020\EV3Control_ec\ModelsAllVersions\V02_statAna\MXAMProject
|
Name:
|
MXAM-Report_EV3Control_V1_GlobalPosition_demo_ec_2019-10-12_13.07
|
Message:
|
The directory name (MXAM-Report_EV3Control_V1_GlobalPosition_demo_ec_2019-10-12_13.07) violates the following rules:<br>- it contains prohibited characters.
|
|
|
|
|
3. D:\Programme\MTestDev\MTest_Autobuilds\EV3Build_Update2020\EV3Control_ec\ModelsAllVersions\V02_statAna\MXAMProject
|
Name:
|
MXAM-Report_EV3Control_V1_ManageVehicleStates_demo_ec_2019-10-12_13.10
|
Message:
|
The directory name (MXAM-Report_EV3Control_V1_ManageVehicleStates_demo_ec_2019-10-12_13.10) violates the following rules:<br>- it contains prohibited characters.
|
|
|
|
|
4. D:\Programme\MTestDev\MTest_Autobuilds\EV3Build_Update2020\EV3Control_ec\ModelsAllVersions\V02_statAna\slprj
|
Name:
|
|
Message:
|
The directory name (_jitprj) violates the following rules:<br>- its first character is prohibited.
|
|
|
|
|
5. D:\Programme\MTestDev\MTest_Autobuilds\EV3Build_Update2020\EV3Control_ec\ModelsAllVersions\V02_statAna
|
Name:
|
|
Message:
|
The following directory names exist more than once in the given parent directory: <br>- tmwinternal
|
|
|
|
|
|
|
|
|
|
Guideline: misra_slsf_006_b - Block Parameters - Calibration Parameters
[» Contents]
[» Document Structure]
[» Heat Map]
Failed
|
|
Status
|
released
|
Author
|
Model Engineering Solutions GmbH
|
Version
|
1
|
Priority
|
required
|
Objective
|
maintainability, portability
|
Source
|
MISRA AC SLSF 1.0
|
MATLAB Versions
|
all
|
TargetLink Versions
|
irrelevant
|
Embedded Coder Versions
|
irrelevant
|
Automatically Checkable
|
fully
|
Manual Review Required
|
no
|
Description
|
Block parameters intended to be configured or calibrated must be entered as a named constant.
|
Rationale
|
Allows configuration of validated subsystems without modifying the underlying model itself.
|
Related Guidelines
|
misra_tl_3_2
|
Model Type
|
functional model
|
ISO 26262-6 Mapping
|
T1.1e Use of Established Design Principles
|
ISO 25119-3 Mapping
|
T3-3.1 Use of Coding Standard
|
Last Change
|
1.00
|
Check: mcheck_misra_slsf_006_b - Block Parameters - Calibration Parameters
[» Contents]
[» Document Structure]
[» Heat Map]
Failed
|
|
Compiled Model Required
|
no
|
TargetLink Required
|
no
|
Model Root Required
|
no
|
MATLAB Versions
|
all
|
TargetLink Versions
|
irrelevant
|
Embedded Coder Versions
|
irrelevant
|
Pass-Fail Criteria
|
The check analyzes each calibration parameter of each block in the model. - Failed 1: The parameter is entered as numerical value, expression or function call.
The check result is passed if all failed cases do not apply.
|
Technical Notes
|
The check considers as calibration parameter every Simulink parameter that can be changed during simulation. For TargetLink models, the check analyzes the Simulink parameters of each block. The following conventions for the check routine have been made in order to ensure practicability: - For TargetLink blocks, the generic mask parameter "data" is ignored.
- Blocks from the Lookup Tables Library including 1-D, 2-D, n-D and Direct Look-Up Tables as well as Prelookup and Interpolation Using Prelookup blocks are not analyzed.
- Signed named constants, e.g. '-x', are not reported as failed.
|
Solution
|
- Solution 1: Enter the calibration parameter as named constant.
|
Repair Action
|
No automatic repair action available.
|
Example
|
|
Prerequisites
|
|
Parameter Name
|
Value
|
Description
|
Comment
|
MISRA_SLSF.mes_misra_slsf_006_b.AllowZeroOne
|
false
|
If the check parameter is set to true, the values 0 and 1 are allowed to be entered as calibration parameters. If the check parameter is set to false, the values 0 and 1 are not allowed to be entered as calibration parameters.
|
Default Setting
|
Findings: GlobalPosition_demo_ec | mcheck_misra_slsf_006_b
[» Contents]
[» Document Structure]
[» Heat Map]
|
Failed
Open the HTML report in the MATLAB browser to use the model links of MATLAB checks.
|
|
|
Name:
|
|
Message:
|
The block "Unit Delay" has the parameter "InitialCondition" = "0", which is not a named constant.
|
|
|
|
|
|
Name:
|
|
Message:
|
The block "Unit Delay1" has the parameter "InitialCondition" = "0", which is not a named constant.
|
|
|
|
|
|
|
|
|
|
Guideline: mes_slsf_9001 - Configuration Parameters for Simulink
[» Contents]
[» Document Structure]
[» Heat Map]
Failed
|
|
Status
|
released
|
Author
|
Model Engineering Solutions GmbH
|
Version
|
1
|
Priority
|
recommended
|
Scope
|
MES
|
Objective
|
verification/validation, maintainability, simulation
|
MATLAB Versions
|
all
|
TargetLink Versions
|
all
|
Embedded Coder Versions
|
irrelevant
|
Automatically Checkable
|
fully
|
Manual Review Required
|
no
|
Description
|
Each project must define an appropriate setting for each Simulink Configuration parameter. These settings must be used for each model within that project.
|
Rationale
|
Conformance to the guideline supports reproducible simulation results and eases the comparison of simulations and tests.
|
Model Type
|
functional model
|
ISO 26262-6 Mapping
|
T1.1e Use of Established Design Principles
|
ISO 25119-3 Mapping
|
T3-3.1 Use of Coding Standard
|
Check: mcheck_mes_slsf_9001 - Configuration Parameters for Simulink
[» Contents]
[» Document Structure]
[» Heat Map]
Failed
|
|
Compiled Model Required
|
no
|
TargetLink Required
|
no
|
Model Root Required
|
no
|
MATLAB Versions
|
all
|
TargetLink Versions
|
all
|
Embedded Coder Versions
|
irrelevant
|
Pass-Fail Criteria
|
The check analyzes each configuration parameter of the model, which is defined in an Excel file given by MES.mes_slsf_9001.ParameterExcelFile. - Failed 1: The configuration parameter is not set to the desired value.
- Failed 2: The check parameter MES.mes_slsf_9001.minDiagnosticsError is set to true and the configuration parameter from the diagnostics category has a warning/error level less strict than the expected value.
The check result is passed if all failed cases do not apply.
|
Technical Notes
|
The configuration parameters and the expected values are defined in an Excel file. The location of the excel file can be configured by the parameter MES.mes_slsf_9001.ParameterExcelFile. The check parameter MES.mes_slsf_9001.minDiagnosticsError defines if the values of the configuration parameters from the diagnostics category are to be understood as the minimum warning/error level. If the parameter is set to true, the check does not deliver a failed finding for parameters with a more strict warning/error level than the desired value. This parameter only applies to the diagnostics category in the Simulink model configuration parameters and only to the options none/warning/error, DisableAll/EnableAllAsWarning/EnableAllAsError. If the desired value is 'UseLocalSettings' the parameter does not affect the check. In the case that there exists a Configuration Reference for the model, neither the Repair Action nor the use of the check parameter MES.mes_slsf_9001.minDiagnosticsError is possible.
|
Solution
|
Review the configuration parameters according to guideline. - Solution 1: Set the configuration parameter to the desired value given in the Excel file.
- Solution 2: If the check parameter MES.mes_slsf_9001.minDiagnosticsError is true, make sure the configuration parameters from the diagnostics category have equal or more strict warning/error level than the desired value.
|
Repair Action
|
The configuration parameters which received a 'failed' will be set to the value defined in the Excel file. Since some configuration parameters have dependencies, it might be necessary to rerun the check and repair again. In the case that there exists a Configuration Reference for the model, the Repair Action is not available.
|
Example
|
|
Prerequisites
|
|
Parameter Name
|
Value
|
Description
|
Comment
|
MES.mes_slsf_9001.ParameterExcelFile
|
'SL_ParameterList.xlsx'
|
Either absolute path of the Excel file or name of the Excel file, which must be in the MATLAB path. Syntax: 'AbsolutePathExcelFile.xls' or 'NameExcelFile.xls'
|
Default Setting
|
MES.mes_slsf_9001.minDiagnosticsError
|
false
|
Boolean parameter that treats the expected values for diagnostics parameters as the minimum level. If the parameter is set to true, the check does not deliver a fail finding for parameters with a more strict warning/error level than the desired value. In the case that there exists a Configuration Reference for the model, the parameter is not available.
|
Default Setting
|
Findings: GlobalPosition_demo_ec | mcheck_mes_slsf_9001
[» Contents]
[» Document Structure]
[» Heat Map]
|
Failed
Open the HTML report in the MATLAB browser to use the model links of MATLAB checks.
|
|
1. GlobalPosition_demo_ec
|
Name:
|
ModelReferenceVersionMismatchMessage
|
Message:
|
The parameter 'Diagnostics:Model Referencing->Model Referencing->Model block version mismatch' (ModelReferenceVersionMismatchMessage) is set to 'none' but must be set to 'error'.
|
|
|
|
|
2. GlobalPosition_demo_ec
|
Name:
|
ModelReferenceIOMismatchMessage
|
Message:
|
The parameter 'Diagnostics:Model Referencing->Model Referencing->Port and parameter mismatch' (ModelReferenceIOMismatchMessage) is set to 'none' but must be set to 'error'.
|
|
|
|
|
3. GlobalPosition_demo_ec
|
Name:
|
|
Message:
|
The parameter 'Diagnostics:Model Referencing->Model Referencing->Invalid root Inport / Outport block connection' (ModelReferenceIOMsg) is set to 'none' but must be set to 'error'.
|
|
|
|
|
4. GlobalPosition_demo_ec
|
Name:
|
ModelReferenceDataLoggingMessage
|
Message:
|
The parameter 'Diagnostics:Model Referencing->Model Referencing->Unsupported data logging' (ModelReferenceDataLoggingMessage) is set to 'none' but must be set to 'error'.
|
|
|
|
|
Warning
Open the HTML report in the MATLAB browser to use the model links of MATLAB checks.
|
|
5. GlobalPosition_demo_ec
|
Name:
|
|
Message:
|
Several parameters do not exist in used Matlab Version:<br><br>- 'UseIntDivNetSlope' (in Optimization:General->Simulation and code generation->Use integer division to handle net slopes that are reciprocals of integers).
|
|
|
|
|
|
|
|
|
|
Guideline: mes_cgtl_4101 - Tolerance Value of TargetLink Constant and Gain Block
[» Contents]
[» Document Structure]
[» Heat Map]
Warnings
|
|
Status
|
accepted
|
Author
|
Model Engineering Solutions GmbH
|
Version
|
1
|
Priority
|
strongly recommended
|
Objective
|
code generation, functionality, efficiency
|
Reference
|
TargetLink Block and Object Reference > TargetLink Simulation Blocks > Constant/Gain Block > Output Page (Constant/Gain Block)
|
MATLAB Versions
|
all
|
TargetLink Versions
|
all
|
Embedded Coder Versions
|
irrelevant
|
Automatically Checkable
|
fully
|
Manual Review Required
|
no
|
Description
|
If the class defined for the output value of a TargetLink Constant block or a TargetLink Gain block is set to default, a tolerance value can be specified. The default configuration sets this option to 1%. This value defines the maximum deviation (in percent) with which the variable is to be implemented. To ensure that the code generator does not optimize the output of a TargetLink Constant block or a TargetLink Gain block, the value of the Tolerance option should be set to 0%.
|
Rationale
|
Setting the Tolerance value of each TargetLink Constant block and TargetLink Gain block to 0% ensures that the code generator does not optimize the respective output value. An optimization of an output value due to setting the Tolerance value to a value greater than 0% may lead to unwanted functional changes of the code.
|
Example
|
Figure mes_cgtl_4101-1: The Tolerance value of the output of the TargetLink Constant block is set to 0%
|
Counter Example
|
Figure mes_cgtl_4101-2: The Tolerance value of the output of the TargetLink Constant block is set to 1%.
|
Model Type
|
implementation model
|
ISO 26262-6 Mapping
|
T1.1d Use of Defensive Implementation Techniques
|
ISO 25119-3 Mapping
|
T3-2.2 Defensive Programming
|
Check: mcheck_mes_cgtl_4101 - Tolerance Value of TargetLink Constant and Gain Block
[» Contents]
[» Document Structure]
[» Heat Map]
Warnings
|
|
Compiled Model Required
|
no
|
TargetLink Required
|
yes
|
Model Root Required
|
no
|
MATLAB Versions
|
all
|
TargetLink Versions
|
all
|
Embedded Coder Versions
|
irrelevant
|
Pass-Fail Criteria
|
The check analyzes each TargetLink Constant and Gain block. Failed: if the tolerance value is not set to 0. The check result is passed if the failed case does not apply.
|
Technical Notes
|
|
Solution
|
Set the tolerance value of each TargetLink block of type 'Constant' and 'Gain' to 0.
|
Repair Action
|
The repair action sets the tolerance value of each TargetLink Constant and Gain block to 0.
|
Example
|
|
Prerequisites
|
|
Findings: GlobalPosition_demo_ec | mcheck_mes_cgtl_4101
[» Contents]
[» Document Structure]
[» Heat Map]
|
Warning
Open the HTML report in the MATLAB browser to use the model links of MATLAB checks.
|
|
1.
|
Name:
|
|
Message:
|
MXAM Warning 007: Not a TargetLink model. This check only applies to TargetLink models or elements thereof.
|
|
|
|
|
|
|
|
|
|
Guideline: sdt_sc007 - Definition TargetLink Function Interface
[» Contents]
[» Document Structure]
[» Heat Map]
Warnings
|
|
Status
|
proposed
|
Author
|
Model Engineering Solutions GmbH
|
Version
|
1
|
Priority
|
strongly recommended
|
Objective
|
verification/validation, workflow, simulation
|
Source
|
MES FS_1_3
|
MATLAB Versions
|
all
|
TargetLink Versions
|
>=2.0
|
Embedded Coder Versions
|
irrelevant
|
Automatically Checkable
|
partly
|
Manual Review Required
|
yes
|
Description
|
A proper definition of a TargetLink Function Interface requires the following properties. The Inports and Outports on the top level of a TargetLink Function Subsystem must be TargetLink ports.
A TargetLink port is considered to be an argument or a return value of a function if its "Class" is set to "FCN_ARG", "FCN_REF_ARG" or "FCN_RETURN". If one of these classes is set the data type, scaling and value range of the following blocks must be consistent:
- All TargetLink Inports that provide arguments of a TargetLink function with their respective source.
- All TargetLink Outports that define a return value of a TargetLink function with their respective destination.
Note that in the case of TargetLink Function Outports it is not always desirable that the destination block has the same data type, scaling or value range. Nevertheless, implicit data type conversion should be avoided whenever possible.
If a TargetLink function is configured as scaling invariant, only the data type of the ports need to be consistent with their respective source, but not the scaling information. If a TargetLink port is NOT to be considered as an argument or return value of a function, the class should still be selected explicitly, i.e., the class 'default' should not be used.
|
Rationale
|
Inconsistent data types may lead to inefficient code, reduced accuracy or range violations. For function interfaces, strong type consistency of the passed parameters and returned values ensures signal integrity and efficient production code by minimizing the need for type casts and rounding operations. Missing range definitions hinder the detection and control of overflows.
|
Example
|
Figure sdt_sc007-1: Equal scaling information, data type and LSB of the TargetLink function Inport and its source 
Figure sdt_sc001-2: Equal scaling information, data type and LSB of the TargetLink function Outport and its destination
|
Review Measures
|
Some TargetLink blocks such as Saturate, Gain, Fcn, Trigonometry, Math, Sqrt get a review finding, since it might not be reasonable to have the same settings as the TargetLink Function Outport. Consider using a Rescaler block to avoid implicit data type conversion whenever possible.
|
Model Type
|
implementation model
|
ISO 26262-6 Mapping
|
T1.1c Enforcement of Strong Typing, T8.1g No Implicit Type Conversion
|
ISO 25119-3 Mapping
|
T3-1.2 Strongly Typed Programming Language, T3-2.2 Defensive Programming
|
Check: mcheck_mes_sk_006 - In- and Outports in TargetLink subsystems
[» Contents]
[» Document Structure]
[» Heat Map]
Warnings
|
|
Compiled Model Required
|
no
|
TargetLink Required
|
yes
|
Model Root Required
|
no
|
MATLAB Versions
|
all
|
TargetLink Versions
|
all
|
Embedded Coder Versions
|
irrelevant
|
Pass-Fail Criteria
|
The check returns a fail, if there are Simulink In-/Outports on the top level of TargetLink subsystems or TargetLink functions.
|
Technical Notes
|
|
Solution
|
Replace all Simulink In-/Outports with TargetLink In-/Outports on the top level of TargetLink subsystems and TargetLink functions.
|
Repair Action
|
No automatic repair action available.
|
Example
|
|
Prerequisites
|
|
Findings: GlobalPosition_demo_ec | mcheck_mes_sk_006
[» Contents]
[» Document Structure]
[» Heat Map]
|
Warning
Open the HTML report in the MATLAB browser to use the model links of MATLAB checks.
|
|
1.
|
Name:
|
|
Message:
|
MXAM Warning 007: Not a TargetLink model. This check only applies to TargetLink models or elements thereof.
|
|
|
|
|
|
|
|
Check: mcheck_sdt_sc007_a - Definition TargetLink Function Interface - Inports
[» Contents]
[» Document Structure]
[» Heat Map]
Warnings
|
|
Compiled Model Required
|
no
|
TargetLink Required
|
yes
|
Model Root Required
|
no
|
MATLAB Versions
|
all
|
TargetLink Versions
|
>=2.0
|
Embedded Coder Versions
|
irrelevant
|
Pass-Fail Criteria
|
The check inspects TargetLink inports and bus inports of each TargetLink function whose class is set to "FCN_ARG", "FCN_REF_ARG" or "FCN_RETURN". The data type, scaling (LSB and Offset) and value range of each TargetLink inport is compared with its source block. While determining the data type of the destination block type inheritance is considered as well. The following criteria are sequentially checked for each TargetLink inport. If any one criterion does not hold, that inport and its source block are declared as failed or a warning is issued. After an erroneous criterion is detected, the remaining criteria are not further analyzed on that port and its source block.
- Failed 1: The Inport is not connected to a source block.
- Failed 2: Matching Output port of Stateflow chart (source block) not found.
- Failed 3: TargetLink data type is not set for the Inport or its source.
- Failed 4: The base type of the TargetLink data type of the Inport or its source is not defined.
- Failed 5: The base type of the Inport and its source are different.
- Failed 6: The LSB value of the Inport and its source are different.
- Failed 7: The offsets (biases) of the Inport and its source differ.
- Failed 8: The LSB types (power of two vs. arbitrary) of the Inport and its source are different.
- Failed 9: The user-defined value range constraints ("minimum" and/or "maximum") of the Inport and its source are different. Set the check parameter SDT.sc007_a.IgnoreUndefinedRanges to "true" to ignore this criterion.
- Failed 10: The TargetLink function is configured as scaling invariant but the scaling propagation function is not defined in the scaling propagation edit field.
- Warning: The source block does not support TargetLink data types. Use the check parameter SDT.sc007_a.IgnoreNonTLSources to deactivate this finding.
Note: TargetLink functions are subsystems which contain a TargetLink Function block.
|
Technical Notes
|
- For each block, only the first deviation which has been found is reported. Re-run the check after having repaired the deviation to make sure that no further deviations are present.
- If the TargetLink function is declared to be scaling invariant, the check evaluates the given scaling propagation function. However, it does not assess its functionality.
- The check needs to set the model into compiled mode to access the data type of the TargetLink port and its source block(Simulink / TargetLink), if the data type is not available in the block property dialog. Therefore, the check only compiles the model on demand.
|
Solution
|
Adjust the diverging signal properties accordingly. Please note that adjusting the data type of a source block may require further, secondary adjustments involving other blocks. In this case, re-run the check. - Solution 1: Connect the Inport to a suitable source block.
- Solution 2: Adjust the properties of the Stateflow chart.
- Solution 3: Specify a suitable TargetLink data type for the Inport or its source.
- Solution 4: Specify a suitable base type for the Inport or its source.
- Solution 5: Match the base types of the Inport and its source.
- Solution 6: Match the LSB values of the Inport and its source.
- Solution 7: Match the offsets of the Inport and its source.
- Solution 8: Match the LSB types of the Inport and its source.
- Solution 9: Match the range constraints of the Inport and its source.
- Solution 10: Review the implementational specifications of the source block.
Add known range limits to the "min" and "max" values of the TargetLink and Stateflow output variables, whenever possible. Do not use the inheritance mechanism for the size and type of Stateflow data if you are working with TargetLink versions < 2.2.
|
Repair Action
|
No automatic repair action available.
|
Example
|
|
Prerequisites
|
TargetLink 2.0 or higher must be installed. A TargetLink license is not needed for running the check, but hyperlinks to open a faulty TargetLink block require a valid TargetLink license.
|
Parameter Name
|
Value
|
Description
|
Comment
|
SDT.sc007_a.IgnoreNonTLSources
|
false
|
If set to true, Simulink source blocks that are allowed to be used with TargetLink are not listed in the report. If set to false, the use of these Simulink source blocks raises a note (see point no. 10 in the check description).
|
Default Setting
|
SDT.sc007_a.IgnoreTLDefaultDataTypes
|
false
|
This parameter determines whether a TargetLink source block with a default class and/or unspecified data type/base type is ignored (parameter is set to true) or not ignored (parameter is set to false). This applies to TargetLink Constants and Merge blocks whose output class is set to "default". Here, the datatype is specified by TargetLink at run-time/build-time. In MIL mode, the output data type of these blocks is set to int16. In SIL mode, the data type is adjusted to match the succeeding block.
|
Default Setting
|
SDT.sc007_a.IgnoreUndefinedRanges
|
false
|
If set to true, only those ranges are checked for consistency that are defined. If set to false, the check considers a pair of ranges to be inconsistent, if at least one range is not defined.
|
Default Setting
|
SDT.sc007_a.ValidBaseTypeCombinations
|
{'Int16','UInt8';... 'Int32','UInt16'}
|
Use the following format to specify each allowed pair of base types. {<source base type 1>, <inport base type 1>;<source base type 2>, <inport base type 2>; ... }
The specification of {'Int16','UInt8'} states that if the data type of an Inport is defined with base type UInt8, the data type of its source block should be defined with base type Int16 or UInt8.
|
Default Setting
|
Findings: GlobalPosition_demo_ec | mcheck_sdt_sc007_a
[» Contents]
[» Document Structure]
[» Heat Map]
|
Warning
Open the HTML report in the MATLAB browser to use the model links of MATLAB checks.
|
|
1.
|
Name:
|
|
Message:
|
MXAM Warning 007: Not a TargetLink model. This check only applies to TargetLink models or elements thereof.
|
|
|
|
|
|
|
|
Check: mcheck_sdt_sc007_b - Definition TargetLink Function Interface - Outports
[» Contents]
[» Document Structure]
[» Heat Map]
Warnings
|
|
Compiled Model Required
|
no
|
TargetLink Required
|
yes
|
Model Root Required
|
no
|
MATLAB Versions
|
all
|
TargetLink Versions
|
>=2.0
|
Embedded Coder Versions
|
irrelevant
|
Pass-Fail Criteria
|
The check inspects TargetLink Outports of each TargetLink function whose class is set to "FCN_ARG", "FCN_REF_ARG" or "FCN_RETURN". The output data type, scaling (LSB and Offset) and value range of each TargetLink Outport is compared with its destination block. TargetLink functions are subsystems which contain a TargetLink Function block. While determining the data type of the destination block, inheritance is considered as well. - Failed 1: The Outport is not connected to a destination block.
- Failed 2: Matching Input port of Stateflow chart (destination block) not found.
- Failed 3: There is no TargetLink data type set for the Outport or its destination block.
- Failed 4: The base type of the TargetLink data type of the Outport or its destination block is not defined.
- Failed 5: The base types of the Outport and its destination block are different.
- Failed 6: The LSB values of the Outport and its destination block are different.
- Failed 7: The offsets of the Outport and its destination block are different.
- Failed 8: The LSB types (power of two vs. arbitrary) of the Outport and its destination block are different.
- Failed 9: The user-defined value range constraints ("minimum" and/or "maximum") of the Outport and its destination blocks are different. Set the check parameter SDT.sc007_b.IgnoreUndefinedRanges to true to ignore this criterion.
- Failed 10: The TargetLink function is configured as scaling invariant, but the scaling propagation function is not defined in the scaling propagation field.
- Review: The data type, scaling or range of the TargetLink Function Outport is different from its destination block, but this deviation may be justified. See Note 3.
- Warning: The destination block does not support TargetLink data types. Use the check parameter SDT.sc007_b.IgnoreNonTLSources to deactivate this finding.
Note 1: It is recommended to use the Rescaler block whenever data type conversion is necessary. Therefore, the Rescaler block is not considered a failed case.
Note 2: TargetLink blocks whose output data type or scaling is expected to be different from its input are ignored in the analysis. This concerns the following blocks: Abs, Sum, Product, Logical and Relational Operator, Look-Up Table (and related ones), Sign, Relay, Discrete Filter, Discrete Transfer Fcn, FIR Filter, Discrete-Time Integrator, Discrete State-Space, Extract Bits, and Preprocessor IF. Additionally, the case when the function Outport is connected to the control port of a Switch or Multiport Switch block is ignored. Note 3: Some TargetLink blocks such as Saturate, Gain, Fcn, Trigonometry, Math, Sqrt get a review finding, since it might not be reasonable to have the same settings as the TargetLink Function Outport.
|
Technical Notes
|
- For each block, only the first deviation which has been found is reported. Re-run the check after having repaired the deviation to make sure that no further deviations are present.
- If the TargetLink function is declared to be scaling invariant, the check evaluates the given scaling propagation function. However, it does not assess its functionality.
- The check needs to set the model into compiled mode to access the data type of the TargetLink port and its source block(Simulink / TargetLink), if the data type is not available in the block property dialog. Therefore, the check only compiles the model on demand.
|
Solution
|
Adjust the diverging signal properties accordingly. Consider using a Rescaler block to make the casting explicitly. Please note that adjusting the data type of a destination block may require further, secondary adjustments involving other blocks. In this case, re-run the check. - Solution 1: Connect the Outport to a suitable destination block.
- Solution 2: Adjust the properties of the Stateflow chart.
- Solution 3: Specify a suitable TargetLink data type for the Outport or its destination.
- Solution 4: Specify a suitable base type for the Outport or its destination.
- Solution 5: Match the base types of the Outport and its destination.
- Solution 6: Match the LSB values of the Outport and its destination.
- Solution 7: Match the offsets of the Outport and its destination.
- Solution 8: Match the LSB types of the Outport and its destination.
- Solution 9: Match the range constraints of the Outport and its destination.
- Solution 10: Review the implementational specifications of the destination block.
- Solution (Review): If possible use a Rescaler block to avoid implicit data type conversion.
Add known range limits to the "min" and "max" values of the TargetLink and Stateflow output variables, whenever possible. Do not use the inheritance mechanism for the size and type of Stateflow data if you are working with TargetLink versions < 2.2.
|
Repair Action
|
No automatic repair action available.
|
Example
|
|
Prerequisites
|
TargetLink 2.0 or higher must be installed. A TargetLink license is not needed for running the check, but hyperlinks to open a faulty TargetLink block require a valid TargetLink license.
|
Parameter Name
|
Value
|
Description
|
Comment
|
SDT.sc007_b.IgnoreNonTLSources
|
false
|
If set to true, Simulink destination blocks that are allowed to be used with TargetLink are not listed in the report. If set to false, the use of these Simulink destination blocks raises a note (see point no. 10 in the check description).
|
Default Setting
|
SDT.sc007_b.IgnoreUndefinedRanges
|
false
|
If set to true, only those ranges are checked for consistency that are defined. If set to false, the check considers a pair of ranges to be inconsistent, if at least one range is not defined.
|
Default Setting
|
SDT.sc007_b.ValidBaseTypeCombinations
|
{'Int16','UInt8';... 'Int32','UInt16'}
|
Use the following format to specify each allowed pair of base types. {<destination base type 1>, <outport base type 1>;<destination base type 2>, <inport base type 2>; ... }
The specification of {'Int16','UInt8'} states that if the data type of an Inport is defined with base type UInt8, the data type of its source block should be defined with base type Int16 or UInt8.
|
Default Setting
|
Findings: GlobalPosition_demo_ec | mcheck_sdt_sc007_b
[» Contents]
[» Document Structure]
[» Heat Map]
|
Warning
Open the HTML report in the MATLAB browser to use the model links of MATLAB checks.
|
|
1.
|
Name:
|
|
Message:
|
MXAM Warning 007: Not a TargetLink model. This check only applies to TargetLink models or elements thereof.
|
|
|
|
|
|
|
|
|
|
|
|
|