Chapitre 5 r seaux embarqu s de type tdma time division multiple access l.jpg
This presentation is the property of its rightful owner.
Sponsored Links
1 / 53

Chapitre 5 Réseaux embarqués de type « TDMA » Time Division Multiple Access PowerPoint PPT Presentation


  • 146 Views
  • Uploaded on
  • Presentation posted in: General

Ingénieur Civil des Mines 2ème année Conception Sûre des Systèmes Embarqués et Ambiants – Module SI342b. Chapitre 5 Réseaux embarqués de type « TDMA » Time Division Multiple Access. 2006 – 2007 Françoise Simonot-Lion ([email protected]). TTP/C Flexray.

Download Presentation

Chapitre 5 Réseaux embarqués de type « TDMA » Time Division Multiple Access

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


Chapitre 5 r seaux embarqu s de type tdma time division multiple access l.jpg

Ingénieur Civil des Mines

2ème année

Conception Sûre des Systèmes Embarqués et Ambiants – Module SI342b

Chapitre 5Réseaux embarqués de type « TDMA »Time Division Multiple Access

2006 – 2007

Françoise Simonot-Lion ([email protected])

  • TTP/C

  • Flexray

Certains transparents de ce cours proviennent

  • du cours de Nicolas Navet (ENSEM – EMN / 2003-2004)

  • du cours de Philip Koopman (Carnegie Mellon / 2004)

  • des transparents disponibles sur le site de TTTech

  • du document TTP/C, High Level SpecificationDocument Protocol v1.1


Pourquoi des r seaux guid s par le temps 1 l.jpg

Pourquoi des réseaux guidés par le temps - 1

  • Futures applications embarquées « X-by-Wire »

    • Domaine « chassis » et « contrôle moteur »

    • Connexion mécanique entre les constituants du système remplacée par une connexion numérique

    • Avantages

      • bruit, vibrations, poids, encombrement, …

      • coût de maintenance, …

      • évolutivité du système

      • confort de conduite, assistance à la conduite, …

    • Problèmes

      • Vérifier, prouver la sûreté de fonctionnement du système

CSSEA SI342b


Pourquoi des r seaux guid s par le temps 2 l.jpg

conducteur

processus à contrôler

c

a

Système de contrôle

Capteurs de

consigne

conducteur

réseau

Pourquoi des réseaux guidés par le temps - 2

  • Plusieurs cas de figures

    • Cas 1 : seule la consigne conducteur est transmise via un réseau

CSSEA SI342b


Pourquoi des r seaux guid s par le temps 3 l.jpg

c

a

Capteurs de

consigne

conducteur

capteurs

actionneurs

réseau

calculateurs

Système de contrôle

Pourquoi des réseaux guidés par le temps - 3

  • Plusieurs cas de figures

    • Cas 2 : capteurs de consigne / capteurs processus / actionneurs / calculateurs partagent le même réseau

conducteur + processus à contrôler

CSSEA SI342b


Pourquoi des r seaux guid s par le temps 4 l.jpg

Capteurs environnement (caméra)

Capteur angle volant

Retour de force

Volant

Assistance à la conduite

Actionneurs

de direction

Réseau

Capteur angle roue

Pourquoi des réseaux guidés par le temps - 4

  • Exemple : « steer-by-Wire »

CSSEA SI342b


Syst mes x by wire et architecture de communication l.jpg

Systèmes X-by-Wire et architecture de communication

  • Besoins en termes de systèmes de communication

    • Déterminisme, robustesse, tolérance aux fautes (détection, surveillance, tolérance)

    • Composabilité (intégration de fonctions au sein d’un ECU, au sein d’un ensemble d’ECU)

  • Des réseaux TDMA (« Time Division Multiple Access ») – Pourquoi ?

    • Déterminisme assuré par une pré-affectation des intervalles de temps (« slots ») aux messages et aux stations

    • Preuve « facile » à obtenir (temps de réponse borné, …)

    • Composabilité assurée par un placement dans les « slots » des divers acteurs communicants

  • Conception d’architectures d’applications « guidées par le temps »

CSSEA SI342b


R seaux de communication embarqu s de type tdma l.jpg

