Télécharger le fichier pdf d’un mémoire de fin d’études
Analyse et évolution des architectures électroniques des véhicules
L’architecture électronique des véhicules peut être perçue comme l’architecture d’un système embarqué à part entière. Un système embarqué est un système, associant électronique et informatique, autonome et intégré au sein d’un environnement avec lequel il interagit. L’architecture d’un tel système embarqué est distribuée et est édifiée sur trois éléments essentiels. Ces éléments sont le logiciel embarqué, les ressources matérielles de traitement et les supports de communication servant à connecter les ressources.
Protocoles de communication dans le domaine automobile
Jusqu’en 1990, les cartes électroniques embarquées dans les véhicules étaient indépendantes et chacune remplissait ses fonctions séparément. La longueur totale des câbles électriques dans une voiture dépassait alors le kilomètre. Pour réduire le coût et le poids du cuivre, les constructeurs automobiles ont commencé à intégrer des bus de communication au sein des véhicules, tel que le bus CAN (Controller Area Network) [4]. Typiquement les réseaux employés dans le domaine automobile respectent l’organisation hiérarchique en couche du modèle OSI (Open Systems Interconnection). Les trois couches physique, liaison et réseau caractérisent le débit, la fiabilité (tolérance aux pannes et taux d’erreur), les topologies possibles, la stratégie de communication ainsi que le nombre maximal de nœuds supportés.
Dans le contexte automobile, une classification des réseaux a été faite selon le débit et les fonctions supportées [2]. La classe, dénommée A, regroupe les réseaux de débit inférieur à 10 Kbit/s. Ces réseaux sont utilisés pour l’acheminement de simples informations de commande en employant des technologies à bas coût. Ils sont principalement utilisés dans l’habitacle pour la commande de verrouillage des portes. La classe B de réseau supporte un débit entre 10 et 125 Kbit/s. Ces réseaux permettent l’échange de données entre les unités de calcul et permettent le partage d’informations issues des capteurs. La classe C offrant des débits de 125 Kbit/s à 1 Mbit/s est généralement utilisée pour les domaines du groupe motopropulseur et du châssis. La dernière classe D, supportant un débit supérieur à 1Mbit/s, est employée pour le domaine multimédia. Différentes topologies existent pour relier les différents éléments d’une architecture électronique. La topologie d’un réseau influe sur le débit dédié à chaque organe. Ainsi, la topologie en bus, actuellement la plus utilisée dans les réseaux au sein des automobiles, implique de devoir partager le support de communication entre les éléments, impliquant le partage de la bande passante du réseau. La topologie en étoile peut également être utilisée dans les véhicules. Selon les topologies on peut considérer différentes stratégies de communication.
Il existe deux paradigmes pour décrire les stratégies d’accès des réseaux de communication dans le domaine automobile. Le paradigme dit Time-triggered est basé sur une répartition cyclique des accès au support de communication. Un intervalle de temps est dédié à chaque nœud existant dans le réseau. Dans cet intervalle, un nœud transmet ses données ou bien une balise de rappel de sa présence. Le paradigme dit Event-triggered permet la transmission de données selon la production d’événements. La détection d’un événement significatif, comme l’ouverture d’une porte, engendre la transmission de cette information immédiatement. L’arbitrage par priorité est souvent utilisé si plusieurs événements se produisent. Il existe des réseaux qui adoptent ces deux paradigmes.
Parmi les stratégies de communication, l’accès multiple à répartition dans le temps (TDMA pour Time division multiple access) consiste à partager l’accès au support de communication dans le temps. Cet accès est cyclique. La durée d’un cycle est divisée en intervalles de temps dédiés pour chaque nœud connecté à ce réseau. Cette stratégie correspond au paradigme Time-triggered. L’arbitrage par priorité est basé sur le paradigme Event-triggered. L’accès au support de communication est accordé au nœud ou au message le plus important. Un identifiant au début du message à transmettre est considéré afin de résoudre la priorité associée. Un mécanisme de détection de priorité est nécessaire pour détecter la transmission d’un message plus prioritaire. Une des techniques de partage de support de communication qui permet la détection de priorité est le CSMA/CR (Carrier Sense Multiple Access with Contention Resolution). La stratégie maître-esclave impose l’existence d’un seul maître sur le réseau. L’échange de données est effectué suivant les requêtes du maître. Ce dernier contrôle le bus et scrute les esclaves afin qu’ils partagent leurs données sur le bus. Les esclaves ne fournissent des données que lorsqu’ils sont sollicités.
On cite par la suite certaines caractéristiques associées aux standards de communication les plus utilisés dans le domaine automobile.
CAN (Controller Area Network) [4]
Le protocole CAN a été développé par la société Bosch afin de réduire la quantité de câbles dans les véhicules. Il permet de relier sur un seul bus l’ensemble des unités de calcul, des capteurs et des actionneurs. Ce protocole s’appuie sur le multiplexage des communications sur un bus formé par une paire de fils torsadés. Il a été standardisé en 1994 sous la référence ISO11898–1. Actuellement, il existe différentes déclinaisons de ce protocole dont les principales différences concernent la couche liaison et la couche physique. La première norme, CAN 2.0 A, alloue 11 bits pour le champ d’identification de trame. Dans la deuxième version de la norme, CAN 2.0 B, le champ d’identification est étendu sur 29 bits. L’accès au bus précisé par ces deux normes est basé sur le principe du CSMA/CR. Le débit supporté par ce protocole dépend de la longueur de câble utilisée. Il peut varier de 40 Kbit/s à 1 Mbit/s pour le « High Speed CAN » et de 40 Kbit/s à 125 Kbit/s pour le Low Speed/Fault Tolerant CAN, selon la longueur de câble utilisée. D’autres déclinaisons du protocole CAN combinent deux versions d’accès au bus. TT-CAN (Time-Triggered CAN) et FTT-CAN (Flexible Time-Triggered CAN) adoptent les deux paradigmes Event-triggered et Time-triggered.
LIN (Local Interconnect Network) [5]
Le protocole LIN est un protocole série à bas coût créé par le consortium LIN en 1999.
Ce protocole est utilisé pour connecter des parties extrêmes et non critiques d’un réseau hiérarchique dans la voiture, comme par exemple la commande de fermeture de vitre. Ce protocole communique selon la stratégie maître-esclave et impose la présence d’un seul maître. Différentes versions se sont succédées. La version actuelle propose un débit de 1Kbit/s à 20 Kbit/s et jusqu’à 63 nœuds esclaves. Un de ses avantages est de ne compter qu’un seul câble par lequel transitent les données, auquel se rajoutent les câbles pour l’alimentation, ce qui en fait un réseau plus léger que le CAN.
MOST (Media Oriented Systems Transport) [6]
Le protocole MOST a été développé par « MOST Corporation » en 1998. Ce protocole est destiné aux applications multimédias dans les véhicules qui nécessitent un haut débit de communication. Ce protocole utilise des fibres optiques qui sont mieux immunisées contre les interférences électromagnétiques que les câbles en cuivre. Le protocole MOST est un protocole point à point. Physiquement, il ne peut relier que deux équipements, mais
logiquement, il peut relier jusqu’à 64 équipements en utilisant une topologie en anneau. La stratégie de communication de ce protocole est le CSMA/CD (Carrier Sense Multiple Access with Collision Detection). MOST permet une transmission de données à trois débits possibles : 25 Mbit/s (MOST25) ou 50 Mbit/s (MOST50) ou 150 Mbit/s (MOST150). Actuellement, cette technologie, très coûteuse, est essentiellement utilisée dans les véhicules haut de gamme pour relier les différents systèmes de télématique.
FlexRay [7]
Ce protocole a été standardisé en 2004 par un consortium regroupant des constructeurs automobiles, des équipementiers automobiles et des fondeurs de silicium. Ce standard de communication est défini pour des applications nécessitant des hauts débits d’informations. Il offre un débit maximal de 20 Mbit/s réparti sur deux canaux physiques répliqués. En effet, chaque canal admet un débit de 2.5 Mbit/s, 5 Mbit/s ou 10 Mbit/s, et peut supporter une topologie en bus, en étoile ou avec deux étoiles en cascade. Toutes les combinaisons de topologies formées par les deux canaux sont acceptables avec ce standard. Ce dernier peut
également fonctionner avec un seul réseau vu qu’il est tolérant aux pannes. En effet, ce protocole implémente des mécanismes qui assurent une continuité de fonctionnement du
système même dans le cas de défaillance de l’un des réseaux ou de l’un des deux canaux. La stratégie d’accès à un canal supporte les deux paradigmes Event-triggered et Time-triggered .
La diversité actuelle des réseaux de communication a contribué à l’évolution des infrastructures électroniques embarquées dans le domaine automobile. Progressivement, les infrastructures sont devenues capables de faire cohabiter différents protocoles de communication. L’organisation des infrastructures électroniques embarquées au sein des véhicules tend à hiérarchiser les ressources de calcul. Ces ressources sont organisées selon les différents domaines d’application. Un exemple possible d’infrastructure d’un système distribué embarqué dans les véhicules est détaillé dans la Figure 1.3.
Architecture logicielle des ECUs
Un nombre croissant d’applications sont intégrées dans les véhicules. Ces applications sont mises en œuvre par un ensemble de ressources logicielles embarquées sur des plates-formes distribuées. Ces ressources logicielles correspondent, par exemple, aux pilotes des interfaces de communication, aux piles protocolaires utilisées ou au système d’exploitation. Classiquement, les ressources logicielles embarquées dépendent fortement des ressources matérielles disponibles au sein de l’ECU. Par conséquent, des efforts importants peuvent être engendrés afin d’adapter le logiciel pour une configuration d’ECU donnée. Afin de maîtriser les coûts et les temps de développement, il s’est donc avéré nécessaire d’améliorer l’échange et la réutilisabilité des logiciels développés dans le domaine automobile. Dans ce contexte, des consortiums tels qu’OSEK/VDX (Offene Systeme und deren Schnittstellen für die Elektronik in Kraftfahrzeugen / Vehicle Distributed eXecutive) [9] et AUTOSAR (AUTomotive Open System Architecture) [10] ont été mis successivement en place afin de proposer aux concepteurs des solutions d’architectures logicielles standardisées pour les calculateurs. Ces solutions permettent de simplifier et d’accélérer la phase de conception et ainsi de minimiser le risque d’erreur de développement. Par la suite, afin de rendre compte de l’organisation des architectures logicielles des ECUs, nous nous appuyons sur l’organisation préconisée par le consortium AUTOSAR.
Le consortium AUTOSAR utilise et étend la spécification d’OSEK/VDX. Initialement, OSEK/VDX spécifiait une organisation en couche des ressources logicielles assurant la gestion des communications entre calculateurs. Il définissait également un ensemble de services requis au niveau du système d’exploitation. Plus largement, AUTOSAR vise à faciliter la distribution des applications sur les différents ECUs. Il a pour objectif de définir un cadre méthodologique pour la spécification des différents constituants d’un système électronique. Ainsi, l’environnement défini par AUTOSAR doit conduire à automatiser certaines phases du développement et à améliorer la réutilisation des ressources logicielles composant un système embarqué. L’architecture logicielle proposée par AUTOSAR vise à favoriser la modularité des développements en définissant différentes couches d’abstraction entre les ressources matérielles et la description de l’application. L’organisation entre ces différentes couches est illustrée dans la Figure 1.5.
Approche orientée plate-forme pour la conception des architectures des ECUs
La notion de plate-forme est fréquemment utilisée dans le domaine automobile pour désigner des sous-systèmes pouvant être partagés par plusieurs gammes de véhicules, et ce afin d’offrir des solutions réutilisables conduisant à une meilleure maîtrise des coûts et des temps de production. Dans le domaine de la conception de systèmes électroniques, une des solutions apportées afin d’assurer la maîtrise de la complexité de conception réside dans la définition de solutions standardisées. Une plate-forme désigne alors un ensemble de ressources, matérielles ou logicielles, pré-définies à un niveau de précision donné [12] [13]. Ces ressources peuvent alors être combinées afin de former des ensembles plus complexes et ce en un temps restreint. Une approche orientée plate-forme (Platform Based Design) désigne un ensemble de méthodes et d’outils utilisés afin d’associer efficacement les éléments disponibles au sein de la plate-forme. Il est possible de positionner l’approche orientée
plate-forme parmi les différentes catégories d’approches de conception possibles. Ces catégories sont illustrées sur la Figure 1.7.
Catégories de méthodes de dimensionnement des systèmes embarqués
Principes et définitions
Le dimensionnement de systèmes embarqués consiste à définir l’organisation et les propriétés des différents constituants d’une architecture. On entend ici par architecture l’association faite des ressources de la plate-forme et des éléments constituants l’application. Ces éléments correspondent aux fonctions composant l’application et aux relations entre ces fonctions. Le dimensionnement consiste donc à définir les ressources matérielles et logicielles nécessaires à mettre en œuvre compte tenu de l’association considérée. La définition des ressources matérielles consiste à caractériser les propriétés des ressources de calcul, de mémorisation et de communication de la plate-forme vis à vis des contraintes fonctionnelles et non-fonctionnelles imposées. On désigne par ressources de calcul des éléments tels que des cœurs de processeurs d’usage générique ou spécifique (GPP (General-Purpose Processor), DSP (Digital Signal Processor)) ou des blocs matériels dédiés correspondant à des accélérateurs de calcul. Les ressources de mémorisation correspondent à l’ensemble des ressources permettant de stocker les données et les programmes nécessaires. Les ressources de communication désignent ici les éléments assurant les échanges entre les ressources de calcul. La définition des ressources logicielles consiste à caractériser les éléments nécessaires à l’exécution des fonctions de l’application sur les ressources matérielles de la plate-forme. Cette définition dépend notamment de la distribution des fonctions sur les ressources de calcul disponibles. Il s’agit également de déterminer l’usage ou non de systèmes d’exploitation temps réel et de définir l’ordonnancement et les priorités relatives des tâches qui seront exécutées par les processeurs.
Face à l’augmentation de la complexité de conception, le dimensionnement de l’architecture est de plus en plus effectué au plus tôt dans le processus de conception, dès la phase de spécification. L’apport du dimensionnement suffisamment tôt dans le processus de développement consiste à pouvoir mesurer l’incidence des différents choix de conception de l’architecture, des choix inappropriés pouvant nuire au bon fonctionnement de l’architecture. Le dimensionnement comprend généralement deux étapes. La première consiste à l’évaluation des performances d’une architecture donnée, pour des conditions de fonctionnement données. On entend par performances l’ensemble des critères permettant de juger de l’efficacité d’une architecture vis-à-vis de contraintes spécifiques à satisfaire. Par exemple, ces contraintes peuvent porter sur le respect de contraintes de temps, le coût de la solution choisie, l’encombrement ou la consommation. La deuxième étape du processus de dimensionnement consiste à explorer l’espace de conception. Cette exploration permet d’identifier un ensemble de solutions possibles respectant les contraintes considérées. Ces solutions sont progressivement évaluées et comparées afin de déterminer une solution satisfaisant au mieux aux critères considérés.
L’évaluation des performances et l’exploration de l’espace de conception nécessitent de disposer d’une représentation fidèle de l’architecture. Classiquement, la représentation de l’architecture est obtenue selon une approche en Y [18]. Le principe de cette approche est basé sur la combinaison de la description de l’application et de la description de la plate-forme afin de former un modèle de l’architecture. Le principe de cette approche est présenté dans la Figure 2.1.
|
Table des matières
Introduction ..
Chapitre 1 Contexte applicatif : conception des architectures électroniques pour le domaine automobile
1.1 Evolution des architectures électroniques dans le domaine automobile
1.1.1 Evolution des fonctionnalités et de l’utilisation des systèmes électroniques
1.1.2 Analyse et évolution des architectures électroniques des véhicules
1.1.2.1 Protocoles de communication dans le domaine automobile
1.1.2.2 Architecture matérielle des ECUs
1.1.2.3 Architecture logicielle des ECUs
1.2 Conception des architectures électroniques dans le domaine automobile
1.2.1 Processus global de conception et contraintes associées
1.2.2 Approche orientée plate-forme pour la conception des architectures des ECUs 17
1.2.3 Conception des architectures distribuées
1.3 Problématiques liées à la conception et au dimensionnement des architectures distribuées dans le domaine automobile
Chapitre 2 Etat de l’art sur les approches de dimensionnement des architectures de systèmes embarqués
2.1 Catégories de méthodes de dimensionnement des systèmes embarqués
2.1.1 Principes et définitions
2.1.2 Méthodes d’évaluation et d’exploration
2.1.3 Modèles pour la description des architectures des systèmes embarqués
2.2 Approches de modélisation et de dimensionnement existantes
2.3 Modélisation transactionnelle des architectures
2.3.1 Définition des niveaux de représentation des architectures
2.3.2 Simulation de modèles transactionnels
2.3.3 Techniques d’amélioration du compromis rapidité et précision de modèles transactionnels
2.4 Contributions visées en vue d’améliorer les modèles de performances des architectures
Chapitre 3 Proposition d’une technique de modélisation en vue d’améliorer la simulation des modèles de performances des architectures distribuées
3.1 Approche considérée pour la modélisation des architectures de systèmes embarqués
3.1.1 Notations utilisées pour la modélisation des architectures
3.1.2 Moyens de simulation utilisés
3.2 Proposition d’une technique de modélisation en vue de l’amélioration des modèles de performance
3.2.1 Principe de la technique proposée
3.2.2 Application de la technique de modélisation proposée pour la modélisation des ressources de communications
3.2.3 Positionnement de la contribution
3.3 Qualification de la technique de modélisation proposée
3.3.1 Qualification de l’apport de la technique sur l’accélération des temps de simulation
3.3.2 Qualification de l’apport de la technique sur la précision des modèles
3.4 Illustration de l’application de l’approche de modélisation et de la technique proposée
3.5 Bilan et synthèse des contributions
Chapitre 4 Application de la technique proposée pour le dimensionnement d’une architecture distribuée inspirée du domaine automobile
4.1 Présentation de l’étude de cas
4.1.1 Conception d’une architecture multi calculateur supportant de nouvelles technologies de communication
4.1.2 Description du protocole HPAV
4.2 Modélisation et simulation de l’architecture étudiée
4.2.1 Modélisation de l’architecture
4.2.2 Modélisation de l’interface d’émission HPAV
4.2.3 Résultats de simulation
4.3 Application de la technique proposée pour la modélisation des interfaces HPAV
4.3.1 Principe de l’application de la technique de modélisation
4.3.2 Résultats obtenus
4.3.2.1 Observation des propriétés
4.3.2.2 Mesures des temps de simulation
Conclusion et perspectives
Acronymes & Abréviations
Bibliographie.
Télécharger le rapport complet