SlideShare a Scribd company logo
1 of 34
Model-checking
  AUTOSAR Basic
Software Component
             Masters thesis by
            Venkata Kalyan Ram

   Software Engineering and Management
 Department of Computer Science and Engineering
Agenda
•   Introduction
     – Problem statement
•   Model-Checking
     – Modelling
     – Specification
•   AUTOSAR
     – CAN Network Management
•   Case-Study: Verification
•   Results & Reflections
Introduction
•   Electronic Control Units (ECUs) are the basic blocks of
    many features of an automobile




                               3
Introduction
• Example: Parking
 assistance




                     4
Introduction




     5
Introduction
•   ECUs are connected as a network of nodes
•   Networked ECUs forms a distributed and networked system




                               6
Introduction
           Different bus types
           and/or networks like
           CAN, LIN, FlexRay,
           etc.

     •   Each node may be a
         processor, a DSP, an FPGA,
         etc
     •   Depending on the type of
         application, nodes may be
         units of individual chips, or
         small embedded computers


     7
Problem statement
•   Verifying the design of the software early during the
    development life cycle is considered highly essential
•   Testing can only show that a system is working as
    intended, whereas verification can show the correctness
    proof of a system
•   Thus it is the aim of this thesis to perform such verification
    on a model of a software module which is part of a
    broader framework called AUTOSAR




                                 8
•   Introduction
     – Problem statement
•   Model-Checking
     – Modelling
     – Specification
•   AUTOSAR
     – CAN Network Management
•   Case-Study: Verification
•   Results & Reflections
Model-checking
•   A Formal Verification technique
•   Formal Verification
     “Mathematically proving the correctness of a design with
        respect to mathematical formal specification”
•   Introduced by Edmund M. Clarke & Joseph Sifakis
•   Given a model M and a specification P of a
    system, determine whether the specification P is satisfied
    on the model M.
•   This is written as

                            ?
                        M       P

                                10
Model-checking
•   Modeling
    –   Finite state machines
•   Specification
    –   Expressed with temporal aspects of the property
    –   Temporal Aspects
        •   Linear time
        •   Discrete time
        •   Branching time
•   Verification
    –   Process of searching the state space of a model
        exhaustively to determine whether a specified property
        fails.


                                11
Model-checking
        Model
(Abstract of a system)

                                      Answer
                               Yes  If Model satisfies
       Model                      the specification
      checker                 Counter Example  If
                              Model doesn’t satisfy the
                              specification


   Specification
 (System property)




                         12
Model-checking
                  PROMELA
           (PROcess MEta LAnguage)


                                                    Answer
                                             Yes  If Model satisfies
                                                the specification
                  SPIN
                                            Counter Example  If
                                            Model doesn’t satisfy the
                                            specification


                     LTL
          (Linear Temporal Language)



•   SPIN – Simple PROMELA INterpreter
•   Developed in 1980 at Bell Labs by Gerard J. Holzmann
                                       13
Modeling
•   An example of an audio player
     – A finite state model of the audio player

                           Stop


                Idle                   Playing
                           Play

                             Pause
                Stop                    Play

                         Paused

                                  14
Modeling
•   PROMELA code of the model of the audio player




                            15
Modeling
•   PROMELA code of the model of the audio player




                            16
Modeling
•   PROMELA code of the model of the audio player




                            17
Modeling
•   PROMELA code of the model of the audio player




                            18
Specification
•   Common operators of Linear Temporal Logic

             G or □ – Globally or Always p




             F or ◊ – Finally or Eventually p




                              19
Specification
•   Property to be verified –
     “Whenever the play button is pressed, it is guaranteed that the
     song will be played”


•   Expressed in LTL
    ((input == play) -> (CURRENT_STATE == PLAYING))




                                   20
•   Introduction
     – Problem statement
•   Model-Checking
     – Modelling
     – Specification
•   AUTOSAR
     – CAN Network Management
•   Case-Study: Verification
•   Results & Reflections
AUTOSAR
•     AUtomotive Open Software ARchitecture
•     Layered architecture

                            Application layer
                  AUTOSAR Runtime Environment (RTE)
    System services          Memory            Communication    I/O Hardware    Compl
                                                                                  ex
                             services            services         Abstraction   drivers



        Onboard device        Memory            Communication
                             hardware              hardware
          abstraction                             abstraction
                            abstraction

        Microcontroller   Memory drivers       Communication     I/O Drivers
           devices                                drivers


                              Microcontroller
                                          22
