Method of transmission for transmission device including mode adaptation unit in dvb-s2x standard satellite communication system and transmission device for performing the same
Patent Information
- Application Number
- KR1020240198285
- Authority / Receiving Office
- KR · KR
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2024-12-27
- Publication Date
- 2026-08-03
- Estimated Expiration
- 2044-12-27
Smart Images

Figure R1020240198285_ABST
Abstract
Description
Technology Field
[0001] The present disclosure relates to a transmission method of a transmitting device including a mode adaptation unit in a DVB-S2X standard satellite communication system and a transmitting device that performs the same. Background Technology
[0002] The DVB-S2 standard, which is widely used as an international standard in the field of satellite communication today, defines the forward link transmission method of satellite broadcasting and communication systems. This DVB-S2 standard generally divides the transmitter into three main blocks: Mode & Stream Adaptation, FEC Encoding, and Mapping & PL Framing & Modulation.
[0003] First, the mode and stream adaptation unit located at the front end of the transmitter receives input stream data and sequentially transmits it to the subsequent code and modulation units. The stream is then combined into a symbol-based PLFRAME and finally output.
[0004] The mode and stream adaptor (or mode adaptor) processes two main types of input stream formats. The first is the traditional MPEG-2 Transport Stream (TS), which consists of fixed-size (188-byte) packets and has been widely used in broadcasting services. However, the TS format has the disadvantage of having relatively large overhead and limited flexibility due to the fixed packet size.
[0005] The second method is the Generic Stream Encapsulation (GSE) method, designed for IP-based data transmission, which can increase transmission efficiency by using variable-size packets and minimized headers. With the recent increase in demand for IP-based data transmission, such as internet traffic and streaming services, the GSE format is becoming increasingly widely used, and DVB-S2X transmitters support both TS and GSE formats to meet these diverse service requirements.
[0006] Meanwhile, when the input rate of the input stream data in a DVB-S2X transmitter is lower than the throughput rate the transmitter can process, the modulation unit generates a dummy frame to replace the insufficient input stream. Specifically, a dummy frame of 3,330 symbols is generated, consisting of 90 PLHEADER symbols and 3,240 unmodulated carrier symbols of (I, Q) = (1.41, 1.41), to fill in the sections where actual data is missing. While such dummy frames do not pose a problem when considering only forward link transmission, they can cause issues during the network synchronization acquisition process in bidirectional satellite networks that include reverse link transmission.
[0007] As such, with the increasing number of environments requiring the operation of both forward and reverse links in satellite broadcasting and telecommunications systems, there is a growing need for measures to stably maintain network synchronization in DVB-S2X systems based on the existing DVB-S2 standard by efficiently processing or minimizing dummy frames. The problem to be solved
[0008] The disclosed embodiments aim to disclose a transmitting device and a transmitting method that enable a transmitting device conforming to the DVB-S2X standard in a wireless communication system to accommodate various formats while suppressing an increase in hardware implementation area and enabling fast processing.
[0009] The technical problems that this embodiment aims to solve are not limited to those described above, and other technical problems can be inferred from the following embodiments. means of solving the problem
[0010] According to one embodiment of the present disclosure, a transmission method of a transmitting device in a satellite communication system may include: acquiring a first adaptive coding and modulation (ACM) command and a first generic stream encapsulation (GSE) packet; checking whether the free space of a code buffer is greater than or equal to the size of the first GSE packet or the size of the first null packet; distinguishing the first GSE packet and the first null packet using the first ACM command based on the checking; storing the first GSE packet in a space allocated between the starting address of the GSE packet and an address increased by the size of the first GSE packet; and storing the first null packet in reverse order in a space allocated between the last address of the null packet and an address decreased by the size of the first null packet.
[0011] According to one embodiment of the present disclosure, the step of distinguishing the first GSE packet and the first null packet using the first ACM command based on the verification may include: performing fragmentation on the first GSE packet or the first null packet when the free space is not greater than or equal to the size of the GSE packet or the size of the null packet; and distinguishing the first GSE packet and the first null packet using the first ACM command based on whether the fragmented first null packet or the first GSE packet is the first fragmented GSE packet or null packet.
[0012] According to one embodiment of the present disclosure, if the fragmented first null packet or the first GSE packet is not the first fragmented GSE packet or null packet, the method may further include the steps of: updating the starting address of the BB frame of the code buffer by adding the DFL (data field length) of the first ACM instruction; updating the index of the code buffer; and initializing the free space of the code buffer.
[0013] According to one embodiment of the present disclosure, the method may further include the steps of: obtaining a second ACM command and a second GSE packet or a second null packet; distinguishing between the first GSE packet and the first null packet using the second ACM command; storing the second GSE packet starting from the address next to the last stored address of the first GSE packet; and storing the second null packet in reverse order starting from the address preceding the last stored address of the first null packet.
[0014] According to one embodiment of the present disclosure, a transmitting device in a satellite communication system includes a memory; and at least one processor configured to execute at least one instruction stored in the memory, wherein the at least one processor acquires a first adaptive coding and modulation (ACM) instruction and a first generic stream encapsulation (GSE) packet, checks whether the free space of a code buffer is greater than or equal to the size of the GSE packet or the size of the null packet, and based on the check, distinguishes the first GSE packet and the first null packet using the first ACM instruction, stores the first GSE packet in a space allocated between the starting address of the GSE packet and an address increased by the size of the first GSE packet, and stores the first null packet in reverse order in a space allocated between the last address of the null packet and an address decreased by the size of the first null packet. Effects of the invention
[0015] According to the proposed embodiment, one or more of the following effects can be expected.
[0016] According to an embodiment of the present disclosure, a transmitting device conforming to the DVB-S2X standard in a wireless communication system can accommodate various formats while suppressing an increase in hardware implementation area and enabling fast processing.
[0017] The effects of the present disclosure are not limited to those mentioned above, and other unmentioned effects will be clearly understood by a person skilled in the art from the description in the claims. Brief explanation of the drawing
[0018] FIG. 1 is a drawing illustrating the configuration of a transmitting device according to one embodiment of the present disclosure. FIG. 2 is a block diagram showing a mode and stream adaptation unit according to the DVB-S2X standard in a satellite communication system according to one embodiment of the present disclosure. FIG. 3 is a diagram illustrating the configuration and function of an ACM command according to one embodiment of the present disclosure. Figure 4 is a diagram showing the reason for reception failure when configuring a BB frame due to a null packet input caused by a buffer flag. Figure 5 is an example showing BB frame configuration through an internal buffer within a BB frame configuration module. FIG. 6 shows a GSE packet and a null packet configured according to one embodiment of the present disclosure. FIG. 7 is a flowchart illustrating a method for storing GSE packets and null packets according to one embodiment of the present disclosure. FIG. 8 shows a transmitter according to one embodiment of the present disclosure. Specific details for implementing the invention
[0019] The terms used in the embodiments have been selected to be as widely used as possible, taking into account their functions in the present disclosure; however, these terms may vary depending on the intent of those skilled in the art, case law, the emergence of new technologies, etc. Additionally, in specific cases, terms have been arbitrarily selected by the applicant, and in such cases, their meanings will be described in detail in the relevant explanatory section. Therefore, terms used in the present disclosure should be defined not merely by their names, but based on their meanings and the overall content of the present disclosure.
[0020] When a part of a specification is described as “comprising” a certain component, this means that, unless specifically stated otherwise, it does not exclude other components but may include additional components. Furthermore, terms such as “...part” or “...module” as used in the specification refer to a unit that processes at least one function or operation, and this may be implemented in hardware or software, or as a combination of hardware and software.
[0021] The expression “at least one of a, b, and c” described throughout the specification may include ‘a alone’, ‘b alone’, ‘c alone’, ‘a and b’, ‘a and c’, ‘b and c’, or ‘a, b, and c all’.
[0022] The "terminal" mentioned below may be implemented as a computer or portable terminal capable of connecting to a server or other terminal via a network. Here, the computer includes, for example, a notebook, desktop, or laptop equipped with a web browser, and the portable terminal may include, for example, a wireless communication device that ensures portability and mobility, and may include all types of handheld-based wireless communication devices such as communication-based terminals like IMT (International Mobile Telecommunication), CDMA (Code Division Multiple Access), W-CDMA (W-Code Division Multiple Access), and LTE (Long Term Evolution), smartphones, tablet PCs, etc.
[0023] Embodiments of the present disclosure are described below with reference to the attached drawings so that those skilled in the art can easily implement them. However, the present disclosure may be embodied in various different forms and is not limited to the embodiments described herein.
[0024] In describing the embodiments, technical details that are well known in the technical field to which the present invention belongs and are not directly related to the present invention are omitted. This is intended to convey the essence of the present invention more clearly without obscuring it by omitting unnecessary explanations.
[0025] For the same reason, some components in the attached drawings have been exaggerated, omitted, or schematically depicted. Additionally, the size of each component does not entirely reflect its actual dimensions. Identical or corresponding components in each drawing have been assigned the same reference numbers.
[0026] The advantages and features of the present invention and the methods for achieving them will become clear by referring to the embodiments described below in detail together with the accompanying drawings. However, the present invention is not limited to the embodiments disclosed below but can be implemented in various different forms. These embodiments are provided merely to ensure that the disclosure of the present invention is complete and to fully inform those skilled in the art of the scope of the invention, and the present invention is defined only by the scope of the claims. Throughout the specification, the same reference numerals refer to the same components.
[0027] At this time, it will be understood that each block of the process flow diagrams and combinations of the flow diagrams can be executed by computer program instructions. Since these computer program instructions can be loaded into the processor of a general-purpose computer, a special-purpose computer, or other programmable data processing equipment, the instructions executed through the processor of the computer or other programmable data processing equipment create means to perform the functions described in the flow diagram block(s). Since these computer program instructions can also be stored in computer-available or computer-readable memory that can be directed toward the computer or other programmable data processing equipment to implement the function in a specific way, the instructions stored in computer-available or computer-readable memory can also produce a manufactured item containing the means of instruction to perform the function described in the flow diagram block(s). Since computer program instructions can be loaded onto a computer or other programmable data processing equipment, instructions that perform a series of operation steps on the computer or other programmable data processing equipment to create a process executed by the computer can also provide steps for executing the functions described in the flowchart block(s).
[0028] Additionally, each block may represent a module, segment, or part of code containing one or more executable instructions for executing a specified logical function(s). It should also be noted that in some alternative execution examples, the functions mentioned in the blocks may occur out of order. For instance, two blocks described in succession may actually be executed substantially simultaneously, or the blocks may be executed in reverse order according to their corresponding functions.
[0029] When input stream data arrives at an input rate lower than the transmitter's throughput rate, the modulation section of the transmitter generates a dummy frame of 3330 symbols consisting of 90 PLHEADER symbols and 3240 unmodulated carrier symbols of (I, Q) = (1.41, 1.41) to compensate for the insufficient input stream data. While dummy frames are not a problem when considering only forward link transmission in a satellite communication system, they become a problem when acquiring network synchronization in a bidirectional satellite network that includes reverse link transmission.
[0030] For network synchronization, the central station transmits Network Clock Reference (NCR) information to all terminal stations, and the terminal stations must recover the received NCR and use it for reverse link data transmission. At this time, the central station must be able to transmit the NCR information in an appropriate manner so that the terminal stations can obtain accurate NCR information. To this end, the mode and stream adaptation unit of the transmitter included in the central station operates an NCR counter synchronized with a 27 MHz clock, and to transmit the NCR, it latches the NCR counter value at the moment when the first symbol of the Start Of Frame (SOF) in the n-th PLFRAME header is output from the modulation unit to construct an NCR packet. The NCR packet thus constructed is inserted into the n+2-th PLFRAME, which is two frames after the latched PLFRAME.
[0031] At the terminal station, network synchronization can be achieved by utilizing the restored NCR values, PLFRAME numbers, and SOF reception time information. Since the restored NCR values are inserted at predetermined positions, a constant interval is maintained. However, if dummy frames are generated due to input stream data with a low input rate, even if NCR packets are inserted at the predetermined n+2th PLFRAME, the interval of the NCR values cannot be maintained consistently due to unexpected dummy frames. Consequently, system network synchronization becomes impossible at the terminal station due to the restoration of inconsistent NCR values. This problem arises because it is difficult for the mode and stream adaptation unit, located before the modulation unit, to predict the generation of dummy frames at the subsequent stage.
[0032] FIG. 1 is a drawing illustrating the configuration of a transmitting device according to one embodiment of the present disclosure.
[0033] Referring to FIG. 1, the transmitting device (100) may include a mode and stream adaptation unit (110), a code unit buffer (111), a code unit (120), a modulation unit buffer (121), and a modulation unit (130).
[0034] The mode and stream adaptation unit (110) is determined according to the application and performs input stream interface, input stream synchronization, null-packet removal for ACM mode and TS input format, CRC-8 encoding for error detection, input stream mixing function for multiple input streams, etc., and can perform padding and BB scrambling to create BB (baseband) frames.
[0035] Additionally, when the mode and stream adaptation unit (110) receives a buffer flag bit from the code unit (120) or the modulation unit (130), it can generate a Base-Band (BB) frame composed of null data and transmit it to the code unit buffer (111).
[0036] The code buffer (111) is a type of memory that stores data and stores data received from the mode and stream adaptation unit (110), and can provide the stored data to the code unit (120) according to the request of the code unit (120).
[0037] The code buffer (111) can be located at the front of the code unit (120) to temporarily store data transmitted to the code unit (120) during operation, because the encoding speed in the code unit (120) is slower than the input stream processing speed in the mode and stream adaptation unit (110).
[0038] The encoding unit (120) can encode a BB frame stored in the encoding unit buffer (111) and transmit the encoded BB frame to the modulation unit buffer (121). The modulation unit buffer (121) is a type of memory that stores data and stores data received from the encoding unit (120), and can provide the stored data to the modulation unit (130) according to the request of the modulation unit (130).
[0039] The modulation buffer (121) can be positioned in front of the modulation unit (130) to temporarily store data transmitted to the modulation unit (130) during operation, because the modulation speed in the modulation unit (130) is slower than the encoding speed in the encoding unit (120) according to the same principle as the code buffer (111).
[0040] The modulation unit (130) performs synchronization with the encoded BB frame and can construct a PL (Physical Layer) frame by inserting a physical layer header, which is frame synchronization and modulation / code rate information, and a pilot symbol for carrier recovery of the receiver. In addition, the modulation unit (130) can perform physical layer scrambling for energy dispersion.
[0041] The modulation unit (130) can transmit a modulation buffer flag to the mode and stream adaptation unit (110) if the number of frames stored in the modulation unit buffer (121) is less than or equal to a preset number, instead of the dummy frame inserted to maintain the symbol rate.
[0042] According to one embodiment, a method for preventing dummy frames is such that when the number of frames stored in the respective buffers of the encoding unit and the modulation unit is less than or equal to a preset number, a buffer flag bit is transmitted to the mode and stream adaptation unit (110). When the mode and stream adaptation unit (110) receives the buffer flag bit, a self-null packet is generated to form a Base-Band (BB) frame and transmitted to the encoding unit buffer (111). The transmitted BB frame is encoded, and the encoded BB frame is transmitted to the modulation unit buffer (121), thereby maintaining the number of frames in the modulation unit buffer (121) at a preset number, so that the occurrence of dummy frames can be prevented.
[0043] A method to prevent dummy frames as described above requires the mode & stream adaptation unit (110) to configure BB frames that include self-generated null TS / GSE packets along with various input stream (TS / GSE) data formats. When the internal modules of the mode & stream adaptation unit (110) according to each input stream are designed in parallel, the hardware implementation area may increase due to the use of additional modules and buffers. Additionally, after receiving an input of BB frame size in the mode & stream adaptation unit (110), configuring BB frames according to the mode may cause processing delays.
[0044] FIG. 2 is a block diagram showing a mode and stream adaptation unit according to the DVB-S2X standard in a satellite communication system according to one embodiment of the present disclosure.
[0045] Referring to FIG. 2, the mode and stream adaptation unit (200) may include a mode and stream adaptation unit control module (210), an input interface module (220), an input stream synchronization device module (230), a null packet insertion / removal module (240), and a BB frame configuration module (250).
[0046] A mode & stream adaptation unit control module (210) according to one embodiment of the present disclosure controls the operation of an input interface module (220), an input stream synchronization device module (230), a null packet insertion / removal module (240), and a BB frame configuration module (250) within the mode and stream adaptation unit (200), receives information from each module, and can issue operation commands to each module.
[0047] An input interface module (220) according to one embodiment of the present disclosure checks for a transport stream (TS) or generic stream encapsulation (GSE) mode determined by an application. In the case of a TS mode, a TS packet of a fixed size (188 bytes) is transmitted to a synchronization device module. In the case of a GSE mode, 3 bytes of an adaptive coding and modulation (ACM) command and a GSE packet can be transmitted to an input stream synchronization device module (230).
[0048] In the transmitting device of the present invention, when in GSE mode, the GSE packet can be received by attaching a predefined 3-byte ACM command to the front of the GSE packet along with an application.
[0049] The input stream synchronization device module checks the synchronization bytes and packet sizes according to each TS / GSE format and transmits the start synchronization of each packet to the null packet insertion / deletion module. In TS mode, synchronization bytes (0X47) are checked at fixed-size intervals, and in GSE mode, preset synchronization bytes (0XB8) are checked at variable-length intervals (3 bytes + GSE packet size). In the present invention, the ACM Command for information exchange between the aplation and the transmitting device may include a synchronization byte transmission function to the synchronization device module.
[0050] The null packet insertion / removal module (240) can insert a null packet when it receives a buffer flag signal to prevent dummy frames that occur when the input stream comes in at an input rate lower than the transmitter's throughput rate. In addition, it can perform the function of removing null packets according to application options to increase the transmission rate when null packets included in the upper application come in, regardless of the transmission device's throughput rate.
[0051] In GSE mode, if a null packet is inserted, the third item of the ACM command, MODNULL, can be changed to a preset value (0XFF) to indicate that it is a null packet and transmitted to the BB frame configuration module (250).
[0052] The BB frame configuration module (250) receives null packets along with various TS / GSE formats and configures the payload of the BB frame. The Data Field Length (DFL), which is the payload size of the BB frame, is determined according to the MODCOD. If the input packet exceeds the DFL, the TS mode performs fragmentation and changes the DFL argument value within the BB frame header, and the GSE mode performs fragmentation and encapsulation.
[0053] When a DVB-S2X transmitter is in TS mode, if a null packet occurs, it includes a synchronization byte and an internal identifier to recognize it as a null TS packet. Even if TS packets and null TS packets are configured and transmitted as BB frames regardless of input order, the receiver can recognize them as null TS packets and discard them. In contrast, when in GSE mode, GSE packets and null GSE packets do not contain synchronization bytes, and null GSE packets consist of a packet with a set size of data consisting entirely of zeros. Within a BB frame received by the receiver, it is impossible to distinguish between the null GSE packet section and the padding section where the entire data consists of zeros. Therefore, the DVB-S2X standard does not allow null packets within BB frames.
[0054] FIG. 3 is a diagram illustrating the configuration and function of an ACM command according to one embodiment of the present disclosure.
[0055] Referring to Fig. 3, in GSE mode, the ACM command may include 3 bytes of SYNC, MODCOD, and MOD NULL, and a GSE packet may be attached after the ACM command.
[0056] In one embodiment, SYNC can be allocated 1 byte and can perform the function of transmitting the synchronization (0XB8) byte to the input stream synchronization device module (230).
[0057] In one embodiment, MODCOD can be allocated 1 byte and can perform the function of transmitting the BB frame size to the mode & stream adaptation unit (110).
[0058] In one embodiment, MODNULL may be allocated 1 byte and may perform the function of informing the BB frame configuration module (250) that it is a null packet inserted by the null packet insertion / removal module (240).
[0059] Figure 4 is a diagram showing the reason for reception failure when configuring a BB frame due to a null packet input caused by a buffer flag.
[0060] Referring to FIG. 4, the first GSE packet (411) and the first null packet (413) can be stored after the BB header (441) of the first BB frame (440) when the free space of the code buffer (111) is greater than or equal to the first GSE packet (411) and the first null packet (413).
[0061] In the case of the second GSE packet (415), fragmentation is performed because the free space of the code buffer (111) is smaller than that of the second GSE packet (415). Accordingly, the second GSE packet (415) can be fragmented into the first fragmented GSE packet (421) and the second fragmented GSE packet (423), respectively.
[0062] The first fragmented GSE packet (421) can be stored after the first null packet (445) of the first BB frame (440), and the second fragmented GSE packet (423) can be stored in the second BB frame (450).
[0063] In this way, the third GSE packet (417) can also be stored in the second BB frame (450) or a subsequent BB frame to create the entire BB frame.
[0064] In this way, when generating the first BB frame (440), the first null packet (445) may exist between the first GSE packet (443) and the first fragmented GSE packet (447), and a reception failure may occur. This is because satellite communication standards (such as DVB-S2 / S2X) strictly restrict the placement of null packets and GSE packets, so the receiver may drop data or invalidate packets due to a violation of the standard, and thus the reception may be treated as a reception failure.
[0065] In this case, the first processing time (430) may take a short time because the data is processed immediately, but a problem with handling reception failure may occur.
[0066] Therefore, to prevent reception failure, a BB frame can be constructed using packet alignment with the internal buffer of the BB frame construction module (250).
[0067] Figure 5 is an example showing BB frame configuration through an internal buffer within a BB frame configuration module.
[0068] Referring to FIG. 5, the first GSE packet (511), the first null packet (513), and the second GSE packet (515) can be stored in a buffer (521) of DFL size in the internal buffer (520) of the BB frame configuration module (250).
[0069] Additionally, the first null packet (513) is stored after the DFL-sized buffer (521) in the internal buffer (520), so that the internal buffer (520) of the BB frame configuration module (250) may include the DFL-sized buffer (521) and the first null packet (523).
[0070] The first BB frame (530) may be composed of a BB header (541), a first 4GSE packet (543), a second GSE packet (545), and a first null packet (547) aligned from an internal buffer (520). In this case, to form the first BB frame (540), the first GSE packet (511), the first null packet (513), and the second GSE packet (513) must all be acquired and aligned using the internal buffer of the BB frame configuration module (250), so the second processing time (530) may take a relatively large amount of time.
[0071] In addition, since the above method requires additional use of the internal buffer of the BB frame configuration module (250), there may be disadvantages such as increased power consumption and increased implementation area.
[0072] In one embodiment of the present disclosure, a method of constructing a BB frame directly without using an internal buffer is proposed.
[0073] FIG. 6 shows a BB frame configured according to one embodiment of the present disclosure.
[0074] Referring to FIG. 6, when the first GSE packet (611) is acquired, the transmitting device can store the first GSE packet (633) by immediately assigning an address equal to the size of the first GSE packet, with the next address of the BB header (631) of the BB frame (630) as the starting address of the GSE packet.
[0075] In the present disclosure, the term “store” may include the meaning of arranging data for a specific data format in addition to storing data in memory or a buffer.
[0076] Additionally, if the first null packet (613) is acquired after the first GSE packet (611), the transmitting device can store the first null packet (613) in reverse order from the last address of the BB frame (630) by allocating an address equal to the size of the first null packet (613).
[0077] Subsequently, when the transmitting device acquires the second GSE packet (615), it can store the second GSE packet (635) by using the address corresponding to the next address from the last address where the first GSE packet (633) is stored in the BB frame (630) as the starting address.
[0078] Accordingly, since the transmitting device according to one embodiment of the present disclosure generates a BB frame immediately even if all GSE packets and null packets are not acquired, the third processing time (620) may take less time than the second processing time (530), and since no additional buffer is used, there may be advantages in the implementation area and power consumption of the entire transmitting device.
[0079] FIG. 7 is a flowchart illustrating a method for storing GSE packets and null packets according to one embodiment of the present disclosure.
[0080] Referring to FIG. 7, in step S701, the transmitting device can obtain an ACM command and a GSE packet. Additionally, the transmitting device can check the starting address of the code buffer (111) space and the free space of the code buffer (111).
[0081] In step S702, the transmitting device can check whether the free storage space of the code buffer (111) is smaller than the size of the GSE or null packet. If the free storage space of the code buffer (111) is smaller than the size of the GSE or null packet (e.g., in S702), the transmitting device can fragment the GSE packet or null packet in step S703.
[0082] In step S704, the transmitting device can determine whether the fragmented GSE packet or null packet is the first fragment. If it is not the first fragmented GSE packet or null packet (No in step S704), in step S705, the transmitting device can update the BB frame start address in the code buffer. More specifically, the transmitting device can update the BB frame start address in the code buffer by adding DFL according to the MODCOD of the ACM command.
[0083] In step S706, the transmitting device can update the code buffer index and check the start address. Additionally, the transmitting device can initialize the free space of the code buffer. Subsequently, the transmitting device can return to step S701 to obtain the ACM command and GSE packet. Additionally, the transmitting device can check the start address of the code buffer (111) space and the free space of the code buffer (111).
[0084] If the free storage space of the code buffer (111) is greater than or equal to the size of the GSE or null packet (No in S702) or if the GSE packet or null packet is the first fragmented packet (Yes in S704), the transmitting device can distinguish between the GSE packet and the null GSE packet in step S707.
[0085] If the separated packet is a GSE packet (the GSE packet of S707), in step S708, the transmitting device can store the acquired GSE packet in a space the size of the GSE packet at the starting address of the GSE packet. Then, in step S709, the storage address for the next GSE packet can be set to the last address of the previous GSE packet + 1.
[0086] If the separated packet is a null packet (null packet of S707), in step S710, the transmitting device can store the acquired null packet in reverse order in the null packet size space at the last address of the null packet. Then, in step S711, the next null packet storage address can be set to the last address of the previous GSE packet minus 1.
[0087] FIG. 8 shows a transmitting device according to one embodiment of the present disclosure.
[0088] Referring to FIG. 8, the transmitting device (800) may include a transceiver (810), a memory (820), and a processor (830) according to one embodiment. Only the components related to the present embodiment are shown in the transmitting device (800) illustrated in FIG. 8. Therefore, it will be understood by those skilled in the art related to the present embodiment that other general components may be included in addition to the components illustrated in FIG. 8.
[0089] The transceiver (810) is a device for performing wired / wireless communication and can communicate with an external electronic device. The external electronic device may be a user terminal or a server. Additionally, the communication technology used by the transceiver (810) may include GSM (Global System for Mobile communication), CDMA (Code Division Multi Access), LTE (Long Term Evolution), 5G, WLAN (Wireless LAN), Wi-Fi (Wireless-Fidelity), Bluetooth, RFID (Radio Frequency Identification), Infrared Data Association (IrDA), ZigBee, NFC (Near Field Communication), etc.
[0090] The processor (830) can control the overall operation of the transmitting device (800) and process data and signals. The processor (830) may be composed of at least one hardware unit. Additionally, the processor (830) may operate by one or more software modules generated by executing program code stored in memory (820). The processor (830) may include memory, and the processor (830) can control the overall operation of the transmitting device (800) and process data and signals by executing program code stored in memory.
[0091] In one embodiment, the processor (830) obtains a first adaptive coding and modulation (ACM) instruction and a first generic stream encapsulation (GSE) packet, checks whether the free space of the code buffer is greater than or equal to the size of the first GSE packet or the size of the first null packet, and based on the check, distinguishes the first GSE packet and the first null packet using the first ACM instruction, stores the first GSE packet in a space allocated between the starting address of the GSE packet and an address increased by the size of the first GSE packet, and stores the first null packet in reverse order in a space allocated between the last address of the null packet and an address decreased by the size of the first null packet.
[0092] Meanwhile, the present specification and drawings disclose preferred embodiments of the present invention. Although specific terms have been used, they are used merely in a general sense to facilitate the explanation of the technical content of the present invention and to aid in understanding the invention, and are not intended to limit the scope of the present invention. It is obvious to those skilled in the art that, in addition to the embodiments disclosed herein, other variations based on the technical concept of the present invention are possible.
[0093] The transmitting device (800) according to the above-described embodiments may include a processor, memory for storing and executing program data, permanent storage such as a disk drive, a communication port for communicating with an external device, and user interface devices such as a touch panel, a key, an icon, etc. Methods implemented as software modules or algorithms may be stored on a computer-readable recording medium as computer-readable code or program instructions executable on the processor. Here, computer-readable recording media include magnetic storage media (e.g., ROM (read-only memory), RAM (random-access memory), floppy disk, hard disk, etc.) and optical reading media (e.g., CD-ROM, DVD (Digital Versatile Disc)). Computer-readable recording media may be distributed across networked computer systems, allowing computer-readable code to be stored and executed in a distributed manner. The medium may be readable by a computer, stored in memory, and executed by a processor.
[0094] The present embodiment may be represented by functional block configurations and various processing steps. These functional blocks may be implemented by various numbers of hardware and / or software configurations that execute specific functions. For example, the embodiment may employ integrated circuit configurations such as memory, processing, logic, look-up tables, etc., capable of executing various functions by the control of one or more microprocessors or other control devices. Similar to how components may be implemented as software programming or software elements, the present embodiment may be implemented in programming or scripting languages such as C, C++, Java, assembler, Python, etc., including various algorithms implemented as combinations of data structures, processes, routines, or other programming configurations. Functional aspects may be implemented as algorithms executed on one or more processors. Additionally, the present embodiment may employ prior art for electronic configuration, signal processing, and / or data processing. Terms such as “mechanism,” “element,” “means,” and “configuration” may be used broadly and are not limited to mechanical and physical configurations. The above terms may include the meaning of a series of software processes (routines) in conjunction with processors, etc.
[0095] The aforementioned embodiments are merely examples, and other embodiments may be implemented within the scope of the claims set forth below.
Claims
Claim 1 A transmission method of a transmitting device in a satellite communication system, comprising: a step of acquiring a first ACM (adaptive coding and modulation) command and a first GSE (generic stream encapsulation) packet; a step of checking whether the free space of a code buffer is greater than or equal to the size of the first GSE packet or the size of a first null packet; a step of distinguishing the first GSE packet and the first null packet using the first ACM command based on the check; a step of storing the first GSE packet in a space allocated between the starting address of the GSE packet and an address increased by the size of the first GSE packet; and a step of storing the first null packet in reverse order in a space allocated between the last address of the null packet and an address decreased by the size of the first null packet. Claim 2 A transmission method of a transmitting device according to claim 1, wherein the step of distinguishing the first GSE packet and the first null packet using the first ACM command based on the above verification includes: a step of performing fragmentation on the first GSE packet or the first null packet when the free space is smaller than the size of the first GSE packet or the size of the first null packet; and a step of distinguishing the first GSE packet and the first null packet using the first ACM command based on whether the fragmented first null packet or the first GSE packet is the first fragmented GSE packet or null packet. Claim 3 A transmission method of a transmitting device according to claim 2, further comprising the steps of: updating the starting address of a baseband (BB) frame of the code buffer by adding the data field length (DFL) of the first ACM command when the fragmented first null packet or the first GSE packet is not the first fragmented GSE packet or null packet; updating the index of the code buffer; and initializing the free space of the code buffer. Claim 4 A transmission method of a transmitting device according to claim 1, further comprising: a step of obtaining a second ACM command and a second GSE packet or a second null packet; a step of distinguishing the first GSE packet and the first null packet using the second ACM command; a step of storing the second GSE packet starting from the address next to the last stored address of the first GSE packet; and a step of storing the second null packet in reverse order starting from the address preceding the last stored address of the first null packet. Claim 5 A transmitting device in a satellite communication system comprises: a memory; and at least one processor configured to execute at least one instruction stored in the memory, wherein the at least one processor acquires a first adaptive coding and modulation (ACM) instruction and a first generic stream encapsulation (GSE) packet, checks whether the free space of a code buffer is greater than or equal to the size of the GSE packet or the size of a null packet, and based on the check, distinguishes the first GSE packet and the first null packet using the first ACM instruction, stores the first GSE packet in a space allocated between the starting address of the GSE packet and an address increased by the size of the first GSE packet, and stores the first null packet in reverse order in a space allocated between the last address of the null packet and an address decreased by the size of the first null packet.