Netcarbench A Benchmark for Techniques and Tools used

  • Slides: 23
Download presentation
Netcarbench A Benchmark for Techniques and Tools used in the Design of Automotive Communication

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 Christelle. [email protected] org {Lionel. Havet, Nicolas. Navet } @loria. fr Fe. T‘ 2007, 9 th November 2007, Toulouse, France

Outline n Typical automotive communication networks today n The need for benchmarks n Our

Outline n Typical automotive communication networks today n The need for benchmarks n Our solution: Netcarbench 11/09/07 Netcarbench C. Braun, L. Havet, N. Navet 2

In-vehicle embedded systems n n n Several communication networks needed in a vehicle n

In-vehicle embedded systems n n n Several communication networks needed in a vehicle n Body n Chassis n Powertrain Typical configuration today n A CAN (Controller Area Network) with 5 -25 ECUs (Electronic Control Units). Subject to significant Qo. S: n High performance n Real-time capabilities n Fault tolerance (not considered yet) 11/09/07 Netcarbench C. Braun, L. Havet, N. Navet 3

Issues n The complexity of these systems keeps increasing : n n n Up

Issues n The complexity of these systems keeps increasing : n n n 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 n n In-house Third-party suppliers n n Symta. Vision, 2007 Real. Time-at-Work, 2007 n n With the software NETCAR-Analyzer (initially developed at LORIA) Configuration problems : n Frame packing n n Setting offsets n n 11/09/07 Guarantee the schedulability and minimize the bandwidth consumption. 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 C. Braun, L. Havet, N. Navet 4

System model n Inputs n Set of N ECUs. For each Nj, a set

System model n Inputs n Set of N ECUs. For each Nj, a set Sj of signals. n For each signal si=(Ni, Ti, Oi, Ci, Di) n n n 11/09/07 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 C. Braun, L. Havet, N. Navet 5

Frame packing n Goal n For each ECU Nj with the set Sj of

Frame packing n Goal n For each ECU Nj with the set Sj of signals, construct the set of frames Fj={fj 1, . . . , fjk}, such that: n Fj is schedulable n n The bandwidth consumption is minimized n n n 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 n Frame packing is NP-hard [Norström, 2000] n Exact complexity shows that no exhaustive approach is possible [Saket and Navet, 2006] n Efficient heuristics are required. 11/09/07 Netcarbench C. Braun, L. Havet, N. Navet 6

Frame packing … Minimize bandwidth consumption and respect deadline constraints 11/09/07 F 1 F

Frame packing … Minimize bandwidth consumption and respect deadline constraints 11/09/07 F 1 F 2 ECU 1 Frame X F 3 F 4 F 5 F 6 ECU 2 Frame Y Netcarbench C. Braun, L. Havet, N. Navet F 7 ECU 3 ECU 4 Frame Z 7

Setting Offsets n Output of the frame packing algorithm n Set of frames of

Setting Offsets n Output of the frame packing algorithm n Set of frames of the form fj=(Nj', Tj', Oj', Cj', Dj', Pj') n n n Nj', Tj', Oj', Cj', Dj': same meaning as before. Pj': (unique) priority of the frame. Goal n Compute the WCRT in order to check the schedulability of the messages (with offsets). n WCRT without offsets calculated in [Tindell and Burns, 1994] and revised in [Davis, 2007]. n No solution whose complexity is not exponential. n No reference for WCRT with offsets so far, but commercial softwares already available (Symta. Vision, NETCAR-Analyzer). 11/09/07 Netcarbench C. Braun, L. Havet, N. Navet 8

NETCAR-Analyzer n n History n Initially developed at LORIA in the authors' research group.

NETCAR-Analyzer n n History n Initially developed at LORIA in the authors' research group. n Motivation: no tool available for the computation of response times with offsets on large sets of messages. n Taken over by the company Real. Time-at-Work in 2007. Goals n Computes exact and very fast WCRT of messages with offsets in CANs. n Includes a set of proprietary offset assignment algorithms, finetuned with the experience gained in industrial use. n Can be improved and extended according to the user's needs. 11/09/07 Netcarbench C. Braun, L. Havet, N. Navet 9

NETCAR-Analyser: screenshot 11/09/07 Netcarbench C. Braun, L. Havet, N. Navet 10

NETCAR-Analyser: screenshot 11/09/07 Netcarbench C. Braun, L. Havet, N. Navet 10

Benchmark n n How to compare these algorithms and evaluate their efficiency? n Need

Benchmark n n How to compare these algorithms and evaluate their efficiency? n Need for a domain-specific benchmark. Benchmark n „Standard by which something is evaluated or measured. “ [Wiktionary] What we need here n Generation of workloads which simulate the data exchange between the ECUs. 3 challenges n Standardization n n Scalability n n Can be easily adapted to evolutions of the network model. Customisation n 11/09/07 Capture the typical properties of the workloads in today‘s automotive networks (CAN, Flex. Ray. . . ) Let the user define the specific parameters of his application Netcarbench C. Braun, L. Havet, N. Navet 11

Existing benchmarks n n Why is so little information available? n Confidentiality + competition

Existing benchmarks n n Why is so little information available? n Confidentiality + competition between car manufacturers. n Applications restricted to the brand under concern. Only 2 published benchmarks n SAE Benchmark n n 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 n n PSA Benchmark n n n PSA Peugeot-Citroen, 2000. Powertrain network with 6 nodes and 12 different periodic messages. Problem n 11/09/07 obsolete Netcarbench C. Braun, L. Havet, N. Navet 12

