SlideShare une entreprise Scribd logo
1  sur  56
Télécharger pour lire hors ligne
A model based design flow for CANbased systems
Alexios Lekidis1, Marius Bozga1,
Didier Mauuary2, Saddek Bensalem1
1UJF-Grenoble 1 / CNRS-VERIMAG, 2Cyberio
14th international CAN Conference
Eurosites Republique, Paris (France)
November 12-13,2013
Lekidis, Bozga, Mauuary, Bensalem

A model-based design flow for CAN-based systems

1/35
Outline
1) Design challenges for CAN-based systems
2) Model-based design flow using BIP
•
•
•
•

BIP overview
CAN protocol model
Application software modeling
Construction of the system model

3) Application and experimental results
4) Conclusion and ongoing work

Lekidis, Bozga, Mauuary, Bensalem

A model-based design flow for CAN-based systems

2/35
Outline
1) Design challenges for CAN-based systems
2) Model-based design flow using BIP
•
•
•
•

BIP overview
CAN protocol model
Application software modeling
Construction of the system model

3) Application and experimental results
4) Conclusion and ongoing work

Lekidis, Bozga, Mauuary, Bensalem

A model-based design flow for CAN-based systems

2/35
CAN system example: automotive application
Engine
Control

Transmission
Control

Traction
Control

Gearbox
Control

Seat
Control

Suspension
Control

Environment
Control

Dashboard

Airbag
Control

Antilock
Breaks

Each unit in the
network
may incorporate
many subsystems
Lekidis, Bozga, Mauuary, Bensalem

Lights
Control

• Increased communication complexity
• System design becomes difficult

A model-based design flow for CAN-based systems

3/35
Emergence of higher layer protocols
• Organize and abstract low-level communication complexity
• Extend its usage to a wide range of applications including:
• Machine automation, medical devices, photovoltaic systems,
maritime electronics e.t.c.
CANopen

DeviceNet

J1939

CAN
Controller

CAN Bus

Lekidis, Bozga, Mauuary, Bensalem

A model-based design flow for CAN-based systems

4/35
Emergence of higher layer protocols
• Organize and abstract low-level communication complexity
• Extend its usage to a wide range of applications including:
• Machine automation, medical devices, photovoltaic systems,
maritime electronics e.t.c.
CANopen

DeviceNet

J1939

System integration
and validation is too
difficult

CAN
Controller

CAN Bus

Lekidis, Bozga, Mauuary, Bensalem

A model-based design flow for CAN-based systems

4/35
Emergence of higher layer protocols
• Organize and abstract low-level communication complexity
• Extend its usage to a wide range of applications including:
• Machine automation, medical devices, photovoltaic systems,
maritime electronics e.t.c.
CANopen

DeviceNet

CAN
Controller

CAN Bus

Lekidis, Bozga, Mauuary, Bensalem

J1939

System integration
and validation is too
difficult

Successful
design
remains a
challenge

A model-based design flow for CAN-based systems

4/35
Conformance testing
 Verifies the correct
implementation and
integration of the system
 Essential step towards
interoperability and
portability

Occurs late in the
development cycle
Requires the final
system implementation

 Potential design errors can lead to a new
implementation of the system
 Performance aspects are ignored during the design
process
Lekidis, Bozga, Mauuary, Bensalem

A model-based design flow for CAN-based systems

5/35
Solution: Model-based design
Formal approach expressing the behavior and functionality of embedded
systems
•
Validation and verification enabled at any stage
•
Formal models for the software and hardware allowing:
•
Separation of concerns
•
Modularity
•
Reusability

Lekidis, Bozga, Mauuary, Bensalem

A model-based design flow for CAN-based systems

6/35
Solution: Model-based design
Formal approach expressing the behavior and functionality of embedded
systems
•
Validation and verification enabled at any stage
•
Formal models for the software and hardware allowing:
•
Separation of concerns
•
Modularity
•
Reusability


Previous work is based on multilanguage frameworks, in order to provide
a design flow for automotive systems

Lekidis, Bozga, Mauuary, Bensalem

A model-based design flow for CAN-based systems

6/35
Solution: Model-based design
Formal approach expressing the behavior and functionality of embedded
systems
•
Validation and verification enabled at any stage
•
Formal models for the software and hardware allowing:
•
Separation of concerns
•
Modularity
•
Reusability


Previous work is based on multilanguage frameworks, in order to provide
a design flow for automotive systems

Semantically unrelated formalisms lead
to lack of continuity
Lekidis, Bozga, Mauuary, Bensalem

A model-based design flow for CAN-based systems

6/35
Solution: Model-based design
Formal approach expressing the behavior and functionality of embedded
systems
•
Validation and verification enabled at any stage
•
Formal models for the software and hardware allowing:
•
Separation of concerns
•
Modularity
•
Reusability


Previous work is based on multilanguage frameworks, in order to provide
a design flow for automotive systems

Semantically unrelated formalisms lead
to lack of continuity
Lekidis, Bozga, Mauuary, Bensalem

Rigorous design flow for
CAN-based systems:
•
Based on a single
semantic framework
•
Encapsulates the
protocol’s communication
mechanisms and
primitives
•
Incremental design using
composite components

A model-based design flow for CAN-based systems

6/35
Design flow

Lekidis, Bozga, Mauuary, Bensalem

A model-based design flow for CAN-based systems

7/35
Design flow
Component
reuse

Tools

Lekidis, Bozga, Mauuary, Bensalem

A model-based design flow for CAN-based systems

7/35
Design flow
Component
reuse

Tools

Verification of
safety properties

Lekidis, Bozga, Mauuary, Bensalem

Platform
dependent
skeleton
C/C++ code
A model-based design flow for CAN-based systems

7/35
Outline
1) Design challenges for CAN-based systems
2) Model-based design flow using BIP
•
•
•
•

BIP overview
CAN protocol model
Application software modeling
Construction of the system model

3) Application and experimental results
4) Conclusion and ongoing work

Lekidis, Bozga, Mauuary, Bensalem

A model-based design flow for CAN-based systems

8/35
BIP component framework
•

BIP (Behavior-Interaction-Priority) is a formal
language for the hierarchical construction of
composite components
Composition
glue

Priorities (conflict resolution)

Interactions (collaboration)

B

•

E

H

A

V

I

O

R

Atomic
components

Provides a rich set of tools for analysis and
performance evaluation

Lekidis, Bozga, Mauuary, Bensalem

A model-based design flow for CAN-based systems

9/35
BIP: Atomic components
 Finite state automata (Petri nets) extended with data and
functions described in C/C++
TICK
s:=0
t:=0

SEND
s

[s<100]
S_COM

RECV
r

SEND
s:=s+1

TICK
t:=t+1

TICK

S_COM

Lekidis, Bozga, Mauuary, Bensalem

r:=0
t:=0
R_COM

RECV
print(r)

TICK

TICK
t:=t+1

