eliminating design errors in your algorithm using simulink

14
1 © 2014 The MathWorks, Inc. Eliminating Design Errors using Simulink Design Verifier Nishaat Vasi Simulink Design Verifier Product Manager

Upload: others

Post on 09-Apr-2022

10 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Eliminating Design Errors in Your Algorithm Using Simulink

1© 2014 The MathWorks, Inc.

Eliminating Design Errors using

Simulink Design Verifier

Nishaat Vasi

Simulink Design Verifier Product Manager

Page 2: Eliminating Design Errors in Your Algorithm Using Simulink

2

1) “holdrate” cal = 10 sets off runaway

acceleration

2) While going downhill, minimum coast

speed is not honored

Has This Happened To You?

Page 3: Eliminating Design Errors in Your Algorithm Using Simulink

3

Gaining Confidence in Your Design

Is this enough?Simulate

Test functional correctness

Test nominal calibration

Measure model coverage

Effort / Time

Confidence

Page 4: Eliminating Design Errors in Your Algorithm Using Simulink

4

Questions That Haunt

Are we missing requirements?

Do the test vectors adequately cover requirements?

How about unintended interaction of calibration parameters?

Page 5: Eliminating Design Errors in Your Algorithm Using Simulink

5

Page 6: Eliminating Design Errors in Your Algorithm Using Simulink

6

Enhancing Robustness of Design

Parameter “holdrate” can take on a zero value!

Page 7: Eliminating Design Errors in Your Algorithm Using Simulink

7

Finding Unintended Behavior Early

Detect hard-to-find design errors before simulation

Dead logic

Division by zero

Range violation

Integer overflow

Assertion violation

Out of bound array

access

Page 8: Eliminating Design Errors in Your Algorithm Using Simulink

8

Simulate

Test functional correctness

Test nominal calibration

Measure model coverage

Check for divide by zero, overflows

Adding Confidence to Design

Effort / Time

Confidence

Page 9: Eliminating Design Errors in Your Algorithm Using Simulink

9

Field Calibration Tests Uncover Error

Problem: “holdrate” cal = 10 sets off runaway acceleration, max cruise

speed is exceeded

– Functional tests pass for model

– No redundancies in model (100% coverage achieved)

– Nominal signal and parameter values worked in simulation

Debug Options:

1. Create test to reach this Cal condition

2. Ask Simulink Design Verifier if such unintended acceleration can occur

Page 10: Eliminating Design Errors in Your Algorithm Using Simulink

10

Construct a “property” for

Simulink Design Verifier

Leverage Calibration parameter

values from field test

Ask tool to prove whether errant

condition can occur

Use generated test case to debug

Identify Failure Mode in Model

Model

Verification

Logic

Always true

Evaluated 2nd

Page 11: Eliminating Design Errors in Your Algorithm Using Simulink

11

Other Issues That Could Be Identified

Going downhill,

minimum coast

speed not honored

Page 12: Eliminating Design Errors in Your Algorithm Using Simulink

12

Simulate

Test functional correctness

Test nominal calibration

Measure model coverage

Unintended behavior, robustness checks

Adding Confidence to Design

Simulink Design

Verifier

Effort / Time

Confidence

Page 13: Eliminating Design Errors in Your Algorithm Using Simulink

13

What is Simulink Design Verifier?

Design analysis tool

Identifies robustness errors early

Proves model meets key requirements under all circumstances

Page 14: Eliminating Design Errors in Your Algorithm Using Simulink

14

Questions

Please visit our booth for additional demonstration