AUTOSAR
•   The communication services are the group of modules for
    vehicle network communication (CAN, LIN and FlexRay)
•   They are interfacing with communication drivers via the
    communication hardware abstraction




                             23
AUTOSAR




   24
CAN Network Management
•   Decentralized network
    management strategy
•   Periodic NM-Message
    transmission via broadcast
    transmission
•   Two key-requirements are:
    – Every node shall transmit
      messages
    – If no messages are
      transmitted, every node shall
      make a transition to Sleep
      Mode
                             25
CAN Network Management




          26
CAN Network Management
                                         Network mode
                              Ready
                              Sleep
                              State


           Repeat
           Message
           State




                          Normal
                          Operation
   Bus-
   Sleep
   Mode

                          Prepare Bus-
                          Sleep Mode
                     27
Tx or Rx                             Network mode
CAN Network
Management                          NM_Timer     NetRel &                     Ready
                                                                              Sleep
                                                 Repeat_Message_Timer
                                                                              State   NM_Timer
Following are called by                          expiry
                                                                                      expiry /
Generic NM                                                                            Wait_Bus
                                       Repeat          RepeatReq                      _Sleep_Ti
CanNm_NetworkRequest()                 Message                                        mer
                                       State
CanNm_NetworkRelease()                                                                start

CanNm_RepeatMessageReq                                               NetReq      NetRel
                                                   RepeatReq
uest()

                                             NetReq &
Following are called by                      Repeat_Message_Timer
                                             expiry                             NM_Timer
CAN_IF
CanNm_TxConfirmation()                                                Normal
                                                                      Operation
CanNm_RxIndication()      Bus-
                          Sleep
                          Mode                             NetReq || Rx /
The timers are                                             NM_Timer start
NM_Timer                            Wait_Bus_Sleep_Timer
                          Rx                                                Prepare Bus-
Repeat_Message_Timer                                                        Sleep Mode
Wait_Bus_Sleep_Timer

                                  28
•   Introduction
     – Problem statement
•   Model-Checking
     – Modelling
     – Specification
•   AUTOSAR
     – CAN Network Management
•   Case-Study: Verification
•   Results & Reflections
Case-Study: Verification
•   Properties are drawn from the key requirements
•   3 properties were verified
     – 2 are temporal in nature
     – 1 is an assertion
•   The temporal properties are
     – P1 – “CAN NM should enter Normal Operation state whenever
        network is requested”
           □(NetReq -> ◊ Normal_Operation)
     –   P2 – “If the network is released, CAN NM shall be put to sleep mode”
          □(NetRel -> ◊ Bus_Sleep_Mode)
•   The assertion property is
     – P3 – “All the states specified for CAN NM are reachable”
          e.g. – assert(CURRENT_STATE == NORMAL_OPERATION)

                                      30
•   Introduction
     – Problem statement
•   Model-Checking
     – Modelling
     – Specification
•   AUTOSAR
     – CAN Network Management
•   Case-Study: Verification
•   Results & Reflections
Results & Reflections
•   All the properties were satisfied on the model
•   By this study the characteristic non-determinism
    of CAN NM, has been made explicit
•   Abstraction played a key role while modeling
    CAN NM
•   Model-checking showed to be a good technique
    for detecting non-determinism and also building
    a good verification model



                          32
References
•   AUTOSAR illustrations from www.autosar.org
•   Clarke, Edmund M. “Model Checking.” Foundations of
    Software Technology and Theoretical Computer
    Science, Lecture Notes in Computer Science. Vol. 1346.
    Springer Berlin/ Heidelberg, 1997. 54-56.
•   Temporal Logic Formulas Illustrations by Alessandro
    Artale, Free University of Bolzano
•   Parking assistance illustration from Valeo Service, The
    Netherlands




                              33
Thank you

More Related Content

What's hot

Autosar basics by ARCCORE
Autosar basics by ARCCOREAutosar basics by ARCCORE
Autosar basics by ARCCOREARCCORE
 
AUTOSAR_EXP_LayeredSoftwareArchitecture.pdf
AUTOSAR_EXP_LayeredSoftwareArchitecture.pdfAUTOSAR_EXP_LayeredSoftwareArchitecture.pdf
AUTOSAR_EXP_LayeredSoftwareArchitecture.pdfSalaheddineelabbassi
 
