Method, computer program, electronic storage medium and device for providing data

By retrieving and managing old data from the receive buffer memory during overflow situations, the method addresses resource limitations in communication systems, ensuring flexibility and data availability.

JP7648360B2Active Publication Date: 2025-03-18ROBERT BOSCH GMBH
View PDF 5 Cites 0 Cited by

Patent Information

Application Number
JP2020167580
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Priority Date
2019-10-04
Filing Date
2020-10-02
Publication Date
2025-03-18
Estimated Expiration
2040-10-02

AI Technical Summary

Technical Problem

Communication systems face challenges due to limited hardware resources, particularly in receive buffer memory, leading to overflow situations when data transmission exceeds data processing capacity.

Method used

The method involves retrieving old data from the receive buffer memory when an overflow occurs, freeing storage space to accommodate new data, and ensuring the retrieved data is managed by the transmitter, allowing for flexible handling of overflow situations.

Benefits of technology

This approach ensures that the latest data is always available for processing while allowing the communication system to respond flexibly to overflow situations, thereby increasing system flexibility and preventing data loss.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007648360000001
    Figure 0007648360000001
  • Figure 0007648360000002
    Figure 0007648360000002
  • Figure 0007648360000003
    Figure 0007648360000003
Patent Text Reader

Abstract

To provide a method, computer program, electronic storage medium, and device for providing data in a reception buffer memory.SOLUTION: A method 300 provided herein involves fetching (303) old data from a reception buffer memory when the reception buffer memory is overflowed (302) by storing (301) data to be provided in the reception buffer memory.SELECTED DRAWING: Figure 3
Need to check novelty before this filing date? Find Prior Art

Description

[Technical field]

[0001] The present invention comprises a method, computer program, electronic storage medium and apparatus for providing data in a communication system. [Background technology]

[0002] In communication systems in which a transmitter (producer) transmits data to one or more receivers (consumers), it is known to use data structures such as queues for the data transmission. Queues are typically implemented according to the "First In, First Out" (FIFO) or "Last In, First Out" (LIFO) principle.

[0003] A central problem in such communication systems is the limited hardware resources, for example in the form of memory or receive buffer memories.

[0004] This can lead to problems if an imbalance occurs between the amount of data transmitted (e.g. number of data packets) and the amount of data that can be received or processed. Such an imbalance can occur, for example, if a transmitter (manufacturer) transmits data (permanently) at a higher frequency than one of the receivers (consumers) can process it. In general, this is called an overflow situation.

[0005] One solution to handle an overflow situation is to discard the most recently sent data. An alternative solution is to discard the oldest unprocessed data in order to preserve the most recently sent data.

[0006] The choice of overflow strategy depends heavily on the fundamental conditions of the communication system and the requirements of the communication system.

[0007] Fault-tolerant systems are also known that have the ability to not completely fail in the event of a partial failure. Depending on the requirements, this requires, among other things, redundant storage of the most recent input data.

[0008] A possible implementation of a fault tolerant system includes an active part and a standby part that can immediately compensate for the active part if the active part fails.

[0009] In order to provide the most recent input data redundantly, the input data may be provided via a queue. In addition to storing the input data redundantly, a problem arises in that the input data must be stored in a synchronized manner.

[0010] Therefore, measures are needed to address limited resources. Summary of the Invention [Problem to be solved by the invention]

[0011] In view of this background, the present invention provides a method for providing data in a receiving buffer memory. [Means for solving the problem]

[0012] The method includes storing the data in a receive buffer memory.

[0013] This method is characterized by the step of retrieving old data from the receiving buffer memory when the receiving buffer memory overflows due to storage of received data.

[0014] A receiving buffer memory (English: Buffer) in the sense of the present invention can be understood as a data structure configured to receive data to be provided from a sender (manufacturer) and provide it to one or more receivers (consumers).

[0015] In the present invention, retrieval is understood to mean, on the one hand, freeing up the storage space in the receiving buffer memory occupied by the data to be retrieved and storing new data, and, on the other hand, the storing transmitter obtaining the data to be retrieved.

[0016] Both the release of storage space and the receipt of the data to be retrieved can be accomplished in a variety of ways, depending largely on the underlying requirements of the communications system being used.

[0017] A central significance of the invention is the aspect that after the extraction step, the extracted data are in the control domain (English: Scope) of the sender.

[0018] This method has the advantage that, by retrieving old, unprocessed data from the receiving buffer memory, on the one hand, the transmitter can always store the latest data in the receiving buffer memory, and on the other hand, the retrieved data is not lost but is in the transmitter's management domain, whereby the transmitter can react to data or existing overflow situations according to the requirements of the communication system. This ensures, on the one hand, that the latest data is always available for processing for one or more receivers, and, on the other hand, that the transmitter, and thus the communication system, can flexibly react to overflow situations. This advantageously increases the flexibility of the communication system.

