FR3094105A1 - Method and device for dimensioning a memory of a computer - Google Patents
Method and device for dimensioning a memory of a computer Download PDFInfo
- Publication number
- FR3094105A1 FR3094105A1 FR1903003A FR1903003A FR3094105A1 FR 3094105 A1 FR3094105 A1 FR 3094105A1 FR 1903003 A FR1903003 A FR 1903003A FR 1903003 A FR1903003 A FR 1903003A FR 3094105 A1 FR3094105 A1 FR 3094105A1
- Authority
- FR
- France
- Prior art keywords
- computer
- data
- information
- sensor
- request
- 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
- 230000015654 memory Effects 0.000 title claims abstract description 104
- 238000000034 method Methods 0.000 title claims abstract description 35
- 230000005540 biological transmission Effects 0.000 claims abstract description 23
- 230000006870 function Effects 0.000 claims abstract description 11
- 238000004590 computer program Methods 0.000 claims description 8
- 238000012795 verification Methods 0.000 claims description 2
- 238000004513 sizing Methods 0.000 abstract description 2
- 238000004891 communication Methods 0.000 description 10
- 238000005516 engineering process Methods 0.000 description 5
- 238000013480 data collection Methods 0.000 description 4
- 238000013461 design Methods 0.000 description 3
- 230000007774 longterm Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 238000011084 recovery Methods 0.000 description 3
- 230000008014 freezing Effects 0.000 description 2
- 238000007710 freezing Methods 0.000 description 2
- 241000897276 Termes Species 0.000 description 1
- 238000002485 combustion reaction Methods 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 238000004377 microelectronic Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/023—Free address space management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5011—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
- G06F9/5016—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals the resource being the memory
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/10—Providing a specific technical effect
- G06F2212/1041—Resource optimization
- G06F2212/1044—Space efficiency improvement
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/17—Embedded application
- G06F2212/173—Vehicle or other transportation
-
- 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/008—Registering or indicating the working of vehicles communicating information to a remotely located station
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/12—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Arrangements For Transmission Of Measured Signals (AREA)
Abstract
Procédé et dispositif de dimensionnement d’une mémoire d’un calculateur L’invention concerne un procédé et un dispositif de détermination de la taille d’un espace mémoire d’un premier calculateur (11) d’un système embarqué (100). Pour cela, une première requête est reçue, par exemple d’un dispositif d’un système externe (10) au véhicule. La première requête comprend avantageusement une première information représentative d’une fréquence d’acquisition de données d’un capteur (132) associé au système embarqué, un identifiant du capteur (132) et une deuxième information représentative d’un temps de transmission de données entre le premier calculateur (11) et un dispositif récepteur des données. Le dispositif récepteur des données correspond par exemple à un dispositif du système externe (10). La taille de la mémoire est déterminée en fonction de la première information et de la deuxième information. Figure pour l’abrégé : Figure 1Method and Device for Sizing a Memory of a Computer The invention relates to a method and a device for determining the size of a memory space of a first computer (11) of an on-board system (100). For this, a first request is received, for example from a device of an external system (10) to the vehicle. The first request advantageously comprises a first item of information representative of a data acquisition frequency of a sensor (132) associated with the on-board system, an identifier of the sensor (132) and a second item of information representative of a data transmission time. between the first computer (11) and a data receiving device. The data receiving device corresponds for example to a device of the external system (10). The size of the memory is determined as a function of the first information and the second information. Figure for the abstract: Figure 1
Description
L’invention concerne les procédés et dispositifs de détermination de la taille de mémoire d’un ou plusieurs calculateurs d’un système embarqué de véhicule, notamment de type automobile.The invention relates to methods and devices for determining the memory size of one or more computers of an on-board vehicle system, in particular of the automotive type.
Arrière-plan technologiqueTechnology background
Les véhicules contemporains embarquent nombre de calculateurs assurant chacun une ou plusieurs fonctions, telles que par exemple la gestion de l’aide à la conduite, de l’antipatinage, de la répartition électronique du freinage ou encore la commande d’actionneurs pour assurer le fonctionnement optimal d’un moteur à combustion.Contemporary vehicles carry a number of computers, each performing one or more functions, such as, for example, the management of driving assistance, traction control, electronic brake distribution or even the control of actuators to ensure the operation optimal for a combustion engine.
Ces calculateurs sont aussi appelés UCE (« Unité de Commande Electronique » ou en anglais ECU « Electronic Control Unit »). Ces calculateurs embarquent des logiciels qui sont exécutés pour assurer les fonctions dont ils ont la charge. Certains calculateurs sont associés à différents capteurs et récupèrent des données mesurées par ces capteurs.These computers are also called UCE (“Unit of Electronic Control” or in English ECU “Electronic Control Unit”). These computers embed software which is executed to ensure the functions for which they are responsible. Some computers are associated with various sensors and recover data measured by these sensors.
Les données mesurées par les capteurs peuvent être utilisées à différentes fins, par exemple pour des fins de développement de services connectés autour du véhicule. La récupération de ces données par des outils externes au système embarqués nécessitent l’envoi de requêtes à au moins un calculateur du système embarqué pour récupérer les données du ou des capteurs ciblés par la requête. Du volume de données dépend les besoins en mémoire au niveau du ou des calculateurs impliqués dans la collecte des données.The data measured by the sensors can be used for various purposes, for example for the purposes of developing connected services around the vehicle. The recovery of this data by tools external to the on-board system requires the sending of requests to at least one computer of the on-board system to recover the data from the sensor(s) targeted by the request. The volume of data depends on the memory requirements at the level of the computer(s) involved in the data collection.
Un des problèmes rencontrés dans la collecte de ces données est que la taille des mémoires des calculateurs est fixée à la conception de ces calculateurs. Lorsque les volumes de données requis sont plus importants que la taille disponible des mémoires, les requêtes ne peuvent pas aboutir. Une autre possibilité est de surdimensionner largement la taille des mémoires des calculateurs, avec les conséquences associées sur l’augmentation du coût des calculateurs et in fine du véhicule.One of the problems encountered in the collection of this data is that the size of the memories of the computers is fixed at the design of these computers. When the volumes of data required are greater than the available size of the memories, the requests cannot succeed. Another possibility is to greatly oversize the size of the ECU memories, with the associated consequences on the increase in the cost of the ECUs and ultimately of the vehicle.
Un objet de la présente invention est d’ajuster dynamiquement la taille de la mémoire allouée dans un ou plusieurs calculateurs pour répondre aux besoins en termes de données à transmettre via ce ou ces calculateurs.An object of the present invention is to dynamically adjust the size of the memory allocated in one or more computers to meet the needs in terms of data to be transmitted via this or these computers.
Selon un premier aspect, l’invention concerne un procédé de détermination de la taille d’un premier espace mémoire d’un premier calculateur de système embarqué de véhicule, le procédé comprenant les étapes de :According to a first aspect, the invention relates to a method for determining the size of a first memory space of a first on-board vehicle system computer, the method comprising the steps of:
- réception d’une première requête comprenant une première information représentative d’une fréquence d’acquisition de données d’un capteur associé au système embarqué, un identifiant du capteur et une deuxième information représentative d’un temps de transmission de données entre le premier calculateur et un dispositif récepteur des données ;- reception of a first request comprising first information representative of a data acquisition frequency of a sensor associated with the on-board system, an identifier of the sensor and second information representative of a data transmission time between the first calculator and a data receiver device;
- détermination de la taille de la mémoire en fonction de la première information et de la deuxième information.- determination of the size of the memory according to the first information and the second information.
Selon une variante la première requête comprend en outre un identifiant d’un deuxième calculateur connecté au capteur.According to a variant, the first request further comprises an identifier of a second computer connected to the sensor.
Selon encore une variante, le dispositif récepteur correspond à un dispositif externe au système embarqué, le premier calculateur étant relié au dispositif récepteur via une connexion sans fil.According to yet another variant, the receiver device corresponds to a device external to the on-board system, the first computer being connected to the receiver device via a wireless connection.
Selon une variante supplémentaire, le procédé comprend en outre une étape d’allocation du premier espace mémoire.According to an additional variant, the method further comprises a step of allocating the first memory space.
Selon une autre variante, le procédé comprend en outre une étape de vérification que la taille de l’espace mémoire disponible dans le premier calculateur est supérieure à la taille du premier espace mémoire, l’allocation étant fonction du résultat de la vérification.According to another variant, the method further comprises a step of verifying that the size of the memory space available in the first computer is greater than the size of the first memory space, the allocation being a function of the result of the verification.
Selon encore une variante, le procédé comprend en outre les étapes de :According to yet another variant, the method further comprises the steps of:
- transmission d’une deuxième requête à un deuxième calculateur du système embarqué, la deuxième requête comprenant la première information, l’identifiant du capteur et la deuxième information, le capteur étant relié au deuxième calculateur ;- transmission of a second request to a second computer of the on-board system, the second request comprising the first information, the identifier of the sensor and the second information, the sensor being connected to the second computer;
- détermination de la taille d’un deuxième espace mémoire du deuxième calculateur en fonction de la première information et d’une troisième information représentative du temps de transmission de données entre le premier calculateur et le deuxième calculateur.- determination of the size of a second memory space of the second computer as a function of the first information and of a third information representative of the data transmission time between the first computer and the second computer.
Selon un deuxième aspect, l’invention concerne un calculateur comprenant une mémoire associée à au moins un processeur, le au moins un processeur étant configuré pour mettre en œuvre les étapes du procédé tel que décrit selon le premier aspect de l’invention.According to a second aspect, the invention relates to a computer comprising a memory associated with at least one processor, the at least one processor being configured to implement the steps of the method as described according to the first aspect of the invention.
Selon un troisième aspect, l’invention concerne un système embarqué dans un véhicule comprenant le premier calculateur tel que décrit ci-dessus selon le deuxième aspect de l’invention et un deuxième calculateur relié au premier calculateur via un bus de données, le capteur étant relié au deuxième calculateur, le processeur du premier calculateur étant en outre configuré pour transmettre une deuxième requête au deuxième calculateur, la deuxième requête comprenant la première information, l’identifiant du capteur et la deuxième information, le deuxième calculateur comprenant une mémoire associée à au moins un processeur configuré pour déterminer la taille d’un deuxième espace mémoire du deuxième calculateur en fonction de la première information et d’une troisième information représentative du temps de transmission de données entre le premier calculateur et le deuxième calculateur.According to a third aspect, the invention relates to a system on board a vehicle comprising the first computer as described above according to the second aspect of the invention and a second computer connected to the first computer via a data bus, the sensor being connected to the second computer, the processor of the first computer being further configured to transmit a second request to the second computer, the second request comprising the first information, the identifier of the sensor and the second information, the second computer comprising a memory associated with at least one processor configured to determine the size of a second memory space of the second computer as a function of the first information and of a third information representative of the data transmission time between the first computer and the second computer.
Selon un quatrième aspect, l’invention concerne un véhicule, par exemple de type automobile, comprenant un ou plusieurs calculateurs tels que décrit ci-dessus selon le deuxième aspect de l’invention ou le système tel que décrit ci-dessus selon le troisième aspect de l’invention.According to a fourth aspect, the invention relates to a vehicle, for example of the automotive type, comprising one or more computers as described above according to the second aspect of the invention or the system as described above according to the third aspect of the invention.
Selon un cinquième aspect, l’invention concerne un programme d’ordinateur qui comporte des instructions adaptées pour l’exécution des étapes du procédé selon le premier aspect de l’invention, ceci notamment lorsque le programme d’ordinateur est exécuté par au moins un processeur.According to a fifth aspect, the invention relates to a computer program which comprises instructions adapted for the execution of the steps of the method according to the first aspect of the invention, this in particular when the computer program is executed by at least one processor.
Un tel programme d’ordinateur peut utiliser n’importe quel langage de programmation, et être sous la forme d’un code source, d’un code objet, ou d’un code intermédiaire entre un code source et un code objet, tel que dans une forme partiellement compilée, ou dans n’importe quelle autre forme souhaitable.Such a computer program can use any programming language, and be in the form of source code, object code, or intermediate code between source code and object code, such as in a partially compiled form, or in any other desirable form.
Selon un sixième aspect, l’invention concerne un support d’enregistrement lisible par un ordinateur sur lequel est enregistré un programme d’ordinateur comprenant des instructions pour l’exécution des étapes du procédé selon le premier aspect de l’invention.According to a sixth aspect, the invention relates to a computer-readable recording medium on which is recorded a computer program comprising instructions for the execution of the steps of the method according to the first aspect of the invention.
D’une part, le support d’enregistrement peut être n'importe quel entité ou dispositif capable de stocker le programme. Par exemple, le support peut comporter un moyen de stockage, tel qu'une mémoire ROM, un CD-ROM ou une mémoire ROM de type circuit microélectronique, ou encore un moyen d'enregistrement magnétique ou un disque dur.On the one hand, the recording medium can be any entity or device capable of storing the program. For example, the medium may comprise a storage means, such as a ROM memory, a CD-ROM or a ROM memory of the microelectronic circuit type, or even a magnetic recording means or a hard disk.
D'autre part, ce support d’enregistrement peut également être un support transmissible tel qu'un signal électrique ou optique, un tel signal pouvant être acheminé via un câble électrique ou optique, par radio classique ou hertzienne ou par faisceau laser autodirigé ou par d'autres moyens. Le programme d’ordinateur selon l'invention peut être en particulier téléchargé sur un réseau de type Internet.On the other hand, this recording medium can also be a transmissible medium such as an electrical or optical signal, such a signal being able to be conveyed via an electrical or optical cable, by conventional or hertzian radio or by self-directed laser beam or by other ways. The computer program according to the invention can in particular be downloaded from an Internet-type network.
Alternativement, le support d'enregistrement peut être un circuit intégré dans lequel le programme d’ordinateur est incorporé, le circuit intégré étant adapté pour exécuter ou pour être utilisé dans l'exécution du procédé en question.Alternatively, the recording medium may be an integrated circuit in which the computer program is incorporated, the integrated circuit being adapted to execute or to be used in the execution of the method in question.
Brève description des figuresBrief description of figures
D’autres caractéristiques et avantages de l’invention ressortiront de la description des modes de réalisation non limitatifs de l’invention ci-après, en référence aux figures 1 à 3 annexées, sur lesquelles :Other characteristics and advantages of the invention will emerge from the description of the non-limiting embodiments of the invention below, with reference to the appended figures 1 to 3, in which:
Un procédé de détermination de la taille d’une mémoire d’un ou plusieurs calculateurs d’un système embarqué de véhicule ainsi que le ou les de ce système embarqué vont maintenant être décrits dans ce qui va suivre en référence conjointement aux figures 1 à 5.A method for determining the size of a memory of one or more computers of an on-board vehicle system as well as the one or more of this on-board system will now be described in the following with reference in conjunction to FIGS. 1 to 5 .
Selon un exemple particulier et non limitatif de réalisation de l’invention, la taille d’un espace mémoire d’un premier calculateur d’un système embarqué est déterminée. Pour cela, une première requête est reçue, par exemple d’un dispositif d’un système externe au véhicule, par exemple un serveur dans le cloud ou un outil de diagnostic. La première requête comprend avantageusement une première information représentative d’une fréquence d’acquisition de données d’un capteur associé au système embarqué, un identifiant du capteur et une deuxième information représentative d’un temps de transmission de données entre le premier calculateur et un dispositif récepteur des données. Le dispositif récepteur des données correspond par exemple au dispositif du système externe. La taille de la mémoire est déterminée en fonction de la première information et de la deuxième information.According to a particular and non-limiting embodiment of the invention, the size of a memory space of a first computer of an on-board system is determined. For this, a first request is received, for example from a device of a system external to the vehicle, for example a server in the cloud or a diagnostic tool. The first request advantageously comprises first information representative of a data acquisition frequency of a sensor associated with the on-board system, an identifier of the sensor and second information representative of a data transmission time between the first computer and a data receiving device. The data receiver device corresponds for example to the device of the external system. The memory size is determined based on the first information and the second information.
Déterminer la taille d’un espace mémoire à partir d’information(s) reçue(s) dans une requête permet d’allouer dynamiquement l’espace mémoire nécessaire pour répondre à cette requête, pour la fourniture des données requises. Une telle allocation dynamique d’espace mémoire apporte de la souplesse dans la conception des calculateurs en évitant de figer au moment de la conception la taille de la mémoire allouée pour la fourniture de données issues d’un ou plusieurs capteurs.Determining the size of a memory space from information(s) received in a request makes it possible to dynamically allocate the memory space necessary to respond to this request, for the supply of the required data. Such a dynamic allocation of memory space provides flexibility in the design of computers by avoiding freezing at the time of design the size of the memory allocated for the supply of data from one or more sensors.
Le système 100 est avantageusement embarqué dans un véhicule, par exemple de type automobile. Le système 100 comprend par exemple un calculateur principal 11 connecté à un ou plusieurs calculateurs secondaires 12, 13, 14. Le calculateur principal 11 correspond par exemple à un calculateur de type UCE. Une UCE est composée d’un calculateur électronique et d’un ou plusieurs logiciels embarqués qui réalisent un ou plusieurs asservissements. Les calculateurs secondaires 12, 13 et 14 sont par exemple eux aussi de type UCE. Le calculateur principal 11 est aussi appelé calculateur orchestrateur ou calculateur de connectivité (ou ECU orchestrateur ou de connectivité) en ce qu’il fait le lien entre les différents composants du système embarqué 100 et un dispositif externe 10. Les calculateurs 11, 12, 13 et 14 forment par exemple une architecture multiplexée pour la réalisation de différents services utiles pour le bon fonctionnement du véhicule et pour assister le conducteur et/ou les passagers du véhicule dans le contrôle du véhicule.The system 100 is advantageously embedded in a vehicle, for example of the automobile type. The system 100 comprises for example a main computer 11 connected to one or more secondary computers 12, 13, 14. The main computer 11 corresponds for example to a computer of the UCE type. An ECU is made up of an electronic computer and one or more on-board software which perform one or more servo-controls. The secondary computers 12, 13 and 14 are for example also of the UCE type. The main computer 11 is also called orchestrator computer or connectivity computer (or orchestrator or connectivity ECU) in that it makes the link between the various components of the on-board system 100 and an external device 10. The computers 11, 12, 13 and 14 form, for example, a multiplexed architecture for carrying out various useful services for the correct operation of the vehicle and for assisting the driver and/or the passengers of the vehicle in controlling the vehicle.
Les calculateurs 11, 12, 13 et 14 communiquent et échangent des données entre eux par l’intermédiaire d’un ou plusieurs bus informatiques 102, 103, par exemple un bus de communication de type bus de données CAN (de l’anglais « Controller Area Network » ou en français « Réseau de contrôleurs »), CAN FD (de l’anglais « Controller Area Network Flexible Data-Rate » ou en français « Réseau de contrôleurs à débit de données flexible »), FlexRay (selon la norme ISO 17458) ou Ethernet (selon la norme ISO/IEC 802-3).The computers 11, 12, 13 and 14 communicate and exchange data between them via one or more computer buses 102, 103, for example a communication bus of the CAN data bus type (from the English "Controller Area Network" or in French "Network of controllers"), CAN FD (from English "Controller Area Network Flexible Data-Rate" or in French "Network of controllers with flexible data rate"), FlexRay (according to the ISO standard 17458) or Ethernet (according to ISO/IEC 802-3 standard).
Chaque calculateur comprend une mémoire, par exemple de la mémoire volatile et/ou non volatile, telle que EEPROM, ROM, PROM, RAM, DRAM, SRAM, flash, dédiée au stockage du code informatique du ou des logiciels embarqués comprenant les paramètres et instructions à charger et exécuter par le processeur de chaque calculateur. Une partie de la mémoire peut être allouée pour stocker, au moins temporairement, des données issues de capteur(s) associés au(x) calculateur(s). Ainsi, le calculateur principal comprend une mémoire 111, le calculateur secondaire 13 comprend une mémoire 131 et le calculateur secondaire 14 comprend une mémoire 141.Each computer comprises a memory, for example volatile and/or non-volatile memory, such as EEPROM, ROM, PROM, RAM, DRAM, SRAM, flash, dedicated to storing the computer code of the on-board software or software comprising the parameters and instructions to be loaded and executed by the processor of each computer. Part of the memory can be allocated to store, at least temporarily, data from sensor(s) associated with the computer(s). Thus, the main computer includes a memory 111, the secondary computer 13 includes a memory 131 and the secondary computer 14 includes a memory 141.
Le calculateur principal 11 est relié à un dispositif externe 10 via une connexion filaire ou sans fil 101. Le dispositif externe 10 est par exemple un serveur distant du « cloud » (ou « nuage » en français) ou un outil de diagnostic. Le calculateur principal 11 reçoit par exemple une ou plusieurs requêtes du dispositif externe pour la fourniture de données issues du système embarqué 100, par exemple via l’Internet avec une connexion de type OTA (de l’anglais « over-the-air », ou en français « par voie aérienne »). La connexion de type OTA utilise par exemple un ou plusieurs protocoles de communication sans fil tels que Bluetooth®, Wi-Fi® (basé sur IEEE 802.11), LTE (de l’anglais « Long-Term Evolution » ou en français « Evolution à long terme »), LTE-Advanced (ou en français LTE-avancé).The main computer 11 is connected to an external device 10 via a wired or wireless connection 101. The external device 10 is for example a remote “cloud” server or a diagnostic tool. The main computer 11 receives for example one or more requests from the external device for the supply of data from the on-board system 100, for example via the Internet with an OTA (over-the-air) type connection. or in French “by air”). The OTA type connection uses, for example, one or more wireless communication protocols such as Bluetooth®, Wi-Fi® (based on IEEE 802.11), LTE (from English “Long-Term Evolution” or in French “Evolution à long term”), LTE-Advanced (or in French LTE-advanced).
Le calculateur secondaire 12 assure par exemple la fonction de passerelle (de l’anglais « gateway ») entre le calculateur secondaire 13 et le calculateur principal 11, par exemple pour transmettre des requêtes du calculateur principal 11 vers le calculateur secondaire 13 et pour transmettre en réponse des données du calculateur secondaire 13 vers le calculateur principal 11. Les calculateurs secondaires 12 et 13 sont par exemple reliés entre eux via une connexion filaire ou un bus de données 103, par exemple de type CAN. Les calculateurs 11, 12 et 14 sont par exemple reliés entre eux via une connexion filaire ou un bus de données 102, par exemple de type CAN FD. Selon un autre exemple, tous les calculateurs 11 à 14 sont reliés entre via un bus de données du même type, par exemple CAN ou CAN FD.The secondary computer 12 provides for example the gateway function between the secondary computer 13 and the main computer 11, for example to transmit requests from the main computer 11 to the secondary computer 13 and to transmit in response of the data from the secondary computer 13 to the main computer 11. The secondary computers 12 and 13 are for example linked together via a wired connection or a data bus 103, for example of the CAN type. The computers 11, 12 and 14 are for example interconnected via a wired connection or a data bus 102, for example of the CAN FD type. According to another example, all the computers 11 to 14 are interconnected via a data bus of the same type, for example CAN or CAN FD.
Un ou plusieurs capteurs sont associés, c’est-à-dire reliés ou connectés, à un ou plusieurs des calculateurs du système embarqué 100. Par exemple, deux capteurs 132 et 133 sont associés au calculateur secondaire 13 et un capteur 142 est associé au calculateur secondaire 14. Selon une variante de réalisation (non illustrée), un ou plusieurs capteurs sont associés au calculateur principal 11. Les capteurs sont reliés au(x) calculateur(s) associé(s) via une connexion filaire, par exemple en utilisant une technologie de type bus LIN (de l’anglais « Local Interconnect Network », ou en français « Réseau interconnecté local »).One or more sensors are associated, that is to say linked or connected, to one or more of the computers of the on-board system 100. For example, two sensors 132 and 133 are associated with the secondary computer 13 and one sensor 142 is associated with the secondary computer 14. According to a variant embodiment (not shown), one or more sensors are associated with the main computer 11. The sensors are connected to the associated computer(s) via a wired connection, for example by using a technology of the LIN bus type (from the English “Local Interconnect Network”, or in French “Réseau interconnecté local”).
Selon un exemple de mise en œuvre de l’invention, à titre d’illustration, une requête est émise par le dispositif externe 10. Cette requête demande par exemple la fourniture de données du capteur S1 132 connecté et contrôlé par le calculateur 13. Cette requête est transmise au calculateur principal 11 via la connexion 101. La requête comprend par exemple un identifiant ‘ECUn’ du calculateur 13 contrôlant le capteur S1 132, un identifiant ‘Sn’ du capteur S1 132, une information ‘ACQ_Sn’ représentative du temps d’acquisition du capteur (c’est-à-dire l’espace temporel entre 2 acquisitions) et une information ‘TIME’ représentative du temps total choisi d’acquisition avant envoi des données au dispositif externe 10 par le calculateur principal 11. La requête ‘GET_DATA’ prend par exemple la forme suivante :According to an exemplary implementation of the invention, by way of illustration, a request is sent by the external device 10. This request requests for example the supply of data from the sensor S1 132 connected and controlled by the computer 13. This request is transmitted to the main computer 11 via the connection 101. The request comprises for example an identifier 'ECUn' of the computer 13 controlling the sensor S1 132, an identifier 'Sn' of the sensor S1 132, information 'ACQ_Sn' representative of the dwell time acquisition of the sensor (that is to say the time interval between 2 acquisitions) and a piece of information 'TIME' representative of the total acquisition time chosen before sending the data to the external device 10 by the main computer 11. The request 'GET_DATA' takes for example the following form:
GET_DATA (ECUn, Sn, ACQ_Sn, TIME).GET_DATA (ECUn, Sn, ACQ_Sn, TIME).
‘ECUn’ identifie par exemple le calculateur ECU3 13 ; ‘Sn’ identifie par exemple le capteur S1 132 ; ‘ACQ-Sn’ vaut par exemple 10 ms ; et ‘TIME’ vaut par exemple 1s. La valeur de ‘TIME’ correspond avantageusement au temps de transmission associé à la technologie utilisée pour échanger des données entre le dispositif externe 10 et le calculateur principal ECU1 11, par exemple via une connexion 4G (ou LTE-Advanced).‘ECUn’ identifies, for example, the ECU3 13 computer; ‘Sn’ identifies, for example, sensor S1 132; ‘ACQ-Sn’ is for example 10 ms; and 'TIME' is for example 1s. The value of ‘TIME’ advantageously corresponds to the transmission time associated with the technology used to exchange data between the external device 10 and the main computer ECU1 11, for example via a 4G (or LTE-Advanced) connection.
La requête ‘GET_DATA’ est par exemple transmise par le dispositif externe 10 au calculateur principal ECU1 11 au moyen d’un protocole connu de l’homme de l’art tel que MQTT (de l’anglais « MQ Telemetry Transport » ou en français « Transport télémétrique MQ ») ou HTTPS (de l’anglais « HyperText Transfer Protocol Secure » ou en français « Protocole de transport hypertexte sécurisé ») par exemple.The 'GET_DATA' request is for example transmitted by the external device 10 to the main computer ECU1 11 by means of a protocol known to those skilled in the art such as MQTT (from the English "MQ Telemetry Transport" or in French “MQ telemetric transport”) or HTTPS (from English “HyperText Transfer Protocol Secure” or in French “Protocol de transport hypertexte sécurité”) for example.
Le calculateur principal (aussi appelé premier calculateur) 11 peut alors dimensionner l’espace mémoire à allouer pour stocker les données requises par la requête, avant de les transmettre au dispositif externe (appelé alors dispositif récepteur). Pour ce faire, le calculateur principal 11 prend en compte le paramètre ‘TIME’, tel que cela sera expliqué plus en détail en regard de la figure 3.The main computer (also called the first computer) 11 can then size the memory space to be allocated to store the data required by the request, before transmitting them to the external device (then called the receiver device). To do this, the main computer 11 takes into account the ‘TIME’ parameter, as will be explained in more detail with regard to FIG. 3.
Le calculateur principal 11 transmet alors la requête au calculateur secondaire ECU3 13 via le calculateur passerelle ECU2 12, par exemple au moyen d’une requête de diagnostic qui comprend alors les paramètres ‘Sn’, ‘ACQ_Sn’ et ‘TIME’ selon un protocole connu de l’homme de l’art tel que UDS (de l’anglais « Unified Diagnostic Services » ou en français « Services de diagnostic unifiés »), KWP2000 (de l’anglais « Keyword Protocol 2000 » ou en français « Protocole mot-clé 2000 »). De tels protocoles présentent par exemple l’avantage de pouvoir être utilisés nativement sur des bus de données de type CAN, CAN FD, FlexRay ou Ethernet.The main computer 11 then transmits the request to the secondary computer ECU3 13 via the gateway computer ECU2 12, for example by means of a diagnostic request which then includes the parameters 'Sn', 'ACQ_Sn' and 'TIME' according to a known protocol skilled in the art such as UDS (from English “Unified Diagnostic Services” or in French “Services de diagnostic unifiés”), KWP2000 (from English “Keyword Protocol 2000” or in French “Protocol mot- key 2000”). Such protocols have the advantage, for example, of being able to be used natively on data buses of the CAN, CAN FD, FlexRay or Ethernet type.
Le calculateur secondaire ECU3 13 (aussi appelé deuxième calculateur) peut alors dimensionner l’espace mémoire à allouer pour stocker les données requises par la requête, avant de les transmettre au calculateur principal ECU1 11(appelé alors dispositif récepteur). Le calculateur secondaire ECU3 13 utilise alors le paramètre ‘ACQ_Sn’ pour dimensionner la taille de l’espace mémoire requis pour stocker les données issues du capteur S1 132 et le paramètre ‘TIME’ pour déterminer le nombre de transmissions successives à réaliser vers le calculateur principal ECU1 11, tel que cela sera expliqué plus en détail en regard de la figure 3.The secondary computer ECU3 13 (also called the second computer) can then size the memory space to be allocated to store the data required by the request, before transmitting them to the main computer ECU1 11 (then called the receiver device). The secondary computer ECU3 13 then uses the parameter 'ACQ_Sn' to size the size of the memory space required to store the data from the sensor S1 132 and the parameter 'TIME' to determine the number of successive transmissions to be carried out to the main computer ECU1 11, as will be explained in more detail next to Figure 3.
Bien entendu, le nombre de calculateurs du système 100 n’est pas limité à 4 et s’étend à tout nombre, par exemple 10, 20, 50, 100 ou plus de calculateurs. Un exemple de réalisation matérielle d’un calculateur est décrit en regard de la figure 2.Of course, the number of computers in the 100 system is not limited to 4 and extends to any number, for example 10, 20, 50, 100 or more computers. An example of hardware realization of a computer is described with regard to figure 2.
Le calculateur 2 est par exemple configuré pour la mise en œuvre des étapes du procédé décrit en regard de l’une des figures 3, 4 et/ou 5. Des exemples d’un tel calculateur 2 comprennent, sans y être limités, un équipement électronique embarqué tel qu’un ordinateur de bord d’un véhicule, un calculateur électronique tel qu’une UCE. Les éléments du calculateur 2, individuellement ou en combinaison, peuvent être intégrés dans un unique circuit intégré, dans plusieurs circuits intégrés, et/ou dans des composants discrets. Le calculateur 2 peut être réalisé sous la forme de circuits électroniques ou de modules logiciels (ou informatiques) ou encore d’une combinaison de circuits électroniques et de modules logiciels. Selon différents modes de réalisation particuliers, le calculateur 2 est couplé en communication avec d’autres dispositifs ou systèmes similaires, par exemple par l’intermédiaire d’un bus de communication ou au travers de ports d’entrée / sortie dédiés.The computer 2 is for example configured for the implementation of the steps of the method described with regard to one of FIGS. 3, 4 and/or 5. Examples of such a computer 2 include, without being limited thereto, equipment on-board electronics such as a vehicle on-board computer, an electronic computer such as an ECU. The elements of the computer 2, individually or in combination, can be integrated in a single integrated circuit, in several integrated circuits, and/or in discrete components. The computer 2 can be made in the form of electronic circuits or software (or computer) modules or else a combination of electronic circuits and software modules. According to different particular embodiments, the computer 2 is coupled in communication with other similar devices or systems, for example via a communication bus or via dedicated input/output ports.
Le calculateur 2 comprend un (ou plusieurs) processeur(s) 20 configurés pour exécuter des instructions pour la réalisation des étapes du procédé et/ou pour l’exécution des instructions du ou des logiciels embarqués dans le calculateur 2. Le processeur 20 peut inclure de la mémoire intégrée, une interface d’entrée/sortie, et différents circuits connus de l’homme du métier. Le calculateur 2 comprend en outre au moins une mémoire 21 correspondant par exemple une mémoire volatile et/ou non volatile et/ou comprend un dispositif de stockage mémoire qui peut comprendre de la mémoire volatile et/ou non volatile, telle que EEPROM, ROM, PROM, RAM, DRAM, SRAM, flash, disque magnétique ou optique.The computer 2 comprises one (or more) processor(s) 20 configured to execute instructions for carrying out the steps of the method and/or for executing the instructions of the software or software embedded in the computer 2. The processor 20 can include integrated memory, an input/output interface, and various circuits known to those skilled in the art. The computer 2 further comprises at least one memory 21 corresponding for example to a volatile and/or non-volatile memory and/or comprises a memory storage device which can comprise volatile and/or non-volatile memory, such as EEPROM, ROM, PROM, RAM, DRAM, SRAM, flash, magnetic or optical disk.
Le code informatique du ou des logiciels embarqués comprenant les instructions à charger et exécuter par le processeur est par exemple stocké sur la première mémoire 21.The computer code of the on-board software or software comprising the instructions to be loaded and executed by the processor is for example stored on the first memory 21.
Selon un mode de réalisation particulier et non limitatif, le calculateur 2 comprend un bloc 22 d’éléments d’interface pour communiquer avec des dispositifs externes, par exemple un serveur distant ou le « cloud », des capteurs odométriques, un capteur GPS et/ou tout autre capteur. Les éléments d’interface du bloc 22 comprennent une ou plusieurs des interfaces suivantes :According to a particular and non-limiting embodiment, the computer 2 comprises a block 22 of interface elements for communicating with external devices, for example a remote server or the "cloud", odometer sensors, a GPS sensor and/or or any other sensor. Block 22 interface elements include one or more of the following interfaces:
- interface radiofréquence RF, par exemple de type Bluetooth® ou Wi-Fi®, LTE (de l’anglais « Long-Term Evolution » ou en français « Evolution à long terme »), LTE-Advanced (ou en français LTE-avancé) ;- RF radio frequency interface, for example of the Bluetooth® or Wi-Fi® type, LTE (from English "Long-Term Evolution" or in French "Evolution à long terme"), LTE-Advanced (or in French LTE-advanced );
- interface USB (de l’anglais « Universal Serial Bus » ou « Bus Universel en Série » en français) ;- USB interface (from the English "Universal Serial Bus" or "Universal Serial Bus" in French);
- interface HDMI (de l’anglais « High Definition Multimedia Interface », ou « Interface Multimedia Haute Definition » en français) ;- HDMI interface (from the English “High Definition Multimedia Interface”, or “Interface Multimedia Haute Definition” in French);
- interface LIN.- LIN interface.
Des données sont par exemples chargées vers le calculateur 2 via l’interface du bloc 22 en utilisant un réseau Wi-Fi® tel que selon IEEE 802.11 ou un réseau mobile tel qu’un réseau 4G (ou LTE Advanced selon 3GPP release 10 – version 10) ou 5G.Data are for example loaded to the computer 2 via the interface of block 22 using a Wi-Fi® network such as according to IEEE 802.11 or a mobile network such as a 4G network (or LTE Advanced according to 3GPP release 10 – version 10) or 5G.
Selon un autre mode de réalisation particulier, le calculateur 2 comprend une interface de communication 23 qui permet d’établir une communication avec d’autres dispositifs (tels que d’autres calculateurs du système embarqué) via un canal de communication 230. L’interface de communication 23 correspond par exemple à un transmetteur configuré pour transmettre et recevoir des informations et/ou des données via le canal de communication 230. L’interface de communication 23 correspond par exemple à un réseau filaire de type CAN ou CAN FD.According to another particular embodiment, the computer 2 comprises a communication interface 23 which makes it possible to establish communication with other devices (such as other computers of the on-board system) via a communication channel 230. The interface communication interface 23 corresponds for example to a transmitter configured to transmit and receive information and/or data via the communication channel 230. The communication interface 23 corresponds for example to a wired network of the CAN or CAN FD type.
Selon un mode de réalisation particulier supplémentaire, le calculateur 2 peut fournir des signaux de sortie à un ou plusieurs dispositifs externes, tels qu’un écran d’affichage, un ou des haut-parleurs et/ou d’autres périphériques via respectivement des interfaces de sortie non représentées.According to an additional particular embodiment, the computer 2 can supply output signals to one or more external devices, such as a display screen, one or more loudspeakers and/or other peripherals respectively via interfaces output not shown.
Dans une première opération, le dispositif externe 10 transmet une requête sous la forme d’une commande GET_DATA (ECU3, S1, 10ms, 1s) au calculateur ECU1.In a first operation, the external device 10 transmits a request in the form of a GET_DATA command (ECU3, S1, 10ms, 1s) to the computer ECU1.
Dans une deuxième opération, le calculateur ECU1 (aussi appelé premier calculateur) détermine l’espace mémoire requis pour stocker les données mesurées par le capteur S1 132 avant transmission au dispositif externe 10. Le calculateur ECU1 détermine (ou calcule), à partir des informations ‘ACQ_S1’ = 10ms et ‘TIME’ = 1s, que 100 cases mémoires 311, 312, 3110 doivent être allouées à cette fonctionnalité : (1s = 1000ms ; 1000ms / 10ms = 100). En considérant que cette valeur est bien inférieure à la limite mémoire possible pour cette fonction dans le calculateur ECU1 (typiquement au moins plusieurs centaines de Ko (kilo-octets) disponibles dans la mémoire 111 du calculateur ECU1), le processus de collecte des données peut continuer.In a second operation, the computer ECU1 (also called the first computer) determines the memory space required to store the data measured by the sensor S1 132 before transmission to the external device 10. The computer ECU1 determines (or calculates), from the information 'ACQ_S1' = 10ms and 'TIME' = 1s, that 100 memory cells 311, 312, 3110 must be allocated to this functionality: (1s = 1000ms; 1000ms / 10ms = 100). Considering that this value is well below the possible memory limit for this function in the computer ECU1 (typically at least several hundred KB (kilobytes) available in the memory 111 of the computer ECU1), the data collection process can continue.
Dans une troisième opération, le calculateur ECU1 transforme la requête provenant du dispositif externe 10 en une requête de diagnostic qu’il transmet sur le système embarqué du véhicule à destination du calculateur ECU3. Cette requête de diagnostic comprend les informations (S1, ACQ_S1, TIME), c’est-à-dire (S1, 10ms, 1s).In a third operation, the computer ECU1 transforms the request originating from the external device 10 into a diagnostic request which it transmits to the on-board system of the vehicle intended for the computer ECU3. This diagnostic request includes the information (S1, ACQ_S1, TIME), i.e. (S1, 10ms, 1s).
Dans une quatrième opération, le calculateur ECU3 (aussi appelé deuxième calculateur) en charge de la collecte de bas niveau des informations du capteur S1 132 détermine la taille de son espace mémoire (aussi appelé buffer mémoire ou mémoire tampon) optimum à allouer à cette collecte en prenant en compte la valeur du paramètre ‘ACQ_S1’ reçu. Un paramètre supplémentaire ‘TA_ECU3’, propre au logiciel de ECU3 et correspondant au temps nécessaire à la transmission d’une information au calculateur ECU1 via le bus de données du système embarqué reliant les calculateurs ECU1 et ECU3, est également pris en compte. Ce temps ‘TA_ECU3’ représente le temps lié à l’architecture véhicule et dépend des technologies réseaux mises en œuvre dans la liaison entre les deux calculateurs ECU3 et ECU1, ainsi que du nombre d’information à collecter avant transmission vers ECU1. En ce sens, chaque calculateur du véhicule dispose d’une valeur spécifique qui est avantageusement mesurée après conception du véhicule. Cette information est par exemple stockée avec les paramètres de calibration du logiciel de chaque calculateur en charge de la collecte des données requises. Ces paramètres de calibration sont avantageusement stockés en mémoire 131 du calculateur ECU3 qui contrôle le capteur S1 32.In a fourth operation, the computer ECU3 (also called the second computer) in charge of the low-level collection of information from the sensor S1 132 determines the size of its memory space (also called memory buffer or buffer memory) that is optimum to allocate to this collection. taking into account the value of the 'ACQ_S1' parameter received. An additional parameter ‘TA_ECU3’, specific to the ECU3 software and corresponding to the time necessary for the transmission of information to the ECU1 computer via the data bus of the on-board system connecting the ECU1 and ECU3 computers, is also taken into account. This ‘TA_ECU3’ time represents the time linked to the vehicle architecture and depends on the network technologies implemented in the link between the two computers ECU3 and ECU1, as well as the amount of information to be collected before transmission to ECU1. In this sense, each vehicle computer has a specific value which is advantageously measured after the vehicle has been designed. This information is for example stored with the calibration parameters of the software of each computer in charge of collecting the required data. These calibration parameters are advantageously stored in memory 131 of the computer ECU3 which controls the sensor S1 32.
Selon l’exemple de la figure 3, ‘TA_ECU3’ = 100ms. Le calculateur ECU3 détermine alors la taille de l’espace mémoire à allouer à la collecte des données mesurées par le capteur S1 132, la taille de l’espace mémoire étant par exemple exprimée avec un nombre NECU3de cases mémoires 331, 332, 3310 à allouer :According to the example of figure 3, 'TA_ECU3' = 100ms. The computer ECU3 then determines the size of the memory space to be allocated to the collection of the data measured by the sensor S1 132, the size of the memory space being for example expressed with a number N ECU3 of memory slots 331, 332, 3310 to allocate:
NECU3= TA_ECU3 / ACQ_S1, c’est-à-dire NECU3= 100 /10 = 10 cases mémoires.N ECU3 = TA_ECU3 / ACQ_S1, i.e. N ECU3 = 100 /10 = 10 memory cells.
En considérant que cette valeur est bien inférieure à la limite mémoire possible pour cette fonction dans le calculateur ECU3, le processus de collecte des données peut continuer.Considering that this value is well below the possible memory limit for this function in the ECU3, the data collection process can continue.
Comme ‘TIME’ = 1s, 10 envois (1s / 100ms) du contenu de l’espace mémoire alloué par le calculateur ECU3 sont nécessaires pour répondre à la requête ‘GET_DATA’, correspondant en autant de trames (c’est-à-dire 10 trames) nécessaires à l’envoi de la collecte de bas niveau.As 'TIME' = 1s, 10 sendings (1s / 100ms) of the contents of the memory space allocated by the ECU3 computer are necessary to respond to the 'GET_DATA' request, corresponding in as many frames (i.e. 10 frames) needed to send the low-level collection.
Dans une cinquième opération, le calculateur ECU3 transmet successivement les 10 trames correspondant aux différentes acquisitions de son espace mémoire. L’espace mémoire du calculateur est vidé à chaque envoi d’une trame pour libérer cet espace mémoire en vue de la collecte suivante des données en provenance du capteur S1 132. Une fois les différentes trames reçues, l’espace mémoire du calculateur ECU1 alloué à la collecte des données est rempli. Comme illustré sur la figure 3, la première case mémoire 311 du calculateur ECU 1 permet de stocker les données stockées dans les 10 cases mémoires 331, 332 à 3310 de l’espace mémoire du calculateur ECU3 après une première collecte des données du capteur S1. Une fois le contenu de ces 10 cas transmis à ECU1, cet espace mémoire est disponible pour la prochaine collecte des données de S1. Une deuxième transmission des données stockées dans ces cases mémoires 331 à 3310 est alors effectuée vers ECU1 qui stocke ces nouvelles données reçues dans une deuxième case mémoire 312, et ainsi de suite jusqu’à stocker le contenu des 10 collectes dans les 10 cases mémoires 311 à 3110 du calculateur ECU1.In a fifth operation, the computer ECU3 successively transmits the 10 frames corresponding to the different acquisitions of its memory space. The memory space of the computer is emptied each time a frame is sent to release this memory space for the next collection of data from the sensor S1 132. Once the various frames have been received, the memory space of the computer ECU1 allocated to data collection is completed. As illustrated in Figure 3, the first memory box 311 of the computer ECU 1 makes it possible to store the data stored in the 10 memory boxes 331, 332 to 3310 of the memory space of the computer ECU3 after a first collection of data from the sensor S1. Once the contents of these 10 cases have been transmitted to ECU1, this memory space is available for the next collection of data from S1. A second transmission of the data stored in these memory cells 331 to 3310 is then carried out to ECU1 which stores these new data received in a second memory cell 312, and so on until the contents of the 10 collections are stored in the 10 memory cells 311 to 3110 of computer ECU1.
Dans une sixième opération, le calculateur ECU1 transmet les données stockées dans les 10 cases mémoires 311 à 3110 allouées à la collecte des données mesurées par le capteur S1 au dispositif externe 10.In a sixth operation, the computer ECU1 transmits the data stored in the 10 memory slots 311 to 3110 allocated to the collection of the data measured by the sensor S1 to the external device 10.
Bien entendu, les différentes valeurs données aux paramètres de la requête ‘GET_DATA’ et du système embarqué sont fournies à titre d’exemple et peuvent prendre d’autres valeurs, selon les caractéristiques du système embarqué et les instructions fournies au dispositif externe, par exemple par un opérateur ou un utilisateur.Of course, the different values given to the parameters of the 'GET_DATA' request and of the embedded system are provided by way of example and can take other values, depending on the characteristics of the embedded system and the instructions provided to the external device, for example by an operator or user.
Dans une première étape 41, une première requête est reçue, par exemple d’un système externe (ou débarqué) au véhicule. La première requête comprend avantageusement une première information représentative d’une fréquence d’acquisition de données d’un capteur associé au système embarqué, un identifiant du capteur et une deuxième information représentative d’un temps de transmission de données entre le premier calculateur et un dispositif récepteur des données. Le dispositif récepteur des données correspond par exemple à un dispositif (par exemple un serveur, un ordinateur, un téléphone intelligent (de l’anglais « smartphone »), une tablette, un outil de diagnostic) du système externe. Ce dispositif récepteur est avantageusement connecté au premier calculateur via une liaison sans fil de type OTA. La première requête est avantageusement reçue par le premier calculateur ECU1.In a first step 41, a first request is received, for example from a system external (or dismounted) to the vehicle. The first request advantageously comprises first information representative of a data acquisition frequency of a sensor associated with the on-board system, an identifier of the sensor and second information representative of a data transmission time between the first computer and a data receiving device. The data receiving device corresponds for example to a device (for example a server, a computer, a smart telephone (“smartphone”), a tablet, a diagnostic tool) of the external system. This receiver device is advantageously connected to the first computer via an OTA type wireless link. The first request is advantageously received by the first computer ECU1.
Selon une variante optionnelle, la première requête comprend en outre un identifiant d’un deuxième calculateur ECU 3 auquel est relié le capteur. Cette variante est optionnelle en ce que le capteur peut par exemple être relié au premier calculateur ECU1. Dans ce cas de figure, il n’est pas utile d’identifier le calculateur auquel est relié le capteur. Selon un autre exemple, le premier calculateur est le seul calculateur du système embarqué et il n’est donc pas utile d’identifier le calculateur auquel est relié le capteur dans la première requête.According to an optional variant, the first request further comprises an identifier of a second computer ECU 3 to which the sensor is connected. This variant is optional in that the sensor can for example be connected to the first computer ECU1. In this case, it is not useful to identify the computer to which the sensor is connected. According to another example, the first computer is the only computer of the on-board system and it is therefore not useful to identify the computer to which the sensor is connected in the first request.
Dans une deuxième étape 42, la taille du premier espace mémoire est déterminée en fonction de la première information et de la deuxième information. Par exemple, la taille du premier espace mémoire est exprimée en nombre de cases mémoires, et ce nombre de cases mémoire est obtenue en divisant la deuxième information (par exemple exprimée en millisecondes) par la première information (par exemple exprimée en millisecondes).In a second step 42, the size of the first memory space is determined according to the first information and the second information. For example, the size of the first memory space is expressed in number of memory cells, and this number of memory cells is obtained by dividing the second information (for example expressed in milliseconds) by the first information (for example expressed in milliseconds).
Dans une première étape 51, une première requête est reçue, par exemple d’un système externe (ou débarqué) au véhicule. La première requête comprend avantageusement une première information représentative d’une fréquence d’acquisition de données d’un capteur associé au (ou compris dans le) système embarqué, un identifiant du capteur et une deuxième information représentative d’un temps de transmission de données entre le premier calculateur et un dispositif récepteur des données.In a first step 51, a first request is received, for example from a system external (or dismounted) to the vehicle. The first request advantageously comprises first information representative of a data acquisition frequency of a sensor associated with (or included in) the on-board system, an identifier of the sensor and second information representative of a data transmission time between the first computer and a data receiver device.
Dans une deuxième étape 52, la taille du premier espace mémoire est déterminée en fonction de la première information et de la deuxième information.In a second step 52, the size of the first memory space is determined according to the first information and the second information.
Dans une troisième étape 53, la taille du premier espace mémoire déterminée à l’étape 52 est comparée à la taille de la mémoire du premier calculateur ECU1 pour vérifier que la taille du premier espace mémoire n’est pas supérieure à l’espace mémoire disponible en mémoire du premier calculateur ECU1 ou n’est pas supérieure à une limite fixée et stockée par exemple comme paramètre de calibration du premier calculateur. Si la taille déterminée à l’étape 52 est supérieure à l’espace mémoire disponible ou à la limite fixée, alors la requête n’aboutit pas et le procédé prend fin à l’étape 531. Un message est par exemple retourné au dispositif émetteur de la requête pour l’informer que cette dernière ne peut pas aboutir.In a third step 53, the size of the first memory space determined in step 52 is compared with the size of the memory of the first computer ECU1 to verify that the size of the first memory space is not greater than the available memory space. in the memory of the first computer ECU1 or is not greater than a limit fixed and stored for example as a calibration parameter of the first computer. If the size determined at step 52 is greater than the available memory space or the fixed limit, then the request is unsuccessful and the method ends at step 531. A message is for example returned to the sender device of the request to inform him that the request cannot be completed.
Si la taille déterminée à l’étape 52 est inférieure à l’espace mémoire disponible, alors le premier espace mémoire est allouée pour répondre à la requête au cours d’une étape 54.If the size determined in step 52 is less than the available memory space, then the first memory space is allocated to respond to the request during a step 54.
Si le capteur qui fournit les données est relié à un calculateur différent du premier calculateur, le premier calculateur transforme la première requête et transmet une deuxième requête au calculateur, dit deuxième calculateur, contrôlant le capteur cible de la requête. La deuxième requête comprend avantageusement la première information représentative d’une fréquence d’acquisition de données d’un capteur associé au système embarqué, l’identifiant du capteur et la deuxième information représentative d’un temps de transmission de données entre le premier calculateur et un dispositif récepteur des données. Les étapes 51, 52, 53, et 54 ou 531 sont réitérées pour déterminer la taille d’un deuxième espace mémoire à allouer pour que le deuxième calculateur stocke temporairement les données requises issus du capteur avant de les transmettre au premier calculateur, tel que décrit en regard de la figure 3, à la différence que le deuxième espace mémoire est déterminé à partir de la première information et d’une troisième information connue du deuxième calculateur. Cette troisième information correspond avantageusement au temps de transmission de données entre le premier calculateur et le deuxième calculateur, déterminé par exemple de manière empirique.If the sensor which provides the data is connected to a computer different from the first computer, the first computer transforms the first request and transmits a second request to the computer, called the second computer, controlling the target sensor of the request. The second request advantageously comprises the first information representative of a data acquisition frequency of a sensor associated with the on-board system, the identifier of the sensor and the second information representative of a data transmission time between the first computer and a data receiving device. Steps 51, 52, 53, and 54 or 531 are repeated to determine the size of a second memory space to be allocated so that the second computer temporarily stores the required data from the sensor before transmitting them to the first computer, as described with reference to FIG. 3, with the difference that the second memory space is determined from the first piece of information and a third piece of information known to the second computer. This third information advantageously corresponds to the data transmission time between the first computer and the second computer, determined for example empirically.
Les données ainsi collectées par le premier calculateur et stockées temporairement dans le premier espace mémoire alloué à cet effet sont enfin transmises au dispositif récepteur qui a émis la première requête.The data thus collected by the first computer and temporarily stored in the first memory space allocated for this purpose are finally transmitted to the receiver device which issued the first request.
De tels procédés permettent la collecte d’informations via par exemple une liaison de type OTA en dimensionnant les espaces mémoires des différents calculateurs de manière optimale, au plus juste, en étant adaptés à la demande.Such processes allow the collection of information via, for example, an OTA type link by sizing the memory spaces of the various computers in an optimal way, as accurately as possible, by being adapted to the request.
Un même espace mémoire d’un calculateur peut donc être utilisé pour différents acquisitions de paramètres ou données à différents instants. Il en résulte :The same memory space of a computer can therefore be used for different acquisitions of parameters or data at different times. This results in:
- un gain sur le coût de la mémoire des différents calculateurs, et/ou- a saving on the cost of the memory of the various computers, and/or
- une plus grande profondeur d’acquisition d’un paramètre ou de données pour un même espace mémoire disponible.- a greater depth of acquisition of a parameter or data for the same available memory space.
L’invention permet aussi d’acquérir des données selon une fréquence d’acquisition plus importante que la vitesse de transmission de l’information dépendante de la technologie utilisée (par exemple OTA et/ou bus de données de type CAN FD).The invention also makes it possible to acquire data according to an acquisition frequency greater than the information transmission speed depending on the technology used (for example OTA and/or CAN FD type data bus).
L’invention permet aussi de ne pas figer dans les logiciels les configurations d’acquisitions des données mais de composer au gré du besoin cette combinaison d’acquisitions afin de pouvoir répondre à une multitude de services connectés qui ne seraient par exemple pas identifiés au moment du figeage du logiciel des différents calculateurs d’un véhicule automobile.The invention also makes it possible not to freeze the data acquisition configurations in the software but to compose this combination of acquisitions as needed in order to be able to respond to a multitude of connected services which would not, for example, be identified at the time the freezing of the software of the various computers of a motor vehicle.
Bien entendu, l’invention ne se limite pas aux modes de réalisation décrits ci-avant mais s’étend à une méthode de transmission des données mesurées par un ou plusieurs capteurs d’un système embarqués, suite à une requête reçue par exemple d’un système débarqué du véhicule, et au dispositif configuré pour la mise en œuvre d’une telle méthode.Of course, the invention is not limited to the embodiments described above but extends to a method for transmitting data measured by one or more sensors of an on-board system, following a request received for example from a system dismounted from the vehicle, and to the device configured for the implementation of such a method.
L’invention concerne également un véhicule, par exemple automobile ou plus généralement un véhicule à moteur terrestre, comprenant le dispositif 2 de la figure 2 ou le système embarqué 100 de la figure 1.The invention also relates to a vehicle, for example an automobile or more generally a land motor vehicle, comprising the device 2 of FIG. 2 or the on-board system 100 of FIG. 1.
Claims (10)
- réception (41) d’une première requête comprenant une première information représentative d’une fréquence d’acquisition de données d’un capteur (132) associé audit système embarqué (100), un identifiant dudit capteur (132) et une deuxième information représentative d’un temps de transmission desdites de données entre ledit premier calculateur (11) et un dispositif récepteur desdites données ;
- détermination (42) de la taille dudit premier espace mémoire en fonction de ladite première information et de ladite deuxième information.Method for determining the size of a first memory space of a first computer (11) of a vehicle on-board system (100), said method comprising the steps of:
- reception (41) of a first request comprising first information representative of a data acquisition frequency of a sensor (132) associated with said on-board system (100), an identifier of said sensor (132) and second information representative of a transmission time of said data between said first computer (11) and a device receiving said data;
- determination (42) of the size of said first memory space according to said first information and said second information.
- transmission d’une deuxième requête à un deuxième calculateur (13) du système embarqué, ladite deuxième requête comprenant ladite première information, ledit identifiant du capteur et ladite deuxième information, ledit capteur (132) étant relié audit deuxième calculateur (13) ;
- détermination de la taille d’un deuxième espace mémoire dudit deuxième calculateur (13) en fonction de ladite première information et d’une troisième information représentative du temps de transmission de données entre ledit premier calculateur (11) et ledit deuxième calculateur (13).Method according to one of claims 1 to 5, further comprising the steps of:
- transmission of a second request to a second computer (13) of the onboard system, said second request comprising said first information, said identifier of the sensor and said second information, said sensor (132) being connected to said second computer (13);
- determination of the size of a second memory space of said second computer (13) according to said first information and third information representative of the data transmission time between said first computer (11) and said second computer (13) .
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR1903003A FR3094105B1 (en) | 2019-03-22 | 2019-03-22 | Method and device for dimensioning a computer memory |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR1903003A FR3094105B1 (en) | 2019-03-22 | 2019-03-22 | Method and device for dimensioning a computer memory |
FR1903003 | 2019-03-22 |
Publications (2)
Publication Number | Publication Date |
---|---|
FR3094105A1 true FR3094105A1 (en) | 2020-09-25 |
FR3094105B1 FR3094105B1 (en) | 2021-02-12 |
Family
ID=67999742
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
FR1903003A Active FR3094105B1 (en) | 2019-03-22 | 2019-03-22 | Method and device for dimensioning a computer memory |
Country Status (1)
Country | Link |
---|---|
FR (1) | FR3094105B1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023093979A1 (en) * | 2021-11-24 | 2023-06-01 | Volkswagen Aktiengesellschaft | Computer implemented method for organizing access to a shared memory of a vehicle |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20120015241A (en) * | 2010-08-11 | 2012-02-21 | (주)억셉트테크놀러지 | Method for managing a memory according to the transmission period of data |
US20160133304A1 (en) * | 2014-11-06 | 2016-05-12 | Hyundai Motor Company | Calibration memory control method and apparatus of electronic control unit |
US20190080526A1 (en) * | 2017-09-12 | 2019-03-14 | Hyundai Motor Company | Vehicle data collection device and method thereof |
-
2019
- 2019-03-22 FR FR1903003A patent/FR3094105B1/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20120015241A (en) * | 2010-08-11 | 2012-02-21 | (주)억셉트테크놀러지 | Method for managing a memory according to the transmission period of data |
US20160133304A1 (en) * | 2014-11-06 | 2016-05-12 | Hyundai Motor Company | Calibration memory control method and apparatus of electronic control unit |
US20190080526A1 (en) * | 2017-09-12 | 2019-03-14 | Hyundai Motor Company | Vehicle data collection device and method thereof |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023093979A1 (en) * | 2021-11-24 | 2023-06-01 | Volkswagen Aktiengesellschaft | Computer implemented method for organizing access to a shared memory of a vehicle |
Also Published As
Publication number | Publication date |
---|---|
FR3094105B1 (en) | 2021-02-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3072309B1 (en) | Virtual communication interface for motor vehicle diagnosis | |
EP3203445B1 (en) | System and method for automatically identifying a vehicule type | |
FR3094105A1 (en) | Method and device for dimensioning a memory of a computer | |
FR3122059A1 (en) | Vehicle event data communication method, device and system | |
FR3103437A1 (en) | Method and device for determining the setpoint for a vehicle | |
WO2022152986A1 (en) | Method and device for monitoring the trajectory of a vehicle traveling on a traffic lane | |
FR3118824A1 (en) | Method and device for taking control by a driver of an autonomous vehicle circulating in a tunnel | |
FR3096860A1 (en) | Method and device for communicating information relating to one or more journeys | |
FR3102269A1 (en) | Method and device for detecting an intrusion on a vehicle data bus | |
WO2022184986A1 (en) | Method and device for determining a regulatory speed for a vehicle on a portion of road | |
WO2022167740A1 (en) | Method and device for validating time synchronization between vehicle on-board computers | |
WO2022229534A1 (en) | Method and device for controlling an automatic engine stop-start system in a platoon of vehicles | |
FR3136289A1 (en) | Method and device for controlling vehicle computers | |
FR3124998A1 (en) | Method, device and system for controlling an on-board driver assistance system of a vehicle | |
FR3041845A1 (en) | ELECTRONIC DEVICE CLEAN TO BE CONNECTED TO A VEHICLE NETWORK, AND METHOD OF TRANSMITTING MESSAGES IMPLEMENTED BY SUCH ELECTRONIC DEVICE | |
EP3932001A1 (en) | Symmetric cryptography method and device for vehicle processor | |
FR3111511A1 (en) | Method and device for communication between two vehicles | |
FR3098455A1 (en) | Method and device for managing the charging of an electric vehicle | |
FR3122514A1 (en) | Method and device for association with a group of vehicles by platoon | |
WO2023105131A1 (en) | Method and device for controlling an adaptive cruise control system of a vehicle | |
WO2021240082A1 (en) | Method and system for communicating in a wireless cellular network | |
FR3093218A1 (en) | recovery of data stored on a vehicle key | |
FR3092684A1 (en) | Method and device for updating an electronic control unit | |
FR3129648A1 (en) | Method and device for controlling a system for assisting the positioning of a vehicle in a lane of traffic | |
WO2024126908A1 (en) | Method and device for controlling a cruise control system of a vehicle on a roundabout |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PLFP | Fee payment |
Year of fee payment: 2 |
|
PLSC | Publication of the preliminary search report |
Effective date: 20200925 |
|
PLFP | Fee payment |
Year of fee payment: 3 |
|
PLFP | Fee payment |
Year of fee payment: 4 |
|
PLFP | Fee payment |
Year of fee payment: 5 |
|
PLFP | Fee payment |
Year of fee payment: 6 |
|
CD | Change of name or company name |
Owner name: STELLANTIS AUTO SAS, FR Effective date: 20240423 |