What is AUTOSAR Communication Stack (ComStack)?Get introduced to CAN ComStack
What is AUTOSAR Communication Stack (ComStack)?Get introduced to CAN ComStackWhat is AUTOSAR Communication Stack (ComStack)?Get introduced to CAN ComStack
What is AUTOSAR Communication Stack (ComStack)?Get introduced to CAN ComStackEmbitel Technologies (I) PVT LTD
 
Automotive embedded systems part7 v1
Automotive embedded systems part7 v1Automotive embedded systems part7 v1
Automotive embedded systems part7 v1Keroles karam khalil
 
Automotive embedded systems part5 v2
Automotive embedded systems part5 v2Automotive embedded systems part5 v2
Automotive embedded systems part5 v2Keroles karam khalil
 
ECU Flashing: Flash Bootloaders that Facilitate ECU Reprogramming
ECU Flashing: Flash Bootloaders that Facilitate ECU ReprogrammingECU Flashing: Flash Bootloaders that Facilitate ECU Reprogramming
ECU Flashing: Flash Bootloaders that Facilitate ECU ReprogrammingEmbitel Technologies (I) PVT LTD
 
Model-based Automotive Software Development using Autosar, UML, and Domain-Sp...
Model-based Automotive Software Development using Autosar, UML, and Domain-Sp...Model-based Automotive Software Development using Autosar, UML, and Domain-Sp...
Model-based Automotive Software Development using Autosar, UML, and Domain-Sp...Alexander Nyßen
 
Automotive embedded systems part5 v1
Automotive embedded systems part5 v1Automotive embedded systems part5 v1
Automotive embedded systems part5 v1Keroles karam khalil
 
Adaptive AUTOSAR - The New AUTOSAR Architecture
Adaptive AUTOSAR - The New AUTOSAR ArchitectureAdaptive AUTOSAR - The New AUTOSAR Architecture
Adaptive AUTOSAR - The New AUTOSAR ArchitectureAdaCore
 
What is AUTOSAR Memory Stack | Software modules and device drivers
What is AUTOSAR Memory Stack | Software modules and device driversWhat is AUTOSAR Memory Stack | Software modules and device drivers
What is AUTOSAR Memory Stack | Software modules and device driversEmbitel Technologies (I) PVT LTD
 
The Basics of Automotive Ethernet Webinar Slidedeck
The Basics of Automotive Ethernet Webinar SlidedeckThe Basics of Automotive Ethernet Webinar Slidedeck
The Basics of Automotive Ethernet Webinar Slidedeckteledynelecroy
 

What's hot (20)

ISO 26262: Automotive Functional Safety
ISO 26262: Automotive Functional SafetyISO 26262: Automotive Functional Safety
ISO 26262: Automotive Functional Safety
 
Autosar basics by ARCCORE
Autosar basics by ARCCOREAutosar basics by ARCCORE
Autosar basics by ARCCORE
 
AUTOSAR_EXP_LayeredSoftwareArchitecture.pdf
AUTOSAR_EXP_LayeredSoftwareArchitecture.pdfAUTOSAR_EXP_LayeredSoftwareArchitecture.pdf
AUTOSAR_EXP_LayeredSoftwareArchitecture.pdf
 
What is AUTOSAR Communication Stack (ComStack)?Get introduced to CAN ComStack
What is AUTOSAR Communication Stack (ComStack)?Get introduced to CAN ComStackWhat is AUTOSAR Communication Stack (ComStack)?Get introduced to CAN ComStack
What is AUTOSAR Communication Stack (ComStack)?Get introduced to CAN ComStack
 
UDS PPT
UDS PPTUDS PPT
UDS PPT
 
Automative basics v3
Automative basics v3Automative basics v3
Automative basics v3
 
Frequently Asked Questions on AUTOSAR Services
Frequently Asked Questions on AUTOSAR ServicesFrequently Asked Questions on AUTOSAR Services
Frequently Asked Questions on AUTOSAR Services
 
Autosar MCAL (Microcontroller Abstraction Layer)
Autosar MCAL (Microcontroller Abstraction Layer)Autosar MCAL (Microcontroller Abstraction Layer)
Autosar MCAL (Microcontroller Abstraction Layer)
 
AUToSAR introduction
AUToSAR introductionAUToSAR introduction
AUToSAR introduction
 
