La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

CAN – Un réseau pour l’automobile

Présentations similaires


Présentation au sujet: "CAN – Un réseau pour l’automobile"— Transcription de la présentation:

0 Chapitre 4 CAN (Control Area Network)
Ingénieur Civil des Mines 2ème année Conception Sûre des Systèmes Embarqués et Ambiants – Module SI342b Chapitre 4 CAN (Control Area Network) Certains transparents de ce cours proviennent du cours de Nicolas Navet (ENSEM – EMN / ) du cours de Philip Koopman (Carnegie Mellon / 2004) Françoise Simonot-Lion

1 CAN – Un réseau pour l’automobile
Conçu par Bosch (1983) pour le « multiplexage automobile » – normalisé ISO (1994) Boite de Vitesses Contrôle Moteur Suspension ABS Tableau de Bord Clim Sièges Plafonnier Centralisation Réduction des coûts de câblage et de maintenance Tableau de Bord Contrôle Moteur Contrôleur CAN Suspension Clim Sièges Centralisation Plafonnier Contrôleur CAN Boite de Vitesses ABS CAN high speed CAN low speed Ecole des Mines de Nancy CSSEA SI342b

2 CAN – Un réseau pour l’automobile
Câblage Quelques chiffres : R25 (fin 80’s) : 2 km de câbles cuivre ! >80kg MB Classe C (2001) : 12 ECU’s – 25 fonctions MB Classe S (2002) : > 50 ECU’s ! Un marché important Réduction de câblage 40% poids pour une portière Mercedes 41% de longueur de câble entre les Peugeot 306 et 307 Source Siemens pour des produits Siemens Ecole des Mines de Nancy CSSEA SI342b

3 CAN – Un réseau pour l’automobile
Un réseau adapté aux besoins de performances dans l’automobile Pour mémoire : classe D – taille d’un message 100 octets à 1000 octets, (télématique et multimédia) – débit nécessaire de 1 à 10 Mbit/s Classe Débit (Kb/s) Offre CAN par exemple, pour …. C > 125 Kb/s et < 1000 Kb/s CAN High Speed ISO-IS 11898 Contrôle moteur, boîte de vitesse, ABS, … Temps réel dur (périodes de 1 à 10ms, temps de transmission~1ms, quelques octets) B > 10 Kb/s < 125 Kb/s CAN Low Speed ISO-IS Diagnostic, contrôle du tableau de bord, Temps réel mou A < 10 Kb/s Carrosserie (Body) Ecole des Mines de Nancy CSSEA SI342b

4 CAN et le modèle OSI Couches physiques et liaison de données normalisées Couche physique Représentation du bit Synchronisation Couche Liaison de données Sous-couche MAC Encapsulation / Désencapsulation des données Codage des trames (stuffing / dé-stuffing) Arbitrage Détection / signalement d’erreurs Acquittement Sous couche LLC Filtrage des trames en réception Recouvrement des erreurs Transfert des données Demande de transfert des données Ecole des Mines de Nancy CSSEA SI342b

5 CAN – couche physique Codage NRZ (Non Return to Zero) – pas de front sur le signal Niveau logique 0 – bit dominant Niveau logique 1 – bit récessif Bit 1 Bit 2 Bit 3 Bit 4 Bit 5 Bit 6 5V 0V Niveau de bit dominant 011010 Support : paire torsadée (standard ISO) Autres supports possibles : fibre optique, courant porteur, transmission radio, infra-rouge, … Ecole des Mines de Nancy CSSEA SI342b

6 CAN – Bit stuffing Création de « fronts » sur le signal
Bit-stuffing (Taille = 5 bits) r d Suite initiale de bits à transmettre Ce qui circule au niveau du médium r d r d r d r d r r r d Suite reçue après « dé-stuffing » Ecole des Mines de Nancy CSSEA SI342b

7 CAN – Bit stuffing Problème – exemple
Bit inversé au mauvais endroit interprétation d’un bit de données comme un « stuffing bit » interprétation d’un « stuffing bit » comme un bit de données Valeur initiale transmise : … r d Suite transmise sur le bus r d d Suite altérée sur le bus Interprété comme un stuffing bit !!!!! Interprété comme un bit de donnée !!!!! r r r d r d d r d Exercice 1 : quelle est la valeur reçue : ??? Ecole des Mines de Nancy CSSEA SI342b

