S ynthesis of Communication Schedules for TTEthernet -based Mixed-Criticality Systems

63
Synthesis of Communication Schedules for TTEthernet-based Mixed- Criticality Systems Domițian Tămaș-Selicean 1 , Paul Pop 1 and Wilfried Steiner 2 1 Technical University of Denmark 2 TTTech Computertechnik AG

description

S ynthesis of Communication Schedules for TTEthernet -based Mixed-Criticality Systems. Domițian Tămaș- Selicean 1 , Paul Pop 1 and Wilfried Steiner 2 1 Technical University of Denmark 2 TTTech Computertechnik AG. Outline. Motivation TTEthernet ARINC 664p7 “Aircraft Data Network ” - PowerPoint PPT Presentation

Transcript of S ynthesis of Communication Schedules for TTEthernet -based Mixed-Criticality Systems

Page 1: S ynthesis of Communication Schedules for TTEthernet -based Mixed-Criticality Systems

Synthesis of Communication Schedules forTTEthernet-based Mixed-Criticality Systems

Domițian Tămaș-Selicean1, Paul Pop1 and Wilfried Steiner2

1Technical University of Denmark2TTTech Computertechnik AG

Page 2: S ynthesis of Communication Schedules for TTEthernet -based Mixed-Criticality Systems

2

OutlineMotivationTTEthernet

ARINC 664p7 “Aircraft Data Network” TT and RC Traffic Transmission

Problem Formulation Motivational Example

Optimization Strategy RC End-to-End Analysis

Experimental resultsConclusions

Page 3: S ynthesis of Communication Schedules for TTEthernet -based Mixed-Criticality Systems

3

Point-to-point connection

Motivation Real time applications implemented using distributed systems

PE

Application A 1 -- highly critical

Application A 2 -- critical

Application A 3 -- non-critical

Bus connection

Reduces wiring and weight Mixed-criticality applications share

the same network

Page 4: S ynthesis of Communication Schedules for TTEthernet -based Mixed-Criticality Systems

4

ARINC 664 p7 “Aircraft Data Network”

ES1

ES2

NS1 NS2

ES3

ES4

Full-Duplex Ethernet-based data network for safety-critical applications

End System

Network Switch

Page 5: S ynthesis of Communication Schedules for TTEthernet -based Mixed-Criticality Systems

5

ARINC 664 p7 “Aircraft Data Network”

ES1

ES2

NS1 NS2

ES3

ES4

CPURAM

ROMNIC

Page 6: S ynthesis of Communication Schedules for TTEthernet -based Mixed-Criticality Systems

6

ARINC 664 p7 “Aircraft Data Network”

ES1

ES2

NS1 NS2

ES3

ES4

NS1 to ES1

ES1 to NS1

dataflow link

Page 7: S ynthesis of Communication Schedules for TTEthernet -based Mixed-Criticality Systems

7

ARINC 664 p7 “Aircraft Data Network”

NS1 NS2

vl2

vl1

ES1τ1

ES2τ4

ES3τ2 τ5

ES4τ3

Highly critical application A 1: τ1, τ2 and τ3

τ1 sends message m1 to τ2 and τ3

Non-critical application A 2: τ4 and τ5

τ4 sends message m2 to τ5

virtual link

Page 8: S ynthesis of Communication Schedules for TTEthernet -based Mixed-Criticality Systems

8

ARINC 664 p7 “Aircraft Data Network”

NS1 NS2

dp1

vl1

dp2

l1

l2

l3

l4

ES1τ1

ES2τ4

ES3τ2 τ5

ES4τ3dataflow

path

Highly critical application A 1: τ1, τ2 and τ3

τ1 sends message m1 to τ2 and τ3

Non-critical application A 2: τ4 and τ5

τ4 sends message m2 to τ5

Page 9: S ynthesis of Communication Schedules for TTEthernet -based Mixed-Criticality Systems

9

ARINC 664 p7 “Aircraft Data Network”

Deterministic Event Triggered communicationSeparation of traffic enforced through “bandwidth allocation”Bandwidth Allocation Gap (BAG) – minimum time interval

between two consecutive instances of a frame on a virtual link

fx,1

fx,2

BAGx

Maximum bandwidth assigned to virtual link vli

BW (vli) = fi .size/BAGi

Page 10: S ynthesis of Communication Schedules for TTEthernet -based Mixed-Criticality Systems

10

TTEthernet

ARINC 664p7 compliantTraffic classes:

synchronized communication Time Triggered (TT)

unsynchronized communication Rate Constrained (RC) – ARINC 664p7 traffic class Best Effort (BE) – no timing guarantees

Standardized as SAE AS 6802Marketed by TTTech Computertechnik AG Implemented by Honeywell on the NASA Orion Constellation

Page 11: S ynthesis of Communication Schedules for TTEthernet -based Mixed-Criticality Systems

11

TTEthernet

Composed of clustersEach cluster has a clock synchronization domain Inter-cluster communication using RC traffic

ES1

ES2

NS1

ES3

ES4

ES5

ES6

NS2

ES7

ES8

Cluster 1 Cluster 2

Page 12: S ynthesis of Communication Schedules for TTEthernet -based Mixed-Criticality Systems

12

b

TT Transmission

CPU

P1,1 τ

1

P1,2 τ

2

B2,Tx

B1,Tx

TTS

P1,3

P2,1τ

4

P2,2τ

3

P2,3

CPUFU

B1,Rx

B2,Rx

ES1

ES2

NS2

NS3

FU

TTR

B1,Tx

B2,Tx

TTS

NS1

SS

f2

f3

f4

TT

a

c

de

f

g

h

ij

k lm

SR

SS

A1: τ

1 à m

1 à τ

3, RC

A2: τ

2 à m

2 à τ

4, TT

b

Page 13: S ynthesis of Communication Schedules for TTEthernet -based Mixed-Criticality Systems

13

b

b

TT Transmission

CPU

P1,1 τ

1

P1,2 τ

2

B2,Tx

B1,Tx

TTS

P1,3

P2,1τ

4

P2,2τ

3

P2,3

CPUFU

B1,Rx

B2,Rx

ES1

ES2

NS2

NS3

FU

TTR

B1,Tx

B2,Tx

TTS

NS1

SS

f2

f3

f4

TT

a

c

de

f

g

h

ij

k lm

SR

SS

A1: τ

1 à m

1 à τ

3, RC

A2: τ

2 à m

2 à τ

4, TT

a

c

d

e

f

g

h

i

j

k

l

m

Packing message m2 into frame f2

Place f2 in buffer B1,Tx for transmissionSend time specified in send schedule SS

TTS sends f2 to NS1

f2 is sent on the dataflow link to NS1

The Filtering Unit (FU) checks the frame f2

Expected receive time specified in receive schedule SR

TTR checks if f2 arrives according to schedulePlace f2 in buffer B1,Tx for transmission

Send time specified in send schedule SS

FU checks f2

Store the frame into receive buffer B2,Rx

Task τ4 reads f2 from buffer

b

Page 14: S ynthesis of Communication Schedules for TTEthernet -based Mixed-Criticality Systems

14

b

b

TT Transmission

CPU

P1,1 τ

1

P1,2 τ

2

B2,Tx

B1,Tx

TTS

P1,3

P2,1τ

4

P2,2τ

3

P2,3

CPUFU

B1,Rx

B2,Rx

ES1

ES2

NS2

NS3

FU

TTR

B1,Tx

B2,Tx

TTS

NS1

SS

f2

f3

f4

TT

a

c

de

f

g

h

ij

k lm

SR

SS

A1: τ

1 à m

1 à τ

3, RC

A2: τ

2 à m

2 à τ

4, TT

a

c

d

e

f

g

h

i

j

k

l

m

Packing message m2 into frame f2

Place f2 in buffer B1,Tx for transmissionSend time specified in send schedule SS

TTS sends f2 to NS1

f2 is sent on the dataflow link to NS1

The Filtering Unit (FU) checks the frame f2

Expected receive time specified in receive schedule SR

TTR checks if f2 arrives according to schedulePlace f2 in buffer B1,Tx for transmission

Send time specified in send schedule SS

FU checks f2

Store the frame into receive buffer B2,Rx

Task τ4 reads f2 from buffer

b

Page 15: S ynthesis of Communication Schedules for TTEthernet -based Mixed-Criticality Systems

15

b

b

TT Transmission

CPU

P1,1 τ

1

P1,2 τ

2

B2,Tx

B1,Tx

TTS

P1,3

P2,1τ

4

P2,2τ

3

P2,3

CPUFU

B1,Rx

B2,Rx

ES1

ES2

NS2

NS3

FU

TTR

B1,Tx

B2,Tx

TTS

NS1

SS

f2

f3

f4

TT

a

c

de

f

g

h

ij

k lm

SR

SS

A1: τ

1 à m

1 à τ

3, RC

A2: τ

2 à m

2 à τ

4, TT

a

c

d

e

f

g

h

i

j

k

l

m

Packing message m2 into frame f2

Place f2 in buffer B1,Tx for transmissionSend time specified in send schedule SS

TTS sends f2 to NS1

f2 is sent on the dataflow link to NS1

The Filtering Unit (FU) checks the frame f2

Expected receive time specified in receive schedule SR

TTR checks if f2 arrives according to schedulePlace f2 in buffer B1,Tx for transmission

Send time specified in send schedule SS

FU checks f2

Store the frame into receive buffer B2,Rx

Task τ4 reads f2 from buffer

b

Page 16: S ynthesis of Communication Schedules for TTEthernet -based Mixed-Criticality Systems

16

b

b

TT Transmission

CPU

P1,1 τ

1

P1,2 τ

2

B2,Tx

B1,Tx

TTS

P1,3

P2,1τ

4

P2,2τ

3

P2,3

CPUFU

B1,Rx

B2,Rx

ES1

ES2

NS2

NS3

FU

TTR

B1,Tx

B2,Tx

TTS

NS1

SS

f2

f3

f4

TT

a

c

de

f

g

h

ij

k lm

SR

SS

A1: τ

1 à m

1 à τ

3, RC

A2: τ

2 à m

2 à τ

4, TT

a

c

d

e

f

g

h

i

j

k

l

m

Packing message m2 into frame f2

Place f2 in buffer B1,Tx for transmissionSend time specified in send schedule SS

TTS sends f2 to NS1

f2 is sent on the dataflow link to NS1

The Filtering Unit (FU) checks the frame f2

Expected receive time specified in receive schedule SR

TTR checks if f2 arrives according to schedulePlace f2 in buffer B1,Tx for transmission

Send time specified in send schedule SS

FU checks f2

Store the frame into receive buffer B2,Rx

Task τ4 reads f2 from buffer

b

Page 17: S ynthesis of Communication Schedules for TTEthernet -based Mixed-Criticality Systems

17

b

b

TT Transmission

CPU

P1,1 τ

1

P1,2 τ

2

B2,Tx

B1,Tx

TTS

P1,3

P2,1τ

4

P2,2τ

3

P2,3

CPUFU

B1,Rx

B2,Rx

ES1

ES2

NS2

NS3

FU

TTR

B1,Tx

B2,Tx

TTS

NS1

SS

f2

f3

f4

TT

a

c

de

f

g

h

ij

k lm

SR

SS

A1: τ

1 à m

1 à τ

3, RC

A2: τ

2 à m

2 à τ

4, TT

a

c

d

e

f

g

h

i

j

k

l

m

Packing message m2 into frame f2

Place f2 in buffer B1,Tx for transmissionSend time specified in send schedule SS

TTS sends f2 to NS1

f2 is sent on the dataflow link to NS1

The Filtering Unit (FU) checks the frame f2

Expected receive time specified in receive schedule SR

TTR checks if f2 arrives according to schedulePlace f2 in buffer B1,Tx for transmission

Send time specified in send schedule SS

FU checks f2

Store the frame into receive buffer B2,Rx

