Top Banner
© 2008 The MathWorks Limited ® ® Model-Based Design for Safety-Critical and Mission-Critical Applications Bill Potter Technical Marketing May 2, 2008
34

Model-Based Design for Safety-Critical and Mission-Critical … · SystemTest for requirements based testing. ... Tools to support the entire safety critical development process Participation

Jul 13, 2020

Download

Documents

dariahiddleston
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Model-Based Design for Safety-Critical and Mission-Critical … · SystemTest for requirements based testing. ... Tools to support the entire safety critical development process Participation

©20

08 T

he M

athW

orks

Lim

ited

® ®

Model-Based Design for Safety-Critical and Mission-Critical Applications

Bill PotterTechnical MarketingMay 2, 2008

Page 2: Model-Based Design for Safety-Critical and Mission-Critical … · SystemTest for requirements based testing. ... Tools to support the entire safety critical development process Participation

2

® ®

Safety-Critical Model-Based Design Workflow

Requirements

Model

Source Code

Object Code

Validate

Simulink®

&Stateflow®

Trace:RMI

Verify:SystemTest

SLDV Property ProvingModel Coverage

Conformance:Model Advisor

Real-Time Workshop®

Embedded Coder™Conformance:PolySpace™ Products

Embedded IDE

Verify:SLDV Test Generation

Embedded IDE Link XXX

Verify:SystemTest™

Embedded IDE Link™ XXX

Trace:Model/Code Trace Report

Page 3: Model-Based Design for Safety-Critical and Mission-Critical … · SystemTest for requirements based testing. ... Tools to support the entire safety critical development process Participation

3

® ®

Requirements Process for Model-Based Design

� Functional, operational, and safety requirements� Exist one level above the model� Models trace to requirements

� Requirements validation - complete and correct� Simulation is a validation technique � Traceability can identify incomplete requirements� Model coverage can identify incomplete requirements

� Requirements based test cases� Test cases trace to requirements

Requirements

Validate

Page 4: Model-Based Design for Safety-Critical and Mission-Critical … · SystemTest for requirements based testing. ... Tools to support the entire safety critical development process Participation

4

® ®

Simulation example – controller and plant

Page 5: Model-Based Design for Safety-Critical and Mission-Critical … · SystemTest for requirements based testing. ... Tools to support the entire safety critical development process Participation

5

® ®

Requirements trace example – view from DOORS® to Simulink

Page 6: Model-Based Design for Safety-Critical and Mission-Critical … · SystemTest for requirements based testing. ... Tools to support the entire safety critical development process Participation

6

® ®

Requirements trace example – view from Simulink to DOORS

Page 7: Model-Based Design for Safety-Critical and Mission-Critical … · SystemTest for requirements based testing. ... Tools to support the entire safety critical development process Participation

7

® ®

Requirements based test trace example – view from Simulink Signal Builder block to DOORS

Page 8: Model-Based Design for Safety-Critical and Mission-Critical … · SystemTest for requirements based testing. ... Tools to support the entire safety critical development process Participation

8

® ®

Model coverage report example

Page 9: Model-Based Design for Safety-Critical and Mission-Critical … · SystemTest for requirements based testing. ... Tools to support the entire safety critical development process Participation

9

® ®

Requirements Process take-aways

� Early requirements validation� Eliminates rework typically seen at integration on

projects with poor requirements

� Early test case development� Validated requirements are complete and verifiable

which results in well defined test cases

� Requirements management and traceability� Requirements management interfaces provide

traceability for design and test cases

Requirements

Validate

Page 10: Model-Based Design for Safety-Critical and Mission-Critical … · SystemTest for requirements based testing. ... Tools to support the entire safety critical development process Participation

10

® ®

Design Process for Model-Based Design

� Model-Based Design� Create the design - Simulink and Stateflow®

� Modular design for teams - Model Reference� Model architecture/regression analysis - Model

Dependency Viewer� Documented design - Simulink Report Generator� Requirements traceability using Simulink Verification

and Validation™� Design conforms to standards using Model Advisor

Requirements

Model

Simulink&

Stateflow

Trace:RMI

Conformance:Model Advisor

Page 11: Model-Based Design for Safety-Critical and Mission-Critical … · SystemTest for requirements based testing. ... Tools to support the entire safety critical development process Participation

11

® ®

Example detailed design including model reference and subsystems

Subsystem Reference Model

Top Model

Page 12: Model-Based Design for Safety-Critical and Mission-Critical … · SystemTest for requirements based testing. ... Tools to support the entire safety critical development process Participation

12

® ®

Model dependency viewer

