A first-in-first-out buffer and a method for buffering data in a receive channel of an intercom device

By configuring the parameters of the first-in-first-out (FIFO) buffer, the problem of high computational complexity in multi-channel data caching of in-phone communication devices was solved, thereby improving the system's reliability and processing efficiency.

CN115437600BActive Publication Date: 2026-06-26SHAANXI FENGHUO ELECTRONICS

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
SHAANXI FENGHUO ELECTRONICS
Filing Date
2022-08-31
Publication Date
2026-06-26

AI Technical Summary

Technical Problem

Existing intercom devices suffer from high computational complexity when processing multi-channel data caching, leading to reduced system reliability.

Method used

A first-in-first-out (FIFO) buffer is used, and the parameters BUF_SIZE, BUF_CACHE, CON_POP, CON_PUSH, POP_ENABLE, and FIFO_NULL are configured to achieve data caching and consistency processing.

Benefits of technology

This reduces the complexity of the machine communication software and improves the system's reliability and processing efficiency.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115437600B_ABST
    Figure CN115437600B_ABST
Patent Text Reader

Abstract

The application relates to the technical field of intercom equipment communication, in particular to a first-in first-out buffer and an intercom equipment receiving channel data buffering method. The first-in first-out buffer is used for realizing data buffering and consistency processing of the receiving channel of the intercom equipment, so that the software processing and operation complexity of the intercom equipment is reduced, the processing efficiency of the intercom equipment software is improved, and the reliability of the system is improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of communication technology for in-flight communication devices, specifically to a first-in-first-out (FIFO) buffer and a method for buffering data in the receiving channel of an in-flight communication device. Background Technology

[0002] As the central linking device of the entire aircraft communication system, the in-flight intercom system has the need to exchange data with a large number of external communication and navigation devices. Early communications were mainly based on analog signals, including navigation, alarms and various radio signals. The signals sent to the in-flight intercom were all analog audio. After receiving the signals, the in-flight intercom system first digitized them, then performed various processing, and finally converted the signals into analog audio output to complete the entire communication.

[0003] With technological advancements, digital communication has become mainstream. The analog signals previously received by receivers are gradually being replaced by digital signals. Furthermore, as practical needs increase, the number of devices that receivers need to interact with externally is also growing. Therefore, receiver software processing requires additional data caching and consistency handling for multiple channels. Traditional receiving channel processing methods create separate data processing buffers for each channel based on its data volume. This buffer creation is somewhat arbitrary and fails to meet uniformity requirements. While the complexity of the receiver software's processing logic is low when the number of receiving channels is small, it increases exponentially when the number of channels is large, making the receiver more prone to various call problems. Summary of the Invention

[0004] In view of the problems existing in the prior art, the purpose of this invention is to provide a first-in-first-out buffer and a method for buffering data in the receiving channel of an in-flight communication device.

[0005] To achieve the above objectives, the present invention employs the following technical solutions.

[0006] A first-in-first-out (FIFO) buffer configured with the following parameters:

[0007] BUF_SIZE: refers to the size of the data buffer, indicating the number of voice data packets the data buffer can store;

[0008] BUF_CACHE: refers to the bubbling depth of the data buffer, representing the minimum buffer depth that the data buffer is allowed to retrieve.

[0009] CON_POP: Represents the fetch pointer of the data buffer; the fetch pointer points to the address of the voice data packet to be fetched in the data buffer; the value range of CON_POP is [0,1,...,BUF_SIZE-1].

[0010] CON_PUSH: Represents the data buffer storage pointer; the storage pointer points to the address where the voice data packet will be stored in the data buffer; the value range of CON_PUSH is [0,1,...,BUF_SIZE-1].

[0011] For the fetch pointer CON_POP and the store pointer CON_PUSH, the same value corresponds to the same address in the data buffer.

[0012] POP_ENABLE: Indicates the data buffer retrieval permission flag; POP_ENABLE is given when the number of voice data packets stored in the data buffer is equal to the jitter reduction depth BUF_CACHE.

[0013] FIFO_NULL: Indicates the empty flag of the data buffer; FIFO_NULL is given when the data buffer is already empty.

[0014] Step 1: Initialize the first-in-first-out (FIFO) buffer parameters;

[0015] Step 2: The in-flight communication device receives and outputs voice data packets.

[0016] Step 3: The first-in-first-out buffer stores the voice data packets into the data buffer at the address pointed to by the pointer CON_PUSH;

[0017] Step 4: After the voice data packet is stored, when the storage pointer CON_PUSH is less than BUF_SIZE-1, the storage pointer CON_PUSH is incremented by one; when the storage pointer CON_PUSH is equal to BUF_SIZE-1, the storage pointer CON_PUSH is cleared to zero.