Réseaux de communication embarqués de type TDMA

  • TTP/C

    • Première publication en 1994

    • Hermann Kopetz – Université de Vienne, Autriche (brevet en 1997)

    • Abondamment étudié, prouvé, testé

    • Systèmes embarqués dans l’automobile  autres applications (aviation, transport ferroviaire, …)

    • Des produits : TTTech (www.tttech.com/)

  • FlexRay

    • Une initiative de l’industrie automobile (1999) – intégration de Byteflight (BMW)

    • Plus de flexibilité (ne remet pas en cause les applications déployées au-dessus de CAN)

    • Pour l’instant, le protocole reste à valider

    • Produits à venir

CSSEA SI342b


Ttp c time triggered protocol pour les applications de classe c temps r el dur l.jpg

TTP/C - « Time Triggered Protocol »pour les applications de classe C (temps réel « dur »)

  • Quelques sites

    • http://www.vmars.tuwien.ac.at/frame-home.html

    • http://tttech.com/technology/articles.htm

      Projets connexes

    • https://www.decos.at/index.php

    • http://www.vmars.tuwien.ac.at/projects/xbywire/index.html

CSSEA SI342b


Caract ristiques g n rales l.jpg

Caractéristiques générales

  • Ordonnancement cyclique des messages

  • Accès au médium sur une base de temps stable (pas de collision)

  • Tolérance aux fautes intégrée dans le protocole (support physique redondant)

  • Débits

    500kbits/s – 1Mbits/s – 2Mbits/s – 5 Mbits/s – 25 Mbits/s

  • Topologie : bus ou étoile

conforme aux applications relevant de la classe C (D)

CSSEA SI342b


Structure d un r seau ttp c l.jpg

CNI

(échange de données)

Application

Locale

1 micro-contrôleur

Application

Locale

1 micro-contrôleur

Application

Locale

1 micro-contrôleur

Communication

Network

Interface

Communication

Network

Interface

Communication

Network

Interface

Contrôleur

de

Communication

Contrôleur

de

Communication

Contrôleur

de

Communication

SRU

(Smallest Replaceable Unit)

Structure d’un réseau TTP/C

Capteurs / actionneurs

Partie applicative

CNI

CC

Partie communication

Bus physique redondé

CSSEA SI342b


Principe de fonctionnement ttp c l.jpg

Principe de fonctionnement - TTP/C

Exemple d’application

Nœud

Producteur 1

Nœud

Producteur 2

b

a

Réseau

a,b

b

Nœud

Consommateur 1

Nœud

Consommateur 2

CSSEA SI342b


Principe de fonctionnement ttp c12 l.jpg

t

a1

a2

a3

a4

a5

a6

a7

Nœud

Producteur 1

CNI

?

a1

a2

a3

a4

a5

a6

b1

b2

b3

b4

Nœud

Producteur 2

CNI

a1

b2

a4

b2

Principe de fonctionnement - TTP/C

?

b1

b1

b2

b2

b3

b5

b4

b6

Réseau

Nœud

Consommateur 1

Nœud

Consommateur 2

CSSEA SI342b


Principe de fonctionnement ttp c13 l.jpg

t

a1

a2

a3

a4

a5

a6

a7

Nœud

Producteur 1

CNI

?

a1

a2

a3

a4

a5

a6

b1

b2

b3

b4

Nœud

Producteur 2

CNI

?

b1

b2

b3

b4

Réseau

a1

b2

a4

b2

a1

a4

b2

b2

b2

b2

Principe de fonctionnement - TTP/C

CNI

?

?

Nœud

Consommateur 1

CNI

?

Nœud

Consommateur 2

CSSEA SI342b


Principe de fonctionnement ttp c14 l.jpg

Principe de fonctionnement - TTP/C

t

a1

a2

a3

a4

a5

a6

a7

Nœud

Producteur 1

CNI

?

a1

a2

a3

a4

a5

a6

b1

b2

b3

b4

Nœud

Producteur 2

CNI

?

b1

b2

b3

b4

Réseau

a1

b2

a4

b2

CNI

?

a1

a4

?

b2

b2

Nœud

Consommateur 1

CNI

b2

b2

?

Nœud

Consommateur 2

CSSEA SI342b


Un n ud ttp l.jpg

Interface d’entrées/sorties avec l’environnement

Micro-contrôleur (CPU, RAM, ROM)

supportant les tâches applicatives locales

MEDL

Données de

contrôle

TTP/C (ROM)

  • Chien de garde matériel pour garantir un comportement « fail silent »

  • Garde contre le

  • « babbling idiot »

Gardien

de bus

Gardien

de bus

« Message Descriptor List »

Un nœud TTP

CNIDPRAM (Dual Ported RAM)

Contrôleur

Gestion du protocole

TTP/C

CSSEA SI342b


Topologies ttp c l.jpg

Noeud

Noeud

Noeud

Noeud

Bus

Noeud

Noeud

SC

Etoile

SC

Noeud

Noeud

Noeud

Noeud

Noeud

Noeud

Noeud

SC

Noeud

Multi-Etoiles

SC

SC

SC

Noeud

Noeud

SC

Combinaison Bus/Etoile

Noeud

Noeud

SC

Topologies TTP/C

CSSEA SI342b


Cluster et fault tolerant unit ftu l.jpg

Noeud

Noeud

Noeud

Noeud

Noeud

Noeud

Cluster et « Fault Tolerant Unit » (FTU)

FTU

Bus

  • FTU : ensemble des nœuds réalisant les mêmes calculs (redondance de nœuds)

  • Réplication des informations transmises : chaque nœud émet la même information (3 réplicas / 1 information dans l’exemple)

  • Cluster : tous les nœuds connectés sur un réseau particulier

CSSEA SI342b


Fault tolerance shadow sru l.jpg

Noeud

Fault Tolerance - Shadow SRU

Nœud fantôme

Noeud

Bus

  • Le nœud fantôme :

    • émet uniquement si le nœud principal est défaillant,

    • et, dans ce cas, émet dans le « slot » du nœud principal

CSSEA SI342b


Protocoles de type tdma principes l.jpg

Sync

Nœud

Maître

Nœud

A

Nœud

B

Nœud

C

1

2

3

4

Bus

1

2

3

4

1

2

3

4

t

slot

round

Protocoles de type TDMA – Principes

  • Un « slot » est un intervalle de temps durant lequel une station émet un message

  • Un « round » TDMA est une séquence de slots telle que chaque station parle exactement 1 fois

CSSEA SI342b


Ttp c tdma l.jpg

TTP/C – TDMA

  • Un nœud (une FTU) peut vouloir transmettre plusieurs messages

    • Mais 1 slot / nœud dans chaque « round »

  •  dans un round TDMA,

    • chaque nœud (de chaque FTU) transmet un message (un « réplica » du message) dans son slot (sur chaque bus)

    • le round se termine quand tous les nœuds (de tous les FTU) ont envoyé un message

  • Plusieurs « round » TDMA différents par les messages peuvent être définis (ordre et taille des slots identiques pour tous les rounds)

  • Le « Cluster Cycle » est la suite de tous les « rounds TDMA »

  • Un « Cluster Cycle » est exécuté en boucle

  • Une spécification de « Cluster Cycle » est définie pour chaque mode de marche

CSSEA SI342b


Ttp c ordonnancement des messages l.jpg

A

A

A

M

M

M

2

1

1

B

B

B

M

M

M

1

1

2

C

C

C

M

M

M

D

D

D

M

M

M

2

1

1

2

1

1

TTP/C – ordonnancement des messages

A

B

C

D

A

B

C

D

A

B

C

D

Noeud

Message

Canal 1

t

Canal 2

1 TDMA round

1 TDMA round

1 Cluster Cycle

CSSEA SI342b


Ttp c ordonnancement des messages et tol rance aux fautes l.jpg

TTP/C – ordonnancement des messages et Tolérance aux fautes

  • FTU

    • Un slot par nœud de la FTU dans chaque « TDMA round »

    • La redondance n’est pas traitée au niveau du protocole mais au niveau supérieur (par exemple, dans OSEK-FTCom)

      • 2 nœuds par FTU ? Assure la transmission en cas de défaillance unique de l’un des nœuds – « protection dans le domaine temporel » – pas de conclusion possible en cas de valeurs transmises divergentes

      • 3 nœuds par FTU ? Conclusion possible en cas de valeurs divergentes (moyenne, par exemple) – « protection dans le domaine des valeurs »

  • « Shadow Node »

    • Un seul slot pour le nœud et son nœud fantôme dans chaque « TDMA round »