Page 13: Model-Based Design for Safety-Critical and Mission-Critical … · SystemTest for requirements based testing. ... Tools to support the entire safety critical development process Participation

13

® ®

Example Model Advisor report

Page 14: Model-Based Design for Safety-Critical and Mission-Critical … · SystemTest for requirements based testing. ... Tools to support the entire safety critical development process Participation

14

® ®

Design Verification for Model-Based Design

� Requirements based test cases� Automated testing using SystemTest™ and Simulink

Verification and Validation� Traceability using Simulink Verification and Validation

� Robustness testing and analysis� Built in Simulink run-time diagnostics� Formal proofs using Simulink Design Verifier™

� Coverage Analysis� Verify structural coverage of model� Verify data coverage of model

Requirements

Model

Simulink&

Stateflow

Verify:SystemTest

SLDV Property ProvingModel Coverage

Page 15: Model-Based Design for Safety-Critical and Mission-Critical … · SystemTest for requirements based testing. ... Tools to support the entire safety critical development process Participation

15

® ®

SystemTest for requirements based testing

Page 16: Model-Based Design for Safety-Critical and Mission-Critical … · SystemTest for requirements based testing. ... Tools to support the entire safety critical development process Participation

16

® ®

SystemTest – example reportData Plotting and expected

results comparisons

Summary of results

Page 17: Model-Based Design for Safety-Critical and Mission-Critical … · SystemTest for requirements based testing. ... Tools to support the entire safety critical development process Participation

17

® ®

Signal Builder and Assertion Blocks

Page 18: Model-Based Design for Safety-Critical and Mission-Critical … · SystemTest for requirements based testing. ... Tools to support the entire safety critical development process Participation

18

® ®

Model coverage report example – signal ranges

Page 19: Model-Based Design for Safety-Critical and Mission-Critical … · SystemTest for requirements based testing. ... Tools to support the entire safety critical development process Participation

19

® ®

Simulink Design Verifier – Coverage Test

Generated Test Cases

ModelTest Report

Page 20: Model-Based Design for Safety-Critical and Mission-Critical … · SystemTest for requirements based testing. ... Tools to support the entire safety critical development process Participation

20

® ®

Simulink Design Verifier – Objective Test

Generated Test Cases

Model with Constraints and ObjectivesTest Report

Page 21: Model-Based Design for Safety-Critical and Mission-Critical … · SystemTest for requirements based testing. ... Tools to support the entire safety critical development process Participation

21

® ®

Simulink Design Verifier – Property Proving

Property to be proven

Model with Assumption and ObjectiveReport

Page 22: Model-Based Design for Safety-Critical and Mission-Critical … · SystemTest for requirements based testing. ... Tools to support the entire safety critical development process Participation

22

® ®

Design Process take-aways� Modular reusable implementations

� Platform independent design� Scalable to large teams

� Consistent and compliant implementations� Common design language � Automated verification of standards compliance

� Efficient verification process� Develop verification procedures in parallel with design� Coverage analysis early in the process� Automated testing and analysis Requirements

Model

Simulink&

StateflowTrace:RMI

Verify:SystemTest

SLDV Property ProvingModel Coverage

Conformance:Model Advisor

Page 23: Model-Based Design for Safety-Critical and Mission-Critical … · SystemTest for requirements based testing. ... Tools to support the entire safety critical development process Participation

23

® ®

Coding Process for Model-Based Design

� Automatic code generation� Real-Time Workshop Embedded Coder

� Traceability� HTML Code Traceability Report

� Source code verification� Complies with standards using PolySpace MISRA-C®

checker� Accurate, consistent and robust using PolySpace™

verifier Model

Source Code

Real-Time WorkshopEmbedded coder Conformance:

PolySpace Products

Trace:Model/Code Trace Report

Page 24: Model-Based Design for Safety-Critical and Mission-Critical … · SystemTest for requirements based testing. ... Tools to support the entire safety critical development process Participation

24

® ®

dependent models rebuilt

model changed and rebuilt

Incrementally Generate Code

� Incremental code generation is supported via Model Reference

� When a model is changed, only models depending on it are subject to regeneration of their code

� Reduces application build times and ensure stability of a project’s code

� Degree of dependency checking is configurable

Page 25: Model-Based Design for Safety-Critical and Mission-Critical … · SystemTest for requirements based testing. ... Tools to support the entire safety critical development process Participation

25

® ®

Add Links to Requirements

Requirements appear in the code

Page 26: Model-Based Design for Safety-Critical and Mission-Critical … · SystemTest for requirements based testing. ... Tools to support the entire safety critical development process Participation

26

® ®

Code to Model Trace Report

Page 27: Model-Based Design for Safety-Critical and Mission-Critical … · SystemTest for requirements based testing. ... Tools to support the entire safety critical development process Participation

27

® ®

Compliance history of generated code• Our MISRA-C test suite consists of several example models

• Results shown for most frequentlyviolated rules

� Improving MISRA-C compliance with each release, e.g.� Eliminate Stateflow goto statements (R2007a)

� Compliant parentheses option available (R2006b)

� Generate default case for switch-case statements (R2006b)

� MathWorks MISRA-C Compliance Package available upon request http://www.mathworks.com/support/solutions/data/1-1IFP0W.html

Page 28: Model-Based Design for Safety-Critical and Mission-Critical … · SystemTest for requirements based testing. ... Tools to support the entire safety critical development process Participation

28

® ®

Simulink Integration with PolySpace ProductsSimulink Integration with PolySpace ProductsInput1Input1�� EntriesEntries�� varying from varying from --

500 to 500500 to 500

K1 and K2K1 and K2�� ConstantsConstants�� Can be tuned Can be tuned

from from --297 to 297 to 303303

Lookup tablesLookup tables�� Maps, surfaces,Maps, surfaces,

algorithms, algorithms, extrapolationsextrapolations

�� Adjusted, tunedAdjusted, tuned

Math operationsMath operations�� Divide, add, Divide, add,

min/max, min/max, product, product, substractsubstract,,sumsum……

Page 29: Model-Based Design for Safety-Critical and Mission-Critical … · SystemTest for requirements based testing. ... Tools to support the entire safety critical development process Participation

29

® ®

See results in the modelSee results in the model

�� Change the modelChange the model�� Generate the production codeGenerate the production code�� Run PolySpace softwareRun PolySpace software

PolySpace detected an error herePolySpace detected an error here(after having analyzed the generated code)(after having analyzed the generated code)

Page 30: Model-Based Design for Safety-Critical and Mission-Critical … · SystemTest for requirements based testing. ... Tools to support the entire safety critical development process Participation

30

® ®

Coding Process takeaways

� Reusable and platform independent source code� Traceability� MISRA-C compliance� Static verification and analysis

Model

Source Code

Real-Time WorkshopEmbedded coder Conformance:

PolySpace Products

Trace:Model/Code Trace Report

Page 31: Model-Based Design for Safety-Critical and Mission-Critical … · SystemTest for requirements based testing. ... Tools to support the entire safety critical development process Participation

31

® ®

Integration Process for Model-Based Design

� Executable object code generation� ANSI® or ISO® C or C++ compatible compiler� Run-time libraries provided

� Executable object code verification� Test generation using Simulink Design Verifier� Capability to build interface for Processor-In-the-Loop

(PIL) testing� Analyze code coverage during PIL� Analyze execution time during PIL� Analyze stack PIL

Requirements

Model

Source Code

Object Code

Embedded IDE

Verify:SLDV Test Generation

Embedded IDE Link XXX

Verify:SystemTest

Embedded IDE Link XXX

Page 32: Model-Based Design for Safety-Critical and Mission-Critical … · SystemTest for requirements based testing. ... Tools to support the entire safety critical development process Participation

32

® ®

Processor-in-the-Loop (PIL) Verification- Execute Generated Code on Target Hardware

Embedded Target

Simulink

Plant ModelAlgorithm

(Software Component)

Cod

e G

ener

atio

n

Execution

• on host and target• non-real-time

Communication via one of

• data link e.g. serial, CAN, TCP/IP• debugger integration with MATLAB

Page 33: Model-Based Design for Safety-Critical and Mission-Critical … · SystemTest for requirements based testing. ... Tools to support the entire safety critical development process Participation

33

® ®

Integration Process Takeaways

� Integration with multiple development environments

� Test cases and harnesses generated automatically

� Efficient processor in-the-loop test capability

Requirements

Model

Source Code

Object Code

Embedded IDE

Verify:SLDV Test Generation

Embedded IDE Link XXX

Verify:SystemTest

Embedded IDE Link XXX

Page 34: Model-Based Design for Safety-Critical and Mission-Critical … · SystemTest for requirements based testing. ... Tools to support the entire safety critical development process Participation

34

® ®

Wrap-up

� Tools to support the entire safety critical development process

� Participation on SC-205/WG-71 committee for DO-178C� Safety-Critical/DO-178B guideline document

� Available to licensed customers with Real-Time Workshop Embedded Coder

� Contact Bill Potter ([email protected]) or Tom Erkkinen ([email protected])