WO2015184914A1 - 一种数据包处理方法及装置 - Google Patents
一种数据包处理方法及装置 Download PDFInfo
- Publication number
- WO2015184914A1 WO2015184914A1 PCT/CN2015/075409 CN2015075409W WO2015184914A1 WO 2015184914 A1 WO2015184914 A1 WO 2015184914A1 CN 2015075409 W CN2015075409 W CN 2015075409W WO 2015184914 A1 WO2015184914 A1 WO 2015184914A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- packet
- sub
- bits
- length
- block
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/29—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes
- H03M13/2906—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes using block codes
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
- H03M13/11—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits using multiple parity bits
- H03M13/1102—Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
- H03M13/13—Linear codes
- H03M13/15—Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes
- H03M13/151—Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes using error location or error correction polynomials
- H03M13/1515—Reed-Solomon codes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0056—Systems characterized by the type of code used
- H04L1/0057—Block codes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0056—Systems characterized by the type of code used
- H04L1/0061—Error detection codes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0056—Systems characterized by the type of code used
- H04L1/0064—Concatenated codes
- H04L1/0066—Parallel concatenated codes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0076—Distributed coding, e.g. network coding, involving channel coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/20—Arrangements for detecting or preventing errors in the information received using signal quality detector
- H04L1/203—Details of error rate determination, e.g. BER, FER or WER
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/0078—Avoidance of errors by organising the transmitted data in a format specifically designed to deal with errors, e.g. location
- H04L1/0083—Formatting with frames or packets; Protocol or part of protocol for error control
Definitions
- the present invention relates to a data communication transmission technology, and more particularly to a data packet processing method and apparatus.
- a digital communication system especially a wired communication system, such as optical fiber communication, microwave communication, millimeter wave communication, etc.
- transmission on a communication channel is divided into one data packet for transmission.
- a large amount of network traffic is required.
- the data packets transmitted on the communication channel are relatively large, and each data packet is further divided into relatively small channel coded code blocks (ie, code block partitioning) for transmission, so that the channel coding code module has relatively small complexity.
- the working point of the general equipment requires that the transmission error rate BLER is 10 -1 .
- the MAC layer supports the ARQ mechanism, that is, if the data packet transmission error occurs, the mechanism is repeatedly transmitted. Data packets to ensure reliable transmission of data.
- ARQ mechanism especially in a one-way communication channel, for example, when transmitting various data in a television multimedia broadcasting system, the receiving end has no way to return data to the transmitting end, thereby failing to indicate whether the data packet is correctly received, and then cannot be used.
- ARQ mechanism In this case, it is necessary to place the operating point of the communication system at a position where the packet error rate BLER is relatively low, that is, a larger SNR (or more energy is required).
- the main scenarios and requirements include direct communication D2D, IoT communication MMC, ultra-density network communication UDN, mobile network communication MN and ultra-reliable communication UN.
- the future 5G link enhancement technology needs to meet the characteristics of low latency and high throughput. Therefore, how to reduce the number of HARQ retransmissions or retransmission delay for the future HARQ-enabled communication system is a problem to be solved. Among them, reducing the packet error rate BLER of the transmitted data packet is a very direct and effective solution.
- Embodiments of the present invention provide a data packet processing method and apparatus that can improve transmission performance of a data packet.
- a, b are integers greater than zero.
- Performing a bit selection operation on the a block error correction coding sub-packet and the b-block syndrome data packet to form an encoded data packet including:
- Performing network coding on the a block error correction coding sub-packet to obtain a b-block syndrome packet including:
- the error correction coding uses LDPC coding, Turbo coding or convolutional coding.
- h is equal to 100, 95, 90, 80, 75 or 50.
- the method further includes: filling the source data packet with k' bits, so that the length of the padded source data packet can be divisible by m1, where k' is an integer greater than or equal to 0. M1 is a predetermined first code block length; or
- bits that are not selected in the a block error correction coding sub-packet do not include padded bits.
- the error correction coding uses LDPC coding, and the network coding uses a single parity coding to obtain a parity sub-packet P0 of length n bits, and the ith block error correction coding sub-packet is not selected.
- the index set Length e i and index set The length f0 is determined in the following way:
- n is greater than or equal to Indicates the length of the syndrome packet P0; A is an integer greater than or equal to 2; E is an integer greater than or equal to 1.
- the index set Length e i and index set The length f0 is determined in the following way:
- n is greater than or equal to Indicates the length of the syndrome packet P0;
- A is an integer greater than or equal to 2.
- the index set Length e i and index set The length f0 is determined in the following way:
- n is greater than or equal to Indicates the length of the syndrome packet P0.
- the encoded data packet Y is generated as follows:
- the A is an integer that takes a value within [10, 24].
- the E is 16, 32, 42, 64, 84, 128, 126 or 256.
- a data packet processing apparatus provided by an embodiment of the present invention includes:
- the code block segmentation module is configured to perform code block segmentation on the source data packet to obtain a block sub-data packet
- the error correction coding module is configured to perform error correction coding on each sub-packet separately or add a CRC sequence to each sub-packet and then perform error correction coding to obtain an a block error correction coding sub-packet, where a is greater than 0. Integer
- a network coding module configured to perform network coding on the a block error correction coding sub-packet, to obtain a b-block syndrome data packet, where b is an integer greater than 0;
- the bit selection module is configured to perform a bit selection operation on the a block error correction coding sub-packet and the b-block syndrome data packet, respectively, to jointly form the encoded data packet.
- the bit selection module performs a bit selection operation on the a block error correction coding sub-packet and the b-block syndrome data packet to form an encoded data packet, including:
- the network coding module performs network coding on the a block error correction coding sub-packet to obtain a b-block syndrome data packet, including:
- the error correction coding uses LDPC coding, Turbo coding or convolutional coding.
- the bit selection module employs h equal to 100, 95, 90, 80, 75 or 50.
- the method further includes: a bit filling module configured to fill the source data packet with k' bits, so that the length of the filled source data packet can be divisible by m1, wherein k' is an integer greater than or equal to 0, and m1 is a predetermined number One block length; or,
- bits that are not selected in the a block error correction coding sub-packet determined by the bit selection module do not include padded bits.
- the error correction coding module adopts LDPC coding, and the network coding module adopts single parity coding to obtain one parity sub-packet P0 of length n bits;
- the bit selection module does not have an index set of selected bits in the ith block error correction coding sub-packet when performing a bit selection operation
- the length of e i the index set of the bits in the check sub-packet P0 that are not selected
- the first index in the index is equal to the index set The last index in the plus 1;
- the bit selection module When the bit selection module performs a bit selection operation, if a is less than or equal to the set threshold A and greater than 1, the index set Length e i and index set The length f0 is determined in the following way:
- n is greater than or equal to Indicates the length of the syndrome packet P0; A is an integer greater than or equal to 2; E is an integer greater than or equal to 1.
- the bit selection module When the bit selection module performs a bit selection operation, if a is greater than a set threshold A, the index set Length e i and index set The length f0 is determined in the following way:
- n is greater than or equal to Indicates the length of the syndrome packet P0;
- A is an integer greater than or equal to 2.
- n is greater than or equal to Indicates the length of the syndrome packet P0.
- the encoded data packet Y is generated as follows:
- a used by the bit selection module is an integer that takes values in [10, 24].
- the bit selection module employs E of 16, 32, 42, 64, 84, 128, 126 or 256.
- the embodiment of the invention further provides a computer readable storage medium storing program instructions, which can be implemented when the program instructions are executed.
- the above data packet processing method and device perform network coding operation on each encoded sub-data packet in the data packet, so that there is a certain association between all the encoded sub-data packets, so that the receiving end can use the layer association for decoding, Improve packet transmission performance. By removing some of the bits in the encoded sub-packet, the coding efficiency caused by network coding can be avoided.
- the source data packet is generally large, and is divided into a large number of code blocks, which is very suitable for adopting the above solution of the embodiment of the present invention. .
- FIG. 1 is a flowchart of a data packet processing method according to an embodiment of the present invention.
- FIG. 2 is a schematic diagram of a data processing process in a data packet processing method according to an embodiment of the present invention
- FIG. 3 is a block diagram of a packet processing apparatus according to an embodiment of the present invention.
- FIG. 4 is a schematic diagram of bits in which error correction coding sub-packets and syndrome data packets are not selected and selected in the second embodiment of the present invention (with 100 error correction sub-packets (LDPC), which are not selected. Bit index is centralized);
- FIG. 5 is a schematic diagram of bits in which each error correction coding sub-packet and syndrome packet is not selected and selected in the third embodiment of the present invention (there are 100 error correction sub-packets (LDPC), which are not selected. Bit index is discrete);
- each error correction coding sub-packet and syndrome packet are not provided.
- a schematic diagram of the bits selected and selected (with 10 error correction sub-packets (LDPC), the bit indices not selected are concentrated);
- FIG. 7 is a schematic diagram of a bit in which each error correction coding sub-packet and syndrome packet is not selected and selected in the fifth embodiment of the present invention (there are three error correction sub-packets (Turbo), which are not selected. Bit index is centralized);
- FIG. 8 is a schematic diagram of a bit in which each error correction coding sub-packet and syndrome packet is not selected and selected in the sixth embodiment of the present invention (there are three error correction sub-packets (Turbo), which are not selected.
- the bit index is centralized, and the network coding module uses 2-bit parity parity coding);
- FIG. 9 is a schematic diagram of coding performance gain when the code rate is 1/2 in the embodiment of the present invention.
- Figure 10 is a diagram showing the coding performance gain at a code rate of 13/16 in the embodiment of the present invention.
- the sub-packets of FIGS. 4 to 8 are filled with black areas to indicate selected bit portions, the unfilled areas represent unselected bit portions, and the hatched areas indicate padded bit portions.
- the larger source data packet code block is divided into a plurality of sub-data packets, and then the channel error correction coding is performed on the sub-data packets, and then the error correction coding code block is network-coded to generate a small amount of verification (duplicate
- the sub-data packet obtains the encoded data packet to be transmitted by the bit selection operation method, thereby improving the overall packet error rate BLER performance of the data packet and reducing the requirement for the bit error rate BCER.
- the data packet processing method in this embodiment includes at least the following steps:
- Step 110 performing code block segmentation on the source data packet to obtain a block sub-data packet, where a is an integer greater than 0;
- the method may further include: filling the source data packet with k' bits, so that the filled source data packet is The length can be divisible by m1, where k' is an integer greater than or equal to 0, and m1 is a predetermined first code block length.
- the a-sub-sub-packet is respectively filled with k i bits, so that the length of each sub-packet after the padding is equal to the predetermined second code.
- Step 120 Add a CRC sequence to each sub-packet respectively.
- This step is optional.
- Step 130 performing error correction coding on each sub-packet, respectively, to obtain an a block error correction coding sub-packet
- the sub-packet in this step may be a sub-packet after adding a CRC sequence, or may be a sub-packet without adding a CRC sequence.
- the error correction coding in this step may adopt different network coding coding methods such as LDPC coding, Turbo coding or convolutional coding.
- the bit stuffing process may be performed, that is, the block error correction coding sub-packets are respectively filled with k j bits, so that each padded error correction coded sub-packet is filled.
- Step 140 Perform network coding on the a block error correction coding sub-packet to obtain a b-block syndrome data packet, where b is an integer greater than 0;
- the network coding for this step can be as follows:
- the above-described single parity coding means that all input information bits are set S, and binary exclusive OR is added to the set S to obtain one parity bit.
- the b-bit parity check coding refers to: all input information bits are set S, and a subset X of the set S is XORed to obtain the first check bit; the set S and the A subset of the new set of check bits consisting of a binary exclusive OR addition to obtain a second check bit; a new set consisting of the set S and the first check bit and the second check bit a subset of s3 is binary exclusive-added to obtain a third check bit; and so on, binary exclusive-addition of a subset sb of the new set of sets S and the first b-1 check bits , obtaining the bth check bit;
- Step 150 Perform bit selection operations on the a block error correction coding sub-packet and the b-block syndrome data packet to form a coded data packet.
- This step includes:
- the error correction coding uses LDPC coding
- the network coding uses a single parity coding to obtain a parity sub-packet P0 of length n bits, and the ith block is error-corrected.
- the length f0 can be determined in the following way:
- n is greater than or equal to Indicates the length of the syndrome packet P0;
- A is an integer greater than or equal to 2, such as A can take values in the range [10, 24],
- E is an integer greater than or equal to 1, such as 16, 32, 42, 64, 84, 128, 126 or 256.
- the encoded data packet Y can be generated as follows:
- the data packet processing apparatus includes:
- the code block segmentation module 10 is configured to perform code block segmentation on the source data packet to obtain a block sub-packet.
- the error correction coding module 20 is configured to perform error correction coding on each sub-packet separately or add a CRC sequence to each sub-packet, and then perform error correction coding to obtain an a block error correction coding sub-packet, where a is greater than An integer of 0; optionally, the error correction coding adopts an encoding method different from network coding, such as LDPC encoding, Turbo encoding, or convolutional encoding.
- the network coding module 30 is configured to perform network coding on the a block error correction coding sub-packet to obtain a b-block syndrome packet, where b is an integer greater than 0;
- the bit selection module 40 is configured to perform a bit selection operation on the a block error correction coding sub-packet and the b-block syndrome packet, respectively, to jointly form the encoded data packet.
- the bit selection module 40 performs a bit selection operation on the a block error correction coding sub-packet and the b-block syndrome data packet to form an encoded data packet, which may include:
- the network coding module 30 performs network coding on the a block error correction coding sub-packet to obtain a b-block parity sub-packet, which may include:
- the data packet processing apparatus of this embodiment may further include: a bit filling module configured to fill the source data packet with k' bits, so that the length of the filled source data packet can be divisible by m, wherein k' is greater than or equal to 0.
- m is a predetermined code block length after division; or, a block sub-packets configured to perform code block segmentation on the source data packet are respectively filled with k i bits, so that each sub-packet after padding is filled
- the unselected bits in the a block error correction coding sub-packet determined by the bit selection module do not include padded bits.
- the error correction encoding module 20 employs LDPC encoding
- the network encoding module 30 uses a single parity encoding to obtain a parity sub-packet P0 of length n bits;
- the ith block error correction coding sub-packet has no index set of selected bits.
- Index set Length e i and index set The length f0 can be determined in the manner as described above, and will not be described again here.
- the CRC sequence of bits, each sub-packet length becomes 336 bits; LDPC encoding is performed on each sub-packet after adding an 8-bit CRC sequence for each block, and 100 LDPC coded sub-packets are obtained, each having a length of 672 bits, filled The number of bits is 0 bits; a single parity check coding method is used in the network coding process, and the 100 LDPC coded sub-packets are network-coded to obtain one check sub-data packet; the bit selection operation is performed according to the following rules: Packet Y:
- Index set of all 100 LDPC coded sub-packets and 1 checker packet without selected bits Medium, all The intersection of at least 100% of the set pairs in the set pair is an empty set (that is, the indexes of the bits that are not selected in different data packets are different), wherein Is an index set of bits that are not selected in the ith block error correction coding sub-packet, Is the index set of bits that are not selected in the j-th block syndrome packet.
- the i-th block of all 100 LDPC coded sub-packets has no index set of selected bits
- the i-th LDPC coded sub-packet has no index set of selected bits It can be expressed as Check sub-packet P0 has no index set of selected bits It can be expressed as
- the selected and unselected bits are as shown in FIG. 4.
- a discrete (discrete) manner can also be used to determine the bits that are not selected, as shown in FIG.
- the transmitted data packet Y is generated as follows:
- the system currently adopts a set channel coding code rate of 13/16, and the number of information bits required for the LDPC code mother code is 546, and subtracting 8 bits of the CRC sequence to obtain an actual maximum length of each sub-packet is 538.
- the first 8 sub-packets have a size of 521 bits, and the last two sub-packets have a size of 520.
- Index set of all 10 LDPC coded sub-packets and 1 checker packet without selected bits Medium, all The intersection of at least 100% of the set pairs in the set pair is an empty set, and SETAi is an index set of the selected bits in the ith block error correction coding sub-packet, Is an index set of bits that are not selected in the ith block error correction coding sub-packet, and SETPj is an index set of selected bits in the j-th block syndrome packet, Is the index set of bits that are not selected in the j-th block syndrome packet.
- the ith block of all 10 LDPC coded sub-packets has no index set of selected bits
- the i-th LDPC coded sub-packet has no index set of selected bits Expressed as Check sub-packet P0 has no index set of selected bits Expressed as Among the 10 LDPC coded sub-packets and 1 block of check sub-packets, the selected and unselected bits are as shown in FIG. 6.
- the index of the above unselected bits is continuous (concentrated) in each LDPC coded sub-packet, and of course, a distributed (discrete) manner can be employed.
- the transmitted data packet Y can be generated as follows:
- the system currently adopts a set channel coding rate of 3/4, and the LDPC code mother code needs to be used.
- the sub-packet has a sub-packet size of 496 bits; an 8-bit CRC sequence is added to each sub-packet; each sub-packet with an 8-bit CRC sequence added is LDPC-encoded to obtain one LDPC.
- the sub-packet size is 672 bits; the network coding process adopts a single parity coding method, the number of padding bits is 0 bits, and the one LDPC coded sub-packet is network-coded to obtain one block.
- the test packet has a length of 672 bits; the bit selection operation is performed according to the rules described below to obtain the packet Y:
- Index set of all unselected bits in one LDPC coded sub-packet and one block of check sub-packets The intersection of at least 100% of the set pairs of all the set pairs is an empty set, and SETA0 is an index set of the selected bits in the LDPC encoded sub-packets. Is an index set of bits that are not selected in the LDPC coded sub-packet, and SETP0 is an index set of the selected bits in the check sub-packet, Is an index set of bits that are not selected in the syndrome packet; the packet Y is sent.
- An index set of LDPC-encoded sub-packets that has no selected bits
- the packet Y and the LDPC encoded sub-packet are the same.
- the solution of the embodiment can be used for processing the data packet.
- the system currently adopts a set Turbo coding rate of 1/2, a code length of 1024 bits, and a required information bit number of 512, and subtracts 8 bits of the CRC sequence to obtain an actual sub-packet.
- the packet length is changed to 512 bits; the sub-packets after adding the CRC sequence for each block are Turbo-encoded to obtain three Turbo-encoded sub-packets, each having a length of 1024. Bits, the number of padding bits is 0 bits; a single parity encoding method is used in the network coding process, and the three turbo encoded sub-data packets are network-coded to obtain one parity sub-packet, and the length is 512 bits; The following rules perform a bit selection operation to obtain the packet Y:
- Index set of all 3 turbo encoded sub-packets and 1 check sub-packet without selected bits Medium, all The intersection of 50% of the set pairs in the set pair is an empty set, and SETAi is the index set of the selected bits in the i-th block Turbo coded sub-packets. Is an index set of bits that are not selected in the i-th block Turbo coded sub-packet, and SETPj is an index set of selected bits in the j-th block check sub-packet, Is an index set of bits that are not selected in the j-th block syndrome packet; the packet Y is transmitted.
- the 0th turbo encoded sub-packet has no index set of selected bits [0, 1, 2, ..., 99], the first block Turbo coded sub-packet has no index set of selected bits For [90, 91, 92, ..., 209], the second block Turbo coded sub-packet has no index set of selected bits. [200, 201, 202, ..., 359]; check sub-packet P0 has no index set of selected bits It is [350, 351, 352, ..., 449]; the remaining bits are the data of the packet Y to be transmitted.
- the selected and unselected bits are as shown in FIG. 7.
- the index of the unselected bits described above is continuous (concentrated) in each Turbo coded sub-packet, although a decentralized (discrete) manner can of course be employed.
- the solution of the data packet may be processed by using the solution of the embodiment of the present invention.
- the system currently adopts a set Turbo code rate of 1/2, a code length of 1024 bits, and the number of information bits required is 512, and subtracts 8 bits of the CRC sequence to obtain an actual number of sub-numbers.
- each sub-packet becomes 512 bits; the sub-packets after adding the CRC sequence for each block are Turbo-encoded to obtain three Turbo-encoded sub-packets, each having a length of 1024 bits and a padding number of 0 bits; network coding
- a 2-bit parity parity coding method is used, and the three Turbo coded sub-packets are network-coded to obtain two check sub-packets, and the length is 701 bits; the bit selection operation is performed according to the following rules to obtain data.
- Package Y
- the 0th turbo encoded sub-packet has no index set of selected bits [0, 1, 2, ..., 99], the first block Turbo coded sub-packet has no index set of selected bits For [90, 91, 92, ..., 209], the second block Turbo coded sub-packet has no index set of selected bits. [200, 201, 202, ..., 359]; the 0th block check sub-packet P0 has no index set of selected bits For [350, 351, 352, ..., 449], the first block of syndrome packets P1 has no index set of selected bits. It is [470, 471, 472, ..., 549]; the remaining bits are the data of the packet Y to be transmitted.
- the selected and unselected bits are as shown in FIG. 8.
- the index of the unselected bits described above is continuous (concentrated) in each Turbo coded sub-packet, although a decentralized (discrete) manner can of course be employed.
- the error correction coding method uses, for example, convolutional coding or RS coding, and the processing of the data packet may be performed by using the method of the embodiment of the present invention.
- the method is basically the same as the above embodiment.
- the method and apparatus for supporting improved packet transmission performance may also be stored in a computer readable storage medium if implemented in the form of a software function module and sold or used as a standalone product. Based on such understanding, those skilled in the art will appreciate that embodiments of the present application can be provided as a method, system, or computer program product. Thus, the present application can take the form of an entirely hardware embodiment, an entirely software embodiment, or an embodiment in combination of software and hardware.
- the application can take the form of a computer program product embodied on one or more computer-usable storage media containing computer usable program code, including but not limited to a USB flash drive, a mobile hard drive, a read only memory (ROM, Read-Only Memory), disk storage, CD-ROM, optical storage, etc.
- a USB flash drive a mobile hard drive
- a read only memory ROM, Read-Only Memory
- disk storage CD-ROM, optical storage, etc.
- the computer program instructions can also be stored in a computer readable memory that can direct a computer or other programmable data processing device to operate in a particular manner, such that the instructions stored in the computer readable memory produce an article of manufacture comprising the instruction device.
- the apparatus implements the functions specified in one or more blocks of a flow or a flow and/or block diagram of the flowchart.
- These computer program instructions can also be loaded onto a computer or other programmable data processing device such that a series of operational steps are performed on a computer or other programmable device to produce computer-implemented processing for execution on a computer or other programmable device. Instructions are provided for implementation in the flowchart The steps of a process or a plurality of processes and/or block diagrams of a function specified in a block or blocks.
- an embodiment of the present invention further provides a computer storage medium, wherein a computer program is stored, and the computer program is used to execute the method and apparatus for improving data packet transmission performance according to an embodiment of the present invention.
- the embodiment of the invention can improve data packet transmission.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Probability & Statistics with Applications (AREA)
- Mathematical Physics (AREA)
- Quality & Reliability (AREA)
- Algebra (AREA)
- General Physics & Mathematics (AREA)
- Pure & Applied Mathematics (AREA)
- Detection And Prevention Of Errors In Transmission (AREA)
- Error Detection And Correction (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
一种数据包处理方法和装置,该方法包括:对源数据包进行码块分割,得到a块子数据包;分别对每块子数据包进行纠错编码或者分别对每块子数据包添加CRC序列后再进行纠错编码,得到a块纠错编码子数据包;对所述a块纠错编码子数据包进行网络编码,得到b块校验子数据包;对所述a块纠错编码子数据包和b块校验子数据包分别进行比特选择操作,共同构成编码后的数据包;其中,a,b是大于0的整数。
Description
本文涉及一种数据通信传输技术,更具体地,涉及一种数据包处理方法及装置。
在数字通信系统中,特别是有线通信系统,如光纤通信、微波通信、毫米波通信等,在通信信道上传输都是划分为一个个数据包来传输的。随着数据网络的普及以及各种业务的发展,如浏览网页、观看视频、网上娱乐、视频通话等需求地出现,都需要大量的网络流量。那么通信信道上传输的数据包也是比较大的,每个数据包又再划分成各个比较小的信道编码码块(即码块分割)进行传输,这样信道编译码模块相对复杂度较小。
在通信系统中,一般设备的工作点要求在传输误码率BLER为10-1处,为了使通信系统正常工作,MAC层通过支持ARQ机制,即如果数据包传输错误,这种机制通过重复发送数据包,来保证数据的可靠传输。而且特别是在单向通信信道中,例如电视多媒体广播系统中传输各种数据时,接收端没有办法回传数据给发送端,从而也就无法指示数据包是否正确接收的信息,那么就无法使用ARQ机制。这种情况下,就需要将通信系统的工作点放在误包率BLER比较低的地方,即需要更大的SNR(或者发送更多的能量)。
对于未来的支持HARQ的通信系统(5G无线通信系统),主要场景和需求包括直联通信D2D、物联网通信MMC、超密度网络通信UDN、移动网络通信MN和超可靠通信UN。为了满足新的5G需求,未来的5G链路增强技术需要满足低延迟、高吞吐量特点,所以对于未来的支持HARQ的通信系统如何减少HARQ的重传次数或者重传延迟是有待解决的问题,其中降低传输数据包的误包率BLER的是一种非常直接有效的解决途径。
特别是对于未来的不支持ARQ的通信系统,这些系统一般用于局域网系统或者一些广播通信系统,那么需要比较低的数据传输误码率BLER。根据
数字通信中,误包率BLER和误码率BCER的关系:
BLER=1-(1-BCER)n≈n×BCER
从该公式中,可以看出如果系统传输的数据包比较大时,那么码块数就会很多,即可能会达到几百上千个码块,则要求误包率BLER在较低工作点时,编码码块的误码率BCER工作点需要更低。系统则需要付出大量的信噪比,特别是在信道条件比较差的情况下系统效率将受到很明显的限制。所以在不支持ARQ的通信系统中,亟待解决的问题是如何提高传输数据包的性能BLER。
总之,现有通信系统中缺少一种分割为较多编码块的大数据包的编码方案。如何设计一种简单而且有效的、误包率BLER较好的和复杂度较低的编码方案是有待解决的问题。
发明内容
本发明实施例提供一种可以提高数据包的传输性能的数据包处理方法及装置。
本发明实施例提供的数据包处理方法包括:
对源数据包进行码块分割,得到a块子数据包;
分别对每块子数据包进行纠错编码或者分别对每块子数据包添加CRC序列后再进行纠错编码,得到a块纠错编码子数据包;
对所述a块纠错编码子数据包进行网络编码,得到b块校验子数据包;
对所述a块纠错编码子数据包和b块校验子数据包分别进行比特选择操作,共同构成编码后的数据包;
其中,a,b是大于0的整数。
可选地,
对所述a块纠错编码子数据包和b块校验子数据包分别进行比特选择操作,共同构成编码后的数据包,包括:
其中,是第i块纠错编码子数据包中没有被选择的比特的索引集合;是第j块校验子数据包中没有被选择的比特的索引集合;且(a+b)个索引集合中,任意两个不同索引集合构成一个集合对,如此构成的所有个集合对中至少有h%的集合对的交集是空集;i=0、1、…、a-1;j=0、1、…、b-1;h是在[10,100]内取值的一个实数。
可选地,
对所述a块纠错编码子数据包进行网络编码,得到b块校验子数据包,包括:
将所有a块纠错编码子数据包的第p比特构成一长度为a比特的序列Sp,p=0、1、…、n-1,n为大于1的整数;
对Sp进行单奇偶校验编码、b重比特奇偶校验编码或RS编码,得到长度为b比特的校验序列Tp;
将所有校验序列Tp的第q个比特顺序组合,得到长度为n比特的校验子数据包Pq,q=0、1、…、b-1。
可选地,
所述纠错编码采用LDPC编码、Turbo编码或者卷积编码。
可选地,
所述h的取值等于100、95、90、80、75或50。
可选地,
对源数据包进行码块分割之前,还包括:为对所述源数据包填充k’比特,使得填充后的源数据包的长度能被m1整除,其中,k’是大于等于0的整数,m1为预定的第一码块长度;或者
对源数据包进行码块分割得到a块子数据包之后,还包括:对a块子数据包分别填充ki比特,使得填充后的每块子数据包的长度均等于预定的第二码块长度m2,其中,ki是大于等于0的整数,i=0、1、…、a-1;或者
得到a块纠错编码子数据包之后,还包括:对所a块纠错编码子数据包分别填充kj比特,使得填充后的每块纠错编码子数据包的长度均等于预定的第三码块长度m3,其中,kj是大于等于0的整数,j=0、1、…、a-1。
可选地,
所述a块纠错编码子数据包中没有被选择的比特不包括填充的比特。
可选地,
所述纠错编码采用LDPC编码,所述网络编码采用单奇偶校验编码,得到1块长度为n比特的校验子数据包P0,所述第i块纠错编码子数据包中没有被选择的比特的索引集合的长度为ei,校验子数据包P0中没有被选择的比特的索引集合的长度为f0,h=100,且有:索引集合中第一个索引等于索引集合中最后一个索引加1;索引集合中第一个索引等于索引集合中最后一个索引加1;其中,ei,f0是大于等于0的整数,i=0、1、…、a-1,n为大于1的整数。
可选地,
可选地,
可选地,
可选地,
所述编码后的数据包Y按以下方式生成:
其中,表达式是求和公式,c2大于等于c1时ek取原值,c2小于c1时将ek置0;hi是大于等于0的整数,表示Ci中第一个非填充比特的索引;ni是大于等于ei的整数,表示Ci中非填充比特的总个数;i=0、1、…、a-1时,
Ci表示包括填充比特的纠错编码子数据包,i=a时,Ci表示校验子数据包P0,Ci,m表示第i块子数据包的第m个比特,Yi,m表示数据包Y包含的第i个子数据包的第m个比特,Ci中填充比特的数目大于等于0。
可选地,
所述A是在[10,24]内取值的一个整数。
可选地,
所述E为16、32、42、64、84、128、126或256。
相应地,本发明实施例提供的一种数据包处理装置,包括:
码块分割模块,配置为对源数据包进行码块分割,得到a块子数据包;
纠错编码模块,配置为分别对每块子数据包进行纠错编码或者分别对每块子数据包添加CRC序列后再进行纠错编码,得到a块纠错编码子数据包,a是大于0的整数;
网络编码模块,配置为对所述a块纠错编码子数据包进行网络编码,得到b块校验子数据包,b是大于0的整数;
比特选择模块,配置对所述a块纠错编码子数据包和b块校验子数据包分别进行比特选择操作,共同构成编码后的数据包。
可选地,
所述比特选择模块对所述a块纠错编码子数据包和b块校验子数据包分别进行比特选择操作,共同构成编码后的数据包,包括:
其中,是第i块纠错编码子数据包中没有被选择的比特的索引集
合;是第j块校验子数据包中没有被选择的比特的索引集合;且(a+b)个索引集合中,任意两个不同索引集合构成一个集合对,如此构成的所有个集合对中至少有h%的集合对的交集是空集;i=0、1、…、a-1;j=0、1、…、b-1;h是在[10,100]内取值的一个实数。
可选地,
所述网络编码模块对所述a块纠错编码子数据包进行网络编码得到b块校验子数据包,包括:
将所有a块纠错编码子数据包的第p比特构成一长度为a比特的序列Sp,p=0、1、…、n-1,n为大于1的整数;
对Sp进行单奇偶校验编码、b重比特奇偶校验编码或RS编码,得到长度为b比特的校验序列Tp;
将所有校验序列Tp的第q个比特顺序组合,得到长度为n比特的校验子数据包Pq,q=0、1、…、b-1。
可选地,
所述纠错编码采用LDPC编码、Turbo编码或者卷积编码。
可选地,
所述比特选择模块采用的h等于100、95、90、80、75或50。
可选地,
还包括:比特填充模块,配置为对所述源数据包填充k’比特,使得填充后的源数据包的长度能被m1整除,其中,k’是大于等于0的整数,m1为预定的第一码块长度;或者,
配置为对所述源数据包进行码块分割得到的a块子数据包分别填充ki比特,使得填充后的每块子数据包的长度均等于预定的第二码块长度m2,其中,ki是大于等于0的整数,i=0、1、…、a-1;或者
配置为对所述a块纠错编码子数据包分别填充kj比特,使得填充后的每
块纠错编码子数据包的长度均等于预定的第三码块长度m3,其中,kj是大于等于0的整数,j=0、1、…、a-1。
可选地,
所述比特选择模块确定的a块纠错编码子数据包中没有被选择的比特不包括填充的比特。
可选地,
所述纠错编码模块采用LDPC编码,所述网络编码模块采用单奇偶校验编码,得到1块长度为n比特的校验子数据包P0;
所述比特选择模块在进行比特选择操作时,所述第i块纠错编码子数据包中没有被选择的比特的索引集合的长度为ei,校验子数据包P0中没有被选择的比特的索引集合的长度为f0,h=100,且有:索引集合中第一个索引等于索引集合中最后一个索引加1;索引集合中第一个索引等于索引集合中最后一个索引加1;其中,ei,f0是大于等于0的整数,i=0、1、…、a-1,n为大于1的整数。
可选地,
可选地,
可选地,
可选地,
所述编码后的数据包Y按以下方式生成:
其中,表达式是求和公式,c2大于等于c1时ek取原值,c2小于c1时将ek置0;hi是大于等于0的整数,表示Ci中第一个非填充比特的索引;ni是大于等于ei的整数,表示Ci中非填充比特的总个数;i=0、1、…、a-1时,
Ci表示包括填充比特的纠错编码子数据包,i=a时,Ci表示校验子数据包P0,Ci,m表示第i块子数据包的第m个比特,Yi,m表示数据包Y包含的第i个子数据包的第m个比特,Ci中填充比特的数目大于等于0。
可选地,
所述比特选择模块采用的A是在[10,24]内取值的一个整数。
可选地,
所述比特选择模块采用的E为16、32、42、64、84、128、126或256。
本发明实施例还提供一种计算机可读存储介质,存储有程序指令,当该程序指令被执行时可实现上面所述的方法。
上述数据包处理方法和装置通过对数据包内每个编码子数据包进行网络编码操作,使得所有编码子数据包之间存在一定的关联,从而在接收端可以利用这层关联进行译码,可以提高数据包传输性能。通过去除掉编码子数据包中的部分比特,可以避免网络编码带来的编码效率的下降。在未来的5G通信系统中,特别是在超高速通信系统中(如微波、光通信等),源数据包一般比较大,分割为码块数量较多,非常适合采用本发明实施例的上述方案。
附图概述
图1是本发明实施例一数据包处理方法的流程图;
图2是本发明实施例一数据包处理方法中数据处理过程的示意图;
图3是本发明实施例一数据包处理装置的模块图;
图4是本发明实施例二中,每个纠错编码子数据包和校验子数据包没有被选择和被选择的比特示意图(有100块纠错子数据包(LDPC),没有被选择的比特索引是集中的);
图5是本发明实施例三中,每个纠错编码子数据包和校验子数据包没有被选择和被选择的比特示意图(有100块纠错子数据包(LDPC),没有被选择的比特索引是离散的);
图6是本发明实施例四中,每个纠错编码子数据包和校验子数据包没有
被选择和被选择的比特示意图(有10块纠错子数据包(LDPC),没有被选择的比特索引是集中的);
图7是本发明实施例五中,每个纠错编码子数据包和校验子数据包没有被选择和被选择的比特示意图(有3块纠错子数据包(Turbo),没有被选择的比特索引是集中的);
图8是本发明实施例六中,每个纠错编码子数据包和校验子数据包没有被选择和被选择的比特示意图(有3块纠错子数据包(Turbo),没有被选择的比特索引是集中的,网络编码模块中采用2重比特奇偶校验编码);
图9是本发明实施例中码率为1/2时编码性能增益的示意图;
图10是本发明实施例中码率为13/16时编码性能增益的示意图。
其中,图4至图8的子数据包中填充有黑色的区域表示被选择的比特部分,没有填充的区域表示没有被选择的比特部分,填充有斜线的区域表示填充的比特部分。
下文中将结合附图对本发明的实施例进行详细说明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。
实施例一
本实施例将较大源数据包码块分割成多个子数据包,而后对这些子数据包进行信道纠错编码,然后对纠错编码码块之间进行网络编码,产生少量的校验(冗余)子数据包,通过比特选择操作方法获得待发送的编码后的数据包,从而改善数据包的整体误包率BLER性能,同时能降低对误码率BCER的要求。
本实施例的数据包处理方法如图1所示,至少包括以下步骤:
步骤110,对源数据包进行码块分割,得到a块子数据包,a是大于0的整数;
如果源数据包的长度不能被分割后预定的码块长度整除,对源数据包进行码块分割之前,还可以包括:对所述源数据包填充k’比特,使得填充后的源数据包的长度能被m1整除,其中,k’是大于等于0的整数,m1为预定的第一码块长度。
也可以在对源数据包进行码块分割,得到a块子数据包之后,对a块子数据包分别填充ki比特,使得填充后的每块子数据包的长度均等于预定的第二码块长度m2,其中,ki是大于等于0的整数,i=0、1、…、a-1。
步骤120,分别对每块子数据包添加CRC序列;
本步骤是可选的。
步骤130,分别每块子数据包进行纠错编码,得到a块纠错编码子数据包;
本步骤中的子数据包可以是添加CRC序列后的子数据包,也可以是没有添加CRC序列的子数据包。
本步骤中的纠错编码可以采用LDPC编码、Turbo编码或者卷积编码等不同网络编码的编码方式。
也可以在得到a块纠错编码子数据包之后,再进行比特填充处理,即:对所a块纠错编码子数据包分别填充kj比特,使得填充后的每块纠错编码子数据包的长度均等于预定的第三码块长度m3,其中,kj是大于等于0的整数,j=0、1、…、a-1。
步骤140,对所述a块纠错编码子数据包进行网络编码,得到b块校验子数据包,b是大于0的整数;
本步骤的网络编码可以采用以下方式:
将所有a块纠错编码子数据包的第p比特构成一长度为a比特的序列Sp,p=0、1、…、n-1,n为大于1的整数,n可以等于或小于a块纠错编码子数据包的长度;
对Sp进行单奇偶校验编码、b重比特奇偶校验编码或里索(Reed-solomon,RS)编码,得到长度为b比特的校验序列Tp;
将所有校验序列Tp的第q个比特顺序组合,得到长度为n比特的校验子数据包Pq,q=0、1、…、b-1。
上述单奇偶校验编码是指:所有输入的a个信息比特为集合S,对集合S进行二进制异或相加,获得1个校验比特。
上述b重比特奇偶校验编码是指:所有输入的a个信息比特为集合S,对集合S的一个子集s1进行二进制异或相加,获得第1个校验比特;对集合S和第1个校验比特组成的新集合的一个子集s2进行二进制异或相加,获得第2个校验比特;对集合S和第1个校验比特、第2个校验比特组成的新集合的一个子集s3进行二进制异或相加,获得第3个校验比特;依次类推,对集合S和前b-1个校验比特组成的新集合的一个子集sb进行二进制异或相加,获得第b个校验比特;
步骤150,对所述a块纠错编码子数据包和b块校验子数据包分别进行比特选择操作,共同构成编码后的数据包。
本步骤包括:
从所述的a块纠错编码子数据包中选择除第一集合
指示的比特之外的码字比特,从所述的b块校验子数据包中选择除第二集合指示的比特之外的码字比特,所有选择的码字比特构成编码后的数据包;可选地,a块纠错编码子数据包中没有被选择的比特不包括填充的比特。
其中,是第i块纠错编码子数据包中没有被选择的比特的索引集合;是第j块校验子数据包中没有被选择的比特的索引集合;且(a+b)个索引集合中,任意两个不同索引集合构成一个集合对,如此构成的所有个集合对中至少有h%的集合对的交集是空集;i=0、1、…、a-1;j=0、1、…、b-1;h是在[10,100]内取值的一个实数。例如,h等于100、95、90、80、75或50。h值越大,说明子数据包中没有选择的比特的索引越少的集中在相同的位置上,从而可以避免过于集中对解码带来的不利影响。
本实施例的一个示例中,所述纠错编码采用LDPC编码,所述网络编码采用单奇偶校验编码,得到1块长度为n比特的校验子数据包P0,所述第i块纠错编码子数据包中没有被选择的比特的索引集合的长度为ei,校验子数据包P0中没有被选择的比特的索引集合的长度为f0,h=100,且
有:索引集合中第一个索引等于索引集合中最后一个索引加1;索引集合中第一个索引等于索引集合中最后一个索引加1;其中,ei,f0是大于等于0的整数,i=0、1、…、a-1,n为大于1的整数。
a小于等于A而且大于1时,索引集合的长度ei和索引集合的长度f0可以采用以下方式确定:ei=E i=0,1,…,a-1,其中,表达式是求和公式;n大于等于n表示校验子数据包P0的长度;A为大于等于2的整数;E为大于等于1的整数
所述编码后的数据包Y可以按以下方式生成:
其中,表达式是求和公式,c2大于等于c1时ek取原值,c2小于c1时将ek置0;hi是大于等于0的整数,表示Ci中第一个非填充比特的索引;ni是大于等于ei的整数,表示Ci中非填充比特的总个数;i=0、1、…、a-1时,Ci表示包括填充比特的纠错编码子数据包,i=a时,Ci表示校验子数据包P0,Ci,m表示第i块子数据包的第m个比特,Yi,m表示数据包Y包含的第i个子数据包的第m个比特,Ci中填充比特的数目大于等于0。
上述代码中,fori=0,1,…,a表示从C0到Ca,对子数据包Ci依次进行比特选择操作。form=hi,hi+1,…,(ni-ei-1)表示对子数据包Ci进行比特选择操作时,从Ci中第一个非填充比特开始,逐个比特确定数据包Y的比特Yi,m与子数据包Ci中的比特Ci,m的映射关系:如果则令Yi,m=Ci,m(即数据包Ci中的第m个比特映射为数据包Y中包含的第i个子数据包的第m个比特),如果令Yi,m=Ci,m+ei(即将数据包Ci中的第(m+ei)个比特映射为数据包Y中包含的第i个子数据包的第m个比特,此时跳过了ei个没有被选择的比特),也即对数据包Ci进行比特选择操作来生成数据包Y,m的取值是从hi直到ni-ei-1。
相应地,本实施例提供的数据包处理装置包括:
码块分割模块10,配置为对源数据包进行码块分割,得到a块子数据包。
纠错编码模块20,配置为分别对每块子数据包进行纠错编码或者分别对每块子数据包添加CRC序列后再进行纠错编码,得到a块纠错编码子数据包,a是大于0的整数;可选地,纠错编码采用LDPC编码、Turbo编码或者卷积编码等不同于网络编码的编码方式。
网络编码模块30,配置为对所述a块纠错编码子数据包进行网络编码,得到b块校验子数据包,b是大于0的整数;
比特选择模块40,配置对所述a块纠错编码子数据包和b块校验子数据包分别进行比特选择操作,共同构成编码后的数据包。
所述比特选择模块40对所述a块纠错编码子数据包和b块校验子数据包分别进行比特选择操作,共同构成编码后的数据包,可包括:
其中,是第i块纠错编码子数据包中没有被选择的比特的索引集合;是第j块校验子数据包中没有被选择的比特的索引集合;且(a+b)个索引集合中,任意两个不同索引集合构成一个集合对,如此构成的所有个集合对中至少有h%的集合对的交集是空集;i=0、1、…、a-1;j=0、1、…、b-1;h是在[10,100]内取值的一个实数,如可以等于10、20、50或100。
所述网络编码模块30对所述a块纠错编码子数据包进行网络编码得到b块校验子数据包,可包括:
将所有a块纠错编码子数据包的第p比特构成一长度为a比特的序列Sp,p=0、1、…、n-1,n为大于1的整数;
对Sp进行单奇偶校验编码、b重比特奇偶校验编码或RS编码,得到长度为b比特的校验序列Tp;
将所有校验序列Tp的第q个比特顺序组合,得到长度为n比特的校验子数据包Pq,q=0、1、…、b-1。
本实施例数据包处理装置还可以包括:比特填充模块,配置为对所述源数据包填充k’比特,使得填充后的源数据包的长度能被m整除,其中,k’是大于等于0的整数,m为分割后预定的码块长度;或者,配置为对所述源数据包进行码块分割得到的a块子数据包分别填充ki比特,使得填充后的每块子数据包的长度等于分割后预定的码块长度m,其中,ki是大于等于0的整数,i=0、1、…、a-1。可选地,所述比特选择模块确定的a块纠错编码子数据包中没有被选择的比特不包括填充的比特。
在一个示例中,所述纠错编码模块20采用LDPC编码,所述网络编码模块30采用单奇偶校验编码,得到1块长度为n比特的校验子数据包P0;
所述比特选择模块40在进行比特选择操作时,所述第i块纠错编码子数
据包中没有被选择的比特的索引集合的长度为ei,校验子数据包P0中没有被选择的比特的索引集合的长度为f0,h=100,且有:索引集合中第一个索引等于索引集合中最后一个索引加1;索引集合中第一个索引等于索引集合中最后一个索引加1;其中,ei,f0是大于等于0的整数,i=0、1、…、a-1,n为大于1的整数。
实例二
在IEEE802.11aj系统中,所述通信系统支持的LDPC编码码率包括1/2、5/8、3/4和13/16,支持的码长都是Nldpc=672。
按照本实施例,系统当前采用设定信道编码码率为1/2,LDPC码母码需要的信息比特数为336,减去CRC序列的8比特得到实际每块子数据包最大长度为328(相当于预定的第一码块长度m1),假定源数据包的长度为k=32800比特,对源数据包进行码块分割得到a=100块子数据包;分别对每块子数据包添加8比特的CRC序列,每个子数据包长度变为336比特;分别对每块添加8比特的CRC序列后的子数据包进行LDPC编码,得到100块LDPC编码子数据包,长度都为672比特,填充比特数为0比特;网络编码过程中采用单奇偶校验编码方法,对所述的100块LDPC编码子数据包进行网络编码得到1块校验子数据包;按照以下规则进行比特选择操作,获得数据包Y:
所有的100块LDPC编码子数据包和1块校验子数据包中没有被选择的比特的索引集合中,所有个集合对中至少有100%的集合对的交集是空集(即不同数据包中没有被选择的比特的索引均不相同),其中,是第i块纠错编码子数据包中没有被选择的比特的索引集合,是第j块校验子数据包中没有被选择的比特的索引集合。
i=0、1、…、65时,ei=7;
i=66、67、…、99时,ei=6;
100块LDPC编码子数据包和1块校验子数据包中,被选择和没有被选择的比特情况具体如图4所示。以上没有被选择的比特的索引在每个LDPC编码子数据包中是连续(集中)的,满足:索引集合中第一个索引等于索引集合中最后一个索引加1;索引集合中第一个索引等于索引集合中最后一个索引加1;其中,ei,f0是大于等于0的整数,i=0、1、…、a-1,n为大于1的整数。当然,也可以采用分散(离散)方式来确定没有被选择的比特,如图5所示。
所述的发送数据包Y按以下方式生成:
其中,表达式是求和公式,c2大于等于c1时ek取原值,c2小于c1时将ek置0;hi是大于等于0的整数,表示Ci中第一个非填充比特的索引;ni是大于等于ei的整数,表示Ci中非填充比特的总个数;i=0、1、…、a-1时,
Ci表示包括填充比特的纠错编码子数据包,i=a时,Ci表示校验子数据包P0,Ci,m表示第i块子数据包的第m个比特,Yi,m表示数据包Y包含的第i个子数据包的第m个比特,Ci中填充比特的数目大于等于0。
实例三
在IEEE802.11aj系统中,通信系统支持的LDPC编码码率包括1/2、5/8、3/4和13/16,支持的码长都是Nldpc=672。
按照本实施例,系统当前采用设定信道编码码率为13/16,LDPC码母码需要的信息比特数为546,减去CRC序列的8比特得到实际每块子数据包最大长度为538,源数据包的长度为k=5208比特,对源数据包进行码块分割得到a=10块子数据包,前8块子数据包大小为521比特,后2块子数据包大小为520;分别对每块子数据包添加8比特的CRC序列;分别对每块添加8比特的CRC序列后的子数据包进行LDPC编码,得到10块LDPC编码子数据包,前8块LDPC编码子数据包大小为647比特,后2块LDPC编码子数据包大小为646;网络编码过程中采用单奇偶校验编码方法,对所有纠错编码子数据包填充总共2比特,即分别对后2块LDPC子数据包的每个子数据包在前面填充1比特,使得所有10块纠错编码子数据的长度都分别达到647比特(相当于预定的第三码块长度m3),对所述的10块LDPC编码子数据包进行网络编码得到1块校验子数据包,长度为647比特;按照以下规则进行比特选择操作,获得数据包Y:
所有的10块LDPC编码子数据包和1块校验子数据包中没有被选择的比特的索引集合中,所有个集合对中至少有100%的集合对的交集是空集,SETAi是第i块纠错编码子数据包中被选择的比特的索引集合,是第i块纠错编码子数据包中没有被选择的比特的索引集合,SETPj是第j块校验子数据包中被选择的比特的索引集合,是第j块校验子数据包中没有被选择的比特的索引集合。
所有10块LDPC编码子数据包的第i块没有被选择的比特的索引集合的长度ei(i=0、1、…、9)取值为(A取15,此时a小于15大于1):ei(i=0、1、…、9)=42;校验子数据包P0中没有被选择的比特的索引集合
的长度f0取值为:f0=227。
第i块LDPC编码子数据包没有被选择的比特的索引集合表示为校验子数据包P0没有被选择的比特的索引集合表示为10块LDPC编码子数据包和1块校验子数据包中,被选择和没有被选择的比特情况如图6所示。以上没有被选择的比特的索引在每个LDPC编码子数据包中是连续(集中)的,当然可以采用分散(离散)方式。
所述的发送数据包Y可以按以下方式生成:
其中,表达式是求和公式,c2大于等于c1时ek取原值,c2小于c1时将ek置0;hi是大于等于0的整数,表示Ci中第一个非填充比特的索引;ni是大于等于ei的整数,表示Ci中非填充比特的总个数;i=0、1、…、a-1时,Ci表示包括填充比特的纠错编码子数据包,i=a时,Ci表示校验子数据包P0,Ci,m表示第i块子数据包的第m个比特,Yi,m表示数据包Y包含的第i个子数据包的第m个比特,Ci中填充比特的数目大于等于0。
实例四
在IEEE802.11aj系统中,通信系统支持的LDPC编码码率包括1/2、5/8、3/4和13/16,支持的码长都是Nldpc=672。
按照本实施例,系统当前采用设定信道编码码率为3/4,LDPC码母码需
要的信息比特数为504,减去CRC序列的8比特得到实际每块子数据包最大长度为496,源数据包的长度为k=496比特,对源数据包进行码块分割得到a=1块子数据包,子数据包大小为496比特;分别对每块子数据包添加8比特的CRC序列;分别对每块添加8比特的CRC序列后的子数据包进行LDPC编码,得到1块LDPC编码子数据包,子数据包大小为672比特;网络编码过程中采用单奇偶校验编码方法,填充比特数为0比特,对所述的1块LDPC编码子数据包进行网络编码得到1块校验子数据包,长度为672比特;按照以下所述的规则进行比特选择操作,获得数据包Y:
所有的1块LDPC编码子数据包和1块校验子数据包中没有被选择的比特的索引集合中,所有1个集合对中至少有100%的集合对的交集是空集,SETA0是LDPC编码子数据包中被选择的比特的索引集合,是LDPC编码子数据包中没有被选择的比特的索引集合,SETP0是校验子数据包中被选择的比特的索引集合,是校验子数据包中没有被选择的比特的索引集合;发送所述的数据包Y。
此时,数据包Y和LDPC编码子数据包是一样的。
实例五
在一些需要Turbo编码的通信系统中,可以采用本实施例方案进行数据包的处理。
按照本发明实施例的方法,系统当前采用设定Turbo编码码率为1/2,码长为1024比特,需要的信息比特数为512,减去CRC序列的8比特得到实际每块子数据包最大长度为504;设源数据包的长度为k=1512比特,对源数据包进行码块分割得到a=3块子数据包;分别对每块子数据包添加8比特的CRC序列,每个子数据包长度变为512比特;分别对每块添加CRC序列后的子数据包进行Turbo编码,得到3块Turbo编码子数据包,长度都为1024
比特,填充比特数为0比特;网络编码过程中采用单奇偶校验编码方法,对所述的3块Turbo编码子数据包进行网络编码得到1块校验子数据包,长度为512比特;按照以下规则进行比特选择操作,获得数据包Y:
所有的3块Turbo编码子数据包和1块校验子数据包中没有被选择的比特的索引集合中,所有个集合对中有50%的集合对的交集是空集,SETAi是第i块Turbo编码子数据包中被选择的比特的索引集合,是第i块Turbo编码子数据包中没有被选择的比特的索引集合,SETPj是第j块校验子数据包中被选择的比特的索引集合,是第j块校验子数据包中没有被选择的比特的索引集合;发送所述的数据包Y。
所有3块Turbo编码子数据包被选择的比特的索引集合的长度ei(i=0、1、2)取值为:e0=100、e2=120、e2=160;校验子数据包P0中没有被选择的比特的索引集合的长度f0取值为:f0=100。
第0块Turbo编码子数据包没有被选择的比特的索引集合为[0、1、2、…、99],第1块Turbo编码子数据包没有被选择的比特的索引集合为[90、91、92、…、209],第2块Turbo编码子数据包没有被选择的比特的索引集合为[200、201、202、…、359];校验子数据包P0没有被选择的比特的索引集合为[350、351、352、…、449];剩下被选择的比特属于要发送的数据包Y的数据。3块Turbo编码子数据包和1块校验子数据包中,被选择和没有被选择的比特情况具体如图7所示。
以上所述的没有被选择的比特的索引在每个Turbo编码子数据包中是连续(集中)的,当然可以采用分散(离散)方式。
实例六
在一些需要Turbo编码的通信系统中,可以采用本发明实施例方案进行数据包的处理。
按照本实施例,系统当前采用设定Turbo编码码率为1/2,码长为1024比特,需要的信息比特数为512,减去CRC序列的8比特得到实际每块子数
据包最大长度为504;设源数据包的长度为k=1512比特,对源数据包进行码块分割得到a=3块子数据包;分别对每块子数据包添加8比特的CRC序列,每个子数据包长度变为512比特;分别对每块添加CRC序列后的子数据包进行Turbo编码,得到3块Turbo编码子数据包,长度都为1024比特,填充比特数为0比特;网络编码过程中采用2重比特奇偶校验编码方法,对所述的3块Turbo编码子数据包进行网络编码得到2块校验子数据包,长度为701比特;按照以下规则进行比特选择操作,获得数据包Y:
所有3块Turbo编码子数据包被选择的比特的索引集合的长度ei(i=0、1、2)取值为:e0=100、e2=120、e2=160;2块校验子数据包中没有被选择的比特的索引集合的长度fj(j=0、1)取值为:f0=100、f1=80。
第0块Turbo编码子数据包没有被选择的比特的索引集合为[0、1、2、…、99],第1块Turbo编码子数据包没有被选择的比特的索引集合为[90、91、92、…、209],第2块Turbo编码子数据包没有被选择的比特的索引集合为[200、201、202、…、359];第0块校验子数据包P0没有被选择的比特的索引集合为[350、351、352、…、449],第1块校验子数据包P1没有被选择的比特的索引集合为[470、471、472、…、549];剩下被选择的比特属于要发送的数据包Y的数据。3块Turbo编码子数据包和2块校验子数据包中,被选择和没有被选择的比特情况具体如图8所示。
以上所述的没有被选择的比特的索引在每个Turbo编码子数据包中是连续(集中)的,当然可以采用分散(离散)方式。
实例七
在一些需要其他编码的通信系统中,纠错编码方法采用如卷积编码或者RS编码等,也可以采用本发明实施例方法进行数据包的处理,所述的方法与以上的实施例基本一样。
图9和图10分别示出了本发明实施例中码率为1/2时和码率为13/16时的性能增益。同时给出了传统方案和本实施例方案的仿真结果以方便性能比
较,实线为本发明实施例的仿真结果,虚线为传统方案的仿真结果。仿真结果显示,在保持同等条件下,本发明实施例的技术方案取得较大性能增益,特别是源数据包的纠错编码子数据包块数越多,则性能增益越大,显示了巨大的技术进步。
本发明实施例所述支持提高数据包传输性能的方法和装置如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质上实施的计算机程序产品的形式,所述存储介质包括但不限于U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、磁盘存储器、CD-ROM、光学存储器等。
本申请是根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图
一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
相应的,本发明实施例还提供一种计算机存储介质,其中存储有计算机程序,该计算机程序用于执行本发明实施例的支持提高数据包传输性能的方法和装置。
以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。
本发明实施例可以提高数据包传输性。
Claims (29)
- 一种数据包处理方法,包括:对源数据包进行码块分割,得到a块子数据包;分别对每块子数据包进行纠错编码或者分别对每块子数据包添加循环冗余校验CRC序列后再进行纠错编码,得到a块纠错编码子数据包;对所述a块纠错编码子数据包进行网络编码,得到b块校验子数据包;对所述a块纠错编码子数据包和b块校验子数据包分别进行比特选择操作,共同构成编码后的数据包;其中,a,b是大于0的整数。
- 如权利要求1所述的方法,其中:对所述a块纠错编码子数据包和b块校验子数据包分别进行比特选择操作,共同构成编码后的数据包,包括:
- 根据权利要求1或2所述的方法,其中:对所述a块纠错编码子数据包进行网络编码,得到b块校验子数据包,包括:将所有a块纠错编码子数据包的第p比特构成一长度为a比特的序列Sp, p=0、1、…、n-1,n为大于1的整数;对序列Sp进行单奇偶校验编码、b重比特奇偶校验编码或里索RS编码,得到长度为b比特的校验序列Tp;将所有校验序列Tp的第q个比特顺序组合,得到长度为n比特的校验子数据包Pq,q=0、1、…、b-1。
- 根据权利要求1或2所述的方法,其中:所述纠错编码采用低密度奇偶校验码LDPC编码、Turbo编码或者卷积编码。
- 根据权利要求2所述的方法,其中:所述h的取值等于100、95、90、80、75或50。
- 根据权利要求2或5所述的方法,其中:对源数据包进行码块分割之前,还包括:为对所述源数据包填充k’比特,使得填充后的源数据包的长度能被m1整除,其中,k’是大于等于0的整数,m1为预定的第一码块长度;或者对源数据包进行码块分割得到a块子数据包之后,还包括:对a块子数据包分别填充ki比特,使得填充后的每块子数据包的长度均等于预定的第二码块长度m2,其中,ki是大于等于0的整数,i=0、1、…、a-1;或者得到a块纠错编码子数据包之后,还包括:对所a块纠错编码子数据包分别填充kj比特,使得填充后的每块纠错编码子数据包的长度均等于预定的第三码块长度m3,其中,kj是大于等于0的整数,j=0、1、…、a-1。
- 根据权利要求6所述的方法,其中:所述a块纠错编码子数据包中没有被选择的比特不包括填充的比特。
- 根据权利要求9或10所述的方法,其中:所述A是在[10,24]内取值的一个整数。
- 根据权利要求9所述的方法,其中:所述E为16、32、42、64、84、128、126或256。
- 一种数据包处理装置,包括:码块分割模块,配置为对源数据包进行码块分割,得到a块子数据包;纠错编码模块,配置为分别对每块子数据包进行纠错编码或者分别对每 块子数据包添加CRC序列后再进行纠错编码,得到a块纠错编码子数据包,a是大于0的整数;网络编码模块,配置为对所述a块纠错编码子数据包进行网络编码,得到b块校验子数据包,b是大于0的整数;比特选择模块,配置对所述a块纠错编码子数据包和b块校验子数据包分别进行比特选择操作,共同构成编码后的数据包。
- 根据权利要求15所述的装置,其中:所述比特选择模块是配置为以如下方式对所述a块纠错编码子数据包和b块校验子数据包分别进行比特选择操作,共同构成编码后的数据包:
- 根据权利要求15或16所述的装置,其中:所述网络编码模块是设置为以如下方式对所述a块纠错编码子数据包进行网络编码得到b块校验子数据包:将所有a块纠错编码子数据包的第p比特构成一长度为a比特的序列Sp,p=0、1、…、n-1,n为大于1的整数;对序列Sp进行单奇偶校验编码、b重比特奇偶校验编码或RS编码,得到长度为b比特的校验序列Tp;将所有校验序列Tp的第q个比特顺序组合,得到长度为n比特的校验子 数据包Pq,q=0、1、…、b-1。
- 根据权利要求15或16所述的装置,其中:所述纠错编码采用低密度奇偶校验码LDPC编码、Turbo编码或者卷积编码。
- 根据权利要求16所述的装置,其中:所述比特选择模块采用的h等于100、95、90、80、75或50。
- 根据权利要求16或19所述的装置,其中:还包括:比特填充模块,配置为对所述源数据包填充k’比特,使得填充后的源数据包的长度能被m1整除,其中,k’是大于等于0的整数,m1为预定的第一码块长度;或者,配置为对所述源数据包进行码块分割得到的a块子数据包分别填充ki比特,使得填充后的每块子数据包的长度均等于预定的第二码块长度m2,其中,ki是大于等于0的整数,i=0、1、…、a-1;或者配置为对所述a块纠错编码子数据包分别填充kj比特,使得填充后的每块纠错编码子数据包的长度均等于预定的第三码块长度m3,其中,kj是大于等于0的整数,j=0、1、…、a-1。
- 根据权利要求20所述的装置,其中:所述比特选择模块确定的a块纠错编码子数据包中没有被选择的比特不包括填充的比特。
- 根据权利要求23或24所述的装置,其中:所述比特选择模块采用的A是在[10,24]内取值的一个整数。
- 根据权利要求23所述的装置,其中:所述比特选择模块采用的E为16、32、42、64、84、128、126或256。
- 一种计算机可读存储介质,存储有程序指令,当该程序指令被执行时可实现权利要求1-14任一项所述的方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/509,489 US10476528B2 (en) | 2014-09-10 | 2015-03-30 | Data packet processing method and device |
EP15803924.8A EP3193472B1 (en) | 2014-09-10 | 2015-03-30 | Data packet processing method and device |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410458311.2A CN105471545B (zh) | 2014-09-10 | 2014-09-10 | 一种数据包处理方法及装置 |
CN201410458311.2 | 2014-09-10 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2015184914A1 true WO2015184914A1 (zh) | 2015-12-10 |
Family
ID=54766135
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CN2015/075409 WO2015184914A1 (zh) | 2014-09-10 | 2015-03-30 | 一种数据包处理方法及装置 |
Country Status (4)
Country | Link |
---|---|
US (1) | US10476528B2 (zh) |
EP (1) | EP3193472B1 (zh) |
CN (1) | CN105471545B (zh) |
WO (1) | WO2015184914A1 (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107026709A (zh) * | 2016-02-01 | 2017-08-08 | 中兴通讯股份有限公司 | 一种数据包编码处理方法及装置、基站及用户设备 |
CN108347298A (zh) * | 2017-01-24 | 2018-07-31 | 华为技术有限公司 | 一种编码的方法和通信装置 |
WO2018171627A1 (zh) * | 2017-03-24 | 2018-09-27 | 华为技术有限公司 | 分割传输块的方法、无线通信设备和芯片 |
EP3487095A4 (en) * | 2016-07-15 | 2020-03-11 | Sharp Kabushiki Kaisha | TRANSMISSION DEVICE, RECEPTION DEVICE, COMMUNICATION METHOD, AND INTEGRATED CIRCUIT |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10367530B2 (en) * | 2016-01-14 | 2019-07-30 | Qualcomm Incorporated | Unified code block segmentation providing a cyclic redundancy check for low density parity check code codewords |
JP2019149592A (ja) * | 2016-07-15 | 2019-09-05 | シャープ株式会社 | 送信装置、受信装置、通信方法、および、集積回路 |
CN107733441B (zh) * | 2016-08-12 | 2023-05-30 | 中兴通讯股份有限公司 | 编码方法及装置、译码方法及装置 |
CN110430010B (zh) | 2017-01-05 | 2020-08-07 | 华为技术有限公司 | 信息处理的方法和设备 |
CN110719141B (zh) | 2017-02-03 | 2020-08-21 | 华为技术有限公司 | 一种信息的传输方法、译码方法和装置 |
CN114598424A (zh) * | 2017-02-15 | 2022-06-07 | 中兴通讯股份有限公司 | 一种数据处理方法及装置 |
CN108631792B (zh) * | 2017-03-24 | 2021-04-06 | 电信科学技术研究院 | 一种极化码编译码方法及装置 |
CN115277339A (zh) * | 2017-05-05 | 2022-11-01 | 中兴通讯股份有限公司 | 信息传输方法及装置、电子设备 |
CN109644066B (zh) | 2017-08-04 | 2021-08-27 | 上海朗帛通信技术有限公司 | 一种被用于无线通信的用户、基站中的方法和设备 |
CN115883005A (zh) * | 2021-09-26 | 2023-03-31 | 华为技术有限公司 | 数据传输方法、装置及可读存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070101229A1 (en) * | 2005-10-27 | 2007-05-03 | Samsung Electronics Co., Ltd. | LDPC concatenation rules for 802.11n systems |
CN101277144A (zh) * | 2007-03-28 | 2008-10-01 | 北京三星通信技术研究有限公司 | 基于ldpc码的卫星数字多媒体广播系统 |
CN101282192A (zh) * | 2007-04-03 | 2008-10-08 | 中兴通讯股份有限公司 | 混合自动重传信道编码方法 |
CN102577167A (zh) * | 2009-10-07 | 2012-07-11 | 日本电信电话株式会社 | 无线通信系统、无线中继站装置、无线终端站装置以及无线通信方法 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5844918A (en) * | 1995-11-28 | 1998-12-01 | Sanyo Electric Co., Ltd. | Digital transmission/receiving method, digital communications method, and data receiving apparatus |
KR20070074256A (ko) * | 2006-01-09 | 2007-07-12 | 삼성전자주식회사 | 셀룰러 망에서 릴레이를 통한 데이터 중계방법 및 이를지원하는 셀룰러 이동통신시스템 |
US8514888B2 (en) | 2008-09-12 | 2013-08-20 | Industrial Technology Research Institute | Methods and devices for wireless broadcasting service communication environment |
CN102484484B (zh) * | 2009-08-25 | 2014-08-20 | 富士通株式会社 | 发送机、编码装置、接收机以及解码装置 |
CN108600786A (zh) * | 2011-11-30 | 2018-09-28 | 三星电子株式会社 | 用于发送/接收广播数据的装置和方法 |
-
2014
- 2014-09-10 CN CN201410458311.2A patent/CN105471545B/zh active Active
-
2015
- 2015-03-30 WO PCT/CN2015/075409 patent/WO2015184914A1/zh active Application Filing
- 2015-03-30 EP EP15803924.8A patent/EP3193472B1/en active Active
- 2015-03-30 US US15/509,489 patent/US10476528B2/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070101229A1 (en) * | 2005-10-27 | 2007-05-03 | Samsung Electronics Co., Ltd. | LDPC concatenation rules for 802.11n systems |
CN101277144A (zh) * | 2007-03-28 | 2008-10-01 | 北京三星通信技术研究有限公司 | 基于ldpc码的卫星数字多媒体广播系统 |
CN101282192A (zh) * | 2007-04-03 | 2008-10-08 | 中兴通讯股份有限公司 | 混合自动重传信道编码方法 |
CN102577167A (zh) * | 2009-10-07 | 2012-07-11 | 日本电信电话株式会社 | 无线通信系统、无线中继站装置、无线终端站装置以及无线通信方法 |
Non-Patent Citations (1)
Title |
---|
See also references of EP3193472A4 * |
Cited By (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107026709B (zh) * | 2016-02-01 | 2021-02-12 | 中兴通讯股份有限公司 | 一种数据包编码处理方法及装置、基站及用户设备 |
WO2017133580A1 (zh) * | 2016-02-01 | 2017-08-10 | 中兴通讯股份有限公司 | 一种数据包编码处理方法及装置、基站及用户设备 |
CN107026709A (zh) * | 2016-02-01 | 2017-08-08 | 中兴通讯股份有限公司 | 一种数据包编码处理方法及装置、基站及用户设备 |
EP3832922A1 (en) * | 2016-07-15 | 2021-06-09 | Sharp Kabushiki Kaisha | Transmission apparatus, reception apparatus, transmission method, and reception method |
CN112332949A (zh) * | 2016-07-15 | 2021-02-05 | 夏普株式会社 | 发送装置、接收装置以及通信方法 |
CN112332949B (zh) * | 2016-07-15 | 2023-11-07 | 夏普株式会社 | 发送装置、接收装置以及通信方法 |
JP7153149B2 (ja) | 2016-07-15 | 2022-10-13 | シャープ株式会社 | 送信装置、受信装置、および、方法 |
EP3487095A4 (en) * | 2016-07-15 | 2020-03-11 | Sharp Kabushiki Kaisha | TRANSMISSION DEVICE, RECEPTION DEVICE, COMMUNICATION METHOD, AND INTEGRATED CIRCUIT |
US10771202B2 (en) | 2016-07-15 | 2020-09-08 | Sharp Kabushiki Kaisha | Transmission apparatus, reception apparatus, communication method, and integrated circuit |
JP2022058705A (ja) * | 2016-07-15 | 2022-04-12 | シャープ株式会社 | 送信装置、受信装置、および、方法 |
JP7014927B2 (ja) | 2016-07-15 | 2022-02-01 | シャープ株式会社 | 送信装置、受信装置、および、方法 |
JP2022003820A (ja) * | 2016-07-15 | 2022-01-11 | シャープ株式会社 | 送信装置、受信装置、および、方法 |
CN108347298A (zh) * | 2017-01-24 | 2018-07-31 | 华为技术有限公司 | 一种编码的方法和通信装置 |
WO2018137519A1 (zh) * | 2017-01-24 | 2018-08-02 | 华为技术有限公司 | 一种编码的方法和通信装置 |
CN108347298B (zh) * | 2017-01-24 | 2021-01-15 | 华为技术有限公司 | 一种编码的方法和通信装置 |
WO2018171627A1 (zh) * | 2017-03-24 | 2018-09-27 | 华为技术有限公司 | 分割传输块的方法、无线通信设备和芯片 |
CN108631939B (zh) * | 2017-03-24 | 2020-03-10 | 华为技术有限公司 | 分割传输块的方法、无线通信设备和芯片 |
CN108631939A (zh) * | 2017-03-24 | 2018-10-09 | 华为技术有限公司 | 分割传输块的方法、无线通信设备和芯片 |
Also Published As
Publication number | Publication date |
---|---|
EP3193472A4 (en) | 2017-09-20 |
CN105471545B (zh) | 2020-07-21 |
CN105471545A (zh) | 2016-04-06 |
US10476528B2 (en) | 2019-11-12 |
EP3193472B1 (en) | 2022-09-21 |
EP3193472A1 (en) | 2017-07-19 |
US20170324428A1 (en) | 2017-11-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2015184914A1 (zh) | 一种数据包处理方法及装置 | |
US11165537B2 (en) | Method for encoding information bit sequence in communication network | |
US20220123766A1 (en) | Method And Device For Interleaving Data | |
JP7026689B2 (ja) | 情報処理方法、デバイス、および通信システム | |
JP7017627B2 (ja) | 通信システムにおける冗長バージョン設計ソリューション | |
KR101221915B1 (ko) | 데이터 전송방법 | |
CN107370560B (zh) | 一种极化码的编码和速率匹配方法、装置及设备 | |
JP6871396B2 (ja) | 情報を処理するための方法および装置、通信デバイス、ならびに通信システム | |
US20170294990A1 (en) | Data transmission method and device | |
CN105991227B (zh) | 数据编码方法及装置 | |
WO2017194013A1 (zh) | 纠错编码方法及装置 | |
CN108282259B (zh) | 一种编码方法及装置 | |
EP3614701A1 (en) | Polar code transmission method and device | |
CN112152754B (zh) | 一种极化码重传方法及装置 | |
JP2020529806A (ja) | データ符号化方法及び装置、記憶媒体、並びにプロセッサ | |
US20180198554A1 (en) | Data transmission method and apparatus based on unequal error protection and device | |
CN108988869A (zh) | 一种确定校验矩阵的方法及装置、计算机存储介质 | |
US20190372599A1 (en) | Data processing method and device | |
JP2015520990A (ja) | 放送及び通信システムにおけるパケット送受信装置及び方法 | |
CN107733562B (zh) | 极化码的编解码方法及装置 | |
US11342940B2 (en) | Data processing method and apparatus | |
CN111446969A (zh) | 一种级联crc码的极化码编码方法及装置 | |
WO2013114496A1 (ja) | 通信装置および通信方法 | |
US9876608B2 (en) | Encoding apparatus and encoding method | |
JP2011041076A (ja) | 通信システム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 15803924 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
REEP | Request for entry into the european phase |
Ref document number: 2015803924 Country of ref document: EP |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2015803924 Country of ref document: EP |
|
WWE | Wipo information: entry into national phase |
Ref document number: 15509489 Country of ref document: US |