Netcarbench A Benchmark for Techniques and Tools used in the Design of Automotive Communication Systems Christelle BRAUN Lionel HAVET Nicolas NAVET LORIA-INRIA Campus Scientifique, B.P.

Report
Netcarbench
A Benchmark for Techniques and Tools used in the Design of
Automotive Communication Systems
Christelle BRAUN
Lionel HAVET
Nicolas NAVET
LORIA-INRIA
Campus Scientifique, B.P. 239
54506 Vandoeuvre-les-Nancy, France
[email protected]
{Lionel.Havet,Nicolas.Navet } @loria.fr
FeT‘ 2007, 9th November 2007, Toulouse, France
Outline

Typical automotive communication networks today

The need for benchmarks

Our solution: Netcarbench
Netcarbench
11/09/07
C. Braun, L. Havet, N. Navet
2
In-vehicle embedded systems

Several communication networks needed in a vehicle

Body

Chassis

Powertrain

Typical configuration today

A CAN (Controller Area Network) with 5-25 ECUs (Electronic
Control Units).

Subject to significant QoS:

High performance

Real-time capabilities

Fault tolerance (not considered yet)
Netcarbench
11/09/07
C. Braun, L. Havet, N. Navet
3
Issues

The complexity of these systems keeps increasing :



Up to 70 ECUs and 2500 signals in luxury cars.
Leads to an extensive use of electronics .
Necessity for algorithms and tools which automate and
optimise the control of the communication


In-house
Third-party suppliers


SymtaVision, 2007
RealTime-at-Work, 2007


With the software NETCAR-Analyzer (initially developed at LORIA)
Configuration problems :

Frame packing


Guarantee the schedulability and minimize the bandwidth consumption.
Setting offsets


May lead to double the global load in the network.
Further information to be published soon in the Automotive embedded Handbook,
N. Navet, F. Simonot-Lion editors, CRC Press/Taylor and Francis, 2008.
Netcarbench
11/09/07
C. Braun, L. Havet, N. Navet
4
System model

Inputs

Set of N ECUs. For each Nj, a set Sj of signals.

For each signal si=(Ni,Ti,Oi,Ci,Di)





Ni: the ECU it belongs to
Ti: the period of production
Oi: the offset
Ci: the size in bits
Di: the relative deadline (here Di=Ti)
Netcarbench
11/09/07
C. Braun, L. Havet, N. Navet
5
Frame packing

Goal

For each ECU Nj with the set Sj of signals, construct the set of
frames Fj={fj1,...,fjk}, such that:

Fj is schedulable


The bandwidth consumption is minimized



None of the transmitted signal misses a deadline.
Important for practical applications
In LORIA, research on the optimisation method of offsets assignment
(adding offsets to better distribute the load) [Grenier 2008]
Complexity

Frame packing is NP-hard [Norström, 2000]

Exact complexity shows that no exhaustive approach is possible
[Saket and Navet, 2006]

Efficient heuristics are required.
Netcarbench
11/09/07
C. Braun, L. Havet, N. Navet
6
Frame packing
…
Minimize
bandwidth
consumption
and respect
deadline
constraints
F1 F2
ECU1
Frame X
F3 F4
F5 F6
ECU2
Frame Y
F7
ECU3 ECU4
Frame Z
Netcarbench
11/09/07
C. Braun, L. Havet, N. Navet
7
Setting Offsets

Output of the frame packing algorithm

Set of frames of the form fj=(Nj',Tj',Oj',Cj',Dj',Pj')



Nj',Tj',Oj',Cj',Dj': same meaning as before.
Pj': (unique) priority of the frame.
Goal

Compute the WCRT in order to check the schedulability of the
messages (with offsets).

WCRT without offsets calculated in [Tindell and Burns, 1994] and
revised in [Davis, 2007].

No solution whose complexity is not exponential.

No reference for WCRT with offsets so far, but commercial
softwares already available (SymtaVision, NETCAR-Analyzer).
Netcarbench
11/09/07
C. Braun, L. Havet, N. Navet
8
NETCAR-Analyzer

History

Initially developed at LORIA in the authors' research group.

Motivation: no tool available for the computation of response times
with offsets on large sets of messages.

Taken over by the company RealTime-at-Work in 2007.

Goals

Computes exact and very fast WCRT of messages with offsets in
CANs.

Includes a set of proprietary offset assignment algorithms, finetuned with the experience gained in industrial use.

Can be improved and extended according to the user's needs.
Netcarbench
11/09/07
C. Braun, L. Havet, N. Navet
9
NETCAR-Analyser: screenshot
Netcarbench
11/09/07
C. Braun, L. Havet, N. Navet
10
Benchmark




How to compare these algorithms and evaluate their efficiency?

Need for a domain-specific benchmark.
Benchmark

„Standard by which something is evaluated or measured.“
[Wiktionary]
What we need here

Generation of workloads which simulate the data exchange
between the ECUs.
3 challenges

Standardization


Scalability


Capture the typical properties of the workloads in today‘s automotive
networks (CAN, FlexRay...)
Can be easily adapted to evolutions of the network model.
Customisation

Let the user define the specific parameters of his application
Netcarbench
11/09/07
C. Braun, L. Havet, N. Navet
11
Existing benchmarks


Why is so little information available?

Confidentiality + competition between car manufacturers.

Applications restricted to the brand under concern.
Only 2 published benchmarks

SAE Benchmark