Task τ4 reads f2 from buffer

b

Page 18: S ynthesis of Communication Schedules for TTEthernet -based Mixed-Criticality Systems

18

b

b

TT Transmission

CPU

P1,1 τ

1

P1,2 τ

2

B2,Tx

B1,Tx

TTS

P1,3

P2,1τ

4

P2,2τ

3

P2,3

CPUFU

B1,Rx

B2,Rx

ES1

ES2

NS2

NS3

FU

TTR

B1,Tx

B2,Tx

TTS

NS1

SS

f2

f3

f4

TT

a

c

de

f

g

h

ij

k lm

SR

SS

A1: τ

1 à m

1 à τ

3, RC

A2: τ

2 à m

2 à τ

4, TT

a

c

d

e

f

g

h

i

j

k

l

m

Packing message m2 into frame f2

Place f2 in buffer B1,Tx for transmissionSend time specified in send schedule SS

TTS sends f2 to NS1

f2 is sent on the dataflow link to NS1

The Filtering Unit (FU) checks the frame f2

Expected receive time specified in receive schedule SR

TTR checks if f2 arrives according to schedulePlace f2 in buffer B1,Tx for transmission

Send time specified in send schedule SS

FU checks f2

Store the frame into receive buffer B2,Rx

Task τ4 reads f2 from buffer

b

Page 19: S ynthesis of Communication Schedules for TTEthernet -based Mixed-Criticality Systems

19

b

b

TT Transmission

CPU

P1,1 τ

1

P1,2 τ

2

B2,Tx

B1,Tx

TTS

P1,3

P2,1τ

4

P2,2τ

3

P2,3

CPUFU

B1,Rx

B2,Rx

ES1

ES2

NS2

NS3

FU

TTR

B1,Tx

B2,Tx

TTS

NS1

SS

f2

f3

f4

TT

a

c

de

f

g

h

ij

k lm

SR

SS

A1: τ

1 à m

1 à τ

3, RC

A2: τ

2 à m

2 à τ

4, TT

a

c

d

e

f

g

h

i

j

k

l

m

Packing message m2 into frame f2

Place f2 in buffer B1,Tx for transmissionSend time specified in send schedule SS

TTS sends f2 to NS1

f2 is sent on the dataflow link to NS1

The Filtering Unit (FU) checks the frame f2

Expected receive time specified in receive schedule SR

TTR checks if f2 arrives according to schedulePlace f2 in buffer B1,Tx for transmission

Send time specified in send schedule SS

FU checks f2

Store the frame into receive buffer B2,Rx

Task τ4 reads f2 from buffer

b

Page 20: S ynthesis of Communication Schedules for TTEthernet -based Mixed-Criticality Systems

20

b

b

TT Transmission

CPU

P1,1 τ

1

P1,2 τ

2

B2,Tx

B1,Tx

TTS

P1,3

P2,1τ

4

P2,2τ

3

P2,3

CPUFU

B1,Rx

B2,Rx

ES1

ES2

NS2

NS3

FU

TTR

B1,Tx

B2,Tx

TTS

NS1

SS

f2

f3

f4

TT

a

c

de

f

g

h

ij

k lm

SR

SS

A1: τ

1 à m

1 à τ

3, RC

A2: τ

2 à m

2 à τ

4, TT

a

c

d

e

f

g

h

i

j

k

l

m

Packing message m2 into frame f2

Place f2 in buffer B1,Tx for transmissionSend time specified in send schedule SS

TTS sends f2 to NS1

f2 is sent on the dataflow link to NS1

The Filtering Unit (FU) checks the frame f2

Expected receive time specified in receive schedule SR

TTR checks if f2 arrives according to schedulePlace f2 in buffer B1,Tx for transmission

Send time specified in send schedule SS

FU checks f2

Store the frame into receive buffer B2,Rx

Task τ4 reads f2 from buffer

b

Page 21: S ynthesis of Communication Schedules for TTEthernet -based Mixed-Criticality Systems

21

b

b

TT Transmission

CPU

P1,1 τ

1

P1,2 τ

2

B2,Tx

B1,Tx

TTS

P1,3

P2,1τ

4

P2,2τ

3

P2,3

CPUFU

B1,Rx

B2,Rx

ES1

ES2

NS2

NS3

FU

TTR

B1,Tx

B2,Tx

TTS

NS1

SS

f2

f3

f4

TT

a

c

de

f

g

h

ij

k lm

SR

SS

A1: τ

1 à m

1 à τ

3, RC

A2: τ

2 à m

2 à τ

4, TT

a

c

d

e

f

g

h

i

j

k

l

m

Packing message m2 into frame f2

Place f2 in buffer B1,Tx for transmissionSend time specified in send schedule SS

TTS sends f2 to NS1

f2 is sent on the dataflow link to NS1

The Filtering Unit (FU) checks the frame f2

Expected receive time specified in receive schedule SR

TTR checks if f2 arrives according to schedulePlace f2 in buffer B1,Tx for transmission

Send time specified in send schedule SS

FU checks f2

Store the frame into receive buffer B2,Rx

Task τ4 reads f2 from buffer

b

Page 22: S ynthesis of Communication Schedules for TTEthernet -based Mixed-Criticality Systems

22

b

b

TT Transmission

CPU

P1,1 τ

1

P1,2 τ

2

B2,Tx

B1,Tx

TTS

P1,3

P2,1τ

4

P2,2τ

3

P2,3

CPUFU

B1,Rx

B2,Rx

ES1

ES2

NS2

NS3

FU

TTR

B1,Tx

B2,Tx

TTS

NS1

SS

f2

f3

f4

TT

a

c

de

f

g

h

ij

k lm

SR

SS

A1: τ

1 à m

1 à τ

3, RC

A2: τ

2 à m

2 à τ

4, TT

a

c

d

e

f

g

h

i

j

k

l

m

Packing message m2 into frame f2

Place f2 in buffer B1,Tx for transmissionSend time specified in send schedule SS

TTS sends f2 to NS1

f2 is sent on the dataflow link to NS1

The Filtering Unit (FU) checks the frame f2

Expected receive time specified in receive schedule SR

TTR checks if f2 arrives according to schedulePlace f2 in buffer B1,Tx for transmission

Send time specified in send schedule SS

FU checks f2

Store the frame into receive buffer B2,Rx

Task τ4 reads f2 from buffer

b

Page 23: S ynthesis of Communication Schedules for TTEthernet -based Mixed-Criticality Systems

23

b

b

TT Transmission

CPU

P1,1 τ

1

P1,2 τ

2

B2,Tx

B1,Tx

TTS

P1,3

P2,1τ

4

P2,2τ

3

P2,3

CPUFU

B1,Rx

B2,Rx

ES1

ES2

NS2

NS3

FU

TTR

B1,Tx

B2,Tx

TTS

NS1

SS

f2

f3

f4

TT

a

c

de

f

g

h

ij

k lm

SR

SS

A1: τ

1 à m

1 à τ

3, RC

A2: τ

2 à m

2 à τ

4, TT

a

c

d

e

f

g

h

i

j

k

l

m

Packing message m2 into frame f2

Place f2 in buffer B1,Tx for transmissionSend time specified in send schedule SS

TTS sends f2 to NS1

f2 is sent on the dataflow link to NS1

The Filtering Unit (FU) checks the frame f2

Expected receive time specified in receive schedule SR

TTR checks if f2 arrives according to schedulePlace f2 in buffer B1,Tx for transmission

Send time specified in send schedule SS

FU checks f2

Store the frame into receive buffer B2,Rx

Task τ4 reads f2 from buffer

b

Page 24: S ynthesis of Communication Schedules for TTEthernet -based Mixed-Criticality Systems

24

b

b

TT Transmission

CPU

P1,1 τ

1

P1,2 τ

2

B2,Tx

B1,Tx

TTS

P1,3

P2,1τ

4

P2,2τ

3

P2,3

CPUFU

B1,Rx

B2,Rx

ES1

ES2

NS2

NS3

FU

TTR

B1,Tx

B2,Tx

TTS

NS1

SS

f2

f3

f4

TT

a

c

de

f

g

h

ij

k lm

SR

SS

A1: τ

1 à m

1 à τ

3, RC

A2: τ

2 à m

2 à τ

4, TT

a

c

d

e

f

g

h

i

j

k

l

m

Packing message m2 into frame f2

Place f2 in buffer B1,Tx for transmissionSend time specified in send schedule SS

TTS sends f2 to NS1

f2 is sent on the dataflow link to NS1

The Filtering Unit (FU) checks the frame f2

Expected receive time specified in receive schedule SR

TTR checks if f2 arrives according to schedulePlace f2 in buffer B1,Tx for transmission

Send time specified in send schedule SS

FU checks f2

Store the frame into receive buffer B2,Rx

Task τ4 reads f2 from buffer

b

Page 25: S ynthesis of Communication Schedules for TTEthernet -based Mixed-Criticality Systems

25

b

b

TT Transmission

CPU

P1,1 τ

1

P1,2 τ

2

B2,Tx

B1,Tx

TTS

P1,3

P2,1τ

4

P2,2τ

3

P2,3

CPUFU

B1,Rx

B2,Rx

ES1

ES2

NS2

NS3

FU

TTR

B1,Tx

B2,Tx

TTS

NS1

SS

f2

f3

f4

TT

a

c

de

f

g

h

ij

k lm

SR

SS

A1: τ

1 à m

1 à τ

3, RC

A2: τ

2 à m

2 à τ

4, TT

a

c

d

e

f

g

h

i

j

k

l

m

Packing message m2 into frame f2

Place f2 in buffer B1,Tx for transmissionSend time specified in send schedule SS

TTS sends f2 to NS1

f2 is sent on the dataflow link to NS1

The Filtering Unit (FU) checks the frame f2

Expected receive time specified in receive schedule SR

TTR checks if f2 arrives according to schedulePlace f2 in buffer B1,Tx for transmission

Send time specified in send schedule SS

FU checks f2

Store the frame into receive buffer B2,Rx

Task τ4 reads f2 from buffer

b

Page 26: S ynthesis of Communication Schedules for TTEthernet -based Mixed-Criticality Systems

26

RC Transmission

CPU

P1,1 τ

1

P1,2 τ

2

Q1,Tx

Q2,Tx

B2,Tx

B1,Tx

TR2

TR1

RCS

TTS

P1,3

P2,1τ

4

P2,2τ

3

P2,3

CPUFU

Q1,Rx

Q2,Rx

B1,Rx

B2,Rx

ES1

ES2

NS2

NS3

FU

TP

TTR

B1,Tx

B2,Tx

TTS

NS1

SS

f2

f3

f4

f1

RC

TT

QTx

1

2 34

5

67

8 9

10

11

12

13

SR

SS

1 Packing message m1 into frame f1

2 Insert it in queue Q1,Tx

3 Traffic Regulator (TR) ensures bandwidth for each VL4 RC scheduler RC multiplexes frames coming from TRs5 TTS transmits f1 when there is no TT traffic6 f1 is sent on the dataflow link to NS1

7 FU checks the validity of the frame

8 Traffic Policing (TP) checks that f2 arrives according to the BAG

9 Copy f1 to outgoing queue QTx10 Send f1 when there is no TT traffic11 FU checks f112

Copy to receiving Q2,Rx13

Task τ3 reads f1 from the queue

A1: τ

1 à m

1 à τ

3, RC

A2: τ

2 à m

2 à τ

4, TT

Page 27: S ynthesis of Communication Schedules for TTEthernet -based Mixed-Criticality Systems

27

RC Transmission

CPU

P1,1 τ

1

P1,2 τ

2

Q1,Tx

Q2,Tx

B2,Tx

B1,Tx

TR2

TR1

RCS

TTS

P1,3

P2,1τ

4

P2,2τ

3

P2,3

CPUFU

Q1,Rx

Q2,Rx

