MATLAB and Simulink Training

Applying Model-Based Design for ISO 26262

View schedule and enroll

Course Details

This five-day course describes guiding principles for applying Model-Based Design to meet ISO 26262 compliance. It enables users to take advantage of the Simulink® environment to synthesize, implement, and validate their software components in a manner consistent with the principles of ISO 26262.
 
Topics include:
 
  • Creating and modifying Simulink models and simulating system dynamics
  • Implementing interface control of Simulink subsystems and models
  • Managing requirements in Simulink models
  • Partitioning models using Simulink subsystems, libraries, and model references
  • Code generation and code customization options
  • Dynamic in-the-loop testing of Simulink models and generated code
  • Formal verification of Simulink models
  • Establishing and enforcing modeling standards

Day 1 of 5


Overview of ISO 26262 and Model-Based Design

Objective: Get an overview of ISO 26262 and its role in the automotive industry. Discuss MathWorks’ involvement and level of support within this standard.

  • ISO 26262 standard
  • Required safety level
  • Tool confidence level
  • Reference workflow
  • Tool qualification

Model Creation

Objective: Create a Simulink model and define its sample time and data types.

  • Introduction to the Simulink environment
  • System inputs and outputs
  • Discrete signals and states
  • Simulation and analysis
  • Simulation data inspector

Model Timing and Execution

Objective: Simulating a single-rate and a multirate model. Data transfer considerations.

  • Simulink solver overview
  • Block execution
  • Modeling single-rate systems
  • Multirate discrete systems
  • Rate transitions
  • Data integrity and data determinism considerations

Modeling Standards

Objective: Explore how to set up and enforce modeling standards, check for common modeling errors, and optimize model performance.

  • Understanding modeling standards
  • Running edit-time checks
  • Using Model Advisor
  • Reporting results

Day 2 of 5


Requirements Management

Objective: Link a Simulink model to system requirements.

  • Identifying and writing high-level requirements
  • Writing requirements
  • Creating requirement sets
  • Importing requirements
  • Requirements linking

Architecture Modeling

Objective: Introduce System Composer for system architecture workflows.

  • Introducing System Composer
  • Creating architectural elements
  • Defining stereotypes for each type of element
  • Analyzing architectures
  • Component interfaces
  • Bus objects
  • Data dictionaries
  • Creating architectural views
  • Linking Simulink models

Model Management

Objective: Discuss the pros and cons of the different features used for organizing a Simulink model into separate components.

  • System component considerations
  • Virtual subsystems
  • Atomic subsystems
  • Model references
  • Libraries
  • Component variants

Day 3 of 5


Project Management

Objective: Discuss how to effectively organize a project (containing models, data, documentation, etc.) and perform configuration management tasks.

  • Project setup
  • File dependencies and impact
  • Source control integration
  • File differences

Software Unit Verification

Objective: Create time-based and logic-based test cases for a Simulink model.

  • Types of verification
  • Detecting desing errors
  • Defining test cases
  • Generating test harnesses
  • Importing test inputs
  • Incorporating logic in tests
  • Performing requirements-based assessments

Verification Automation

Objective: Create repeatable groups of tests and automatically generate reports from the test results.

  • Creating test files
  • Configuring simulation, baseline, and equivalence tests
  • Configuring unit and integration tests
  • Measuring model coverage
  • Increasing coverage with automatic test generation
  • Viewing and documenting test results

Day 4 of 5


Code Generation and Customization

Objective: Configure Simulink models for embedded code generation using optimization and customization options and effectively interpret the generated code.

  • Architecture of an embedded application
  • Generating code
  • Modifying function prototypes
  • Reusable function interface
  • Setting signal storage classes
  • Controlling storage classes with data objects
  • Creating reconfigurable data types

Generated Code Architecture

Objective: Control the architecture of the generated code using subsystems, model references, and buses.

  • Creating reusable model references
  • Controlling data type of bus signals
  • Generating reusable subsystem code
  • Generating variant components

Software Testing and Analysis

Objective: Software testing and verification using in-the-loop testing techniques for model references and top-level model

  • Software-in-the-loop testing of generated code
  • Profiling generated code
  • Model Reference software testing
  • Hardware support overview
  • Arduino setup
  • Validating generated code on target

Day 5 of 5


Reports

Objective: Discuss the methods of automatically creating reports and documentation from Simulink models.

  • Web views
  • Standard reports

Software Development Best Practice

Objective: Perform static analysis on the generated code to ensure the code is compliant with MISRA C:2012.

  • Code verification using Polyspace Bug Finder
  • Software MISRA C:2012 compliance
  • Analyzing code metrics

Tool Qualification

Objective: Use the IEC Certification Kit (for ISO 26262 and IEC 61508) to qualify MathWorks tools to meet compliance with ISO 26262

  • Tool qualification
  • IEC Certification Kit (for ISO 26262 and IEC 61508)

Case Study

Objective: Apply Model-Based Design to implement a control algorithm to showcase the reference workflow.

  • Requirements traceability
  • Software unit design
  • Software unit testing
  • Integration testing
  • Code generation

Level: Advanced

Prerequisites:

MATLAB Onramp and Simulink Onramp. This course is intended for intermediate or advanced Simulink users. Knowledge of C programming language is recommended. Knowledge of the ISO 26262 standard is recommended.

Duration: 5 day

Languages: English

View schedule and enroll