CN112821984A - Wireless local area network data processing method, device and equipment - Google Patents

Wireless local area network data processing method, device and equipment Download PDF

Info

Publication number
CN112821984A
CN112821984A CN201911120809.7A CN201911120809A CN112821984A CN 112821984 A CN112821984 A CN 112821984A CN 201911120809 A CN201911120809 A CN 201911120809A CN 112821984 A CN112821984 A CN 112821984A
Authority
CN
China
Prior art keywords
coding block
sequence
sequences
coding
block sequence
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201911120809.7A
Other languages
Chinese (zh)
Other versions
CN112821984B (en
Inventor
熊杰
唐欣
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN201911120809.7A priority Critical patent/CN112821984B/en
Publication of CN112821984A publication Critical patent/CN112821984A/en
Application granted granted Critical
Publication of CN112821984B publication Critical patent/CN112821984B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/0061Error detection codes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0041Arrangements at the transmitter end
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0045Arrangements at the receiver end
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/0061Error detection codes
    • H04L1/0063Single parity check

Abstract

Provided are a Wireless Local Area Network (WLAN) data processing method, device and equipment, wherein the method comprises the following steps: a receiving party in the WLAN acquires a plurality of coding block sequences, wherein the plurality of coding block sequences are obtained by the receiving party receiving an original coding block sequence generated by the same media access control protocol data unit MPDU from a sending party in the WLAN for a plurality of times through a wireless medium, each coding block sequence in the plurality of coding block sequences comprises M coding blocks, and M is an integer greater than 1; checking each coding block sequence in the plurality of coding block sequences to obtain a checking result of the coding block in each coding block sequence, wherein the checking result is checking success or checking failure; and according to the check result of the coding blocks in each coding block sequence, merging the coding block sequences to obtain an MPDU, wherein any one coding block in the merged coding block sequence is a corresponding coding block which is successfully checked in the coding block sequences. The method and the device for transmitting the data can reduce the possible retransmission times in data transmission.

Description

Wireless local area network data processing method, device and equipment
Technical Field
The present application relates to the field of computer technologies, and in particular, to a method, an apparatus, and a device for processing Wireless Local Area Network (WLAN) data.
Background
A Media Access Control (MAC) layer of a transmitter of a wireless lan needs to transmit a MAC Protocol Data Unit (MPDU) to a receiver. The receiver checks the received MPDU. If the check is successful and the MPDU is an individually addressed frame (ACK), the receiver replies an Acknowledgement (ACK) frame to the sender. If the check fails, the receiver does not reply the ACK frame. If the MPDU is the single addressing frame, the transmitting side transmits the MPDU again when not receiving the ACK frame until the receiving side checks successfully and replies the ACK frame. The transmitter sending the MPDU again when it does not receive the ACK frame may be referred to as retransmission. This scheme may require a large number of retransmissions.
Disclosure of Invention
The application provides a WLAN data processing method, device and equipment, so as to reduce possible retransmission times in data transmission.
In a first aspect, a WLAN data processing method is provided, including: a receiver in a WLAN acquires a plurality of coded block sequences. Wherein the plurality of coding block sequences are obtained by the receiver receiving the original coding block sequences generated by the same media access control protocol data unit MPDU from the sender in the WLAN via the wireless medium for a plurality of times. Each of the plurality of coded block sequences includes M coded blocks, where M is an integer greater than 1. And checking each coding block sequence in the plurality of coding block sequences to obtain a checking result of the coding block in each coding block sequence, wherein the checking result is checking success or checking failure. And according to the check result of the coding blocks in each coding block sequence, merging the coding block sequences to obtain the MPDU. And any one coding block in the coding block sequences after the merging processing is a corresponding coding block which is successfully checked in the plurality of coding block sequences. In the above process, since the check is performed on the coding blocks in the coding block sequence, the receiving side can retain the coding blocks with successful check when receiving the coding block sequence. In the multiple coding block sequences, as long as each corresponding coding block is successfully checked at least once in the multiple transmissions, the MPDU can be obtained after the coding block sequences are merged. In the scheme, all the coding blocks are not required to be successfully transmitted in one-time transmission to finish transmission, and the possible transmission times of the MPDUs can be reduced.
In a possible implementation, before obtaining the plurality of encoded block sequences, the method further includes:
the receiving party in the WLAN receives a new coding block sequence to obtain a plurality of coding block sequences when a problem coding block exists in at least two obtained coding block sequences, wherein the plurality of coding block sequences comprise at least two coding block sequences and the new coding block sequence, and the problem coding block is a coding block with a check result of a corresponding coding block in all the coding block sequences of the at least two coding block sequences being check failure. In the above process, the retransmission stop is not based on the fact that all the coding blocks in one transmission are successfully transmitted, but the retransmission can be stopped when each coding block is successfully transmitted in any one transmission.
In a possible implementation, after receiving the new sequence of coded blocks, the method further comprises: and only checking the coding block corresponding to the coding block in question in the new coding block sequence. In the above process, the other coding blocks in the new coding block sequence except the coding block corresponding to the coding block in question have obtained correct copies in the previous transmission, so that no check is needed. The embodiment can save the checking time and resources.
In one possible embodiment, the checking each of the plurality of sequences of coding blocks to obtain a check result of the coding block in each sequence of coding blocks includes:
and checking each coding block sequence in the plurality of coding block sequences according to the matrix check characteristic of the low-density parity check code LDPC code to obtain the check result of the coding block in each coding block sequence.
In a possible implementation, merging the plurality of coded block sequences to obtain the MPDU according to a check result of a coded block in each coded block sequence, includes:
acquiring M encoding blocks with different index numbers from the encoding blocks with successful verification of the plurality of encoding block sequences, wherein the index numbers of the encoding blocks are used for indicating the arrangement sequence of the encoding blocks in the encoding block sequences;
and arranging the M encoding blocks with different index numbers and successful verification according to the sequence of the index numbers to obtain the MPDU.
In a second aspect, a WLAN data processing apparatus is provided, including:
the apparatus includes an obtaining module configured to obtain a plurality of coding block sequences, where the plurality of coding block sequences are obtained by a receiving side in the WLAN receiving, via a wireless medium, an original coding block sequence generated by a same mac protocol data unit MPDU from a sending side in the WLAN multiple times, and each of the plurality of coding block sequences includes M coding blocks, where M is an integer greater than 1. And the checking module is used for checking each coding block sequence in the plurality of coding block sequences to obtain a checking result of the coding block in each coding block sequence, wherein the checking result is checking success or checking failure. And the processing module is used for merging the plurality of coding block sequences to obtain the MPDU according to the check result of the coding block in each coding block sequence, wherein any one coding block in the merged coding block sequence is a corresponding coding block which is successfully checked in the plurality of coding block sequences.
In a third aspect, a storage medium is provided, which comprises a computer program for implementing the WLAN data processing method according to any one of the first aspect.
In a fourth aspect, a chip is provided, where the chip is configured to perform the WLAN data processing method according to any one of the first aspect.
In a fifth aspect, an electronic device is provided, which includes an antenna and a chip, wherein the antenna is configured to receive radio waves, and the chip is configured to process signals carried in the radio waves according to the WLAN data processing method of any one of the first aspect.
Drawings
Fig. 1 is a schematic diagram of data transmission provided in an embodiment of the present application;
fig. 2 is a schematic diagram illustrating checking an MPDU according to an embodiment of the present application;
fig. 3 is a schematic flowchart of a WLAN data processing method according to an embodiment of the present application;
fig. 4 is a schematic diagram of merging coding blocks according to an embodiment of the present application;
fig. 5 is a first schematic diagram illustrating a coding block merging method according to an embodiment of the present application;
fig. 6 is a schematic diagram illustrating a coding block merging method according to an embodiment of the present application;
fig. 7 is a schematic data transmission diagram of a receiving device and a sending device according to an embodiment of the present application;
fig. 8 is a Tanner graph according to an embodiment of the present application;
FIG. 9 is a diagram of a check problem coding block according to an embodiment of the present application;
fig. 10 is a first schematic diagram illustrating determining a corresponding coding block according to an embodiment of the present application;
fig. 11 is a second schematic diagram illustrating determining a corresponding coding block according to an embodiment of the present application;
fig. 12 is a schematic structural diagram of a WLAN data processing apparatus according to an embodiment of the present application;
fig. 13 is a schematic structural diagram of an electronic device according to an embodiment of the present application.
Detailed Description
First, the concept related to the present application will be explained.
The individual addressed frames, also called individual address frames, correspond to group addressed frames. The individually addressed frames are provided with an acknowledgement mechanism. In the wireless local area network, when the receiving side successfully receives the single addressing frame, the receiving side replies an acknowledgement frame to the sending side to inform the sending side that the single addressing frame is successfully received. When the receiver does not successfully receive the individual addressing frame, the receiver does not reply an acknowledgement frame to the sender. The sender may retransmit the individually addressed frame if no acknowledgement frame is received until either an acknowledgement frame is received or the number of retransmissions exceeds a retry limit.
A low-density parity-check (LDPC) code is a block error correction code having a sparse check matrix, and belongs to one of linear block codes.
A Cyclic Redundancy Check (CRC) code, which is a commonly used error checking code in the field of data communication, and is characterized in that the lengths of an information field and a check field can be arbitrarily selected.
Tanner graph: the representation mode of the check matrix of the LDPC code is that a Tanner graph generally comprises two types of vertexes: n code word bit vertexes respectively corresponding to each column of the check matrix; and the m check equation vertexes correspond to the rows of the check matrix respectively.
Fig. 1 is a schematic diagram of data transmission provided in an embodiment of the present application, and as shown in fig. 1, includes a receiving device and a sending device. In the WLAN protocol, a data packet to be transmitted at the MAC layer of the transmitting device is an MPDU, and when the transmitting device transmits the data packet to be transmitted to the receiving device, the data packet needs to be transmitted to the physical layer of the receiving device through the physical layer of the transmitting device, and the data packet reaches the MAC layer of the receiving device after the physical layer of the receiving device receives the data packet successfully. Fig. 1 illustrates a general process of data transmission, and a source in fig. 1 is a data packet MPDU to be transmitted. After the information source is coded, a carrier modulation process is carried out, and then the information source enters a channel for transmission. In the channel, interference and noise may be included, which may have an effect on data transmission. After receiving the transmitted data, the receiving side performs operations such as carrier demodulation and decoding to obtain output data.
The receiving device and the sending device in this embodiment are two terminal devices in a WLAN, where one WLAN terminal device is used as the receiving device to execute the action of the receiving party in this embodiment, and the other WLAN terminal device is used as the sending device to execute the action of the sending party in this embodiment.
When the MPDU of the MAC layer of the transmitting device is transmitted in the physical layer, the MPDU is first encoded, and then divided into a plurality of sequentially connected encoding blocks for transmission. The physical layer of the receiving device receives the bit stream and then divides the bit stream into a plurality of decoding soft value sequences according to the length corresponding to each coding block to perform decoding operation. After decoding is completed, the MPDU data is recovered, and the data reaches the MAC layer of the receiving device, and the MAC layer of the receiving device checks the recovered MPDU, where the check method may be CRC, for example. If the recovered MPDU passes through the CRC, the receiving equipment replies that the data is correctly received to the sending equipment, and the sending equipment can carry out new data transmission; if not, the transmitting device needs to transmit again until correctly receiving.
Fig. 2 is a schematic diagram of checking an MPDU according to an embodiment of the present application, and as shown in fig. 2, in a transmission process of the MPDU, a sender converts the MPDU into a sequence of encoded blocks to transmit, where the sequence of encoded blocks includes a plurality of encoded blocks. And after receiving the coding block sequence, the receiver decodes the coding block sequence to obtain an MPDU, and then checks the MPDU to see whether the receiving is correct.
The CRC is performed over the entire sequence of coded blocks. Therefore, even if a plurality of coding blocks are included in the MPDU, transmission of the MPDU fails as long as at least one coding block fails to be received.
The cyclic redundancy check code comprises an information code and a check code, before data transmission, the MPDU data is used as a number with a longer bit number, and the number with the longer bit number is the information code. Then, the number with longer number is divided by a preset number, and the obtained remainder is the check code. And finally, adding the check code behind the information code to obtain a cyclic redundancy check code for transmission.
The principle of CRC is that for a given (N, K) code, a check code of R bits is concatenated after a K-bit information code, and the entire code length is N bits. There is a polynomial g (x) with the highest power of N-K ═ R, g (x) is called the generator polynomial of the CRC code, and a check code with K bits of information can be generated according to g (x).
Assuming that the MPDU to be transmitted is represented by polynomial c (x), c (x) is left-shifted by R bits to obtain c (x)2R, so that the right side of c (x) is left with R bits, which is the position of the check code. The remainder of R bits, i.e., the check code, is obtained by dividing C (x)2R by the generator polynomial G (x).
For example, when the MPDU to be transmitted is 1010, 1010 is K bits of information code. The generator polynomial g (X) is X3+ X +1, and first, the generator polynomial g (X) is X3+ X +1 is converted into a corresponding binary divisor 1011. Since the generator polynomial g (x) has 4 bits and the check code number R is 3, the original MPDU needs to be left-shifted by 3 bits, i.e. 30 s are added after the original MPDU1010, which becomes 1010000.
Then, performing modulo-2 division on the MPDU after being shifted to the left by 3 bits by using a binary number 1011 corresponding to a generator polynomial g (x), that is, performing bitwise xor on 1010000 and 1011 to obtain remaining bits of 011, where 011 is the check code of the R bit. After splicing the check code 011 of R bits to the information code 1010 of K bits, the CRC code 1010011 is obtained.
And after receiving the CRC code, the receiver checks according to the rule followed between the information code and the CRC code to judge whether errors occur in data transmission. For example, when the receiver receives CRC code 1010011, it divides 1010011 by 1011 to obtain a remainder of 0, indicating that 1010011 is divisible by 1011, and the received data is considered correct.
It can be seen that only by using CRC, check code can be added only after the MPDU to be transmitted, and then whether the transmission of the MPDU is correct or not can be determined according to the check code. In one transmission, if any bit in the coding block sequence has an error, the entire data transmission fails and needs to be retransmitted.
As shown in fig. 2, when the transmission is performed for the first time, the receiver checks the MPDU, and the check fails. Since the scheme is to check the whole recovered MPDU, the result of checking the data transmission is obtained. It is assumed that the transmission failed this time is CB1 and CB5, and CB2, CB3, CB4 and CB6 are successful in transmission, resulting in the reception apparatus judging that the transmission failed this time. The sender will continue the second transmission at this point due to the failure of the first transmission. During the second transmission, the receiver checks the MPDU, and the check result is still check failure, and at this time, the transmission failure is CB 3. Due to the transmission failure, the sender will continue to transmit until the transmission is successful. For example, in the third transmission in fig. 2, when the MPDU is checked, the check is successful, and thereafter the receiver sends an ACK frame to the sender to inform the sender that the MPDU has been successfully received without sending again. And after receiving the ACK frame, the sender stops continuously sending the MPDUs.
In the above scheme, since the entire MPDU is checked, the receiving device may reply correct reception to the sending device only when the entire MPDU is correctly transmitted due to one transmission, for example, in fig. 2, the MPDU recovered during the third transmission can be successfully transmitted through CRC.
If the channel environment is not good, it may be difficult for the data sent by the sending device to the receiving device to be completely successful in one transmission process, for example, when some coding blocks in one transmission fail to be transmitted, and when other coding blocks in another transmission fail to be transmitted, repeated retransmission may be required, and the number of transmissions is large.
In order to solve the above problem, the embodiments of the present application check each coding block in the transmitted data to combine coding block sequences transmitted multiple times, so as to reduce possible retransmission times. The solution of the present application will be explained below with reference to fig. 3.
Fig. 3 is a schematic flowchart of a WLAN data processing method according to an embodiment of the present application, and as shown in fig. 3, the method includes:
s31, a receiving party in the WLAN obtains a plurality of coding block sequences, where the plurality of coding block sequences are obtained by the receiving party receiving, via a wireless medium, an original coding block sequence generated by a same mac pdu MPDU from a sending party in the WLAN for multiple times, and each of the plurality of coding block sequences includes M coding blocks, where M is an integer greater than 1.
In the embodiment of the present application, the plurality of coding block sequences are two or more coding block sequences, and in the plurality of coding block sequences, each coding block sequence is obtained from an original coding block sequence generated by the same MPDU of a sender. When a transmitting party transmits an MPDU to a receiving party, the MPDU is decoded to obtain a decoded coding block sequence, namely an original coding block sequence.
The method comprises the steps that a sender sends an original coding block sequence to a receiver, and the receiver obtains a plurality of coding block sequences, in the embodiment of the application, each coding block sequence is composed of a plurality of coding blocks, the number of the coding blocks in each coding block sequence is the same, the coding blocks are M, and M is a positive integer larger than 1.
S32, checking each of the plurality of coding block sequences to obtain a check result of the coding block in each of the coding block sequences, where the check result is a check success or a check failure.
After a plurality of coding block sequences are obtained, checking the coding blocks in each coding block sequence to obtain a checking result of the coding blocks in each coding block sequence. In the embodiment of the present application, each coding block sequence is checked, where each coding block in each coding block sequence is checked to obtain a check result of each coding block in each coding block sequence, or a part of coding blocks in each coding block sequence is checked to obtain a check result of a corresponding part of coding blocks. The check result of the coding block is one of check success or check failure, the check success represents that the transmission of the corresponding coding block is successful, and the check failure represents that the transmission of the corresponding coding block is failed.
Optionally, one encoding method included in the WLAN is LDPC encoding. When the sending device needs to send the MPDU, the sending device may perform LDPC encoding on the MPDU to obtain a plurality of sequentially connected coding blocks, that is, a coding block sequence, and then transmit the coding block sequence.
After receiving the coding block sequence sent by the sending device through the wireless channel, the receiving device divides the coding block sequence into a plurality of decoding sequences according to the length corresponding to each coding block, then performs LDPC decoding on the plurality of decoding sequences to obtain a decoded coding block, and checks the decoded coding block according to the matrix check of the LDPC code to obtain the check result of the coding block in the coding block sequence.
And S33, merging the plurality of coding block sequences according to the check result of the coding block in each coding block sequence to obtain the MPDU, wherein any one coding block in the merged coding block sequence is a corresponding coding block which is successfully checked in the plurality of coding block sequences. Conventional CRC may still be performed on the combined MPDU based on the checksum field in the MPDU.
The merging processing in the embodiment of the present application refers to combining multiple coding blocks according to a certain sequence to obtain an MPDU, where the sequence of the multiple coding blocks is the same as the sequence of each coding block in an original coding block, and the check results of the multiple coding blocks are all successful. This process will be described below with reference to fig. 4.
Fig. 4 is a schematic diagram of merging coding blocks provided in an embodiment of the present application, and as shown in fig. 4, the coding block merging schematic diagram includes a plurality of coding block sequences acquired by a receiving side, and the coding block sequences illustrated in fig. 4 take the number of the coding block sequences as 3 as an example, which are respectively a coding block sequence a, a coding block sequence B, and a coding block sequence C, where each coding block sequence includes 5 coding blocks.
The check result of each coding block sequence in the three coding block sequences is as follows in sequence:
coding block sequence a-success, failure, success, failure;
coding block sequence B-failure, success;
code block sequence C-success, failure.
The MPDU recovered after merging the three coding block sequences comprises five coding blocks, and the verification result of each coding block is successful. There are various ways of merging, and the possible ways of merging will be illustrated below with reference to fig. 5 and 6.
Fig. 5 is a first schematic view of a coding block merging method provided in an embodiment of the present application, and as shown in fig. 5, the coding block merging method may be that a correct coding block is checked from a coding block sequence transmitted multiple times, and then a plurality of corresponding coding blocks are selected to be merged to obtain a merged coding block sequence. In fig. 5, the coded block sequences are transmitted three times in total, and the transmitted three coded block sequences are respectively a coded block sequence a, a coded block sequence B and a coded block sequence C, and each coded block sequence comprises five coded blocks of CB1, CB2, CB3, CB4 and CB 5.
In encoding block sequence a, CB2 and CB5 failed to check, in encoding block sequence B, CB1 and CB2 failed to check, and in encoding block sequence C, CB5 failed to check. The scheme adopted in the embodiment of the application is that for the CB1, the coding blocks in the coding block sequence a and the coding block sequence C are successfully verified, so that one of the two CBs 1 in the coding block sequence a and the coding block sequence C can be selected as the CB1 of the merged coding block sequence; for the CB2, only the CB2 in the coded block sequence C is checked successfully in three transmissions, so that the CB2 in the coded block sequence C is taken as the CB2 of the combined coded block sequence; for CB3, CB3 in three transmissions check successfully, so that one of three CBs 3 of coded block sequence a, coded block sequence B and coded block sequence C can be selected as CB3 of the merged coded block sequence; for CB4, CB4 in three transmissions check successfully, so that one of three CBs 4 of coded block sequence a, coded block sequence B and coded block sequence C can be selected as CB4 of the merged coded block sequence; for CB5, only CB5 in coded block sequence B in three transmissions checks successfully, so CB5 in coded block sequence B is taken as CB5 of the combined coded block sequence.
The resulting merged code block sequence is shown in fig. 5, where CB1 in the merged code block sequence may be from code block sequence a or code block sequence C, CB2 in the merged code block sequence is from code block sequence C, CB3 in the merged code block sequence may be from code block sequence a, code block sequence B, or code block sequence C, CB4 in the merged code block sequence may be from code block sequence a, code block sequence B, or code block sequence C, and CB5 in the merged code block sequence is from code block sequence B.
The merging method shown in fig. 5 is one possible method, and another possible merging method will be described with reference to fig. 6.
Fig. 6 is a schematic diagram illustrating a coding block merging manner provided in the embodiment of the present application, as shown in fig. 6, the coding block merging manner may be that each coding block in a coding block sequence transmitted for the first time is checked, then a coding block in which a check result is successful is retained, and for a coding block in which a check is failed, a coding block in which a check is failed is replaced with a corresponding coding block in a coding block sequence transmitted subsequently.
As shown in fig. 6, the code block sequence of the first transmission is the code block sequence a, wherein the check results of 5 code blocks in the code block sequence a are that the check of CB1, CB3 and CB4 is successful, and the check of CB2 and CB5 is failed, at this time, CB1, CB3 and CB4 in the code block sequence a are reserved, and then the code block sequence B sent by the sender for the second time is received. In the coding block sequence B, the check result of each coding block is that the checks of CB1 and CB2 fail and the checks of CB3, CB4 and CB5 succeed. Since the check of CB2 and CB5 in the coded block sequence a fails and the check of CB5 in the coded block sequence B succeeds, the CB5 in the coded block sequence a is replaced by the CB5 in the coded block sequence B. Since the CB2 check in the coded block sequence B failed, no replacement operation is performed on the CB 2.
After the first combination, the CB5 is verified successfully, and the CB2 is still verified unsuccessfully, and at this time, the coded block sequence C sent by the sender for the third time is received. In the coding block sequence C, the check result of each coding block is that the check of CB1, CB2, CB3 and CB4 succeeds, and the check of CB5 fails. Since the CB2 left after the first merging fails to be checked and the CB2 in the coding block sequence C succeeds to be checked, at this time, the CB2 in the coding block sequence C is used to replace the CB2 in the coding block sequence after the first merging to obtain a coding block sequence after the second merging, and the check result of each coding block in the coding block sequence after the second merging is successful.
In the coded block sequence after the second merging, CB1, CB3 and CB4 are all from coded block sequence a, CB5 is from coded block sequence B, and CB2 is from coded block sequence C.
Fig. 5 and 6 show two possible combinations, but do not specifically limit the combinations.
After the merging of the coded block sequence is performed, optionally, in the embodiment of the present application, CRC may be performed on the MPDU obtained after the merging.
In the WLAN data processing method provided in the embodiment of the present application, a receiving side obtains a plurality of coding block sequences, verifies each coding block sequence in the plurality of coding block sequences to obtain a verification result of a coding block in each coding block sequence, and then merges the plurality of coding block sequences according to the verification result of the coding block in each coding block sequence to obtain an MPDU. Due to the fact that the check is performed on the coding blocks in the coding block sequence, according to the scheme provided by the embodiment of the application, the receiving party can keep the coding blocks which are successfully checked when receiving the coding block sequence. In the plurality of coding block sequences, as long as each corresponding coding block is verified successfully at least once in the plurality of transmissions, an MPDU can be obtained after merging the coding block sequences, so that the possible transmission times of the MPDU can be reduced.
On the basis of the above-described embodiments, the technical solutions of the present application will be described in detail below with specific examples. The following several specific embodiments may be combined with each other, and details of the same or similar concepts or processes may not be repeated in some embodiments.
Fig. 7 is a schematic diagram of data transmission of a receiving device and a transmitting device according to an embodiment of the present application, where, as shown in fig. 7, an MPDU is data that needs to be transmitted by the transmitting device, and the MPDU is located in a MAC layer of the transmitting device.
When data transmission is carried out, a physical layer of sending equipment encodes the MPDU to obtain a corresponding coding block sequence, and the coding block sequence comprises a plurality of coding blocks which are sequentially connected. The sender then transmits a sequence of coded blocks over the wireless channel to the physical layer of the receiving device, where the sequence of coded blocks is in the form of a bit stream in the wireless medium.
After receiving the coding block sequence, the physical layer of the receiving device executes a decoding operation and checks the coding blocks in the coding block sequence. Since the transmitting device may fail to transmit to the receiving device once, and therefore may transmit for multiple times, the embodiment shown in fig. 7 shows three transmission processes, where the coding block sequence obtained in each transmission process is obtained by encoding the same MPDU.
After the receiving device receives the coding block sequence transmitted for many times and performs merging operation on the coding block sequence, when the recovered MPDU is consistent with the MPDU to be transmitted by the transmitting device, the MPDU data transmitted to the receiving device by the transmitting device is considered to be successfully transmitted, so that the transmission process is not continued.
When a transmitting device transmits an MPDU to a receiving device, the MPDU needs to be encoded, and the receiving device decodes the data after receiving the data, thereby restoring the MPDU.
One possible implementation is that the MPDU to be transmitted by the transmitting device is encoded at the physical layer using LDPC coding, so that the MPDU is converted into several sequentially connected encoded blocks for transmission to the receiving side.
The LDPC code is a linear block code, a check matrix of the LDPC code is a sparse matrix, most elements in the matrix are 0, and only a small amount of non-zero elements are contained. The sparse characteristic of the check matrix ensures that the decoding complexity and the minimum code distance are only linearly increased along with the code length.
In communication, since the information symbol sequence is a random sequence, the receiving side cannot predict the value of the symbol and cannot identify whether there is an error code, the transmitting side needs to add some error control symbols, i.e. parity symbols (check elements), to the information symbol sequence, and there is a certain relationship between these parity symbols and the information symbol.
In the LDPC code, the information symbols and parity symbols are related by grouping the information symbol sequence every k symbols, and an encoder generates r redundant symbols, called parity symbols, from each information group according to a certain rule to form a codeword with a length of n ═ k + r. As long as the check matrix is given, the relationship between the check symbols and the information symbols is completely determined.
In LDPC coding, an LDPC code of (n, k) is a code word of a (n, k) linear block code, in which data is divided into k symbols as one segment, and the segment is converted into a group of n symbols by an encoder. Wherein the code length is n, the information bit is k, and the check bit is n-k.
In the embodiment of the application, when the MPDU data is encoded by using the LDPC in the physical layer at the sender, the MPDU may use k code elements as one segment, and after the MPDU is encoded, n-k check bits are added after k code elements to obtain an encoded block with a code length of n, where the encoded block is a codeword in the LDPC code. In LDPC encoding, a binary LDPC code needs to be constructed, that is, a sparse matrix H is found as a check matrix of the LDPC code, and the basic method is to replace a small part of elements of an all-zero matrix by 1, so that each row and each column of the replaced matrix have the required number of non-zero elements. The LDPC code can be uniquely determined by a check matrix, wherein the check matrix represents the corresponding relation between the information bits and check bits of the LDPC code.
The LDPC code is often represented by a Tanner graph, and fig. 8 is a Tanner graph provided in this embodiment of the present application, as shown in fig. 8, the Tanner graph includes two types of vertices, n codeword bit vertices (referred to as bit nodes) respectively corresponding to columns of a check matrix, and n-k check equation vertices (referred to as check nodes) respectively corresponding to rows of the check matrix, where the bit nodes are represented by circular nodes and the check nodes are represented by square nodes. Each row of the check matrix represents a check equation and each column represents a codeword bit. The Tanner graph represents the check matrix of the LDPC code.
If a code word bit is contained in the corresponding check equation, the concerned bit node and check node are connected by a line, so that the number of lines in the Tanner graph is the same as the number of 1's in the check matrix. The check matrix corresponding to the Tanner graph illustrated in fig. 8 is:
Figure BDA0002275418490000081
in the matrix H, the number of elements 1 is 12, which coincides with the number of connecting lines in the Tanner graph of fig. 8. In the embodiment of the application, an MPDU is divided into k code elements as one segment, and n-k check bits are added after the code element for each code element to obtain an encoded coding block, so that the MPDU to be transmitted is divided into a plurality of coding blocks for transmission, and the coding block is a code word in the LDPC.
After encoding, each LDPC code (n, k), namely each encoding block, comprises a corresponding check matrix, and the information bit k and the check bit n-k in the encoding block are completely determined by the corresponding check matrix. And after receiving the coding block sequence, the receiver checks the corresponding check matrix according to each LDPC code (n, k) so as to judge whether each coding block is successfully transmitted. By means of the matrix check of the LDPC code, each coding block in the coding block sequence can be checked respectively to obtain the check result of each coding block, and the check can also be performed on part of the coding blocks which need to be checked to obtain the check results of part of the coding blocks.
In the embodiment of the present application, merging needs to be performed according to a plurality of coding block sequences acquired by a receiving party, so as to recover an MPDU. The method for the receiver to obtain the plurality of coding block sequences may be that a plurality of coding block sequences are obtained first, then the coding blocks in the coding block sequences are checked to obtain a check result and the coding block sequences are combined according to the check result, or after receiving one coding block sequence each time, the coding blocks in the coding block sequences are checked and then combined with the coding block sequence transmitted last time, and whether the next transmission is needed or not is judged according to the result after the combination.
Specifically, before acquiring the plurality of coding block sequences, the receiving side receives a new coding block sequence to obtain the plurality of coding block sequences when a problem coding block exists in at least two acquired coding block sequences, where the plurality of coding block sequences include at least two coding block sequences and the new coding block sequence.
The problematic coding block in the embodiment of the present application refers to a coding block for which the check results of corresponding coding blocks in all the coding block sequences of the at least two coding block sequences are check failures.
For example, after the coded block sequence is received for the first time, each coded block in the coded block sequence received for the first time is checked to obtain a check result of each coded block in the coded block sequence received for the first time. At this time, the coding block with the check result of failure check in the first received coding block sequence is a problem coding block, and only the corresponding problem coding block in the new coding block sequence is checked when the new coding block sequence is received next time. This process will be described below with reference to fig. 9.
Fig. 9 is a schematic diagram of coding blocks for check problem according to an embodiment of the present application, where as shown in fig. 9, a coding block sequence acquired by a receiving side for the first time is a coding block sequence a, and then the receiving side checks each coding block in the coding block sequence a. Fig. 9 illustrates that each coded block sequence includes 6 coded blocks.
For the coded block sequence A transmitted for the first time, 6 coded blocks in the coded block sequence A are checked respectively, and the checking result is shown in FIG. 9, wherein the checking of CB1, CB2 and CB5 is successful, and the checking of CB3, CB4 and CB6 is failed. CB3, CB4, and CB6 are problem coding blocks to the receiving side at this time.
Due to the unsuccessful reception, a new sequence of coded blocks, i.e. the sequence of coded blocks transmitted for the second time, coded block sequence B, needs to be received again. After the coding block sequence B is obtained, the receiver only checks the coding block corresponding to the coding block in the coding block sequence B, and does not need to check other coding blocks. The coding blocks in the coding block sequence B corresponding to the problem coding block are CB3, CB4 and CB6 in the coding block sequence B, and the results of checking these three coding blocks are shown in fig. 9, where the results of checking CB3 and CB4 are check success, and the result of checking CB6 is check failure.
In the embodiment of the application, verification of CB1, CB2 and CB5 in the coding block sequence B is not needed, because the coding blocks corresponding to CB1, CB2 and CB5 in the coding block sequence a are all verified successfully, and therefore the verification results of CB1, CB2 and CB5 in the coding block sequence B do not affect the transmission times of the coding block sequence.
Since CB6 failed to check in both of the coded block sequences transmitted in the previous two transmissions, it is necessary to receive a new coded block sequence again, i.e., coded block sequence C transmitted for the third time. After receiving the coding block sequence C, the receiving side checks only the coding block corresponding to the problematic coding block in the coding block sequence C, where the problematic coding block is only CB 6.
And checking the CB6 in the coding block sequence C to obtain a checking result as successful checking. Similarly, in the embodiment of the present application, it is not necessary to check the coding blocks in the coding block sequence C except for the CB6, and the number of times of transmission of the coding block sequence is not affected. When the check result of the CB6 in the coded block sequence C is a check success, the transmission can be stopped, and when the check result of the CB6 in the coded block sequence C is a check failure, the retransmission must be continued for at least one time.
By checking only the problem coding blocks in the coding block sequence transmitted each time and updating the problem coding blocks in the merging process of the coding block sequence transmitted each time, the coding blocks needing to be checked in the newly transmitted coding block sequence can be continuously smaller, checking resources are saved, and checking efficiency is improved.
In the above embodiments, the merging process of the coding block sequence is involved, and the merging process of the coding block sequence needs to find the corresponding coding block of the problematic coding block in the new coding block sequence. There are various ways to find a corresponding coding block of a coding block in another coding block sequence, two of which will be described below with reference to specific embodiments.
The corresponding coding block is explained first. As described above, when the MPDU is encoded in the physical layer of the transmitting device, the MPDU is divided into a plurality of sequentially connected encoded blocks for transmission. If the transmission is not successful, the transmission needs to be carried out again for one or more times in the following process. During each transmission, the MPDUs are equally divided to obtain a plurality of sequentially connected coding blocks. That is, several sequentially connected encoded blocks obtained by dividing the MPDU are the same before each transmission.
Taking fig. 9 as an example, six coding blocks in the coding block sequence a transmitted for the first time and six coding blocks in the coding block sequence B transmitted for the second time in fig. 9 are all corresponding. Since the coded block sequence for each transmission is derived from the same MPDU, the coded block sequences are identical before being transmitted to the receiving side over the wireless channel. While the receiving side may receive a part of the code block sequence received by the receiving side due to possible interference via transmission in the wireless medium.
In the above embodiments, the corresponding coding blocks in different coding block sequences are shown by illustration, for example, in fig. 9, the corresponding coding blocks of CB1 in coding block sequence a are CB1 in coding block sequence B and CB1 in coding block sequence C, the corresponding coding blocks of CB2 in coding block sequence a are CB2 in coding block sequence B and CB2 in coding block sequence C, and so on. At the receiving side, the corresponding coding block of one coding block needs to be determined in a certain manner, and the determining manner is described in the following embodiments.
Fig. 10 is a first schematic diagram of determining corresponding encoding blocks according to an embodiment of the present application, where the corresponding encoding blocks are implemented by allocating a corresponding index number to each encoding block. As shown in fig. 10, each coded block sequence includes a plurality of coded blocks, and each coded block has a corresponding index number. In the same coding block sequence, the index number of each coding block is different and is used for distinguishing each coding block. The index number of each coding block can be stored in a memory, or can be set at the head of each coding block as the identification of the coding block. The index number of the coding block is unchanged regardless of the success of the transmission of the coding block.
In each coded block sequence, the number of coded blocks included is the same, and in the case of no transmission failure, the content in each coded block sequence is also the same. The contents which may be different from each other are stored in each coding block and are arranged in order, and the arrangement sequence of the coding blocks can be determined according to the index numbers of the coding blocks.
For example, in fig. 10, the coded block sequence of each transmission includes six coded blocks, and the index numbers of the six coded blocks are: CB 1-index 1, CB 2-index 2, CB 3-index 3, CB 4-index 4, CB 5-index 5, CB 6-index 6. In the coded block sequence a transmitted for the first time, if the check result of CB3, CB4 and CB6 is failure, the receiving side can know that the check of the coded blocks with index numbers 3, 4 and 6 in the coded block sequence fails.
In the coding block sequence B of the second transmission, the coding blocks with index numbers of 3, 4 and 6, namely the CB3, the CB4 and the CB6 in the coding block sequence B are searched, and the CB3, the CB4 and the CB6 in the coding block sequence B are checked respectively. CB3 in coding block sequence B and CB3 in coding block sequence a have the same index number, and thus are corresponding coding blocks in different coding block sequences, similarly, CB4 in coding block sequence B and CB4 in coding block sequence a are corresponding coding blocks in different coding block sequences, and CB6 in coding block sequence B and CB6 in coding block sequence a are corresponding coding blocks in different coding block sequences.
In fig. 10, CB3, CB4, and CB6 in the coding block sequence B are all checked successfully, so that CB3, CB4, and CB6 in the coding block sequence a are respectively and correspondingly replaced by CB3, CB4, and CB6 in the coding block sequence B according to the index numbers of the coding blocks, so as to obtain a merged coding block sequence C, where the coding block sequence C includes 6 coding blocks with different index numbers and all checking results are checked successfully.
The embodiment shown in fig. 10 uses different index numbers for coding blocks to implement corresponding replacement when merging coding block sequences, and in practice, in addition to this method, a method of memory storage setting may also be used, which will be described below with reference to fig. 11.
Fig. 11 is a second schematic diagram illustrating determining a corresponding coding block according to an embodiment of the present application, where as shown in fig. 11, each coding block sequence includes a plurality of coding blocks, and the coding block sequence is stored in a memory space, where each coding block in the coding block sequence occupies a certain memory space.
In the embodiment shown in fig. 11, the manner of determining the corresponding coding block in the different coding block sequences is that, when the coding block sequences are stored, the size between the starting memory address of each coding block in the coding block sequences stored in the memory space and the starting memory address of the coding block sequences in the memory space is fixed. For example, in fig. 11, in the coding block sequence a transmitted for the first time, CB1 in the coding block sequence a is stored in the memory space with the starting address of 0x0000, then CB2, CB3, CB4, CB5 and CB6 in the coding block sequence a are sequentially stored in the memory space with the starting addresses of 0x1000, 0x2000, 0x3000, 0x4000 and 0x5000, and the starting memory address stored in the memory space for the coding block sequence a is 0x 0000. After the setting, the starting address of each coding block in the memory space can be obtained.
After the receiver acquires the coded block sequence B transmitted for the second time, CB1, CB2, CB3, CB4, CB5, and CB6 in the coded block sequence B may be sequentially stored in the memory space with the starting addresses of 0x6000, 0x7000, 0x8000, 0x9000, 0xA000, and 0xB 000.
The initial memory address of the coding block sequence B in the memory space is 0x 6000. After checking the code blocks in the code block sequence a, checking failures of CB3, CB4 and CB6 in the code block sequence a are obtained, at this time, according to the starting memory address 0x0000 of the code block sequence a, the starting memory address 0x2000 of CB3 in the code block sequence a and the starting memory address 0x6000 of the code block sequence B, the starting memory address 0x8000 of CB3 in the code block sequence B is found, so that the code block corresponding to CB3 in the code block sequence a, that is, CB3 in the code block sequence B is found, and then CB3 in the code block sequence B replaces CB3 in the code block sequence a.
In the same way, according to a method similar to the above, CB4 in coding block sequence B corresponding to CB4 in coding block sequence a and CB6 in coding block sequence B corresponding to CB6 in coding block sequence a are determined, and when the check result of CB4 and CB6 in coding block sequence B is successful, a replacement operation is performed, so that the coding block sequence a and the coding block sequence B are merged, and a merged coding block sequence is obtained.
The embodiments shown in fig. 10 and 11 only exemplify the manner of acquiring the corresponding coding block in the different coding block sequences, and do not limit the manner of acquiring the corresponding coding block in the different coding block sequences.
In the WLAN data processing method provided in the embodiment of the present application, a receiving side obtains a plurality of coding block sequences, verifies each coding block sequence in the plurality of coding block sequences to obtain a verification result of a coding block in each coding block sequence, and then merges the plurality of coding block sequences according to the verification result of the coding block in each coding block sequence to obtain an MPDU. Due to the fact that the check is performed on the coding blocks in the coding block sequence, according to the scheme provided by the embodiment of the application, the receiving party can keep the coding blocks which are successfully checked when receiving the coding block sequence. In the plurality of coding block sequences, as long as each corresponding coding block is verified successfully at least once in the plurality of transmissions, the MPDU can be obtained after the coding block sequences are merged, so that the possible transmission times of the MPDU can be reduced.
Fig. 12 is a schematic structural diagram of a WLAN data processing apparatus according to an embodiment of the present application, and as shown in fig. 12, the WLAN data processing apparatus includes an obtaining module 121, a verifying module 122, and a processing module 123, where:
the obtaining module 121 is configured to obtain multiple coding block sequences, where the multiple coding block sequences are obtained by a receiving side in the WLAN receiving, via a wireless medium, an original coding block sequence generated by a same mac protocol data unit MPDU from a sending side in the WLAN multiple times, each coding block sequence in the multiple coding block sequences includes M coding blocks, and M is an integer greater than 1;
the checking module 122 is configured to check each of the plurality of coding block sequences to obtain a checking result of a coding block in each of the coding block sequences, where the checking result is a checking success or a checking failure;
the processing module 123 is configured to merge the multiple coding block sequences according to a check result of a coding block in each coding block sequence to obtain the MPDU, where any one of the merged coding block sequences is a corresponding coding block that is successfully checked in the multiple coding block sequences.
In a possible implementation manner, the obtaining module 121 is further configured to:
when a problem coding block exists in at least two obtained coding block sequences, receiving a new coding block sequence to obtain the plurality of coding block sequences, wherein the plurality of coding block sequences comprise at least two coding block sequences and the new coding block sequence, and the problem coding block is a coding block with a check result of a corresponding coding block in all the coding block sequences of the at least two coding block sequences being a check failure.
In a possible implementation manner, the checking module 122 is further configured to:
and only checking the coding block corresponding to the coding block in question in the new coding block sequence.
In a possible implementation manner, the verification module 122 is specifically configured to:
and checking each coding block sequence in the plurality of coding block sequences according to the matrix check characteristic of the low-density parity check code LDPC code to obtain the check result of the coding block in each coding block sequence.
In a possible implementation manner, the processing module 123 is specifically configured to:
acquiring M encoding blocks with different index numbers from the encoding blocks with successful verification of the plurality of encoding block sequences, wherein the index numbers of the encoding blocks are used for indicating the arrangement sequence of the encoding blocks in the encoding block sequences;
and arranging the M encoding blocks with different index numbers and successful verification according to the sequence of the index numbers to obtain the MPDU.
The WLAN data processing apparatus provided in the embodiment of the present application may be configured to execute the technical solution of the method embodiment, and the implementation principle and the technical effect are similar, which are not described herein again.
The present application provides a readable storage medium comprising a computer program which, when run on a computer, causes the computer to perform a WLAN data processing method as provided by any of the above-described method embodiments.
An embodiment of the present application further provides a computer program product, where the computer program product includes computer program code, and when the computer program code runs on a computer, the computer is caused to execute the WLAN data processing method provided in any of the above method embodiments.
All or a portion of the steps of implementing the above-described method embodiments may be performed by hardware associated with program instructions. The aforementioned program may be stored in a readable memory. When executed, the program performs steps comprising the method embodiments described above; and the aforementioned memory (storage medium) includes: read-only memory (ROM), RAM, flash memory, hard disk, solid state disk, magnetic tape (magnetic tape), floppy disk (flexible disk), optical disk (optical disk), and any combination thereof.
An embodiment of the present application provides a chip, where the chip is configured to support a receiving device (e.g., a terminal device, a network device, etc.) to implement the functions shown in any method embodiment of the present application (e.g., a receiving side in a WLAN acquires a plurality of coding block sequences, checks each of the plurality of coding block sequences to obtain a check result of a coding block in each coding block sequence, and combines the plurality of coding block sequences according to the check result of the coding block in each coding block sequence to obtain the MPDU, etc.). When the chip in the receiving device implementing the method includes a processing unit, the chip may further include a communication unit, and the processing unit may be, for example, a processor, and when the chip includes the communication unit, the communication unit may be, for example, an input/output interface, a pin, a circuit, or the like. The processing unit performs all or part of the actions performed by the respective processing modules (for example, the obtaining module 121, the verifying module 122, and the processing module 123 in fig. 12) in the embodiment of the present application, and the communication unit may perform corresponding receiving or sending actions.
The chip in the embodiment of the present application is a WLAN chip. For example, conventional WLAN chips include a high-pass (Qualcomm) AR9344 chip, a bosom (Broadcom) BCM43684 and BCM4366 chip, a haisi (hisicon) Hi1103 chip, a Cypress (Cypress) CYW89650 chip, a Marvell (Marvell)88W9064 chip, a consortium (MediaTek) MT7621 chip, a repast (Realtek) RTL8710 chip, and the like. The chip in the embodiment of the present application is similar to a conventional WLAN chip, and the scheme of the embodiment of the present application is implemented.
Fig. 13 is a schematic structural diagram of an electronic device provided in an embodiment of the present application, and as shown in fig. 13, the electronic device includes an antenna 131 and a chip 132, where the antenna 131 is configured to receive a radio wave, the chip 132 is the chip described in the foregoing embodiment, and the chip 132 is configured to process a signal carried in the radio wave according to a WLAN data processing method provided in any foregoing method embodiment, so as to obtain the MPDU.
Optionally, the electronic device in this embodiment of the application further includes a memory 133 and a processor 134, where the memory 133 is in communication with the processor 134, and the chip 132 is in communication with the processor 134. The memory 133 is used for storing computer programs. The processor 134 is used to implement upper layer applications.
The electronic device may also include a stand-alone Radio Frequency (RF) module. A separate RF module is located between the antenna 131 and the chip 132. The RF module may also be integrated in the chip 132.
The electronic device may be a terminal device or an access point device.
Embodiments of the present application are described with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of the application. It will be understood that each flow and/or block of the flow diagrams and/or block diagrams, and combinations of flows and/or blocks in the flow diagrams and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processing unit of a general purpose computer, special purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processing unit of the computer or other programmable data processing apparatus, create means for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including instruction means which implement the function specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
It will be apparent to those skilled in the art that various changes and modifications may be made in the embodiments of the present application without departing from the spirit and scope of the application. Thus, if such modifications and variations of the embodiments of the present application fall within the scope of the claims of the present application and their equivalents, the present application is also intended to encompass such modifications and variations.
In the present application, the terms "include" and variations thereof may refer to non-limiting inclusions; the term "or" and variations thereof may mean "and/or". The terms "first," "second," and the like in this application are used for distinguishing between similar elements and not necessarily for describing a particular sequential or chronological order. In the present application, "a plurality" means two or more. "and/or" describes the association relationship of the associated objects, meaning that there may be three relationships, e.g., a and/or B, which may mean: a exists alone, A and B exist simultaneously, and B exists alone. The character "/" generally indicates that the former and latter associated objects are in an "or" relationship.
Finally, it should be noted that: the above embodiments are only used for illustrating the technical solutions of the embodiments of the present application, and are not limited thereto; although the embodiments of the present application have been described in detail with reference to the foregoing embodiments, those skilled in the art will understand that: the technical solutions described in the foregoing embodiments may still be modified, or some or all of the technical features may be equivalently replaced; and such modifications or substitutions do not depart from the spirit and scope of the embodiments of the present application.

Claims (13)

1. A Wireless Local Area Network (WLAN) data processing method is characterized by comprising the following steps:
a receiving party in the WLAN acquires a plurality of coding block sequences, wherein the plurality of coding block sequences are obtained by the receiving party receiving an original coding block sequence generated by the same media access control protocol data unit (MPDU) by a sending party in the WLAN for a plurality of times through a wireless medium, each coding block sequence in the plurality of coding block sequences comprises M coding blocks, and M is an integer greater than 1;
checking each coding block sequence in the plurality of coding block sequences to obtain a checking result of the coding block in each coding block sequence, wherein the checking result is checking success or checking failure;
and merging the plurality of coding block sequences according to the check result of the coding block in each coding block sequence to obtain the MPDU, wherein any one coding block in the merged coding block sequence is a corresponding coding block which is successfully checked in the plurality of coding block sequences.
2. The method of claim 1, wherein prior to obtaining the plurality of sequences of encoded blocks, the method further comprises:
the receiving party in the WLAN receives a new coding block sequence to obtain a plurality of coding block sequences when a problem coding block exists in at least two obtained coding block sequences, wherein the plurality of coding block sequences comprise at least two coding block sequences and the new coding block sequence, and the problem coding block is a coding block with a check result of a corresponding coding block in all the coding block sequences of the at least two coding block sequences being check failure.
3. The method of claim 2, wherein after receiving a new sequence of coded blocks, the method further comprises:
and only checking the coding block corresponding to the coding block in question in the new coding block sequence.
4. The method of any one of claims 1-3, wherein checking each of the plurality of sequences of coded blocks to obtain a check result for the coded blocks in each sequence of coded blocks comprises:
and checking each coding block sequence in the plurality of coding block sequences according to the matrix check characteristic of the low-density parity check code LDPC code to obtain the check result of the coding block in each coding block sequence.
5. The method of any of claims 1-4, wherein the merging the plurality of sequences of coded blocks to obtain the MPDU based on the check result of the coded blocks in each sequence of coded blocks comprises:
acquiring M encoding blocks with different index numbers from the encoding blocks with successful verification of the plurality of encoding block sequences, wherein the index numbers of the encoding blocks are used for indicating the arrangement sequence of the encoding blocks in the encoding block sequences;
and arranging the M encoding blocks with different index numbers and successful verification according to the sequence of the index numbers to obtain the MPDU.
6. A wireless local area network, WLAN, data processing apparatus, comprising:
an obtaining module, configured to obtain multiple coding block sequences, where the multiple coding block sequences are obtained by a receiving side in a WLAN receiving an original coding block sequence, generated by a same mac protocol data unit MPDU, of a sending side in the WLAN via a wireless medium for multiple times, each coding block sequence in the multiple coding block sequences includes M coding blocks, and M is an integer greater than 1;
the checking module is used for checking each coding block sequence in the plurality of coding block sequences to obtain a checking result of the coding block in each coding block sequence, wherein the checking result is checking success or checking failure;
and the processing module is used for merging the plurality of coding block sequences to obtain the MPDU according to the check result of the coding block in each coding block sequence, wherein any one coding block in the merged coding block sequence is a corresponding coding block which is successfully checked in the plurality of coding block sequences.
7. The apparatus of claim 6, wherein the obtaining module is further configured to:
when a problem coding block exists in at least two obtained coding block sequences, receiving a new coding block sequence to obtain the plurality of coding block sequences, wherein the plurality of coding block sequences comprise at least two coding block sequences and the new coding block sequence, and the problem coding block is a coding block with a check result of a corresponding coding block in all the coding block sequences of the at least two coding block sequences being a check failure.
8. The apparatus of claim 7, wherein the verification module is further configured to:
and only checking the coding block corresponding to the coding block in question in the new coding block sequence.
9. The apparatus according to any one of claims 6 to 8, wherein the verification module is specifically configured to:
and checking each coding block sequence in the plurality of coding block sequences according to the matrix check characteristic of the low-density parity check code LDPC code to obtain the check result of the coding block in each coding block sequence.
10. The apparatus according to any one of claims 6 to 9, wherein the processing module is specifically configured to:
acquiring M encoding blocks with different index numbers from the encoding blocks with successful verification of the plurality of encoding block sequences, wherein the index numbers of the encoding blocks are used for indicating the arrangement sequence of the encoding blocks in the encoding block sequences;
and arranging the M encoding blocks with different index numbers and successful verification according to the sequence of the index numbers to obtain the MPDU.
11. A storage medium, characterized in that the storage medium comprises a computer program for implementing the wireless local area network WLAN data processing method according to any one of claims 1 to 5.
12. A chip for performing the WLAN data processing method according to any of claims 1 to 5.
13. An electronic device, comprising an antenna and a chip, wherein:
the antenna is used for receiving radio waves;
the chip is used for processing signals carried in the radio waves according to the wireless local area network WLAN data processing method of any one of claims 1-5.
CN201911120809.7A 2019-11-15 2019-11-15 Method, device and equipment for processing wireless local area network data Active CN112821984B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911120809.7A CN112821984B (en) 2019-11-15 2019-11-15 Method, device and equipment for processing wireless local area network data

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911120809.7A CN112821984B (en) 2019-11-15 2019-11-15 Method, device and equipment for processing wireless local area network data

Publications (2)

Publication Number Publication Date
CN112821984A true CN112821984A (en) 2021-05-18
CN112821984B CN112821984B (en) 2022-07-22

Family

ID=75851754

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911120809.7A Active CN112821984B (en) 2019-11-15 2019-11-15 Method, device and equipment for processing wireless local area network data

Country Status (1)

Country Link
CN (1) CN112821984B (en)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100246543A1 (en) * 2009-03-27 2010-09-30 Qualcomm Incorporated System and method of transmitting and receiving data frames
CN106301710A (en) * 2015-06-12 2017-01-04 苹果公司 The hybrid automatic repeat-request (H ARQ) of WLAN
CN107079340A (en) * 2014-10-27 2017-08-18 英特尔Ip公司 For having wireless device, method and the computer-readable medium of the segmentation of block confirmation and polymerization in WLAN
CN109196805A (en) * 2018-08-23 2019-01-11 北京小米移动软件有限公司 Transmission retransmits the method and device of code book
WO2019021588A1 (en) * 2017-07-27 2019-01-31 ソニー株式会社 Wireless lan communication device and wireless lan communication method
CN109417449A (en) * 2016-07-11 2019-03-01 高通股份有限公司 Hybrid automatic repeat-request feedback and the scheduling of more Transmission Time Intervals

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100246543A1 (en) * 2009-03-27 2010-09-30 Qualcomm Incorporated System and method of transmitting and receiving data frames
CN107079340A (en) * 2014-10-27 2017-08-18 英特尔Ip公司 For having wireless device, method and the computer-readable medium of the segmentation of block confirmation and polymerization in WLAN
CN106301710A (en) * 2015-06-12 2017-01-04 苹果公司 The hybrid automatic repeat-request (H ARQ) of WLAN
CN109417449A (en) * 2016-07-11 2019-03-01 高通股份有限公司 Hybrid automatic repeat-request feedback and the scheduling of more Transmission Time Intervals
WO2019021588A1 (en) * 2017-07-27 2019-01-31 ソニー株式会社 Wireless lan communication device and wireless lan communication method
CN109196805A (en) * 2018-08-23 2019-01-11 北京小米移动软件有限公司 Transmission retransmits the method and device of code book

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
毕敬腾等: "一种基于效用与业务特性的帧聚合分配机制", 《信息工程大学学报》 *

Also Published As

Publication number Publication date
CN112821984B (en) 2022-07-22

Similar Documents

Publication Publication Date Title
CN107026709B (en) Data packet coding processing method and device, base station and user equipment
US10469212B2 (en) Data transmission method and device
CN111919406B (en) System and method for HARQ retransmission using outer codes
JP5349480B2 (en) Method and apparatus for generating multiple cyclic redundancy checks (CRC)
CN101803208B (en) Multi-layer cyclic redundancy check code in wireless communication system
US8429503B2 (en) Encoding device and decoding device
CN110383728B (en) System and method using outer code and non-equal length code blocks
US11133894B2 (en) Information transmission method, and decoding method and apparatus
JP2020507990A (en) Method and apparatus for processing information, communication device, and communication system
CN110663189A (en) Method and apparatus for polarization encoding
CN113541856A (en) Data recovery method and device
US20100070820A1 (en) Coding apparatus, coding method, coding and decoding apparatus, and communication apparatus
JP2002043953A (en) Error correction method and error correction device
JP2004088246A (en) Wireless communication method and wireless communication device
JP6291296B2 (en) Transmitting apparatus and receiving apparatus using concatenated codes
Luyi et al. Forward error correction
KR101531502B1 (en) Method of Error control
US11463108B2 (en) Information processing method and communications apparatus
CN114337686A (en) Method and device for coding and decoding polarization code and information transmission system
CN112821984B (en) Method, device and equipment for processing wireless local area network data
CN110071780B (en) Check method and device applied to low-density parity check LDPC (Low Density parity check), and communication equipment
US11128320B2 (en) Encoding method, decoding method, encoding apparatus, and decoding apparatus
CN102325003A (en) Method for data error detection, device and communication system
CN113225157A (en) Coding method for wireless local area network, related transmitting device and receiving device
JP2006304351A (en) Radio communication method and radio communication device

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant