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

Chapitre 4 CAN (Control Area Network) 2006 - 2007 Françoise Simonot-Lion Certains transparents de ce cours proviennent du cours de Nicolas.

Présentations similaires


Présentation au sujet: "Chapitre 4 CAN (Control Area Network) 2006 - 2007 Françoise Simonot-Lion Certains transparents de ce cours proviennent du cours de Nicolas."— Transcription de la présentation:

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

2 Ecole des Mines de NancyCSSEA SI342b 1 CAN – Un réseau pour lautomobile 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 Contrôleur CAN Clim Contrôleur CAN Sièges Contrôleur CAN Centralisation Contrôleur CAN Plafonnier Contrôleur CAN Contrôleur CAN Contrôleur CAN Boite de Vitesses Contrôleur CAN ABS Contrôleur CAN CAN high speed CAN low speed

3 Ecole des Mines de NancyCSSEA SI342b 2 CAN – Un réseau pour lautomobile Câblage Quelques chiffres : R25 (fin 80s) : 2 km de câbles cuivre ! >80kg MB Classe C (2001) : 12 ECUs – 25 fonctions MB Classe S (2002) : > 50 ECUs ! 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

4 Ecole des Mines de NancyCSSEA SI342b 3 CAN – Un réseau pour lautomobile Un réseau adapté aux besoins de performances dans lautomobile Pour mémoire : classe D – taille dun message 100 octets à 1000 octets, (télématique et multimédia) – débit nécessaire de 1 à 10 Mbit/s ClasseDébit (Kb/s) Offre CANpar exemple, pour …. C > 125 Kb/s et < 1000 Kb/s CAN High Speed ISO-IS 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 et < 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)

5 Ecole des Mines de NancyCSSEA 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 derreurs Acquittement Sous couche LLC Filtrage des trames en réception Recouvrement des erreurs Transfert des données Demande de transfert des données

6 Ecole des Mines de NancyCSSEA 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 Support : paire torsadée (standard ISO) Autres supports possibles : fibre optique, courant porteur, transmission radio, infra-rouge, …

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

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

9 Ecole des Mines de NancyCSSEA SI342b 8 CAN – Bit stuffing Exercice 2 Quel est le pire cas ? Quel est laccroissement maximal pour une longueur initiale de n bits ?

10 Ecole des Mines de NancyCSSEA SI342b 9 CAN – format de la trame SOF Start of Frame (SOF) / synchronisation 1bit En-tête (champ darbitrage / 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 derreur Détection derreur 15 bits Champ dacquittement Ack 3 bits Fin de trame (EOF), Intermission (Inter) EOF 7 bits Inter 3 bits Idle …… Idle 0 ou r d

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

12 Ecole des Mines de NancyCSSEA SI342b 11 Trame CAN - En-tête RTR : 0 si trame de données, 1 si trame de requête CAN standard (2.0A) DLCIdentificateur Champ darbitrage Champ de contrôle RTR : 0 si trame de données, 1 si trame de requête CAN étendu (2.0B) DLCIdentificateur

13 Ecole des Mines de NancyCSSEA SI342b 12 Accès au bus - arbitrage Technique daccès au médium CSMA – résolution de collision Repose sur un principe didentification des trames Phase darbitrage – la trame la plus prioritaire gagne laccès au bus 1.Chaque station qui veut émettre, écoute 2.Dés quil ny a pas de signal sur le bus, elle émet un bit puis écoute 3.Si la valeur lue est différente de la valeur émise, la station a perdu larbitrage; 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

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

15 Ecole des Mines de NancyCSSEA SI342b 14 Accès au bus - arbitrage Exemple : 3 stations émettent en même temps écoute 0 Station 1 Station 2 Station 3 Signal sur le bus La station 3 gagne laccès au bus

16 Ecole des Mines de NancyCSSEA 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 didentification 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 didentificateurs 11 bits et des trames didentificateurs 29 bits ?

17 Ecole des Mines de NancyCSSEA 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

18 Ecole des Mines de NancyCSSEA SI342b 17 Synchronisation des stations Composition dun bit CAN sur une station syn T-Seg1T-Seg2 Horloge système Temps bit nominal L1=n1*TclockL2=n2*Tclock Point déchantillonnage du signal L1, L2 configuré pour lensemble du réseau

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

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

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

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

23 Ecole des Mines de NancyCSSEA 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 derreurs On peut savoir quune station a reçu le message On ne sait pas laquelle On ne sait pas si cest le destinataire Lacquittement sur CAN est non fiable 3 bits …CRC EOF … Ack slot

24 Ecole des Mines de NancyCSSEA SI342b 23 Trame de requête Il sagit dun moyen fourni pour un mode de coopération client – serveur Ne contient aucune donnée (mais porte un identificateur) La réponse nest pas écrite dans la trame surcharge réseau – pas de garantie de temps de réponse

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

26 Ecole des Mines de NancyCSSEA SI342b 25 Le confinement derreur 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 derreur) mécanisme de retrait des stations (déconnexion du réseau) 2 compteurs derreurs Sur les trames émises (TEC : +8, -1, 0 127, ) Sur les trames reçues (REC : +1, -1, 0 127, ) 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 derreur Bus-off : pas démission