Automotive embedded systems part7 v1
Automotive embedded systems part7 v1Automotive embedded systems part7 v1
Automotive embedded systems part7 v1
 
Autosar Basics hand book_v1
Autosar Basics  hand book_v1Autosar Basics  hand book_v1
Autosar Basics hand book_v1
 
AUTOSAR Memory Stcak (MemStack).
AUTOSAR Memory Stcak (MemStack). AUTOSAR Memory Stcak (MemStack).
AUTOSAR Memory Stcak (MemStack).
 
Automotive embedded systems part5 v2
Automotive embedded systems part5 v2Automotive embedded systems part5 v2
Automotive embedded systems part5 v2
 
ECU Flashing: Flash Bootloaders that Facilitate ECU Reprogramming
ECU Flashing: Flash Bootloaders that Facilitate ECU ReprogrammingECU Flashing: Flash Bootloaders that Facilitate ECU Reprogramming
ECU Flashing: Flash Bootloaders that Facilitate ECU Reprogramming
 
Model-based Automotive Software Development using Autosar, UML, and Domain-Sp...
Model-based Automotive Software Development using Autosar, UML, and Domain-Sp...Model-based Automotive Software Development using Autosar, UML, and Domain-Sp...
Model-based Automotive Software Development using Autosar, UML, and Domain-Sp...
 
Automotive embedded systems part5 v1
Automotive embedded systems part5 v1Automotive embedded systems part5 v1
Automotive embedded systems part5 v1
 
Adaptive AUTOSAR - The New AUTOSAR Architecture
Adaptive AUTOSAR - The New AUTOSAR ArchitectureAdaptive AUTOSAR - The New AUTOSAR Architecture
Adaptive AUTOSAR - The New AUTOSAR Architecture
 
What is AUTOSAR Memory Stack | Software modules and device drivers
What is AUTOSAR Memory Stack | Software modules and device driversWhat is AUTOSAR Memory Stack | Software modules and device drivers
What is AUTOSAR Memory Stack | Software modules and device drivers
 
The Basics of Automotive Ethernet Webinar Slidedeck
The Basics of Automotive Ethernet Webinar SlidedeckThe Basics of Automotive Ethernet Webinar Slidedeck
The Basics of Automotive Ethernet Webinar Slidedeck
 
Flash Bootloader Development for ECU programming
Flash Bootloader Development for ECU programmingFlash Bootloader Development for ECU programming
Flash Bootloader Development for ECU programming
 

Viewers also liked

In‐Vehicle Networking: a Survey and Look Forward
In‐Vehicle Networking: a Survey and Look ForwardIn‐Vehicle Networking: a Survey and Look Forward
In‐Vehicle Networking: a Survey and Look ForwardRealTime-at-Work (RTaW)
 
K-SAR - AUTOSAR Suite
K-SAR - AUTOSAR SuiteK-SAR - AUTOSAR Suite
K-SAR - AUTOSAR SuiteKPIT
 
Webinar presentation on AUTOSAR Multicore Systems
Webinar presentation on AUTOSAR Multicore SystemsWebinar presentation on AUTOSAR Multicore Systems
Webinar presentation on AUTOSAR Multicore SystemsKPIT
 
Night vision-tech-sanketh
Night vision-tech-sankethNight vision-tech-sanketh
Night vision-tech-sankethSanketh Gowda
 
Distance Measuring Car
Distance Measuring CarDistance Measuring Car
Distance Measuring CarArkhom Jodtang
 
Electronic Control Unit(ECU)
Electronic Control Unit(ECU)Electronic Control Unit(ECU)
Electronic Control Unit(ECU)Ankul Gupta
 
Global Advanced Driver Assistance Systems (ADAS) Market: Trends and Opportuni...
Global Advanced Driver Assistance Systems (ADAS) Market: Trends and Opportuni...Global Advanced Driver Assistance Systems (ADAS) Market: Trends and Opportuni...
Global Advanced Driver Assistance Systems (ADAS) Market: Trends and Opportuni...Daedal Research
 
Imaging Technologies for Automotive 2016 Report by Yole Developpement
Imaging Technologies for Automotive 2016 Report by Yole Developpement	Imaging Technologies for Automotive 2016 Report by Yole Developpement
Imaging Technologies for Automotive 2016 Report by Yole Developpement Yole Developpement
 

Viewers also liked (9)

