Shared Data Management System

The shared data management system addresses the challenges of real-time data transfer and bandwidth optimization in mixed-criticality environments by using a central controller and configuration tables to manage data in distributed computing environments.

JP7755579B2Active Publication Date: 2025-10-16COMMISSARIAT A LENERGIE ATOMIQUE ET AUX ENERGIES ALTERNATIVES
View PDF 5 Cites 0 Cited by

Patent Information

Application Number
JP2022530906
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Priority Date
2019-11-27
Filing Date
2020-11-26
Publication Date
2025-10-16
Estimated Expiration
2040-11-26

AI Technical Summary

Technical Problem

Existing distributed computing environments in vehicles face challenges in managing shared data with deterministic responses, ensuring real-time data transfer, optimizing bandwidth, and handling mixed-criticality systems with heterogeneous communication protocols.

Method used

A shared data management system that includes a central controller to store and manage data in a memory system, using configuration tables to determine memory addresses and ensure data validity, allowing for real-time data processing and transmission across different communication protocols.

Benefits of technology

The system provides deterministic data management with optimized bandwidth usage and real-time responses, ensuring data validity and reliability across mixed-criticality environments.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007755579000001
    Figure 0007755579000001
  • Figure 0007755579000002
    Figure 0007755579000002
  • Figure 0007755579000003
    Figure 0007755579000003
Patent Text Reader

Abstract

The present invention relates to a shared data management system (1) configured to receive frames comprising data from one or more producer devices (3P) and to transmit the reconstructed frames to one or more consumer devices (3C), the producer devices (3P) and the consumer devices (3C) being connected to the shared data management system by a communication network using a communication protocol. The shared data management system (1) comprises a memory system (10) having one or more memories (101). The shared data management system (1) advantageously comprises a central controller configured to store at least a portion of the data encapsulated in the frames received from the producer devices in a target memory area of ​​the memory system (10), the central controller being configured to calculate, for each piece of data to be stored, an address in the target memory based on an index associated with the data in the received frame.
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The present invention relates generally to distributed systems, and more particularly to a system and method for managing shared data. [Background technology]

[0002] Embedded systems, such as vehicles, typically use real-time distributed systems to manage data exchange between various computing entities of the system using different communication protocols. Such distributed systems are intended to provide deterministic responses to data transfers within time windows reserved by applications embedded in the distributed systems.

[0003] For example, the computing environment in today's vehicles consists of multiple distributed control units integrated and interconnected by multiple communication media using various communication protocols. Such protocols are highly dependent on the transmission means used and the target software application. Furthermore, such embedded systems run a multitude of applications, such as autonomous driving (AD) applications in today's vehicles, which creates new needs and challenges related to the transport and processing of data coming from sensors (video cameras, radar, lidar, etc.) configured on the system to measure variables used by the applications.

[0004] Such a computing environment is considered to be a mixed-criticality environment, i.e., it has entities that must conform to expected behavior that are considered critical, and other entities that have no guarantees in terms of behavior. Mixed-criticality does not guarantee the timing control required by real-time (RT) systems. Timing control is guaranteed by distributed systems when the system provides the correct response at the appropriate time as defined by the system's critical functions. Distributed computing environments generally use distributed memories. However, read or write access operations to such memories are difficult to manage in very large systems. Existing distributed memories also guarantee direct access between connected computing entities. However, such access operations do not guarantee data exchange, which is a major challenge in current embedded systems (e.g., electric vehicles).

[0005] Real-time (RT) distributed systems require, among other things, guaranteed real-time response with bounds, easy scalability of the computing environment, heterogeneity of computing media and their communication protocols, and shared access to resources and data. Furthermore, real-time (RT) distributed systems must guarantee minimum communication costs while simultaneously optimizing bandwidth utilization and reducing communication delays.

[0006] One solution for managing data in a distributed computing environment is proposed in WO 05950, which proposes a method for sharing data stored in a database. In this way, various programs can access the database. However, such a solution does not make it possible to transmit all of the data coming from the various flows of the environment in an autonomous, configurable, and deterministic manner. Furthermore, this solution requires the handling of numerous interruptions in the execution of the programs, which prevents the obtaining of deterministic responses.

[0007] Another solution is proposed in WO 032750. WO 032750 proposes a RT communication system based on a host structure that allows data to be distributed between two or more devices built with heterogeneous architectures. WO 032750 also uses network gateways to interface with different networks whose operations are clocked over time. However, this solution does not allow for processing of frames of various communication protocols or bandwidth optimization. Determinism is only guaranteed in terms of requests, not in terms of end-to-end data transfer paths throughout the system.

[0008] Yet another approach, described in WO 021974, proposes a method for real-time data transmission for industrial systems based on Ethernet implementation. Such a method comprises a master node and a set of slave nodes, where a node can modify the contents of a frame before retransmitting it to another node based on a priori knowledge of the frame's structure. However, the method does not rely on a central memory to store the data used to construct new frames. Thus, frames can be modified simply without having to perform decomposition and reassembly of data within other frames.

[0009] WO 145382 also discloses the use of an electronic component capable of changing in a distributed environment to act as a gateway between various elements of the environment using different communication protocols, while simultaneously providing a deterministic response to requests from these elements, although in this scheme the transfer of frames is only linked to requests triggered by the data consumers. [Prior art documents] [Patent documents]

[0010] [Patent Document 1] International Publication No. 05950 Brochure [Patent Document 2] International Publication No. 032750 Brochure [Patent Document 3] International Publication No. 021974 Brochure [Patent Document 4] International Publication No. 145382 Brochure Summary of the Invention [Problem to be solved by the invention]

[0011] Therefore, a need exists for improved systems and methods for real-time management of shared data that can be used in distributed computing environments. [Means for solving the problem]

[0012] The present invention aims to improve this situation. To this end, what is proposed is a shared data management system configured to receive frames comprising data from one or more producer devices and to transmit the reconstructed frames to one or more consumer devices, the producer devices and the consumer devices being connected to the shared data management system by a communication network using a communication protocol. The shared data management system comprises a memory system having one or more memories. Advantageously, the shared data management system comprises a central controller configured to store at least a portion of the data encapsulated in the frames received from the producer devices in a target memory area of ​​the memory system, the central controller being configured to calculate, for each piece of data to be stored, an address in the target memory based on an index associated with the data in the received frame.

[0013] In one embodiment, one or more samples of one and the same data are received at different times, and the central controller may then be further configured to calculate a validity bit for the received data based on an expiration date associated with the data, the validity bit being set to a validity value if a previous sample of the data associated with another index is not stored in the memory system.