[0019] According to one embodiment of the present invention, the old data is the oldest data in the receive buffer memory.

[0020] According to a further embodiment of the method of the invention, the receiving buffer memory is part of a shared storage means.

[0021] A shared memory means (English: Shared Memory) in the present invention can be understood as a memory means or part of a memory means that can be accessed in write or read mode by one or more subscribers (for example a communication system), for example one or more senders (manufacturers) and one or more receivers (consumers). In particular in communication systems with concurrent processes, access to a shared memory means must be managed so that inconsistent memory states do not occur.

[0022] The advantage of using a shared storage medium is that the data can be provided according to the so-called "zero copy" approach, i.e. the data transfer from sender to receiver does not require any copying of the data to be transmitted.

[0023] This can be achieved, for example, by a sender (manufacturer) first dragging (allocating) a storage medium to be shared into its management area and storing the data to be transmitted in the storage medium to be shared. Then, the sender releases the allocated part, and a receiver (consumer) drags the storage medium to be shared into its management area to further process the data stored there.

[0024] According to one embodiment of the inventive method, the receiving buffer memory is implemented as a ring buffer.

[0025] In the present invention, a ring buffer is understood to be a storage structure in which the memory is always set up to accommodate new data, such that when the capacity of the ring buffer is exhausted, the old data stored in the ring buffer, typically the oldest data, are overwritten by new data when new data is accommodated.

[0026] A further aspect of the invention is a computer program arranged to carry out all the steps of the method according to the invention.

[0027] A further aspect of the invention is an electronic storage medium having stored thereon a computer program according to the invention.

[0028] A further aspect of the invention is an apparatus arranged to carry out all the steps of the method according to the invention.

[0029] Hereinafter, an embodiment of the present invention will be described in detail with reference to the drawings. [Brief description of the drawings]

[0030] [Figure 1]1 is a schematic diagram of a communication system having a receive buffer memory implemented as a FIFO according to the prior art; [Diagram 2] 1 is a schematic diagram of a communication system having a receive buffer memory implemented as a FIFO in accordance with the present invention; [Diagram 3] 1 is a flow chart of one embodiment of a method according to the present invention. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0031] FIG. 1 is a schematic diagram of a communication system 1 having a receive buffer memory 101 implemented as a FIFO according to the prior art.

[0032] The communication system 1 comprises a transmitter 100, a receiving buffer memory 101 and a receiver 102. The transmitter 100 may for example be a sensor. Here, one can imagine an environmental sensor of an at least partially automated vehicle. The receiving buffer memory 101 is implemented according to a first-in, first-out (FIFO) queue in this embodiment. The receiver 102 may for example be an application. Here, one can imagine an operating method of an at least partially automated vehicle.

[0033] The upper part of Figure 1 shows the communication system 1 in a state where the receive buffer memory 101 is already filled with data 1, 2, 3, 4, and still has storage space to accommodate the newest data 5. That is, in the illustrated situation, the receive buffer memory 101 is not completely full. Storing the newest data 5 will not cause the receive buffer memory 101 to overflow.

[0034] The lower part of Figure 1 shows the communication system 1 in a state where the receive buffer memory 101 is already filled with data 1, 2, 3, 4, 5, 6, 7, 8, 9, and there is no more storage space to accommodate the latest data 10. That is, in the situation shown, the receive buffer memory 101 is completely full. Storing the latest data 10 would cause the receive buffer memory to overflow. Thus, an overflow situation has occurred.

[0035] According to the prior art, there are various measures to combat overflow situations: In the illustrated case, the transmitter 100 discards the latest data 10, which means that the receiver 102 is not able to process it anymore, since this data 10 is lost.

[0036] A solution not shown here could contemplate that the transmitter 100 blocks further data for transmission until the receiver 102 has removed enough data 1, 2, 3, 4, 5, 6, 7, 8, 9 from the receiving buffer memory 101 so that the latest data 10 can be stored in the receiving buffer memory 101. The drawback of this solution is that the transmitter 100 is blocked during the waiting time until the receiving buffer memory 101 has enough storage space, which has an impact on the communication system 1.

[0037] A further measure, not shown here, could contemplate that the receiving buffer memory 101 discards the old, unprocessed data 1, 2, 3, 4, 5, 6, 7, 8, 9, preferably the oldest, unprocessed data 1, thereby creating a storage area for accommodating the latest data 10. A drawback of this measure is that the receiver 102 cannot process all the data, especially the discarded data 1. Since the receiving buffer memory 101 discards the data 1, it cannot be processed elsewhere, for example even by another receiver not shown that has sufficient resources.