In‐Vehicle Networking: a Survey and Look Forward
In‐Vehicle Networking: a Survey and Look ForwardIn‐Vehicle Networking: a Survey and Look Forward
In‐Vehicle Networking: a Survey and Look Forward
 
K-SAR - AUTOSAR Suite
K-SAR - AUTOSAR SuiteK-SAR - AUTOSAR Suite
K-SAR - AUTOSAR Suite
 
Webinar presentation on AUTOSAR Multicore Systems
Webinar presentation on AUTOSAR Multicore SystemsWebinar presentation on AUTOSAR Multicore Systems
Webinar presentation on AUTOSAR Multicore Systems
 
Night vision-tech-sanketh
Night vision-tech-sankethNight vision-tech-sanketh
Night vision-tech-sanketh
 
What is AUTOSAR Development Partnership
What is AUTOSAR Development PartnershipWhat is AUTOSAR Development Partnership
What is AUTOSAR Development Partnership
 
Distance Measuring Car
Distance Measuring CarDistance Measuring Car
Distance Measuring Car
 
Electronic Control Unit(ECU)
Electronic Control Unit(ECU)Electronic Control Unit(ECU)
Electronic Control Unit(ECU)
 
Global Advanced Driver Assistance Systems (ADAS) Market: Trends and Opportuni...
Global Advanced Driver Assistance Systems (ADAS) Market: Trends and Opportuni...Global Advanced Driver Assistance Systems (ADAS) Market: Trends and Opportuni...
Global Advanced Driver Assistance Systems (ADAS) Market: Trends and Opportuni...
 
Imaging Technologies for Automotive 2016 Report by Yole Developpement
Imaging Technologies for Automotive 2016 Report by Yole Developpement	Imaging Technologies for Automotive 2016 Report by Yole Developpement
Imaging Technologies for Automotive 2016 Report by Yole Developpement
 

Similar to Model-checking AUTOSAR Basic Software Component

A Systematic Approach to Creating Behavioral Models (CDNLive Slides)
A Systematic Approach to Creating Behavioral Models (CDNLive Slides)A Systematic Approach to Creating Behavioral Models (CDNLive Slides)
A Systematic Approach to Creating Behavioral Models (CDNLive Slides)Robert O. Peruzzi, PhD, PE, DFE
 
The Cortex-A15 Verification Story
The Cortex-A15 Verification StoryThe Cortex-A15 Verification Story
The Cortex-A15 Verification StoryDVClub
 
Approaches for Power Management Verification of SOC
Approaches for Power Management Verification of SOC Approaches for Power Management Verification of SOC
Approaches for Power Management Verification of SOC DVClub
 
DFX Architecture for High-performance Multi-core Microprocessors
DFX Architecture for High-performance Multi-core MicroprocessorsDFX Architecture for High-performance Multi-core Microprocessors
DFX Architecture for High-performance Multi-core MicroprocessorsIshwar Parulkar
 
Development of can, pwm, adc and
Development of can, pwm, adc andDevelopment of can, pwm, adc and
Development of can, pwm, adc andAymen Abdelhakim
 
20110812 CyberTAN presentation
20110812 CyberTAN presentation20110812 CyberTAN presentation
20110812 CyberTAN presentationRichard Hsu
 
Ximea - the pc camera, 90 gflps smart camera
Ximea  - the pc camera, 90 gflps smart cameraXimea  - the pc camera, 90 gflps smart camera
Ximea - the pc camera, 90 gflps smart cameraXIMEA
 
Bringing Engineering Analysis Codes Into Real-Time Full-Scope Simulators
Bringing Engineering Analysis Codes Into Real-Time Full-Scope SimulatorsBringing Engineering Analysis Codes Into Real-Time Full-Scope Simulators
Bringing Engineering Analysis Codes Into Real-Time Full-Scope SimulatorsGSE Systems, Inc.
 
Efficient execution of quantized deep learning models a compiler approach
Efficient execution of quantized deep learning models a compiler approachEfficient execution of quantized deep learning models a compiler approach
Efficient execution of quantized deep learning models a compiler approachjemin lee
 
An FPGA-based Scalable Simulation Accelerator for Tile Architectures @HEART2011
An FPGA-based Scalable Simulation Accelerator for Tile Architectures @HEART2011An FPGA-based Scalable Simulation Accelerator for Tile Architectures @HEART2011
An FPGA-based Scalable Simulation Accelerator for Tile Architectures @HEART2011Shinya Takamaeda-Y
 
