FR2923040A1 - Software content diagnosing method for electronic control unit of motor vehicle, involves recuperating information from image, and automatically diagnosing software content of logic controller based on recuperated information - Google Patents
Software content diagnosing method for electronic control unit of motor vehicle, involves recuperating information from image, and automatically diagnosing software content of logic controller based on recuperated information Download PDFInfo
- Publication number
- FR2923040A1 FR2923040A1 FR0707636A FR0707636A FR2923040A1 FR 2923040 A1 FR2923040 A1 FR 2923040A1 FR 0707636 A FR0707636 A FR 0707636A FR 0707636 A FR0707636 A FR 0707636A FR 2923040 A1 FR2923040 A1 FR 2923040A1
- Authority
- FR
- France
- Prior art keywords
- information
- software
- computer
- software component
- content
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 18
- 238000010200 validation analysis Methods 0.000 claims abstract description 18
- 230000008672 reprogramming Effects 0.000 claims abstract description 8
- 238000003745 diagnosis Methods 0.000 claims description 18
- 238000004458 analytical method Methods 0.000 claims description 16
- 230000006870 function Effects 0.000 claims description 7
- 238000007726 management method Methods 0.000 description 4
- 230000007257 malfunction Effects 0.000 description 3
- 238000010586 diagram Methods 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 238000004378 air conditioning Methods 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 230000001427 coherent effect Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000010835 comparative analysis Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000002405 diagnostic procedure Methods 0.000 description 1
- 239000003550 marker Substances 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 239000000725 suspension Substances 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/0751—Error or fault detection not based on redundancy
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/006—Identification
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/0706—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
- G06F11/0736—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in functional embedded systems, i.e. in a data processing system designed as a combination of hardware and software dedicated to performing a certain function
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/0706—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
- G06F11/0736—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in functional embedded systems, i.e. in a data processing system designed as a combination of hardware and software dedicated to performing a certain function
- G06F11/0739—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in functional embedded systems, i.e. in a data processing system designed as a combination of hardware and software dedicated to performing a certain function in a data processing system embedded in automotive or aircraft systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/079—Root cause analysis, i.e. error or fault diagnosis
-
- G—PHYSICS
- G07—CHECKING-DEVICES
- G07C—TIME OR ATTENDANCE REGISTERS; REGISTERING OR INDICATING THE WORKING OF MACHINES; GENERATING RANDOM NUMBERS; VOTING OR LOTTERY APPARATUS; ARRANGEMENTS, SYSTEMS OR APPARATUS FOR CHECKING NOT PROVIDED FOR ELSEWHERE
- G07C5/00—Registering or indicating the working of vehicles
- G07C5/08—Registering or indicating performance data other than driving, working, idle, or waiting time, with or without registering driving, working, idle or waiting time
- G07C5/0841—Registering performance data
- G07C5/085—Registering performance data using electronic data carriers
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
Abstract
Description
1 1
La présente invention est relative à un procédé de diagnostic d'un système électronique à composants logiciels. L'invention trouve une application particulièrement importante dans le domaine automobile, où les différents systèmes électroniques embarqués d'une automobile peuvent être soumis à une vérification, notamment une vérification d'intégrité logicielle, après leur entrée en service ou commercialisation. En effet, un véhicule automobile comprend couramment plusieurs systèmes électroniques dédiés à la gestion de fonctions du véhicule, telles que par exemple la commande du moteur propulsant le véhicule, la gestion de la climatisation de l'habitacle, la gestion des liaisons du véhicule au sol (freinage, suspension), etc. The present invention relates to a method for diagnosing an electronic system with software components. The invention finds a particularly important application in the automotive field, where the various onboard electronic systems of an automobile may be subject to verification, including a software integrity check, after their entry into service or marketing. Indeed, a motor vehicle commonly includes several electronic systems dedicated to the management of vehicle functions, such as for example the control of the engine propelling the vehicle, the management of the air conditioning of the passenger compartment, the management of the links of the vehicle on the ground (braking, suspension), etc.
De tels systèmes comprennent essentiellement des unités de commande électroniques ou "calculateurs" ECU (acronyme anglais pour "Electronic Control Unit"), intégrant des logiciels et utilisant ou émettant des informations sur les bus de communication du véhicule, en liaison avec d'autres éléments périphériques tels que des capteurs et/ou des actionneurs. Such systems essentially comprise electronic control units or "calculators" ECU (acronym for "Electronic Control Unit"), integrating software and using or transmitting information on the communication buses of the vehicle, in conjunction with other elements peripherals such as sensors and / or actuators.
Le logiciel d'exploitation stocké en mémoire d'un calculateur de ce type intègre en particulier une pluralité de composants logiciels, prévus pour coopérer à l'exécution de la fonction pour laquelle le calculateur est prévu. Un composant logiciel s'entend donc comme un sous-ensemble du logiciel d'exploitation du calculateur, qui constitue un module indépendant utilisé comme élément de ce logiciel d'exploitation et qui est spécialement conçu pour fonctionner sans problèmes avec les autres composants de celui-ci. Une des contraintes d'un tel calculateur est celle liée à la complexité des composants logiciels constituant son logiciel d'exploitation, en particulier pour leur analyse dans un contexte de retour après vente du calculateur au fabricant. The operating software stored in memory of a computer of this type integrates in particular a plurality of software components, provided to cooperate in the execution of the function for which the computer is provided. A software component is therefore understood as a subset of the computer's operating software, which constitutes an independent module used as part of this operating system and which is specifically designed to work without problems with the other components of that computer. this. One of the constraints of such a calculator is that related to the complexity of the software components constituting its operating system, in particular for their analysis in a context of return after sale of the calculator to the manufacturer.
En effet, après sa conception et sa fourniture à un client, par exemple un constructeur automobile, le logiciel d'exploitation stocké dans la mémoire du calculateur est classiquement prévu pour pouvoir être modifié. En particulier, lorsque le constructeur du véhicule souhaite remplacer dans la mémoire du calculateur une version de logiciel par une nouvelle version. Cette opération de mise à jour du logiciel peut consister à reprogrammer tout ou partie seulement des composants logiciels constituant le logiciel d'exploitation du calculateur, chaque composant logiciel pouvant en effet être reprogrammé indépendamment des autres. En conséquence, en cas de retour après vente du calculateur à son fabricant, par exemple suite à un défaut de fonctionnement ou à une panne, l'analyse par le fabricant du calculateur est rendue complexe du fait de la méconnaissance qu'il a de son contenu exact, liée aux éventuels chargements d'une ou plusieurs nouvelles versions du logiciel postérieurement à sa livraison ou à un changement de contenu logiciel lié à un dysfonctionnement de composant électronique. Le contrôle du contenu logiciel du calculateur en retour après vente repose donc bien souvent sur une analyse empirique de celui-ci et sur l'expérience de l'opérateur en 5 charge de mener cette analyse. La présente invention a pour but de remédier à ces inconvénients en proposant un procédé de diagnostic du contenu logiciel d'un calculateur, qui permet d'effectuer cette opération d'une manière simplifiée, fiable et automatique. Avec cet objectif en vue, l'invention a pour objet un procédé de diagnostic du 10 contenu logiciel (appelé également diagnostic d'intégrité logicielle) d'un calculateur équipé d'une mémoire stockant une pluralité de composants logiciels, le procédé étant remarquable en ce qu'il comprend les étapes suivantes : -édition de la mémoire dudit calculateur, de sorte à obtenir une image mémoire de chacun desdits composants logiciels ; 15 - récupération, pour chacun desdits composants logiciels, à partir de son image mémoire, d'une information de cohérence adaptée à indiquer la cohérence dudit composant logiciel avec d'autres composants logiciels au sein du calculateur, d'une information de référence adaptée à identifier ledit composant logiciel et d'une information de validation adaptée à indiquer une validation du contenu dudit 20 composant après éventuelle reprogrammation ; détermination automatique du diagnostic du contenu logiciel du calculateur, en fonction d'au moins une partie desdites informations récupérées. Selon une variante de l'invention, l'étape de détermination du diagnostic comprend une analyse d'au moins une partie desdites informations pour chaque composant logiciel 25 pris indépendamment. Avantageusement, ladite analyse consiste à déterminer un statut absent ou présent desdites informations. En outre, il est suggéré d'analyser en combinaison l'information de cohérence avec l'information de validation dudit composant logiciel. 30 Selon un mode de réalisation, l'étape de détermination du diagnostic comprend une analyse d'au moins une partie desdites informations de chaque composant logiciel considéré les uns par rapport aux autres. Avantageusement, il est proposé de comparer entre elles les informations de cohérence de chaque composant logiciel. De préférence, l'étape de détermination du diagnostic comprend une comparaison 35 d'au moins une partie desdites informations de chaque composant logiciel avec leurs valeurs affectées lors d'une phase de conception du contenu logiciel du calculateur. 3 Selon un mode de réalisation avantageux, le procédé de diagnostic compare au moins l'information de cohérence et/ou l'information de référence récupérée(s) avec leur(s) valeur(s) affectée(s) lors de la phase de conception du contenu logiciel du calculateur. Indeed, after its design and supply to a customer, for example a car manufacturer, the operating software stored in the computer's memory is conventionally provided to be modified. In particular, when the vehicle manufacturer wishes to replace in the computer memory a software version with a new version. This software update operation may consist of reprogramming all or part of the software components constituting the operating software of the computer, each software component can indeed be reprogrammed independently of the others. Consequently, in the case of return after sale of the calculator to its manufacturer, for example following a malfunction or a failure, the analysis by the manufacturer of the calculator is made complex because of the lack of knowledge of his computer. exact content, related to possible uploads of one or more new versions of the software after its delivery or a change of software content related to an electronic component malfunction. The control of the software content of the computer in return after sales is therefore very often based on an empirical analysis of it and on the experience of the operator in charge of carrying out this analysis. The object of the present invention is to remedy these drawbacks by proposing a method for diagnosing the software content of a computer, which makes it possible to perform this operation in a simplified, reliable and automatic manner. With this object in view, the subject of the invention is a method for diagnosing the software content (also called software integrity diagnosis) of a computer equipped with a memory storing a plurality of software components, the method being remarkable in that it comprises the following steps: - editing of the memory of said computer, so as to obtain a memory image of each of said software components; Recovering, for each of said software components, from its memory image, coherence information adapted to indicate the coherence of said software component with other software components within the computer, reference information adapted to identifying said software component and a validation information adapted to indicate a validation of the content of said component after possible reprogramming; automatic determination of the diagnosis of the software content of the computer, according to at least a part of said retrieved information. According to a variant of the invention, the diagnostic determination step comprises an analysis of at least a part of said information for each software component 25 taken independently. Advantageously, said analysis consists in determining an absent or present status of said information. In addition, it is suggested to analyze in combination the coherence information with the validation information of said software component. According to one embodiment, the diagnostic determination step comprises an analysis of at least a portion of said information of each software component considered relative to each other. Advantageously, it is proposed to compare together the coherence information of each software component. Preferably, the diagnostic determination step comprises comparing at least a portion of said information of each software component with their assigned values during a design phase of the software content of the computer. According to an advantageous embodiment, the diagnostic method compares at least the coherence information and / or the reference information recovered with their value (s) affected during the phase of the invention. computer software content design.
En outre, le procédé peut récupérer le code de chaque composant logiciel et le comparer avec le code mémorisé lors de la phase de conception. Le procédé conforme à l'invention peut être implanté dans un calculateur destiné à être embarqué dans un véhicule automobile, dédié à la gestion d'une fonction du véhicule. In addition, the method can recover the code of each software component and compare it with the code stored during the design phase. The method according to the invention can be implemented in a computer intended to be embedded in a motor vehicle, dedicated to the management of a function of the vehicle.
D'autres caractéristiques et avantages de la présente invention apparaîtront plus clairement à la lecture de la description suivante donnée à titre d'exemple illustratif et non limitatif et faite en référence aux figures annexées dans lesquelles : la figure 1 illustre un exemple du contenu logiciel stocké dans une mémoire d'un calculateur ; - la figure 2 est un logigramme schématisant les principales opérations nécessaires à l'établissement du diagnostic du contenu logiciel du calculateur selon l'invention. La figure 1 présente le contenu logiciel d'un calculateur ECU stocké dans une mémoire 10 de celui-ci, par exemple une mémoire EEPROM (acronyme anglais pour "Electrically Erasable Programmable Read-Only Memory", c'est à dire "mémoire morte effaçable électriquement et programmable) ou une mémoire dite "mémoire flash". Sur le schéma, trois composants logiciels, respectivement 11, 12 et 13, sont représentés à titre d'exemple nullement limitatif en soi et constituent ainsi le contenu logiciel de la mémoire 10 du calculateur ECU. Un nombre bien plus important de composants logiciels 11, 12, 13 est en général constaté dans la réalité, mais l'exemple se limite ici à trois pour plus de clarté du propos. Une référence produit Ref ECU est classiquement affecté au calculateur ECU. On a vu que l'invention vise à permettre de réaliser simplement, avec fiabilité et automatiquement l'analyse du contenu logiciel du calculateur lorsque ce dernier est retourné à son fabricant suite à une panne par exemple, sachant que tout ou partie du contenu logiciel du calculateur a pu être modifié postérieurement à sa conception. Le fabricant à qui est retourné le calculateur ignore donc le contenu modifié du calculateur. On se propose alors d'utiliser un certain nombre d'informations produites pour chaque composant logiciel du calculateur lors de sa phase de conception logicielle et de recouper ces informations telles que produites à l'issue de la phase de conception, on parlera par la suite d'informations d'industrialisation pour qualifier ces informations, avec les informations du même type, récupérées à partir du calculateur ECU tel que retourné au fabricant suite à la détection d'un défaut de fonctionnement. 4 Les informations d'industrialisation sont mémorisées dans une base de données d'informations d'industrialisation, dans laquelle on peut retrouver l'ensemble des informations d'industrialisation de chacun des composants logiciels du calculateur ECU et leur emplacement dans la mémoire, à partir de la référence produit Ref_ECU identifiant le calculateur ECU. Les informations utilisées dans le cadre de la présente invention et qui vont être décrites plus en détail par la suite, sont des informations connues en tant que telles et associées à des fonctions particulières déjà prévues au sein de chaque composant logiciel, mais absolument pas liées au diagnostic à ce jour. Une autre caractéristique liée à ces informations est leur caractère générique, dans la mesure où il s'agit typiquement d'informations présentes dans tous composants logiciels produits, indépendamment de l'application véhicule envisagée ou du client auquel est fourni le calculateur. En particulier, on se propose d'utiliser, en plus du code constituant le composant logiciel lui-même, des informations se rapportant respectivement à la stratégie de cohérence, à la stratégie de reprogrammation et à la stratégie de référencement d'un composant logiciel donné. Chaque composant logiciel 11, 12 et 13 comprend en effet, en plus du code lui-même, respectivement 11 c, 12c et 13c, une information de cohérence, respectivement 11 a, 12a et 13a, une information de référence, respectivement 11 b, 12b et 13b, et une information de validation, respectivement 11 d, 12d et 13d. L'information de cohérence 11a, 12a, 13a est liée à la stratégie de cohérence du composant logiciel 11, 12, 13, laquelle doit permettre de s'assurer qu'un composant logiciel du calculateur ECU est cohérent avec un autre composant logiciel du calculateur ECU, en particulier qu'il n'y a pas de contradiction entre les données les constituant. Cette information de cohérence 11 a, 12a, 13a est classiquement disposée en début du composant logiciel 11, 12, 13. L'information de référence 11 b, 12b, 13b est une information propre au fabricant, liée à la stratégie de référencement, pour pouvoir identifier le composant logiciel 11, 12, 13 et correspond à un numéro de série de fabrication dudit composant logiciel 11, 12, 13. Enfin, l'information de validation 11d, 12d, 13d est quant à elle une information utilisée normalement dans le cadre de la fonction de reprogrammation du composant par le client. L'information de validation 11d, 12d, 13d comprend classiquement une clé de sécurité utilisée en tant que marqueur dans le code logiciel pour certifier que la reprogrammation s'est déroulée correctement. Typiquement, cette information de validation 11 d, 12d, 13d est écrite en fin du composant logiciel 11, 12, 13 après toute reprogrammation. Other characteristics and advantages of the present invention will emerge more clearly on reading the following description given by way of illustrative and nonlimiting example and with reference to the appended figures in which: FIG. 1 illustrates an example of the stored software content in a memory of a calculator; FIG. 2 is a logic diagram schematizing the main operations necessary for establishing the diagnosis of the software content of the computer according to the invention. FIG. 1 shows the software content of an ECU ECU stored in a memory 10 thereof, for example an EEPROM (acronym for "Electrically Erasable Programmable Read-Only Memory", ie "erasable read-only memory" electrically and programmable) or a so-called "flash memory." In the diagram, three software components, respectively 11, 12 and 13, are represented by way of non-limiting example in themselves and thus constitute the software content of the memory 10 of the ECU calculator A much larger number of software components 11, 12, 13 is generally found in reality, but the example here is limited to three for the sake of clarity.A product reference ECU Ref is classically assigned to the calculator ECU We have seen that the purpose of the invention is to enable the computer software content analysis to be performed simply, reliably and automatically when the latter is returned to its manufacturer. t following a breakdown, for example, knowing that all or part of the software content of the calculator could be modified after its design. The manufacturer who returned the computer ignores the modified content of the calculator. It is then proposed to use a certain amount of information produced for each software component of the computer during its software design phase and to cross-check this information as produced at the end of the design phase. industrialization information to qualify this information, with the information of the same type, retrieved from the ECU computer as returned to the manufacturer following the detection of a malfunction. The industrialization information is stored in an industrialization information database, in which one can find all the industrialization information of each of the software components of the ECU and their location in the memory, from of the product reference Ref_ECU identifying the ECU calculator. The information used in the context of the present invention and which will be described in more detail later, are known information as such and associated with particular functions already provided within each software component, but absolutely not related to the diagnosis to date. Another characteristic related to this information is their generic nature, insofar as it is typically information present in all software components produced, regardless of the envisaged vehicle application or the client to which the computer is provided. In particular, it is proposed to use, in addition to the code constituting the software component itself, information relating respectively to the coherence strategy, to the reprogramming strategy and to the SEO strategy of a given software component. . Each software component 11, 12 and 13 comprises in fact, in addition to the code itself, respectively 11c, 12c and 13c, coherence information, respectively 11a, 12a and 13a, reference information, respectively 11b, 12b and 13b, and a validation information, respectively 11d, 12d and 13d. The coherence information 11a, 12a, 13a is related to the coherence strategy of the software component 11, 12, 13, which must make it possible to ensure that a software component of the ECU calculator is coherent with another software component of the calculator ECU, in particular that there is no contradiction between the data constituting them. This coherence information item 11a, 12a, 13a is conventionally arranged at the beginning of the software component 11, 12, 13. The reference information item 11b, 12b, 13b is manufacturer-specific information, related to the referencing strategy, for it is possible to identify the software component 11, 12, 13 and corresponds to a production serial number of said software component 11, 12, 13. Finally, the validation information 11d, 12d, 13d is itself information normally used in the part of the reprogramming function of the component by the customer. The validation information 11d, 12d, 13d typically includes a security key used as a marker in the software code to certify that the reprogramming was successful. Typically, this validation information 11d, 12d, 13d is written at the end of the software component 11, 12, 13 after any reprogramming.
Ces informations vont donc être utilisées selon l'invention aux fins d'établir le diagnostic du calculateur, en particulier en les combinant avec les informations d'industrialisation, c'est-à-dire ces mêmes informations, mais telles que produites en sortie de conception avant production et livraison au client. 5 Pour ce faire, en référence à la figure 2, une opération 20 d'édition de la mémoire 10 du calculateur ECU (appelée également "DUMP" en jargon technique) est mise en oeuvre, permettant l'obtention de l'image mémoire associée à chaque composant logiciel 11, 12, 13 du calculateur ECU, c'est-à-dire l'obtention d'une représentation du contenu total de la mémoire pour chaque composant. This information will therefore be used according to the invention for the purpose of establishing the diagnosis of the calculator, in particular by combining them with the industrialization information, that is to say, the same information, but as produced at the output of design before production and delivery to the customer. To do this, with reference to FIG. 2, an operation 20 for editing the memory 10 of the ECU computer (also called "DUMP" in technical jargon) is implemented, making it possible to obtain the associated memory image. each software component 11, 12, 13 of the ECU calculator, that is to say obtaining a representation of the total content of the memory for each component.
A partir de l'image mémoire ainsi obtenue associée à chaque composant logiciel 11, 12, 13 du calculateur ECU, on met en oeuvre une étape 30 de récupération, pour chaque composant logiciel, de l'information susmentionnée, qui sera utilisée en tout ou partie pour le diagnostic, à savoir l'information de cohérence 11a, 12a, 13a, l'information de référence 11b, 12b, 13b, l'information de validation 11d, 12d, 13d et le code 11 c, 12c, 13c. L'établissement 40 du diagnostic repose alors sur différentes analyses, prises seules ou en combinaison, sur lesquelles on reviendra plus en détail ci-après, parmi lesquelles : une analyse d'au moins une partie des informations récupérées pour chaque composant logiciel 11, 12, 13 pris indépendamment les uns des autres, une analyse d'au moins une partie des informations récupérées pour chaque composant logiciel 11, 12, 13 considéré les uns par rapport aux autres et une analyse visant à comparer au moins une partie des informations récupérées pour chaque composant logiciel 11, 12, 13 avec les informations d'industrialisation correspondantes mémorisées respectivement pour chacun des composants logiciels 11, 12, 13. From the memory image thus obtained associated with each software component 11, 12, 13 of the ECU computer, a step 30 is implemented for recovering, for each software component, the aforementioned information, which will be used in all or part for the diagnosis, namely the coherence information 11a, 12a, 13a, the reference information 11b, 12b, 13b, the validation information 11d, 12d, 13d and the code 11c, 12c, 13c. The establishment 40 of the diagnosis then relies on various analyzes, taken alone or in combination, to which will be discussed in more detail below, among which: an analysis of at least a portion of the information retrieved for each software component 11, 12 , 13 taken independently of one another, an analysis of at least a portion of the information retrieved for each software component 11, 12, 13 considered relative to each other and an analysis to compare at least a portion of the information retrieved for each software component 11, 12, 13 with the corresponding industrialization information stored respectively for each of the software components 11, 12, 13.
Chacune de ces analyses est à même de fournir à elle seule des résultats de diagnostic mais, selon un mode de réalisation particulièrement avantageux, le diagnostic est de préférence établi sur la base d'une combinaison de ces différentes analyses. Toujours en référence à la figure 2, une analyse préliminaire 50 consiste à déterminer un statut absent ABS ou présent PRE pour chacune des informations récupérées pour chacun desdits composants logiciels 11, 12, 13 et, au cas où l'information concernée est déterminée comme étant présente, à vérifier si elle est différente DIFF ou identique ID par rapport à l'information d'industrialisation correspondante pour le composant logiciel 11, 12, 13 en question. Le statut absent ABS correspond en fait à l'absence d'information écrite à l'emplacement attendue dans la mémoire pour l'information concernée.Each of these analyzes is capable of providing diagnostic results on its own but, in a particularly advantageous embodiment, the diagnosis is preferably established on the basis of a combination of these different analyzes. Still with reference to FIG. 2, a preliminary analysis 50 consists in determining an absent status ABS or present PRE for each of the information retrieved for each of said software components 11, 12, 13 and, in the case where the information concerned is determined as being present, to check whether it is different DIFF or identical ID with respect to the corresponding industrialization information for the software component 11, 12, 13 in question. The absent ABS status is in fact the absence of written information at the location expected in the memory for the information concerned.
6 Afin de faciliter la lecture de la figure 2, les informations de cohérence 11 a, 12a, 13a sont représentées par COH, celles de validation 11 d, 12d, 13d par VAL, celles de référence 11 b, 12b, 13b par REF et le code 11 c, 12c, 13c par COD. La simple détermination du statut absent ABS ou présent PRE des informations récupérées pour chaque composant logiciel 11, 12, 13 pris indépendamment les uns des autres suffit déjà à établir un premier diagnostic, sans faire en plus référence aux informations d'industrialisation. En effet, pour un composant logiciel donné, si, par exemple, l'information de cohérence COH est présente PRE et que l'information de validation VAL est par contre absente ABS, alors on peut en déduire qu'une opération d'écriture a été initiée sans avoir été terminée, l'information de cohérence COH étant en effet située en début du composant logiciel 11, 12, 13 et l'information de validation à la fin, et auquel cas diagnostiquer une perte d'alimentation pendant l'opération d'écriture. A titre d'exemple encore, si l'information de cohérence COH est présente PRE et qu'une information est également présente à l'emplacement de validation en fin du composant logiciel mais est toutefois invalide, alors une perte d'alimentation pendant une opération d'effacement de la mémoire peut être diagnostiquée. Un autre exemple d'établissement de diagnostic selon une simple analyse du statut absent ou présent des informations récupérées pour chaque composant logiciel pris indépendamment les uns des autres, consiste à analyser le statut pour l'information de référence REF. Si cette dernière est absente ABS, alors on peut diagnostiquer qu'il s'agit d'un composant invalide. Comme déjà vu plus haut, l'établissement 40 du diagnostic peut consister à analyser au moins une partie des informations récupérées pour chaque composant logiciel 11, 12, 13, en les considérant également les unes par rapport aux autres. Une telle analyse comparée des informations correspondantes de chaque composant logiciel 11, 12, 13 repose en particulier sur la comparaison entre elles des informations de cohérence COH associées à chacun des composants logiciels 11, 12, 13. En effet, si par exemple deux informations de cohérence COH récupérées respectivement d'un premier et d'un second composant logiciel ne sont pas cohérentes entre elles, cela signifie que les deux composants logiciels concernés sont incompatibles. Enfin, l'établissement 40 du diagnostic peut comme on l'a vu reposer également sur une comparaison, composant par composant, des informations récupérées de chaque composant logiciel avec les informations d'industrialisation correspondantes pour chacun de ces composants logiciels. Comme on l'a vu, à partir de la référence produit fini Ref ECU du calculateur ECU, on peut retrouver dans la base de donnée l'ensemble des informations d'industrialisation 7 disponible pour l'ensemble des composants logiciels 11, 12, 13 constituant le calculateur ECU. Ainsi, par exemple, si les informations de cohérence COH et de code COD pour un composant donné sont différentes DIFF des informations d'industrialisation, on peut 5 diagnostiquer que le composant a été reprogrammé. Selon un autre exemple, si l'information de référence REF est identique ID à l'information correspondante d'industrialisation et que le code COD du composant est par contre différent DIFF de celui en sortie d'industrialisation, on peut diagnostiquer par exemple un contenu corrompu pour le composant logiciel en question.In order to facilitate the reading of FIG. 2, the coherence information items 11a, 12a, 13a are represented by COH, those of validation 11d, 12d, 13d by VAL, those of reference 11b, 12b, 13b by REF and the code 11c, 12c, 13c by COD. The simple determination of the absent ABS status or present PRE information retrieved for each software component 11, 12, 13 taken independently of each other is already sufficient to establish a first diagnosis, without further reference to the industrialization information. Indeed, for a given software component, if, for example, the coherence information COH is present PRE and the validation information VAL is ABS absent, then it can be deduced that a write operation has was initiated without having been terminated, the coherence information COH being indeed located at the beginning of the software component 11, 12, 13 and the validation information at the end, and in which case diagnosing a loss of power during the operation writing. By way of example again, if the coherence information COH is present PRE and information is also present at the validation location at the end of the software component but is however invalid, then a loss of power during an operation erase memory can be diagnosed. Another example of a diagnostic establishment based on a simple analysis of the status absent or present information retrieved for each software component taken independently of each other, is to analyze the status for the REF reference information. If the latter is absent ABS, then we can diagnose that it is an invalid component. As already seen above, the establishment 40 of the diagnosis may consist of analyzing at least a portion of the information retrieved for each software component 11, 12, 13, also considering them relative to each other. Such a comparative analysis of the corresponding information of each software component 11, 12, 13 is based in particular on the comparison between them COH coherence information associated with each of the software components 11, 12, 13. Indeed, if for example two information of COH coherence respectively recovered from a first and a second software component are not consistent with each other, it means that the two software components concerned are incompatible. Finally, the establishment 40 of the diagnosis can also be seen based on a comparison, component by component, information retrieved from each software component with the corresponding industrialization information for each of these software components. As we have seen, from the ECU ECU reference Ref ECU, we can find in the database all the industrialization information 7 available for all the software components 11, 12, 13 constituting the ECU calculator. Thus, for example, if the COH coherence and COD code information for a given component are different from the industrialization information, it can be diagnosed that the component has been reprogrammed. According to another example, if the REF reference information is identical ID to the corresponding industrialization information and the component's COD code is on the other hand different from the output industrialization code, one can diagnose for example a content corrupted for the software component in question.
10 Selon le mode de réalisation préféré, toutes les différentes analyses détaillées ci-dessus sont alors avantageusement recombinées à l'étape 40 pour établir le diagnostic du contenu logiciel du calculateur retourné aux équipes après-vente, permettant au minimum d'indiquer à ces équipes si le contenu et en particulier quel composant, a été reprogrammé ou non, corrompu ou non, ou encore d'indiquer des causes éventuels 15 d'anomalies etc. Le choix des différentes informations récupérées aux fins de ce diagnostic et leurs propriétés attachées permet avantageusement d'établir un diagnostic automatiquement et sans requérir pour ce faire de la part des équipes après-vente un niveau de compétence et d'expérience élevé en la matière. According to the preferred embodiment, all the different analyzes detailed above are then advantageously recombined in step 40 to establish the diagnosis of the computer software content returned to the after-sales teams, allowing at least to indicate to these teams if the content and in particular which component has been reprogrammed or not, corrupted or not, or to indicate possible causes of anomalies etc. The choice of the various information retrieved for the purpose of this diagnosis and their attached properties advantageously makes it possible to establish a diagnosis automatically and without the need for this on the part of the after-sales teams a level of competence and high experience in the field.
Claims (10)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR0707636A FR2923040B1 (en) | 2007-10-30 | 2007-10-30 | METHOD FOR DIAGNOSING A CALCULATOR |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR0707636A FR2923040B1 (en) | 2007-10-30 | 2007-10-30 | METHOD FOR DIAGNOSING A CALCULATOR |
Publications (2)
Publication Number | Publication Date |
---|---|
FR2923040A1 true FR2923040A1 (en) | 2009-05-01 |
FR2923040B1 FR2923040B1 (en) | 2010-02-26 |
Family
ID=39278365
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
FR0707636A Active FR2923040B1 (en) | 2007-10-30 | 2007-10-30 | METHOD FOR DIAGNOSING A CALCULATOR |
Country Status (1)
Country | Link |
---|---|
FR (1) | FR2923040B1 (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2970359A1 (en) * | 2011-01-12 | 2012-07-13 | Peugeot Citroen Automobiles Sa | Method for diagnosing operation of high speed controller area network of car, involves utilizing diagnosis result supply units in accordance with associated mode to provide result of each operation of diagnosis that is carried out |
EP2495625A1 (en) * | 2011-03-04 | 2012-09-05 | Siemens Aktiengesellschaft | Method and programming system for the authentication of a security program of an automation device |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2719919A1 (en) * | 1994-05-11 | 1995-11-17 | Peugeot | Computer controlling functions of motor vehicle |
US6782313B1 (en) * | 1999-05-11 | 2004-08-24 | Robert Bosch Gmbh | Diagnostic test device for motor vehicle with programmable control devices |
JP2005250590A (en) * | 2004-03-01 | 2005-09-15 | Denso Corp | Test specification creation system |
WO2005116824A1 (en) * | 2004-05-24 | 2005-12-08 | Siemens Vdo Automotive Corporation | Method and device for determining flash software compatibility with hardware |
-
2007
- 2007-10-30 FR FR0707636A patent/FR2923040B1/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2719919A1 (en) * | 1994-05-11 | 1995-11-17 | Peugeot | Computer controlling functions of motor vehicle |
US6782313B1 (en) * | 1999-05-11 | 2004-08-24 | Robert Bosch Gmbh | Diagnostic test device for motor vehicle with programmable control devices |
JP2005250590A (en) * | 2004-03-01 | 2005-09-15 | Denso Corp | Test specification creation system |
WO2005116824A1 (en) * | 2004-05-24 | 2005-12-08 | Siemens Vdo Automotive Corporation | Method and device for determining flash software compatibility with hardware |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2970359A1 (en) * | 2011-01-12 | 2012-07-13 | Peugeot Citroen Automobiles Sa | Method for diagnosing operation of high speed controller area network of car, involves utilizing diagnosis result supply units in accordance with associated mode to provide result of each operation of diagnosis that is carried out |
EP2495625A1 (en) * | 2011-03-04 | 2012-09-05 | Siemens Aktiengesellschaft | Method and programming system for the authentication of a security program of an automation device |
Also Published As
Publication number | Publication date |
---|---|
FR2923040B1 (en) | 2010-02-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP4127911A1 (en) | Devices and method for managing electronic control units of a motor vehicle | |
EP3213213A1 (en) | Diagnostic aid method, device and system | |
FR2923040A1 (en) | Software content diagnosing method for electronic control unit of motor vehicle, involves recuperating information from image, and automatically diagnosing software content of logic controller based on recuperated information | |
EP2965238A1 (en) | Method for managing data relative to motor vehicles with a view to the subsequent graphic generation of electrical diagrams of electrical systems | |
FR3031822A1 (en) | DOWNLOADING DATA ON REMOTE EQUIPMENT | |
EP1998183B1 (en) | Diagnosis assistance system for an automobile vehicle | |
FR2957171A1 (en) | METHOD AND TOOL FOR AIDING THE DESIGN OF AN AIRCRAFT USING A CRITERION FOR OPERATIONAL AVAILABILITY | |
WO2021014064A1 (en) | Method and device for updating software of an onboard computer of a vehicle, comprising a runtime memory, a backup memory and a control memory | |
EP3225007B1 (en) | Method of communication between a production tool and a motor vehicle | |
EP3924831A1 (en) | Method for updating a motor vehicle computer in such a way as to add an additional functionality thereto | |
FR2930828A1 (en) | Installed program's modification validating method for engine control unit of motor vehicle, involves verifying coherence of new program based on updated table, and authorizing reprogramming of unit by computer if new program is coherent | |
WO2016193564A1 (en) | Method of processing data relating to automotive vehicles with a view to a subsequent graphical generation of electrical diagrams of electrical systems | |
FR2949865A1 (en) | Method for assisting diagnosis of failure of mechatronic controller in motor vehicle, involves storing product context that comprises failure function utilization data and input/output state of mechatronic controller | |
FR3066295B1 (en) | METHOD FOR UPDATING BY TELECODING A VEHICLE COMPUTER | |
EP1673733A1 (en) | System for predictive diagnosis of faults on a motor vehicle and on-board diagnostic device for the same | |
FR2918192A1 (en) | DEVICE AND METHOD FOR ASSISTING THE DIAGNOSTIC OF A VEHICLE | |
FR3138066A1 (en) | Method and device for monitoring the tire pressure of a vehicle | |
FR2942557A1 (en) | Data protecting method for electronic controller used to control operation of e.g. windscreen wiper of automobile, has transferring and recoding data respectively in target control unit and spare control unit | |
WO2016083685A1 (en) | Method of communication between a production tool and a motor vehicle | |
EP4065423A2 (en) | Method and device for calculating the waiting time before the processors of a vehicle switch to standby | |
FR3147893A1 (en) | System for continuous identification of a motor vehicle driver while at the wheel of the vehicle | |
EP1650714A1 (en) | System and process for remote maintenance of vehicles' electronic equipments and in particular of industrial vehicles' electronic brake assemblies | |
FR3099265A1 (en) | Method and device for updating the software of an on-board computer of a vehicle, comprising an execution memory, a backup memory and a control memory | |
FR2901616A1 (en) | Failure management and diagnostics system for e.g. internal combustion engine of aircraft, has simulating device connected to switch and simulating force signals, and interface e.g. programmable assembly, integrated to managing device | |
EP1650058A1 (en) | System for controlling the tire pressure of a motor vehicle |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
CD | Change of name or company name | ||
PLFP | Fee payment |
Year of fee payment: 9 |
|
PLFP | Fee payment |
Year of fee payment: 10 |
|
PLFP | Fee payment |
Year of fee payment: 11 |
|
PLFP | Fee payment |
Year of fee payment: 12 |
|
PLFP | Fee payment |
Year of fee payment: 13 |
|
PLFP | Fee payment |
Year of fee payment: 14 |
|
TP | Transmission of property |
Owner name: VITESCO TECHNOLOGIES, DE Effective date: 20210309 |
|
PLFP | Fee payment |
Year of fee payment: 15 |
|
CA | Change of address |
Effective date: 20220103 |
|
PLFP | Fee payment |
Year of fee payment: 16 |
|
PLFP | Fee payment |
Year of fee payment: 17 |
|
PLFP | Fee payment |
Year of fee payment: 18 |