DO Qualification Kit: Simulink® Design Verifier™ Tool Operational Requirements
DO Qualification Kit: Simulink® Design Verifier™ Tool Operational Requirements
R2017a
This document comprises the Tool Operational Requirements (reference DO-330 Section
10.3.1) for the following capabilities of the Simulink® Design Verifier™ (SLDV) product:
The requirements are provided in the Operational Requirement section in a tabular form, tagged
with unique identifiers that you can use to trace to the associated tool test cases, procedures and
results. Text not included in the tables does not represent the requirement and is intended to
provide supporting information.
This document is intended for use in the DO-330 tool qualification process for TQL-5 tools. The
applicant needs to:
Review the Tool Operational Requirements for applicability in the project or program
under consideration.
Configure the Tool Operational Requirements in the project or program’s configuration
management system.
Complete the Tool Operational Requirements and make the document available for review.
See documentation for the following products at the MathWorks® Documentation Center,
R2017a:
Simulink Design Verifier generates test inputs for model coverage and custom objectives. It also
lets you augment and extend existing test cases. These test cases drive your model to satisfy
condition, decision, modified condition/decision (MCDC), and custom coverage objectives.
The Model Slicer tool in Simulink Design Verifier isolates problematic behavior in a model
using a combination of dynamic and static analysis. It lets you highlight and trace functional
dependencies of ports, signals, and blocks, and slice a large model into smaller, standalone
models for analysis. You can view blocks affecting a subsystem output and trace a signal path
through multiple switches and logic. The Variant Reducer tool enables you to simplify models
containing multiple variants by creating sliced models based on active variant configurations.
Key Features
Test case input generation from functional requirements and model coverage objectives,
including condition, decision, and MCDC
Detection of dead logic, integer and fixed-point overflows, array access violations, division
by zero, and violations of design requirements
Verification blocks for modeling functional and safety requirements
Property proving, with generation of violation examples for analysis and debugging
Model Slicer for analyzing functional dependencies and problematic behavior in large
models
Variant Reducer for creating sliced models based on active variant configurations
Polyspace® and Prover formal verification engines for fixed-point and floating-point
models
Note: For details regarding API use, see the Simulink Design Verifier Reference document.
2 Operational Requirements
The following subsections provide the operation requirements for Simulink® Design Verifier™
capabilities that are supported by the DO Qualification Kit. The user is responsible for
validating that the tool features they rely on to eliminate, reduce or automate the process are
sufficiently covered by Tool Operational Requirements (reference DO-330 Section 6.2.1.aa).
2.1 Design Error Detection
Simulink Design Verifier can be used to detect design errors in the model applying formal
analysis methods. The following table lists the operational requirements for Simulink Design
Verifier design error detection capabilities supported by the DO Qualification Kit.
Requirement ID Requirement
SLDV_DBZ Simulink Design Verifier shall determine if division by zero can occur during model
simulation for the supported model objects.
SLDV_OFL Simulink Design Verifier shall determine if overflow of the integer and fixed-point
signals can occur during model simulation for the supported model objects.
SLDV_DR Simulink Design Verifier shall determine if signal values can go out of specified range
during model simulation for the supported model objects that allow signal range
specification.
SLDV_AOB Simulink Design Verifier shall determine if out of bound array access can occur during
model simulation for the supported model objects.
SLDV_DL Simulink Design Verifier shall detect dead logic for the supported model objects that have
decision or condition outcomes. Unreachable decision or condition outcome shall be
considered as dead logic.
Note: Simulink Design Verifier provides two options for dead logic detection
configuration:
- Dead logic detection only: reduced capability, some dead logic may not be detected
- Dead and active logic detection: full capability also reporting active logic
This requirement applies specifically to the second dead logic detection configuration:
“Dead and active logic detection”. For details, see operation requirement
SLDV_IF_OPT and the Simulink Design Verifier User’s Guide.
Requirement ID Requirement
SLDV_SCOPE Simulink Design Verifier shall detect dead logic and determine if design errors can occur
during model simulation for any possible combination of model inputs within specified
ranges, at any simulation step, for models with linear algorithms. If model input signals
ranges are not explicitly specified, the minimum and maximum values of the signal data
type is used for analysis.
Note: Simulink Design Verifier detects errors and dead logic using formal method
which are proven as sound for linear algorithms when no approximation is applied (for
details, refer to the Simulink Design Verifier Tool Qualification Plan document).
Simulink Design Verifier applies approximation methods in the following cases:
- Floating-point numbers approximated with rational numbers
- Linearization of two-dimensional lookup tables for floating-point data types
- Approximation of one- and two-dimensional lookup tables for integer and
fixed-point data types
- Number of while loops iteration may be set to 3 if a conservative constant allowing
If more than one design errors exist in the model, Simulink Design Verifier may report
only one of the errors preceding the others per sorted execution order.
SLDV_SUBSYS If model containing subsystems is analyzed, the analysis shall not consider the signal
ranges specified on the input ports of the subsystems.
Requirement ID Requirement
Simulink Design Verifier shall determine division by zero (SLDV_DBZ) for the
following blocks:
SLDV_DBZ_DVD Divide block
SLDV_DBZ_REC Math Function for the function reciprocal
SLDV_DBZ_SFC Simulink Design Verifier shall determine division by zero (SLDV_DBZ) for the
Stateflow chart objects with MATLAB and C action language.
Simulink Design Verifier shall determine signal overflow (SLDV_OFL) and signal range
overrun (SLDV_VOR) for the following blocks allowing signal range specification:
SLDV_SR_ABS Abs
SLDV_SR_DTC Data Type Conversion
SLDV_SR_DIF Difference
SLDV_SR_DDER Discrete Derivative
SLDV_SR_DTI Discrete-Time Integrator
SLDV_SR_GAIN Gain
SLDV_SR_IPP Interpolation Using Prelookup"
SLDV_SR_NDLT n-D Lookup Table
SLDV_SR_MAT Math Function
SLDV_SR_MMX MinMax
SLDV_SR_MSW Multiport Switch
SLDV_SR_PRD Product, Divide, Product of Elements
SLDV_SR_SATD Saturation Dynamic
SLDV_SR_SUM Sum, Add, Subtract, Sum of Elements
SLDV_SR_SWT Switch
Simulink Design Verifier shall determine signal range overrun (SLDV_VOR) for the
following blocks allowing signal range specification:
SLDV_SR_IN Inport
SLDV_SR_OUT Outport
SLDV_SR_REL Relay
SLDV_SR_SAT Saturation
SLDV_SR_SSP Signal Specification
Requirement ID Requirement
SLDV_IF_INP Simulink Design Verifier shall operate on models stored in SLX format of the current
release.
SLDV_IF_API Simulink Design Verifier API function sldvrun shall provide the following
capabilities:
Specify a model or subsystem to analyze
Specify analysis options to apply using sldvoptions object
Invoke analysis and generate report with analysis results
Detect and report incompatibilities of the analyzed mode
SLDV_IF_OPT Simulink Design Verifier shall support the following analysis options specified by
sldvoptions object:
Enable/disable different analysis modes:
o Mode
o DetectDivisionByZero
o DetectIntegerOverflow
o DesignMinMaxCheck
o DetectOutOfBounds
o DetectDeadLogic
o DetectActiveLogic
SaveReport to generate the analysis report
Automatic stubbing and block replacement features are not covered by the DO
Qualification Kit, therefore, the following options are set to ‘off’ while executing
DO Qualification Kit test cases
- AutomaticStubbing
- BlockReplacement
Note: The report may also include other supplementary information not covered by
the DO Qualification Kit, such as Block Replacement Summary.
Note: For details regarding API use, see the Simulink Design Verifier Reference document.
Requirement ID Requirement
SDLV_ABN_MDL Simulink Design Verifier shall check the integrity of the input model file. If model file
corruption is detected Simulink Design Verifier shall generate an error message and
interrupt the analysis without report generation.
SDLV_ABN_API Simulink Design Verifier shall check the validity of the API input arguments. If there are
one or more invalid arguments Simulink Design Verifier shall generate an error message
and interrupt the analysis without report generation.
SDLV_ABN_CMT Simulink Design Verifier shall check if model is compatible with Simulink Design
Verifier. If model has unsupported features Simulink Design Verifier shall generate an
error message and interrupt the analysis not generating the report.
Note: Automatic Stubbing and Block replacement features are not covered by the DO
Qualification Kit, see requirement SLDV_IF_OPT.
To access the user information documents, on the MATLAB® command line, type qualkitdo
to open the Artifacts Explorer. The documents are in Simulink Design Verifier.
To use the Simulink® Design Verifier™ product, install the following MathWorks® products:
MATLAB®
Simulink®
Simulink® Design Verifier™
Instructions for installing the products are available at the MathWorks Documentation Center,
R2017a > Installation.
January 3, 2017 qualkitdo_sldv_tor 3
4 Operational Environment
The DO Qualification Kit product supports the following operating environments for the
Simulink® Design Verifier™ product:
Personal computer
One of the following operating systems:
- Microsoft® Windows®
- Linux®1
- Mac OS X
MATLAB® Software
Simulink® Software