Society of Automotive Engineers, 1993.
Initially developed for a point-to-point network.
Adapted by Tindell and Burns to a CAN composed of 7 ECUs
exchanging 53 messages (1994).
Problem


obsolete
PSA Benchmark



PSA Peugeot-Citroen, 2000.
Powertrain network with 6 nodes and 12 different periodic messages.
Problem

obsolete
Netcarbench
11/09/07
C. Braun, L. Havet, N. Navet
12
Netcarbench


Our solution: Netcarbench

A new benchmark for broadcast networks in automotive distributed
control systems.
Outperforms existing solutions

Input


Output


User-defined configuration.
Sets of messages complying with the specification and whose
parameters are possibly completed by automatic randomisation.
Implementation

XML format for the configuration (input file) and the generated
message sets (output files).

Several examples of typical realistic networks already predefined
for an immediate use.
Netcarbench
11/09/07
C. Braun, L. Havet, N. Navet
13
Configuration file

Principles

Constant parameters defined by the user.

Variable parameters constrained by the user and instantiated by
Netcarbench.

Parameters for the overall network

Type of messages (signals or frames)


Bandwidth


<bandwidth Value="125">
Maximal load


<signals Value="False">
<load Min="30" Max="35">
Number of ECUs

<ecu Min="15" Max="20">
Netcarbench
11/09/07
C. Braun, L. Havet, N. Navet
14
Configuration file

Parameters for the ECUs

Maximal load


<s Id="3" Load="0.10">
Parameters for the messages

Period

<p Value="50" Weight="2"
PrioLowRange="1" PrioHighRange="200" Margin="1">



Selects a message with a probability of (Weight±Margin)/SumWeights %.
If the message is selected, it is assigned a period of 50ms and a (random)
unused priority between 1 and 200.
Length

<m Length="8" Weight="10" Margin="2">


Selects a message with a probability of (Weight±Margin)/SumWeights %.
If the message is selected, it is assigned a length of 8 bits.
Netcarbench
11/09/07
C. Braun, L. Havet, N. Navet
15
Generated message sets

Network
<msgset Busspeed="125" Name="set1.xml" Load="32.054">

Messages assigned sequentially to the ECUs
<ecu Name="Ecu_0">
<frame Name="frame67" Priority="23" Period="100" Length="8"/>
<frame Name="frame68" Priority="42" Period="50“ Length="4"/>
...
</ecu>
Netcarbench
11/09/07
C. Braun, L. Havet, N. Navet
16
Evaluation (on 100 message sets)

Lengths of the messages
<messages_sizes>
<m Length="1"
<m Length="2"
<m Length="3"
<m Length="4"
<m Length="5"
<m Length="6"
<m Length="7"
<m Length="8"
</messages_sizes>

Weight="1"
Weight="1"
Weight="1"
Weight="1"
Weight="2"
Weight="2"
Weight="2"
Weight="8"
Margin="1"
Margin="1"
Margin="1"
Margin="1"
Margin="1"
Margin="1"
Margin="1"
Margin="2"
/>
/>
/>
/>
/>
/>
/>
/>
 6 ±6%
 6 ±6%
 6 ±6%
 6±6%
 12 ±6%
 12 ±6%
 12 ±6%
 44 ±12%
Loads of the ECUs
<loaded_stations>
<s Id="1" Load="0.30" />
<s Id="2" Load="0.15" />
<s Id="3" Load="0.10" />
</loaded_stations>
Netcarbench
11/09/07
C. Braun, L. Havet, N. Navet
17
Evaluation: lengths of messages
Netcarbench
11/09/07
C. Braun, L. Havet, N. Navet
18
Evaluation: loads of the ECUs
Netcarbench
11/09/07
C. Braun, L. Havet, N. Navet
19
Evaluation results

Lengths of the messages

The assigned lengths are within the user-specified range.

The average length is very close to the specified weight.

Loads of the ECUs

The load assigned to a given ECU by Netcarbench may differ from
the value specified by the user, if provided.

But the compliance is always verified in the average case.

For unspecified loads, Netcarbench relies on a uniform distribution.

Conclusion

Even on a relatively limited number of experiments, the message
sets are representatives of the user's specifications.
Netcarbench
11/09/07
C. Braun, L. Havet, N. Navet
20
Conclusion





Netcarbench: a new approach

Aimed at facilitating the design and comparison of configuration
algorithms and communication protocols.
Genericity

Provides the main elements of today's mostly used automotive
communication networks (CAN, FlexRAy...)
Customisation

Supports a user-defined configuration following the specificities of
the application under concern.
Scalability

Can easily be extended to new network designs.
Automation

Performs automatically all remaining tasks, using randomization for
the missing parameters.
Netcarbench
11/09/07
C. Braun, L. Havet, N. Navet
21
Conclusion

Interoperability

Uses for both input and output XML files, to ease the
interoperability with other software tools.

Availability

The complete program and all accompanying material are licensed
under the GNU GPL v.2 and can be downloaded at:
http://www.loria.fr/~nnavet/netcarbench
Netcarbench
11/09/07
C. Braun, L. Havet, N. Navet
22
Future work

Extension to the method of offsets/deadlines assignment

Extension to the FIBEX format (Field Bus Exchange Format, 2006)

Standard available on the ASAM (Association for Standardisation of
Automation and Measuring Systems) website.

On-going implementation at LORIA.

Participation of other research groups would be appreciated!

Open repository of configuration files.

Creation of a Sourceforge project.

...
Netcarbench
11/09/07
C. Braun, L. Havet, N. Navet
23

similar documents