FR 2749697 A1 19971212 FR 9706788 A 19970603 La présente invention concerne un procédé de mise en oeuvre d'un appareil de commande comportant une mémoire programmable par un dispositif de programmation, l'effacement et la surscription du contenu de la mémoire étant effectués chaque fois en exécutant une étape de programme de traitement de données et en utilisant des données. Un tel procédé est par exemple connu selon le do- cument DE-43 32 499 Ai. L'appareil de commande décrit dans ce document est un appareil de commande de véhicule automobile dont la construction et l'intégration possible dans un sys- tème global seront décrites ci-après en référence à la figure 3. L'appareil de commande d'un véhicule automobile selon la figure 3 porte la référence 10; il comporte un mi- crocalculateur 11 et des circuits entrée/sortie 12. Le microcalculateur 11 comprend une unité cen- trale 13, une mémoire effaçable et programmable électrique- ment 14 sous la forme d'une mémoire Flash-EPROM, une mémoire écriture/lecture 15, une mémoire morte 16 et une interface série 21. L'appareil de commande de véhicule automobile 10 reçoit des signaux d'entrée par les circuits entrée/sortie 12; ces signaux viennent de capteurs tels que le potentiomè- tre 17 associé au volet d'étranglement, un capteur de vitesse de rotation 23 et d'autres capteurs 18. Suivant le type d'appareil de commande du véhicule ces autres capteurs, qui ne seront pas détaillés ici, sont: un capteur de température du moteur, un capteur de température de l'air aspiré, un dé- bitmètre massique d'air, un interrupteur de ralenti ou au- tres. Par ses circuits entrée/sortie 12, l'appareil de commande de véhicule automobile 10 fournit par ailleurs les signaux de sortie destinés à des actionneurs 19 commandant par exemple les injecteurs, les bobines d'allumage. La construction précise de l'appareil de commande de véhicule 10 apparaît dans le document Bosch - Technische Unterrichtung, kombiniertes Z nd- und Benzineinspritzsystem Motronic, Robert Bosch GmbH, 1983 et ne nécessite de ce fait aucune description détaillée ici. Les mémoires 14, 15, 16 sont associées à l'unité centrale 13 et servent à enregistrer les programmes et les données pour l'unité centrale 13. L'utilisation de mémoires non volatiles effaça- bles et programmables électriquement comme la mémoire 14 est avantageuse dans les appareils de commande de véhicule auto- mobile car de telles mémoires peuvent être reprogrammées à10 tout moment; cela est notamment très important pour corriger d'éventuels défauts découverts ultérieurement ou pour tenir compte du souhait du client. L'utilisation de mémoires Flash-EPROM comme mé- moires non volatiles effaçables et programmables électrique- ment, prend de plus en plus d'importance car elles combinent les avantages d'une mémoire EPROM normale (densité élevée de cellules de mémoire) et ceux d'une mémoire EEPROM (effacement électrique simple et facile du contenu de la mémoire). La programmation initiale de la mémoire Flash- EPROM (de préférence selon le type de véhicule chez le cons- tructeur) ou la reprogrammation ultérieure de cette mémoire (par le servie après vente pour éliminer les défauts ou tenir compte des souhaits de chaque client) est assurée par un ap- pareil de programmation externe 20 par exemple sous la forme d'un ordinateur personnel relié à l'appareil de commande 10. Le branchement se fait par une ligne de liaison série 22 et l'interface série 21 déjà évoquée. L'appareil de programmation externe 20 permet à l'appareil de commande 10, le cas échéant, d'effacer ou de transcrire les données dans la mémoire Flash-EPROM pour les segments de programme de traitement de données en fournissant, le cas échéant, les (nouvelles) données à enregistrer. L'appareil de commande 10 ne peut pas lui-même exécuter les segments de programme de traitement de données, dans le cas normal, c'est-à-dire sans commande externe. Cela signifie qu'aucun saut vers les segments de programme de traitement de données n'est prévu pendant que les programmes d'application sont exécutés dans l'appareil de commande lors du mouvement du véhicule. La raison de cette mesure est d'éviter tout effacement accidentel ou non autorisé et/ou toute surscription dans la mémoire Flash-EPROM. Un autre moyen pour se protéger contre les modi- fications accidentelles du contenu de la mémoire et contre les manipulations par des personnes non autorisées consiste à faire précéder l'effacement proprement dit et/ou la surscrip- tion dans le contenu de la mémoire Flash-EPROM par un con- trôle autorisé (en vérifiant un mot de passe enregistré ou en utilisant un moyen analogue). Les moyens de protection évoqués ci-dessus évi- tent tout effacement accidentel ou non autorisé et/ou toute surscription dans la mémoire Flash-EPROM. Toutefois, en cas d'enchaînement malheureux de certaines circonstances, on ne peut totalement exclure la défaillance individuelle de ces différentes mesures de protection. La cause en est surtout la réception d'ondes électromagnétiques par l'appareil de commande mais également les manipulations intentionnelles de l'afficheur d'adresse ou du bus d'adresses par des tiers non autorisés. La conséquence en est (bien que cela ne soit pas prévu) dans les conditions les plus défavorables, au moins théoriquement et sans que cela ne soit occasionné de manière définie, de faire par l'appareil de programmation un saut dans le segment de programme de traitement de données dont l'exécution peut effacer ou/et surscrire des données dans la mémoire Flash-EPROM de l'appareil de commande. Dans la mesure o il y a un saut vers le début d'un tel programme, on peut éviter le dommage, qui menace, en demandant un mot de passe ou un moyen analogue et en quittant le programme le cas échéant. Toutefois, si cette incursion se fait à un endroit situé plus loin dans le programme, ce méca- nisme de protection est sans effet si bien qu'on ne peut ex- clure certains effacements et/ou une certaine surscription de données enregistrées dans la mémoire programmable. Pour éviter cela, les mémoires Flash-EPROM ont des entrées partiellement programmables auxquelles on appli- que une certaine tension de programmation pour effacer ou en- registrer dans la mémoire. Un tel mécanisme de protection né- cessite toutefois des circuits supplémentaires qui, du fait que la tension de programmation prédéterminée doit être res- pectée d'une manière relativement précise, nécessitent la mise en oeuvre de moyens importants; cela se traduit par des effets négatifs sur la fiabilité du mécanisme de protection lui-même. La présente invention a ainsi pour but de déve- lopper un procédé du type défini ci-dessus pour exclure de manière fiable et simple, en toute sécurité, un effacement non autorisé et/ou une surscription de données enregistrées dans une mémoire programmable. A cet effet l'invention concerne un procédé du type défini ci-dessus, caractérisé en ce que: * soit l'étape de programme de traitement de données, soit les données, ont été préparées, * le programme nécessite une modification avant de pouvoir s'utiliser pour effectuer un effacement ou une surscription et, * cette modification n'est exécutée que si l'on a constaté qu'une incursion dans le segment de programme de traitement de données a été effectuée de manière autorisée ou qu'elle se fera ou qu'elle puisse se faire. Ainsi, il est prévu qu'au moins le segment de programme de traitement de données ou les données (utilisées par le segment de programme de traitement de données) soient fournis pour qu'avant leur possibilité d'utilisation, ils né- cessitent une modification pour qu'il y ait effacement ou surscription, et que cette modification ne puisse se faire que si l'on a constaté qu'une incursion dans le segment de programme de traitement de données se fait ou sera faite comme prévu, ou puisse se faire. Une incursion dans un segment de programme de traitement de données pour effacer et/ou surscrire le contenu de la mémoire programmable ne peut alors conduire qu'à un ef- facement et/ou à une surscription si, sur la base des élé- ments accompagnateurs, on suppose au moins avec une grande probabilité, que le programme d'effacement et/ou de surscrip- tion n'a pas été appelé accidentellement ou de manière mal intentionnée, ou risque de l'être. L'exécution d'un tel contrôle et la modification du code et/ou des données nécessaires en fonction de cela, s'exécutent d'une manière relativement simple. Par un choix approprié des circonstances à l'aide desquelles on constate qu'une incursion dans le segment de programme de traitement de données s'est effectuée comme prévu ou pourra se faire (par exemple lors d'une décision dépendant de ce qu'un appa- reil de programmation externe ou un moyen analogue est bran- ché et/ou est activé), le mécanisme de protection selon l'invention est extrêmement fiable et ne peut pratiquement pas être contourné. Il a été créé un procédé permettant d'exclure de manière fiable et simple tout effacement et/ou surscription non autorisée de données enregistrées dans une mémoire pro- grammable. L'exclusion de l'effacement non défini garantit non seulement les données enregistrées contre toute modifica- tion non intentionnelle ou non autorisée, mais participe éga- lement de manière considérable à la sécurité de fonctionnement de l'appareil de commande car une excursion d'un programme d'application mis en oeuvre pendant la circu- lation du véhicule vers un segment de programme de traitement de données pour effacer et/ou surscrire dans la mémoire Flash-EPROM, pourrait créer des risques de sécurité considé- rables notamment dans le cas d'un véhicule en circulation à ce moment. Suivant d'autres caractéristiques avantageuses de l'invention: - le segment de programme de traitement de données déjà four- ni est codé avant sa modification pour qu'il ne puisse être exécuté correctement en totalité ou en partie. - les données qui seront utilisées par le segment de pro- gramme de traitement de données respectif pour générer des cycles de déverrouillage servant à libérer le verrouillage de la mémoire (14) pour l'effacement et la surscription du contenu de la mémoire, nécessitent des données déterminées émises à des adresses déterminées de la mémoire. - les données fournies avant leur modification ont des va- leurs telles que le segment de programme de traitement de données n'est pas en mesure de générer, à partir de celles- ci, des cycles de déverrouillage permettant de déver- rouiller l'installation de mémoire. - on conclut à une certaine incursion autorisée dans le seg- ment de programme de traitement de données si on a constaté que des circonstances existent qui laissent apparaître pro- bablement un effacement intentionnel et voulu ou une surscription du contenu de la mémoire. - on conclut qu'il y a une incursion autorisée dans le seg- ment de programme de traitement de données si on a constaté qu'un appareil de programmation externe est relié à l'appareil de commande. - on conclut qu'il y a une incursion autorisée dans le seg- ment du programme de traitement de données si l'on déter- mine qu'un appareil de programmation externe relié à l'appareil de commande est activé. - le segment de programme de traitement de données ou les données, après un effacement ou une surscription réussie du contenu de la mémoire, et le cas échéant également après un branchement ou une remise à l'état initial de l'appareil de commande, sont soumis à un traitement tel qu'ils ne peuvent sans nouvelle modification au cours de l'incursion suivante dans le segment de programme de traitement de données être de nouveau fournis, pour ne pas pouvoir assurer l'effacement ou une surscription de la mémoire. La présente invention sera décrite ci-après à l'aide d'un exemple de réalisation représenté dans les des- sins annexés dans lesquels: - la figure 1 montre un ordinogramme de principe des étapes du procédé de l'invention, - les figures 2A-2D montrent des ordinogrammes illustrant un effacement prévu, d'une mémoire Flash-EPROM, - la figure 3 montre un dispositif comportant une mémoire Flash-EPROM à protéger contre l'effacement et/ou la surscription non autorisée. Les descriptions suivantes concernent un procédé de mise en oeuvre d'un appareil de commande servant à comman- der par exemple le moteur, la transmission, les freins, etc., d'un véhicule automobile, c'est-à-dire globalement d'un appa- reil de commande de véhicule automobile. L'appareil de commande de véhicule automobile considéré comporte des mémoires programmables, plus précisé- ment des mémoires programmables et effaçables électriquement (mémoires non volatiles) sous la forme de mémoires Flash- EPROM. La programmation de telles mémoires Flash-EPROM est faite par un appareil de programmation externe relié par exemple par une interface série à l'appareil de commande du véhicule. Un mode de réalisation possible d'un dispositif comportant un tel appareil de commande de véhicule automobile est représenté à la figure 3 à laquelle il a déjà été fait référence de manière explicite dans la description selon le préambule. La présente invention n'est toutefois pas limitée à la programmation de mémoires Flash-EPROM dans les appareils de commande de véhicules automobiles utilisant un appareil de programmation externe. L'invention, bien plus, s'applique partout o il s'agit de manière générale de programmer une mémoire d'un appareil de commande par un dispositif de pro- grammation. La programmation, plus précisément l'effacement et la surscription du contenu de la mémoire Flash-EPROM, se font en exécutant un segment de programme de traitement de données d'un appareil de commande et en utilisant les données (pour l'exécution correcte du segment de programme de traite- ment de données). Les segments de programme de traitement de don- nées respectifs, selon une première caractéristique de l'invention, sont exécutables non pas simplement par un appel ou une excursion dans un programme, mais sont avantageusement disponibles sous une forme ne permettant pas l'effacement et/ou une surscription de données dans la mémoire Flash- EPROM. Cette non exécutabilité peut se réaliser de différen- tes manières. Une possibilité consiste à coder au moins par- tiellement le code représentant les segments de programme de traitement de données respectifs ou à le manipuler d'une au- tre manière pour constituer, sans une modification correspon- dante, un programme qui ne peut être exécuté totalement et/ou correctement. Une autre possibilité consiste à intégrer des or- dres dans le code à des endroits stratégiquement favorables et dont l'exécution est interdite par des ordres qui finale- ment doivent produire l'effacement et/ou la surscription de données dans la mémoire Flash-EPROM. Cela peut par exemple consister en des indications de saut qui font quitter le seg- ment de programme de traitement de données concerné ou font passer pardessus les indications critiques et écarter l'exécution correcte du programme par une modification cor- respondante du code de programme ou, du moins, rendent cela inefficace. Selon un second aspect de l'invention, on peut prévoir, en variante ou en complément, des données dont le contenu rend l'effacement et/ou la surscription du contenu de la mémoire Flash-EPROM indépendants de valeur (non plausi- bles) qui interdisent l'effacement et/ou la surscription de la mémoire Flash-EPROM. Les données indiquées sont par exemple les don- nées des valeurs d'adresse qui, au moins pour certaines mé- moires Flash-EPROM, doivent être fournies avant l'effacement proprement dit et/ou la surscription, sous la forme de cycles de déverrouillage transmis par le bus à la mémoire Flash- EPROM. Pendant de tels cycles de déverrouillage, il faut que certaines données soient enregistrées dans un certain ordre à différentes adresses de la mémoire Flash-EPROM pour déver- rouiller la mémoire Flash-EPROM, pour effacer les données et/ou surscrire. Si cet essai n'aboutit pas pour déver- rouiller la mémoire Flash-EPROM, elle reste bloquée à tout effacement et/ou surscription. Si maintenant on veille à ce que les adresses et les données émises pour les cycles de déverrouillage ne sont pas disponibles automatiquement mais seulement dans des cir- constances très précises, à savoir pour un effacement et/ou une surscription produite de manière définie de la mémoire Flash-EPROM, pour déverrouiller la mémoire Flash-EPROM, on dispose d'un autre mécanisme de protection qui interdit un effacement et/ou une surscription non autorisés la mémoire Flash-EPROM. Pour éviter le déverrouillage automatique de la mémoire Flash-EPROM, on peut prévoir que le segment de pro- gramme de traitement de données n'intègre pas, comme cela a été usuel jusqu'alors dans le code de programme, les données et/ou adresses pendant les cycles de déverrouillage, et qu'il faut fournir à la mémoire Flash-EPROM, mais doivent les cher- cher de préférence dans une mémoire volatile (RAM); la plage de mémoire (tableau de variables) dans laquelle les segments de programme de traitement de données respectifs cherchent les données et/ou les adresses pour les cycles de déver- rouillage, ne contient pas de valeurs dont l'utilisation dé- verrouille automatiquement la mémoire Flash-EPROM. Selon une réalisation pratique de ce mécanisme de protection on peut prévoir de n'inscrire les données permet- tant le déverrouillage de la mémoire Flash-EPROM dans le ta- bleau de variables, que lorsqu'il est établi qu'une demande autorisée (produite par exemple un appareil de programmation) a été faite pour effacer ou surscrire la mémoire Flash-EPROM, ou qu'une telle demande arrivera ou pourra arriver et que les données du tableau de variables seront de nouveau effacées après effacement ou surscription de la mémoire Flash-EPROM, ou seront remplacées par des données excluant le déver- rouillage de la mémoire Flash-EPROM. Les données interdisant l'effacement des données dans le tableau de variables ou leur surscription par déverrouillage de la mémoire Flash-EPROM sont indiquées entre autres après le branchement ou la remise à l'état initial de l'appareil de commande, pour éviter en toute sécurité toute possibilité accidentelle de déver- rouillage de la mémoire Flash-EPROM. En présence de mécanismes de protection selon le premier et/ou le second aspect de la présente invention, c'est-à-dire en présence de mécanismes de protection qui in- fluencent la disponibilité correcte des segments de programme de traitement de données respectif pour effacer et/ou surscrire la mémoire Flash-EPROM, cela entraîne qu'une incur- sion dans les segments de programme de traitement de données correspondants n'assure pas automatiquement l'effacement et/ou la surscription des données dans la mémoire Flash- EPROM. Bien plus, de cette manière, on exclut tout d'abord fondamentalement l'effacement et/ou la surscription de don- nées dans la mémoire Flash-EPROM. En cas d'effacement et/ou de surscription autori- sée de données dans la mémoire Flash-EPROM, il faut, comme déjà indiqué, modifier le segment de programme de traitement de données respectif et/ou les données pour le tableau de va- riables contenant les cycles de déverrouillage dans l'appareil de commande. Cette opération est représentée à la figure 1. Selon la figure 1, au cours d'une première étape Si, on vérifie tout d'abord si une incursion dans un segment de programme de traitement de données pour effacer et/ou surscrire des données d'une mémoire FlashEPROM a été faite de manière autorisée, c'est-à-dire au moins apparemment non de manière accidentelle ou frauduleuse ou se fera ou pourra se faire. Le contrôle se concentre ainsi de préférence sur des critères dont la présence seule ou en combinaison avec d'autres conditions ne laisse apparaître possible le démar- rage d'une programmation de la mémoire Flash-EPROM (sans l'exclure) mais d'o on peut conclure avec une certaine fia- bilité que la programmation de la mémoire Flash-EPROM a ef- fectivement été commencée ou produite ou le sera. Au cas o, pour programmer la mémoire Flash-EPROM comme dans le présent exemple de réalisation, il faut bran- cher un appareil de test ou un programmateur externe sur il l'appareil de commande, dans l'étape de constatation Si on peut entre autres vérifier par exemple: - si un appareil de programmation externe correspondant est branché et/ou, - si l'appareil de programmation est activé (branché) et/ou, - si l'appareil de programmation est en mode de programmation et/ou, - si une certaine communication s'est produite ou s'effectue entre l'appareil de commande et l'appareil de programma- tion. L'exécution d'un ou plusieurs des contrôles évo- qués ci-dessus permet d'avoir une information garantie qu'une incursion dans le programme servant à programmer la mémoire Flash-EPROM a été ou sera faite selon les règles. Les contrôles à exécuter dans ce contexte dépen- dent des données particulières. On pourrait envisager dans ce contexte en particulier (mais non exclusivement) des interro- gations pour les informations d'état correspondantes de l'appareil de commande et, le cas échéant, des appareils ex- ternes branchés, et/ou la demande de caractéristique qui sont intégrés à certains événements. Si en contrôlant dans l'étape Si qu'il y a une incursion selon les règles, dans le segment de traitement de données pour effacer et/ou surscrire la mémoire Flash-EPROM, momentanément et/ou dans une période prévisible ou non, le segment de programme donné à la figure 1 sera mis en oeuvre en excluant l'étape S2 qui sera décrite ultérieurement. L'exclusion de l'étape S2 fait qu'une incursion éventuelle- ment effectuée ou qui se fera dans le segment de programme de traitement de données pour effacer et/ou surscrire une mé- moire Flash-EPROM, n'entraîne pas l'effacement et/ou la surscription de cette mémoire. Par contre, si dans l'étape S1 on a constaté qu'une incursion conforme existe instantanément et/ou dans un temps prévisible ou peut exister, alors dans l'étape S2 on exécute la modification déjà évoquée ci-dessus du segment de programme de traitement de données, respectif, et/ou des don- nées nécessaires à celui-ci, si bien que ceux-ci passent dans un état qui permet un déroulement du programme conforme, c'est-à-dire un effacement ou une surscription conforme des données de la mémoire Flash-EPROM. Les mesures à effectuer séparément pour les dif- férentes modifications dépendent de la façon suivant laquelle le segment de programme de traitement de données respectif et/ou les données ont été manipulés, et pourquoi ces données ne sont pas utilisables dans la forme dans laquelle elles se trouvent actuellement. Indépendamment de la nature et de l'importance de la modification à effectuer dans l'étape S2, on peut prévoir de faire dépendre l'exécution de la modification de l'entrée d'un mot de passe ou d'un moyen analogue. L'exécution de l'étape S2 termine le traitement du segment de programme envisagé, montré à la figure 1, et occasionne ce traitement. L'exécution de l'étape S2 fait qu'une excursion éventuellement faite ou qui se fera ulté- rieurement dans le segment de programme de traitement de don- nées pour effacer et/ou surscrire une mémoire Flash-EPROM, entraîne effectivement l'effacement et/ou la surscription de celle-ci. Pour garantir que l'effacement et/ou la surscrip- tion des données dans une mémoire Flash-EPROM, effectués en cas d'incursion conforme dans le segment de programme de traitement de données correspondant, sont effectivement exé- cutés, il faut s'assurer qu'une modification le cas échéant nécessaire selon l'étape S2 du segment de programme représen- té à la figure 1, soit exécutée à temps avant le début de l'exécution du segment de programme de traitement de données concerné ou avant l'accès aux données nécessaires à cela. En variante ou en complément, on peut par exemple * également exécuter automatiquement l'étape de procédé repré- sentée à la figure 1, de manière répétée à des intervalles plus ou moins courts ou plus ou moins réguliers, ou de ma- nière dirigée, en fonction de l'occurrence de certains événe- ments. Une exécution multiple ou répétée de l'étape de procédé montrée à la figure 1 offre l'avantage qu'une modifi- cation le cas échéant déjà entreprise (étape S2) puisse être annulée ou neutralisée si les conditions se sont modifiées entre temps. Pour augmenter la sécurité du mécanisme de pro- tection, on peut prévoir que l'exécution de la modification (étape S2) se fasse en outre en fonction de ce que celle-ci a été occasionnée ou au moins autorisée préalablement par l'appareil de programmation externe. Indépendamment de cela il faut de préférence, di- rectement après l'exécution complète de l'effacement et/ou de la surscription de la mémoire Flash-EPROM, reprendre ou neu- traliser de nouveau également la modification entreprise dans l'étape S2. De plus, le cas échéant, également, après le branchement la remise à l'état initial ou autre opération sur l'appareil de commande, il faut veiller à ce qu'il ne s'y trouve aucun segment de programme de traitement de données exécutable correctement, ou aucune données permettant l'exécution correcte dans le tableau de variables. En se référant aux figures 2A-2D, on décrira ci- après de manière détaillée les opérations qui se déroulent lors d'un effacement correct d'une mémoire Flash-EPROM. Pour cela, on utilise la structure représentée à la figure 3. La figure 2A montre les activités de l'appareil de programmation 20 relié à l'appareil de commande 10. L'appareil de programmation active à n'importe quel moment après le branchement, automatiquement ou sous l'effet d'une commande externe, un protocole (étape S10), pour pouvoir communiquer avec l'appareil de commande d'une manière fixée. On suppose qu'un effacement et/ou une surscrip- tion de la mémoire Flash-EPROM, correct pour l'appareil de commande, nécessite une modification préalable des données et adresses préparées ou à préparer dans le tableau de variablespour des cycles de déverrouillage. De façon correspondante, l'appareil de programma- tion, avant d'envoyer l'ordre d'effacement à l'appareil de commande, occasionne l'enregistrement de valeurs de données et d'adresses plausibles, c'est-à-dire permettant un déver- rouillage de la mémoire Flash-EPROM dans le tableau de varia- bles de la RAM de l'appareil de commande, c'est-à-dire dans le tableau de variables logé dans la mémoire RAM de l'appareil de commande (étape Sîl). L'enregistrement de ces valeurs (le cas échéant fournies par l'appareil de programmation), dans le tableau de variables de la mémoire RAM, est effectué directement par l'appareil de commande comme cela sera décrit de manière plus précise ultérieurement en se référant à la figure 2B; l'étape Sll est de ce fait " seulement " l'amorce de l'étape de modification S2 de la figure 1. Puis, c'est-à-dire dans l'étape S12 selon la fi- gure 2A, l'appareil de programmation produit l'effacement de la mémoire Flash-EPROM de l'appareil de commande. Egalement l'effacement (comme cela sera décrit ultérieurement de manière plus précise en se référant à la figure 2C) est exécuté directement par l'appareil de com- mande; l'étape S12 est uniquement l'amorce selon les pres- criptions. Le programme de l'appareil de programmation n'est pas encore terminé par l'étape S12. Les opérations exécutées alors n'ont aucun intérêt ici. On décrira ci-après, en se reportant à la figure 2B, la modification des valeurs de données et d'adresses amorcée par l'étape Sll pour les cycles de déverrouillage, dans le tableau de variables de la mémoire RAM, par l'appareil de commande. En réponse à une cause externe provenant de l'appareil de programmation pour préparer ou établir l'aptitude au fonctionnement de l'appareil de commande pour effacer et/ou surscrire la mémoire Flash-EPROM (étape Sll) l'appareil de commande vérifie tout d'abord, dans l'étape S20, si un appareil de programmation est branché et si un protocole de communication a été activé. Cela permet de sa- voir si la cause externe qui ne peut provenir que d'un dispo- sitif prévu à cet effet, c'est-à-dire un appareil de programmation ou appareil analogue, provient effectivement d'un tel dispositif ou du moins peut en provenir, ou si la cause externe supposée et ainsi la mise en oeuvre déjà pro- duite le cas échéant ou qui se produira pour effacer la mé- moire Flash-EPROM, provient d'un parasite ou d'une intervention non autorisée. Dans l'étape S20 on constate qu'aucun appareil de programmation n'est branché et/ou qu'aucun protocole de com- munication n'a été activé, si bien que l'on passe à l'étape de procédé selon la figure 2B sans effectuer de surscription dans le tableau de variables de la mémoire RAM. Au cas contraire, c'est-à-dire si un appareil de programmation est branché et si un protocole de communication a été activé, c'est-à-dire s'il est prévisible qu'il y aura un effacement et/ou une surscription de la mémoire Flash- EPROM, correct, le déroulement passe à l'étape S21; on véri- fie alors directement avant de surscrire le tableau de varia- bles de la mémoire RAM, pour des raisons de sécurité, si l'adresse à laquelle on veut enregistrer les valeurs de don- nées et d'adresses destinées au tableau de variables de la mémoire RAM, se situe dans le tableau de variables de la mé- moire RAM. Si dans l'étape S21 on constate que l'adresse d'enregistrement est à l'extérieur du tableau de variables de la mémoire RAM, on passe à l'étape de procédé de la figure 2B sans exécuter la surscription dans le tableau de variables de la mémoire RAM. Au cas contraire, c'est-à-dire si l'adresse d'enregistrement se situe à l'intérieur du tableau de varia- bles de la mémoire RAM, le déroulement des opérations passe à l'étape S22; on enregistre alors les valeurs d'adresses ou de données dans le tableau de variables de la mémoire RAM. L'étape de procédé représentée à la figure 2B se termine ain- si correctement et l'appareil de commande est préparé pour un effacement et/ou une surscription de la mémoire Flash-EPROM. En référence à la figure 2C on décrira ci-après l'effacement amorcé dans l'étape S12 de la mémoire Flash- EPROM par l'appareil de commande. En réponse au lancement externe par l'appareil de programmation, pour effacer et/ou surscrire la mémoire Flash- EPROM par l'appareil de commande (étape S12), on vérifie tout d'abord dans l'appareil de commande, au cours de l'étape S30, si un appareil de programmation est branché et si un proto- cole de communication a été activé. De cette manière, on5 constate (de façon analogue à l'étape S20 de la figure 2B) si le lancement externe qui ne peut se faire ici que par un dis- positif prévu à cet effet, c'est-à-dire un appareil de pro- grammation ou analogue, provient effectivement d'un tel dispositif ou si au moins cela semble provenir d'un tel dis- positif, ou si le lancement externe supposé provient d'un in- cident ou d'une intervention non autorisée. Si dans l'étape S20, on constate qu'aucun appa- reil de programmation n'est branché et/ou qu'aucun protocole de communication n'a été activé, on quitte l'étape de procédé de la figure 2C sans effacer la mémoire Flash-EPROM. Au cas contraire, c'est-à-dire si un appareil de programmation est branché et si un protocole de communication a été activé, on passe à l'étape S31; à ce moment on efface la mémoire Flash-EPROM.20 A la fin de l'opération d'effacement, c'est-à- dire dans l'étape S32 selon la figure 2C, on détruit le ta- bleau de variables de la mémoire RAM; en d'autres termes, on exclut le déverrouillage de la mémoire Flash-EPROM par des cycles de déverrouillage. L'étape de procédé représentée à la figure 2C (c'est-à-dire l'effacement de la mémoire Flash-EPROM) est terminée par une nouvelle mise en sécurité de l'appareil de commande contre tout effacement et/ou toute surscription non autorisée. Une description du tableau de variables de la mé- moire RAM qui s'effectue dans l'étape S32 doit, comme cela a déjà été indiqué, être effectuée également après le branche- ment de la remise à l'état initial ou opération analogue de l'appareil de commande, pour éviter que les valeurs qui se trouvent à ce moment dans le tableau de variables de la RAM permettent un déverrouillage de la mémoire Flash-EPROM. Une telle opération est représentée dans la figure 2D qui se com- prend sans autres explications. L'exemple pratique décrit en référence aux figu- res 2A-2D a concerné l'effacement de la mémoire Flash-EPROM. Des opérations correspondantes doivent se produire de façon appropriée à chaque intervention qui a pour but de modifier5 le contenu de la mémoire Flash-EPROM, c'est-à-dire pour une surscription, une reprogrammation, etc.. Le procédé décrit ci-dessus permet de garantir en sécurité qu'un effacement et/ou une surscription de la mé- moire Flash-EPROM n'ont été exécutés que s'ils ont été lancés de manière autorisée. R E V E N D I C A T IONS 1 ) Procédé de mise en oeuvre d'un appareil de commande (10) comportant une mémoire (14) programmable par un dispositif de programmation (20), l'effacement et la surscription du conte-5 nu de la mémoire étant effectués chaque fois en exécutant une étape de programme de traitement de données et en utilisant des données, caractérisé en ce que * soit l'étape de programme de traitement de données, soit les données, ont été préparées, * il nécessite une modification avant de pouvoir s'utiliser pour effectuer un effacement ou une surscription et, * cette modification n'est exécutée que si l'on a constaté qu'une incursion dans le segment de programme de traitement de données a été effectuée de manière autorisée ou qu'elle se fera ou qu'elle puisse se faire. ) Procédé selon la revendication 1, caractérisé en ce que le segment de programme de traitement de données déjà fourni est codé avant sa modification pour qu'il ne puisse être exé- cuté correctement en totalité ou en partie. 3 ) Procédé selon l'une quelconque des revendications 1 et 2, caractérisé en ce que les données qui seront utilisées par le segment de programme de traitement de données respectif pour générer des cycles de déverrouillage servant à libérer le verrouillage de la mé- moire (14) pour l'effacement et la surscription du contenu de la mémoire, nécessitent des données déterminées émises à des adresses déterminées de la mémoire. 4 ) Procédé selon la revendication 3, caractérisé en ce que les données fournies avant leur modification ont des valeurs telles que le segment de programme de traitement de données n'est pas en mesure de générer, à partir de celles-ci, des cycles de déverrouillage permettant de déverrouiller l'installation de mémoire (14). ) Procédé selon l'une quelconque des revendications 1 à 4, caractérisé en ce qu' on conclut à une certaine incursion autorisée dans le segment de programme de traitement de données si on a constaté que des circonstances existent qui laissent apparaître probable- ment un effacement intentionnel et voulu ou une surscription du contenu de la mémoire (14). 6 ) Procédé selon la revendication 5, caractérisé en ce qu' on conclut qu'il y a une incursion autorisée dans le segment de programme de traitement de données si on a constaté qu'un appareil de programmation externe (20) est relié à l'appareil de commande (10). 7 ) Procédé selon l'une quelconque des revendications 5 ou 6, caractérisé en ce qu' on conclut qu'il y a une incursion autorisée dans le segment du programme de traitement de données si l'on détermine qu'un appareil de programmation externe (20) relié à l'appareil de commande (10) est activé. ) Procédé selon l'une quelconque des revendications 1 à 7, caractérisé en ce que le segment de programme de traitement de données ou les don- nées, après un effacement ou une surscription réussie du con- tenu de la mémoire (14), et le cas échéant également après un branchement ou une remise à l'état initial de l'appareil de commande (10), sont soumis à un traitement tel qu'ils ne peu- vent sans nouvelle modification au cours de l'incursion sui- vante dans le segment de programme de traitement de données être de nouveau fournis, pour ne pas pouvoir assurer l'effacement ou une surscription de la mémoire.