27 Ecole des Mines de NancyCSSEA SI342b 26 Le confinement derreur sur CAN

28 Ecole des Mines de NancyCSSEA SI342b 27 Le confinement derreur sur CAN Des rafales derreurs 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 dABS est en bus-off ?)

29 Ecole des Mines de NancyCSSEA 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 dinformation ne faut-il pas envoyer ?

30 Ecole des Mines de NancyCSSEA SI342b 29 Évaluation de temps de réponse sur CAN Évaluation de temps de réponse dactivités – retour sur lordonnancement de tâches Soit la configuration suivante : Période dactivité du processeur = intervalle de temps dans lequel le processeur est toujours utilisé Ti12345Ti12345 Ci75832Ci75832 T i t

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

32 Ecole des Mines de NancyCSSEA SI342b 31 Évaluation de temps de réponse dactivités – retour sur lordonnancement de tâches La fonction f(t)=t définit la capacité de traitement du processeur t f(t)=t

33 Ecole des Mines de NancyCSSEA SI342b 32 Évaluation de temps de réponse dactivités – retour sur lordonnancement 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 dactivité 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 :

34 Ecole des Mines de NancyCSSEA SI342b 33 Évaluation de temps de réponse dactivités – retour sur lordonnancement 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 dune tâche de priorité i repose sur le calcul de la longueur de la « période dactivité de niveau i » induite par les tâches de priorité supérieure ou égale à i Calcul de la période dactivité de niveau i (hp(i) ensemble des tâches de priorité supérieure à i) : Le pire temps de réponse R i est solution de

35 Ecole des Mines de NancyCSSEA SI342b 34 Évaluation de temps de réponse dactivités – retour sur lordonnancement de tâches Cas de tâches ordonnancées selon des priorités statiques avec des gigues sur lactivation (J i ) – linstant critique est celui où les tâches se réveillent simultanément (prise en compte de la gigue) t Instant critique (réveil) Tâche 1 Tâche 2 Tâche 3 Activations des tâches réveils des tâches J1 J2 J3 t+J1

36 Ecole des Mines de NancyCSSEA SI342b 35 Évaluation de temps de réponse dactivités – retour sur lordonnancement de tâches Cas de tâches ordonnancées selon des priorités statiques avec des gigues sur lactivation (J i ) – linstant 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 dactivité de niveau i : La durée de la période dactivité L i est solution de Le pire temps de réponse est

37 Ecole des Mines de NancyCSSEA SI342b 36 Evaluation de temps de réponse sur CAN Lordonnancement des trames sur CAN relève dun algorithme dordonnancement Fixed Priority Non Premptive(FPNP) Le pire temps de réponse du message m est donné par : Jitter à lémission Pire temps dattente du message à lémission Pire temps (physique) de transmission

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

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

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

41 Ecole des Mines de NancyCSSEA SI342b 40 Validation dune 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)


Télécharger ppt "Chapitre 4 CAN (Control Area Network) 2006 - 2007 Françoise Simonot-Lion Certains transparents de ce cours proviennent du cours de Nicolas."

Présentations similaires


Annonces Google