8 CAN – Bit stuffing Exercice 2 Quel est le pire cas ?
Quel est l’accroissement maximal pour une longueur initiale de n bits ? Ecole des Mines de Nancy CSSEA SI342b

9 CAN – format de la trame Start of Frame (SOF) / synchronisation
1bit En-tête (champ d’arbitrage / champ de contrôle) En-tête 18 bits - CAN standard (2.0A) 38 bits - CAN étendu (2.0B) Champ de données Données 0..8 octets Champ de contrôle des données/détection d’erreur Détection d’erreur 15 bits Champ d’acquittement Ack 3 bits Fin de trame (EOF), Intermission (Inter) EOF 7 bits Inter 3 bits Idle … … Idle 0 ou 1 1 r d Ecole des Mines de Nancy CSSEA SI342b

10 Trame CAN - En-tête CAN standard (2.0A) CAN étendu (2.0B)
RTR : 0 si trame de données, 1 si trame de requête IDE : 0 r0 : 0 r1 : 0 1 11 4 CAN standard (2.0A) Identificateur DLC : longueur des données (0..8 octets) 1 11 18 4 CAN étendu (2.0B) IDE : 1 SRR : 1 Ecole des Mines de Nancy CSSEA SI342b

11 Trame CAN - En-tête Champ de contrôle Champ d’arbitrage
RTR : 0 si trame de données, 1 si trame de requête 1 11 4 CAN standard (2.0A) DLC Identificateur Champ d’arbitrage Champ de contrôle RTR : 0 si trame de données, 1 si trame de requête 1 11 18 4 CAN étendu (2.0B) DLC Identificateur Ecole des Mines de Nancy CSSEA SI342b

12 Accès au bus - arbitrage
Technique d’accès au médium CSMA – résolution de collision Repose sur un principe d’identification des trames Phase d’arbitrage – la trame la plus prioritaire gagne l’accès au bus Chaque station qui veut émettre, écoute Dés qu’il n’y a pas de signal sur le bus, elle émet un bit puis écoute Si la valeur lue est différente de la valeur émise, la station a perdu l’arbitrage; elle cesse d’émettre et retourne en 1 Conséquence sur le débit : il faut un aller-retour pour le signal avant d’émettre le bit suivant Ecole des Mines de Nancy CSSEA SI342b

13 Accès au bus - arbitrage
Exemple : 3 stations émettent en même temps Qui gagne l’arbitrage ? t Station 1 1 Station 2 Station 3 Ecole des Mines de Nancy CSSEA SI342b

14 Accès au bus - arbitrage
Exemple : 3 stations émettent en même temps Station 1 1 écoute Station 2 écoute Station 3 Signal sur le bus 1 1 1 1 1 1 1 La station 3 gagne l’accès au bus Ecole des Mines de Nancy CSSEA SI342b

15 Accès au bus - arbitrage
Exercice 3 Quelle conclusion peut-on tirer de ce mécanisme quant à la priorité des trames? Soit une trame de donnée et une trame de requête (identificateur de 20 bits significatifs) – quelle est la plus prioritaire ? Soient deux trames d’identification respectives (29)10 et (31)10 émises au même moment sur le bus par deux stations concurrentes. Représenter le niveau de signal résultant sur le bus? Priorités respectives des trames d’identificateurs 11 bits et des trames d’identificateurs 29 bits ? Ecole des Mines de Nancy CSSEA SI342b

16 Synchronisation des stations
Un oscillateur par contrôleur (station)  une horloge système par station Non synchronisation des oscillateurs entre les stations Codage NRZ  comment avoir un temps bit = pour toutes les stations du réseau ? Tclock Ecole des Mines de Nancy CSSEA SI342b

17 Synchronisation des stations
Composition d’un bit CAN sur une station Horloge système Temps bit nominal L1=n1*Tclock L2=n2*Tclock syn T-Seg1 T-Seg2 Point d’échantillonnage du signal L1, L2 configuré pour l’ensemble du réseau Ecole des Mines de Nancy CSSEA SI342b

