680 likes | 1.7k Views
Introduction of FlexRay. Chien-Chih(Paul) Chao Chih-Chiang(Michael) Chang Instructor: Dr. Ann Gordon-Ross. Summary. General Background Performance Analysis of FlexRay-based ECU Networks Motivations Basic framework Modeling FlexRay Case Study Conclusion
E N D
Introduction of FlexRay Chien-Chih(Paul) Chao Chih-Chiang(Michael) Chang Instructor: Dr. Ann Gordon-Ross
Summary • General Background • Performance Analysis of FlexRay-based ECU Networks • Motivations • Basic framework • Modeling FlexRay • Case Study • Conclusion • FlexRay Schedule Optimization of the Static Segment • Background & Introduction • Motivation • Problem definition • Methodology • Experimental Results • Conclusion
General Background • What is FlexRay? • A next generation automotive network communications protocol. • When was it released? First public release(Version 2.0) on Jun 2004. The latest version 3.0.1 was released on Oct 2010. • Why uses FlexRay? • High bandwidth • Flexibility • Fault-tolerance • Reliability
General Background FlexRay Controller Area Network(CAN) 10Mbps x 2 bandwidth Time-triggered for real-time transmission Event-triggered for low-priority data Synchronous Deterministic system design Bandwidth up to 1Mbps Contention resolved by priority. Asynchronous Acknowledgment and retransmission when message is corrupted
General Background • Who developed FlexRay? • Where used FlexRay? BMW X5 on 2006, BMW 5-Series, BMW 7-Series Audi A8, Bentley Mulsanne, Rolls-Royce Ghost
General Background • How does it work? • Dual channel - scalable system fault-tolerance • Bus Guardian • Interconnect topologies: centralized or bus
General Background • Macrotick- the node’s own internal clock or timer. • Microtick- a cluster wide synchronized clock. • NIT is stand for Network Idle Time which time corrections.
Performance Analysis of FlexRay-based ECU Networks Andrei Hagiescu, Unmesh D. Bordoloi, Samarjit Chakraborty Department of Computer Science, National University of Singapore Prahladavaradan Sampath, P. Vignesh V. Ganesan, S. Ramesh General Motors R&D – India Science Laboratory, Bangalore Design Automation Conference (DAC) 2007, San Diego, California, USA
Motivation • In a high-end car there are up to 70 electronic control units (ECUs) exchanging up to 2500 signals. • Commonly used protocols include CAN, local interconnection network(LIN). • Previous implementations of FlexRay using only static segment, with the dynamic segment being unutilized. • Dynamic part of protocol is more complex. • The potential messages for dynamic segment is more irregular. • Techniques for analyzing the static segment are known(TDMA scheme).
FlexRay Communication cycles • The first cycle T1, T3,T5, T6, and T7 have messages to send. • The Second cycle T2 have messages to send.
Difficulties in Modeling FlexRay • A message cannot straddle two communication cycles. • Once a task misses in the dynamic segment, it will wait till the next cycle. • A task can send at most one message in each dynamic segment, where the maximum length of the message can be equal to the length of the dynamic segment. • One minislot is consumed from the available service when a task is not ready to transfer a message.
Modeling FlexRay • Step 1: Extract k1 minislots of service during each communication cycle from l . • Step 2: Discretize the service bound obtained from step 1. • Step 3: The resulting service bound is shifted by d time units. • Step 4:A minislot is lost even when a task does not transmit any message.
Modeling FlexRay • The service available to the lower priority tasks (i.e. T2 …)is made up of two components • The service that was unavailable to T1. • The service that was unutilized by T1. • The procedure is remaining for the rest tasks.
Case Study • Adaptive Cruise Control application. • Implemented framework using Matlab as a front-end. • Using Java to handle all the function transformation. m2 m1 m3 m4
Conclusion • Present a compositional performance model for a network of ECUs communicating via FlexRay bus. • Formal model of the protocol governing the dynamic segment of FlexRay. • The framework can also be used for deriving the parameters of the FlexRay protocol. • Help in resource dimensioning and determining optimal scheduling policies for multitasking ECUs.
FlexRay Schedule Optimization of the Static Segment Martin Lukasiewycz, Michael Glaß, and Jürgen Teich University of Erlangen-Nuremberg, Germany Paul Milbredt I/EE-81, AUDI AG, German CODES+ISSS 2009, Grenoble, France
Quick View • Presenting a Scheduling Optimization scheme for the static segment of the FlexRay bus in compliance with the AUTOSAR specification. • What is AUTOSAR?
Background & Introduction • AUTOSAR • AUTomotive Open System ARchitecture • FlexRay • An Automotive Communication System • Protocol Data Units (PDUs)
Background – AUTOSAR • AUTomotive Open System Architecture • Open and Standardized automotive software architecture • Partnership for automotive E/E (Electrics/Electronics) architectures • Standardization • Basic systems functions, • Scalability to different vehicle • Transferability throughout the network • Maintainability throughout the entire product life-cycle • Etc.
Background – FlexRay • Static Segment • Time-triggered • Enable a guaranteed real-time transmission of critical data • Periodic and Safety-critical data • Reserved slots for deterministic data that arrives at a fixed period • Dynamic Segment • Even-triggered • For low priority data • Maintenance and Diagnosis data • does not require determinism
Background – FlexRay (Cont.) • Communication Cycle • Symbol WindowTypically used for network maintenance and signaling for starting the network. • Network Idle TimeA known "quiet" time used to maintain synchronization between node clocks. 5
Background – FlexRay – Static Seg. • Static Segment
Background – FlexRay – Static Seg. • Made up of n equally sized slots • each slots is uniquely assigned to one node • Node may occupy more than one slot 1 2 3
Background – FlexRay – Static Seg. • Each slot: header, trailer, and payload segment PDU PDU PDU PDU PDU PDU PDU PDU
Background – PDUs • The mechanism for communicating information between protocols, they are most generally called protocol data units (PDUs).
Motivation • To minimize the number of used slots in order to maximize the utilization of the bus • Scheduling optimization scheme for the static segment of the FlexRay bus
Problem definition • Scheduling Problem: • Scheduling Requirements • the static time-triggered segment • Why optimization? • high flexibility for incremental schedule changes • for future automotive networks with a higher data volume • fast scheduling techniques are necessary to allow for an effective parameter exploration • AUTOSAR Interface Specification • cycle multiplexing for a single slot • maximizes the utilization of the static segment in compliance with the high requirements for reliability and robustness
Methodology Bin Slot Optimal
Methodology • Problem Transformation • Transform the scheduling problem into a special two-dimensional bin packing problem • 1 slot 1 bin
Methodology • Bin Packing • The Heuristic Approach • “Fast Greedy Heuristic” • Better with Unconstrained Problems • ILP Approach • Better with Constrained Problems: • Enhanced ILP • Mutex Packing • Add Mutual Exclusion to the bin packing • Reordering • For Extensibility of a bin and a slot
Fast Greedy Heuristic • “Greedy” implies: Local Optimal Global Optimal • To put “elements” into “bins” • The Order of the elements (by height and weight) • Allocated new empty bin
Integer Linear Programming (ILP) • Placing the elements starting from the highest element to the most left void space in the bin s at the level l results in a feasible solution of the bin packing problem. • Enhanced ILP • This constraint improves the runtime of the ILP: If the optimal solution is reached and equals the lower bound, the optimization process terminates immediately.
Experimental Results • Schedule Optimization • Incremental Scheduling • Scalability Analysis • ILP & Heuristic • Slot Size Exploration • Supportive Test Case
Results - Schedule Optimization • Intel Pentium 4 3.20 GHz machine with 512 MB RAM • highly heterogeneous in terms of their period and size • the only approach currently, TTX Plan
Results - Incremental Scheduling • In contrast to the ILP approach, the heuristic scheduling method allows an incremental scheduling. • An incremental scheduling might be favored if the number of allocated slots is still not critical since integration tests are time-consuming and expensive.
Results - Supportive Test Case • BMW series 7 • Overall 15 nodes • 91 slots each having a payload of 16 bytes • 237 random PDUs were generated
Conclusion • There exists no publication regarding the FlexRay bus scheduling in compliance with the industrial AUTOSAR Interface Specification. • The case study show that the heuristic and ILP approach are superior to a commercial tool in runtime and quality. • A supportive case study shows the flexibility and robustness of the proposed algorithms