R_COM

A model-based design flow for CAN-based systems

10/35
BIP: Interactions
 Communication between components involving data
exchange

s:=0
t:=0

SEND
s

[s<100]
S_COM

r:=r+s

TICK
RECV
r

SEND
s:=s+1

TICK
t:=t+1

TICK

S_COM

Lekidis, Bozga, Mauuary, Bensalem

r:=0
t:=0
R_COM

RECV
print(r)

TICK

TICK
t:=t+1

R_COM

A model-based design flow for CAN-based systems

10/35
BIP: Interactions
 Communication between components involving data
exchange

s:=0
t:=0

SEND
s

[s<100]
S_COM

r:=r+s

TICK
RECV
r

SEND
s:=s+1

TICK
t:=t+1

TICK

S_COM

Lekidis, Bozga, Mauuary, Bensalem

r:=0
t:=0
R_COM

RECV
print(r)

TICK

TICK
t:=t+1

R_COM

A model-based design flow for CAN-based systems

10/35
BIP: Priorities
 Used among competing interactions
TICK<R_COM

s:=0
t:=0

SEND
s

[s<100]
S_COM

r:=r+s

TICK
RECV
r

SEND
s:=s+1

TICK
t:=t+1

TICK

S_COM

Lekidis, Bozga, Mauuary, Bensalem

r:=0
t:=0
R_COM

RECV
print(r)

TICK

TICK
t:=t+1

R_COM

A model-based design flow for CAN-based systems

10/35
The BIP toolset
Offers:
 Translators from
various languages
and models into
BIP
 Source-to-source
transformers
 Code generation
by dedicated
compilers
More information and
related material at:
http://bip-components.com
Lekidis, Bozga, Mauuary, Bensalem

A model-based design flow for CAN-based systems

11/35
Modeling the CAN protocol

Lekidis, Bozga, Mauuary, Bensalem

A model-based design flow for CAN-based systems

12/35
Main aspects of the CAN protocol model (1)
•
•
•
•

Represents the classic CAN protocol functionality [CAN
specification version 2.0]
Supports the Basic CAN interface [ISO 11898-1]
Is compliant with the High-Speed physical layer
standard [ISO 11898-2]
Does not consider transmission errors

Lekidis, Bozga, Mauuary, Bensalem

A model-based design flow for CAN-based systems

13/35
Main aspects of the CAN protocol model (1)
•
•
•
•

Represents the classic CAN protocol functionality [CAN
specification version 2.0]
Supports the Basic CAN interface [ISO 11898-1]
Is compliant with the High-Speed physical layer
standard [ISO 11898-2]
Does not consider transmission errors

Engine
Control

Airbag
Control

Traction
Control

Seat
Control

CAN Bus

Lekidis, Bozga, Mauuary, Bensalem

A model-based design flow for CAN-based systems

13/35
Main aspects of the CAN protocol model (1)
•
•
•
•

Represents the classic CAN protocol functionality [CAN
specification version 2.0]
Supports the Basic CAN interface [ISO 11898-1]
Is compliant with the High-Speed physical layer
standard [ISO 11898-2]
Does not consider transmission errors

Engine
Control

Airbag
Control

Traction
Control

Seat
Control

CAN Bus

Lekidis, Bozga, Mauuary, Bensalem

A model-based design flow for CAN-based systems

13/35
CAN protocol model
REQUEST

frame

RECV

frame

REQUEST

CAN station
SOF

ARBITRATION

CONTROL

SOF

DATA

frame

RECV

frame

CAN station
ACK

ARBITRATION

EOF

SOF

CONTROL

ARBITRATION

DATA

ACK

CONTROL

DATA

ACK

EOF

CAN bus

Lekidis, Bozga, Mauuary, Bensalem

A model-based design flow for CAN-based systems

14/35

EOF
Main aspects of the CAN protocol model (2)
Each CAN frame:
• Is one of the following types:
•
•

•

Data transmission (data frame)
Data request (remote frame)

Contains the following fields:
•
•
•
•
•

arb : frame identifier
rtr : Remote Transfer Request (RTR) bit
ide : Identifier Extension (IDE) bit
length : Length of data
payload : Frame data

Lekidis, Bozga, Mauuary, Bensalem

A model-based design flow for CAN-based systems

15/35
CAN station component
REQUEST

RECV

frame

frame

RECV

Controller

HANDLE

frame
arb

SOF

•

rtr

ide

ARBITRATION

length

DATA

Queuing policy is of type:
•
•

Filter

payload

CONTROL

frame

First-In-First-Out (FIFO)
High Priority First (HPF)

Lekidis, Bozga, Mauuary, Bensalem

ACK

EOF

•

Acceptance filters:
I.
II.

Receive every frame
from the Bus
Deliver it to the
application or ignore it

A model-based design flow for CAN-based systems

16/35
Controller component

Lekidis, Bozga, Mauuary, Bensalem

A model-based design flow for CAN-based systems

17/35
CAN bus component

Lekidis, Bozga, Mauuary, Bensalem

A model-based design flow for CAN-based systems

18/35
CAN bus component: Timing model
 Discrete time step advance
Transmission of
one bit (τ bit )
corresponds to
one tick

Lekidis, Bozga, Mauuary, Bensalem

A model-based design flow for CAN-based systems

18/35
CAN bus component: Timing model (2)


Used for the transmission of each frame field


Duration is indicated by a fixed number of ticks

 Overall frame transmission time is:
• C frame = [32 + g + (8 × length) + s ]τ bit , where:
•

•

g denotes the number of ticks spent in the arbitration phase
•
Equal to 12 for a standard frame
•
Equal to 32 for an extended frame
s denotes the number of additional ticks related to bit-stuffing

 The computation of the bit-stuffing for every frame can be:
• Fixed
• Stochastic
Lekidis, Bozga, Mauuary, Bensalem

A model-based design flow for CAN-based systems

19/35
CAN bus component: Timing model (3)
 The additional transmission time due to bit-stuffing is:
s 

, where:
•
= (23 + w + 8 × length − 1)
C stuffing
τ bit


•

w g −1
=
•
•

•

100 

Equal to 11 for a standard frame
Equal to 31 for an extended frame

s ∈ [1, 25] , where the upper bound indicates the worst

case

 The detailed frame transmission time is:

•

=
C total


s 

+ C stuffing  [32 + g + (8 × length) + s ] + (23 + w + 8 × length − 1)
=

C frame
100  τ bit




Lekidis, Bozga, Mauuary, Bensalem

A model-based design flow for CAN-based systems

20/35
Modeling the application software

Lekidis, Bozga, Mauuary, Bensalem

A model-based design flow for CAN-based systems

21/35
Modeling the application software
•
•

Every application consists of a number of Devices
Each Device generates a set of frames
•

Transmission is defined by the following attributes:
•
•
•

•

Currently provided by XML-based descriptions
•

•