18 Synchronisation des stations
Conclusion: la station est synchronisée avec l’émetteur Détection normale d’un front Horloge système Signal sur le bus syn T-Seg1 T-Seg2 Point d’échantillonnage du signal Ecole des Mines de Nancy CSSEA SI342b

19 Synchronisation des stations
Conclusion: la station est plus rapide que la station émettrice  retarder la station Détection anormale d’un front (trop tard !) Horloge système Signal sur le bus syn T-Seg1 T-Seg2 Point d’échantillonnage du signal Ecole des Mines de Nancy CSSEA SI342b

20 Synchronisation des stations
Détection anormale d’un front (trop tard !) Horloge système Signal sur le bus T-Seg2 Point d’échantillonnage du signal syn T-Seg1 T-Seg1 SJW1 Ecole des Mines de Nancy CSSEA SI342b

21 Synchronisation des stations
Conclusion: la station est plus lente que la station émettrice  “accélerer” la station Détection anormale d’un front (trop tôt !) Horloge système Signal sur le bus syn T-Seg1 T-Seg2 SJW2 T-Seg2 Point d’échantillonnage du signal Ecole des Mines de Nancy CSSEA SI342b

22 Acquittement Ack slot : mis à 1 (récessif) à l’émission – toute station qui reçoit correctement le positionne à 0 (dominant) sinon, elle envoie une trame d’erreurs On peut savoir qu’une station a reçu le message On ne sait pas laquelle On ne sait pas si c’est le destinataire L’acquittement sur CAN est non fiable Ack slot …CRC EOF … 3 bits Ecole des Mines de Nancy CSSEA SI342b

23 Trame de requête Il s’agit d’un moyen fourni pour un mode de coopération client – serveur Ne contient aucune donnée (mais porte un identificateur) La réponse n’est pas écrite dans la trame  surcharge réseau – pas de garantie de temps de réponse Ecole des Mines de Nancy CSSEA SI342b

24 Les erreurs de transmission
Types d’erreurs CRC reçu  CRC calculé à la réception 6 bits consécutifs de même niveau Pas d’acquittement reçu par l’émetteur Mauvaise valeur pour un champ fixe (0 / 1), bit envoyé  bit observé Trame d’erreur Retransmission après 17 bits (au mieux) / 23 bits (au pire) trame incomplète Error flag Délimiteur d’erreur Inter-trame [ ] 6 0..6 8 3 Ecole des Mines de Nancy CSSEA SI342b

25 Le confinement d’erreur sur CAN
Problème : une station défectueuse peut perturber le fonctionnement du système (par exemple, en émettant de façon continue une trame d’erreur) mécanisme de retrait des stations (déconnexion du réseau) 2 compteurs d’erreurs Sur les trames émises (TEC : +8, -1, 0127, 128256) Sur les trames reçues (REC : +1, -1, 0127, 128256) 3 états de la station Erreur-active (normal) Erreur-passive : émission possible après un temps de 8 bits silencieux sur le bus / pas d’émission de trames d’erreur Bus-off : pas d’émission Ecole des Mines de Nancy CSSEA SI342b

26 Le confinement d’erreur sur CAN
Ecole des Mines de Nancy CSSEA SI342b

27 Le confinement d’erreur sur CAN
Des rafales d’erreurs peuvent provoquer la déconnexion sans que la station soit elle-même défectueuse Prévoir des solutions de reprise au niveau applicatif (que faire si le calculateur d’ABS est en bus-off ?) Ecole des Mines de Nancy CSSEA SI342b

28 Un « bug » du protocole Certaines trames peuvent être reçues en double ! Une perturbation localisée à certaines stations (dont l’émetteur) sur le dernier bit du champ EOF  retransmission  toutes les stations non affectées reçoivent deux fois la trame Exercice 4 : pour éviter des problèmes au niveau applicatif, quels types d’information ne faut-il pas envoyer ? Ecole des Mines de Nancy CSSEA SI342b

29 Évaluation de temps de réponse sur CAN Évaluation de temps de réponse d’activités – retour sur l’ordonnancement de tâches Soit la configuration suivante : Période d’activité du processeur = intervalle de temps dans lequel le processeur est toujours utilisé Ti 1 2 3 4 5 Ci 7 8 20 30 100 t Ecole des Mines de Nancy CSSEA SI342b