[0014] Advantageously, the central controller can detect delays in receiving data encapsulated within received frames by comparing the expiration date of the data with the receipt date of the data.

[0015] In one embodiment, the expiration date can be calculated based on the index of the data.

[0016] In one embodiment, the shared data management system may include at least one configuration data structure that stores configuration information associated with frames along with data, with producer devices and consumer devices connected to the shared data management system by a communications network, wherein the central controller further uses the information stored in the configuration data structure to determine the target memory address.

[0017] Specifically, at least one configuration data structure includes: a frame table with a list of frames to be sent by the shared data management system to the consumer devices over the communication network; and / or - a transmission table having a list of data to be encapsulated in a frame to be transmitted over the communication network, each data being identified by at least one data identifier; and / or a control table containing information relating to each data item flowing in the communication network, wherein one or more data identifiers stored in the transmission table represent access addresses for accessing the control table; can have:

[0018] In one embodiment, the frame table includes, for each frame to be transmitted: - the date of transmission of the frame, and - a receive deadline date for the frame, which represents the latest date by which the frame should be received; can have:

[0019] The sending table has the following for each data in the list: - a pair of identifiers, and - a data index representing the address of data relating to the producer device; can have:

[0020] In one embodiment, the control table comprises: an offset parameter for the address of the data in the memory system, and - the size of the data, can have:

[0021] Advantageously, the central controller may be configured to calculate a target memory address for the data by further using the address offset and the size of the data stored in the control table.

[0022] The target memory address of the data may be equal to the sum of the address offset stored in the control table and the size of the data.

[0023] In one embodiment, the central controller can be configured to construct frames to be transmitted by grouping data into frames based on the target consumer device and transmission data associated with the frame in a configuration data structure.

[0024] The shared data management system may have multiple memory controllers that act as an interface between the memory system and a central controller, and one or more protocol controllers that act as an interface between the central controller and producer and consumer devices, each protocol controller being specific to a given protocol.

[0025] In one embodiment, the memory system may have at least one dedicated memory area associated with a data producer device, and the data stored in a given memory area comprises data generated by the producer device associated with the dedicated memory area.

[0026] Also proposed is a shared data management method implemented in a shared data management system for receiving frames comprising data from one or more producer devices and for transmitting the reconstructed frames to one or more consumer devices, the producer devices and the consumer devices being connected to the shared data management by a communication network using a communication protocol, the shared data management system comprising a memory system having one or more memories, the method advantageously comprising the step of storing at least a portion of the data encapsulated in the frames received from the producer devices in a target memory area of ​​the memory system, the method further comprising the step of calculating, for each datum to be stored, an address of the target memory based on an index associated with the data in the received frame.

[0027] Thus, embodiments of the present invention allow for real-time management of shared data in a distributed computing environment using different communication protocols, while simultaneously providing deterministic responses to messages based on data transfer events.

[0028] They further provide solutions that can be based on pre-configured exchange scenarios, while at the same time ensuring optimization of bandwidth usage and at the same time complying with time windows provided by the data producer device and / or the communication network.

[0029] Embodiments of the present invention further allow coexistence between traditional communications based on cyclic messages (e.g., LIN, CAN / CAN-FD, and FlexRay) and service-oriented communications consisting of event-based messages unicast and imposed time constraints to ensure validity of generated data, such as IP-based network (e.g., Ethernet) communications.

[0030] Other features, details and advantages of the invention will become apparent upon reference to the description given with reference to the accompanying drawings, given by way of example and including the following figures, in which: [Brief explanation of the drawings]

[0031] [Figure 1] 1 illustrates a shared data management system according to some embodiments. [Figure 2] 3 illustrates the structure of messages received or sent by a shared data management system according to some embodiments of the present invention. [Figure 3] 1 illustrates an example of a frame table according to one embodiment. [Figure 4] 1 illustrates an example of a transmission table according to one embodiment. [Figure 5] 1 illustrates an example of a control table according to one embodiment. [Figure 6] 1 illustrates an exemplary implementation of a shared data management system according to some embodiments. [Figure 7] 1 is a flowchart illustrating a method for receiving data according to some embodiments. [Figure 8] 1 is a flowchart illustrating a method for transmitting data stored in a memory system according to some embodiments. DETAILED DESCRIPTION OF THE INVENTION

[0032] FIG. 1 illustrates an example operating environment 100 for a shared data management system 1 according to some embodiments.

[0033] The supply data management system 1 is also referred to below as a DSM system (which is an acronym for the corresponding expression "Data Sharing Management").

[0034] The shared data management system 1 comprises a memory system 10 having multiple separate memories forming a shared address space on a logical plane, the address space being shared, i.e., one and the same physical address on two separate processors points to the same memory location.

[0035] The DSM system 1 further comprises a multi-protocol gateway 11 having a central controller 110 configured to receive data from one or more external data producer devices 3P via the communication network 2 or to transmit data stored in the memory system 10 to one or more data consumer devices 3C. The central controller 110 is further configured to extract data received in messages from the data producer devices 3P and, for each extracted data, to determine a validity bit before storing the extracted data in association with the validity bit thus determined in the pre-selected memory 101.

[0036] The DSM system 1 may further comprise a configuration system 12 configured to store configuration information associated with data stored in the memory 101. Advantageously, the central controller 110 may be configured to determine the memory 101 selected to store the received data based on the configuration information associated with the data stored in the memory system 10. The configuration system may store the configuration information in any suitable data structure 121, such as a configuration table. The configuration information may comprise various parameters associated with the data stored in the memory system 10, such as the size or importance of the data. The remainder of the description will be given with reference to a configuration table type configuration data structure 121, as a non-limiting example.

[0037] Such a configuration data structure 121 may more generally store any parameters providing prior knowledge of the structure of the workload of data frames received from the producer device 3P and the needs in terms of consumption data required by each consumer subsystem 3C connected to the DSM1 via the communications network 2.

[0038] The multi-protocol gateway 11 can be used by various elements of the computing environment 100 regardless of the communication protocol being used, while at the same time providing deterministic responses to data transfers defined in the configuration tables.

