Testen zur Absicherung automatisierter Transformationsschritte im Model-Based Design

Similar documents
What's new in MATLAB and Simulink for Model-Based Design

Automated Requirements-Based Testing

Standardkonforme Absicherung mit Model-Based Design

Implementation and Verification Daniel MARTINS Application Engineer MathWorks

Production Code Generation and Verification for Industry Standards Sang-Ho Yoon Senior Application Engineer

Model-Based Design for High Integrity Software Development Mike Anthony Senior Application Engineer The MathWorks, Inc.

2015 The MathWorks, Inc. 1

Reducing Design Errors in Complex State Machines using Model-Based Design

Codegenerierung für Embedded Systeme leicht gemacht So geht s!

Simulation-based Test Management and Automation Sang-Ho Yoon Senior Application Engineer

Simulink 모델과 C/C++ 코드에대한매스웍스의정형검증툴소개 The MathWorks, Inc. 1

What s New in Simulink in R2015b and R2016a

Developing AUTOSAR Compliant Embedded Software Senior Application Engineer Sang-Ho Yoon

Integrated Workflow to Implement Embedded Software and FPGA Designs on the Xilinx Zynq Platform Puneet Kumar Senior Team Lead - SPC

Guidelines for deployment of MathWorks R2010a toolset within a DO-178B-compliant process

Verification and Test with Model-Based Design

Hardware-Software Co-Design and Prototyping on SoC FPGAs Puneet Kumar Prateek Sikka Application Engineering Team

Leveraging Formal Methods for Verifying Models and Embedded Code Prashant Mathapati Application Engineering Group

Simulink Verification and Validation

Introducing Simulink Release 2012b for Control System Development Mark Walker MathWorks

Model-Based Design for effective HW/SW Co-Design Alexander Schreiber Senior Application Engineer MathWorks, Germany

MATLAB/Simulink 기반의프로그래머블 SoC 설계및검증

Using Model-Based Design in conformance with safety standards

Optimization and Implementation of Embedded Signal Processing Algorithms Jonas Rutström Senior Application Engineer

Testing, Validating, and Verifying with Model-Based Design Phil Rottier

Implementing MATLAB Algorithms in FPGAs and ASICs By Alexander Schreiber Senior Application Engineer MathWorks

Verification and Validation of Models for Embedded Software Development Prashant Hegde MathWorks India Pvt. Ltd.

Model-Based Design: Generating Embedded Code for Prototyping or Production

Model-Based Design for Video/Image Processing Applications

Workflow for Control System Design and Implementation

Modelling and Simulation Made Easy with Simulink Tiffany Liang Application Engineer MathWorks

Making the Most of your MATLAB Models to Improve Verification

Ein Modell - viele Zielsysteme

Introducing Simulink R2012b for Signal Processing & Communications Graham Reith Senior Team Leader, UK Application Engineering

Verification, Validation and Test in Model Based Design Manohar Reddy

Accelerating FPGA/ASIC Design and Verification

Reducing the cost of FPGA/ASIC Verification with MATLAB and Simulink

WHITE PAPER. 10 Reasons to Use Static Analysis for Embedded Software Development

Connecting MATLAB & Simulink with your SystemVerilog Workflow for Functional Verification

Model-Based Design for Safety-Critical and Mission-Critical Applications Bill Potter Technical Marketing April 17, 2008

Design and Verification of FPGA Applications

Design and Verify Embedded Signal Processing Systems Using MATLAB and Simulink

Design and Verification of FPGA and ASIC Applications Graham Reith MathWorks

MATLAB/Simulink in der Mechatronik So einfach geht s!

Formal Verification of Models and Code Prashant Mathapati Application Engineer Polyspace & Model Verification

Model to Code, Made Simple and Easy Sebastien Dupertuis Application Engineer Applications Engineering Group MathWorks Switzerland June 11, 2015

From Design to Production

Testing and Validation of Simulink Models with Reactis

Verification and Validation Introducing Simulink Design Verifier

Design and Verify Embedded Signal Processing Systems Using MATLAB and Simulink

Introduction to C and HDL Code Generation from MATLAB

Designing and Analysing Power Electronics Systems Using Simscape and SimPowerSystems

Accelerate FPGA Prototyping with

Four Best Practices for Prototyping MATLAB and Simulink Algorithms on FPGAs by Stephan van Beek, Sudhir Sharma, and Sudeepa Prakash, MathWorks