Periodic, event-triggered or purely stochastic
With or without offsets
Abortable or non-abortable request

Compliance with NETCARBENCH [Navet et al., 2007]

Accordingly provided Device examples with focus
on the transmission part

Lekidis, Bozga, Mauuary, Bensalem

A model-based design flow for CAN-based systems

22/35
Device examples
ECU with periodic transmission

N periodic frames, where
periods are: P[i] , i=1,…,N

Lekidis, Bozga, Mauuary, Bensalem

ECU with stochastic transmission

N frames, with a transmission jitter
chosen by a given distribution and
periods: D[i] , i=1, .. N

A model-based design flow for CAN-based systems

23/35
Device examples
ECU with periodic transmission

N periodic frames, where
periods are: P[i] , i=1,…,N

Lekidis, Bozga, Mauuary, Bensalem

ECU with stochastic transmission

N frames, with a transmission jitter
chosen by a given distribution and
periods: D[i] , i=1, .. N

A model-based design flow for CAN-based systems

23/35
The CAN-based system model

Lekidis, Bozga, Mauuary, Bensalem

A model-based design flow for CAN-based systems

24/35
Constructing the system model
Device 1
REQUEST

RECV

Device 2
REQUEST

Lekidis, Bozga, Mauuary, Bensalem

RECV

Device 3
REQUEST

RECV

Device n
REQUEST

RECV

A model-based design flow for CAN-based systems

Application
model

25/35
Constructing the system model
Device 1
REQUEST

Device 2

RECV

REQUEST

REQUEST

RECV

RECV

Device 3
REQUEST

REQUEST

RECV

RECV

Device n
REQUEST

REQUEST

RECV

Application
model

RECV

CAN station 1

CAN station 2

CAN station n

COMM

COMM

COMM

CAN
protocol
model

COMM

CAN bus
Lekidis, Bozga, Mauuary, Bensalem

A model-based design flow for CAN-based systems

25/35
Constructing the system model
Device 1
REQUEST

Device 2

RECV

REQUEST

REQUEST

RECV

RECV

Device 3
REQUEST

REQUEST

RECV

RECV

Device n
REQUEST

REQUEST

RECV

Application
model

RECV

CAN station 1

CAN station 2

CAN station n

COMM

COMM

COMM

CAN
protocol
model

COMM

CAN bus
Lekidis, Bozga, Mauuary, Bensalem

A model-based design flow for CAN-based systems

25/35
Outline
1) Design challenges for CAN-based systems
2) Model-based design flow using BIP
•
•
•
•

BIP overview
CAN protocol model
Application software modeling
Construction of the system model

3) Application and experimental results
4) Conclusion and ongoing work

Lekidis, Bozga, Mauuary, Bensalem

A model-based design flow for CAN-based systems

26/35
Deterministic powertrain network
Case study using the BIP design flow, where:
• The application software consists of:
•
•

5 Devices
30 periodic frames with associated:
•

•
•
•

•
•

CAN identifier, period and payload

HPF queuing policy in every Device
Fixed 10% bit-stuffing for all the frames
No transmission offsets

The Bus has a bit-rate of 500 kbit/s
Load equally distributed among the Devices

Lekidis, Bozga, Mauuary, Bensalem

A model-based design flow for CAN-based systems

27/35
Experiments
The generated system model contains:
•
•
•
•

20 atomic components
60 connectors
255 transitions
1250 lines of BIP code

Lekidis, Bozga, Mauuary, Bensalem

A model-based design flow for CAN-based systems

28/35
Results: Response times

•

Lekidis, Bozga, Mauuary, Bensalem

1 hour of real system
time was simulated in
5 minutes and 30
seconds

A model-based design flow for CAN-based systems

29/35
Results: Response times

•

•

1 hour of real system
time was simulated in
5 minutes and 30
seconds

The same results can be obtained using RTaWSim [RealTime-at-Work]
•

Much shorter simulation time (13.5 seconds)

Lekidis, Bozga, Mauuary, Bensalem

A model-based design flow for CAN-based systems

29/35
Stochastic powertrain network
•

Extension to the previous case study:
I.
II.

Probabilistic margin (jitter) for every period
Stochastic bit-stuffing

Lekidis, Bozga, Mauuary, Bensalem

A model-based design flow for CAN-based systems

30/35
Stochastic powertrain network
•

Extension to the previous case study:
I.
II.

Probabilistic margin (jitter) for every period
Stochastic bit-stuffing

Lekidis, Bozga, Mauuary, Bensalem

A model-based design flow for CAN-based systems

30/35
Stochastic powertrain network
•

Extension to the previous case study:
I.
II.

Probabilistic margin (jitter) for every period
Stochastic bit-stuffing

Lekidis, Bozga, Mauuary, Bensalem

A model-based design flow for CAN-based systems

30/35
Stochastic powertrain network
•

Extension to the previous case study:
I.
II.

•

Probabilistic margin (jitter) for every period
Stochastic bit-stuffing

This analysis cannot be performed with RTaW-Sim

Lekidis, Bozga, Mauuary, Bensalem

A model-based design flow for CAN-based systems

30/35
Outline
1) Design challenges for CAN-based systems
2) Model-based design flow using BIP
•
•
•
•

BIP overview
CAN protocol model
Application software modeling
Construction of the system model

3) Application and experimental results
4) Conclusion and ongoing work

Lekidis, Bozga, Mauuary, Bensalem

A model-based design flow for CAN-based systems

31/35
Summary
Proposed method: Rigorous design flow resolving
effectively the current challenges in CAN-based systems
•
•
•
•

Encapsulates the primitives and communication
mechanisms of the CAN protocol
Separates software and hardware design issues
Fully automated and tool-supported
Leads to the construction of a mixed hardware and software
system model used for:
•
•
•

•

Performance analysis
Verification of functional and extra-functional properties
Code generation

Conducted experiments on existing benchmarks
illustrate the capabilities and the method’s scalability

Lekidis, Bozga, Mauuary, Bensalem

A model-based design flow for CAN-based systems

32/35
Ongoing work
•

CAN protocol model
•
•

•

Selection of the most appropriate distribution for the
bit-stuffing and the period margin
Design flow for CAN FD-based systems

Considered application software
•

MATLAB/Simulink to BIP translation

•

Further extensions

•

Analysis and verification of properties using the
Statistical Model Checking BIP tool
Generation of optimal device configurations
Validation of CAN-higher layer protocols, such as
CANopen

•
•

Lekidis, Bozga, Mauuary, Bensalem

A model-based design flow for CAN-based systems

33/35
Extensions related to the CAN FD protocol
Applied only in the CAN protocol model
•

Additional frame fields:
• Flexible Data Format (FDF) bit
•

•

If recessive, RTR bit becomes automatically disabled

