Method for operating a storage system and data storage monitoring module for operating the storage system and motor vehicle
The method addresses the challenge of maintaining in-vehicle data storage longevity by dynamically redirecting data to external storage when the write limit is reached, ensuring uninterrupted application functionality and extended memory life.
Patent Information
- Application Number
- DE102022113961
- Authority / Receiving Office
- DE · DE
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2022-06-02
- Publication Date
- 2025-07-17
- Estimated Expiration
- 2042-06-02
AI Technical Summary
Existing methods for managing in-vehicle data storage in motor vehicles often restrict application program functionality to conserve memory life, which is not optimal for maintaining performance.
A method that dynamically determines the write budget for in-vehicle data storage based on configuration information, redirecting data to external storage when the write limit is reached, allowing uninterrupted application program functionality.
Ensures the longevity of in-vehicle data storage without restricting application functionality by swapping data to external storage when necessary, thus extending the lifespan of the in-vehicle memory.
Smart Images

Figure 00000000_0000_ABST
Abstract
Description
[0001] The invention relates to a method for operating a storage system for a motor vehicle. The invention also relates to a data storage monitoring module for operating a storage system for a motor vehicle. Furthermore, the invention relates to a motor vehicle with a corresponding data storage monitoring module.
[0002] Today's motor vehicles can include on-board electronics that are essentially designed as a computer system. This means that there can be application programs that are executed on a computing device (Electronic Control Unit - ECU). Each application program can, for example, be designed to operate a device or functional group of the motor vehicle. Such a device can, for example, be an electronically operable or controllable vehicle system, such as a driver assistance system or an infotainment system.
[0003] When the respective application program is executed, the associated device can be controlled to implement its intended function. By executing the application program, actuators of the device can be controlled and / or data acquired, for example, by the device's sensors can be processed. The respective application program can specify the function for the respective device.
[0004] Data generated or captured by the application program during device operation can be stored in a digital data storage device for further processing. Data storage in computer systems, for example, is known as local or external data storage devices. Storing data in an external data storage device is commonly known as cloud computing.
[0005] DE 11 2019 005 770 T5, for example, discloses a method for storage management of a cloud-based storage system as part of a cloud computing environment.
[0006] DE 10 2016 206 207 A1 discloses a method for managing a memory area of a vehicle control unit. Data is swapped from the memory area of the control unit to an external memory if the available storage capacity is insufficient to store a new user-specific data set in the memory area.
[0007] In a motor vehicle, for example, an on-board data storage device can be used for local storage. The on-board data storage device can, for example, be included in the ECU. The ECU can thus be designed as a so-called system-on-a-chip (system on a chip), an integrated circuit (iC), or an embedded system.
[0008] Various data storage types are known for digital data storage. In a motor vehicle, for example, a so-called flash memory can be used as a storage medium. Flash memory can be based on eMMC (embedded multimedia card) technology, for example. However, other storage standards, such as SSD (solid state drive) or HDD (hard drive disk), can also be used.
[0009] The storage medium of the data storage device can wear out or degrade over time, leading to failure. Writing (storing) and reading (retrieving) can particularly contribute to wear. However, writing is more critical to wear than reading. Thus, the number of write operations on the data storage device plays a significant role in shortening its lifespan.
[0010] To guarantee a certain lifespan for the respective data storage device, typically 10 to 15 years, write protection can be implemented. Various write protection measures are known.
[0011] For example, US 2016 / 0034386 A1 discloses a method for monitoring the wear of flash memories based on a remaining warranty. Depending on the available warranty, i.e., the lifespan, the flash memory with the most write operations within the lifetime is selected for storage.
[0012] Another write protection measure can be to reduce the number of write operations, at least temporarily, by restricting the functionality of the application programs. This results in less memory data being stored.
[0013] US 2019 / 0 158 581 A1 discloses a method for selectively processing sensor data either internally or externally to the vehicle.
[0014] US 11 206 465 B1 discloses a system in which sampling rates for a sensor signal of a sensor in a vehicle are dynamically adapted to the circumstances.
[0015] It is the object of the present invention to realize a protective measure for an in-vehicle data memory while avoiding restrictions in the functionality of an application program.
[0016] The problem is solved by the subject matter of the independent patent claims. Advantageous developments of the invention are disclosed by the dependent patent claims, the description, and the figures.
[0017] The invention proposes a method for operating a storage system for a motor vehicle. The method comprises the following steps, which are carried out by means of a data storage monitoring module: First, configuration information of storage data of at least one application program of the motor vehicle, which is to be stored in an internal data storage of the motor vehicle, is acquired. This means that the storage data has not yet been stored in the internal data storage of the motor vehicle. However, the storage is currently being prepared or initiated, for example.
[0018] Depending on the configuration information, an actual value is then determined for the required number of write operations in a given current time interval. The write operations are required to save the memory data to the vehicle's internal data storage. The goal is therefore to determine a write budget or the actual storage requirement for the memory data.
[0019] The method then determines a maximum value for the maximum permissible number of write operations in the specified current time interval for the vehicle's internal data storage. The maximum value can specify a write limit for the respective time interval.
[0020] The maximum value and the actual value can then be compared in a comparison routine. Only if the actual value exceeds the maximum value, i.e., the write budget is greater than the write limit, is at least a portion of the stored data transferred to a stationary, off-board data storage device for storage. This means that the stored data can be sent or transmitted in whole or in part to the off-board data storage device. Thus, the off-board data storage, rather than the on-board data storage device, stores the stored data, or at least a portion of the stored data. The off-board data storage device can, for example, be a so-called edge cloud server.
[0021] In other words, the method allows at least some of the stored data to be redirected as needed, depending on the write limit and write budget of the on-board data storage. The redirected portion can be stored on the vehicle's external data storage. The remaining portion, however, can be stored on the internal data storage. If the comparison routine determines that the actual value is below or equal to the maximum value, the entire stored data can, of course, be stored on the on-board data storage.
[0022] Preferably, the redirection of memory data can be aborted if it turns out that write budget is free or available in the subsequent time interval. This can happen, for example, if a current function routine of the application program is deactivated.
[0023] The described method offers the advantage that the respective application program does not need to be restricted in its functionality or data production, even if the write limit of the respective data storage is exceeded. Instead, the data is simply swapped out to the vehicle-external data storage when needed. The swapped out memory data can either be stored only for temporary storage or further processed by the vehicle-external data storage using an external computing device.
[0024] The aforementioned configuration information can be, for example, a process identifier. The configuration information can thus describe a property of the memory data. A property can be, for example, a data size, a data volume, a data type, a number of data packets, a data origin, a storage location, or another predefined, known property for describing memory data. In particular, the configuration information allows for a unique assignment of the memory data to the respective application program.
[0025] The configuration information can, for example, be stored in a directory of a file system cataloging structure. Such a directory is also known in computer systems as a directory. The configuration information can, for example, be generated and provided by the respective application program.
[0026] In this context, an application program (app) refers, for example, to a computer program, i.e., software. The application program can be, for example, application software, system software, and / or a utility program. Additionally or alternatively, the application program can form an operating system for the motor vehicle, in particular for a device of the motor vehicle. The application program can thus be, for example, firmware and / or a driver for the respective device. The application program is thus preferably assigned to a device of the motor vehicle.
[0027] The application program can be used to operate or control the respective device, in particular a respective hardware component, such as a sensor or actuator of the device. When the application program is executed, the respective intended function can thus be performed or executed by means of the device. To execute the application program, the motor vehicle and / or the respective device can, for example, comprise a computing device (Electronic Control Unit, ECU).
[0028] The device of the motor vehicle can be, for example, an electronic vehicle guidance system (driver assistance system), an infotainment system, or a lighting system of the motor vehicle. Of course, any other vehicle component or functional group of the motor vehicle can form a corresponding device.
[0029] To operate the device, the application program is configured, for example, to process the data acquired by the device. To control the device, the application program is configured, for example, to make settings for the respective device. Control can occur, for example, depending on the processing of the data. Processing can include storing and / or evaluating, for example, performing arithmetic operations using a processing module of the computing device.
[0030] The data can be captured by the device, for example, using sensors, i.e., measured, determined, or identified. The data can be, for example, sensor data, environmental data, status data, configuration data, personal data, or other vehicle-related data. For processing or after processing, the device data can be deposited or saved in the respective data memory. The data to be saved is referred to herein as the memory data of the application program. The saved memory data can be retrieved or read from the respective data memory by the application program or another application program assigned to another device for processing or other use.
[0031] To store the memory data on the data storage device, the memory data can be written to its storage medium. To retrieve the stored memory data, the stored memory data can be read from the data storage device or its storage medium. The implementation of writing to and reading from a data storage device is known per se. The specific implementation may depend, for example, on the type of data storage device.
[0032] In general, when writing, a local physical area of the storage medium, also called a memory area, such as a bit, can be brought into a predetermined state or a predetermined state can be set. The state setting is usually binary. This means that there are exactly two adjustable states. One of the states can represent the setting "activated" or "on" or "logical 1". A second of the states, however, can represent the setting "deactivated" or "off" or "logical 0". Depending on the memory type, the respective state can be predetermined, for example, by an electrical charge or magnetic polarity or optical setting.
[0033] In this case, the aforementioned time interval preferably describes a predetermined or fixed period of time. The respective time interval can be determined depending on the resolution with which the data storage device is to be written to or read from. The time interval can, for example, be in the range of seconds or at most minutes. A typical time interval can, for example, be between one and ten seconds, preferably up to a maximum of 60 seconds, particularly preferably five seconds.
[0034] The time interval preferably corresponds to a defined subset of a specified lifespan or service life of the in-vehicle data storage device. The lifespan can be referred to as a warranty or guarantee. For example, the lifespan can be a period specified by a manufacturer from the date of manufacture until the failure due to wear and tear of the data storage device. Typically, the guaranteed lifespan for data storage devices in use today is several years, for example, 10 to 15 years.
[0035] The lifespan of a data storage device depends essentially on the wear and tear caused by data storage (writing). Factors that trigger wear can include a write rate, the number of write operations, the number of write cycles (multiple write operations per time interval), or the number of write accesses to the data storage device per second.
[0036] To guarantee usage over the desired lifetime of the data storage device, a limit can be set for the maximum number of write operations over the specified lifetime. The maximum number of write operations can, for example, be specified as a function of the maximum amount of data that can be stored over the lifetime. A typical limit is two terabytes.
[0037] The maximum number of write operations per time interval can be calculated from the threshold value and the specified time interval. For example, the threshold value can be used to calculate the number of write operations still available over the remaining lifetime. The result can be divided by the remaining lifetime, and this result can then be divided by the time interval.
[0038] The actual value specifies the write operations required to save the memory data to the data memory. The actual value of the memory data to be saved can be calculated, for example, from the data volume or file size of the memory data. The actual value can be determined, for example, from the number of bits in the memory data.
[0039] In the present case, the respective data storage device is preferably a digital data storage device. In particular, the respective data storage device can be designed, for example, as an electronic, magnetic, or optical data storage device. The data storage device can comprise the storage medium. The data storage device can be provided at least partially as a non-volatile data storage device (e.g., as a flash memory and / or as an SSD - solid state drive) and / or at least partially as a volatile data storage device (e.g., as a RAM - random access memory). The storage medium can be implemented in the computing device (ECU) of the motor vehicle.
[0040] The computing device may comprise a data processing apparatus or a processor device configured to execute an embodiment of the method according to the invention and / or the respective application program. For this purpose, the processor device may comprise at least one microprocessor and / or at least one microcontroller and / or at least one FPGA (Field Programmable Gate Array) and / or at least one DSP (Digital Signal Processor).
[0041] The method can be stored as an application program or program code in a data memory associated with the data memory monitoring module (e.g., the vehicle's internal data memory). The program code (for each application program referred to in the invention) can be provided as binary code or assembler and / or as source code of a programming language (e.g., C) and / or as a program script (e.g., Python). The respective application program can be executed by the respective computing device.
[0042] The vehicle-external data storage is preferably comprised of a cloud server. Particularly preferably, the vehicle-external data storage is comprised of a so-called edge cloud server. An edge cloud server is a computing device for decentralized data processing at the edge of a network, the so-called edge.
[0043] In this context, "in-vehicle" means that the data storage device is part of the "motor vehicle" system. This means that the data storage device is integrated, in particular, into the vehicle's electrical system. Power supply, operation, or control are provided by the vehicle. Outside the vehicle, the data storage device is not independently usable or operational.
[0044] In contrast, "external to the vehicle" means that the data storage device is not part of the motor vehicle system. The data storage device thus forms a separate or independent system from the motor vehicle. Power supply, operation, and control are thus independent, meaning that the data storage device can be used or operated independently outside the motor vehicle.
[0045] To store the memory data externally, i.e., on the vehicle's external data storage device, a communication module of the motor vehicle can be controlled. The communication module can form a communication interface and be configured to transmit or send the memory data to a selected vehicle-external data storage device.
[0046] The described method can, for example, be executed iteratively. This means that the method can be repeated for subsequent time intervals. In one run of the described method, precisely one respective time interval is considered or taken into account.
[0047] The invention also includes embodiments which provide additional advantages.
[0048] According to one embodiment, by means of the data storage monitoring module, a storage location on the vehicle-internal data storage device specified by the at least one application program is adapted in a stored directory of a file system cataloguing structure to a respective storage location on the vehicle-external data storage device, at least for the transferred part of the storage data.
[0049] This means that once the storage data is determined to be transferred, the (data storage) monitoring module can overwrite the original reference to the planned storage location with a new reference to the new storage location. This allows the monitoring module to perform a remount operation in the file directory. The storage location can then be remounted in the directory.
[0050] This has the advantage that the application program itself does not need to be involved in redirecting the memory data. The redirection and remounting are performed independently of the application program. For example, the application program may only provide or know the original memory location.
[0051] The directory can be referred to as a directory. The file system cataloging structure is a well-known data structure for organizing a computer system. The monitoring module can read the configuration information from the directory. In a Linux-based system, for example, the so-called proc filesystem can be monitored.
[0052] According to a further embodiment, the memory data is provided or generated by at least two different application programs. The different application programs can, for example, be assigned to a common or different device of the motor vehicle. For each memory data packet of the respective application program, a respective assigned actual value is determined in the method. Depending on the respective actual value, one, preferably only exactly one, of the memory data packets is selected as the portion of the memory data to be transmitted.
[0053] In other words, the memory data may consist of two or more memory data packets, each from a different application program. Each memory data packet may constitute a portion of the memory data that can be transferred as such for external storage.
[0054] Similarly, the storage data of an application program can be divided or subdivided into subunits or partial data packets for storage. For example, environmental data from a camera for environmental detection can be divided into image data and configuration or metadata.
[0055] According to a further embodiment, a free value for a number of free write operations is determined for a time interval following the current time interval. Depending on the free value, at least the portion of the memory data stored in the vehicle-external data memory is transferred back to the vehicle-internal data memory.
[0056] In a subsequent or further run of the method, data synchronization can be performed between the vehicle-external and the vehicle-internal data storage. The outsourced memory data portion can, for example, be copied to the vehicle-internal data storage. The memory data initially stored on the vehicle-external data storage can be deleted after synchronization.
[0057] This has the advantage that the storage data is stored locally and can therefore be quickly retrieved or accessed when needed.
[0058] Instead of only retransmitting the portion of the stored data from the previous time interval, the stored data from several previous time intervals or a predetermined period preceding the current time interval, for example, five seconds, can be retransmitted. The synchronized data volume can be as large as the respective free value allows.
[0059] In this case, the free value refers to the difference between the actual value of the subsequent time interval and the maximum value of the subsequent time interval. The free value thus indicates the number of write operations not used in the respective time interval, i.e., the write operations until the maximum value is reached. To perform synchronization, for example, an actual value for the portion of the stored memory data can be compared with the free value. If the actual value is smaller than the free value, synchronization can be performed. Otherwise, no synchronization is performed. This means that the memory data remains stored only on the vehicle-external data storage device.
[0060] According to a further embodiment, a plurality of vehicle-external data memories are provided and the vehicle-external data memory for storing at least part of the memory data is selected from the plurality of vehicle-external data memories according to a predetermined selection criterion.
[0061] In other words, two or more vehicle-external data storage devices may be available for potentially storing the memory data. According to the selection criterion, one of these data storage devices is selected, and the memory data is transferred to this data storage device for storage. The selection according to the selection criterion can be performed, for example, in a selection routine in the method.
[0062] In this context, a further embodiment provides that the part of the storage data stored on the selected vehicle-external data storage device is selected, depending on a journey of the motor vehicle, to at least one further data storage device from the plurality of vehicle-external data storage devices according to the predetermined selection criterion and is transmitted to said data storage device for storage.
[0063] In other words, the stored data can be transferred or transmitted between the vehicle-external data storage devices along the route of the motor vehicle. The route is determined by the driving course of the motor vehicle. The driving course can also be referred to as the course of travel, roadway, or driving trajectory of the motor vehicle. The stored data can thus move or be transmitted along the driving course with the motor vehicle.
[0064] This offers the advantage that the stored data can always be stored in close proximity to the vehicle, for example. This allows the stored data to be transferred back to the vehicle particularly quickly when needed.
[0065] In connection with the selection criterion, a further embodiment provides that the respective vehicle-external data memory is selected according to the selection criterion as a function of a write / read speed and / or a spatial proximity to the vehicle-internal data memory.
[0066] When selecting a data storage device, one can therefore consider how fast the device can perform a write or read operation. Additionally or alternatively, the distance between the vehicle and the external data storage device can be considered. This allows, for example, the transfer time for transferring the stored data between the internal and external data storage devices and vice versa to be minimized.
[0067] According to a further embodiment, the aforementioned configuration information is checked for a sensitivity criterion. The sensitivity criterion indicates that the stored data, on the one hand, contains a predetermined content that requires confidentiality. Additionally or alternatively, the sensitivity criterion indicates that the stored data, on the other hand, specifies an availability time interval for the stored data to be retrieved for processing from the respective data storage device. The transmission to the vehicle-external data storage device takes place depending on the sensitivity criterion.
[0068] This means that the storage of memory data is only outsourced if its content is non-critical, i.e., particularly if it is not sensitive to accessibility or security. Otherwise, the functionality of the application program may be restricted.
[0069] Thus, the sensitivity criterion can be used to differentiate between security-critical and time-critical content. Stored data can be considered time-critical if, for example, it is classified as confidential. This classification can be prescribed, for example, by laws or regulations. Stored data must be kept public, for example, if it falls under the Data Protection Regulation, i.e., if it is personal data.
[0070] However, the stored data can be time-critical if an availability interval is provided for it or applies to it. The availability interval is, for example, a period within which the stored data should be available for processing in the vehicle after it has been saved or retrieved from the vehicle-external data storage. The availability interval is thus the period between retrieval and receipt of the stored data in the vehicle.
[0071] For use cases or application situations that may arise during the method and which are not explicitly described here, it may be provided that, in accordance with the method, an error message and / or a request to enter user feedback is issued and / or a default setting and / or a predetermined initial state is set.
[0072] Of course, the method can also be used for other computer systems or electronically operable devices, such as a mobile device or a tablet.
[0073] The invention also relates to a data storage monitoring module for operating a storage system for a motor vehicle, which is designed to carry out a method as described above.
[0074] The data storage monitoring module can, for example, be comprised of a computing device of the motor vehicle or the respective device of the motor vehicle. The computing device can comprise a data processing device or a processor device, as described above by way of example.
[0075] The invention also relates to a motor vehicle. The motor vehicle comprises at least one computing device comprising at least one application program which, when executed by the computing device, is configured to operate an associated device of the motor vehicle. Furthermore, the motor vehicle comprises a data storage monitoring module, as previously described. Furthermore, the motor vehicle comprises at least one vehicle-internal data storage device and a communication interface for coupling to a vehicle-external data storage device. When the motor vehicle is coupled or connected to the vehicle-external data storage device, the storage data or parts of the storage data can be transmitted via the communication interface.
[0076] The motor vehicle is preferably designed as a motor vehicle, in particular as a passenger car or truck, or as a passenger bus or motorcycle.
[0077] A storage system for a motor vehicle may also be provided. The storage system comprises the previously described motor vehicle and the at least one vehicle-external data storage device.
[0078] The invention also includes further developments of the motor vehicle, the data storage monitoring module, and the storage system that have features already described in connection with the method according to the invention. For this reason, the further developments of the motor vehicle, the monitoring module, and the storage system are not described again here.
[0079] The invention also encompasses combinations of the features of the described embodiments. The invention therefore also encompasses implementations that each have a combination of the features of several of the described embodiments, unless the embodiments are described as mutually exclusive.
[0080] Exemplary embodiments of the invention are described below. Shown are: Fig. 1 is a schematic representation of a storage system for a motor vehicle; and Fig. 2 a schematic process flow diagram for a method for operating the storage system according to Fig. 1.
[0081] The exemplary embodiments explained below are preferred embodiments of the invention. In the exemplary embodiments, the described components of the embodiments each represent individual features of the invention that can be considered independently of one another, each of which also develops the invention independently of one another. Therefore, the disclosure is intended to encompass combinations of the features of the embodiments other than those shown. Furthermore, the described embodiments can also be supplemented by further features of the invention already described.
[0082] In the figures, the same reference symbols denote elements with the same function.
[0083] In a motor vehicle, application programs or applications can be used to operate or control electronically operable vehicle components or devices. When the respective application program is executed, the desired vehicle function is implemented. Memory data generated during operation of the device can be stored or saved in a digital or electronic on-board data memory.
[0084] For some applications, the amount of data or data rate of the data to be stored may be higher than for others. For example, buffering video data from a vehicle's camera requires a higher data rate than storing so-called cookies, for example, when a music application is run as an application program via a vehicle's infotainment system.
[0085] Depending on the amount of data, a different number of write operations are required to write the stored data to the data storage device and thus save it. How writing and, for example, reading from a data storage device works is well known.
[0086] The data storage device can use a computer-readable storage medium to store the stored data. There are various types of data storage devices based on different standards. In the automotive sector, for example, a so-called eMMC (embedded multimedia card) with flash memory can be used as the storage medium.
[0087] The storage medium, and thus also the data storage device, generally has a limited lifespan or lifetime. This lifespan depends largely on the wear and tear of the storage medium due to write operations. To achieve a desired lifespan of, for example, 15 years, a write rate, i.e., a maximum value for the maximum number of write operations, can be limited.
[0088] The maximum value can be specified for a current time interval Δtx. The time interval Δtx can be set depending on the desired data storage resolution on the data storage device. For example, a time interval Δtx can be 5 seconds.
[0089] The limitation of the maximum write operations per time interval Δtx should not be achieved by restricting the functionality of the application program. Instead, the Fig. 1 is used. Using the storage system 1, it can be decided whether the storage data should be stored locally or externally based on the maximum value for each time interval Δtx, depending on a data volume of the storage data to be stored.
[0090] The storage system 1 according to Fig. 1 comprises a motor vehicle 10. The motor vehicle 10 is designed, for example, as a passenger car. In the present exemplary embodiment, the motor vehicle 10 comprises two devices or functional groups. One of the devices is designed, for example, as an infotainment system 11. The infotainment system comprises, for example, a radio with which music can be played in the motor vehicle 10. The other of the devices is designed, for example, as an electronic vehicle guidance system 12. The vehicle guidance system 12 can be used, for example, for the autonomous and automatic control of the motor vehicle 10. For this purpose, the guidance system 12 can comprise, for example, an environment camera for detecting the environment of the motor vehicle 10. Such an electronic vehicle guidance system 12 is known, for example, from a Travel Assist or Lane Assist (lane keeping assistant).
[0091] Each of the devices is operated with an associated application program 11a, 12a. The respective application program 11a, 12a can be stored in the form of program code, for example, in a computing device (not shown) of the motor vehicle 10. The computing device can be, for example, an electronic control unit (ECU) of the motor vehicle 10. The computing device can comprise, for example, a microprocessor or microcontroller. When the application program 11a, 12a is executed by the computing device, the respective associated device can be operated.
[0092] During operation of the respective device, the associated application programs 11a, 12a can provide storage data D. The storage data D is, for example, sensor data that was acquired or measured by sensors of the respective device. In this case, the application program 11a can, for example, provide a first storage data packet D1. The first storage data packet D1 can, for example, include music data, such as a playlist, for songs to be played via the radio. The application program 12a can provide a second storage data packet D2. The second storage data packet D2 can, for example, be image or video data that was acquired by the camera of the vehicle guidance system 12.
[0093] For each of the storage data packets D1, D2, the associated application program 11a, 12a can specify or provide configuration information K1, K2. The configuration information K1, K2 can be stored by the respective application program 11a, 12a, for example, in a directory of a file system cataloging structure for the motor vehicle 10. The configuration information K1, K2 includes, for example, information about the type and composition of the respective data packet. For example, the configuration information K1, K2 can specify a data volume, for example, a file size, of the respective storage data packet D1, D2. The configuration information K1, K2 can be included, for example, in the form of metadata from the respective storage data packet D1, D2.
[0094] The application programs 11a, 12a can provide or transmit the memory data packets D1, D2, for example, for storage in a data memory assigned to the motor vehicle 10. For internal storage, the motor vehicle 10 in this case comprises an in-vehicle data memory 14. The in-vehicle data memory 14 can, for example, be designed as a so-called flash memory, as described above. Alternatively, a different type of memory is of course also conceivable for the in-vehicle data memory 14. The respective application program 11a, 12a can always provide the in-vehicle data memory 14 as the storage location. This means that the application programs 11a, 12a transmit the memory data D to the in-vehicle data memory 14.
[0095] In order to monitor the vehicle-internal data memory 14, in particular to limit the number of write operations, the motor vehicle 10 also includes a data memory monitoring module, hereinafter referred to as monitoring module 13. The monitoring module 13 can define a data stream or data flow for the memory data D. This means that the monitoring module 13 is designed to determine a storage location for the memory data D and, if necessary, to redirect the memory data D for storage, for example, to an external location. The monitoring module 13 can store or save the storage location, for example, in the directory.
[0096] To implement the rerouting, the motor vehicle 10 also includes a communication module 15. The communication module 15 can form a communication interface for the motor vehicle 10. In this case, the communication module 15 can be configured, for example, as a radio module, in particular as a mobile radio module or WLAN module. The memory data D, or at least parts thereof, can be transmitted externally to the vehicle for storage via the communication module.
[0097] In order to be able to store the storage data externally of the vehicle, i.e., outside the motor vehicle 10, the storage system 1 in the present case comprises, for example, a plurality of vehicle-external data storage devices that form a data storage group 20. In the present case, the data storage group 20 comprises, for example, three data storage devices 21, 22, 23. Each of the data storage devices 21, 22, 23 comprises an associated vehicle-external data storage device 21a, 22a, 23a. The respective vehicle-external data storage device 21a, 22a, 23a can be based on the same technology as the vehicle-internal data storage device 14. Alternatively, a different storage technology or a different storage type can of course also be used for the data storage devices 21a, 22a, 23a.
[0098] In addition, the respective data storage device 21, 22, 23 comprises a respective communication module 21b, 22b, 23b. The communication modules 21b, 22b, 23b can be designed complementarily or analogously to the vehicle-internal communication module 15. The motor vehicle 10 can be coupled or connected to one of the data storage devices 21, 22, 23 via the communication modules 15, 21b to 23b. In the coupled state, the storage data D can be transmitted from the motor vehicle 10 to the respective coupled data storage device 21, 22, 23 for storage in the associated vehicle-external data memory 21a, 22a, 23a, and vice versa.
[0099] The respective data storage device 21, 22, 23 can be implemented or realized in the present case as a so-called edge cloud server or generally as a cloud computing system.
[0100] The data storage devices 21, 22, 23 can, as in Fig. 1, be positioned locally or geographically along a route F of the motor vehicle 10. When driving along a route specified by the route F, the motor vehicle 10 can thus pass the data storage devices 21, 22, 23 one after the other. In this case, one of the data storage devices 21, 22, 23 is always located in a predetermined local proximity, for example, in an area of a few hundred meters to a few kilometers around the motor vehicle.
[0101] Fig. 2 shows, by way of example, in a schematic process flow diagram, how the storage system 1 can be operated to store the storage data D. The operation of the storage system 1, in particular the redirection or redirection of the storage data D, is carried out by means of the monitoring module 13 of the motor vehicle 10. Fig. 2 shows the procedure for a current time interval Δtx.
[0102] In the method, in a step S1, the configuration information K1, K2 of the storage data packets D1, D2 provided for storage by the respective application program 11a, 12a is acquired or determined for the respective current time interval Δtx. For acquisition, the monitoring module 13 can retrieve the configuration information K1, K2, for example, from the directory.
[0103] The method then continues in step S2. In step S2, depending on the configuration information K1, K2, a respective actual value I1, I2 is determined or calculated for a required number of write operations in the current time interval Δtx, which are required to store the respective memory data packet D1, D2 on the in-vehicle data memory 14. The respective actual value I1, I2 can be determined, for example, depending on the data volume of the respective memory data packet D1, D2 specified in the configuration information K1, K2.
[0104] The method then continues in step S3. In step S3, the maximum value M for the maximum permissible number of write operations of the vehicle's internal data memory 14 is determined for the current time interval Δtx. Thus, the write limit of the vehicle's internal data memory 14 is determined.
[0105] In steps S4 and S5, the respective actual value I1, I2 is then compared with the maximum value M. The aim is to determine whether the actual values I1, I2 individually or jointly exceed the write limit of the vehicle's internal data memory 14.
[0106] In step S4, a check is made to determine whether the actual value I1 is less than or equal to the maximum value M. If the test result is positive (Yes), i.e., the actual value I1 is less than or equal to the maximum value M, the process continues in step S6. If, however, the test result is negative (No), i.e., the actual value I1 exceeds the maximum value, the process continues in step S7.
[0107] In step S5, a similar check is performed to determine whether the actual value I2 is less than or equal to the maximum value M minus the actual value I1. In particular, the actual value I1 is only taken into account if the test result in step S4 was positive. If the test result according to step S5 is positive (YES), the process continues in step S6. If, however, the test result is negative (NO), the process continues in step S7.
[0108] According to step S6, those memory data packets D1, D2 that achieved a positive test result in steps S4 and S5 are transmitted to the vehicle's internal data memory 14 for storage. For this purpose, the monitoring module 13 can direct or guide the data flow, i.e., the memory data packets D1, D2, to the vehicle's internal data memory 14.
[0109] In step S7, those memory data packets D1, D2 for which the test result was negative are transmitted to the respective vehicle-external data storage devices 21a, 22a, 23a. This means that the monitoring module 13 can redirect or redirect the memory data completely or partially to one of the vehicle-external data storage devices 21, 22, 23.
[0110] Subsequently, in particular after the expiration of the current time interval Δtx, the method can be repeated for a subsequent time interval Δtx+1. The method can be repeated iteratively until the service life is reached or the vehicle-internal data memory 14 is defective.
[0111] In the present embodiment according to Fig. 1, for example, the write operations required for the memory data D1 may exceed the maximum value M of the vehicle-internal data memory 14. The write operations for the data memory packet D2, on the other hand, may be within the write limit (below the maximum value M). Thus, in the present exemplary embodiment, the memory data packet D2 is filed or stored in the vehicle-internal data memory 14. In the present exemplary embodiment, the memory data packet D1, on the other hand, is transmitted to the vehicle-external data memory 21a for storage. For this purpose, the monitoring module 13 can, for example, control the communication module to establish the communication connection with the data storage device 21.
[0112] Because the monitoring module 13 handles the redirection, the respective storage process is independent of the respective application program 11a, 12a. The application program 11a, 12a therefore does not need to know where the storage data D is stored. If redirection is necessary, the monitoring module 13 can, for example, adjust the storage location in the directory. It can thus perform a remount operation so that the application 11a, 12a can be directed to the appropriate storage location when retrieving the storage data D.
[0113] Which of the data storage devices 21, 22, 23 is selected for storing the memory data D can be determined depending on a predefined selection criterion. For example, a write or read speed of the respective vehicle-external data memory 21a, 22a, 23a can be taken into account according to the selection criterion. Additionally or alternatively, a spatial proximity, i.e., a distance, between the vehicle-external data memory 21a, 22a, 23 and the vehicle-internal data memory 14 can also be taken into account. This ensures the fastest possible transmission or the shortest possible transmission paths. The stored memory data D can thus be accessed as quickly as possible if necessary.
[0114] As in Fig.1, the storage data packet D1 can be transmitted along the driving path F between the vehicle-external data storage devices 21, 22, 23. As a result, the storage data packet D1 travels along the driving path F with the motor vehicle 10. The selection of which of the data storage devices 21, 22, 23 the data storage packet D1 is to be transmitted to can again be made depending on the aforementioned selection criterion. The communication modules 21b, 22b, 23b can establish a communication connection for the transmission.
[0115] If, for example, it is determined in a subsequent time interval Δtx+1 that the write operations on the vehicle-internal data memory 14 have not been fully utilized, the memory data D stored outside the vehicle can be synchronized to the vehicle-internal data memory 14. For this purpose, in the present case, for example, the first memory data packet D1 can be transmitted back to the motor vehicle 10 via the communication connection. The retransmitted memory data packet D1 can then be stored in the vehicle-internal data memory 14 in the subsequent time interval Δtx+1. The determination of whether free or available write operations exist can be implemented by means of the monitoring module 13, for example by determining a respective free value.
[0116] Overall, the present embodiments show how wear protection for a data storage device of a motor vehicle, for example a flash memory, can be realized by outsourcing storage data to an edge server in real time.
Claims
[1] Method for operating a storage system (1) for a motor vehicle (10), wherein the following steps are carried out by means of a data storage monitoring module (13): - for a predetermined current time interval (Δtx): detecting configuration information (K1, K2) of memory data (D) of at least one application program (11a, 12a) of the motor vehicle (10), which are to be stored in an internal data memory (14) of the motor vehicle (10), - depending on the configuration information (K1, K2): determining an actual value (I1, I2) for a required number of write operations in the specified current time interval (Δtx) required to store the memory data (D) on the vehicle-internal data memory (14), - determining a maximum value (M) for a maximum permissible number of write operations in the specified current time interval (Δtx) for the vehicle-internal data memory (14), - only if the actual value (I1, I2) exceeds the maximum value (M): Transferring at least part of the storage data (D) to a stationary vehicle-external data storage device (21a, 22a, 23a) for storage. [2] Method according to claim 1, wherein by means of the data storage monitoring module (13) a storage location on the vehicle-internal data storage (14) defined by the at least one application program (11a, 12a) is adapted in a stored directory of a file system cataloguing structure at least for the transferred part of the storage data (D) to a respective storage location on the vehicle-external data storage (21a, 22a, 23a). [3] Method according to one of the preceding claims, wherein the memory data (D) are provided by at least two different application programs (11a, 12a) and the actual value (I1, I2) is determined for each memory data packet (D1, D2) of the respective application program (11a, 12a), and depending on the respective actual value (I1, I2) one of the memory data packets (D1, D2) is selected as the part of the memory data (D) to be transmitted. [4] Method according to one of the preceding claims, wherein a free value for a number of free write operations is determined for a time interval (Δtx+1) following the current time interval, and depending on the free value, at least the part of the memory data (D) stored in the vehicle-external data memory (21a, 22a, 23a) is transferred back to the vehicle-internal data memory (14) for storage. [5] Method according to one of the preceding claims, wherein a plurality of vehicle-external data memories (21a, 22a, 23a) are provided and one of the vehicle-external data memories (21a, 22a, 23a) is selected for storing at least part of the memory data according to a predetermined selection criterion. [6] Method according to claim 5, wherein the part of the memory data (D) stored on the selected vehicle-external data memory (21a, 22a, 23a) is transmitted for storage as a function of a journey (F) of the motor vehicle (10) to at least one other vehicle-external data memory (21a, 22a, 23a) selected from the plurality according to the predetermined selection criterion. [7] Method according to one of claims 5 or 6, wherein the respective vehicle-external data memory (21a, 22a, 23a) is selected according to the selection criterion as a function of a write / read speed of the vehicle-external data memory (21a, 22a, 23a) and / or a spatial proximity of the vehicle-external data memory (21a, 22a, 23a) to the vehicle-internal data memory (14). [8] Method according to one of the preceding claims, wherein the configuration information (K1, K2) is checked for a sensitivity criterion which indicates that, on the one hand, the storage data (D) comprise a predetermined content requiring confidentiality and / or, on the other hand, an availability time interval for the storage data (D) for retrieval for processing from the respective data memory (14, 21a, 22a, 23a) is predetermined, and the transmission to the vehicle-external data memory (21a, 22a, 23a) takes place depending on the sensitivity criterion. [9] Data storage monitoring module (13) for operating a storage system (1) for a motor vehicle (10), which is designed to carry out a method according to one of the preceding claims. [10] Motor vehicle (10) with - at least one computing device comprising at least one application program (11a, 12a) which, when executed by the computing device, is configured to operate an associated device of the motor vehicle (10), - a data storage monitoring module (13) according to claim 9, - at least one vehicle-internal data memory (14), and - a communication interface for coupling with a vehicle-external data storage device (21a, 22a, 23a).
Citation Information
Patent Citations
Method, device, and computer program for managing a storage area of an electronic control unit of a vehicle
DE102016206207A1
Storage management for a cloud-based storage system
DE112019005770T5
US000011206465B1
System and method for balancing processing of sensor-based data and signals in a vehicle
US20190158581A1