B1,Rx

B2,Rx

ES1

ES2

NS2

NS3

FU

TP

TTR

B1,Tx

B2,Tx

TTS

NS1

SS

f2

f3

f4

f1

RC

TT

QTx

1

2 34

5

67

8 9

10

11

12

13

SR

SS

1 Packing message m1 into frame f1

2 Insert it in queue Q1,Tx

3 Traffic Regulator (TR) ensures bandwidth for each VL4 RC scheduler RC multiplexes frames coming from TRs5 TTS transmits f1 when there is no TT traffic6 f1 is sent on the dataflow link to NS1

7 FU checks the validity of the frame

8 Traffic Policing (TP) checks that f2 arrives according to the BAG

9 Copy f1 to outgoing queue QTx10 Send f1 when there is no TT traffic11 FU checks f112

Copy to receiving Q2,Rx13

Task τ3 reads f1 from the queue

A1: τ

1 à m

1 à τ

3, RC

A2: τ

2 à m

2 à τ

4, TT

Page 28: S ynthesis of Communication Schedules for TTEthernet -based Mixed-Criticality Systems

28

RC Transmission

CPU

P1,1 τ

1

P1,2 τ

2

Q1,Tx

Q2,Tx

B2,Tx

B1,Tx

TR2

TR1

RCS

TTS

P1,3

P2,1τ

4

P2,2τ

3

P2,3

CPUFU

Q1,Rx

Q2,Rx

B1,Rx

B2,Rx

ES1

ES2

NS2

NS3

FU

TP

TTR

B1,Tx

B2,Tx

TTS

NS1

SS

f2

f3

f4

f1

RC

TT

QTx

1

2 34

5

67

8 9

10

11

12

13

SR

SS

1 Packing message m1 into frame f1

2 Insert it in queue Q1,Tx

3 Traffic Regulator (TR) ensures bandwidth for each VL4 RC scheduler RC multiplexes frames coming from TRs5 TTS transmits f1 when there is no TT traffic6 f1 is sent on the dataflow link to NS1

7 FU checks the validity of the frame

8 Traffic Policing (TP) checks that f2 arrives according to the BAG

9 Copy f1 to outgoing queue QTx10 Send f1 when there is no TT traffic11 FU checks f112

Copy to receiving Q2,Rx13

Task τ3 reads f1 from the queue

A1: τ

1 à m

1 à τ

3, RC

A2: τ

2 à m

2 à τ

4, TT

Page 29: S ynthesis of Communication Schedules for TTEthernet -based Mixed-Criticality Systems

29

RC Transmission

CPU

P1,1 τ

1

P1,2 τ

2

Q1,Tx

Q2,Tx

B2,Tx

B1,Tx

TR2

TR1

RCS

TTS

P1,3

P2,1τ

4

P2,2τ

3

P2,3

CPUFU

Q1,Rx

Q2,Rx

B1,Rx

B2,Rx

ES1

ES2

NS2

NS3

FU

TP

TTR

B1,Tx

B2,Tx

TTS

NS1

SS

f2

f3

f4

f1

RC

TT

QTx

1

2 34

5

67

8 9

10

11

12

13

SR

SS

1 Packing message m1 into frame f1

2 Insert it in queue Q1,Tx

3 Traffic Regulator (TR) ensures bandwidth for each VL4 RC scheduler RC multiplexes frames coming from TRs5 TTS transmits f1 when there is no TT traffic6 f1 is sent on the dataflow link to NS1

7 FU checks the validity of the frame

8 Traffic Policing (TP) checks that f2 arrives according to the BAG

9 Copy f1 to outgoing queue QTx10 Send f1 when there is no TT traffic11 FU checks f112

Copy to receiving Q2,Rx13

Task τ3 reads f1 from the queue

A1: τ

1 à m

1 à τ

3, RC

A2: τ

2 à m

2 à τ

4, TT

Page 30: S ynthesis of Communication Schedules for TTEthernet -based Mixed-Criticality Systems

30

RC Transmission

CPU

P1,1 τ

1

P1,2 τ

2

Q1,Tx

Q2,Tx

B2,Tx

B1,Tx

TR2

TR1

RCS

TTS

P1,3

P2,1τ

4

P2,2τ

3

P2,3

CPUFU

Q1,Rx

Q2,Rx

B1,Rx

B2,Rx

ES1

ES2

NS2

NS3

FU

TP

TTR

B1,Tx

B2,Tx

TTS

NS1

SS

f2

f3

f4

f1

RC

TT

QTx

1

2 34

5

67

8 9

10

11

12

13

SR

SS

1 Packing message m1 into frame f1

2 Insert it in queue Q1,Tx

3 Traffic Regulator (TR) ensures bandwidth for each VL4 RC scheduler RC multiplexes frames coming from TRs5 TTS transmits f1 when there is no TT traffic6 f1 is sent on the dataflow link to NS1

7 FU checks the validity of the frame

8 Traffic Policing (TP) checks that f2 arrives according to the BAG

9 Copy f1 to outgoing queue QTx10 Send f1 when there is no TT traffic11 FU checks f112

Copy to receiving Q2,Rx13

Task τ3 reads f1 from the queue

A1: τ

1 à m

1 à τ

3, RC

A2: τ

2 à m

2 à τ

4, TT

Page 31: S ynthesis of Communication Schedules for TTEthernet -based Mixed-Criticality Systems

31

RC Transmission

CPU

P1,1 τ

1

P1,2 τ

2

Q1,Tx

Q2,Tx

B2,Tx

B1,Tx

TR2

TR1

RCS

TTS

P1,3

P2,1τ

4

P2,2τ

3

P2,3

CPUFU

Q1,Rx

Q2,Rx

B1,Rx

B2,Rx

ES1

ES2

NS2

NS3

FU

TP

TTR

B1,Tx

B2,Tx

TTS

NS1

SS

f2

f3

f4

f1

RC

TT

QTx

1

2 34

5

67

8 9

10

11

12

13

SR

SS

1 Packing message m1 into frame f1

2 Insert it in queue Q1,Tx

3 Traffic Regulator (TR) ensures bandwidth for each VL4 RC scheduler RC multiplexes frames coming from TRs5 TTS transmits f1 when there is no TT traffic6 f1 is sent on the dataflow link to NS1

7 FU checks the validity of the frame

8 Traffic Policing (TP) checks that f2 arrives according to the BAG

9 Copy f1 to outgoing queue QTx10 Send f1 when there is no TT traffic11 FU checks f112

Copy to receiving Q2,Rx13

Task τ3 reads f1 from the queue

A1: τ

1 à m

1 à τ

3, RC

A2: τ

2 à m

2 à τ

4, TT

Page 32: S ynthesis of Communication Schedules for TTEthernet -based Mixed-Criticality Systems

32

RC Transmission

CPU

P1,1 τ

1

P1,2 τ

2

Q1,Tx

Q2,Tx

B2,Tx

B1,Tx

TR2

TR1

RCS

TTS

P1,3

P2,1τ

4

P2,2τ

3

P2,3

CPUFU

Q1,Rx

Q2,Rx

B1,Rx

B2,Rx

ES1

ES2

NS2

NS3

FU

TP

TTR

B1,Tx

B2,Tx

TTS

NS1

SS

f2

f3

f4

f1

RC

TT

QTx

1

2 34

5

67

8 9

10

11

12

13

SR

SS

1 Packing message m1 into frame f1

2 Insert it in queue Q1,Tx

3 Traffic Regulator (TR) ensures bandwidth for each VL4 RC scheduler RC multiplexes frames coming from TRs5 TTS transmits f1 when there is no TT traffic6 f1 is sent on the dataflow link to NS1

7 FU checks the validity of the frame

8 Traffic Policing (TP) checks that f2 arrives according to the BAG

9 Copy f1 to outgoing queue QTx10 Send f1 when there is no TT traffic11 FU checks f112

Copy to receiving Q2,Rx13

Task τ3 reads f1 from the queue

A1: τ

1 à m

1 à τ

3, RC

A2: τ

2 à m

2 à τ

4, TT

Page 33: S ynthesis of Communication Schedules for TTEthernet -based Mixed-Criticality Systems

33

RC Transmission

CPU

P1,1 τ

1

P1,2 τ

2

Q1,Tx

Q2,Tx

B2,Tx

B1,Tx

TR2

TR1

RCS

TTS

P1,3

P2,1τ

4

P2,2τ

3

P2,3

CPUFU

Q1,Rx

Q2,Rx

B1,Rx

B2,Rx

ES1

ES2

NS2

NS3

FU

TP

TTR

B1,Tx

B2,Tx

TTS

NS1

SS

f2

f3

f4

f1

RC

TT

QTx

1

2 34

5

67

8 9

10

11

12

13

SR

SS

1 Packing message m1 into frame f1

2 Insert it in queue Q1,Tx

3 Traffic Regulator (TR) ensures bandwidth for each VL4 RC scheduler RC multiplexes frames coming from TRs5 TTS transmits f1 when there is no TT traffic6 f1 is sent on the dataflow link to NS1

7 FU checks the validity of the frame

8 Traffic Policing (TP) checks that f2 arrives according to the BAG

9 Copy f1 to outgoing queue QTx10 Send f1 when there is no TT traffic11 FU checks f112

Copy to receiving Q2,Rx13

Task τ3 reads f1 from the queue

A1: τ

1 à m

1 à τ

3, RC

A2: τ

2 à m

2 à τ

4, TT

Page 34: S ynthesis of Communication Schedules for TTEthernet -based Mixed-Criticality Systems

34

RC Transmission

CPU

P1,1 τ

1

P1,2 τ

2

Q1,Tx

Q2,Tx

B2,Tx

B1,Tx

TR2

TR1

RCS

TTS

P1,3

P2,1τ

4

P2,2τ

3

P2,3

CPUFU

Q1,Rx

Q2,Rx

B1,Rx

B2,Rx

ES1

ES2

NS2

NS3

FU

TP

TTR

B1,Tx

B2,Tx

TTS

NS1

SS

f2

f3

f4

f1

RC

TT

QTx

1

2 34

5

67

8 9

10

11

12

13

SR

SS

1 Packing message m1 into frame f1

2 Insert it in queue Q1,Tx

3 Traffic Regulator (TR) ensures bandwidth for each VL4 RC scheduler RC multiplexes frames coming from TRs5 TTS transmits f1 when there is no TT traffic6 f1 is sent on the dataflow link to NS1

7 FU checks the validity of the frame

8 Traffic Policing (TP) checks that f2 arrives according to the BAG

9 Copy f1 to outgoing queue QTx10 Send f1 when there is no TT traffic11 FU checks f112

Copy to receiving Q2,Rx13

Task τ3 reads f1 from the queue

A1: τ

1 à m

1 à τ

3, RC

A2: τ

2 à m

2 à τ

4, TT

Page 35: S ynthesis of Communication Schedules for TTEthernet -based Mixed-Criticality Systems

35

RC Transmission

CPU

P1,1 τ

1

P1,2 τ

2

Q1,Tx

Q2,Tx

B2,Tx

B1,Tx

TR2

TR1

RCS

TTS

P1,3

P2,1τ

4

P2,2τ

3

P2,3

CPUFU

Q1,Rx

Q2,Rx

B1,Rx

B2,Rx

ES1

ES2

NS2

NS3

FU

TP

TTR

B1,Tx

B2,Tx

TTS

NS1

SS

f2

f3

f4

f1

RC

TT

QTx

1

2 34

5

67

8 9

10

11

12

13

SR

SS

1 Packing message m1 into frame f1

2 Insert it in queue Q1,Tx

3 Traffic Regulator (TR) ensures bandwidth for each VL4 RC scheduler RC multiplexes frames coming from TRs5 TTS transmits f1 when there is no TT traffic6 f1 is sent on the dataflow link to NS1

7 FU checks the validity of the frame