[0039] Advantageously, the operation of the DSM system 1 does not depend on receiving a data transmission request from the producer device 3P to trigger the transmission of data to the consumer device 3C. The DSM system 1 according to an embodiment of the present invention uses configuration information describing data transmission scenarios defined in a configuration table 121. In one embodiment, the configuration table 121 can be automatically generated through analysis based on a tool such as that described in P. Dubrulle, C. Gaston, N. Kosmatov, A. Lapitre, and S. Louise, “A Dataflow Model with Frequency Arithmetic,” 22nd International Conference on Fundamental Approaches to Software Engineering (FASE), Cham: Springer, 2019. Such a computational model is an extension of the Synchronous Dataflow (SDF) model format known as Polygraph. For example, in one application of the present invention to an embedded computing system in a vehicle, the computational model may be based on the AUTOSAR standard. Such an operating mode, based on prior knowledge of the data transmission scenario, makes it possible to guarantee multi-protocol data transfer while simultaneously guaranteeing low latency and high bandwidth (thus optimizing the use of the available bandwidth).

[0040] The multi-protocol gateway 11 includes one or more protocol controllers 112 (in FIG. 1, labeled “Ctrl P”) configured to interface with the communication network 2. i ").

[0041] The multi-protocol gateway 11 includes one or more memory controllers 111 (in FIG. 1, labeled “Ctrl M”) configured to interface with the memory system 10. i ").

[0042] The central controller 110 is designed to coordinate data exchange between various internal elements of the DSM system 1, such as the memory system 10 and the configuration table 121. The central controller 110 may use a data format that is common to all of the elements of the DSM 1. The central controller 110 may also use a predefined schedule of exchanges within the configuration system 12.

[0043] The DSM system 1 may include a time-stamping unit 14 (not shown) configured to associate with each piece of data received from a producer a receipt date, representing the date the data was received by the DSM system 1. In one embodiment, the time-stamping unit may be configured to calculate the receipt date of the data based on an index corresponding to the data (multiple samples of one and the same data may be transmitted by the producer device, with each sample associated with an index corresponding to the transmission time, the index being incremented based on the transmission date of the sample). Thus, a first sample of data having an index smaller than the index of a second sample of the same data will correspond to a transmission time that precedes the transmission time of the second sample. However, there may be cases where a sample with a relatively smaller index arrives after a sample with a relatively larger index, such as in the case of packet loss. There may also be cases where two samples of one and the same data are received at consecutive times, with their indexes not being consecutive (the absolute value of the difference between the two indexes is strictly greater than 1).

[0044] Such an index associated with the received data can be used to determine the validity period of each data received from the consumer 3C along with the expiration of the data.

[0045] In one embodiment, the validity of data (non-expired data) can be checked at the frame level. According to such an embodiment, it is assumed that the producer device 3P transmitting a data frame (or data message) makes available only valid data after performing a first filtering operation on the data to be transmitted within the communication network 2.

[0046] Communications network 2 may include one or more private and / or public networks (e.g., the Internet) that allow for the exchange of data, such as the Internet, a local area network (LAN), a wide area network (WAN), a cellular voice / data network, one or more high-speed bus connections, and / or other types of such communications networks. Network 2 may use communications protocols such as 4G, Ethernet, 802.11, TCP / IP (Transmission Control Protocol / Internet Protocol), HTTP (Hypertext Transport Protocol), FTP (File Transfer Protocol), etc.

[0047] A validity test on the data received in a frame from the producer device 3P can be performed at the frame level using the global received date. The DSM system 1 can use the global received date to determine whether the data making up a data frame (message) received from the producer device 3P is valid with respect to the transmission time window (valid data is data that has not expired), thereby allowing a reduction in the computational cost of the data management system 1.

[0048] The time stamping unit may use a time base that may be derived from the system time, such as a system time equal to 10 nanoseconds (ns) encoded in a first set of bits for nanoseconds (e.g., 64 bits) and another set of bits for milliseconds (e.g., 32 bits). The time base thus allows for the provision of a common time reference system across all of the elements of the DSM system 1.

[0049] The configuration parameters stored in the configuration system 12 can be determined using a file-based Model of Communication and Computation (MOCC) that describes the flow of data exchanges along with their types within the computing environment, such as which elements of the environment produce which data at which times, and which data is consumed by which elements at which times.

[0050] The DSM system 1 is configured to identify each received data using identification parameters comprising an identifier and a production index pair. The data identification parameters are associated with each received data by the central controller 110 before storing the received data in the memory system 10. The data identification parameters may advantageously be stored in a configuration table of the configuration system 12. The central controller 110 is configured to extract the data identification parameters from the configuration table 120 and encapsulate them with corresponding data to form a DSM frame to be transmitted to the consumer 3.

[0051] Thus, the central controller 110 is responsible for reconstructing the frames to be transmitted based on the data stored in the memory system 10 and the configuration parameters associated with the data in the configuration table 121.

[0052] Each frame received by the central controller 110 has a frame identifier that uniquely identifies the frame. In one embodiment, the frame identifier is associated with a reception deadline date D frame (which is also referred to in the remainder of the description or in the figures using the notation "Frame_deadline"). frame corresponds to the latest date on which the frame should be received. Such a frame identifier allows the DSM1 to check the validity of the frame upon its reception, in this case the reception deadline date Df rame Any frame received later than this is considered invalid.

[0053] The frames reconstructed by the central controller 110 also include a frame identifier and, for each piece of data encapsulated in the frame, data configuration parameters extracted from the configuration table 121 .

[0054] Figure 2 shows an example of the morphology of a frame reconstructed by DSM1.

[0055] As shown in Figure 2, the DSM frame consists of: - a frame identifier D, located, for example, in the header of the frame Frame Field 40, which corresponds to For each data 44, for example, configuration parameters for the corresponding data 41, 42 and 43 placed before the data. It has.

[0056] In response to receipt of a frame received from consumer device 3C by DSM1, central controller 110 receives frame identifier D FrameThe central controller 110 is configured to check the validity of the received frame using a configuration table. If the frame is determined to be valid, for each piece of data contained within the frame, the central controller 110 is configured to extract data parameters encapsulated by the data. The central controller 110 is further configured to calculate an address of the data based on the information provided by the configuration table and the data parameters associated with the data in the received frame. The central controller 110 is further configured to store the data in a memory 101 of the selected memory system 10 based on the calculated address.

[0057] Memory system 10 may include one or more memories 101 of different types. Thus, memory 101 may include, for example, one or more static random access memories (SRAMs) and / or dynamic memories, such as Double Data Rate (DDR) memories.