CSSEA SI342b


Ttp c message descriptor list medl l.jpg

TTP/C – Message Descriptor List (MEDL)

  • Chaque nœud connaît l’ordonnancement statique de tous les messages du « Cluster Cycle » pour chaque mode de marche

  • Dans un mode de marche donné, à un instant t donné, dans un « Cluster Cycle » correspond :

    • un et un seul nœud

    • un et un seul message

  • Pas d’arbitrage pour l’accès au bus

  • Synchronisation des horloges

  • Arbitrage pour le démarrage et l’intégration de nœuds en ligne

CSSEA SI342b


Ttp c gardien de bus bus guardian 1 l.jpg

TTP/C – Gardien de bus (« Bus Guardian ») -1

  • Garantit que le processeur de protocole n’émet des données sur le bus que dans le slot prévu

    • Protection contre les stations qui sont désynchronisées

    • Protection contre les stations bavardes (« babbling idiot »)

  • Le gardien de bus devrait :

    • avoir sa propre horloge

    • ne pas être trop proche physiquement du processeur de protocole (éviter les modes de défaillance communs)

    • avoir sa propre alimentation électrique

CSSEA SI342b


Ttp c gardien de bus bus guardian 2 l.jpg

A

A

A

M

M

M

1

1

2

A

B

C

D

A

B

C

D

A

B

C

D

Noeud

Canal 1

B

B

B

M

M

M

t

Canal 2

2

1

1

C

C

C

M

M

M

D

D

D

M

M

M

2

1

1

2

1

1

Slot B

Slot B

Slot B

Round-Slot B

TTP/C – Gardien de bus (« Bus Guardian ») -2

  • Sur un nœud N, ouverture de la ligne uniquement aux instants spécifiés dans la MEDL

    • exemple, sur le nœud B

CSSEA SI342b


Trames ttp c l.jpg

Trames TTP/C

  • Trame de démarrage (« cold start frame »)

Type

Date globale

Slot de l’émetteur

CRC

  • Trame avec « C-State » explicite

Type

Changement

de mode

C-State

émetteur

« Application

Data »

CRC

16 octets maximum

  • Trame avec « C-State » implicite

Type

Changement

de mode

« Application

Data »

CRC

4 bits

16 bits

CSSEA SI342b


Trames ttp c vocabulaire l.jpg

Application

Message

1

Message

2

Message

3

Hors

Protocole

Message

1

Message

2

Message

3

Message

1

Message

2

Message

3

CNI

« Application Data »

Protocole

Type

Changement

de mode

C-State

émetteur

CRC

Protocole

Trame

Trames TTP/C - vocabulaire

  • Exemple sur une trame avec « C-State » explicite

CSSEA SI342b


Trames ttp c calcul du crc l.jpg

Type

Changement

de mode

C-State

émetteur

« Application

Data »

CRC

Type

Changement

de mode

« Application

Data »

CRC

C-State

émetteur

Trames TTP/C – Calcul du CRC

  • Trame avec « C-State » explicite

Calcul du CRC

  • Trame avec « C-State » implicite

Calcul du CRC

CSSEA SI342b


Trames ttp c validit d une trame pour un n ud r cepteur l.jpg

Trames TTP/C – validité d’une trame pour un nœud récepteur

  • Pour qu’une trame soit acceptée par le nœud qui la reçoit, il faut :

    • qu’elle soit « valide » (conforme à la spécification indiquée dans la MEDL du nœud récepteur)

    • et « correcte » :

      • pour une trame à « C-State » explicite,

        • CRC reçu = CRC calculé

        • et C-State dans la trame = C-State de la station réceptrice

      • pour une trame à « C-State » implicite,

        • CRC reçu = CRC calculé

CSSEA SI342b


Trames ttp c phases de transmission l.jpg

Durée du slot pour le nœud i

Durée du slot pour le nœud i+1

PRP

idle

PSP

TP

PRP

idle

PSP

TP

PRP

idle

PSP

slot i dans le « TDMA round »

slot i+1 dans le « TDMA round »

AT

Action Time

IFG

Inter Frame Gap

Trames TTP/C – phases de transmission