8 Traffic Policing (TP) checks that f2 arrives according to the BAG

9 Copy f1 to outgoing queue QTx10 Send f1 when there is no TT traffic11 FU checks f112

Copy to receiving Q2,Rx13

Task τ3 reads f1 from the queue

A1: τ

1 à m

1 à τ

3, RC

A2: τ

2 à m

2 à τ

4, TT

Page 36: S ynthesis of Communication Schedules for TTEthernet -based Mixed-Criticality Systems

36

RC Transmission

CPU

P1,1 τ

1

P1,2 τ

2

Q1,Tx

Q2,Tx

B2,Tx

B1,Tx

TR2

TR1

RCS

TTS

P1,3

P2,1τ

4

P2,2τ

3

P2,3

CPUFU

Q1,Rx

Q2,Rx

B1,Rx

B2,Rx

ES1

ES2

NS2

NS3

FU

TP

TTR

B1,Tx

B2,Tx

TTS

NS1

SS

f2

f3

f4

f1

RC

TT

QTx

1

2 34

5

67

8 9

10

11

12

13

SR

SS

1 Packing message m1 into frame f1

2 Insert it in queue Q1,Tx

3 Traffic Regulator (TR) ensures bandwidth for each VL4 RC scheduler RC multiplexes frames coming from TRs5 TTS transmits f1 when there is no TT traffic6 f1 is sent on the dataflow link to NS1

7 FU checks the validity of the frame

8 Traffic Policing (TP) checks that f2 arrives according to the BAG

9 Copy f1 to outgoing queue QTx10 Send f1 when there is no TT traffic11 FU checks f112

Copy to receiving Q2,Rx13

Task τ3 reads f1 from the queue

A1: τ

1 à m

1 à τ

3, RC

A2: τ

2 à m

2 à τ

4, TT

Page 37: S ynthesis of Communication Schedules for TTEthernet -based Mixed-Criticality Systems

37

RC Transmission

CPU

P1,1 τ

1

P1,2 τ

2

Q1,Tx

Q2,Tx

B2,Tx

B1,Tx

TR2

TR1

RCS

TTS

P1,3

P2,1τ

4

P2,2τ

3

P2,3

CPUFU

Q1,Rx

Q2,Rx

B1,Rx

B2,Rx

ES1

ES2

NS2

NS3

FU

TP

TTR

B1,Tx

B2,Tx

TTS

NS1

SS

f2

f3

f4

f1

RC

TT

QTx

1

2 34

5

67

8 9

10

11

12

13

SR

SS

1 Packing message m1 into frame f1

2 Insert it in queue Q1,Tx

3 Traffic Regulator (TR) ensures bandwidth for each VL4 RC scheduler RC multiplexes frames coming from TRs5 TTS transmits f1 when there is no TT traffic6 f1 is sent on the dataflow link to NS1

7 FU checks the validity of the frame

8 Traffic Policing (TP) checks that f2 arrives according to the BAG

9 Copy f1 to outgoing queue QTx10 Send f1 when there is no TT traffic11 FU checks f112

Copy to receiving Q2,Rx13

Task τ3 reads f1 from the queue

A1: τ

1 à m

1 à τ

3, RC

A2: τ

2 à m

2 à τ

4, TT

Page 38: S ynthesis of Communication Schedules for TTEthernet -based Mixed-Criticality Systems

38

RC Transmission

CPU

P1,1 τ

1

P1,2 τ

2

Q1,Tx

Q2,Tx

B2,Tx

B1,Tx

TR2

TR1

RCS

TTS

P1,3

P2,1τ

4

P2,2τ

3

P2,3

CPUFU

Q1,Rx

Q2,Rx

B1,Rx

B2,Rx

ES1

ES2

NS2

NS3

FU

TP

TTR

B1,Tx

B2,Tx

TTS

NS1

SS

f2

f3

f4

f1

RC

TT

QTx

1

2 34

5

67

8 9

10

11

12

13

SR

SS

1 Packing message m1 into frame f1

2 Insert it in queue Q1,Tx

3 Traffic Regulator (TR) ensures bandwidth for each VL4 RC scheduler RC multiplexes frames coming from TRs5 TTS transmits f1 when there is no TT traffic6 f1 is sent on the dataflow link to NS1

7 FU checks the validity of the frame

8 Traffic Policing (TP) checks that f2 arrives according to the BAG

9 Copy f1 to outgoing queue QTx10 Send f1 when there is no TT traffic11 FU checks f112

Copy to receiving Q2,Rx13

Task τ3 reads f1 from the queue

A1: τ

1 à m

1 à τ

3, RC

A2: τ

2 à m

2 à τ

4, TT

Page 39: S ynthesis of Communication Schedules for TTEthernet -based Mixed-Criticality Systems

39

Problem formulationGiven

The topology of the network G The set of TT and RC frames FTT and FRC

The set of virtual links VL The assignment of frames to virtual links M For each frame the size, the deadline and the period

Page 40: S ynthesis of Communication Schedules for TTEthernet -based Mixed-Criticality Systems

40

Problem formulationGiven

The topology of the network G The set of TT and RC frames FTT and FRC

The set of virtual links VL The assignment of frames to virtual links M For each frame the size, the deadline and the period

Determine The set of TT schedules

Page 41: S ynthesis of Communication Schedules for TTEthernet -based Mixed-Criticality Systems

41

Problem formulationGiven

The topology of the network G The set of TT and RC frames FTT and FRC

The set of virtual links VL The assignment of frames to virtual links M For each frame the size, the deadline and the period

Determine The set of TT schedules

Such that The deadlines for the TT and RC frames are satisfied The end-to-end delay of RC frames is minimized

Page 42: S ynthesis of Communication Schedules for TTEthernet -based Mixed-Criticality Systems

42

Motivational Example

ES1

ES2

NS1 ES3

vl3

vl1

vl2

period (us) deadline (us) Ci (us) M

f1 ∈ FRC 300 300 75 vl1

f2 ∈ FTT 200 200 50 vl2