• Bit Rate Switch (BRS) bit
Timing model:
• Transmission of one bit will be shorter than one tick (τ bit )
• Switch factor related to the selection of CAN hardware
components
• The additional transmission time due to bit-stuffing in
CAN FD is:

  7 + w + 8 × length 

= 
+ 4 τ bit
C stuffing  

s


Lekidis, Bozga, Mauuary, Bensalem

A model-based design flow for CAN-based systems

34/35
Thank you for your attention.

Further details: alexios.lekidis@imag.fr

Lekidis, Bozga, Mauuary, Bensalem

A model-based design flow for CAN-based systems

35/35

Contenu connexe

Tendances

Controller area network protocol
Controller area network protocolController area network protocol
Controller area network protocolSneha Nalla
 
D1 b ducati slide rev03_eng
D1 b ducati slide rev03_engD1 b ducati slide rev03_eng
D1 b ducati slide rev03_engKurt von Ahnen
 
Controller area network -ppt
Controller area network -pptController area network -ppt
Controller area network -pptvelichetiphani
 
Can protocol implementation for data communication (2)
Can protocol implementation for data communication (2)Can protocol implementation for data communication (2)
Can protocol implementation for data communication (2)karuna418
 
CAN (Controller Area Network) Bus Protocol
CAN (Controller Area Network) Bus ProtocolCAN (Controller Area Network) Bus Protocol
CAN (Controller Area Network) Bus ProtocolAbhinaw Tiwari
 
Controller area network (can bus)
Controller area network (can bus)Controller area network (can bus)
Controller area network (can bus)nassim unused
 
Control Area Network (CAN) based accident avoidance system
Control Area Network (CAN) based accident avoidance systemControl Area Network (CAN) based accident avoidance system
Control Area Network (CAN) based accident avoidance systemNitin Jagtap
 
Automotive bus technologies
Automotive bus technologiesAutomotive bus technologies
Automotive bus technologiesRadwa Tarek
 
Controller area network (CAN bus) ppt
Controller area network (CAN bus) pptController area network (CAN bus) ppt
Controller area network (CAN bus) pptRaziuddin Khazi
 
Accident avoidanve using controller area network protocol
Accident avoidanve using controller area network protocolAccident avoidanve using controller area network protocol
Accident avoidanve using controller area network protocolMadhuri Apar
 

Tendances (20)

Controller area network protocol
Controller area network protocolController area network protocol
Controller area network protocol
 
Canbus presentation
Canbus presentationCanbus presentation
Canbus presentation
 
D1 b ducati slide rev03_eng
D1 b ducati slide rev03_engD1 b ducati slide rev03_eng
D1 b ducati slide rev03_eng
 
CAN- controlled area network
CAN- controlled area networkCAN- controlled area network
CAN- controlled area network
 
Can Bus communication Protocol
Can Bus communication ProtocolCan Bus communication Protocol
Can Bus communication Protocol
 
Controller area network -ppt
Controller area network -pptController area network -ppt
Controller area network -ppt
 
Can protocol implementation for data communication (2)
Can protocol implementation for data communication (2)Can protocol implementation for data communication (2)
Can protocol implementation for data communication (2)
 
Canbus
CanbusCanbus
Canbus
 
CAN (Controller Area Network) Bus Protocol
CAN (Controller Area Network) Bus ProtocolCAN (Controller Area Network) Bus Protocol
CAN (Controller Area Network) Bus Protocol
 
Controller area network (can bus)
Controller area network (can bus)Controller area network (can bus)
Controller area network (can bus)
 
Control Area Network (CAN) based accident avoidance system
Control Area Network (CAN) based accident avoidance systemControl Area Network (CAN) based accident avoidance system
Control Area Network (CAN) based accident avoidance system
 
Automotive bus technologies
Automotive bus technologiesAutomotive bus technologies
Automotive bus technologies
 
Controller area network (CAN bus) ppt
Controller area network (CAN bus) pptController area network (CAN bus) ppt
Controller area network (CAN bus) ppt
 
Ca npp t
Ca npp tCa npp t
Ca npp t
 
CAN F28x
CAN F28xCAN F28x
CAN F28x
 
Can overview
Can overviewCan overview
Can overview
 
Can Protocol For Automobiles
Can Protocol For AutomobilesCan Protocol For Automobiles
Can Protocol For Automobiles
 
Role of CAN BUS in automotives
Role of CAN BUS in automotivesRole of CAN BUS in automotives
Role of CAN BUS in automotives
 
Accident avoidanve using controller area network protocol
Accident avoidanve using controller area network protocolAccident avoidanve using controller area network protocol
Accident avoidanve using controller area network protocol
 
Technical Ethernet
Technical EthernetTechnical Ethernet
Technical Ethernet
 

Similaire à Design flow for Controller Area Network systems

Model-based development of CANopen systems
Model-based development of CANopen systemsModel-based development of CANopen systems
Model-based development of CANopen systemsAlexios Lekidis
 
Tool-Driven Technology Transfer in Software Engineering
Tool-Driven Technology Transfer in Software EngineeringTool-Driven Technology Transfer in Software Engineering
Tool-Driven Technology Transfer in Software EngineeringHeiko Koziolek
 
Emerging standards and support organizations within engineering simulation
Emerging standards and support organizations within engineering simulation Emerging standards and support organizations within engineering simulation
Emerging standards and support organizations within engineering simulation Modelon
 
Incremental Queries and Transformations for Engineering Critical Systems
Incremental Queries and Transformations for Engineering Critical SystemsIncremental Queries and Transformations for Engineering Critical Systems
Incremental Queries and Transformations for Engineering Critical SystemsÁkos Horváth
 
Capella Days 2021 | An example of model-centric engineering environment with ...
Capella Days 2021 | An example of model-centric engineering environment with ...Capella Days 2021 | An example of model-centric engineering environment with ...
Capella Days 2021 | An example of model-centric engineering environment with ...Obeo
 
Making Model-Driven Verification Practical and Scalable: Experiences and Less...
Making Model-Driven Verification Practical and Scalable: Experiences and Less...Making Model-Driven Verification Practical and Scalable: Experiences and Less...
Making Model-Driven Verification Practical and Scalable: Experiences and Less...Lionel Briand
 
Hardware-Software allocation specification of IMA systems for early simulation
Hardware-Software allocation specification of IMA systems for early simulationHardware-Software allocation specification of IMA systems for early simulation
Hardware-Software allocation specification of IMA systems for early simulationÁkos Horváth
 
Building product suggestions for a BIM model based on rule sets and a semant...
Building product suggestions for a BIM model based on rule sets and a  semant...Building product suggestions for a BIM model based on rule sets and a  semant...
Building product suggestions for a BIM model based on rule sets and a semant...Gonçal Costa Jutglar
 
Incquery Suite Models 2020 Conference by István Ráth, CEO of IncQuery Labs
Incquery Suite Models 2020 Conference by István Ráth, CEO of IncQuery LabsIncquery Suite Models 2020 Conference by István Ráth, CEO of IncQuery Labs
Incquery Suite Models 2020 Conference by István Ráth, CEO of IncQuery LabsIncQuery Labs
 