[0038] Furthermore, this measure requires that the management process of the receiving buffer memory 101 be independent of the transmitter 100 and the receiver 102. In a communication system 1 in which the receiving buffer memory 101 is realized using a shared storage means, the existence of an independent management process for managing the receiving buffer memory 101 is not ensured.

[0039] FIG. 2 is a schematic diagram of a communication system 1 having a receive buffer memory 101 implemented as a FIFO according to the present invention.

[0040] The communication system 1 comprises a transmitter 100, a receiving buffer memory 101 and a receiver 102. The transmitter 100 may for example be a sensor. Here, one can imagine an environmental sensor of an at least partially automated vehicle. The receiving buffer memory 101 is implemented according to a first-in, first-out (FIFO) queue in this embodiment. The receiver 102 may for example be an application. Here, one can imagine an operating method of an at least partially automated vehicle.

[0041] The upper part of Figure 2 shows the communication system 1 in a state where the receive buffer memory 101 is already filled with data 1, 2, 3, 4, 5, 6, 7, 8, 9 and there is no more storage space to accommodate the latest data 10. That is, in the situation shown, the receive buffer memory 101 is completely full. Storing the latest data 10 will completely fill the receive buffer memory 101. Storing the latest data 10 will cause the receive buffer memory to overflow. Thus, an overflow situation has occurred.

[0042] 2 shows a characteristic aspect of the present invention. When an overflow situation occurs, the oldest unprocessed data 1, 2, 3, 4, 5, 6, 7, 8, 9, in the illustrated case the oldest unprocessed data 1, is retrieved from the receive buffer memory 101 and supplied to the transmitter.

[0043] This step creates a storage area in the receiving buffer memory 101 for storing the latest data 10 on the one hand, and on the other hand supplies the retrieved data 1 to the transmitter 100. The transmitter 100 can now deal with this overflow situation flexibly and react according to the requirements of the communication system 1.

[0044] Possible responses include actively discarding the supplied data 1, retransmitting the data 1, adjusting the storage capacity of the receiving buffer memory 101, transferring the supplied data 1 to the receiving buffer memory of another receiver (not shown), or adjusting the frequency of the transmitter 100.

[0045] Overall, it allows a very flexible reaction to overflow situations, which increases the flexibility of the communication system 1 in which the method or aspect of the invention is used.

[0046] FIG. 3 shows a flow chart of one embodiment of a method 300 according to the present invention.

[0047] In step 301 , data 10 provided by a transmitter 100 is stored in a receiving buffer memory 101 of the communication system 1 .

[0048] In step 302, it is checked or detected whether storing 301 the data 10 in the receiving buffer memory 101 will cause an overflow situation, i.e., whether storing the data 10 to be provided will cause the receiving buffer memory 101 to overflow.

[0049] If no such condition occurs, then method 300 ends. Otherwise, the method continues at step 303.

[0050] In step 303 , the unprocessed data 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , i.e., the old data 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , are retrieved from the receiving buffer memory 101 .

Claims

1. A method (300) for providing data (10) in a receiving buffer memory (101), comprising the step of storing (301) data to be provided (10) in said receiving buffer memory (101), comprising: When the receiving buffer memory (101) overflows (302) due to the storage (301) of the data to be provided (10), old data (1, 2, 3, 4, 5, 6, 7, 8, 9) is retrieved (303) from the receiving buffer memory (101); supplying the extracted old data (1, 2, 3, 4, 5, 6, 7, 8, 9) to a transmitter (100) that is a source of the old data (1, 2, 3, 4, 5, 6, 7, 8, 9); 23. A method comprising:

2. 2. The method (300) of claim 1, wherein the oldest data (1, 2, 3, 4, 5, 6, 7, 8, 9) is the oldest data (1) in the receiving buffer memory (101).

3. The method (300) according to claim 1 or 2, wherein the receiving buffer memory (101) is part of a shared storage means.

4. The method (300) according to any one of claims 1 to 3, wherein said receiving buffer memory (101) is implemented as a ring buffer.

5. A computer program configured to perform all the steps of the method (300) according to any one of claims 1 to 4.

6. 6. An electronic storage medium having stored thereon the computer program of claim 5.

7. An apparatus configured to perform all the steps of the method (300) according to any one of claims 1 to 4.

Citation Information

Patent Citations

  • Method and apparatus for network packet capture distributed storage system

    JP2008526109A

  • HARQ buffer management and feedback design for wireless systems

    JP2012525786A

  • Data communications network for aircraft

    JP2015092337A

  • Using Inertial Sensors To Provide Smoothed Exposure And White Balance Adjustments For Video And Photographic Applications

    US20150222799A1

  • DSP bus monitoring apparatus and method

    US6618775B1