PSP (Pre Send Phase) – TP (Transmission Phase) – PRP (Post Receive Phase)

CSSEA SI342b


Ttp c synchronisation des horloges l.jpg

TTP/C – Synchronisation des horloges

  • Pas de trafic supplémentaire pour synchroniser les horloges

  • 4 nœuds au minimum doivent être « Master Clocks »

    • Dérive maximale de leurs horloges de 10-4 s/s

  • Chaque nœud récepteur compare son horloge à l’horloge de l’émetteur (si celui-ci est « Master Clock »)

    • Si la différence absolue est supérieure à p/2 (p est la précision demandée), le nœud récepteur se considère incorrect (déconnexion)

    • Sinon, le nœud remet à jour son horloge (et les données impliquées)

CSSEA SI342b


Ttp c c state l.jpg

TTP/C – C-State

  • Chaque nœud N émetteur construit et éventuellement transmet dans son « slot » une structure de donnée C-State, qui comprend :

    • horloge de transmission du nœud N (Master Clock)

    • numéro du slot attribué au nœud N dans ce « TDMA round »

    • demande de changement de mode au prochain « Cluster Cycle »

    • vecteur local de « Membership »

      vecteur de la vision qu’a le nœud N de tous

      les nœuds du « Cluster » (vivant / non reconnu vivant)

CSSEA SI342b


Ttp c m canisme d acquittement 1 l.jpg

TTP/C – Mécanisme d’acquittement - 1

  • Acquittement non explicite

  • L’acquittement est déterminé par le nœud N, émetteur dans le slot i, après un traitement des trames en provenance de ses deux successeurs (au plus) dans le TDMA round

    • relation « successeur » de nœud (relation dynamique)

  • Le processus d’acquittement repose sur la comparaison du vecteur de Membership local au nœud N avec les vecteurs de Membership transmis dans les trames

    • Seules les trames valides (émises dans leur slot, longueur correcte) sont analysées

    • Trames à C-State explicite / Trames à C-State implicite

CSSEA SI342b


Ttp c m canisme d acquittement 2 l.jpg

TTP/C – Mécanisme d’acquittement - 2

  • Membership envoyé par un nœud A  A est vivant

  • Membership Point d’un nœud

    • Dans la PRP du noeud

  • Membership Recognition Point d’un nœud

    • Instant où la décision est définitive pour ce nœud (trame acquittée / non acquittée)

  • A l’émission, A a une vision des stations vivantes conforme à celle des stations vivantes

Membership

Recognition Point de A

Membership Point de A

Membership Point de B

Membership Point de C

TP A

IFG A

TP B

IFG B

TP C

IFG C

CSSEA SI342b


Ttp c m canisme d acquittement 3 processus d acquittement d un n ud a l.jpg

IFG A

A transmet (C-State : VM(A) vivant)

A reçoit une trame de B

Transmission du nœud B

true

CRC reçu

=

CRC calculé

false

true

CRC reçu

=

CRC calculé

IFG B

false

TTP/C – Mécanisme d’acquittement – 3Processus d’acquittement d’un nœud A

Hypothèse Ia : A suppose que B voit A et B vivants

Hypothèse Ib : A suppose que B voit A non vivant et B vivant

Acquittement de A

Erreur de transmission de B ou B a une vision des autres stations différente de celle de A

B défaillant – prendre un nouveau premier successeur – recommencer avec hypothèse Ia

A ou B est défaillant – continuer avec le deuxième successeur

CSSEA SI342b


Ttp c m canisme d acquittement 4 processus d acquittement d un n ud a l.jpg

A reçoit une trame de C

Transmission du nœud C

true

CRC reçu

=

CRC calculé

false

true

CRC reçu

=

CRC calculé

IFG C

false

TTP/C – Mécanisme d’acquittement – 4Processus d’acquittement d’un nœud A

Hypothèse IIa : A suppose que C voit A vivant, B non vivant et C vivant

Hypothèse IIb : A suppose que C voit A non vivant, B vivant et C vivant

Acquittement de A

B et C n’ont pas bien reçu la trame

Non Acquittement de A

Erreur de transmission de C ou C a une vision des autres stations différente de celle de A

C défaillant – prendre un nouveau deuxième successeur – recommencer avec hypothèse IIa

