FR 3055986 A1 20180316 FR 1658541 A 20160913 1 DISPOSITIF DE CONTROLE DE LA REINITIALISATION D'UN CALCULATEUR EMBARQUE AUTOMOBILE [1] L'invention concerne, de façon générale, le contrôle du bon fonctionnement d'un microprocesseur ou d'un microcontrôleur d'un calculateur, notamment embarqué dans un véhicule. L'invention vise par conséquent un dispositif de contrôle de la réinitialisation d'un calculateur, destiné plus particulièrement aux véhicules automobiles. [2] De manière connue, un véhicule automobile comprend une pluralité d'organes fonctionnels pilotés par un dispositif de commande, désigné calculateur. Un tel calculateur permet par exemple d'activer la commande des feux du véhicule (feux de stop, clignotants, etc.) ou les commandes des essuie-vitres avant et arrière. [3] En référence à la figure 1, un calculateur comporte un module de commande, comprenant un microcontrôleur ou un microprocesseur, assurant une pluralité de fonctions permettant de piloter des organes fonctionnels du véhicule. Selon le contexte (luminosité, température, etc.), ces fonctions se trouvent dans un état actif ou inactif. Cependant, comme cela est connu, un tel calculateur peut parfois présenter des disfonctionnements. [4] Selon l'état de la technique, un dispositif de surveillance, désigné communément « chien de garde », ou « watchdog » en anglais, peut être intégré au calculateur afin de surveiller son bon état de fonctionnement. Le document FR 2770917 décrit ainsi un système de contrôle d'un calculateur de véhicule comprenant un dispositif de surveillance. Un tel dispositif de surveillance permet de surveiller l'état de fonctionnement des fonctions du module de commande du calculateur. Le système de contrôle décrit dans ce document comprend en outre des moyens de réinitialisation de l'ensemble des fonctions du module de commande en cas de détection d'un disfonctionnement. [005] Un tel dispositif de surveillance fonctionne typiquement par la diffusion d'un signal émis périodiquement par le module de commande, permettant de réarmer régulièrement une minuterie. Lorsqu'une action du module de commande est trop longue à être effectuée, le signal n'est pas émis et la minuterie continue son décompte jusqu'à son terme. Le dispositif de surveillance commande alors une réinitialisation automatique du calculateur lorsque le signal n'est plus émis et que la minuterie n'est pas réarmée. 3055986 2 [6] Au cours de la réinitialisation d'un calculateur, certaines des fonctions précitées du module de commande doivent être conservées ou placées dans un état défini dans le but d'assurer la sécurité des passagers du véhicule et/ou de ne pas perturber le conducteur alors que d'autres fonctions peuvent être interrompues. Il est alors connu de 5 différencier les fonctions dites « maintenues », lorsque la fonction correspondante doit être contrôlée dans un état de sortie précis - actif, inactif ou toute autre valeur, ou rester dans un état inchangé - pendant la réinitialisation du calculateur, et les fonctions dites « interruptibles », lorsque la fonction correspondante peut être désactivée, quel que soit son état (actif, inactif ou toute autre valeur), pendant la réinitialisation du calculateur. 10 Autrement dit, on désigne par fonctions « maintenues » pendant la réinitialisation les fonctions devant être contrôlées, à savoir forcées dans un état, actif, inactif ou toute autre valeur, ou inchangées, c'est-à-dire maintenues dans un état identique à l'état avant réinitialisation. On désigne par fonctions « interruptibles » les fonctions pouvant être interrompues pendant la réinitialisation, c'est-à-dire dont l'état de sortie importe peu 15 pendant la réinitialisation. [7] A titre d'exemples non limitatifs, des fonctions devant être maintenues, c'est-à-dire contrôlées dans un état de sortie, lors de la réinitialisation du calculateur, correspondent aux feux de circulation du véhicule qui doivent rester actifs en cas de circulation dans des conditions nocturnes ou encore l'avertisseur sonore qui doit au 20 contraire être conservé dans un état inactif tout au long de la réinitialisation. [8] Cependant, ce maintien des fonctions maintenues dans un état contrôlé (actif, inactif ou toute autre valeur) ou inchangé pendant la phase de réinitialisation peut nécessiter l'utilisation de composants électroniques supplémentaires. En particulier pour chacune des fonctions maintenues dans un état inchangé, il est connu d'utiliser par 25 exemple un démultiplexeur comprenant un module de mémorisation, désigné « latch ». Un tel démultiplexeur commande les signaux émis par les fonctions du module de commande et les répartit sur les voies auxquelles ils sont destinés (maintenues actives ou inactives par exemple). Autrement dit, un tel ensemble de démultiplexeurs permet de trier des états des sorties des fonctions maintenues, entre celles maintenues actives, celles maintenues 30 inactives et celles maintenues inchangées. En outre, le latch permet la mémorisation de cet état des sorties des fonctions maintenues demandé par le module de commande. [9] Un tel dispositif de surveillance « chien de garde » comprend ainsi un latch pour chacune des fonctions devant être forcées ou maintenues dans un état inchangé, ce qui 3055986 3 présente l'inconvénient d'utiliser un grand nombre de composants électroniques. De plus, un tel calculateur, comprenant autant de composants, présente un coup élevé. [0010] L'invention vise donc à pallier ces inconvénients en proposant un module de commande moins onéreux, nécessitant peu de composants électroniques. 5 [0011] Plus précisément, pour parvenir à ce résultat, la présente invention concerne un dispositif de contrôle pour un calculateur embarqué, en particulier pour véhicule automobile, ledit dispositif de contrôle étant apte à coopérer avec le calculateur pour assurer une pluralité de fonctions, lesdites fonctions de ladite pluralité de fonctions fournissant respectivement des sorties correspondant à des sorties du calculateur, ledit 10 dispositif de contrôle comprenant : un module de commande, un module de réinitialisation, adapté pour réinitialiser ledit module de commande, sur réception d'un signal de réinitialisation, ladite réinitialisation présentant une durée de réinitialisation inférieure à une durée maximale de réinitialisation 15 prédéterminée, et un module de surveillance, apte à détecter un disfonctionnement du calculateur, ledit module de surveillance étant adapté pour envoyer le signal de réinitialisation audit module de réinitialisation en cas de détection d'un disfonctionnement, le dispositif de contrôle étant remarquable en ce que le module de commande comprend 20 un sous-module d'au moins une fonction temporairement interruptible, ladite au moins une fonction temporairement interruptible présentant une durée maximale autorisée d'interruption supérieure à ladite durée maximale de réinitialisation prédéterminée, pendant laquelle les sorties de ladite au moins une fonction temporairement interruptible ne sont pas fournies. 25 [0012] Un tel dispositif de contrôle permet d'utiliser une moindre quantité de composants électroniques, permettant ainsi l'utilisation d'un calculateur moins onéreux. [0013] De manière avantageuse, le module de commande comprend par ailleurs un sous-module de fonctions maintenues et un sous-module de fonctions interruptibles, les sorties desdites fonctions maintenues étant sauvegardées et fournies pendant une 30 réinitialisation du calculateur et lesdites fonctions interruptibles étant interrompues pendant une réinitialisation du calculateur sans limitation de durée. Ainsi le module de commande permet de classer les fonctions en trois groupes distincts : les fonctions maintenues, les fonctions interruptibles et les fonctions temporairement interruptibles. 3055986 4 [0014] Avantageusement, le dispositif de contrôle comprend un module de mémorisation des sorties des fonctions maintenues commandées par le module de commande, permettant de garder en mémoire l'état des fonctions demandé. [0015] Avantageusement, le dispositif de contrôle comprend un module de commutation 5 apte à assurer la commutation des sorties du calculateur permettant aux sorties du calculateur de correspondre aux sorties des fonctions du module de commande. [0016] De manière avantageuse, le calculateur comprend le module de commande. [0017] Avantageusement, le calculateur comprend le module de réinitialisation. [0018] De manière avantageuse, le calculateur comprend le module de surveillance. 10 [0019] De manière avantageuse, le calculateur comprend le module de mémorisation. [0020] Avantageusement, le calculateur comprend le module de commutation. [0021] L'invention concerne également un véhicule comprenant un dispositif de contrôle selon un mode de réalisation de l'invention. [0022] D'autres caractéristiques et avantages de l'invention apparaîtront à la lecture de 15 la description détaillée des formes de réalisation de l'invention, données à titre d'exemple uniquement, et en référence aux dessins qui montrent : - la figure 1, un schéma d'un dispositif de contrôle selon l'art antérieur, et - la figure 2, un schéma d'un dispositif de contrôle selon une forme de réalisation préférée de l'invention. 20 [0023] Dans ce qui va suivre, les formes de réalisation décrites s'attachent plus particulièrement à une mise en oeuvre du dispositif selon l'invention au sein d'un véhicule automobile. Cependant, toute mise en oeuvre dans un contexte différent, en particulier dans tout type de véhicule, est également visée par la présente invention. [0024] La figure 2 représente un calculateur 10 comprenant un module de commande 20 25 assurant le pilotage d'organes fonctionnels d'un véhicule, plus particulièrement d'un véhicule automobile, selon une forme de réalisation préférée, non limitative, de l'invention. 3055986 5 [0025] A cet effet, comme décrit précédemment, un véhicule automobile comprend une pluralité d'organes fonctionnels pilotés par un calculateur 10. Le calculateur 10, généralement connu sous le nom d'Unité de Commande Electronique (UCE) ou Electronic Control Unit (ECU) en langue anglaise, est un système embarqué qui contrôle l'ensemble 5 des dispositifs d'un véhicule automobile. Un tel calculateur 10, pouvant présenter un disfonctionnement, comprend typiquement un dispositif de contrôle 1 coopérant avec le calculateur 10 pour assurer le pilotage d'un certain nombre de fonctions. Intégré ou non au calculateur 10, un module de surveillance 40, souvent désigné « watchdog », signifiant « chien de garde » en langue anglaise, est apte à détecter un disfonctionnement et à 10 réinitialiser le calculateur 10, comme cela est connu de l'homme de l'art. [0026] Selon une forme de réalisation préférée, en référence à la figure 2, un tel dispositif de contrôle 1 comprend : un module de commande 20, définissant un état des sorties des fonctions, un module de réinitialisation 30, réinitialisant le calculateur 10 en cas de détection 15 d'un disfonctionnement, un module de surveillance 40, envoyant un signal de réinitialisation au module de réinitialisation 30 en cas de détection d'un disfonctionnement du calculateur 10, un module de mémorisation 50, permettant de garder en mémoire l'état des sorties des fonctions demandé par le module de commande 20, et 20 un module de commutation 60, permettant d'assurer la correspondance entre les sorties des fonctions et les sorties 5 du calculateur 10, lesdites sorties des fonctions étant reçues directement du module de commande 20 ou reçues du module de mémorisation 50. [0027] Le module de commande 20, comprenant un microcontrôleur ou un 25 microprocesseur, assure, à l'aide de ressources matérielles du calculateur 10, une pluralité de fonctions. Chacune de ces fonctions présente un état de sortie, typiquement actif, inactif ou inchangé, associé à un organe fonctionnel du véhicule, tels que les moyens de signalisation et/ou d'éclairage, les essuie-vitres, etc. Comme décrit précédemment, au cours de la réinitialisation d'un calculateur 10, certaines fonctions, désignées fonctions 30 maintenues 21, doivent être dans un état contrôlé (forcé ou inchangé). Cet état peut être maintenu volontairement actif, comme les feux de circulation ou les essuie-vitres indispensables par temps de pluie, maintenu inactif ou maintenu dans un état inchangé, identique à l'état avant réinitialisation. 3055986 6 [0028] D'autres fonctions, n'impactant pas la sécurité des passagers ou le confort du conducteur, désignées fonctions interruptibles 22, sont définies comme étant des fonctions interruptibles, c'est-à-dire pouvant être désactivées. L'interruption d'une fonction signifie que l'organe fonctionnel associé est désactivé au cours de la réinitialisation du calculateur 5 10. Autrement dit, l'organe fonctionnel associé à la fonction interrompue n'est pas piloté, l'état de sortie de a fonction associé (typiquement, actif ou inactif) important peu. [0029] Selon l'invention, le module de commande 20 comprend également une pluralité de fonctions, désignées fonctions temporairement interruptibles 23, dont l'interruption temporaire n'impacte ni la sécurité des passagers, ni le confort du conducteur, à condition 10 que cette interruption n'excède pas une durée maximale prédéterminée correspondant à une durée d'interruption autorisée desdites fonctions. [0030] A cette fin, chaque fonction est prévue, en conception, pour pouvoir être interrompue ou non, et, lorsqu'elle peut être interrompue, il est déterminé s'il existe une durée maximale d'interruption. Cette classification des fonctions assurées par le module 15 de commande 20 tient compte, en particulier, de la sécurité du véhicule et des passagers, ainsi que du confort des passagers. [0031] Toujours en référence à la figure 2, le module de commande 20 permet ainsi de classer les fonctions assurées par le module de commande 20 à l'aide des ressources matérielles du calculateur 10 en trois catégories distinctes de manière à former trois 20 groupes de fonctions. Ces trois groupes permettent de définir une gestion des états des sorties pour chaque fonction en cas de réinitialisation du calculateur 10. Ainsi, le module de commande 20 comprend : un sous-module de fonctions maintenues 21, un sous-module de fonctions interruptibles 22, et 25 un sous-module de fonctions temporairement interruptibles 23. [0032] Selon l'invention, lors d'une réinitialisation du calculateur 10, les fonctions maintenues 21 sont contrôlées dans un état défini actif, inactif ou inchangé. Une telle fonction maintenue 21 est typiquement activée ou désactivée de manière volontaire ou encore conservée dans un état identique à son état avant réinitialisation. Les fonctions 30 interruptibles 22 peuvent être désactivées pendant toute la réinitialisation du calculateur 10, tout comme les fonctions temporairement interruptibles 23, déterminées, au moment de la conception du calculateur 10, comme ayant une durée d'interruption acceptable supérieure à la durée maximale de réinitialisation du calculateur 10. 3055986 7 [0033] Au cours de cette réinitialisation, il convient de mémoriser l'état de sortie précité des fonctions maintenues 21 du module de commande 20. A cette fin, le calculateur 10 comprend un module de mémorisation 50, comprenant une pluralité de blocs de mémorisation communément désignés « latches », signifiant « loquets » en langue 5 anglaise. Un tel module de mémorisation 50 permet de lire l'état demandé des fonctions maintenues 21, typiquement actif, inactif ou toute autre valeur, et de mémoriser cet état. En pratique, le module de mémorisation 50 comprend un latch par fonction maintenue 21. [0034] Le dispositif de contrôle 1 selon une forme préférée de réalisation de l'invention comprend également un module de surveillance 40, communément désigné « chien de 10 garde » ou « watchdog » en langue anglaise. Un tel module de surveillance 40 permet de surveiller le bon état de fonctionnement de l'ensemble des modules et des fonctions du calculateur 10. [0035] En pratique, un module de surveillance 40 comprend typiquement une minuterie couplée à un circuit électronique ou un logiciel spécialisé permettant de s'assurer que le 15 calculateur 10 ne reste pas bloqué en effectuant une liste d'actions. Le fonctionnement du circuit électronique repose typiquement sur le principe que chaque étape doit s'effectuer en un temps maximal prédéterminé. A la fin de chaque étape, un signal est envoyé au calculateur 10 permettant la remise à zéro de la minuterie. Si le temps de réalisation d'une action dépasse la durée prédéterminée, alors aucun signal n'est envoyé. 20 [0036] Un tel signal est typiquement envoyé à un module de réinitialisation 30, désigné « Reset ». Selon un mode de réalisation préféré, en référence à la figure 2, le module de commande 20 comprend le module de réinitialisation 30. Un tel module de réinitialisation 30 permet de lire le signal envoyé par le module de surveillance 40. En cas de disfonctionnement du calculateur 10, le module de réinitialisation 30 active la 25 réinitialisation du calculateur 10. Selon le mode de réalisation préférée décrit dans ce document, la réinitialisation du calculateur 10 est réalisée par l'intermédiaire de la réinitialisation du module de commande 20. [0037] Enfin, le dispositif de contrôle 1 selon une forme de réalisation de l'invention comprend un module de commutation 60 assurant la commutation des sorties 5 du 30 calculateur 10 associées aux fonctions du module de commande 20. [0038] La forme de réalisation décrite dans ce document présente un calculateur 10 comprenant un dispositif de contrôle 1 et comprenant à ce titre le module de commande 3055986 8 20, le module de réinitialisation 30, le module de surveillance 40, le module de mémorisation 50 et le module de commutation 60, mais il va de soi qu'un tel dispositif de contrôle 1 ou chacun des modules du dispositif de contrôle 1 pourrait être inclus à un véhicule hors du calculateur 10. 5 REVENDICATIONS: 1. Dispositif de contrôle (1) pour un calculateur (10) embarqué, notamment dans un véhicule, en particulier dans un véhicule automobile, ledit dispositif de contrôle (1) étant apte à coopérer avec le calculateur (10) pour assurer une pluralité de fonctions, lesdites fonctions de ladite pluralité de fonctions fournissant respectivement des sorties correspondant à des sorties (5) du calculateur (10), ledit dispositif de contrôle (1) comprenant : - un module de commande (20), un module de réinitialisation (30), adapté pour réinitialiser ledit module de commande (20), sur réception d'un signal de réinitialisation, ladite réinitialisation présentant une durée de réinitialisation inférieure à une durée maximale de réinitialisation prédéterminée, et un module de surveillance (40), apte à détecter un disfonctionnement du calculateur (10), ledit module de surveillance (40) étant adapté pour envoyer le signal de réinitialisation audit module de réinitialisation (30) en cas de détection d'un disfonctionnement, le dispositif de contrôle (1) étant caractérisé en ce que le module de commande (20) comprend un sous-module d'au moins une fonction temporairement interruptible (23), ladite au moins une fonction temporairement interruptible (23) présentant une durée maximale autorisée d'interruption supérieure à ladite durée maximale de réinitialisation prédéterminée, pendant laquelle les sorties de ladite au moins une fonction temporairement interruptible (23) ne sont pas fournies. 2. Dispositif de contrôle (1) selon la revendication 1, dans lequel le module de commande (20) comprend par ailleurs un sous-module de fonctions maintenues (21) et un sous- module de fonctions interruptibles (22), les sorties desdites fonctions maintenues (21) étant sauvegardées et fournies pendant une réinitialisation du calculateur (10) et lesdites fonctions interruptibles (22) étant interrompues pendant une réinitialisation du calculateur (10) sans limitation de durée. 3. Dispositif de contrôle (1) selon l'une des revendications précédentes, comprenant un module de mémorisation (50) des sorties des fonctions maintenues (21) commandées par le module de commande (20). 3055986 10 4. Dispositif de contrôle (1) selon l'une des revendications précédentes, comprenant un module de commutation (60) apte à assurer la commutation des sorties (5) du calculateur (10) de manière à correspondre aux sorties des fonctions. 5. Dispositif de contrôle (1) selon l'une des revendications précédentes, dans lequel le 5 calculateur (10) comprend le module de commande (20). 6. Dispositif de contrôle (1) selon l'une des revendications précédentes, dans lequel le calculateur (10) comprend le module de réinitialisation (30). 7. Dispositif de contrôle (1) selon l'une des revendications précédentes, dans lequel le calculateur (10) comprend le module de surveillance (40). 10 8. Dispositif de contrôle (1) selon l'une des revendications précédentes, dans lequel le calculateur (10) comprend le module de mémorisation (50). 9. Dispositif de contrôle (1) selon l'une des revendications précédentes, dans lequel le calculateur (10) comprend le module de commutation (60). 10. Véhicule comprenant un dispositif de contrôle (1) selon l'une des revendications 15 précédentes.