[0018] Step 5: When the number of voice data packets stored in the data buffer is less than the jitter reduction depth BUF_CACHE, continue to store voice data packets; when the number of voice data packets stored in the data buffer is equal to the jitter reduction depth BUF_CACHE, give the retrieval enable flag POP_ENABLE, perform the retrieval operation, and continuously retrieve voice data packets from the data buffer corresponding to the address pointed to by the retrieval pointer CON_POP until the data buffer is empty, give the empty flag FIFO_NULL, and stop the retrieval operation;

[0019] Whenever a voice data packet is retrieved, if the retrieval pointer CON_POP is less than BUF_SIZE-1, the retrieval pointer CON_POP is incremented by one; if the retrieval pointer CON_POP is equal to BUF_SIZE-1, the retrieval pointer CON_POP is cleared to zero.

[0020] Compared with the prior art, the beneficial effects of the present invention are as follows: by using a first-in-first-out buffer to achieve data caching and consistency processing of the receiving channel of the communication equipment, the complexity of the communication software processing is reduced, the processing efficiency of the communication equipment software is improved, and the reliability of the system is enhanced. Attached Figure Description

[0021] The present invention will now be described in further detail with reference to the accompanying drawings and specific embodiments.

[0022] Figure 1 This is a flowchart illustrating the data caching method of the present invention. Detailed Implementation

[0023] The embodiments of the present invention will be described in detail below with reference to examples. However, those skilled in the art will understand that the following examples are only for illustrating the present invention and should not be regarded as limiting the scope of the present invention.

[0024] A first-in-first-out (FIFO) buffer is configured with the following parameters:

[0025] BUF_SIZE: refers to the size of the data buffer, indicating the number of voice data packets the data buffer can store; the data buffer of the first-in-first-out buffer is used to store voice data packets, and the size of the data buffer can be configured according to the actual data volume of the receiving channel;

[0026] BUF_CACHE: This refers to the jitter depth of the data buffer, representing the minimum buffer depth allowed for data retrieval. It effectively prevents reception problems caused by unstable transmission at the sender. The depth can be configured according to actual usage. <BUF_SIZE;

[0027] CON_POP: Represents the fetch pointer of the data buffer; the fetch pointer points to the address of the voice data packet to be fetched in the data buffer; the value range of CON_POP is [0,1,...,BUF_SIZE-1].

[0028] CON_PUSH: Represents the data buffer storage pointer; the storage pointer points to the address where the voice data packet will be stored in the data buffer; the value range of CON_PUSH is [0,1,...,BUF_SIZE-1].

[0029] For the fetch pointer CON_POP and the store pointer CON_PUSH, the same value corresponds to the address in the same data buffer.

[0030] POP_ENABLE: This indicates the data buffer retrieval permission flag; when the number of voice data packets stored in the data buffer is equal to the jitter reduction depth BUF_CACHE, the retrieval permission flag POP_ENABLE is given, and the retrieval operation begins.

[0031] FIFO_NULL: Indicates the empty flag of the data buffer; when the data buffer is empty, the empty flag FIFO_NULL is given to prevent the retrieval operation and prevent invalid data from being read from the data buffer.

[0032] refer to Figure 1 A method for buffering data in the receiving channel of an intercom device, based on the aforementioned first-in-first-out (FIFO) buffer, wherein the output of the receiving channel of the intercom device is connected to the input of the FIFO buffer, includes the following steps:

[0033] Step 1: Initialize the first-in-first-out (FIFO) buffer parameters; configure the size of the data buffer according to the actual amount of data flowing through the receiving channel, and clear the store pointer CON_PUSH and the retrieve pointer CON_POP to zero respectively;

[0034] Step 2: The in-flight communication device receives and outputs voice data packets.

[0035] Step 3: The first-in-first-out buffer stores the voice data packets into the address pointed to by the pointer CON_PUSH in the data buffer.

[0036] Step 4: After the voice data packet is stored, when the storage pointer CON_PUSH is less than BUF_SIZE-1, the storage pointer CON_PUSH is incremented by one, pointing to the address of the next voice data packet to be stored; when the storage pointer CON_PUSH is equal to BUF_SIZE-1, the storage pointer CON_PUSH is cleared to zero, pointing to the address of the initial stored voice data packet.