Utilisation des Méthodes Formelles Sur le code et sur les modèles

Test Design Techniques ISTQB (International Software Testing Qualifications Board)

Designing and Targeting Video Processing Subsystems for Hardware

Case Study on DiaHDL: A Web-based Electronic Design Automation Tool for Education Purpose

[Sub Track 1-3] FPGA/ASIC 을타겟으로한알고리즘의효율적인생성방법및신기능소개

2015 The MathWorks, Inc. 1

Intro to Proving Absence of Errors in C/C++ Code

Jay Abraham 1 MathWorks, Natick, MA, 01760

Compatible Qualification Metrics for Formal Property Checking

By Jason Ghidella, PhD, and Pieter J. Mosterman, PhD. Left Elevator. actuator. hydraulic system 1 left outer. left inner

Model-Based Design: Design with Simulation in Simulink

Intro to System Generator. Objectives. After completing this module, you will be able to:

Optimize DSP Designs and Code using Fixed-Point Designer

Complex Signal Processing Verification under DO-254 Constraints by François Cerisier, AEDVICES Consulting

Hardware Implementation and Verification by Model-Based Design Workflow - Communication Models to FPGA-based Radio

What s New with the MATLAB and Simulink Product Families. Marta Wilczkowiak & Coorous Mohtadi Application Engineering Group

MODEL BASED HARDWARE DESIGN WITH SIMULINK HDL CODER

Simulink 를이용한 효율적인레거시코드 검증방안

Vom Konzept zum Modell physikalischer Systeme Smarter Modellieren mit Simscape

Modeling a 4G LTE System in MATLAB

On the Generation of Test Cases for Embedded Software in Avionics or Overview of CESAR

Model-Based Design for Altera FPGAs Using HDL Code Generation The MathWorks, Inc. 1

Using Model-Based Design to Design Real-Time Video Processing Systems

Addressing Fixed Point Design Challenges

ECE 156B Fault Model and Fault Simulation

What s New In Simulink: Fraser Macmillen

Introduction to Control Systems Design

DRYING CONTROL LOGIC DEVELOPMENT USING MODEL BASED DESIGN

MathWorks Products and Prices North America January 2018

Moving MATLAB Algorithms into Complete Designs with Fixed-Point Simulation and Code Generation

Model-Based Design Using Simulink, HDL Coder, and DSP Builder for Intel FPGAs By Kiran Kintali, Yongfeng Gu, and Eric Cigan

Final Presentation AUTOCOGEQ GMV, 2017 Property of GMV All rights reserved UNCLASSIFIED INFORMATION

Advanced AC Motor Control S/W Development Sang-Ho Yoon Senior Application Engineer The MathWorks

Turning an Automated System into an Autonomous system using Model-Based Design Autonomous Tech Conference 2018

Simulink Matlab To Vhdl Route For Full Custom Fpga Rapid

ISO Compliant Automatic Requirements-Based Testing for TargetLink

Testing Tactics. Structural Testing. Why Structural? Why Structural? Functional black box. Structural white box. Functional black box

ISO compliant verification of functional requirements in the model-based software development process

Production Code Generation Introduction and New Technologies

System-Level ASIC Algorithm Simulation Platform using Simulink

Extending Model-Based Design for HW/SW Design and Verification in MPSoCs Jim Tung MathWorks Fellow

Reuse MATLAB Functions and Simulink Models in UVM Environments with Automatic SystemVerilog DPI Component Generation

Introduction to DSP/FPGA Programming Using MATLAB Simulink

Report. Certificate Z

An incremental and multi-supplement compliant process for Autopilot development to make drones safer

By Matthew Noonan, Project Manager, Resource Group s Embedded Systems & Solutions

Transcription:

Testen zur Absicherung automatisierter Transformationsschritte im Model-Based Design October 4 th 2011 Dr. Marc Segelken Senior Application Engineer 2011 The MathWorks, Inc. 1

Agenda Testing Existing coverage metrics sufficient for testing? Coverage definition MC/DC Possible blind spots of coverage metrics Coverage definition for enabling observability Other means of ensuring correct code generation (Pre-)Qualification of code generator Automatic code reviews Summary 2

