Brevet FR2511802A1 — publié le 19830225

Procédé pour accrottre la fiabilité des mémoires à semi-conducteurs dans les véhicules automobiles 11. L'invention a pour objet un procédé pour accrot- tre la fiabilité des mémoires à semi-conducteurs, notamment des mémoires EPROM, dans les installations de calcul de véhicules. Il est déjà connu, d'une façon générale, de commander, au moyen d'une calculatrice, des processus de fonctionnement dans un véhicule automobile, notamment l'allumage ou l'injection, la consommation d'essence ou la mise en route de moteurs électriques dans les véhicules électriques. Cette calculatrice comporte, outre une unité de traitement, une mémoire dans laquelle sont contenus des programmes et dans laquelle on peut stocker des paramètres de fonctionnement. Dans le véhicule automobile, ces mémoires sont soumises à des sollicitations physiques spéciales, notamment parce que les différences de températures peuvent être très élevées et que les composants sont exposés à l'humidité et aux huiles.Les mémoires de constantes telles que les mémoires "EPROM'S, notamment, ont alors la particularité de modifier, dans des conditions extrêmes, leurs propriétés de stockage en mémoire au cours du temps, des informations pouvant ainsi être perdues. pour les véhicules, il s'agit là cependant d'une propriété inacceptable, car cela peut entrarnsr l'arrêt complet du véhicule. Des composants sélectionnés de mémoires â semiconducteurs sont bien utilisables même à des températures extrêmes. Cependant, de tels composants de mémoires sont très onéreux, de sorte qu'ils ne peuvent pas autre utilisés pour les productions en grandes séries. Pour les applications aéronautiques et spatiales, il est en outre usuel, pour avoir une complète redondance, de mettre les programmes en mémoire au moins trois fois et de comparer constamment ces programmes entre eux. Il est certain qu'un tel procédé offre une fiabilité élevée. Il est cependant onéreux et exige un temps de contrale élevé ainsi que, en conséquence, des unités de traitement rapides. Ce procédé ntest donc pas applicable non plus pour les véhicules de série. Un autre procédé consiste à ajouter des chiffres correcteurs au jeu de données. Cela conduit cependant à une structure malcommode des données. En effet, on doit dans ce cas, par exemple, utiliser un microprocesseur à 16 bits au lieu d'un microprocesseur à 8 bits, si l'on doit ajouter un seul chiffre de contrale à un mot de données à 8 bits. Si l'on désire effectuer non seulement une détection d'erreur, mais aussi une correction absolue, la dépense de contrôle augmente très fortement. Par conséquent, ce procédé exige non seulement des calculatrices rapides, mais aussi des unités de traitement présentant une étendue de traitement appropriée. L'invention a pour but d'éviter les inconvénients ci-dessus et concerne à cet effet un procédé du type cidessus caractérisé en ce qu'on stocke deux fois les programmes en mémoire et en ce qu'on contrale l'exactitude des deux programmes, un signal d'alarme étant émis lors de l'apparition d'un défaut dans l'un des deux programmes, le programme intact continuant à autre utilisé pour le fonctionnement de l'installation. Par rapport aux réalisations connues, le procédé conforme à l'invention a pour avantage qu'on peut utiliser des composants de mémoires usuels, notamment des mémoires EPROM et qu'il est possible d'éviter toute défaillance de mémoire complète ou partielle sans révision prématurée. Un autre avantage réside en ce qu'il n'y a pas de nouvelle dépense de programmation. Notamment pour les programmes relativement courts, qui sont usuels dans la technique des véhicules, il est possible, par exemple, d'utiliser une mémoire EPROM à 2 k bytes au lieu d'une mémoire EPROM à 1 k byte ou de mettre en oeuvre une mémoire EPROM à 4 k bytes au lieu d'une mémoire EPROM à 2 k bytes. Dans des circonstances favorables, il n'en résulte donc pas de frais supplémentaires pour la mise en mémoire des programmes si, par exemple, l'on met en mémoire deux fois un programme ayant une longueur de 2 k bytes dans une mémoire EPROM de 4 k bytes. Au moyen du microprocesseur, qui sert à déter- miner les paramètres de fonctionnement du véhicule, on vérifie l'exactitude des deux programmes à des interval-les de temps plus ou moins réguliers. Cela peut être effectué, par exemple, en contrôlant pas à pas l'identité des deux programmes. S'il se produit un écart, un signal d'alarme est émis pour signaler au chauffeur du véhicule l'apparition d'un défaut, de manière qu'il puisse se diriger vers un atelier de réparation. Dans un tel cas, la calculatrice continue judicieusement à fonctionner avec les données qui conduisent à un résultat valable pour elle. Des dispositions indiquées dans la suite permettent d'obtenir des modes de réalisation avantageux et des perfectionnements du procédé conforme à l'invention. Le contrale du programme est judicieusement effectué lorsque la calculatrice n'est pas fortement chargée par d'autres taches. Tel est le cas, habituellement, lors du démarrage du moteur ou lors de son fonctionnement au ralenti. Cependant, on peut aussi envisager d'autres instants appropriés. Si l'on utilise l'exemple mentionné précédemment pour contrôler les deux programmes, on a la possibilité d'effectuer au moyen d'un sys tème à interruptions le contrale des pas individuels du programme par section, une interruption ayant lieu lorsqu'il se produit une variation des paramètres de fonctionnement du moteur. Le procédé exposé ci-dessus est relativement complexe. Il est donc plus favorable d'effectuer le contrôle par formation d'une somme de chiffres. On forme donc la somme de chiffres du programme considéré et on la compare avec la somme de chiffres de l'autre programme. Il est alors avantageux de stocker en mémoire une valeur de référence qui peut être comparée à la somme de chiffres. Un programme est défectueux si sa somme de chiffres ne coincide pas avec la valeur de référence. Dans ce cas, également, un signal d'avertissement doit être émis pour le chauffeur du véhicule, de manière qu'il puisse rechercher un atelier de réparation, tandis que les données de fonctionnement du véhicule sont déterminées par la partie intacte du programme. La formation des sommes de chiffres permet un contrale des programmes plus rapide que le contraIe pas à pas. Un autre procédé avantageux consiste à effectuer le contrale par une combinaison logique arithmétique. Dans ce cas également, on obtient une valeur numérique que l'on peut comparer avec la valeur correspondante ou avec une valeur de référence et qui sert à juger le programme. On arrive au même résultat par le procédé de l'analyse de signature qui est décrit de façon plus précise, par exemple dans la Note d'application 222 " A Designer's Guide to Signature Analysis" (Guide du Projecteur pour l'Analyse de Signature) de Hewlett and Packard. Si des défauts sont constatés, la partie intacte du programme continue à être utilisée. Un signal est envoyé au chauffeur pour qu'il cherche l'atelier. Les procédés décrits permettent la mise en application en série notamment de mémoires EPROM, car dans les véhicules, il ne doit pas se produire de pannes pendant le fonctionnement sans avertissement préalable. Le procédé exposé fournit une solution économique pour le choix des unités de mémoires. Il permet une plus faible dépense de programmation et une sécurité relativement grande dans la détection des défauts. La probabilité d'apparition de défauts doubles est très faible, car le contre d'exactitude a lieu très souvent et que l'apparition de deux défauts dans un très court intervalle de temps est très rare. REVENDICATIONS 10) Procédé pour accroître la fiabilité des mémoires à semi-conducteurs, notamment des mémoires EPROM, dans les installations de calcul de véhicules, caractérisé en ce qu'on stocke deux fois les programmes en mémoire et en ce qu'on contrale l'exactitude des deux programmes, un signal d'alarme étant émis lors de l'apparition d'un défaut dans l'un des deux programmes, le programme intact continuant à être utilisé pour le fonctionnement de l'installation. 20) Procédé selon la revendication 1, caractérisé en ce qu'on effectue le contre des programmes lors du démarrage du moteur du véhicule et/ou lors du fonctionnement au ralenti du moteur d1entrainement. 30) Procédé selon l'une ou l'autre des revendications 1 et 2, caractérisé en ce qu'on effectue le contrôle par formation de sommes de chiffres. 40) Procédé selon l'une ou l'autre des revendications 1 et 2, caractérisé en ce qu'on effectue le contrale par combinaison logique arithmétique. 50) Procédé selon l'une ou l'autre des revendications 1 et 2, caractérisé en ce qu'on effectue le con trale par analyse de signature. 60) Procédé selon l'une quelconque des revendications 1 à 5, caractérisé en ce qu'on stocke en mémoire une valeur de référence à laquelle on compare le résultat du contrale.