Modelon Modelica executable requirements Ansys Conference 2016
Modelon Modelica executable requirements Ansys Conference 2016Modelon Modelica executable requirements Ansys Conference 2016
Modelon Modelica executable requirements Ansys Conference 2016Modelon
 
Utilisation de la plateforme virtuelle QEMU/SystemC pour l'IoT
Utilisation de la plateforme virtuelle QEMU/SystemC pour l'IoTUtilisation de la plateforme virtuelle QEMU/SystemC pour l'IoT
Utilisation de la plateforme virtuelle QEMU/SystemC pour l'IoTPôle Systematic Paris-Region
 
COSMOS: DevOps for Complex Cyber-physical Systems
COSMOS: DevOps for Complex Cyber-physical SystemsCOSMOS: DevOps for Complex Cyber-physical Systems
COSMOS: DevOps for Complex Cyber-physical SystemsSebastiano Panichella
 
Introduction to TTCN-3 and AUTOSAR Conformance Testing
Introduction to TTCN-3 and AUTOSAR Conformance TestingIntroduction to TTCN-3 and AUTOSAR Conformance Testing
Introduction to TTCN-3 and AUTOSAR Conformance TestingOak Systems
 
An Integrated Simulation Tool Framework for Process Data Management
An Integrated Simulation Tool Framework for Process Data ManagementAn Integrated Simulation Tool Framework for Process Data Management
An Integrated Simulation Tool Framework for Process Data ManagementCognizant
 
Principles of Reproducible Workflows (U-DAWS) nfcamp2019
Principles of Reproducible Workflows (U-DAWS) nfcamp2019Principles of Reproducible Workflows (U-DAWS) nfcamp2019
Principles of Reproducible Workflows (U-DAWS) nfcamp2019Venkat Malladi
 
IEEE Buenaventura cs Chapter March 9 2016 v4
IEEE Buenaventura cs Chapter March 9 2016  v4IEEE Buenaventura cs Chapter March 9 2016  v4
IEEE Buenaventura cs Chapter March 9 2016 v4Sailaja Tennati
 

Similaire à Design flow for Controller Area Network systems (20)

Sip@iPLM 2016
Sip@iPLM 2016 Sip@iPLM 2016
Sip@iPLM 2016
 
Model-based development of CANopen systems
Model-based development of CANopen systemsModel-based development of CANopen systems
Model-based development of CANopen systems
 
Tool-Driven Technology Transfer in Software Engineering
Tool-Driven Technology Transfer in Software EngineeringTool-Driven Technology Transfer in Software Engineering
Tool-Driven Technology Transfer in Software Engineering
 
Thesis presentation
Thesis presentationThesis presentation
Thesis presentation
 
Emerging standards and support organizations within engineering simulation
Emerging standards and support organizations within engineering simulation Emerging standards and support organizations within engineering simulation
Emerging standards and support organizations within engineering simulation
 
Incremental Queries and Transformations for Engineering Critical Systems
Incremental Queries and Transformations for Engineering Critical SystemsIncremental Queries and Transformations for Engineering Critical Systems
Incremental Queries and Transformations for Engineering Critical Systems
 
Capella Days 2021 | An example of model-centric engineering environment with ...
Capella Days 2021 | An example of model-centric engineering environment with ...Capella Days 2021 | An example of model-centric engineering environment with ...
Capella Days 2021 | An example of model-centric engineering environment with ...
 
Making Model-Driven Verification Practical and Scalable: Experiences and Less...
Making Model-Driven Verification Practical and Scalable: Experiences and Less...Making Model-Driven Verification Practical and Scalable: Experiences and Less...
Making Model-Driven Verification Practical and Scalable: Experiences and Less...
 
Hardware-Software allocation specification of IMA systems for early simulation
Hardware-Software allocation specification of IMA systems for early simulationHardware-Software allocation specification of IMA systems for early simulation
Hardware-Software allocation specification of IMA systems for early simulation
 
Bip Design Flow
Bip Design FlowBip Design Flow
Bip Design Flow
 
Microservices.pdf
Microservices.pdfMicroservices.pdf
Microservices.pdf
 
Building product suggestions for a BIM model based on rule sets and a semant...
Building product suggestions for a BIM model based on rule sets and a  semant...Building product suggestions for a BIM model based on rule sets and a  semant...
Building product suggestions for a BIM model based on rule sets and a semant...
 
Incquery Suite Models 2020 Conference by István Ráth, CEO of IncQuery Labs
Incquery Suite Models 2020 Conference by István Ráth, CEO of IncQuery LabsIncquery Suite Models 2020 Conference by István Ráth, CEO of IncQuery Labs
Incquery Suite Models 2020 Conference by István Ráth, CEO of IncQuery Labs
 
Modelon Modelica executable requirements Ansys Conference 2016
Modelon Modelica executable requirements Ansys Conference 2016Modelon Modelica executable requirements Ansys Conference 2016
Modelon Modelica executable requirements Ansys Conference 2016
 
Utilisation de la plateforme virtuelle QEMU/SystemC pour l'IoT
Utilisation de la plateforme virtuelle QEMU/SystemC pour l'IoTUtilisation de la plateforme virtuelle QEMU/SystemC pour l'IoT
Utilisation de la plateforme virtuelle QEMU/SystemC pour l'IoT
 
COSMOS: DevOps for Complex Cyber-physical Systems
COSMOS: DevOps for Complex Cyber-physical SystemsCOSMOS: DevOps for Complex Cyber-physical Systems
COSMOS: DevOps for Complex Cyber-physical Systems
 
Introduction to TTCN-3 and AUTOSAR Conformance Testing
Introduction to TTCN-3 and AUTOSAR Conformance TestingIntroduction to TTCN-3 and AUTOSAR Conformance Testing
Introduction to TTCN-3 and AUTOSAR Conformance Testing
 
An Integrated Simulation Tool Framework for Process Data Management
An Integrated Simulation Tool Framework for Process Data ManagementAn Integrated Simulation Tool Framework for Process Data Management
An Integrated Simulation Tool Framework for Process Data Management
 
Principles of Reproducible Workflows (U-DAWS) nfcamp2019
Principles of Reproducible Workflows (U-DAWS) nfcamp2019Principles of Reproducible Workflows (U-DAWS) nfcamp2019
Principles of Reproducible Workflows (U-DAWS) nfcamp2019
 
IEEE Buenaventura cs Chapter March 9 2016 v4
IEEE Buenaventura cs Chapter March 9 2016  v4IEEE Buenaventura cs Chapter March 9 2016  v4
IEEE Buenaventura cs Chapter March 9 2016 v4
 

Dernier