CSSEA SI342b


Ttp c service de membership l.jpg

TTP/C – Service de Membership

  • Assure que tout nœud vivant sur le réseau a la même vue de l’état des autres nœuds

  • Service réalisé par le mécanisme d’acquittement

CSSEA SI342b


Ttp c membership 1 l.jpg

A, B restent dans le Membership

  • Agreed counter++

  • Acknowledgement failure counter = 0

B quitte le Membership

  • Failed slots counter++ si transmission sur les 2 canaux

TTP/C – Membership - 1

IFG A

A transmet (C-State : VM(A) vivant)

A reçoit une trame de B

Transmission du nœud B

Hypothèse Ia : A et B vivants

true

CRC reçu

=

CRC calculé

false

Acquittement de A

Hypothèse Ib : A mort et B vivant

true

CRC reçu

=

CRC calculé

IFG B

false

A ou B est défaillant – continuer avec le deuxième successeur

B défaillant – prendre un nouveau premier successeur – recommencer avec hypothèse Ia

CSSEA SI342b


Ttp c membership 2 l.jpg

A, C restent dans le Membership

B quitte le Membership

  • Agreed slots counter++

  • Failed slots counter++

  • Acknowledgement failure counter = 0

C quitte le Membership

  • Failed slots counter++ si transmission sur les 2 canaux

TTP/C – Membership - 2

A reçoit une trame de C

Transmission du nœud C

Hypothèse IIa : A vivant, B mort et C vivant

true

CRC reçu

=

CRC calculé

false

Acquittement de A

Hypothèse IIb : A mort, B vivant et C vivant

true

CRC reçu

=

CRC calculé

IFG C

false

Non Acquittement de A

C défaillant – prendre un nouveau deuxième successeur – recommencer avec hypothèse IIa

CSSEA SI342b


Ttp c membership 3 l.jpg

A n’est pas dans le Membership

B, C restent dans le Membership

Si >= une valeur max, le noeud se déconnecte

C quitte le Membership

  • Agreed slots counter++

  • Failed slots counter++

  • Acknowledgement failure counter ++

  • Failed slots counter++ si transmission sur les 2 canaux

TTP/C – Membership - 3

A reçoit une trame de C

Transmission du nœud C

Hypothèse IIa : A vivant, B mort et C vivant

true

CRC reçu

=

CRC calculé

false

Acquittement de A

Hypothèse IIb : A mort, B vivant et C vivant

true

CRC reçu

=

CRC calculé

IFG C

false

Non Acquittement de A

C défaillant – prendre un nouveau deuxième successeur – recommencer avec hypothèse IIa

CSSEA SI342b


Ttp c membership 4 l.jpg

TTP/C – Membership - 4

  • Conditions initiales : à l’intégration du nœud

    • Agreed slots counter = 2

    • Failed slots counter = 0

  • Lors de la réception d’une trame, un nœud :

    • Calcule la valeur du Slot Status selon les trames reçues sur les 2 canaux (max de {correct > tentative > other error > incorrect > null frame > invalide})

    • Slot status = correct  agreed slots counter ++

    • Slot status = incorrect ou invalide  failed slots counter ++

  • Après émission réussie, avant le processus d’acquittement

    • Agreed slots counter = 1

  • Détection de « clique »

    • Une fois / round, dans le PSP précédant le slot du nœud A :

      agreed slots counter < failed slots counter  le nœud se déconnecte

      agreed slots counter - failed slots counter < 2

       erreur globale du système de communication

CSSEA SI342b


Flexray l.jpg

FlexRay

  • Un site

    • http://www.flexray-group.com/

CSSEA SI342b


Origine de flexray l.jpg

Origine de FlexRay

  • 1999 – consortium BMW, Daimler Chrysler, Bosch, Delphi, Motorola, Philips, …

  • Objectif : déterminisme + flexibilité

  • Réutilisation des principes de ByteFlight (BMW)

CSSEA SI342b


Flexray topologie couche physique l.jpg

FlexRay – Topologie, couche physique

  • Bus simple ou redondant

  • Couche physique optique ou électrique

  • Débit : 500 kBits/s  10 Mbits/s

  • Nœud connecté sur un ou les 2 bus (si redondance)

  • Bus ou étoile

  • Réutilisation des principes de ByteFlight (BMW)