Development Process Verification and Validation in the Design V Requirements User Acceptance Testing System-Level Specification System Design Environment Physical Components Algorithms Subsystem Design System tests in simulation Component Design Component tests in simulation Test vectors end expected responses Embedded Software System Tests Test vectors and expected outputs Component Tests Digital Electronics C, C++ VHDL, Verilog Code Verification and Validation Integration testing Subsystem Integration & Test System-Level Integration & Test Complete Integration & Test MCU DSP FPGA ASIC Integration Implement Subsystem Implementation 3

Development Process Verification and Validation in the Design V Requirements System validation/acceptance Test User Acceptance Testing System-Level Specification System Design Environment Physical Components Algorithms Subsystem Design System tests in simulation Component Design Component tests in simulation Test vectors end expected responses Embedded Software System Tests Test vectors and expected outputs Component Tests SILTests Digital Electronics C, C++ VHDL, Verilog Run component tests on target Run system tests on integrated controller Code Verification and Validation Integration testing Subsystem Integration & Test System-Level Integration & Test Complete Integration & Test MCU DSP FPGA ASIC Integration Implement Subsystem Implementation 4

Existing Coverage Metrics sufficient for Testing? Testing Functional: Does the model/code fullfill the requirements? Structural: Is the code functionally equivalent with model? Coverage Metrics to define test amount criterion Many metrics available, stronger ones take more testing effort MC/DC is strongest industry standard in Aerospace But is this sufficient? What kind of defects might fall through? 5

General Approach Measuring Defect Detection Rate Automate introduction of single defects across whole model Ideas: wrong logical/arithmetical function, wrong thresholds, wrong lookup table values, change transition execution order, insert delays, Then check if each defect is detected automatically by applied test set Problems No standardized approach Which defects to be inserted? Huge testing effort for big models parallel execution needed 6

Coverage Metrics MC/DC (Modified Condition Decision Coverage) Each of the conditions a,b,c must be demonstrated to change output of expression keep value of all conditions but one and observe change in output by toggling one 7

Problem 1 Test might fail to use faulty element MC/DC only considers logic/control flow No arithmetics covered Defects in these parts possibly missed Approach Using Min Max and lookuptable coverage Extending coverage metrics by reasonable data values Examples: 8

Problem 2: Observability - Propagation Delay of Errors How many steps to have impact on output? t 0 t 1 t 2 t 3 t 4 t 5 t 6 t n+x t n t n+1 t n+2 t n+3 10

Using Tests with demonstrated Event Impact on Outputs How to demonstrate impact of an event (possible defect) with unknown propagation delay time? As opposed to MC/DC, not possible to just compare subsequent values after conditions toggle Need to show impact difference between occurence and nonoccurence of event one reference test case per event needed with non-occurence of event Example: Demonstrating Impact of Inputs on Outputs of state-based components 11

Measuring Input Output Impact Coverage 12

Creating Deviations 13

Measuring Coverage - Details 14

Generating Test Cases Automatically Harness for extended coverage measurment can be generated by script Test generation with user-defined test objectives then same as MC/DC Complexity restrictions of test case generation to be considered 15

Remarks on Coverage Extensions As for every testing process and coverage compromise, defect detection not guaranteed Yet defect detection gets more probable with additional coverage criteria in place 16

Testing Summary MC/DC does not guarantee reliable defect detection Coverage metrics can be extended by data value range coverage Including observability of events 17

Qualifiable Code Generators Alternative to Testing? Idea: Moving effort almost completely to development phase of code generator Increased SW quality supposed to rule out defects in code generator that might lead to errors Does this approach guarantee absence of defects/errors? Same as for DO-178B: Final responsibility stays with tool user 18

Other Alternative: Automatic Code Review Idea: Automatically check if model and code match structurally and functionally Approach of Simulink Code Inspector 19

Simulink Code Inspector Code verification Independently verify that source code is traceable to and complies with low-level requirements Model Embedded Coder Code traceability Source code Demonstrate that model and source code match structurally and functionally Provide model-to-code and code-to-model traceability information Eliminate / reduce manual code reviews for DO-178B software Same certification credits as qualified code generator 20

Simulink Code Inspector Overview Model and code development Simulink Model Embedded Coder C source code Independent code inspection Model IR Code IR IR transformations Normalized Model IR Normalized Code IR Matching Code inspection report? 21

Simulink Code Inspector Report Example for bad case: Deviating model and code 22

Summary Coverage Metrics MC/DC can be complemented with non-standard user-defined coverages for data values and observability enhancements Automatic Test Case Generation can be used if applicable Automatic code reviews can give qualification credit for code generator, eliminating/reducing code reviews 23