SMT Verification of the POWER5 and POWER6 High-Performance Processors
SMT Verification of the POWER5 and POWER6 High-Performance ProcessorsSMT Verification of the POWER5 and POWER6 High-Performance Processors
SMT Verification of the POWER5 and POWER6 High-Performance ProcessorsDVClub
 
Unleash performance through parallelism - Intel® Math Kernel Library
Unleash performance through parallelism - Intel® Math Kernel LibraryUnleash performance through parallelism - Intel® Math Kernel Library
Unleash performance through parallelism - Intel® Math Kernel LibraryIntel IT Center
 
Opal Rt Giroux Scrpting In Emtp Works
Opal Rt Giroux Scrpting In Emtp WorksOpal Rt Giroux Scrpting In Emtp Works
Opal Rt Giroux Scrpting In Emtp Workscorinne rocherieux
 
Construction of sfiCAN: a star-based fault-injection infrastructure for the C...
Construction of sfiCAN: a star-based fault-injection infrastructure for the C...Construction of sfiCAN: a star-based fault-injection infrastructure for the C...
Construction of sfiCAN: a star-based fault-injection infrastructure for the C...balDYxan
 
Software Architecture For Condition Monitoring Of Mobile Underground
Software Architecture For Condition Monitoring Of Mobile UndergroundSoftware Architecture For Condition Monitoring Of Mobile Underground
Software Architecture For Condition Monitoring Of Mobile UndergroundJordan McBain
 
Introduction to plc (s7)­
Introduction to  plc (s7)­ Introduction to  plc (s7)­
Introduction to plc (s7)­ majitra
 

Similar to Model-checking AUTOSAR Basic Software Component (20)

A Systematic Approach to Creating Behavioral Models (CDNLive Slides)
A Systematic Approach to Creating Behavioral Models (CDNLive Slides)A Systematic Approach to Creating Behavioral Models (CDNLive Slides)
A Systematic Approach to Creating Behavioral Models (CDNLive Slides)
 
The Cortex-A15 Verification Story
The Cortex-A15 Verification StoryThe Cortex-A15 Verification Story
The Cortex-A15 Verification Story
 
Sharam salamian
Sharam salamianSharam salamian
Sharam salamian
 
Approaches for Power Management Verification of SOC
Approaches for Power Management Verification of SOC Approaches for Power Management Verification of SOC
Approaches for Power Management Verification of SOC
 
DFX Architecture for High-performance Multi-core Microprocessors
DFX Architecture for High-performance Multi-core MicroprocessorsDFX Architecture for High-performance Multi-core Microprocessors
DFX Architecture for High-performance Multi-core Microprocessors
 
Micro-controller course lec 01
Micro-controller course lec 01Micro-controller course lec 01
Micro-controller course lec 01
 
Development of can, pwm, adc and
Development of can, pwm, adc andDevelopment of can, pwm, adc and
Development of can, pwm, adc and
 
20110812 CyberTAN presentation
20110812 CyberTAN presentation20110812 CyberTAN presentation
20110812 CyberTAN presentation
 
Ximea - the pc camera, 90 gflps smart camera
Ximea  - the pc camera, 90 gflps smart cameraXimea  - the pc camera, 90 gflps smart camera
Ximea - the pc camera, 90 gflps smart camera
 
Bringing Engineering Analysis Codes Into Real-Time Full-Scope Simulators
Bringing Engineering Analysis Codes Into Real-Time Full-Scope SimulatorsBringing Engineering Analysis Codes Into Real-Time Full-Scope Simulators
Bringing Engineering Analysis Codes Into Real-Time Full-Scope Simulators
 
Efficient execution of quantized deep learning models a compiler approach
Efficient execution of quantized deep learning models a compiler approachEfficient execution of quantized deep learning models a compiler approach
Efficient execution of quantized deep learning models a compiler approach
 
An FPGA-based Scalable Simulation Accelerator for Tile Architectures @HEART2011
An FPGA-based Scalable Simulation Accelerator for Tile Architectures @HEART2011An FPGA-based Scalable Simulation Accelerator for Tile Architectures @HEART2011
An FPGA-based Scalable Simulation Accelerator for Tile Architectures @HEART2011
 
SMT Verification of the POWER5 and POWER6 High-Performance Processors
SMT Verification of the POWER5 and POWER6 High-Performance ProcessorsSMT Verification of the POWER5 and POWER6 High-Performance Processors
SMT Verification of the POWER5 and POWER6 High-Performance Processors
 
