L'architecture multicœur d'un calculateur : cœurs, Lockstep et sûreté

Un EDC17 tenait sur un seul cœur cadencé autour de 150 MHz avec 2 Mo de flash. Un MG1 ou MD1 à base AURIX TC29x embarque trois cœurs à 300 MHz et 8 Mo, et la génération TC3xx monte jusqu'à six cœurs à 400 MHz et 16 Mo. Ce n'est pas une simple course à la puissance : c'est un changement d'architecture, commandé par la sûreté de fonctionnement.

CE QU'IL Y A DANS UN CALCULATEUR Connecteur Alimentation Microcontrôleurle cœur Flashle programme EEPROMadaptations Étage de sortiedrivers Sorties
Microcontrôleur, mémoires (Flash, EEPROM) et étage de sortie

Pourquoi plusieurs cœurs

Un calculateur moderne ne fait plus que gérer la combustion. Il dialogue avec les aides à la conduite, l'hybridation, la passerelle et les fonctions de cybersécurité, tout en pilotant l'injection et l'allumage à la microseconde. Le multicœur permet de séparer les mondes : un ou plusieurs cœurs pour l'applicatif temps réel, d'autres pour les tâches de communication et de diagnostic, un module de sécurité dédié à part. La base logicielle AUTOSAR répartit ces tâches sur les cœurs, ce qui prolonge la logique décrite dans la plateforme MDG1 et dans AURIX, la génération sécurisée.

Le Lockstep : le cœur qui se double

Le point central de la sûreté est le Lockstep. Certains cœurs sont physiquement dédoublés : un cœur principal exécute l'applicatif, un cœur checker identique exécute exactement le même flux d'instructions, et une logique de comparaison confronte leurs résultats cycle par cycle. Toute divergence — un bit basculé dans une unité de calcul, une défaillance ponctuelle du silicium — est détectée immédiatement, avant qu'une consigne erronée n'atteigne un injecteur.

Sur la génération TC3xx d'Infineon, la répartition est précise : selon la variante, on trouve 1 cœur/1 checker, 2/1, 3/2, 3/3, 4/2, jusqu'à 6 cœurs dont 4 en Lockstep sur le TC39x. Le cœur checker n'apparaît pas dans la carte mémoire vue du logiciel : il travaille en coulisse, redondant par construction. Pour éviter qu'une même perturbation externe (une chute de tension, un pic thermique) ne fausse les deux cœurs de la même façon, le checker est souvent décalé de quelques cycles et implanté avec une diversité physique — orientation et emplacement différents sur la puce. Cette précaution vise les défaillances dites de mode commun.

La Safety Management Unit

Toutes ces alarmes convergent vers un organe central, la SMU (Safety Management Unit). Elle collecte les signaux d'anomalie — divergence Lockstep, erreur mémoire non corrigible signalée par l'ECC, débordement d'un watchdog, tension hors plage — et, selon la gravité, déclenche l'état sûr : redémarrage du cœur, ou coupure d'un étage de sortie pour mettre l'actionneur au repos. Ce dernier point rejoint l'étage de sortie : le MOSFET et les drivers, et complète la surveillance logicielle décrite dans le processeur de surveillance et le watchdog.

Les mémoires locales et l'interconnexion

Chaque cœur dispose de mémoires de travail rapides, sans temps d'attente : la DSPR (données) et la PSPR (programme), appelées scratchpad. Sur les grosses variantes TC3xx, la DSPR atteint 240 Ko sur les deux premiers cœurs. Les cœurs, la flash et les périphériques communiquent par une matrice d'interconnexion, la SRI (Shared Resource Interconnect), qui remplace l'ancien bus unique et autorise plusieurs échanges simultanés. C'est cette organisation qui permet à un cœur de lire une banque de flash pendant qu'un autre exécute son code : la performance temps réel n'est pas qu'une affaire de fréquence, c'est aussi une affaire de chemins d'accès. L'organisation générale des adresses est traitée dans la carte mémoire d'un calculateur.

ASIL-D : la raison de tout cela

Cet appareillage n'existe pas pour la puissance de calcul, mais pour un objectif normatif : atteindre le niveau ASIL-D de la norme ISO 26262, le plus exigeant. Un calculateur moteur peut, en cas de défaillance, provoquer une accélération non commandée ou un blocage : la conséquence potentielle impose la détection instantanée du moindre défaut de calcul. Le Lockstep, la SMU, l'ECC et le watchdog forment ensemble la chaîne de sûreté qui rend cette détection possible. La cohérence des grandeurs mesurées, elle, relève des seuils de plausibilité.

Ce que le reprogrammateur doit en retenir

Le multicœur ne déplace pas le travail de calibration : les cartographies vivent toujours dans une zone précise de la flash programme, et le raisonnement moteur reste le même. Mais il éclaire deux réalités de terrain. D'abord, la surveillance croisée est permanente : un calculateur récent se contrôle lui-même en continu, et une incohérence introduite dans les données se heurte à cet appareil de contrôle. Ensuite, l'identification prime : sur une même référence, la variante de silicium, le nombre de cœurs et l'état des protections varient, d'où l'importance de lire la version matérielle et la date de fabrication avant toute décision, comme le rappelle lire une référence de calculateur. Comprendre le Lockstep, ce n'est pas apprendre à le contourner — c'est comprendre pourquoi un calculateur moderne pardonne moins l'à-peu-près.

Le partitionnement des tâches

Le multicœur n'a de sens que par la répartition qu'il autorise. Sur un calculateur récent, l'injection et l'allumage — les tâches au timing le plus serré — s'exécutent en priorité sur un cœur dédié, tandis que la communication réseau, le diagnostic embarqué et les fonctions transverses occupent les autres, et qu'un module de sécurité séparé prend en charge la cryptographie. Cette séparation a une vertu de sûreté directe : une tâche secondaire qui déraille ne peut pas voler le temps de calcul de la boucle d'injection, et un défaut cantonné à un cœur ne compromet pas la chaîne critique surveillée en Lockstep. On parle parfois d'« îlot de sûreté » pour désigner ce noyau protégé — cœurs redondants, mémoire à correction d'erreur, surveillance dédiée — au sein d'une puce qui héberge par ailleurs des fonctions moins critiques. C'est cette architecture en couches, et non la seule fréquence d'horloge, qui distingue un microcontrôleur automobile d'un processeur grand public, et qui explique qu'un calculateur récent puisse à la fois gérer un moteur et dialoguer avec tout le véhicule sans jamais mettre en péril la fonction vitale.

Voir aussi AURIX, la génération sécurisée, le processeur de surveillance et le watchdog et le TriCore d'Infineon.


Sur ANP Engineering — file service de reprogrammation moteur pour professionnels : file service ECU, correction de checksum, calculateurs pris en charge, tarifs.

ANP Wiki
ANPFile Service · reprog en ligne
Chargement…