Data transmission method and related apparatus
By generating protocol data units containing key information and error detection codes in a wireless communication system, and then combining them with error correction codes for merging, the problem of false detection of data bursts under bandwidth constraints is solved, thereby improving error detection capability and data transmission reliability without increasing resources.
Patent Information
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- HYTERA COMM CORP
- Filing Date
- 2025-12-31
- Publication Date
- 2026-07-23
AI Technical Summary
In wireless communication systems, due to limitations in physical channel bandwidth or transmission rate, short data fields can only carry data signals and error correction codes, but cannot carry error detection codes. This can lead to critical information being misdetected as other data types, resulting in data bursts being misprocessed and more data being lost.
By generating a first part and a second part of data in a data burst, the first part of data includes Protocol Data Units (PDUs) and error detection codes for key information, while the second part of data includes error detection codes and error correction codes. The check code of the second part of data is generated through a verification algorithm, and the data is then merged for error detection, thereby improving the error detection capability.
Without increasing air interface burst resources, it improves the error detection capability of critical information in data bursts, avoids misprocessing of data bursts, and enhances the reliability of data transmission.
Smart Images

Figure CN2025147961_23072026_PF_FP_ABST
Abstract
Description
Data transmission method and related devices
[0001] This application claims priority to Chinese Patent Application No. 202510088390.0, filed on January 20, 2025, entitled “Data Transmission Method and Related Apparatus”, the entire contents of which are incorporated herein by reference. Technical Field
[0002] This application relates to the field of wireless communication technology, and in particular to a data transmission method and related apparatus. Background Technology
[0003] In wireless communication systems, the accuracy of data transmission is crucial. To avoid bit errors caused by electromagnetic interference, other communication signals, or signal fading during data burst transmission over the air interface, and to enhance the reliability of data burst transmission, error detection and correction mechanisms are typically applied to the data bursts to generate error detection codes and error correction codes. These error detection codes and error correction codes are then transmitted over the air interface along with the data burst. The receiving device receives the data burst from the air interface and then uses the error detection and correction mechanism algorithm to decode the data burst and detect and correct errors in the received data burst.
[0004] However, limited by physical channel bandwidth or transmission rate constraints, longer data fields within a data burst can carry data signals, error detection codes, and error correction codes. Shorter data fields, due to bit limitations, can only carry data signals and error correction codes, and cannot carry error detection codes. This crucial data type information is typically located in the shorter data field of the data burst. If an error in this field goes undetected, the data burst may be misidentified as a different data type, causing the longer data field to be parsed as an incorrect data type, leading to misprocessing and the loss of more data.
[0005] Therefore, it is particularly important to improve the error detection capability of key information in data bursts and avoid misprocessing of data bursts under limited bandwidth constraints, without increasing air interface burst resources. Summary of the Invention
[0006] This application provides a data transmission method and related apparatus, with the aim of improving the error detection capability of critical information in data bursts without increasing air interface burst resources.
[0007] To achieve the above objectives, this application provides the following technical solution:
[0008] In a first aspect, this application provides a data transmission method, including:
[0009] In response to the demand for transmitting specified data, the transmitting device generates a data burst to be transmitted. The data burst includes a first part of data and a second part of data. The first part of data includes a Protocol Data Unit (PDU) corresponding to the first data and includes key information associated with the data burst attributes. The second part of data includes the PDU corresponding to the second data and a first error detection code. The first error detection code is obtained by processing part or all of the data of the PDU corresponding to the first data and the PDU corresponding to the second data through a verification algorithm. The format of the PDU corresponding to the second data corresponds to at least one of the key information.
[0010] The transmitting device is sending a burst of data.
[0011] The receiving device receives a data burst and decodes the first and second parts of the data burst according to the preset decoding rules to obtain the specified data sent by the sending device.
[0012] In the above technical solution, in the data burst, the second part of the data includes a first error detection code. The first error detection code is obtained by processing part or all of the data of the PDU corresponding to the first data and the PDU corresponding to the second data through a verification algorithm. It can be used to perform error detection on the PDU corresponding to the first data and the PDU corresponding to the second data, thereby improving the error detection capability of key information in the data burst without increasing air interface burst resources.
[0013] In one possible implementation, the first data includes multiple data items, each indicating different key information associated with the burst attributes of the data.
[0014] In one possible implementation, the first part of the data further includes a first error correction code, which is obtained by processing the PDU corresponding to the first data through an error correction algorithm; the second part of the data further includes a second error correction code, which is obtained by processing the PDU corresponding to the second data and the error detection code through an error correction algorithm.
[0015] In one possible implementation, the data burst also includes a third part of data, which includes the Protocol Data Unit (PDU) corresponding to the third part of data.
[0016] In one possible implementation, the method for generating the PDU corresponding to the second data includes:
[0017] Based on the data type in the key information, determine the format of the PDU corresponding to the second data;
[0018] The second data is processed according to the format of the PDU corresponding to the second data to obtain the PDU corresponding to the second data.
[0019] In one possible implementation, when processing part or all of the data of the PDU corresponding to the first data and the PDU corresponding to the second data through a verification algorithm to obtain the first error detection code, the arrangement of part or all of the data of the PDU corresponding to the first data and the PDU corresponding to the second data is as follows: part or all of the data of the PDU corresponding to the first data is located before, after or in the middle of the PDU corresponding to the second data.
[0020] In one possible implementation, the receiving device decodes the first and second parts of the data burst according to a preset decoding rule, including:
[0021] The receiving device parses the first part of the data burst to obtain the PDU corresponding to the first data, and decodes the PDU corresponding to the first data to obtain key information;
[0022] Analyze the second part of the data burst to obtain the PDU and the first error detection code corresponding to the second data;
[0023] The second error detection code is obtained by processing part or all of the data of the PDU corresponding to the first data obtained by parsing and the PDU corresponding to the second data obtained by parsing through a preset verification algorithm.
[0024] Determine whether the first error detection code and the second error detection code are the same;
[0025] If the first error detection code and the second error detection code are different, then the first part of the data and the second part of the data are decoded incorrectly; if the first error detection code and the second error detection code are the same, then the first part of the data and the second part of the data are decoded correctly.
[0026] In one possible implementation, after parsing the second part of the data burst to obtain the PDU and the first error detection code corresponding to the second data, the following steps are also included:
[0027] Based on the data type in the key information obtained from decoding, determine the format of the PDU corresponding to the second data;
[0028] Decode the PDU corresponding to the second data according to the format of the PDU corresponding to the second data.
[0029] In one possible implementation, the first part of the data further includes a first error correction code, and the second part of the data further includes a second error correction code; parsing the first part of the data burst yields the PDU corresponding to the first data, including:
[0030] Based on the first error correction code, the first part of the data is corrected and decoded to obtain the PDU corresponding to the first data.
[0031] Parse the second part of the data burst to obtain the PDU and the first error detection code corresponding to the second data, including:
[0032] Based on the second error correction code, the second part of the data is subjected to error correction decoding to obtain the PDU corresponding to the second data and the first error detection code.
[0033] Secondly, this application provides a communication device including a processor and a memory. The communication device further includes a communication interface, with the processor coupled to the communication interface and the processor coupled to the memory. In one implementation, the communication interface may be a transceiver or an input / output interface. The processor can be used to execute instructions or data in the memory to implement the method in any of the possible implementations of the first aspect described above.
[0034] Thirdly, this application provides a computer program product comprising: a computer program (also referred to as code or instructions) that, when run, causes a computer to perform the method in any of the possible implementations of the first aspect described above.
[0035] Fourthly, a computer-readable storage medium is provided that stores a computer program (also referred to as code or instructions) that, when executed on a computer, causes the computer to perform the methods in any of the possible implementations of the first aspect described above.
[0036] Fifthly, this application provides a data transmission system, including a first device and a second device. The first device is used to generate a data burst to be sent in response to a request to transmit specified data. The data burst includes a first part of data and a second part of data. The first part of data includes a Protocol Data Unit (PDU) corresponding to the first data. The first data includes key information associated with the attributes of the data burst. The second part of data includes a PDU corresponding to the second data and a first error detection code. The first error detection code is obtained by processing part or all of the data of the PDU corresponding to the first data and the PDU corresponding to the second data through a verification algorithm. The format of the PDU corresponding to the second data corresponds to at least one of the key information.
[0037] The first device is also used to send the data burst;
[0038] The second device is used to receive the data burst, decode the first part of the data and the second part of the data burst according to the preset decoding rules, and obtain the specified data sent by the sending device. Attached Figure Description
[0039] Figure 1 is a scenario example diagram of the first communication device and the second communication device;
[0040] Figure 2 is a flowchart of a data transmission method disclosed in an embodiment of this application;
[0041] Figure 3 is a schematic diagram of the data burst structure disclosed in the embodiment of this application;
[0042] Figure 4 is a diagram showing the relationship between the check code Data2.Check of the second part of the data disclosed in the embodiments of this application, the protocol data unit Data2.PDU of the second part of the data, and the protocol data unit Data1.PDU of the first part of the data.
[0043] Figure 5 is a schematic diagram of the process of generating a data burst by the first communication device disclosed in the embodiment of this application;
[0044] Figure 6 is a schematic diagram of the process of parsing data bursts by the second communication device disclosed in the embodiments of this application;
[0045] Figure 7 is a schematic diagram of the structure of the CSBK data burst disclosed in the embodiments of this application;
[0046] Figure 8 is a comparison diagram of the data burst disclosed in the embodiments of this application and the original data burst of the DMR protocol;
[0047] Figure 9 is a schematic diagram of the structure of the communication device disclosed in the embodiments of this application. Detailed Implementation
[0048] The technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. The terminology used in the following embodiments is for the purpose of describing specific embodiments only and is not intended to be a limitation of this application. As used in the specification and appended claims of this application, the singular expressions "a," "an," "the," "the," "the," and "this" are intended to also include expressions such as "one or more," unless the context clearly indicates otherwise. It should also be understood that in the embodiments of this application, "one or more" refers to one, two, or more; "and / or" describes the relationship between related objects, indicating that three relationships may exist; for example, A and / or B can represent: A alone, A and B simultaneously, or B alone, where A and B can be singular or plural. The character " / " generally indicates that the preceding and following related objects are in an "or" relationship.
[0049] References to "one embodiment" or "some embodiments" as described in this specification mean that one or more embodiments of this application include a specific feature, structure, or characteristic described in connection with that embodiment. Therefore, the phrases "in one embodiment," "in some embodiments," "in other embodiments," "in still other embodiments," etc., appearing in different parts of this specification do not necessarily refer to the same embodiment, but rather mean "one or more, but not all, embodiments," unless otherwise specifically emphasized. The terms "comprising," "including," "having," and variations thereof mean "including but not limited to," unless otherwise specifically emphasized.
[0050] The "multiple" mentioned in the embodiments of this application refers to two or more. It should be noted that in the description of the embodiments of this application, terms such as "first" and "second" are used only for the purpose of distinguishing descriptions and should not be construed as indicating or implying relative importance, nor should they be construed as indicating or implying order.
[0051] The technical solution of this application can be applied to wireless communication systems based on the time division multiple access (TDMA) standard. The wireless communication system can be a radio system, such as a DMR system, a PDT system, a second-generation (2G) communication system, a third-generation (3G) communication system, an LTE system, a fifth-generation (5G) communication system, a hybrid architecture of LTE and 5G, a 5G new radio (5G NR) system, or any new communication system that will emerge in the future development of communication.
[0052] The wireless communication system includes a first communication device and a second communication device.
[0053] In some embodiments, the first communication device can be a transmitter, transmitting terminal, or sending device, responsible for modulating information onto radio waves and transmitting it. The second communication device can be a receiver, receiving terminal, or receiving device, responsible for receiving these radio waves and converting them back into the original information. Both the first and second communication devices can be digital intercom devices such as walkie-talkies or repeaters.
[0054] In other embodiments, the first communication device may be a network-side device used to provide network communication functions, sometimes referred to as a network device or network element. A network device is typically a base station (including functional units of a base station, or a combination of functional units of base stations) or a core network unit. The second communication device may be a device accessing the network, typically a terminal.
[0055] An example of a wireless communication system is shown in Figure 1, which includes a first communication device 100 and a second communication device 200. The first communication device 100 and the second communication device 200 are digital intercom devices.
[0056] In wireless communication systems, the accuracy of data transmission is crucial. To avoid bit errors caused by electromagnetic interference, other communication signals, or signal fading during data burst transmission over the air interface, and to enhance the reliability of data burst transmission, error detection and correction mechanisms are typically applied to the data bursts to generate error detection codes and error correction codes. These error detection codes and error correction codes are then transmitted over the air interface along with the data burst. The receiving device receives the data burst from the air interface and then uses the error detection and correction mechanism algorithm to decode the data burst and detect and correct errors in the received data burst.
[0057] However, limited by physical channel bandwidth or transmission rate constraints, longer data fields in a data burst can carry data signals, error detection codes, and error correction codes. Shorter data fields, due to bit limitations, can only carry data signals and error correction codes, not error detection codes. But this crucial data type information is usually located in the shorter data field of the data burst. If an error in this field goes undetected, the entire data burst may be misidentified as a different data type, causing the longer data field to be parsed as an incorrect data type, leading to misprocessing and loss of more data. For example, a shorter data header containing the data type might be followed by consecutive data blocks, which are longer data fields. If the header is misinterpreted as a different data type, both the header and the subsequent consecutive data blocks will be misprocessed.
[0058] Therefore, it is particularly important to improve the error detection capability of key information in data bursts and avoid misprocessing of data bursts under limited bandwidth constraints, without increasing air interface burst resources.
[0059] Based on this, this application provides a data transmission method, as shown in Figure 2, including:
[0060] S201, the first communication device sends a data burst, and the corresponding second communication device receives a data burst.
[0061] It can be understood that: the first communication device is a transmitting device, which can generate a data burst to be sent in response to the need to transmit specified data. After generating the data burst, the first communication device can send the data burst. Correspondingly, the second communication device is a receiving device, which receives the data burst.
[0062] The data burst includes a first part of data and a second part of data. The first part of data includes the protocol data unit (PDU) corresponding to the first data and includes key information of the data burst. The second part of data includes the PDU corresponding to the second data and a first error detection code. The first error detection code is obtained by processing part or all of the data of the PDU corresponding to the first data and the PDU corresponding to the second data through a verification algorithm.
[0063] In some embodiments, the first communication data is transmitted in bursts when the current channel is idle. Correspondingly, the second communication device may include one or more devices, and one or more devices may receive the data bursts.
[0064] Key information about data bursts can refer to: key information associated with the attributes of data bursts.
[0065] In some embodiments, the first data includes one or more data items, each containing different key information. Each data item corresponds to one or more bit positions in the PDU, meaning each data item indicates different key information associated with the data burst attribute. A PDU may contain multiple key information items. The first part of the data may include PDUs corresponding to multiple data items. For example, key information includes data type and system code. The data type is used to distinguish the meaning of the payload information, corresponding to one or more fixed bit positions in the PDU, and the system code corresponds to another one or more fixed bit positions in the PDU.
[0066] In some embodiments, the PDU format corresponding to the second data corresponds to at least one of the key information items, as detailed in step S302 below, which will not be elaborated here.
[0067] In some embodiments, the first part of the data further includes a first error correction code, which is obtained by processing the PDU corresponding to the first data through an error correction algorithm; the second part of the data further includes a second error correction code, which is obtained by processing the PDU corresponding to the second data and the error detection code through an error correction algorithm.
[0068] It is understandable that a data burst is not limited to including only the first and second parts of data, but may also include other parts of data, such as the third part of data, which includes third data such as synchronization word units, user data, etc.
[0069] Therefore, it can be seen that a data burst consists of multiple data parts, such as the first part, the second part, ..., and the Nth part, where N>1. As shown in Figure 3, a data burst includes Data1, Data2, ..., DataN.
[0070] The first part, Data1, is limited by the number of bits in the data burst; it is typically a short data field that can only carry the protocol data unit Data1.PDU of the data signal (i.e., the first data) and the error correction code Data1.FEC (i.e., the first error correction code), but cannot carry the error detection code Data1.Check. The error correction code Data1.FEC can correct errors in Data1 within a limited range, but if the number of errors exceeds the correction range, it may decode the data signal into other defined signals. Furthermore, the first data usually includes critical information such as: data type (defining the PDU format / type information of the data burst or service transmission); color code (distinguishing walkie-talkie service group / area information); device ID (identifying the transmitting device); time slot number (indicating the time slot occupied when the data burst is transmitted); and other important information related to the transmitting device's identity, status, and the channel, time slot, service type, and data format of the transmitted data burst, affecting the receiving device's acquisition of complete specified data.
[0071] The second part of the data, Data2, is typically much longer than the first part; it is usually a long data field. It can carry the data signal Data2.PDU, the error detection code Data2.Check (the first error detection code), and the error correction code Data2.FEC (the second error correction code). The error detection code in the second part detects errors in the Data2.PDU, and the error correction code Data2.FEC corrects errors by combining the protocol data unit Data2.PDU and the error detection code Data2.Check from the second part of the data, further improving the error detection performance of the second part of the data.
[0072] Because the second part of the data has strong verification capabilities while the first part has weak verification capabilities, all or part of the first part of the data and the protocol data units of the second part of the data can be combined to generate the checksum Data2.Check for the second part of the data, as shown in Figure 4. The checksum Data2.Check for the second part of the data can verify both the protocol data unit Data2.PDU of the second part of the data and the protocol data unit Data1.PDU of the first part of the data. The first part of the data can be verified together with the second part of the data, enhancing error detection capabilities. In this way, the reliability of data burst transmission is improved without increasing the length of the air interface data burst.
[0073] It should be noted that the first communication device may first merge the first and second parts of data according to a certain arrangement rule. This arrangement rule could be that the first part of data is inserted before or after the second part of data, or inserted at a predetermined position in the middle of the second part of data, or after the second part of data. Then, the merged data is processed by a verification algorithm to obtain the checksum Data2.Check of the second part of data. Additionally, it should be understood that the arrangement rule for the first and second parts of data during air interface transmission may also be that the first part of data is before or after the second part of data, or that the first part of data is fragmented and inserted at different positions within the second part of data.
[0074] Similarly, the Nth part of the data, DataN, can also be a long data field, which can carry the data signal DataN.
[0075] S202, the second communication device decodes a burst of data.
[0076] The second communication device, i.e. the receiving device, receives the data burst and decodes the first part of the data burst and the second part of the data burst according to the preset decoding rules, so as to obtain the specified data sent by the first communication device.
[0077] For details of step S202, please refer to the embodiment corresponding to Figure 6 below, which will not be elaborated here.
[0078] In this embodiment of the application, in the data burst, the second part of the data includes a first error detection code. The first error detection code is obtained by processing part or all of the data of the PDU corresponding to the first data and the PDU corresponding to the second data through a verification algorithm. It can be used to perform error detection on the PDU corresponding to the first data and the PDU corresponding to the second data, thereby improving the error detection capability of key information in the data burst without increasing air interface burst resources.
[0079] The process of the first communication device generating a data burst is described below with reference to Figure 5.
[0080] As shown in Figure 5, the process of the first communication device generating a data burst includes:
[0081] S301, Generate the first part of the data, Data1.
[0082] As a transmitting terminal, the first communication device can generate one or more data bursts when it needs to send data or control information. Specifically, the first communication device first frames key information such as data type and system code used to identify the meaning of the data burst to form the first unit of protocol data unit Data1.PDU. Then, the first communication device calls the error correction coding algorithm of the first part of the data, such as BPTC block coding, adds redundant information bits Data1.FEC, and encodes and generates the first part of data Data1.
[0083] S302. Based on all or part of the PDU of the first part of the data and the PDU of the second part of the data, calculate the check value Data2.Check of the second part of the data.
[0084] The first communication device determines the protocol data unit format of the second part of the data based on the data type in the first part of the data. It combines the data or control information, such as the source address of the call, the destination address of the call, and service options, and frames the information to be sent, such as user-specified information, GPS information, and voice control information, to form the protocol data unit Data2.PDU of the second part.
[0085] The protocol data units Data1.PDU of the first part of the data and Data2.PDU of the second part of the data are merged according to a certain arrangement rule to generate a new data block. Then, a verification algorithm, such as CRC cyclic redundancy check, checksum CS, parity check, etc., is called to calculate and generate the check value Data2.Check of the second part of the data. The arrangement rule can insert the first part of the data before, after, or in the middle of the second part of the data.
[0086] S303, Generate the second part of the data, Data2.
[0087] The protocol data unit Data2.PDU of the second part of the data and the check value Data2.Check of the second part of the data are merged according to a certain arrangement rule to generate a new data block. Usually, Data2.Check is placed after Data2.PDU. The new data block calls the error correction coding algorithm of the second part of the data, such as BPTC block coding, adds redundant information bits Data2.FEC, and generates the second part of the data Data2.
[0088] S304, Generate a complete data burst.
[0089] Other data parts are generated according to the requirements of data burst, such as: third part data Data3, fourth part data Data4...DataN. According to the frame format requirements of air interface data burst, multiple parts of data are arranged according to the frame format rules required by data burst to generate air interface data burst Data Burst. In some embodiments, multiple parts of data may be fully or partially intertwined.
[0090] In some embodiments, after receiving a data burst, the second communication device, i.e., the receiving device, can parse the data burst. The process of parsing the data burst by the second communication device is described below with reference to Figure 6.
[0091] As shown in Figure 6, the process of parsing data bursts by the second communication device includes:
[0092] S401. Parse the first part of the data to obtain the PDU of the first part of the data, and decode the PDU of the first part of the data to obtain key information.
[0093] The second communication device, acting as a receiving terminal, receives a data burst. Following the format of the data burst during transmission, it first recovers the first part of the data, the second part, and the Nth part. The second communication device first performs error correction decoding on the first part of the data, Data1, to obtain the protocol data unit Data1.PDU, i.e., the PDU corresponding to the first data. It then further parses the protocol data unit Data1.PDU to obtain key information such as the data type and system code that identify the meaning of the data burst information.
[0094] In some embodiments, one way to parse the first part of the data and obtain the PDU of the first part of the data includes:
[0095] Based on the first error correction code, the first part of the data is corrected and decoded according to the preset encoding and decoding rules (such as Block Product Turbo Code, BPTC encoding) to obtain the PDU corresponding to the first data.
[0096] S402. Parse the second part of the data to obtain the PDU and the first check value of the second part of the data.
[0097] The second communication device parses the second part of the data, Data2, and calls the preset error correction and decoding algorithm for the second part of the data to obtain the protocol data unit Data2.PDU of the second part of the data and the first check value Data2.Check of the second part of the data. The protocol data unit Data2.PDU of the second part of the data is the PDU corresponding to the second data, and the first check value Data2.Check is the first error detection code, or First Check.
[0098] In some embodiments, the protocol data unit Data2.PDU of the second part of the data further includes: querying the protocol data unit format of the second part of the data based on key information such as data type obtained from parsing the first part of the data to identify the meaning of the burst information, and deframing the second part of the data according to the queried protocol data unit format of the second part of the data to obtain the protocol data unit Data2.PDU of the second part of the data.
[0099] In some embodiments, the methods for parsing the second part of the data to obtain the PDU of the second part of the data and the first check value include:
[0100] Based on the second error correction code, the second part of the data is corrected and decoded according to the preset encoding and decoding rules (such as Block Product Turbo Code, BPTC encoding) to obtain the PDU of the second part of the data and the first check value.
[0101] S403. Process part or all of the PDU data of the first part of the parsed data and the PDU data of the second part of the parsed data through the verification algorithm to obtain the second verification value.
[0102] The second communication device merges some or all of the protocol data unit Data1.PDU of the first part of the data and the protocol data unit Data2.PDU of the second part of the data according to a preset arrangement rule (the same arrangement rule used by the first communication device, i.e., the transmitting device), to generate a new data block, and calls the same verification algorithm used by the first communication device to calculate and generate a second verification value, namely the second error detection code.
[0103] S404. Determine whether the received first check value and the calculated second check value are the same.
[0104] If they are the same, it indicates that the data burst decoding is correct, and step S405 is executed, and the second communication device can continue to process the data burst correctly; if they are different, it indicates that an error occurred in the decoding process of the protocol data unit of the first data or the protocol data unit of the second data, and step S406 is executed, and the second communication device performs error processing on the received data burst.
[0105] In some embodiments, error handling may include, for example, discarding received data bursts or sending a retransmission request to the first communication device.
[0106] In some embodiments, proper processing of data bursts may include: based on information obtained from parsing the first part of the data to identify the meaning of the data burst information, such as the data type, querying the protocol data unit format of the second part of the data, and deframing according to the queried protocol data unit format of the second part of the data to obtain the protocol data unit Data2.PDU of the second part of the data, further obtaining the content of the second data, and then performing a specified action based on the content of the second data, such as executing user commands transmitted by the transmitting device through the data burst.
[0107] The explanation compares the original control signaling block (CSBK) data burst of the DMR protocol with the data burst provided in the embodiments of this application.
[0108] As shown in Figure 7, the CSBK data burst is 264 bits long and consists of three data frame parts, Data1 to Data3, where:
[0109] The first part, Data1, is 20-bit time-slot type data, including Data1.PDU and Data1.FEC. Data1.PDU includes a 4-bit color code (CC) and a 4-bit data type (Data Type). Data1.FEC refers to a 12-bit time-slot type Golay error correction code (or error correction code) generated by the Golay(8,20) encoding algorithm. In essence, the first part, Data1, defines the information meaning of the second part, Data2.
[0110] The second part, Data2, consists of 196 bits and includes Data2.PDU (80-bit CSBK PDU), Data2.Check (16-bit CRC cyclic check code, i.e., error detection code), and Data2.FEC (100-bit BPTC error correction code, i.e., error correction code).
[0111] The third part, Data3, includes 48 bits of data synchronization text.
[0112] As shown in Figure 8(a), the original DMR standard protocol only requires the checksum of the second part of the data to be applied only to the protocol data units of the second part of the data, that is: Data2.Check only checks the 80-bit CSBK PDU. The first part of the data carries a limited amount of data and does not support the verification of the CC and Data Type of Data1.PDU. Therefore, once the Data Type is misunderstood as non-CSBK type data, the PDU of the second part of the data will be parsed according to the incorrect data type, resulting in erroneous data processing.
[0113] As shown in Figure 8(b), the CSBK data burst for the DMR standard protocol provided in this embodiment merges the PDU of the first part of the data (e.g., 4-bit CC and 4-bit Data Type) with the PDU of the second part of the data, and calculates the checksum Data2.Check of the second part of the data to verify the first and second parts of the data, thereby improving the error detection capability of the first part of the data. Specifically, the PDU of the first part of the data is inserted before the PDU of the second part of the data, and the checksum is calculated together with the PDU of the second part of the data.
[0114] The PDU of the second part of the data and the newly calculated check code Data2.Check of the second part of the data are used to call the BPTC(96,196) encoding algorithm to perform error correction encoding and interleaving to generate 196 bits of the second part of the data. Then, the second part of the data, the first part of the data, and the third part of the data are framed to generate a 264-bit CSBK data burst.
[0115] The following example illustrates the data transmission scheme provided in the embodiments of this application.
[0116] In this example, the first communication device generates and sends a CSBK data burst, specifically including the following steps:
[0117] 1. Generate the protocol data unit Data1 for the first part of the data.
[0118] Generate the first part of the data, Data1.PDU, which is: the value of the color code CC of the slot type SlotType is set to the channel color code CC of the frequency writing configuration, and the value of the data type Data Type is set to 3, indicating that it is CSBK data.
[0119] Call the Golay(8,20) error correction algorithm on the 8-bit Data1.PDU (i.e., the 8-bit SlotType PDU) to add a 12-bit error correction information unit Data1.FEC, and generate the first part of the 20-bit data Data1.
[0120] 2. Calculate the check value Data2.Check for the second part of the data.
[0121] Based on the data type of the first part of the data, namely CSBK, the protocol data unit format of the second part of the data is queried. The data that forms the second part of the data is then filled with CSBK information unit fields according to the PDU structure of CSBK. For example, the last block identifier LB, protection identifier PF, control signaling block opcode CSBKO, feature identifier FID, and 64-bit data fields (including 8-bit service options, 8-bit reserved information, 24-bit target address, and 24-bit source address) are filled. The data is then framed to form the protocol data unit Data2.PDU (80-bit CSBK PDU) of the second unit.
[0122] The protocol data units Data1.PDU (8-bit SlotType PDU) of the first part of the data and Data2.PDU (80-bit CSBK PDU) of the second part of the data are merged according to a certain arrangement rule to generate a new data block. The CRC-CCITT checksum algorithm is then called to calculate the checksum Data2.Check (16-bit CRC) of the second part of the data. The PDU of the first part of the data can be all or part of the first part of the data. According to a certain arrangement rule, the first part of the data can be inserted before, after, or in the middle of the second part of the data.
[0123] 3. Generate the second part of the data, Data2.
[0124] The protocol data unit Data2.PDU (80-bit CSBK PDU) of the second part of the data and the check value Data2.Check (16-bit CRC) of the second part of the data are merged according to a certain arrangement rule to generate a new data block. Usually, Data2.Check is placed after Data2.PDU. The new data block calls the error correction coding algorithm BPTC (96, 196) of the second part of the data to encode and generate the second part of the data Data2 (196-bit payload information), of which there are 100 bits of redundant information bits (Data2.FEC).
[0125] 4. Form a complete data burst and send it to at least one terminal.
[0126] The first part of the data, Data1 (20-bit time slot type), the second part of the data, Data2 (196-bit payload), and the third part of the data, Data3 (48-bit synchronization frame), are framed to form a CSBK data burst (264-bit CSBK data).
[0127] When the channel is idle, send a CSBK data burst to at least one second communication device.
[0128] The second communication device receives and parses CSBK data bursts, specifically including the following steps:
[0129] 1. Parse the first part of the data to obtain the PDU of the first part of the data.
[0130] When the second communication device receives a data burst, it first performs Golay(8,20) error correction decoding on the first part of the data (e.g., slot type) to obtain the protocol data unit PDU of the first part of the data (e.g., 8-bit slot type, including 4-bit color code CC and 4-bit data type DataType).
[0131] 2. Parse the second part of the data to obtain the PDU and the first checksum of the second part of the data.
[0132] Combining the data type information (DataType) of the protocol data unit in the first part of the data, the BPTC(96,196) error correction and decoding algorithm of the second part of the data is called to parse the second part of the data (i.e., the payload information) and obtain the protocol data unit (PDU) and the first check value (First Check) of the second part of the data.
[0133] If DataType=3, it indicates that CSBK data is received. The protocol data unit Data2.PDU (80-bit CSBK PDU) of the second part of the data and the check value Data2.Check (16-bit CRC) of the second part of the data are recovered. If DataType is another data control frame, the protocol data unit of the second part of the data and the check value of the second part of the data are recovered according to the format of the other data control frame.
[0134] The First Check value is assigned to the check value Data2.Check (16-bit CRC) of the second part of the data, indicating the check value of the burst of data received over the air interface.
[0135] 3. Calculate the second check value based on the PDU of the first part of the data and the PDU of the second part of the data.
[0136] The second communication device merges the protocol data unit Data1.PDU (8-bit SlotType, i.e., 4-bit CC and 4-bit Data Type) (partial or complete) of the first part of the data and the protocol data unit Data2.PDU (80-bit CSBK) of the second part of the data according to the same arrangement rules as the first communication device to generate a new data block; and calls the same check algorithm CRC-CCITT as the first communication device to calculate and generate the second check value Second Check.
[0137] 4. Perform error handling or correct handling.
[0138] Determine if the first check value (First Check) and the second check value (Second Check) are the same.
[0139] If the first check value equals the second check value, it indicates that the data burst is decoded correctly, and the second communication device can continue to process the CSBK data burst correctly, such as resolving the target address of the call and receiving its own CSBK data; otherwise, it is discarded.
[0140] If the first check value is not equal to the second check value, it indicates that an error occurred during the decoding process of the protocol data unit Data1.PDU (8-bit Slot Type) of the first part of the data or the protocol data unit Data2.PDU (80-bit CSBK) of the second part of the data. The second communication device performs error processing on the received data burst, such as discarding the received data burst or notifying the first communication device to retransmit the data block with the erroneous reception.
[0141] Figure 9 shows a hardware structure block diagram of a communication device provided in an embodiment of this application. The communication device can be a digital intercom device (or walkie-talkie).
[0142] Referring to FIG9, the communication device may include: at least one processor 110, at least one memory 120, at least one communication interface 130, and one or more antennas 140.
[0143] In this embodiment, the processor 110, communication interface 130, and memory 120 communicate with each other via a communication bus. The communication interface 130 receives signals from the processor 110, converts the signals into radio frequency (RF) signals, and transmits the RF signals through one or more antennas 140. It can also receive signals from other devices through one or more antennas 140. The communication interface 130 can be a transceiver or an input / output interface.
[0144] The processor 110 may be a central processing unit (CPU), an application-specific integrated circuit (ASIC), or configured as one or more integrated circuits.
[0145] The memory 120 may include random access memory (RAM) or non-volatile memory (NVM, for example, at least one disk storage).
[0146] The memory stores a program, which the processor can call to execute. This program performs the various functions and operational steps of the first or second communication device described above, to implement any of the data transmission methods described above. Optionally, the refined and extended functions of the program can be referred to the description above.
[0147] This application also provides a computer-readable storage medium storing instructions that, when executed on one or more computing devices, cause the one or more computing devices to perform the data transmission method described in the above embodiments.
[0148] Computer-readable storage media can be non-transitory computer-readable storage media, such as read-only memory (ROM), random access memory (RAM), CD-ROM, magnetic tape, floppy disk, and optical data storage devices.
[0149] This application also provides a computer program product. When executed by one or more computing devices, the computer program product allows the computing devices to execute any of the aforementioned data transmission methods. The computer program product can be a software installation package. When any of the aforementioned information indication methods is required, the computer program product can be downloaded and executed on a computer.
[0150] This application provides a data transmission system, including a first device and a second device. The first device is used to generate a data burst to be sent in response to a request to transmit specified data. The data burst includes a first part of data and a second part of data. The first part of data includes a Protocol Data Unit (PDU) corresponding to the first data and includes key information associated with the attributes of the data burst. The second part of data includes a PDU corresponding to the second data and a first error detection code. The first error detection code is obtained by processing part or all of the data of the PDU corresponding to the first data and the PDU corresponding to the second data through a verification algorithm. The format of the PDU corresponding to the second data corresponds to at least one of the key information.
[0151] The first device is also used to send the data burst;
[0152] The second device is used to receive the data burst, decode the first part of the data and the second part of the data burst according to the preset decoding rules, and obtain the specified data sent by the sending device.
[0153] In one embodiment, the first device can be walkie-talkie terminal A, and the second device can be walkie-talkie terminal B; in another embodiment, the first device can be walkie-talkie terminal B, and the second device can be walkie-talkie terminal A. Walkie-talkie terminal A and walkie-talkie terminal B are different wireless communication devices.
[0154] The above-described embodiments are only used to illustrate the technical solutions of this application, and are not intended to limit it. Although this application has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that modifications can still be made to the technical solutions described in the foregoing embodiments, or equivalent substitutions can be made to some of the technical features. Such modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the scope of the technical solutions of the embodiments of this application.
Claims
1. A data transmission method, characterized by, The method comprises: A sending device generates a data burst to be sent in response to a requirement of transmitting specified data; the data burst comprises a first part of data and a second part of data, the first part of data comprises a protocol data unit (PDU) corresponding to first data, the first data comprises key information associated with attributes of the data burst, and the second part of data comprises a PDU corresponding to second data and a first error detection code, the first error detection code being obtained by processing part or all of the PDU corresponding to the first data and the PDU corresponding to the second data through a checking algorithm; the PDU corresponding to the second data has a corresponding relationship with at least one item of the key information; The sending device sends the data burst; A receiving device receives the data burst, decodes the first part of data and the second part of data in the data burst respectively according to a preset decoding rule, and obtains the specified data sent by the sending device.
2. The method of claim 1, wherein, The first data comprises a plurality of items of data, and each item of data indicates different key information associated with the attributes of the data burst.
3. The method according to claim 1 or 2, characterized in that, The first part of data further comprises a first error correction code, the first error correction code being obtained by processing the PDU corresponding to the first data through an error correction algorithm; and the second part of data further comprises a second error correction code, the second error correction code being obtained by processing the PDU corresponding to the second data and the error detection code through the error correction algorithm.
4. The method according to claim 1 or 2, characterized in that, The data burst further comprises a third part of data, and the third part of data comprises a protocol data unit (PDU) corresponding to third data.
5. The method according to claim 1 or 2, characterized in that, The PDU corresponding to the second data is generated in the following manner: Based on a data type in the key information, a format of the PDU corresponding to the second data is determined; The second data is processed according to the format of the PDU corresponding to the second data to obtain the PDU corresponding to the second data.
6. The method of claim 1 or 2, wherein, When the first error detection code is obtained by processing part or all of the PDU corresponding to the first data and the PDU corresponding to the second data through the checking algorithm, the arrangement of part or all of the PDU corresponding to the first data and the PDU corresponding to the second data is that part or all of the PDU corresponding to the first data is located before, after or in the middle of the PDU corresponding to the second data.
7. The method of claim 1, wherein, The receiving device decodes the first part of data and the second part of data in the data burst respectively according to a preset decoding rule, which comprises: The receiving device parses the first part of data in the data burst to obtain the PDU corresponding to the first data, and decodes the PDU corresponding to the first data to obtain the key information; The receiving device parses the second part of data in the data burst to obtain the PDU corresponding to the second data and the first error detection code; The receiving device processes part or all of the PDU corresponding to the first data and the PDU corresponding to the first data obtained by parsing through a preset checking algorithm to obtain a second error detection code; The receiving device determines whether the first error detection code and the second error detection code are the same. If the first error detection code and the second error detection code are different, the first part of data and the second part of data are decoded incorrectly, and if the first error detection code and the second error detection code are the same, the first part of data and the second part of data are decoded correctly.
8. The method of claim 7, wherein, The parsing the second part of data in the data burst to obtain the PDU corresponding to the second data and the first error detection code further comprises: determining the format of the PDU corresponding to the second data based on the data type in the decoded key information; decoding the PDU corresponding to the second data according to the format of the PDU corresponding to the second data.
9. The method according to claim 7 or 8, characterized in that, The first part of data further comprises a first error correction code, and the second part of data further comprises a second error correction code; the parsing the first part of data in the data burst to obtain the PDU corresponding to the first data comprises: error correction decoding the first part of data based on the first error correction code to obtain the PDU corresponding to the first data; The parsing the second part of data in the data burst to obtain the PDU corresponding to the second data and the first error detection code comprises: error correction decoding the second part of data based on the second error correction code to obtain the PDU corresponding to the second data and the first error detection code.
10. A computer program product, characterised in that, The computer program, when executed, causes the method of any one of claims 1 to 9 to be performed.
11. A data transmission system, characterized by The system comprises a first device and a second device, the first device is configured to generate a data burst to be sent in response to a requirement of transmitting specified data; the data burst comprises a first part of data and a second part of data, the first part of data comprises a protocol data unit (PDU) corresponding to first data, the first data comprises key information associated with attributes of the data burst, and the second part of data comprises a PDU corresponding to second data and a first error detection code, the first error detection code is obtained by processing part or all of data of the PDU corresponding to the first data and the PDU corresponding to the second data by an inspection algorithm; the format of the PDU corresponding to the second data has a corresponding relationship with at least one item of the key information; The first device is further configured to send the data burst; The second device is configured to receive the data burst, decode the first part of data and the second part of data in the data burst according to a preset decoding rule respectively, and obtain the specified data sent by the sending device.