Netcarbench n n Our solution: Netcarbench n A new benchmark for broadcast networks in

Netcarbench n n Our solution: Netcarbench n A new benchmark for broadcast networks in automotive distributed control systems. Outperforms existing solutions n Input n n Output n n User-defined configuration. Sets of messages complying with the specification and whose parameters are possibly completed by automatic randomisation. Implementation n XML format for the configuration (input file) and the generated message sets (output files). n Several examples of typical realistic networks already predefined for an immediate use. 11/09/07 Netcarbench C. Braun, L. Havet, N. Navet 13

Configuration file n n Principles n Constant parameters defined by the user. n Variable

Configuration file n n Principles n Constant parameters defined by the user. n Variable parameters constrained by the user and instantiated by Netcarbench. Parameters for the overall network n Type of messages (signals or frames) n n Bandwidth n n <load Min="30" Max="35"> Number of ECUs n 11/09/07 <bandwidth Value="125"> Maximal load n n <signals Value="False"> <ecu Min="15" Max="20"> Netcarbench C. Braun, L. Havet, N. Navet 14

Configuration file n Parameters for the ECUs n Maximal load n n <s Id="3"

Configuration file n Parameters for the ECUs n Maximal load n n <s Id="3" Load="0. 10"> Parameters for the messages n Period n <p Value="50" Weight="2" Prio. Low. Range="1" Prio. High. Range="200" Margin="1"> n n n Length n <m Length="8" Weight="10" Margin="2"> n n 11/09/07 Selects a message with a probability of (Weight±Margin)/Sum. Weights %. If the message is selected, it is assigned a period of 50 ms and a (random) unused priority between 1 and 200. Selects a message with a probability of (Weight±Margin)/Sum. Weights %. If the message is selected, it is assigned a length of 8 bits. Netcarbench C. Braun, L. Havet, N. Navet 15

Generated message sets n Network <msgset Busspeed="125" Name="set 1. xml" Load="32. 054"> n Messages

Generated message sets n Network <msgset Busspeed="125" Name="set 1. xml" Load="32. 054"> n Messages assigned sequentially to the ECUs <ecu Name="Ecu_0"> <frame Name="frame 67" Priority="23" Period="100" Length="8"/> <frame Name="frame 68" Priority="42" Period="50“ Length="4"/>. . . </ecu> 11/09/07 Netcarbench C. Braun, L. Havet, N. Navet 16

Evaluation (on 100 message sets) n Lengths of the messages <messages_sizes> <m Length="1" <m

Evaluation (on 100 message sets) n 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> n Weight="1" Weight="2" Weight="8" Margin="1" Margin="1" Margin="2" /> /> 6 ± 6% 6± 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> 11/09/07 Netcarbench C. Braun, L. Havet, N. Navet 17

Evaluation: lengths of messages 11/09/07 Netcarbench C. Braun, L. Havet, N. Navet 18

Evaluation: lengths of messages 11/09/07 Netcarbench C. Braun, L. Havet, N. Navet 18

Evaluation: loads of the ECUs 11/09/07 Netcarbench C. Braun, L. Havet, N. Navet 19

Evaluation: loads of the ECUs 11/09/07 Netcarbench C. Braun, L. Havet, N. Navet 19

Evaluation results n n n Lengths of the messages n The assigned lengths are

Evaluation results n n n Lengths of the messages n The assigned lengths are within the user-specified range. n The average length is very close to the specified weight. Loads of the ECUs n The load assigned to a given ECU by Netcarbench may differ from the value specified by the user, if provided. n But the compliance is always verified in the average case. n For unspecified loads, Netcarbench relies on a uniform distribution. Conclusion n Even on a relatively limited number of experiments, the message sets are representatives of the user's specifications. 11/09/07 Netcarbench C. Braun, L. Havet, N. Navet 20

Conclusion n n Netcarbench: a new approach n Aimed at facilitating the design and

Conclusion n n Netcarbench: a new approach n Aimed at facilitating the design and comparison of configuration algorithms and communication protocols. Genericity n Provides the main elements of today's mostly used automotive communication networks (CAN, Flex. RAy. . . ) Customisation n Supports a user-defined configuration following the specificities of the application under concern. Scalability n Can easily be extended to new network designs. Automation n Performs automatically all remaining tasks, using randomization for the missing parameters. 11/09/07 Netcarbench C. Braun, L. Havet, N. Navet 21

Conclusion n n Interoperability n Uses for both input and output XML files, to

Conclusion n n Interoperability n Uses for both input and output XML files, to ease the interoperability with other software tools. Availability n 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 11/09/07 Netcarbench C. Braun, L. Havet, N. Navet 22

Future work n n n Extension to the method of offsets/deadlines assignment Extension to

Future work n n n Extension to the method of offsets/deadlines assignment Extension to the FIBEX format (Field Bus Exchange Format, 2006) n Standard available on the ASAM (Association for Standardisation of Automation and Measuring Systems) website. n On-going implementation at LORIA. Participation of other research groups would be appreciated! n Open repository of configuration files. n Creation of a Sourceforge project. n. . . 11/09/07 Netcarbench C. Braun, L. Havet, N. Navet 23