Unleash performance through parallelism - Intel® Math Kernel Library
Unleash performance through parallelism - Intel® Math Kernel LibraryUnleash performance through parallelism - Intel® Math Kernel Library
Unleash performance through parallelism - Intel® Math Kernel Library
 
Opal Rt Giroux Scrpting In Emtp Works
Opal Rt Giroux Scrpting In Emtp WorksOpal Rt Giroux Scrpting In Emtp Works
Opal Rt Giroux Scrpting In Emtp Works
 
Construction of sfiCAN: a star-based fault-injection infrastructure for the C...
Construction of sfiCAN: a star-based fault-injection infrastructure for the C...Construction of sfiCAN: a star-based fault-injection infrastructure for the C...
Construction of sfiCAN: a star-based fault-injection infrastructure for the C...
 
Shreeve dv club_ams
Shreeve dv club_amsShreeve dv club_ams
Shreeve dv club_ams
 
Software Architecture For Condition Monitoring Of Mobile Underground
Software Architecture For Condition Monitoring Of Mobile UndergroundSoftware Architecture For Condition Monitoring Of Mobile Underground
Software Architecture For Condition Monitoring Of Mobile Underground
 
Introduction to plc (s7)­
Introduction to  plc (s7)­ Introduction to  plc (s7)­
Introduction to plc (s7)­
 
computer architecture.
computer architecture.computer architecture.
computer architecture.
 

Recently uploaded

H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo DayH2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo DaySri Ambati
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piececharlottematthew16
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxLoriGlavin3
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfRankYa
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningLars Bell
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Manik S Magar
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionDilum Bandara
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsPixlogix Infotech
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 

Recently uploaded (20)

H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo DayH2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piece
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdf
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine Tuning
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An Introduction
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 

