Context and goal Experimental protocol Experimental results Conclusion Evaluation of admissible CAN bus load with weak synchronization mechanism Hugo Daigmorte, Marc Boyer ONERA – The French aerospace lab International Conference on Real-Time Networks and Systems (RTNS 2017) H. Daigmorte, M. Boyer Admissible CAN bus load with weak synchronization 1 / 25
Context and goal Experimental protocol Experimental results Conclusion Table of Contents Context and goal 1 CAN bus with offsets CAN identifier Sporadic flows and errors Experimental protocol 2 Breakdown utilisation Configuration Pattern Experimental results 3 Phases bounded by 0.5-1-2ms Combining priorities and offsets No errors, 20% sporadic Errors, No sporadic Errors, 20% sporadic Conclusion 4 H. Daigmorte, M. Boyer Admissible CAN bus load with weak synchronization 2 / 25
Context and goal CAN bus with offsets Experimental protocol CAN identifier Experimental results Sporadic flows and errors Conclusion Table of Contents Context and goal 1 CAN bus with offsets Global clock Local clocks Bounded phases CAN identifier Sporadic flows and errors Sporadic flows Errors Experimental protocol 2 Experimental results 3 Conclusion 4 H. Daigmorte, M. Boyer Admissible CAN bus load with weak synchronization 3 / 25
Context and goal CAN bus with offsets Experimental protocol CAN identifier Experimental results Sporadic flows and errors Conclusion Context and goal Context Real-time networked system (CAN bus) Periodic flows with Offsets reduces contentions ⇒ reduces delays requires synchronization RTNS 2016 Open questions new offest-based mechanism quantitative gain evaluation? reduces delays in practice: sporadic, errors? only periodic flows CAN Node CAN Node CAN Node n°1 n°2 n°N H. Daigmorte, M. Boyer Admissible CAN bus load with weak synchronization 4 / 25
Context and goal CAN bus with offsets Experimental protocol CAN identifier Experimental results Sporadic flows and errors Conclusion Flow model Periodic flow N nodes Flow F i : j i (Source node), P i (Period), S i (maximal frame Size), O i (Offset) Each node j has a clock: c j ( t ) Sending k -th frame of flow F i when: c j ( t ) = O i + kP i O P P c(t) F,1 F,2 F,3 0 H. Daigmorte, M. Boyer Admissible CAN bus load with weak synchronization 5 / 25
Context and goal CAN bus with offsets Experimental protocol CAN identifier Experimental results Sporadic flows and errors Conclusion Global clock (aka TDMA) ∀ j , j ′ : c j ( t ) ≈ c j ′ ( t ) Advantage: efficient global schedule ⇒ no contention Drawback: perfect synchronization (HW/SW cost) N1 A,1 A,1 B,1 B,1 A,2 A,2 N2 C,1 C,2 C,3 BUS A,1 C,1 B,1 C,2 A,2 C,3 H. Daigmorte, M. Boyer Admissible CAN bus load with weak synchronization 6 / 25
Context and goal CAN bus with offsets Experimental protocol CAN identifier Experimental results Sporadic flows and errors Conclusion Local clocks Advantages: efficient schedule ⇒ no contention intra-nodes efficient schedule ⇒ workload spread over time N1 A,1 B,1 A,2 N2 C,1 C,2 C,3 BUS A,1 C,1 B,1 C,2 A,2 C,3 N1 A,1 B,1 B,1 A,2 N2 C,1 C,2 BUS A,1 C,1 B,1 C,2 A,2 H. Daigmorte, M. Boyer Admissible CAN bus load with weak synchronization 7 / 25
Context and goal CAN bus with offsets Experimental protocol CAN identifier Experimental results Sporadic flows and errors Conclusion Bounded phases ∀ j , j ′ : c j ( t ) − c j ′ ( t ) ≤ Φ j , j ′ Objectives: Bounded phases: trade off between global and local clocks affordable synchronization reduces delays with regard to local clocks N1 A,1 B,1 A,2 X N2 C,1 C,2 C,3 N1 A,1 B,1 A,2 X N2 C,1 C,2 C,3 | c 1 ( t ) − c 2 ( t ) | ≤ x H. Daigmorte, M. Boyer Admissible CAN bus load with weak synchronization 8 / 25
Context and goal CAN bus with offsets Experimental protocol CAN identifier Experimental results Sporadic flows and errors Conclusion CAN identifier encodes both label and priority S R A E O Identifier T Control Data Cyclic redundancy check C O F R K F Each message contains an identifier unique to the whole system: used as priority to solved bus access contentions ⇒ CAN bus used a non preemptive static priority policy used as label ⇒ data semantics (engine speed, fuel pressure, etc.) ⇒ filter the message at the reception H. Daigmorte, M. Boyer Admissible CAN bus load with weak synchronization 9 / 25
Context and goal CAN bus with offsets Experimental protocol CAN identifier Experimental results Sporadic flows and errors Conclusion CAN, priorities and offset Priorities greatly influence the bus latency: Efficient priorities assignment ⇒ load close to 100% Industrial context ⇒ some or all labels (priorities) are constrained by design constraints: reusability: try to maximize the reuse of components standard: ARINC 825, SAE J1939 Offsets can be used in complement or independently. H. Daigmorte, M. Boyer Admissible CAN bus load with weak synchronization 10 / 25
Context and goal CAN bus with offsets Experimental protocol CAN identifier Experimental results Sporadic flows and errors Conclusion Sporadic flows and errors Sporadic flows A frame is sent as soon as a specific event occurs Minimum update time MUT between two frames MUT MUT F,1 F,2 F,3 0 c(t) H. Daigmorte, M. Boyer Admissible CAN bus load with weak synchronization 11 / 25
Context and goal CAN bus with offsets Experimental protocol CAN identifier Experimental results Sporadic flows and errors Conclusion Sporadic flows and errors Errors are a random phenomenon ⇒ cannot be forecast ⇒ Hypotheses are made at design Common error model N error , the burst errors,maximal number of errors that could occur back-to-back T error , the residual error interval Maximal number of transmission errors during the duration d : � � d N error + − 1 T error H. Daigmorte, M. Boyer Admissible CAN bus load with weak synchronization 12 / 25
Context and goal Experimental protocol Breakdown utilisation Experimental results Configuration Pattern Conclusion Table of Contents Context and goal 1 Global clock Local clocks Bounded phases Sporadic flows Errors Experimental protocol 2 Breakdown utilisation Configuration Pattern Experimental results 3 Conclusion 4 H. Daigmorte, M. Boyer Admissible CAN bus load with weak synchronization 13 / 25
Context and goal Experimental protocol Breakdown utilisation Experimental results Configuration Pattern Conclusion Response time depends on several parameters: periods, priority, size, offsets, link speed, nb of nodes, etc, Ideal objective: compare bounded phases wrt no offsets and local clocks independently of other parameters Realistic but significant measurement: single configuration criteria: breakdown utilisation large number of random configurations ⇒ breakdown utilisation distribution H. Daigmorte, M. Boyer Admissible CAN bus load with weak synchronization 14 / 25
Context and goal Experimental protocol Breakdown utilisation Experimental results Configuration Pattern Conclusion Breakdown utilisation Breakdown utilisation The maximal load to guarantee that all deadlines are respected Example Breakdown utilisation Data sent on the network: 150 kbit/s The link speed in order to respect all deadlines must be at least: 300kbit/s ⇒ The breakdown utilisation for this configuration is 50%. H. Daigmorte, M. Boyer Admissible CAN bus load with weak synchronization 15 / 25
Context and goal Experimental protocol Breakdown utilisation Experimental results Configuration Pattern Conclusion 500 450 400 350 Number of configuration 300 250 200 150 100 50 0 0 10 20 30 40 50 60 70 80 90 100 Breakdown Utilisation H. Daigmorte, M. Boyer Admissible CAN bus load with weak synchronization 16 / 25
Context and goal Experimental protocol Breakdown utilisation Experimental results Configuration Pattern Conclusion 500 450 400 350 Number of configuration 300 250 200 150 100 50 0 0 10 20 30 40 50 60 70 80 90 100 Breakdown Utilisation H. Daigmorte, M. Boyer Admissible CAN bus load with weak synchronization 16 / 25
Context and goal Experimental protocol Breakdown utilisation Experimental results Configuration Pattern Conclusion 500 450 400 350 Number of configuration 300 250 200 150 100 50 0 0 10 20 30 40 50 60 70 80 90 100 Breakdown Utilisation H. Daigmorte, M. Boyer Admissible CAN bus load with weak synchronization 16 / 25
Context and goal Experimental protocol Breakdown utilisation Experimental results Configuration Pattern Conclusion Configuration pattern under study Flows characteristics Sender: uniform choice between 16 nodes Periodic flows Period: uniform choice in { 20, 25, 40, 50, 100, 200 } ms Payload: 8 bytes Deadline: equal to their period, i.e. implicit deadlines Nb of flows: such that 150 + ε kbit/s sent on the bus Offsets chosen using the SOPA algorithm (RTaW-Pegase). 5,000 configurations generated. Breakdown utilisation for: no offsets local clocks bounded phases (1ms) H. Daigmorte, M. Boyer Admissible CAN bus load with weak synchronization 17 / 25
Recommend
More recommend