[0037] Step 5: When the number of voice data packets stored in the data buffer is less than the jitter reduction depth BUF_CACHE, continue to store voice data packets; when the number of voice data packets stored in the data buffer is equal to the jitter reduction depth BUF_CACHE, give the retrieval permission flag POP_ENABLE, that is, when CON_PUSH-CON_POP=BUF_CACHE, perform the retrieval operation, continuously retrieve voice data packets from the data buffer corresponding to the address pointed to by the retrieval pointer CON_POP, until the data buffer is empty, give the empty flag FIFO_NULL, and stop the retrieval operation;

[0038] Whenever a voice data packet is retrieved, if the retrieval pointer CON_POP is less than BUF_SIZE-1, the retrieval pointer CON_POP is incremented by one, pointing to the address of the next voice data packet to be retrieved; if the retrieval pointer CON_POP is equal to BUF_SIZE-1, the retrieval pointer CON_POP is cleared to zero, pointing to the address of the initial voice data packet retrieved.

[0039] Furthermore, the number of first-in-first-out (FIFO) buffers is the same as the number of receive channels in the intercom system. When there are multiple receive channels, the input terminals of the FIFO buffers are connected one-to-one with the output terminals of the receive channels in the intercom system.

[0040] Although the present invention has been described in detail in this specification with general description and specific embodiments, some modifications or improvements can be made to it, which will be obvious to those skilled in the art. Therefore, all such modifications or improvements made without departing from the spirit of the present invention are within the scope of protection claimed by the present invention.

Claims

1. A first-in-first-out buffer for the receiving channel of an intercom device, characterized in that, The following parameters are configured: BUF_SIZE: refers to the size of the data buffer, indicating the number of voice data packets the data buffer can store; BUF_CACHE: refers to the jitter depth of the data buffer, representing the minimum buffer depth that the data buffer is allowed to retrieve. BUF_CACHE is less than BUF_SIZE, and is used to prevent reception problems caused by unstable transmission at the sending end. CON_POP: Represents the fetch pointer of the data buffer. The fetch pointer points to the address of the voice data packet to be fetched in the data buffer. The value range of CON_POP is [0,1,...,BUF_SIZE-1]. CON_PUSH: Represents the data buffer storage pointer. The storage pointer points to the address where the voice data packet will be stored in the data buffer. The value range of CON_PUSH is [0,1,...,BUF_SIZE-1]. For the fetch pointer CON_POP and the store pointer CON_PUSH, the same value corresponds to the same address in the data buffer. POP_ENABLE: This indicates the data buffer retrieval permission flag. The retrieval operation is controlled by checking whether the number of stored voice data packets has reached the jitter reduction depth BUF_CACHE. When the difference between CON_PUSH and CON_POP equals the jitter reduction depth BUF_CACHE, the retrieval permission flag POP_ENABLE is given, and the retrieval operation is executed. Voice data packets are continuously retrieved from the data buffer corresponding to the address pointed to by the pointer CON_POP until the data buffer is empty. FIFO_NULL: This indicates that the data buffer is empty. The FIFO_NULL flag is given when the data buffer is already empty.

2. A method for buffering data in the receiving channel of an intercom device, based on the first-in-first-out (FIFO) buffer as described in claim 1, wherein the output terminal of the receiving channel of the intercom device is connected to the input terminal of the FIFO buffer, characterized in that, Includes the following steps: Step 1: Initialize the first-in-first-out (FIFO) buffer parameters; Step 2: The in-flight communication device receives and outputs voice data packets. Step 3: The first-in-first-out buffer stores the voice data packets into the data buffer at the address pointed to by the pointer CON_PUSH; Step 4: After the voice data packet is stored, when the storage pointer CON_PUSH is less than BUF_SIZE-1, the storage pointer CON_PUSH is incremented by one; when the storage pointer CON_PUSH is equal to BUF_SIZE-1, the storage pointer CON_PUSH is cleared to zero. Step 5: Continue storing voice data packets when the number of voice data packets stored in the data buffer is less than the jitter reduction depth BUF_CACHE; When the number of voice data packets stored in the data buffer is equal to the jitter reduction depth BUF_CACHE, the retrieval enable flag POP_ENABLE is given, the retrieval operation is performed, and voice data packets are continuously retrieved from the data buffer corresponding to the address pointed to by the retrieval pointer CON_POP until the data buffer is empty. Then, the empty flag FIFO_NULL is given, and the retrieval operation stops. Whenever a voice data packet is retrieved, if the retrieval pointer CON_POP is less than BUF_SIZE-1, the retrieval pointer CON_POP is incremented by one; if the retrieval pointer CON_POP is equal to BUF_SIZE-1, the retrieval pointer CON_POP is cleared to zero.

3. The method for buffering incoming channel data in an in-flight communication device according to claim 2, characterized in that, The number of first-in-first-out (FIFO) buffers is the same as the number of receive channels in the intercom system.