f3 ∈ FTT 300 300 50 vl3

Page 43: S ynthesis of Communication Schedules for TTEthernet -based Mixed-Criticality Systems

43

Motivational Example

ES1

ES2

NS1 ES3

vl3

vl1

vl2

period (us)

deadline (us) Ci (us) M

f1 ∈ FRC 300 300 75 vl1f2 ∈ FTT 200 200 50 vl2f3 ∈ FTT 300 300 50 vl3

Initial TT schedule

Page 44: S ynthesis of Communication Schedules for TTEthernet -based Mixed-Criticality Systems

44

Motivational Example

ES1

ES2

NS1 ES3

vl3

vl1

vl2

period (us)

deadline (us) Ci (us) M

f1 ∈ FRC 300 300 75 vl1f2 ∈ FTT 200 200 50 vl2f3 ∈ FTT 300 300 50 vl3

Optimized TT schedule

Page 45: S ynthesis of Communication Schedules for TTEthernet -based Mixed-Criticality Systems

45

Optimization Strategy

TTEthernet Schedule Optimization (TTESO) strategy: Tabu Search meta-heuristic

The TT schedules S Such that:

TT and RC frames are schedulable The end-to-end delay of the RC frames is minimized

Tabu Search Minimizes the cost function Explores the solution space using design transformations

Page 46: S ynthesis of Communication Schedules for TTEthernet -based Mixed-Criticality Systems

46

Optimization StrategyDegree of schedulability

Captures the difference between the worst-case delay and deadline

Cost Function

Page 47: S ynthesis of Communication Schedules for TTEthernet -based Mixed-Criticality Systems

47

Optimization Strategy: Design Transformations

TT frame moves advance frame transmission time advance frame predecessors transmission time postpone frame transmission time postpone frame successors transmission time

RC frame moves reserve space for RC frame resize reserved space for RC frame remove reserved space for RC frame

Page 48: S ynthesis of Communication Schedules for TTEthernet -based Mixed-Criticality Systems

48

Frame Representation for Moves

ES1

ES2

NS1 NS2

ES3

ES4vl1

f1,1[ES1, NS1] f1,1

[NS1, NS2]

f1,1[NS1, NS2]

f1,1[NS1, NS2]

Page 49: S ynthesis of Communication Schedules for TTEthernet -based Mixed-Criticality Systems

49

Design transformations: Postpone move

Page 50: S ynthesis of Communication Schedules for TTEthernet -based Mixed-Criticality Systems

50

Design transformations: Advance move

Page 51: S ynthesis of Communication Schedules for TTEthernet -based Mixed-Criticality Systems

51

Design transformations: Reserve space for RC

Page 52: S ynthesis of Communication Schedules for TTEthernet -based Mixed-Criticality Systems

52

Design transformations: Resize RC reserved space

Page 53: S ynthesis of Communication Schedules for TTEthernet -based Mixed-Criticality Systems

53

RC Frame End-to-End Analysis

On a dataflow link, a RC frame can be delayed by: scheduled TT frames queued RC frames technical latency policy specific:

timely block pre-emption

Page 54: S ynthesis of Communication Schedules for TTEthernet -based Mixed-Criticality Systems

54

RC Frame End-to-End Analysis

ES1

NS2

NS1 ES4

vl3

vl2vl1

NS3

NS2 → NS

1f

3,j

0 100 200 300 400 500 600

f4,1NS

3 → NS

1

NS1 → ES

4

f2,1ES

1 → NS

1f

1,i

f2,1

f4,1

f1,i

f3,j

C [NS1, ES

4]

f1

QTT

[NS1, ES

4] QRC

[NS1, ES

4]

QTL

NS1

R f1

vl4

Page 55: S ynthesis of Communication Schedules for TTEthernet -based Mixed-Criticality Systems

55

RC Frame End-to-End Analysis

Approaches for analysis of ARINC 644p7 network traffic: Network Calculus, (Boyer, 2008) Finite State Machine, (Saha, 2007) Timed Automata, (Adnan, 2010) Trajectory Approach, (Bauer, 2009)

We use the method proposed in (Steiner, 2011) it takes into account also the TT traffic it is pessimistic:

does not ignore frames that already delayed a RC frame on a previous link

assumes uniformly distributed intervals of equal length reserved for RC traffic

Page 56: S ynthesis of Communication Schedules for TTEthernet -based Mixed-Criticality Systems

56

Experimental Results

Benchmarks 17 synthetic 1 real life test cases based on the SAE Automotive benchmark

TTESO compared to: Straightforward Solution (SS)

Builds TT schedules with the goal of minimizing the end-to-end delay of TT frames, without considering the RC frames

Page 57: S ynthesis of Communication Schedules for TTEthernet -based Mixed-Criticality Systems

57

Experimental Results

Page 58: S ynthesis of Communication Schedules for TTEthernet -based Mixed-Criticality Systems

58

Experimental Results

Page 59: S ynthesis of Communication Schedules for TTEthernet -based Mixed-Criticality Systems

59

Experimental Results

Page 60: S ynthesis of Communication Schedules for TTEthernet -based Mixed-Criticality Systems

60

Experimental Results

Page 61: S ynthesis of Communication Schedules for TTEthernet -based Mixed-Criticality Systems

61

Experimental Results

Page 62: S ynthesis of Communication Schedules for TTEthernet -based Mixed-Criticality Systems

62

ConclusionsTTEthernet is very well suited for mixed-criticality applications

Predictability is achieved using three classes of traffic: TT, RC and BE Spatial separation is achieved trough virtual links Temporal separation is enforced by schedule tables for TT traffic and

bandwidth allocation for RC traffic

We have addressed the optimization of the TTEthernet protocol The TT schedules are determined such that TT and RC frames are

schedulable, and the end-to-end delay of the RC frames is minimized

Optimization tools are needed to support the designer in order to obtain schedulable solutions We have proposed a Tabu Search-based optimization solution

Page 63: S ynthesis of Communication Schedules for TTEthernet -based Mixed-Criticality Systems

63