Satellite communication system, data processing method, device, medium and product
By introducing FreeRTOS queues and semaphore mechanisms into the satellite communication system, decoupling between layers is achieved, data processing and task scheduling are optimized, the problem of high inter-layer coupling in the existing system is solved, and the scalability and stability of the system are improved.
Patent Information
- Application Number
- CN202511566535.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-10-30
- Publication Date
- 2026-02-27
- Estimated Expiration
- 2045-10-30
AI Technical Summary
Existing satellite communication systems have high coupling between their functional layers and close interdependence, making it difficult to quickly adapt to changes in business needs. Furthermore, their low efficiency in multitasking results in poor system scalability and instability.
Employing a queue and semaphore mechanism based on FreeRTOS, data transmission is achieved through inter-layer queues between the physical layer, MAC layer, transport layer, and application layer, thus decoupling the data. By utilizing receive queues, send queues, buffer queues, and feedback queues, combined with task request queues and channel request queues, data processing and task scheduling are optimized.
It reduces interlayer coupling, improves the scalability and stability of satellite communication systems, simplifies system maintenance and upgrades, and enhances multitasking capabilities and data transmission reliability.
Smart Images

Figure CN121037477B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application relates to the technical field of satellite communication, and in particular to a satellite communication system, a data processing method, equipment, a medium and a product. BACKGROUND
[0002] With the continuous evolution of satellite communication systems, their functions have become increasingly complex and diversified, and now widely cover many fields such as data transmission, command control and remote sensing monitoring.
[0003] In existing satellite communication systems, the coupling degree between each functional layer is high, and the mutual dependence relationship is close. For example, the change of the physical layer signal processing mode may directly affect the channel allocation strategy of the media access control (MAC for short) layer, and then affect the data transmission control of the transmission layer. Moreover, due to the complexity of interlayer interaction, the addition of new functions often requires large-scale modification of multiple layers, which not only greatly limits the scalability of the satellite communication system, but also makes it difficult for the satellite communication system to quickly adapt to changing business needs.
[0004] Therefore, there is an urgent need for a satellite communication system, a data processing method, equipment, a medium and a product to solve the above problems. SUMMARY
[0005] In view of the problems existing in the prior art, the present application provides a satellite communication system, a data processing method, equipment, a medium and a product.
[0006] The present application provides a satellite communication system, comprising a physical layer, a MAC layer, a transmission layer and an application layer, wherein:
[0007] The physical layer comprises a receiving queue and a sending queue, for temporarily storing the received original signal data to the receiving queue through a radio frequency receiving module, and sending the target signal data temporarily stored in the sending queue to the MAC layer, wherein the target signal data is the original signal data after signal processing; the receiving queue receives the original signal data based on a first-in first-out manner;
[0008] The MAC layer is configured to send first signal check data to the transmission layer, wherein the first signal check data is the target signal data after data check processing by the MAC layer;
[0009] The transmission layer comprises a receiving buffer queue, configured to perform data reorganization processing and data check processing on the first signal check data, to obtain second signal check data, and temporarily store the second signal check data in the receiving buffer queue;
[0010] The application layer comprises a data receiving queue, which is used to store the second signal check data into the data receiving queue for calling by a corresponding application program after the second signal check data is obtained from the receiving buffer queue of the transport layer.
[0011] The physical layer, the MAC layer, the transport layer and the application layer are based on interlayer queues for data transmission.
[0012] According to the satellite communication system, the application layer further comprises a task request queue, which is used to store a received data request task into the task request queue, and determine a target data request task based on a preset scheduling condition corresponding to each data request task in the task request queue, and generate a task execution instruction corresponding to the target data request task, wherein the preset scheduling condition is obtained based on a task priority and system resources.
[0013] The transport layer further comprises a sending buffer queue, which is used to unpack and package target task data corresponding to the target data request task in the sending buffer queue to obtain a target data packet, and send the target data packet to the MAC layer, wherein the sending buffer queue is used to buffer task data sent by the application layer.
[0014] The MAC layer comprises a data transmission queue and a channel request queue, which is used to send the target data packet stored in the data transmission queue to the physical layer based on channel quality and data priority information after determining a physical channel corresponding to the target data packet received according to a physical channel occupation request sent by a satellite device and stored in the channel request queue.
[0015] The physical layer is further used to write the received target data packet into the sending queue, and send the target data packet in the sending queue through a radio frequency sending module.
[0016] According to the satellite communication system, the MAC layer further comprises a feedback queue, and the MAC layer is further used to store feedback information sent by the physical layer or a satellite device into the feedback queue, so as to adjust a channel allocation strategy and a data transmission mode according to the feedback information.
[0017] According to the satellite communication system provided by the application, the transmission layer further comprises a retransmission queue, and the transmission layer is further configured to, during the data recombination processing and the data check processing of the first signal check data, if it is determined that the first signal check data fails the data check processing, store the first signal check data in the retransmission queue to perform retransmission processing on the first signal check data.
[0018] According to the satellite communication system provided by the application, the interlayer queue comprises a plurality of interlayer uplink queues and a plurality of interlayer downlink queues, wherein:
[0019] The plurality of interlayer uplink queues are sequentially arranged between the physical layer and the MAC layer, between the MAC layer and the transmission layer, and between the transmission layer and the application layer, and are configured to transmit the data processed by each layer to the previous layer in the order from the physical layer, the MAC layer, the transmission layer to the application layer.
[0020] The plurality of interlayer downlink queues are sequentially arranged between the application layer and the transmission layer, between the transmission layer and the MAC layer, and between the MAC layer and the physical layer, and are configured to transmit the data processed by each layer to the next layer in the order from the application layer, the transmission layer, the MAC layer to the physical layer.
[0021] The plurality of interlayer uplink queues and the plurality of interlayer downlink queues are provided with corresponding preset queue depths.
[0022] According to the satellite communication system provided by the application, the synchronization operation of each interlayer queue between the physical layer, the MAC layer, the transmission layer and the application layer is performed based on the semaphore mechanism of FreeRTOS.
[0023] The application further provides a data processing method based on the above satellite communication system, comprising:
[0024] The received original signal data is temporarily stored in the receiving queue of the physical layer through the radio frequency receiving module, and the target signal data temporarily stored in the sending queue of the physical layer is sent to the MAC layer, wherein the target signal data is the original signal data after signal processing; the receiving queue receives the original signal data based on the first-in first-out mode.
[0025] The first signal check data is sent to the transmission layer, wherein the first signal check data is the target signal data after the data check processing by the MAC layer.
[0026] perform data reorganization processing and data check processing on the first signal check data to obtain second signal check data, and temporarily store the second signal check data in a receiving buffer queue of the transmission layer;
[0027] After the second signal check data is obtained from the receiving buffer queue of the transmission layer, the second signal check data is stored in a data receiving queue of an application layer for calling by a corresponding application program.
[0028] The physical layer, the MAC layer, the transmission layer and the application layer perform data transmission based on interlayer queues.
[0029] The application further provides an electronic device, including a memory, a processor, and a computer program stored in the memory and executable on the processor, and the processor implements the data processing method according to any one of the above when executing the program.
[0030] The application further provides a non-transitory computer readable storage medium, which stores a computer program, and the computer program is executable on a processor to implement the data processing method according to any one of the above.
[0031] The application further provides a computer program product, which includes a computer program, and the computer program is executable on a processor to implement the data processing method according to any one of the above.
[0032] The satellite communication system, the data processing method, the device, the medium and the product provided by the application process original and target signal data through the receiving queue and the sending queue of the physical layer, then send the target signal data to the transmission layer after the target signal data is checked by the MAC layer, temporarily store the data after the data is reorganized and checked by the transmission layer, and then obtain the data from the transmission layer through the application layer and store the data for calling. Since the data is transmitted between layers based on interlayer queues in the satellite communication system, the direct dependence between layers is reduced, the coupling degree between layers is reduced, the maintenance and upgrading difficulty of the satellite communication system is reduced, and the scalability is improved. BRIEF DESCRIPTION OF DRAWINGS
[0033] In order to more clearly illustrate the technical solutions in the application or the prior art, the following will briefly introduce the drawings needed to be used in the embodiments or the prior art description. Obviously, the drawings in the following description are some embodiments of the application, and those skilled in the art can also obtain other drawings according to these drawings without any creative effort.
[0034] Figure 1 The structure diagram of the satellite communication system provided by the application is shown in the figure.
[0035] Figure 2A workflow schematic diagram of the feedback queue based on the MAC layer provided by the present application is provided.
[0036] Figure 3 A schematic diagram of the inter-layer queue interaction provided by the present application is provided.
[0037] Figure 4 A flow schematic diagram of the data processing method provided by the present application is provided.
[0038] Figure 5 A structural schematic diagram of the electronic device provided by the present application is provided. DETAILED DESCRIPTION
[0039] In order to make the objectives, technical solutions and advantages of the present application clearer, the technical solutions in the present application will be described clearly and completely below with reference to the drawings in the present application. Obviously, the described embodiments are some embodiments of the present application, rather than all the embodiments. Based on the embodiments in the present application, all other embodiments obtained by those skilled in the art without creative labor fall within the protection scope of the present application.
[0040] In the existing satellite communication system, the coupling degree between each functional layer is high, and the mutual dependence is serious. Moreover, due to the complexity of inter-layer interaction, the addition of new functions often needs large-scale modification of multiple layers, which greatly limits the scalability of the system and makes it difficult to quickly adapt to the changing business requirements. In addition, in terms of multi-task processing, the existing satellite communication system lacks efficient task scheduling and data buffering mechanisms, and the tasks and data generated by different layers cannot be processed in order, which easily leads to task backlog and data loss, seriously affecting the stability and reliability of the satellite communication system.
[0041] In view of the problems existing in the prior art, the present application provides a satellite communication system based on a queue, which introduces a small real-time operating system kernel (FreeRTOS) queue and a semaphore mechanism to solve the problems of high inter-layer coupling, poor scalability and low multi-task processing efficiency of the existing satellite communication system, realize the decoupling between each functional layer, and improve the stability, scalability and multi-task processing capability of the system.
[0042] Figure 1 A structural schematic diagram of the satellite communication system provided by the present application is shown in FIG. 1, the present application provides a satellite communication system, which comprises a physical layer 101, a MAC layer 102, a transport layer 103 and an application layer 104, wherein: Figure 1
[0043] The physical layer 101 comprises a receiving queue and a sending queue, used for temporarily storing the received original signal data to the receiving queue through a radio frequency receiving module, and sending target signal data temporarily stored in the sending queue to the MAC layer 102, wherein the target signal data is original signal data after signal processing; the receiving queue receives the original signal data based on a first-in first-out manner;
[0044] The MAC layer 102 is used for sending first signal check data to the transport layer 103, wherein the first signal check data is the target signal data after data check processing by the MAC layer 102;
[0045] The transport layer 103 comprises a receiving buffer queue, used for performing data recombination processing and data check processing on the first signal check data, obtaining second signal check data, and temporarily storing the second signal check data in the receiving buffer queue;
[0046] The application layer 104 comprises a data receiving queue, used for storing the second signal check data to the data receiving queue after obtaining the second signal check data from the receiving buffer queue of the transport layer, for calling by a corresponding application program.
[0047] Wherein, the physical layer 101, the MAC layer 102, the transport layer 103 and the application layer 104 are based on interlayer queues for data transmission.
[0048] In the application, a satellite communication system is constructed based on a ZYNQ chip or an MPSoC hardware platform, and a FreeRTOS real-time operating system is used for task management and scheduling, wherein the system software part is divided into a physical layer, a MAC layer, a transport layer and an application layer, and data interaction and synchronization are performed between the layers through queues and semaphores; meanwhile, a plurality of functional modules, such as a data acquisition module and a signal processing module, are arranged in the satellite communication system, and are respectively responsible for different service functions.
[0049] Specifically, the physical layer 101, as the lowest layer of the satellite communication system, directly interacts with hardware (such as a radio frequency front end) and is responsible for the reception and transmission of raw signal data. The physical layer 101 contains two key components, a receiving queue and a sending queue. The receiving queue adopts a first-in first-out (FIFO) manner to ensure that the raw signal data is temporarily stored in the order of reception. When the radio frequency receiving module receives raw signal data, these data are immediately placed in the receiving queue, waiting for the signal processing module to perform demodulation, decoding, and other processing. The target signal data processed, i.e., the raw signal data after a series of signal processing operations, are placed in the sending queue. The radio frequency transmitting module reads these data from the sending queue and transmits them to the MAC layer 102. Through the design of the receiving queue and the sending queue, the physical layer 101 realizes the asynchronization of data processing, improves the processing efficiency, and at the same time guarantees the orderliness of data processing.
[0050] Further, the MAC layer 102 is responsible for channel management and data verification, receives target signal data from the physical layer 101, and performs data verification processing to generate first signal verification data. These data are then transmitted to the transport layer 103 to provide reliable protection for subsequent data transmission. In the present application, the MAC layer 102 allocates and schedules channel resources through mechanisms such as a channel request queue, a data transmission queue, and a feedback queue, to ensure efficient and accurate data transmission; at the same time, the MAC layer 102 also schedules data in the transmission queue according to channel quality and data priority to optimize data transmission performance.
[0051] Further, the transport layer 103 is responsible for reliable data transmission and contains a receiving buffer queue for temporarily storing the first signal verification data received from the MAC layer 102. In the present application, the transport layer 103 recombines and re-verifies these data (i.e., the first signal verification data) to generate second signal verification data and places them in the receiving buffer queue; and even when the network condition is poor or errors occur during data transmission, the transport layer 103 can ensure the integrity and accuracy of the data through the retransmission mechanism.
[0052] In the present application, the transport layer 103 also buffers data sent by the application layer 104 through a sending buffer queue and performs operations such as segmentation and encapsulation on the data according to network conditions and data transmission protocols; at the same time, the transport layer 103 also recombines and verifies the received data, and if the verification fails, the data are placed in the retransmission queue for retransmission.
[0053] Further, the application layer 104 is responsible for interacting with the user terminal or other application programs, including a data receiving queue for obtaining second signal check data from the receiving buffer queue of the transport layer 103 and storing it for the corresponding application program to call. In the present application, the application layer 104 also receives task requests of the user terminal or other application programs through a task request queue, such as data acquisition tasks, instruction sending tasks, etc. The application layer task scheduler will schedule and execute the tasks according to the task priority and system resource situation; at the same time, the application layer 104 will obtain the processed data from the data receiving queue for the application program to use.
[0054] In the present application, the satellite communication system transmits data through the interlayer queue, the responsibilities of each layer are clear, and they are independent and cooperative with each other, and together constitute an efficient and stable communication system. The decoupled structure makes the satellite communication system easy to maintain and upgrade, and also improves the scalability and adaptability of the system.
[0055] The satellite communication system provided by the present application processes original and target signal data through the receiving queue and the sending queue of the physical layer, and then sends the target signal data checked by the MAC layer to the transport layer, temporarily stores the data reorganized and checked by the transport layer, and obtains the data from the transport layer through the application layer and stores it for calling. Since the data is transmitted between layers based on the interlayer queue in the satellite communication system, combined with the queue and semaphore mechanism, the direct dependence between layers is reduced, the coupling degree between layers is reduced, the difficulty of maintaining and upgrading the satellite communication system is reduced, and the scalability is improved.
[0056] On the basis of the above-mentioned embodiment, the application layer further includes a task request queue for storing the received data request task in the task request queue, and determining a target data request task based on a preset scheduling condition corresponding to each data request task in the task request queue, and generating a task execution instruction corresponding to the target data request task, wherein the preset scheduling condition is constructed based on the task priority and the system resource;
[0057] The transport layer further includes a sending buffer queue for unpacking and packaging the corresponding target task data in the sending buffer queue according to the target data request task to obtain a target data packet, and sending the target data packet to the MAC layer, wherein the sending buffer queue is used to buffer the task data sent by the application layer;
[0058] The MAC layer comprises a data transmission queue and a channel request queue, and is configured to transmit a target data packet stored in the data transmission queue to the physical layer according to a physical channel occupation request sent by a satellite device and stored in the channel request queue, and according to a channel quality and data priority information, after determining a physical channel corresponding to the target data packet according to the physical channel occupation request.
[0059] The physical layer is further configured to write the target data packet into the sending queue, and transmit the target data packet in the sending queue through a radio frequency sending module.
[0060] In the application, the task request queue in the application layer is configured to store the received data request tasks, which can come from a user end or other application programs, such as data acquisition tasks and instruction sending tasks.
[0061] In the application, the preset scheduling condition is constructed based on a task priority and system resources, for example, a high-priority task can be executed preferentially, or multiple tasks can be executed simultaneously when the system resources are sufficient.
[0062] The sending buffer queue in the transmission layer is configured to buffer the task data sent by the application layer, which can be a file to be sent, an instruction or other types of data.
[0063] In the MAC layer, the channel request queue is used to store the physical channel occupation requests sent by the satellite device, which come from different data sources or applications to obtain the use right of the physical channel for data transmission. In the present application, the MAC layer determines the physical channel corresponding to the target data packet received according to the requests in the channel request queue and the current state of the physical channel (such as whether it is idle, channel quality, etc.). Then, based on the channel quality and data priority information, the MAC layer takes out the target data packet stored in the data transmission queue and sends it to the physical layer. In this process, the MAC layer may use a preset scheduling algorithm to optimize the use efficiency of the channel, for example, to preferentially send high-priority data or to select a channel with better channel quality for transmission.
[0064] Further, after the physical layer receives the target data packet from the MAC layer, it writes it into the sending queue. Then, through the radio frequency sending module, the target data packet in the sending queue is sent. The radio frequency sending module converts the digital signal into a radio frequency signal and radiates it to space through an antenna to realize wireless transmission of data. In the present application, the complete process from initiating a data request task from the application layer to the transmission layer, to data packaging and encapsulation, to channel allocation and data sending by the MAC layer, and finally to the actual transmission of data by the physical layer, is realized based on the interlayer queue in the satellite communication system.
[0065] On the basis of the above-mentioned embodiments, the MAC layer further comprises a feedback queue, and the MAC layer is further used to store the feedback information sent by the physical layer or the satellite device into the feedback queue, so as to adjust the channel allocation strategy and the data transmission mode according to the feedback information.
[0066] Figure 2 The working flow diagram of the feedback queue based on the MAC layer provided by the present application is shown in Figure 2 In the present application, the physical layer or the satellite device of the satellite communication system sends feedback information, which includes channel state, signal quality, and transmission success rate, etc. The MAC layer is responsible for receiving these feedback information and storing it in a special feedback queue. The feedback queue is a buffer area for temporarily storing feedback information, which ensures that the feedback information will not be lost and can be processed in a certain order. By storing the feedback information in the feedback queue, the MAC layer can access these information at any time when needed for subsequent analysis and processing.
[0067] In the present application, the MAC layer regularly checks the information in the feedback queue and analyzes the changes in the channel state. According to the analysis results, the MAC layer can adjust the channel allocation strategy, for example, selecting a channel with better signal quality for data transmission, or adjusting the channel allocation between different users to optimize the overall transmission efficiency. At the same time, the MAC layer can also adjust the data transmission mode according to the feedback information, such as changing the modulation mode, coding rate or transmission power, etc., to adapt to the current channel conditions.
[0068] In the present application, when the MAC layer makes adjustment decisions on channel allocation strategy and data transmission mode based on feedback information, these adjustment decisions will be implemented in the actual communication process. Through this dynamic adjustment mechanism, the MAC layer can ensure that the satellite communication system maintains high efficiency and stable transmission performance under different channel conditions, thereby optimizing the overall performance of the communication system.
[0069] On the basis of the above embodiment, the transmission layer further includes a retransmission queue, and the transmission layer is further configured to, during the data recombination processing and data check processing of the first signal check data, if it is determined that the first signal check data fails the data check processing, store the first signal check data in the retransmission queue for retransmission processing of the first signal check data.
[0070] In the present application, the transmission layer is responsible for reliable data transmission in the satellite communication system, ensuring that data is accurately transmitted from the sender to the receiver, even when the network conditions are poor or errors occur during data transmission. In the present application, the first signal check data is data processed by the MAC layer and sent to the transmission layer. These data have undergone certain check processing before transmission, but the transmission layer still needs to perform further data recombination and data check processing to ensure the integrity and accuracy of the data.
[0071] Data recombination processing refers to recombining the received data segments in the correct order to form complete data packets; data check processing checks the integrity of the data through a specific algorithm to ensure that the data has not been corrupted or lost during transmission. In the present application, if it is found that the first signal check data fails the check (i.e., the data has errors or is lost) during the data check processing, the transmission layer will store these data in the retransmission queue. The retransmission queue is a buffer specifically used to store data that needs to be retransmitted. When data check fails, placing these data in the retransmission queue ensures that they will not be lost and can be retransmitted at the appropriate time.
[0072] In the present application, when data is put into the retransmission queue, the transport layer is responsible for retransmission processing at the appropriate time. The retransmission processing includes re-sending the entire data packet or only sending the error part, depending on the design and implementation of the satellite communication system. Through retransmission processing, the transport layer can ensure reliable transmission of data even in poor network conditions or errors during data transmission, improving the stability and reliability of the satellite communication system.
[0073] On the basis of the above-mentioned embodiments, the inter-layer queue comprises a plurality of inter-layer uplink queues and a plurality of inter-layer downlink queues, wherein:
[0074] The plurality of inter-layer uplink queues are sequentially arranged between the physical layer and the MAC layer, between the MAC layer and the transport layer, and between the transport layer and the application layer, for transmitting the data processed by each layer to the previous layer in the order from the physical layer, the MAC layer, the transport layer to the application layer;
[0075] The plurality of inter-layer downlink queues are sequentially arranged between the application layer and the transport layer, between the transport layer and the MAC layer, and between the MAC layer and the physical layer, for transmitting the data processed by each layer to the next layer in the order from the application layer, the transport layer, the MAC layer to the physical layer;
[0076] Among them, the plurality of inter-layer uplink queues and the plurality of inter-layer downlink queues are provided with corresponding preset queue depths.
[0077] Figure 3 The schematic diagram of inter-layer queue interaction provided by the present application can refer to Figure 3 As shown in the figure, the inter-layer uplink queue is used to realize the data transmission from the lower layer to the upper layer. These queues are sequentially arranged between the physical layer and the MAC layer, between the MAC layer and the transport layer, and between the transport layer and the application layer. The signal data processed by the physical layer is transmitted to the MAC layer through the uplink queue, the data packet processed by the MAC layer is transmitted to the transport layer through the uplink queue, and the data processed by the transport layer is transmitted to the application layer. These uplink queues adopt the form of message queue to ensure the orderliness and reliability of data transmission between layers.
[0078] In the present application, in order to avoid data loss and queue overflow, a suitable queue depth is set, and when the queue is full, a certain processing strategy is adopted, such as discarding low-priority data or waiting for the queue to have free space.
[0079] The interlayer downlink queue is used for sending control instructions and configuration information from an upper layer to a lower layer, and the queues are sequentially arranged between an application layer and a transport layer, between the transport layer and a MAC layer, and between the MAC layer and a physical layer. The application layer sends data transmission configuration instructions to the transport layer through the downlink queue, the transport layer adjusts the sending strategy according to the instructions, the transport layer sends data transmission requirements to the MAC layer through the downlink queue, and guides the MAC layer to perform data transmission. The interlayer downlink queue also uses a message queue, and synchronization between layers is realized through a semaphore mechanism to ensure that the lower layer can process instructions in time after receiving the instructions.
[0080] On the basis of the above-mentioned embodiments, the synchronization operation of each interlayer queue between the physical layer, the MAC layer, the transport layer and the application layer is performed based on the semaphore mechanism of FreeRTOS.
[0081] In a satellite communication system, data needs to be transmitted between different layers, and interlayer queues (including uplink queues and downlink queues) are used to temporarily store the data to ensure the orderliness and reliability of data transmission between layers. FreeRTOS is a real-time operating system kernel that provides a variety of synchronization mechanisms, among which the semaphore can be used to control access to shared resources or to notify events.
[0082] In the present application, the semaphore mechanism of FreeRTOS is used to realize the synchronization of interlayer queue operations. When the lower layer writes data into the interlayer uplink queue, a semaphore is sent to notify the upper layer that new data has arrived. The upper layer acquires the semaphore before reading data from the uplink queue to ensure the integrity and consistency of the data. For the interlayer downlink queue, the upper layer sends a semaphore after writing instructions to notify the lower layer, and the lower layer acquires the semaphore before processing the instructions to avoid data conflicts and incorrect operations.
[0083] The present application sets interlayer queues (including uplink queues and downlink queues) in a multi-layer satellite communication system, not only ensuring the orderliness and reliability of data transmission between layers, but also realizing the synchronization between layers through the semaphore mechanism, thereby ensuring the stability and efficiency of the entire communication system, and the preset queue depth and management strategy further enhance the robustness and adaptability of the system.
[0084] Figure 4 The flowchart of the data processing method provided by the present application is shown in Figure 4 As shown in the flowchart, the present application provides a data processing method based on the satellite communication system described in the above-mentioned embodiments, which comprises:
[0085] In step 401, the received original signal data is temporarily stored in the receiving queue of the physical layer through the radio frequency receiving module, and the target signal data temporarily stored in the sending queue of the physical layer is sent to the MAC layer, wherein the target signal data is the original signal data after signal processing; the receiving queue receives the original signal data based on the first-in first-out mode;
[0086] In step 402, the first signal check data is sent to the transport layer, wherein the first signal check data is the target signal data after data check processing by the MAC layer;
[0087] In step 403, the first signal check data is subjected to data reorganization processing and data check processing to obtain second signal check data, and the second signal check data is temporarily stored in the receiving buffer queue of the transport layer;
[0088] In step 404, after the second signal check data is obtained from the receiving buffer queue of the transport layer, the second signal check data is stored in the data receiving queue of the application layer for calling by the corresponding application program;
[0089] Wherein, the data transmission between the physical layer, the MAC layer, the transport layer and the application layer is based on the interlayer queue.
[0090] In the application, the ZYNQ chip or MPSoC hardware platform is initialized, the processor parameters are configured, and the peripheral interface is initialized; and the FreeRTOS operating system is started, and the tasks and queues of each layer are created, including the receiving queue and the sending queue of the physical layer, the channel request queue, the data transmission queue and the feedback queue of the MAC layer. At the same time, the semaphores are initialized for synchronization of interlayer queue operation.
[0091] The satellite receives the original signal data from other satellites or ground stations through the radio frequency receiving module, and then the received original signal data is temporarily stored in the receiving queue of the physical layer, and this receiving queue works based on the first-in first-out (FIFO) mode to ensure that the data is processed in the order of reception. At the same time, the physical layer also processes the previously received signal data, and after demodulation, decoding and other signal processing, the target signal data (i.e. the processed original signal data) is put into the sending queue of the physical layer.
[0092] Further, the physical layer sends the target signal data in the sending queue to the MAC layer for further processing. After receiving the target signal data sent by the physical layer, the MAC layer performs data check processing to ensure the integrity and accuracy of the data. The data checked through the check is the first signal check data, which is then sent to the transport layer for further processing.
[0093] Further, after receiving the first signal check data, the transport layer performs data recombination processing and data check processing. The data recombination is to recombine the segmented data into a complete data packet, and the data check is to reconfirm the integrity of the data. The data after recombination and check is second signal check data, which is then stored in the receiving buffer queue of the transport layer.
[0094] In the application, the application layer obtains the second signal check data from the receiving buffer queue of the transport layer and stores it in the data receiving queue of the application layer. The second signal check data stored in the data receiving queue can be called and used by the corresponding application program to complete the entire data receiving and processing flow.
[0095] In the application, the data transmission between the physical layer, the MAC layer, the transport layer and the application layer is based on the interlayer queue, which ensures the order and reliability of data transmission between layers. The operation of the interlayer queue is ensured by the synchronization mechanism such as semaphore to ensure the integrity and consistency of the data.
[0096] The application uses the queue and semaphore mechanism to make the data interaction between the functional layers only through the queue, reduces the direct dependence, reduces the interlayer coupling degree, and when a layer is upgraded or modified, the influence on other layers is minimal, greatly reducing the difficulty of system maintenance and upgrading.
[0097] Moreover, the layered decoupling structure of the satellite communication system makes it easier to add new functions. Only the functional module needs to be added in the corresponding layer, and the queue operation and semaphore control of the layer need to be adjusted to realize the integration of new functions without large-scale modification of the entire satellite communication system, improving the scalability of the system. At the same time, the queue design in each layer realizes the buffering and asynchronous processing of data and tasks, combined with the task scheduling mechanism of FreeRTOS, so that the satellite communication system can efficiently process multiple concurrent tasks, reduce task backlog and data loss, and improve the stability and reliability of the system.
[0098] In another embodiment, taking the application layer initiating a data collection task as an example, the application layer initiates a data collection task and puts the task request into the task request queue of the application layer to temporarily store the task request. Further, the application layer task scheduler takes out the task from the task request queue and executes it according to the priority of the task and the system resource situation. The task scheduler ensures that high-priority tasks can be processed first, while reasonably utilizing system resources.
[0099] In the application layer task execution process, the application layer sends data acquisition instructions to the transport layer, which are transmitted to the transport layer through the interlayer downlink queue, which is used to send control instructions and configuration information from the upper layer to the lower layer. After receiving the data acquisition instructions sent by the application layer, the transport layer takes out the previously prepared acquisition data from the sending buffer queue, which is used to temporarily store the data to be sent.
[0100] Further, the transport layer segments and encapsulates the acquired acquisition data for subsequent transmission. In the present application, segmentation is to adapt to the limitations of network transmission, and encapsulation is to add necessary control information and check code. The processed data packet is transmitted to the MAC layer through the interlayer downlink queue, and then the MAC layer obtains the data packet transmitted by the transport layer from the data packet queue, which is used to temporarily store the data packet to be processed.
[0101] Further, the MAC layer puts the obtained data packet into the data transmission queue to prepare for data transmission, and the data transmission queue is used to temporarily store the data packet to be sent. At the same time, the MAC layer writes the data packet to the sending queue of the physical layer for subsequent processing by the physical layer.
[0102] Further, the physical layer reads the data packet written by the MAC layer from the sending queue, and the sending queue is used to temporarily store the data packet to be sent. Finally, the physical layer sends the read data packet through the radio frequency transmitting module, which is responsible for converting digital signals into radio frequency signals and sending them out through the antenna. The present application ensures the orderliness and reliability of data transmission between layers through interlayer queues and synchronization mechanisms.
[0103] The data processing method provided by the present application processes original and target signal data through the receiving queue and the sending queue of the physical layer, and then sends the target signal data to the transport layer after being checked by the MAC layer. The data is temporarily stored after being reorganized and checked by the transport layer, and then acquired from the transport layer by the application layer and stored for calling. Since the data is transmitted between layers based on interlayer queues in the satellite communication system, the direct dependence between layers is reduced by combining the queue and semaphore mechanism, the interlayer coupling degree is reduced, the maintenance and upgrading difficulty of the satellite communication system is reduced, and the scalability is improved.
[0104] Figure 5 The structure diagram of the electronic device provided by the present application is as follows, Figure 5As shown, the electronic device can include a processor 501, a communications interface 502, a memory 503 and a communications bus 504, wherein the processor 501, the communications interface 502 and the memory 503 complete mutual communication through the communications bus 504. The processor 501 can invoke the logical instructions in the memory 503 to execute a data processing method, which includes: temporarily storing the received original signal data in a receiving queue of a physical layer through a radio frequency receiving module, and sending target signal data temporarily stored in a sending queue of the physical layer to a MAC layer, wherein the target signal data is original signal data after signal processing; the receiving queue receives the original signal data based on a first-in first-out manner; sending first signal check data to a transport layer, wherein the first signal check data is the target signal data after data check processing by the MAC layer; performing data reorganization processing and data check processing on the first signal check data to obtain second signal check data, and temporarily storing the second signal check data in a receiving cache queue of the transport layer; after obtaining the second signal check data from the receiving cache queue of the transport layer, storing the second signal check data to a data receiving queue of an application layer for calling by a corresponding application program; wherein the physical layer, the MAC layer, the transport layer and the application layer perform data transmission based on interlayer queues.
[0105] In addition, the logical instructions in the memory 503 described above can be implemented in the form of a software functional unit and sold or used as an independent product, which can be stored in a computer readable storage medium. Based on such understanding, the technical solutions of the present application essentially or the part that contributes to the prior art or part of the technical solutions can be embodied in the form of a software product, and the computer software product is stored in a storage medium, including a plurality of instructions to make a computer device (which can be a personal computer, a server, or a network device, etc.) execute all or part of the steps of the method described in various embodiments of the present application. The foregoing storage medium includes: a U disk, a mobile hard disk, a read-only memory (ROM, Read-Only Memory), a random access memory (RAM, Random Access Memory), a magnetic disk or an optical disk, and various program code storage media.
[0106] In another aspect, the present application also provides a computer program product, which comprises a computer program stored on a non-transitory computer-readable storage medium, and the computer program comprises program instructions, when the program instructions are executed by a computer, the computer can execute the data processing method provided by the above-mentioned method, which comprises: temporarily storing, by a radio frequency receiving module, received original signal data into a receiving queue of a physical layer, and sending target signal data temporarily stored in a sending queue of the physical layer to a MAC layer, wherein the target signal data is original signal data after signal processing; the receiving queue receives the original signal data based on a first-in first-out manner; sending first signal check data to a transport layer, wherein the first signal check data is the target signal data after data check processing by the MAC layer; performing data reorganization processing and data check processing on the first signal check data to obtain second signal check data, and temporarily storing the second signal check data in a receiving cache queue of the transport layer; after obtaining the second signal check data from the receiving cache queue of the transport layer, storing the second signal check data to a data receiving queue of an application layer for calling by a corresponding application program; wherein data transmission is performed between the physical layer, the MAC layer, the transport layer and the application layer based on interlayer queues.
[0107] In still another aspect, the present application also provides a non-transitory computer-readable storage medium, which stores a computer program, and the computer program is executed by a processor to implement the data processing method provided by the above-mentioned embodiments, which comprises: temporarily storing, by a radio frequency receiving module, received original signal data into a receiving queue of a physical layer, and sending target signal data temporarily stored in a sending queue of the physical layer to a MAC layer, wherein the target signal data is original signal data after signal processing; the receiving queue receives the original signal data based on a first-in first-out manner; sending first signal check data to a transport layer, wherein the first signal check data is the target signal data after data check processing by the MAC layer; performing data reorganization processing and data check processing on the first signal check data to obtain second signal check data, and temporarily storing the second signal check data in a receiving cache queue of the transport layer; after obtaining the second signal check data from the receiving cache queue of the transport layer, storing the second signal check data to a data receiving queue of an application layer for calling by a corresponding application program; wherein data transmission is performed between the physical layer, the MAC layer, the transport layer and the application layer based on interlayer queues.
[0108] The device embodiments described above are merely illustrative, wherein the units described as separate components can or can not be physically separate, and the components displayed as units can or can not be physical units, i.e., can be located in one place, or can be distributed to multiple network units. Part or all of the modules can be selected to achieve the purposes of the embodiments according to actual needs. Those skilled in the art can understand and implement without creative labor.
[0109] Through the description of the above embodiments, those skilled in the art can clearly understand that the embodiments can be realized by means of software and the necessary general hardware platform, and of course can also be realized by hardware. Based on such understanding, the above technical solutions can be embodied in the form of a software product, which can be stored in a computer readable storage medium, such as a ROM / RAM, a magnetic disk, an optical disk, etc., and includes a number of instructions to make a computer device (which can be a personal computer, a server, or a network device, etc.) execute the methods described in each embodiment or some parts of the embodiments.
[0110] Finally, it should be noted that: the above embodiments are only used to illustrate the technical solutions of the present application, and not to limit them; although the present application has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that: it can still modify the technical solutions recorded in the foregoing embodiments, or make equivalent replacement to some technical features; and these modifications or replacements do not make the essence of the corresponding technical solutions deviate from the spirit and scope of the technical solutions of the embodiments of the present application.
Claims
1. A satellite communication system, characterized by The physical layer, the MAC layer, the transport layer and the application layer are included, wherein: The physical layer includes a receiving queue and a sending queue, which are used to temporarily store the received original signal data in the receiving queue through a radio frequency receiving module, and send the target signal data temporarily stored in the sending queue to the MAC layer, wherein the target signal data is the original signal data after signal processing; the receiving queue receives the original signal data based on a first-in-first-out manner; The MAC layer is used to send first signal check data to the transport layer, wherein the first signal check data is the target signal data after data check processing by the MAC layer; The transport layer includes a receiving buffer queue, which is used to perform data reorganization processing and data check processing on the first signal check data, obtain second signal check data, and temporarily store the second signal check data in the receiving buffer queue; The application layer includes a data receiving queue, which is used to store the second signal check data in the data receiving queue after obtaining the second signal check data from the receiving buffer queue of the transport layer, for calling by a corresponding application program; The physical layer, the MAC layer, the transport layer and the application layer are based on interlayer queues for data transmission; The interlayer queue includes a plurality of interlayer uplink queues and a plurality of interlayer downlink queues, wherein: The plurality of interlayer uplink queues are sequentially arranged between the physical layer and the MAC layer, between the MAC layer and the transport layer, and between the transport layer and the application layer, and are used to transmit data processed by each layer to the previous layer in the order from the physical layer, the MAC layer, the transport layer to the application layer; The plurality of interlayer downlink queues are sequentially arranged between the application layer and the transport layer, between the transport layer and the MAC layer, and between the MAC layer and the physical layer, and are used to transmit data processed by each layer to the next layer in the order from the application layer, the transport layer, the MAC layer to the physical layer; The plurality of interlayer uplink queues and the plurality of interlayer downlink queues are provided with corresponding preset queue depths; The synchronization operation of each interlayer queue between the physical layer, the MAC layer, the transport layer and the application layer is executed based on the semaphore mechanism of FreeRTOS.
2. The satellite communication system of claim 1, wherein, The application layer further includes a task request queue, which is used to store the received data request task in the task request queue, and determine a target data request task based on a preset scheduling condition corresponding to each data request task in the task request queue, and generate a task execution instruction corresponding to the target data request task, wherein the preset scheduling condition is constructed based on task priority and system resources; The transmission layer further comprises a sending cache queue, configured to package target task data corresponding to the target data request task in the sending cache queue to obtain a target data packet, and send the target data packet to the MAC layer, wherein the sending cache queue is configured to cache task data sent by the application layer; The MAC layer comprises a data transmission queue and a channel request queue, configured to send the target data packet stored in the data transmission queue to the physical layer based on channel quality and data priority information after determining a physical channel corresponding to the target data packet according to a physical channel occupation request sent by the satellite device and stored in the channel request queue; The physical layer is further configured to write the target data packet received into the sending queue, and send the target data packet in the sending queue through a radio frequency receiving module.
3. The satellite communication system of claim 2, wherein, The MAC layer further comprises a feedback queue, and the MAC layer is further configured to store feedback information sent by the physical layer or the satellite device in the feedback queue, so as to adjust a channel allocation strategy and a data transmission mode according to the feedback information.
4. The satellite communication system of claim 2, wherein, The transmission layer further comprises a retransmission queue, and the transmission layer is further configured to, in a data recombination process and a data check process of the first signal check data, store the first signal check data in the retransmission queue for retransmission processing if it is determined that the first signal check data does not pass the data check process.
5. A data processing method based on the satellite communication system according to any one of claims 1 to 4, characterized in that, Comprise: store the target signal data temporarily in a receiving queue of the physical layer through a radio frequency receiving module, and send the target signal data temporarily stored in a sending queue of the physical layer to the MAC layer, wherein the target signal data is original signal data after signal processing; the receiving queue receives the original signal data based on a first-in first-out manner; send first signal check data to the transmission layer, wherein the first signal check data is the target signal data after data check processing by the MAC layer; perform data recombination processing and data check processing on the first signal check data to obtain second signal check data, and temporarily store the second signal check data in a receiving cache queue of the transmission layer; after obtaining the second signal check data from the receiving cache queue of the transmission layer, store the second signal check data in a data receiving queue of the application layer, so as to be called by a corresponding application program; The physical layer, the MAC layer, the transmission layer and the application layer perform data transmission based on interlayer queues; The interlayer queues comprise a plurality of interlayer uplink queues and a plurality of interlayer downlink queues, wherein: The multiple interlayer uplink queues are sequentially arranged between the physical layer and the MAC layer, between the MAC layer and the transport layer, and between the transport layer and the application layer, and are used to transmit data processed by each layer to the next layer in the order from the physical layer, the MAC layer, the transport layer to the application layer; The multiple interlayer downlink queues are sequentially arranged between the application layer and the transport layer, between the transport layer and the MAC layer, and between the MAC layer and the physical layer, and are used to transmit data processed by each layer to the next layer in the order from the application layer, the transport layer, the MAC layer to the physical layer; The multiple interlayer uplink queues and the multiple interlayer downlink queues are provided with corresponding preset queue depths. The synchronization operation of each interlayer queue between the physical layer, the MAC layer, the transport layer and the application layer is performed based on the semaphore mechanism of FreeRTOS.
6. An electronic device comprising a memory, a processor, and a computer program stored on the memory and running on the processor, characterized in that, The processor executes the computer program to implement the data processing method of claim 5.
7. A non-transitory computer-readable storage medium having stored thereon a computer program, characterized in that, The computer program is executed by the processor to implement the data processing method of claim 5.
8. A computer program product comprising a computer program, characterized in that, The computer program is executed by the processor to implement the data processing method of claim 5.
Citation Information
Patent Citations
Satellite mobile terminal wireless communication protocol stack software implementation method
CN116032348A
High-performance satellite platform based on real-time operating system and wireless bus and working method thereof
CN120223158A