30 Évaluation de temps de réponse d’activités – retour sur l’ordonnancement de tâches
Tâches périodiques à démarrage simultané La plus longue période d’activité se produit lorsque toutes les tâches sont activées au même instant = instant critique Fonction d’arrivée de travail W(t) t Ecole des Mines de Nancy CSSEA SI342b

31 Évaluation de temps de réponse d’activités – retour sur l’ordonnancement de tâches
La fonction f(t)=t définit la capacité de traitement du processeur t f(t)=t Ecole des Mines de Nancy CSSEA SI342b

32 Évaluation de temps de réponse d’activités – retour sur l’ordonnancement de tâches
Au premier instant t tel que f(t) = W(t), le processeur a terminé toutes les instances de tâches réveillées sur [0,t[. La période d’activité initiée par un instant critique est donc de longueur t Il faut donc résoudre l’équation W(t)=t (convergence si ) Soit par récurrence : Ecole des Mines de Nancy CSSEA SI342b

33 Évaluation de temps de réponse d’activités – retour sur l’ordonnancement de tâches
Calcul de pire temps de réponse Cas de tâches ordonnancées selon des priorités statiques, périodiques et à départ simultané Le pire temps de réponse d’une tâche de priorité i repose sur le calcul de la longueur de la « période d’activité de niveau i » induite par les tâches de priorité supérieure ou égale à i Calcul de la période d’activité de niveau i (hp(i) ensemble des tâches de priorité supérieure à i) : Le pire temps de réponse Ri est solution de Ecole des Mines de Nancy CSSEA SI342b

34 Activations des tâches
Évaluation de temps de réponse d’activités – retour sur l’ordonnancement de tâches Cas de tâches ordonnancées selon des priorités statiques avec des gigues sur l’activation (Ji) – l’instant critique est celui où les tâches se réveillent simultanément (prise en compte de la gigue) Activations des tâches réveils des tâches J1 t+J1 Tâche 1 Tâche 2 Tâche 3 t Instant critique (réveil) J2 J3 Ecole des Mines de Nancy CSSEA SI342b

35 Évaluation de temps de réponse d’activités – retour sur l’ordonnancement de tâches
Cas de tâches ordonnancées selon des priorités statiques avec des gigues sur l’activation (Ji) – l’instant critique est celui où les tâches se réveillent simultanément (prise en compte de la gigue) Durée cumulée des tâches de priorité supérieure ou égale à i (hp(i) ensemble des tâches de priorité supérieure à i) ou période d’activité de niveau i : La durée de la période d’activité Li est solution de Le pire temps de réponse est Ecole des Mines de Nancy CSSEA SI342b

36 Evaluation de temps de réponse sur CAN
L’ordonnancement des trames sur CAN relève d’un algorithme d’ordonnancement Fixed Priority Non Premptive(FPNP) Le pire temps de réponse du message m est donné par : Jitter à l’émission Pire temps (physique) de transmission Pire temps d’attente du message à l’émission Ecole des Mines de Nancy CSSEA SI342b

37 Evaluation de temps de réponse sur CAN
Calcul du pire temps (physique) de transmission (identificateur 11 bits) Nombre d’octets de données Temps bit sur le bus (1ms pour un bus de 1Mbit/s.) Ecole des Mines de Nancy CSSEA SI342b

38 Evaluation de temps de réponse sur CAN – messages périodiques
Calcul du pire temps d’attente Temps de blocage du aux messages de plus faible priorité (non préemption) Temps de blocage du aux messages de plus forte priorité (non préemption) Ensemble des messages de plus forte priorité que m Période du message j Ensemble des messages de plus faible priorité que m Ecole des Mines de Nancy CSSEA SI342b

39 Evaluation de temps de réponse sur CAN – messages périodiques
Calcul par récurrence : Ecole des Mines de Nancy CSSEA SI342b

40 Validation d’une messagerie sur CAN
Exercice 5 : faire le programme qui vérifie que tous les messages respectent leurs échéances pour une messagerie donnée (voire feuille jointe) Ecole des Mines de Nancy CSSEA SI342b


Télécharger ppt "CAN – Un réseau pour l’automobile"

Présentations similaires


Annonces Google