Model-checking AUTOSAR Basic Software Component

  • 1. Model-checking AUTOSAR Basic Software Component Masters thesis by Venkata Kalyan Ram Software Engineering and Management Department of Computer Science and Engineering
  • 2. Agenda • Introduction – Problem statement • Model-Checking – Modelling – Specification • AUTOSAR – CAN Network Management • Case-Study: Verification • Results & Reflections
  • 3. Introduction • Electronic Control Units (ECUs) are the basic blocks of many features of an automobile 3
  • 6. Introduction • ECUs are connected as a network of nodes • Networked ECUs forms a distributed and networked system 6
  • 7. Introduction Different bus types and/or networks like CAN, LIN, FlexRay, etc. • Each node may be a processor, a DSP, an FPGA, etc • Depending on the type of application, nodes may be units of individual chips, or small embedded computers 7
  • 8. Problem statement • Verifying the design of the software early during the development life cycle is considered highly essential • Testing can only show that a system is working as intended, whereas verification can show the correctness proof of a system • Thus it is the aim of this thesis to perform such verification on a model of a software module which is part of a broader framework called AUTOSAR 8
  • 9. Introduction – Problem statement • Model-Checking – Modelling – Specification • AUTOSAR – CAN Network Management • Case-Study: Verification • Results & Reflections
  • 10. Model-checking • A Formal Verification technique • Formal Verification “Mathematically proving the correctness of a design with respect to mathematical formal specification” • Introduced by Edmund M. Clarke & Joseph Sifakis • Given a model M and a specification P of a system, determine whether the specification P is satisfied on the model M. • This is written as ? M P 10
  • 11. Model-checking • Modeling – Finite state machines • Specification – Expressed with temporal aspects of the property – Temporal Aspects • Linear time • Discrete time • Branching time • Verification – Process of searching the state space of a model exhaustively to determine whether a specified property fails. 11
  • 12. Model-checking Model (Abstract of a system) Answer Yes  If Model satisfies Model the specification checker Counter Example  If Model doesn’t satisfy the specification Specification (System property) 12
  • 13. Model-checking PROMELA (PROcess MEta LAnguage) Answer Yes  If Model satisfies the specification SPIN Counter Example  If Model doesn’t satisfy the specification LTL (Linear Temporal Language) • SPIN – Simple PROMELA INterpreter • Developed in 1980 at Bell Labs by Gerard J. Holzmann 13
  • 14. Modeling • An example of an audio player – A finite state model of the audio player Stop Idle Playing Play Pause Stop Play Paused 14
  • 15. Modeling • PROMELA code of the model of the audio player 15
  • 16. Modeling • PROMELA code of the model of the audio player 16
  • 17. Modeling • PROMELA code of the model of the audio player 17
  • 18. Modeling • PROMELA code of the model of the audio player 18
  • 19. Specification • Common operators of Linear Temporal Logic G or □ – Globally or Always p F or ◊ – Finally or Eventually p 19
  • 20. Specification • Property to be verified – “Whenever the play button is pressed, it is guaranteed that the song will be played” • Expressed in LTL ((input == play) -> (CURRENT_STATE == PLAYING)) 20
  • 21. Introduction – Problem statement • Model-Checking – Modelling – Specification • AUTOSAR – CAN Network Management • Case-Study: Verification • Results & Reflections
  • 22. AUTOSAR • AUtomotive Open Software ARchitecture • Layered architecture Application layer AUTOSAR Runtime Environment (RTE) System services Memory Communication I/O Hardware Compl ex services services Abstraction drivers Onboard device Memory Communication hardware hardware abstraction abstraction abstraction Microcontroller Memory drivers Communication I/O Drivers devices drivers Microcontroller 22
  • 23. AUTOSAR • The communication services are the group of modules for vehicle network communication (CAN, LIN and FlexRay) • They are interfacing with communication drivers via the communication hardware abstraction 23
  • 24. AUTOSAR 24
  • 25. CAN Network Management • Decentralized network management strategy • Periodic NM-Message transmission via broadcast transmission • Two key-requirements are: – Every node shall transmit messages – If no messages are transmitted, every node shall make a transition to Sleep Mode 25
  • 27. CAN Network Management Network mode Ready Sleep State Repeat Message State Normal Operation Bus- Sleep Mode Prepare Bus- Sleep Mode 27
  • 28. Tx or Rx Network mode CAN Network Management NM_Timer NetRel & Ready Sleep Repeat_Message_Timer State NM_Timer Following are called by expiry expiry / Generic NM Wait_Bus Repeat RepeatReq _Sleep_Ti CanNm_NetworkRequest() Message mer State CanNm_NetworkRelease() start CanNm_RepeatMessageReq NetReq NetRel RepeatReq uest() NetReq & Following are called by Repeat_Message_Timer expiry NM_Timer CAN_IF CanNm_TxConfirmation() Normal Operation CanNm_RxIndication() Bus- Sleep Mode NetReq || Rx / The timers are NM_Timer start NM_Timer Wait_Bus_Sleep_Timer Rx Prepare Bus- Repeat_Message_Timer Sleep Mode Wait_Bus_Sleep_Timer 28
  • 29. Introduction – Problem statement • Model-Checking – Modelling – Specification • AUTOSAR – CAN Network Management • Case-Study: Verification • Results & Reflections
  • 30. Case-Study: Verification • Properties are drawn from the key requirements • 3 properties were verified – 2 are temporal in nature – 1 is an assertion • The temporal properties are – P1 – “CAN NM should enter Normal Operation state whenever network is requested” □(NetReq -> ◊ Normal_Operation) – P2 – “If the network is released, CAN NM shall be put to sleep mode” □(NetRel -> ◊ Bus_Sleep_Mode) • The assertion property is – P3 – “All the states specified for CAN NM are reachable” e.g. – assert(CURRENT_STATE == NORMAL_OPERATION) 30
  • 31. Introduction – Problem statement • Model-Checking – Modelling – Specification • AUTOSAR – CAN Network Management • Case-Study: Verification • Results & Reflections
  • 32. Results & Reflections • All the properties were satisfied on the model • By this study the characteristic non-determinism of CAN NM, has been made explicit • Abstraction played a key role while modeling CAN NM • Model-checking showed to be a good technique for detecting non-determinism and also building a good verification model 32
  • 33. References • AUTOSAR illustrations from www.autosar.org • Clarke, Edmund M. “Model Checking.” Foundations of Software Technology and Theoretical Computer Science, Lecture Notes in Computer Science. Vol. 1346. Springer Berlin/ Heidelberg, 1997. 54-56. • Temporal Logic Formulas Illustrations by Alessandro Artale, Free University of Bolzano • Parking assistance illustration from Valeo Service, The Netherlands 33

Editor's Notes

  1. DSP – Digital Signal ProcessorFPGA – Field programmable gate array