CSSEA SI342b


Flexray format de la trame l.jpg

5 + (0..246) + 3 octets

R

E

S

1

R

E

S

2

Frame

ID

Length

S

Y

N

C

Header

CRC

D

U

B

Message ID

ou données

Données

CRC

1

1

12

7

1

9

1

16

0..244 octets

24

Data Update Bit (rafraîchissement de la donnée depuis la dernière transmission)

FlexRay – Format de la trame

CSSEA SI342b


Flexray codage des trames l.jpg

FlexRay – Codage des trames

  • Code NRZ 8N1 : 1 bit start, 1 bit stop, pour chaque octet de données

  • FSS (Frame Start Sequence) : 8 bits 0

  • SOC (Start Of Cycle) : 10 bits 1 – 30 bits 0

CSSEA SI342b


Flexray medium access control l.jpg

FlexRay – Medium Access Control

MAC de type TDMA

MAC F-TDMA

  • Accès au médium : statique / dynamique

  • 3 modes : statique pur – dynamique pur – mixed

  • Cycle de fonctionnement périodique < 64 ms

silence

Trame physique

silence

CSSEA SI342b


Flexray partie statique l.jpg

FlexRay – partie statique

  • Les slots ont tous la même taille (taille max d’une trame)

  • Au plus 4095 slots

  • Un nœud peut avoir plusieurs slots / cycle (<=16)

  • Dans le cas d’un bus redondant, un nœud peut émettre des données différentes dans les slots homologues des deux bus, ou n’émettre rien sur l’un ou les deux bus

  • Gardien de bus

  • Slots libres pour extensions futures

  • Les nœuds sont informés du «MEDL» au startup

CSSEA SI342b


Flexray partie dynamique 1 l.jpg

FlexRay – partie dynamique - 1

  • Chaque nœud possède un ou des identificateurs uniques sur l’ensemble du système (=CAN)

  • A chaque identificateur est assigné un intervalle de temps (mini-slot) dans lequel la transmission de la trame correspondante peut commencer

  • Les intervalles sont alloués dans l’ordre des identificateurs

  • Pas de retransmission en cas d’erreur

CSSEA SI342b


Flexray partie dynamique 2 l.jpg

FlexRay – partie dynamique - 2

  • Si redondance des canaux, les choix de transmettre ou non peuvent être différents sur chacun des canaux

  • Des transmissions successives d’une trame de même identificateur peuvent être de tailles différentes

  • Le segment dynamique se termine après une durée prédéterminée même si toutes les trames ne sont pas transmises

  • Pas de gardien de bus dans le segment dynamique

    Sous certaines hypothèses sur le trafic, il est possible de calculer des pires temps de réponse (= CAN)

CSSEA SI342b


Flexray synchronisation d horloge l.jpg

FlexRay – synchronisation d’horloge

  • Maître unique : un slot dans le cycle statique

  • Multi-maîtres (2 .. 16)

CSSEA SI342b


Flexray conclusions l.jpg

FlexRay – conclusions

  • Meilleure utilisation de la bande passante que TTP/C d’où des débits moins élevés et des CPUs moins coûteux

  • Réutilisation aisée d’applications Event-Triggered développées sur CAN

  • Services spécifiques à l’automobile comme l’endormissement et le réveil des stations

  • Grande flexibilité !

CSSEA SI342b


Flexray conclusions53 l.jpg

FlexRay – conclusions

  • TTP/C

    • + Nombreux services pour la SdF (mode de marche, redondance, membership, clique avoidance,…)

    • + Visiblement conçu pour la certification

    • - Comportement en dehors des hypothèses de fautes !? Les hypothèses faites (au plus une faute tous les 2 rounds) sont-elles les bonnes pour l’automobile ??

    • - Flexibilité / incrémentalité faible

  • FlexRay

    • + Conçu spécifiquement pour l’automobile (nécessité de CPU moins puissants que TTP/C, réutilisation des logiciels développés pour CAN, mode veille,…)

    • + Flexibilité

    • - Délibérément peu de fonctionnalités liées à la SdF (redondance, membership) – pb: implémentation moins efficace au dessus de la couche LdD

    • - Validation du protocole !

CSSEA SI342b


  • Login