[0058] In one embodiment, the memory system can include, for example, SRAM memory and DDR memory to store data generated by the server (producer device) and consumed by the client device or system (consumer device). Using multiple types of memory and calculating data addresses based on received data parameters allows the client application (producer device) to achieve the target bit rate (expected bit rate) defined by each application. For example, large data intended for use by multiple applications running in various consumer devices (3C) can be stored by the central controller 110 in DDR memory, while relatively small, important data can be stored in SRAM memory to allow fast access to this data. Important data is data that needs to be quickly and always accessible.

[0059] The DSM system 1 is configured to manage data shared between various consumer and producer devices, this data intended to be distributed within a communications network 2; the exchange of such data may use various communications protocols, and the data may be stored in various shared memories 101.

[0060] The DSM system 1 advantageously implements shared data management that uses previously received information about the structure and scheduling of the data that makes up the network frame, as defined in the configuration table 121.

[0061] The DSM system 1 can further use an abstract scheduling model to determine, for any data, the period during which the data should be produced, the period during which the data should be consumed, and the recipient consumers (consumers who will consume the data). Such production period, consumption period, and target consumer information can then be applied to a tool based on a model of communication and computation (MOCC), such as the model by P. Dubrulle, C Gaston, N. Kosmatov, A. Lapitre, and S. Louise. “A Dataflow Model with Frequency Arithmetic,” 22nd International Conference on Fundamental Approaches to Software Engineering (FASE). Cham: Springer, 2019, to generate the configuration table 121.

[0062] In one embodiment, the configuration table 121 includes: - Frame table 1210, - a transmission table 1211, and - control table 1212, It can have:

[0063] 3 to 5 show examples of a frame table, a transmission table, and a control table.

[0064] As shown in Figure 3, the frame table 1210 contains a list of various frames to be sent by the DSM 1 to the consumer device 3C over the communication network 2. In an exemplary embodiment, the frame table 1210 can list up to 256 frames. The access address for accessing the frame table 1210 can be managed using a counter that is automatically incremented when the DSM 1 is started up. The frame table 1210 may contain a set of information related to the frame, and in particular: - Frame send date (send_date): The frame send date can be used to encapsulate multiple data from different services in one and the same frame, thus making it possible to saturate the bandwidth. The frame send date is consistent with the availability of the target consumer device at the required reception and transmission time in the communication network. - a reception deadline date for the frame to be sent, with two fields: a field (deadline_s) corresponding to the date value for seconds, "deadline_s", encoded in a set of bits (e.g., 32 bits), and a field "deadline_ns" corresponding to the date value for nanoseconds, "deadline_ns", encoded in another set of bits (e.g., 64 bits): a received frame will be considered stale if it exceeds the deadline reception date defined by the two fields "deadline_s" and "deadline_ns". It can have:

[0065] FIG. 3 illustrates an example of a transmission table 1211 according to one embodiment.

[0066] The transmission table 1211 has a list of data that constitutes a frame to be transmitted over the communication network 2. In an exemplary embodiment, the transmission table 1211 can define up to 4096 pieces of data to be aggregated in a frame.

[0067] In the sending table 1211, each piece of data is as follows: - An identifier pair {service_id,event_id} with a first data identifier "service_id" and a second data identifier "event_id" that allows access to the control table 1211 for all of the data: a service as used herein means a logical combination of zero or more events. An event provides data that is sent to the consumer either periodically or when the data producer changes. The data identifier pair is a set of bits (e.g., 4 x 10) to identify N data. 9 The data can be encoded (in 32 bits) to identify the individual pieces of data. - Data index representing the number of data samples related to the producer service / event 3: The data index is a number in bits (e.g., 65 x 10 of data) 3 The sample can be encoded (in 16 bits to address the sample). The data is associated with a data identification parameter having the following characteristics:

[0068] FIG. 5 illustrates an example of a control table 1212 according to one embodiment.