Training state-of-the-art general text embedding
Training state-of-the-art general text embeddingTraining state-of-the-art general text embedding
Training state-of-the-art general text embeddingZilliz
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
Sample pptx for embedding into website for demo
Sample pptx for embedding into website for demoSample pptx for embedding into website for demo
Sample pptx for embedding into website for demoHarshalMandlekar2
 
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersNicole Novielli
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .Alan Dix
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxLoriGlavin3
 
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
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionDilum Bandara
 
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
 
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
 
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
 
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
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxLoriGlavin3
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 

Dernier (20)

Training state-of-the-art general text embedding
Training state-of-the-art general text embeddingTraining state-of-the-art general text embedding
Training state-of-the-art general text embedding
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
Sample pptx for embedding into website for demo
Sample pptx for embedding into website for demoSample pptx for embedding into website for demo
Sample pptx for embedding into website for demo
 
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software Developers
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
 
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
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An Introduction
 
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
 
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
 
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
 
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
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 

Design flow for Controller Area Network systems

  • 1. A model based design flow for CANbased systems Alexios Lekidis1, Marius Bozga1, Didier Mauuary2, Saddek Bensalem1 1UJF-Grenoble 1 / CNRS-VERIMAG, 2Cyberio 14th international CAN Conference Eurosites Republique, Paris (France) November 12-13,2013 Lekidis, Bozga, Mauuary, Bensalem A model-based design flow for CAN-based systems 1/35
  • 2. Outline 1) Design challenges for CAN-based systems 2) Model-based design flow using BIP • • • • BIP overview CAN protocol model Application software modeling Construction of the system model 3) Application and experimental results 4) Conclusion and ongoing work Lekidis, Bozga, Mauuary, Bensalem A model-based design flow for CAN-based systems 2/35
  • 3. Outline 1) Design challenges for CAN-based systems 2) Model-based design flow using BIP • • • • BIP overview CAN protocol model Application software modeling Construction of the system model 3) Application and experimental results 4) Conclusion and ongoing work Lekidis, Bozga, Mauuary, Bensalem A model-based design flow for CAN-based systems 2/35
  • 4. CAN system example: automotive application Engine Control Transmission Control Traction Control Gearbox Control Seat Control Suspension Control Environment Control Dashboard Airbag Control Antilock Breaks Each unit in the network may incorporate many subsystems Lekidis, Bozga, Mauuary, Bensalem Lights Control • Increased communication complexity • System design becomes difficult A model-based design flow for CAN-based systems 3/35
  • 5. Emergence of higher layer protocols • Organize and abstract low-level communication complexity • Extend its usage to a wide range of applications including: • Machine automation, medical devices, photovoltaic systems, maritime electronics e.t.c. CANopen DeviceNet J1939 CAN Controller CAN Bus Lekidis, Bozga, Mauuary, Bensalem A model-based design flow for CAN-based systems 4/35
  • 6. Emergence of higher layer protocols • Organize and abstract low-level communication complexity • Extend its usage to a wide range of applications including: • Machine automation, medical devices, photovoltaic systems, maritime electronics e.t.c. CANopen DeviceNet J1939 System integration and validation is too difficult CAN Controller CAN Bus Lekidis, Bozga, Mauuary, Bensalem A model-based design flow for CAN-based systems 4/35
  • 7. Emergence of higher layer protocols • Organize and abstract low-level communication complexity • Extend its usage to a wide range of applications including: • Machine automation, medical devices, photovoltaic systems, maritime electronics e.t.c. CANopen DeviceNet CAN Controller CAN Bus Lekidis, Bozga, Mauuary, Bensalem J1939 System integration and validation is too difficult Successful design remains a challenge A model-based design flow for CAN-based systems 4/35
  • 8. Conformance testing  Verifies the correct implementation and integration of the system  Essential step towards interoperability and portability Occurs late in the development cycle Requires the final system implementation  Potential design errors can lead to a new implementation of the system  Performance aspects are ignored during the design process Lekidis, Bozga, Mauuary, Bensalem A model-based design flow for CAN-based systems 5/35
  • 9. Solution: Model-based design Formal approach expressing the behavior and functionality of embedded systems • Validation and verification enabled at any stage • Formal models for the software and hardware allowing: • Separation of concerns • Modularity • Reusability Lekidis, Bozga, Mauuary, Bensalem A model-based design flow for CAN-based systems 6/35
  • 10. Solution: Model-based design Formal approach expressing the behavior and functionality of embedded systems • Validation and verification enabled at any stage • Formal models for the software and hardware allowing: • Separation of concerns • Modularity • Reusability  Previous work is based on multilanguage frameworks, in order to provide a design flow for automotive systems Lekidis, Bozga, Mauuary, Bensalem A model-based design flow for CAN-based systems 6/35
  • 11. Solution: Model-based design Formal approach expressing the behavior and functionality of embedded systems • Validation and verification enabled at any stage • Formal models for the software and hardware allowing: • Separation of concerns • Modularity • Reusability  Previous work is based on multilanguage frameworks, in order to provide a design flow for automotive systems Semantically unrelated formalisms lead to lack of continuity Lekidis, Bozga, Mauuary, Bensalem A model-based design flow for CAN-based systems 6/35
  • 12. Solution: Model-based design Formal approach expressing the behavior and functionality of embedded systems • Validation and verification enabled at any stage • Formal models for the software and hardware allowing: • Separation of concerns • Modularity • Reusability  Previous work is based on multilanguage frameworks, in order to provide a design flow for automotive systems Semantically unrelated formalisms lead to lack of continuity Lekidis, Bozga, Mauuary, Bensalem Rigorous design flow for CAN-based systems: • Based on a single semantic framework • Encapsulates the protocol’s communication mechanisms and primitives • Incremental design using composite components A model-based design flow for CAN-based systems 6/35
  • 13. Design flow Lekidis, Bozga, Mauuary, Bensalem A model-based design flow for CAN-based systems 7/35
  • 14. Design flow Component reuse Tools Lekidis, Bozga, Mauuary, Bensalem A model-based design flow for CAN-based systems 7/35
  • 15. Design flow Component reuse Tools Verification of safety properties Lekidis, Bozga, Mauuary, Bensalem Platform dependent skeleton C/C++ code A model-based design flow for CAN-based systems 7/35
  • 16. Outline 1) Design challenges for CAN-based systems 2) Model-based design flow using BIP • • • • BIP overview CAN protocol model Application software modeling Construction of the system model 3) Application and experimental results 4) Conclusion and ongoing work Lekidis, Bozga, Mauuary, Bensalem A model-based design flow for CAN-based systems 8/35
  • 17. BIP component framework • BIP (Behavior-Interaction-Priority) is a formal language for the hierarchical construction of composite components Composition glue Priorities (conflict resolution) Interactions (collaboration) B • E H A V I O R Atomic components Provides a rich set of tools for analysis and performance evaluation Lekidis, Bozga, Mauuary, Bensalem A model-based design flow for CAN-based systems 9/35
  • 18. BIP: Atomic components  Finite state automata (Petri nets) extended with data and functions described in C/C++ TICK s:=0 t:=0 SEND s [s<100] S_COM RECV r SEND s:=s+1 TICK t:=t+1 TICK S_COM Lekidis, Bozga, Mauuary, Bensalem r:=0 t:=0 R_COM RECV print(r) TICK TICK t:=t+1 R_COM A model-based design flow for CAN-based systems 10/35
  • 19. BIP: Interactions  Communication between components involving data exchange s:=0 t:=0 SEND s [s<100] S_COM r:=r+s TICK RECV r SEND s:=s+1 TICK t:=t+1 TICK S_COM Lekidis, Bozga, Mauuary, Bensalem r:=0 t:=0 R_COM RECV print(r) TICK TICK t:=t+1 R_COM A model-based design flow for CAN-based systems 10/35
  • 20. BIP: Interactions  Communication between components involving data exchange s:=0 t:=0 SEND s [s<100] S_COM r:=r+s TICK RECV r SEND s:=s+1 TICK t:=t+1 TICK S_COM Lekidis, Bozga, Mauuary, Bensalem r:=0 t:=0 R_COM RECV print(r) TICK TICK t:=t+1 R_COM A model-based design flow for CAN-based systems 10/35
  • 21. BIP: Priorities  Used among competing interactions TICK<R_COM s:=0 t:=0 SEND s [s<100] S_COM r:=r+s TICK RECV r SEND s:=s+1 TICK t:=t+1 TICK S_COM Lekidis, Bozga, Mauuary, Bensalem r:=0 t:=0 R_COM RECV print(r) TICK TICK t:=t+1 R_COM A model-based design flow for CAN-based systems 10/35
  • 22. The BIP toolset Offers:  Translators from various languages and models into BIP  Source-to-source transformers  Code generation by dedicated compilers More information and related material at: http://bip-components.com Lekidis, Bozga, Mauuary, Bensalem A model-based design flow for CAN-based systems 11/35
  • 23. Modeling the CAN protocol Lekidis, Bozga, Mauuary, Bensalem A model-based design flow for CAN-based systems 12/35
  • 24. Main aspects of the CAN protocol model (1) • • • • Represents the classic CAN protocol functionality [CAN specification version 2.0] Supports the Basic CAN interface [ISO 11898-1] Is compliant with the High-Speed physical layer standard [ISO 11898-2] Does not consider transmission errors Lekidis, Bozga, Mauuary, Bensalem A model-based design flow for CAN-based systems 13/35
  • 25. Main aspects of the CAN protocol model (1) • • • • Represents the classic CAN protocol functionality [CAN specification version 2.0] Supports the Basic CAN interface [ISO 11898-1] Is compliant with the High-Speed physical layer standard [ISO 11898-2] Does not consider transmission errors Engine Control Airbag Control Traction Control Seat Control CAN Bus Lekidis, Bozga, Mauuary, Bensalem A model-based design flow for CAN-based systems 13/35
  • 26. Main aspects of the CAN protocol model (1) • • • • Represents the classic CAN protocol functionality [CAN specification version 2.0] Supports the Basic CAN interface [ISO 11898-1] Is compliant with the High-Speed physical layer standard [ISO 11898-2] Does not consider transmission errors Engine Control Airbag Control Traction Control Seat Control CAN Bus Lekidis, Bozga, Mauuary, Bensalem A model-based design flow for CAN-based systems 13/35
  • 27. CAN protocol model REQUEST frame RECV frame REQUEST CAN station SOF ARBITRATION CONTROL SOF DATA frame RECV frame CAN station ACK ARBITRATION EOF SOF CONTROL ARBITRATION DATA ACK CONTROL DATA ACK EOF CAN bus Lekidis, Bozga, Mauuary, Bensalem A model-based design flow for CAN-based systems 14/35 EOF
  • 28. Main aspects of the CAN protocol model (2) Each CAN frame: • Is one of the following types: • • • Data transmission (data frame) Data request (remote frame) Contains the following fields: • • • • • arb : frame identifier rtr : Remote Transfer Request (RTR) bit ide : Identifier Extension (IDE) bit length : Length of data payload : Frame data Lekidis, Bozga, Mauuary, Bensalem A model-based design flow for CAN-based systems 15/35
  • 29. CAN station component REQUEST RECV frame frame RECV Controller HANDLE frame arb SOF • rtr ide ARBITRATION length DATA Queuing policy is of type: • • Filter payload CONTROL frame First-In-First-Out (FIFO) High Priority First (HPF) Lekidis, Bozga, Mauuary, Bensalem ACK EOF • Acceptance filters: I. II. Receive every frame from the Bus Deliver it to the application or ignore it A model-based design flow for CAN-based systems 16/35
  • 30. Controller component Lekidis, Bozga, Mauuary, Bensalem A model-based design flow for CAN-based systems 17/35
  • 31. CAN bus component Lekidis, Bozga, Mauuary, Bensalem A model-based design flow for CAN-based systems 18/35
  • 32. CAN bus component: Timing model  Discrete time step advance Transmission of one bit (τ bit ) corresponds to one tick Lekidis, Bozga, Mauuary, Bensalem A model-based design flow for CAN-based systems 18/35
  • 33. CAN bus component: Timing model (2)  Used for the transmission of each frame field  Duration is indicated by a fixed number of ticks  Overall frame transmission time is: • C frame = [32 + g + (8 × length) + s ]τ bit , where: • • g denotes the number of ticks spent in the arbitration phase • Equal to 12 for a standard frame • Equal to 32 for an extended frame s denotes the number of additional ticks related to bit-stuffing  The computation of the bit-stuffing for every frame can be: • Fixed • Stochastic Lekidis, Bozga, Mauuary, Bensalem A model-based design flow for CAN-based systems 19/35
  • 34. CAN bus component: Timing model (3)  The additional transmission time due to bit-stuffing is: s   , where: • = (23 + w + 8 × length − 1) C stuffing τ bit  • w g −1 = • • • 100  Equal to 11 for a standard frame Equal to 31 for an extended frame s ∈ [1, 25] , where the upper bound indicates the worst case  The detailed frame transmission time is: • = C total  s   + C stuffing  [32 + g + (8 × length) + s ] + (23 + w + 8 × length − 1) =  C frame 100  τ bit    Lekidis, Bozga, Mauuary, Bensalem A model-based design flow for CAN-based systems 20/35
  • 35. Modeling the application software Lekidis, Bozga, Mauuary, Bensalem A model-based design flow for CAN-based systems 21/35
  • 36. Modeling the application software • • Every application consists of a number of Devices Each Device generates a set of frames • Transmission is defined by the following attributes: • • • • Currently provided by XML-based descriptions • • Periodic, event-triggered or purely stochastic With or without offsets Abortable or non-abortable request Compliance with NETCARBENCH [Navet et al., 2007] Accordingly provided Device examples with focus on the transmission part Lekidis, Bozga, Mauuary, Bensalem A model-based design flow for CAN-based systems 22/35
  • 37. Device examples ECU with periodic transmission N periodic frames, where periods are: P[i] , i=1,…,N Lekidis, Bozga, Mauuary, Bensalem ECU with stochastic transmission N frames, with a transmission jitter chosen by a given distribution and periods: D[i] , i=1, .. N A model-based design flow for CAN-based systems 23/35
  • 38. Device examples ECU with periodic transmission N periodic frames, where periods are: P[i] , i=1,…,N Lekidis, Bozga, Mauuary, Bensalem ECU with stochastic transmission N frames, with a transmission jitter chosen by a given distribution and periods: D[i] , i=1, .. N A model-based design flow for CAN-based systems 23/35
  • 39. The CAN-based system model Lekidis, Bozga, Mauuary, Bensalem A model-based design flow for CAN-based systems 24/35
  • 40. Constructing the system model Device 1 REQUEST RECV Device 2 REQUEST Lekidis, Bozga, Mauuary, Bensalem RECV Device 3 REQUEST RECV Device n REQUEST RECV A model-based design flow for CAN-based systems Application model 25/35
  • 41. Constructing the system model Device 1 REQUEST Device 2 RECV REQUEST REQUEST RECV RECV Device 3 REQUEST REQUEST RECV RECV Device n REQUEST REQUEST RECV Application model RECV CAN station 1 CAN station 2 CAN station n COMM COMM COMM CAN protocol model COMM CAN bus Lekidis, Bozga, Mauuary, Bensalem A model-based design flow for CAN-based systems 25/35
  • 42. Constructing the system model Device 1 REQUEST Device 2 RECV REQUEST REQUEST RECV RECV Device 3 REQUEST REQUEST RECV RECV Device n REQUEST REQUEST RECV Application model RECV CAN station 1 CAN station 2 CAN station n COMM COMM COMM CAN protocol model COMM CAN bus Lekidis, Bozga, Mauuary, Bensalem A model-based design flow for CAN-based systems 25/35
  • 43. Outline 1) Design challenges for CAN-based systems 2) Model-based design flow using BIP • • • • BIP overview CAN protocol model Application software modeling Construction of the system model 3) Application and experimental results 4) Conclusion and ongoing work Lekidis, Bozga, Mauuary, Bensalem A model-based design flow for CAN-based systems 26/35
  • 44. Deterministic powertrain network Case study using the BIP design flow, where: • The application software consists of: • • 5 Devices 30 periodic frames with associated: • • • • • • CAN identifier, period and payload HPF queuing policy in every Device Fixed 10% bit-stuffing for all the frames No transmission offsets The Bus has a bit-rate of 500 kbit/s Load equally distributed among the Devices Lekidis, Bozga, Mauuary, Bensalem A model-based design flow for CAN-based systems 27/35
  • 45. Experiments The generated system model contains: • • • • 20 atomic components 60 connectors 255 transitions 1250 lines of BIP code Lekidis, Bozga, Mauuary, Bensalem A model-based design flow for CAN-based systems 28/35
  • 46. Results: Response times • Lekidis, Bozga, Mauuary, Bensalem 1 hour of real system time was simulated in 5 minutes and 30 seconds A model-based design flow for CAN-based systems 29/35
  • 47. Results: Response times • • 1 hour of real system time was simulated in 5 minutes and 30 seconds The same results can be obtained using RTaWSim [RealTime-at-Work] • Much shorter simulation time (13.5 seconds) Lekidis, Bozga, Mauuary, Bensalem A model-based design flow for CAN-based systems 29/35
  • 48. Stochastic powertrain network • Extension to the previous case study: I. II. Probabilistic margin (jitter) for every period Stochastic bit-stuffing Lekidis, Bozga, Mauuary, Bensalem A model-based design flow for CAN-based systems 30/35
  • 49. Stochastic powertrain network • Extension to the previous case study: I. II. Probabilistic margin (jitter) for every period Stochastic bit-stuffing Lekidis, Bozga, Mauuary, Bensalem A model-based design flow for CAN-based systems 30/35
  • 50. Stochastic powertrain network • Extension to the previous case study: I. II. Probabilistic margin (jitter) for every period Stochastic bit-stuffing Lekidis, Bozga, Mauuary, Bensalem A model-based design flow for CAN-based systems 30/35
  • 51. Stochastic powertrain network • Extension to the previous case study: I. II. • Probabilistic margin (jitter) for every period Stochastic bit-stuffing This analysis cannot be performed with RTaW-Sim Lekidis, Bozga, Mauuary, Bensalem A model-based design flow for CAN-based systems 30/35
  • 52. Outline 1) Design challenges for CAN-based systems 2) Model-based design flow using BIP • • • • BIP overview CAN protocol model Application software modeling Construction of the system model 3) Application and experimental results 4) Conclusion and ongoing work Lekidis, Bozga, Mauuary, Bensalem A model-based design flow for CAN-based systems 31/35
  • 53. Summary Proposed method: Rigorous design flow resolving effectively the current challenges in CAN-based systems • • • • Encapsulates the primitives and communication mechanisms of the CAN protocol Separates software and hardware design issues Fully automated and tool-supported Leads to the construction of a mixed hardware and software system model used for: • • • • Performance analysis Verification of functional and extra-functional properties Code generation Conducted experiments on existing benchmarks illustrate the capabilities and the method’s scalability Lekidis, Bozga, Mauuary, Bensalem A model-based design flow for CAN-based systems 32/35
  • 54. Ongoing work • CAN protocol model • • • Selection of the most appropriate distribution for the bit-stuffing and the period margin Design flow for CAN FD-based systems Considered application software • MATLAB/Simulink to BIP translation • Further extensions • Analysis and verification of properties using the Statistical Model Checking BIP tool Generation of optimal device configurations Validation of CAN-higher layer protocols, such as CANopen • • Lekidis, Bozga, Mauuary, Bensalem A model-based design flow for CAN-based systems 33/35
  • 55. Extensions related to the CAN FD protocol Applied only in the CAN protocol model • Additional frame fields: • Flexible Data Format (FDF) bit • • If recessive, RTR bit becomes automatically disabled • Bit Rate Switch (BRS) bit Timing model: • Transmission of one bit will be shorter than one tick (τ bit ) • Switch factor related to the selection of CAN hardware components • The additional transmission time due to bit-stuffing in CAN FD is:   7 + w + 8 × length   =  + 4 τ bit C stuffing    s   Lekidis, Bozga, Mauuary, Bensalem A model-based design flow for CAN-based systems 34/35
  • 56. Thank you for your attention. Further details: alexios.lekidis@imag.fr Lekidis, Bozga, Mauuary, Bensalem A model-based design flow for CAN-based systems 35/35