[0069] The control table 1212 defines information related to each piece of data flowing within the communication network 2. The control table 1212 can have information related to N pieces of data of variable size (N=4×10 9 In the example, the size is up to 65x10 3(It may reach a byte.) The data identifier pair stored in the transmission table 1211 represents an access address for accessing the control table.

[0070] The control table 1212 may contain control information, and in particular: - the offset of the address of the data within the memory system 10 ("offset_addr"); - The size of the data to be written to or read from the memory system ("data_size"): The size "data_size" may be a defined modulo 8 for data division consistent with the structure of the memory 101 being used. It can have:

[0071] In one embodiment, the central controller 110 of the DSM1 can calculate the effective memory address of the data based on the address offset "offset_addr", the data index, and the size of the data.

[0072] Advantageously, due to the importance of the information in the configuration table and its impact on communication scheduling and security, access to the information in the configuration table does not require any data security processes, while access times to these data may be limited and relatively fast. By storing the configuration table 121 in a separate storage structure of a different type than the memory 101 of the memory system 10 that stores the payload data, the configuration table 121 may be stored in flash, SRAM, or SDRAM memory, for example.

[0073] In the multi-protocol gateway 11, the protocol controller 112 and the memory controller 111 may be implemented or instantiated based on components related to a particular protocol (in the case of the protocol controller 112) or a particular memory model (e.g., in the case of the memory controller 111).

[0074] The protocol controller 112 may have a network interface that is associated with a given protocol and that can capture data of this same protocol. The communication protocol may be any protocol, such as, for example, Ethernet, TSN, PCIe, CANFD, etc. The protocol controller 112 may further have a user interface that can communicate with the central controller 110 to provide and receive data in a single form. The central controller 110 is further configured to manage communication issues by implementing data conversion operations such as data segmentation, thereby making the data consistent with the protocol, decoding, and proper formatting of the data.

[0075] The memory controller 111 is configured to manage transactions based on a user interface that communicates with the central controller 110 and generates transactions to and from the target memory 101. The memory controller 111 is configured to be responsible for and updating memory synchronization parameters, and for blending write and read transactions to reduce the number of dead cycles involved in bus reversals. The memory controller 111 also reorganizes commands to improve data bus usage to the memory 101.

[0076] The central controller 110 is advantageously configured to operate in real time, making it possible to establish a link in real time between the memory system 10 storing data via the memory controller 110 and the communication network 2 to which one or more subsystems 3 (consumer and producer devices) are connected via the protocol controller 112.

[0077] The central controller 110 is independent of the communication medium used.

[0078] In one embodiment, the DSM1 may comprise a supervisor device (not shown) configured to manage the operation of the central controller 110, and in particular to manage the starting, interrupting or reinitialization of the execution of the central controller 110. The supervisor may also be configured to control the operational state of the central controller 110 by performing real-time read operations on status registers of the central controller 110. Such registers may contain information relating to the state of the central controller 110, as well as error reports on writing and reading data. The management performed by the supervisor of the central controller 110 allows for the implementation of operational security mechanisms.

[0079] In one embodiment, the central controller 110 can be parameterized to adapt itself to the heterogeneity of the connected communication media and memories 101. Depending on the communication medium used, network frames can be processed separately within the central controller 110 by implementing parallel payload data flow processing processes. The configuration table 121 can be distributed among the various parallel payload data processing processes to ensure parallel and fast access to the configuration information.

[0080] The memory system 10 may use an interconnect core to connect multiple Advanced eXtensible Interface (AXI) data paths, which may vary from one another in terms of data width and clock domain. Such an interconnect core may include a path selection entity that allows for selecting a data path between the protocol controller 112 and the memory controller 111 based on selection criteria such as priority and / or alternate arbitration. Such an interconnect core allows for managing simultaneous access operations to various memories 101 of the storage system 10 while simultaneously avoiding congestion among the data flows.

[0081] Depending on the needs of the computing environment 100, the central controller 110 may change without requiring interruption or modification of its operation. For example, the addition of a new communication device or subsystem 3 to the computing environment 100 requires only the duplication of data management paths pertaining to the new device and / or the addition of information pertaining to the new device to the configuration table 121 in order to integrate the data required by the new service provided by the new device.

[0082] Embodiments of the present invention provide time-guaranteed access to distributed data within a computing system (e.g., a vehicle). Even in the event of loss or malfunction of a communication element, corrupted or delayed data cannot be illegally accessed. This results in very good reliability of the DSM system 1.

[0083] By using a storage structure forming a centralized database shared by the computing environment 100, the DSM system 1 further ensures the security of communications by limiting direct transactions between computing units (producer and consumer devices). The transactions themselves are secured and the various consumer devices connected to the network 2 do not need to know the data producer device 3P or its location. Access actions to data by consumers are filtered by least privilege on the payload data.

[0084] Depending on the communication medium, network frames are processed separately within the central controller 110, allowing for parallel data flow management. The configuration tables 121 can be distributed among the various payload data management stages to ensure parallel and fast access to the configuration data.

[0085] In response to extracting data from a frame received by DSM 1 from producer 3, central controller 110 can check the validity of the data using a pair of data identifiers associated with the data in configuration table 121. Configuration table 121 further provides a set of configuration parameters such as the size of the data, its location within memory system 10, the importance of the data, and its generation periodicity. Based on such configuration information associated with the data, central controller 110 can determine whether the data should be saved or erased, thereby enabling filtering of expired data. In response to processing of the frame by central controller 110, a success or failure notification can be sent to the central controller's supervisor.

[0086] The DSM system 1 is capable of storing at least a portion of the received data in frames after prior processing of the data in the memory system 10 together with parameters associated with the data in a configuration table separate from the memory 101, and is capable of retransmitting the data in real time to various consumer devices 3C (e.g., computing subsystems and interface cards) according to different communication protocols by taking into account service-oriented scheduling defined in the configuration table. In one exemplary application of the invention to an automobile, the producer device 3P and the consumer device 3C may, for example, be various elements distributed in the vehicle and connected to the communication network 2.

[0087] Upon receiving a frame, the DSM system 1 determines whether the received frame is valid in time by checking the frame identifier D encapsulated within the frame. Frame The DSM 1 is configured to determine whether the frame is valid using the data information stored in the configuration table 121. If the frame is valid, the payload data (application data) is extracted from the frame. For each extracted data, the DSM 1 is configured to determine whether the data is valid using the data information stored in the configuration table 121. The check on the validity of the received data corresponding to the data sample associated with the index comprises determining whether a previous sample of the same data associated with a different index and already stored in the memory 10 has not yet been consumed by the producer device. Such a process is independent of the communication protocol used between the various devices connected to the communication network 2.

[0088] If the data is valid, the target memory 101 where the data should be saved is determined using the data address calculated based on the configuration information, and the DSM 1 then saves the data in the target memory.

[0089] The DSM 1 is also configured to group pre-stored data in the memory system 10 before constructing frames to be sent to the producer device 3 .

[0090] A grouping method that may be implemented by the central controller 110 uses such data stored in the memory system 10 of the DSM 1 to construct one or more frames intended to be transmitted to a consumer device 3C, where the reconstructed frames have application data intended to be consumed by one or more recipient consumer devices 3 connected to the communications network. The application data intended to be embedded in each frame has been determined in a configuration table.

[0091] According to some embodiments, the DMS 1 is further configured to transmit the reconstructed frames in real time to one or more consumer devices 3 configured to consume the data encapsulated in the frames. For each reconstructed frame, the real time availability of the frame is checked. The frame to be transmitted is then transmitted within the communication network 2 within a transmission time window defined by the communication network 2. The time at which the frame is transmitted within the network 2 can be defined in a configuration table.

[0092] 6 shows an exemplary implementation of a DSM system 1 according to some embodiments. In the example of FIG. 6, two network frames T1 and T2 are received by the DSM system 1 from a first producer device 3P1 (not shown) via protocol P1 and from a second user device 3P2 via protocol P2, respectively. The received frame T1 has application data A and B, while frame T2 has application data C and D. According to the scheduling defined in the configuration table 121, device 3C1 consumes data A and data C, while device 3C2 consumes data B and D. The DSM system 1 determines the availability of data A, B, C, and D, as well as the availability of data D. Frame The DSM system 1 then uses the received identifiers of the frames T1 and T2 to determine the validity of the received frames T1 and T2. The DSM system 1 then extracts the application data A, B, C, and D for storage in memory 10, the addresses of which have been pre-calculated based on the configuration parameters stored in configuration table 121. The DSM system then implements a grouping method to construct a first frame with grouped data A and C intended to be sent to consumer device 3C1, and a second frame with grouped data B and D intended to be sent to consumer device 3C2.

[0093] The DSM system 1 according to an embodiment of the present invention can wait a waiting time before constructing a network frame to be transmitted to a consumer device until it has a predefined number of data items that are useful to the recipient device. The waiting time can be fixed, predefined, or calculated prior to execution in the real-time distributed computing environment 100 by considering end-to-end time constraints defined for all of the data flows. This results in optimizing bandwidth usage. Specifically, packaging multiple data items with closely spaced retransmission times within one and the same frame avoids constructing and transmitting multiple relatively small frames.

[0094] Within the service-oriented distributed computing environment 100, new devices can be added to the computing environment without interrupting the operation of the DSM 1. Specifically, data useful to this new device can be defined in the configuration table 121 without requiring modifications to the DSM system 1 or other elements of the system. The configuration table 121 can be updated to integrate information related to data useful to the new consumer device. Advantageously, the DSM system 1 can process data transactions (incoming / outgoing) by transparently integrating information related to data useful to any new (consumer and / or producer) device into the computing environment 100. Furthermore, the various devices 3 connected to the communication network 2 do not require any prior knowledge of the data producer devices or their locations.

[0095] To provide the required performance (time control, low latency, etc.) for the computing environment, the DSM system can be physically implemented on a programmable integrated circuit, such as an FPGA (an acronym for "Field Programmable Gate Array") circuit. Data can be kept consistent within the DSM system 1 by, for example, pre-reading data from devices within the computing environment 100 at regular intervals and autonomously. In one exemplary application of the invention to the automotive sector, producer devices may include, for example, sensors, and consumer devices may include actuators. All communication between producer and consumer devices (e.g., sensors and actuators) passes through a single memory system 10, which can provide a unified view of memory 101 accessible to all of the computers.

[0096] The DSM system 1 advantageously has a modular architecture consisting of a multi-protocol gateway 11, a memory system 10 having one or more heterogeneous memories 101, and a configuration system 12 having three configuration tables (a frame table, a transmission table, and a control table). The multi-protocol gateway 11 itself has several sub-modules, including n protocol controllers 112, k memory controllers 111, and a central controller 110.

[0097] At the data path level, the protocol controller 112 is configured to check received frames with respect to the protocol characteristics of the transmission medium and to pass valid frames through the central controller 110. The central controller 110 can check the validity of each received frame with respect to a locally configured time base and can then determine a target location for the received data within the memory system 10 based on data parameters stored in the configuration table 121, such as the size and importance of the data. The memory controller 111 is intended to initiate access to the memory 101 of the memory system 10 and to store at least a portion of the received payload data in the target memory 101 of the memory system 10.

[0098] Furthermore, based on the data stored in the memory system 10, the central controller 110 is configured to construct new frames to be transmitted to the consumer devices by pre-grouping data into frames to be transmitted based on a pre-defined scheduling in the configuration table 121. The reconstructed frames are then sent to the protocol controller 112 for subsequent transmission to the consumer devices 3C of the computing system 100 via the communication network 2.

[0099] Multiple samples of one and the same data, each sample corresponding to a given index, may be received at different times by the DSM system 1. Each sample of data is associated with one or more sample parameters that characterize the sample. In one embodiment, the sample parameters are: - a pair of data identifiers {service_id, event_id} representing a service of the producer device 3, - a sample index ("index") representing the rank of the data sample provided by the producer; and - a validity bit ("valid") indicating the availability and validity of the data sample; For each pair of data identifiers {service_id, event_id}, DSM1 defines a buffer T configured to store a sample index and a validity bit {"index", "valid"}. The size of buffer T can be defined offline based on the number of samples generated by each service on the producer device and based on application requirements. For example, for a fixed size sample index encoded in 16 bits, an 8KB buffer can be used for each {"index", "valid"} pair.

[0100] Data from various services of a producer device can be updated by each corresponding service of the producer device. In such an embodiment, a dedicated memory area (also referred to as a "memory block") may be allocated in each memory 101 of the storage system 10, where each area is intended to store all of the samples of one and the same service of the producer device. For example, memory 101k of the memory system 10 may be subdivided into p memory areas, where p represents the number of producer services associated with memory 101k (data from these p services will be stored in memory 101k). Thus, a data sample generated by service i of a producer device 3P will be stored in the memory block corresponding to service i in memory 101 and can only be modified by the same producer service. However, such data samples from producer service i can be consumed by any consumer device (client device) connected to DSM 1 via the communication network 2.

[0101] The validity bit may have a first binary value indicating that the bit is enabled or a second binary value indicating that the bit is disabled. In one embodiment, in response to receiving a frame by DSM1, it is determined whether the validity bit of the data sample is enabled. If the validity bit is disabled, access to the memory area associated with the sample in memory system 10 is in write mode (the data sample may be "written" to the memory area). Alternatively, if the validity bit is enabled, write access to the memory area corresponding to the sample is prohibited to prevent a valid data sample in the memory area that has not yet been consumed from being overwritten by another sample of the same data.

[0102] During transmission of a frame, in read mode, only memory areas corresponding to data samples associated with an enabled validity bit (and therefore having a first binary value) are accessible. The configuration table 121 can advantageously contain event-based scheduling information to avoid consuming previous samples that are still valid and / or receiving new samples of data before the trigger of frame construction that are associated with payload data to be encapsulated in the frame that may not yet be valid. To interrupt operation of the central controller 110, an error message can be sent to the supervisor of the central controller 110 to recalculate the production, overflight, and analysis times for each data sample and then generate a new configuration table.

[0103] Thus, each service of a data producer device can modify the memory area associated with it in the memory system 10. Furthermore, the DSM 1 ensures that the access of consumer devices is not simultaneous with that of producer devices, and therefore the data exchanged by the DSM system 1 is protected.

[0104] FIG. 7 describes a method for receiving frames implemented by DSM1 according to some embodiments.

[0105] In step 600, a data frame is received from producer 3.

[0106] In step 601, a frame identifier D encapsulated in a frame Frame is used to determine whether a received frame is valid in time.

[0107] Before checking the temporal validity of the frame in step 601, information indicating the network frame to be received by DSM1 together with information indicating the correspondence between the network frame and the producer device can be used to further determine whether the received frame should be processed by a centralized controller. For example, in this preliminary step, it can be checked whether the received frame was actually sent by the correct producer device, i.e., the producer device intended to send this frame.

[0108] In one embodiment, step 601 may further comprise, prior to checking the temporal validity of the received frame, determining whether all of the data or a subset of data of the frame received by DSM 1 can be redirected directly to the communication network 2 without first being stored in the memory system 10. In this embodiment, such data or a subset of such data is redirected directly to the target consumer device. Such an embodiment allows for accelerated retransmission of data received by DSM component 1 in cases, for example, where time constraints applied to such data are incompatible with storing these data in the memory system 10 of DSM system 1.

[0109] In step 602, if the frame is valid, the payload data (application data) is extracted from the frame.

[0110] In step 603, for each extracted data, it is determined whether the data is valid using the data information stored in configuration table 121. It should be noted that step 603 is independent of the communication protocol used between the various entities connected to communication network 2.

[0111] In step 604, if the data is valid, the target memory 101 where the data should be saved is determined using the data address calculated based on the configuration information.

[0112] Then, in step 605, the data is saved in the target memory.

[0113] Configuration information stored in configuration table 121 can be used to trigger memory transfers to implement data storage within memory system 10 according to predefined memory mappings. Configuration table 121 contains information that allows DSM1 to have static knowledge of received frames and their structure.

[0114] In step 604, a memory address corresponding to a target memory block in the storage system 10 where the target data should be stored can be calculated based on a data index (sample index "index") associated with the data. In one embodiment, the target memory address "address_write" in the memory system 10 of the DSM system 1 is calculated based on the data index "index" using the following equation (1): address_write=offset_addr+index*data_size (1)

[0115] In equation (1), the parameter "offset_addr" represents the address in buffer T that stores the sample index, and the parameter "data_size" represents the size of the sample.

[0116] In step 605, an access can be initiated to the target memory corresponding to the target memory address by the corresponding memory controller 111 to allow storage of the respective data of the target in an allocated memory area (which may be, for example, an area dedicated to one and the same service of the producer device).

[0117] Steps 603-605 may be repeated for each extracted data to be stored in memory system 10 until all of the data in the received frame has been processed (step 606).

[0118] In step 607, a notification may be sent (e.g., by the central controller 110) to the software supervisor to notify it of the completion of the data transfer between the protocol controller 112 and the memory controller 111 of the multi-protocol gateway 11 of the DSM system.

[0119] 8 illustrates a real-time transmission method implemented by the central controller 110 of the DSM system 1 for transmitting reconstructed frames according to some embodiments. The frames are transmitted to one or more recipient consumers 3C that are intended to consume the data encapsulated within the frames.

[0120] The frame transmission method is implemented to construct and transmit frames by taking into account event-based scheduling information stored in the configuration table 121 to determine the data to be grouped in the frame, the transmission time of the data samples, and the target consumer device 3.

[0121] In step 800, a header for the frame to be transmitted is constructed. Furthermore, in step 800, before the frame is transmitted, a read request is sent to initiate the data transfer from the memory system 10 to the corresponding protocol controller 112 of the DSM system 1. In step 800, frame information and frame structure information stored in the configuration table 121 can be used to provide information related to the frame to be transmitted.

[0122] In step 801, one or more memory transfers from the memory transfers initiated in step 800 are triggered. The triggered memory transfers transfer one or more data items contained within the frame from memory 10 to central controller 110 of DSM system 1. Such data will form the application portion (44) of the network frame. Depending on the number of data items to be transferred from memory system 10, step 801 can be repeated (step 802) until the application portion of the network frame to be transmitted is completely constructed.

[0123] In response to detecting the end of the memory transfer, the frame to be transmitted is made available to be transmitted to the consumer device by the corresponding protocol controller 112 if the protocol controller is available. In some embodiments, the frame may be rejected if the protocol controller is blocked for a predefined period of time. The availability of the protocol controller 112 may depend on the availability of the target consumer device (the availability of the protocol controller may be enabled in response to an availability signal received by the target consumer device). In step 803, the protocol controller triggers transmission of the frame at the send date ("Send Date") associated with the frame in the configuration table 121.

[0124] Network traffic monitoring can be implemented upon frame transmission and / or frame reception by the DSM system 1 .

[0125] In one embodiment, the maximum delay Δmax between the generation of a new data sample (corresponding to a given index) and making this sample available within memory system 10 can be determined.

[0126] It is also possible to calculate the maximum delay Δ'max between an access request to access data from the memory system 10 and making the data available to the consumer device 3C.

[0127] The delay Δmax and / or delay Δ'max can be calculated based on the reception / transmission times of network frames between the protocol controller 112 of the DSM system 1 and the memory system 10, where these times depend on the internal architecture of the DSM system 1.

[0128] In one embodiment, it can be checked whether an end-to-end transmission constraint of data has been satisfied, in particular by determining whether the sum of the maximum time delays involved in the various steps of routing service data from the producer device 3P to the target consumer device 3C is less than a threshold representing the end-to-end time constraint, where such threshold takes into account the time behavior of the various transmission media of the communication network 2.

[0129] Thus, embodiments of the present invention provide a DSM system 1 equipped with various types of network controllers 112 (e.g., CAN controller, PCIe controller, TSN / Ethernet controller, etc.) within a single physical medium. Data is advantageously stored in the memory system 10 independently of the various stages of data flow concurrency management, thereby providing unified access to data of all devices (appliances, subsystems) connected to the communication network 2 within the computing system 100. The DSM 1 advantageously allows processing of data received within frames from a producer device 3P satisfying a predefined scheduling within the configuration system 12. Thus, the DSM system according to embodiments of the present invention forms a multi-protocol transmission system, which may be used within any service-oriented RT distributed computing environment, where data received from a producer device 3P via a given protocol can be retransmitted to a consumer device 3C via another protocol without the consumer device 3C needing knowledge of the data producer (thereby increasing the security of the shared data). Advantageously, the transmission of stored data is triggered only when at least one recipient consumer device of network 2 needs such data, thereby avoiding congesting network 2 and all of the nodes (producer devices) connected to network 2.

[0130] Thus, the DSM system 1 according to the embodiment allows for deterministic data exchange that ensures control of signal propagation times, data transmission latency, and data processing times, while at the same time ensuring a high level of security for the data stored within the memory system. The DSM system 1 is particularly suited for mission-critical applications that require constant, fast access to data.

[0131] Embodiments of the present invention further enable deterministic optimization of bandwidth usage by packaging data with close retransmission times received from potentially different communication protocols within one and the same frame. Specifically, by avoiding constructing and transmitting multiple relatively small frames, the bandwidth used for protocol headers within a packet is optimized.

[0132] Embodiments of the present invention make it easier to add devices to the system, in which case data useful to the new device can be made available directly on the DSM system 1 itself, without requiring changes to other devices.

[0133] In conjunction with the frame reception method according to the embodiment, the DSM system 1 may further detect any deadline violations in the operation of accessing the shared data, possibly resulting from, for example, packet loss on the connected network or from other delays in transmission or reception by software components. For example, packet loss can be detected by extracting data from a received frame and then comparing the index of the sample received by the DSM 1 for each data. Delays in receiving data can be detected by comparing the expiration date of the data with the reception date. The expiration date of the data can be calculated based on the index associated with the data.

[0134] In one exemplary embodiment, the expiration date of the sample is specifically: - the product P of the sample index and the production period of one and the same data sample, - a time window provided by a local time counter; The determination can be made by comparison.

[0135] Thus, the DSM system 1 ensures the security and efficiency of transactions by detecting deadline violations as early as possible and by preventing the propagation of erroneous access operations, thereby preventing other consumer devices from using bandwidth to transmit affected and expired data.

[0136] Those skilled in the art will understand that systems or subsystems according to embodiments of the present invention can be implemented in numerous ways, including hardware, software, or a combination of hardware and software, particularly in the form of program code that can be distributed in the form of a program product. In particular, the program code can be distributed using a computer-readable medium, which can include a computer-readable medium and a communication medium. The methods described herein can be implemented in particular in the form of computer program instructions that can be executed by one or more processors in an information technology computer device. These computer program instructions can also be stored in a computer-readable medium.

[0137] Furthermore, the present invention is not limited to the embodiments described above as non-limiting examples. It encompasses all variant embodiments that may occur to those skilled in the art. In particular, those skilled in the art will understand that the present invention is not limited to the exemplary protocols cited as examples in the above description and may include other types of protocols. Furthermore, those skilled in the art will understand that the present invention is not limited to the exemplary computing systems mentioned in the above description. The DSM system 1 according to embodiments of the present invention can be integrated into any computing environment or system in which data is generated by producer devices connected to a communications network and consumed by consumer devices connected to this same communications network. Examples of computing systems include, without limitation, environments intended for the automotive, aerospace, or defense industries.

Claims

1. A shared data management system (1) configured to receive frames with data from one or more producer devices (3P) and to transmit reconstructed frames to one or more consumer devices (3C), the producer devices (3P) and the consumer devices (3C) being connected to said shared data management system by a communication network using a communication protocol, said shared data management system (1) comprising a memory system (10) having a plurality of separate memories (101) forming a space of shared addresses, the frames being reconstructed using data stored in the memory system (10), in the system: The shared data management system (1) comprises a central controller (110) configured to store in a target memory of the memory system (10) at least a portion of the data encapsulated in a frame received from a producer device, the central controller being configured to: - determining whether a received frame is valid in time using the frame identifier; extracting data from the received frames; - for each data extracted from a received frame, calculating an address in said target memory based on a sample index associated with said data in said received frame; - Using the data information to determine whether the data is valid; a system configured to store the data in the target memory address if the data is valid;

2. 2. The shared data management system of claim 1, wherein one or more samples of one and the same data are received at different times, and the central controller (110) is further configured to calculate a validity bit of the received data based on an expiration date associated with the data, the validity bit being set to a validity value if a previous sample of the data associated with a different index is not stored in the memory system (10).

3. 3. The system of claim 2, wherein the central controller is capable of detecting delays in receiving data encapsulated within a received frame by comparing the expiration date of the data with the receipt date of the data.

4. 4. The shared data management system of claim 2, wherein the expiration date is calculated based on the index of the data.

5. 5. The shared data management system of claim 1, further comprising at least one configuration data structure for storing configuration information associated with the frame together with the data when the producer device and the consumer device are connected to the shared data management system by the communication network, and the central controller (110) further uses information stored in the configuration data structure (121) to determine the address of the target memory.

6. The at least one configuration data structure (121) comprises: a frame table (1210) containing a list of frames to be transmitted by the shared data management system (1) to consumer devices (3C) over the communication network (2), and / or a transmission table (1211) containing a list of the data to be encapsulated in the frames to be transmitted over the communication network (2), each data being identified by at least one data identifier; and / or a control table (1212) containing the information related to each data item flowing in the communication network (2), the one or more data identifiers stored in the transmission table (1211) representing an access address for accessing the control table; The shared data management system of claim 5 , comprising:

7. The frame table (1210) stores, for each frame to be transmitted, the date of transmission of said frame, and - the deadline date for receiving said frame, representing the latest date on which said frame should be received; The shared data management system of claim 6 , comprising:

8. The sending table (1211) stores, for each data item in the list, - a pair of identifiers, and a data index representing said address of said data relating to a producer device (3P), The shared data management system according to claim 6 or 7, comprising:

9. The control table (1212) includes: an offset parameter for the address of said data in said memory system (10), and the size of said data, The shared data management system according to any one of claims 6 to 8, comprising:

10. 10. The shared data management system of claim 9, wherein the central controller is configured to calculate the address of the target memory by further using the offset parameter for the address of the data stored in the control table and the size of the data.

11. A shared data management system as described in Claim 9, wherein the address of the target memory is equal to the sum of the offset parameter for the address of the data stored in the control table and the size of the data.

12. 11. The shared data management system of claim 5, wherein the central controller is configured to construct the frames to be transmitted by grouping the data into the frames based on a target consumer device and a transmission date associated with the frame in the configuration data structure.

13. 13. The shared data management system of claim 1, further comprising: a plurality of memory controllers (111) that act as an interface between the memory system (10) and the central controller (110); and one or more protocol controllers (112) that act as an interface between the central controller (110) and the producer devices and the consumer devices, each protocol controller being specific to a given protocol.

14. 14. A shared data management system according to any one of claims 1 to 13, wherein the memory system has at least one dedicated memory area associated with a data producer device, and the data stored in a given memory area comprises the data generated by the producer device associated with the dedicated memory area.

15. A shared data management method (1) implemented in a shared data management system for receiving frames with data from one or more producer devices (3P) and for transmitting reconstructed frames to one or more consumer devices (3C), the producer devices (3P) and the consumer devices (3C) being connected to said shared data management system by a communication network using a communication protocol, said shared data management system comprising a memory system (10) having a plurality of separate memories (101) forming a space of shared addresses, the frames being reconstructed using data stored in the memory system (10), The method includes storing in a target memory of the memory system (10) at least a portion of the data encapsulated in a frame received from a producer device, the method including, in response to the received frame: - determining whether a received frame is valid in time using the frame identifier; extracting data from the received frames; - for each data to be stored, calculating the address of the target based on a sample index associated with the data in the received frame; - Using the data information to determine whether the data is valid; The method further comprises storing the data in the target memory address if the data is valid.

Citation Information

Patent Citations

  • Cageot

    WO021974

  • Customizable file

    WO032750

  • WO05950

  • WO145382

  • Transmission message generating device and vehicle on-board transmission system

    WO2013080387A1