Method for wirelessly transmitting information, method for decoding wirelessly transmitted information, and receiving device

By using the FECF encoder and decoder to generate parity frames under the IEEE 802.11 standard, combined with HARQ hard and soft solutions, the difficulty of retransmission request and error detection of HARQ technology when used independently in the MAC and PHY layers is solved, and the further implementation is achieved Efficient and reliable data transmission.

CN114389750BActive Publication Date: 2024-12-10MEDIATEK SINGAPORE PTE LTD
View PDF 9 Cites 0 Cited by

Patent Information

Application Number
CN202111143615.6
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Priority Date
2020-10-20
Filing Date
2021-09-28
Publication Date
2024-12-10
Estimated Expiration
2041-09-28

AI Technical Summary

Technical Problem

Under the IEEE 802.11 standard, the independent use of HARQ technology in the MAC and PHY layers leads to difficulty in retransmission requests and error detection, and the inability to effectively combine codewords, affecting the reliability of data transmission.

Method used

By using the FECF encoder and decoder respectively on the sender and receiver, the parity frame is generated and used for encoding and decoding of data frames, combined with the HARQ hard scheme and soft scheme, redundant frames are transmitted in a timely manner to compensate for wireless channel loss. Implement reconstruction and decoding of data frames.

Benefits of technology

It improves the reliability and efficiency of data transmission, reduces the number of retransmissions and delays, enhances the fault tolerance of the channel, and adapts to transmission needs under different channel conditions.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114389750B_ABST
    Figure CN114389750B_ABST
Patent Text Reader

Abstract

The present invention provides a method and apparatus for enabling data transmission using HARQ in an IEEE 802.11 system. A method performed by a transmitting device is disclosed, comprising: calculating multiple redundant frames based on multiple data frames, sending the multiple data frames to a receiving device, and sending a set of the multiple redundant frames to a receiving device determined by the transmitting device in response to a reception confirmation. One embodiment includes a method for determining a failed data frame in a plurality of data frames, requesting a set of the multiple redundant frames, and recovering the failed data frame using a decoder using a hard decision input. Other embodiments include an apparatus / receiving apparatus in a receiver device, which implements a method for decoding a failed data frame using a decoder using a soft decision input.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] Embodiments of the present invention generally relate to the field of wireless communications. More specifically, embodiments of the present invention relate to a method and apparatus for performing data transmission using Hybrid Automatic Repeat Request (HARQ) in a wireless network. Background Art

[0002] Modern electronic devices often send and receive data with other electronic devices wirelessly (e.g., using Wi-Fi), and data can often be lost or corrupted. This can be due to interference from other electronic devices or other common problems with wireless data transmission. For these reasons, several techniques for reliable transmission have been developed so that transmission data intended for a receiver can be successfully delivered when retransmission is required.

[0003] Two common techniques for reliable data transmission are Automatic Repeat Request (ARQ) and Forward Error Coding (FEC). Automatic Repeat Request (ARQ) is a technique that requires the receiver (also called a receiver) to send an acknowledgment packet after successfully receiving data. If the data is not successfully transmitted, no acknowledgment is sent to the sender. In this case, when the sender does not receive the acknowledgment, the data is retransmitted. However, the bandwidth efficiency of Automatic Repeat Request (ARQ) is relatively low, and the receiver cannot exploit potential spectrum improvements with partially decoded data because the receiver discards any data frames that are not successfully received. Forward Error Correction Coding (FEC) is a technique that encodes the original data message using an error correction code, which includes redundant bits (parity bits). The use of Forward Error Correction Coding (FEC) improves transmission reliability because the receiver can correct a certain amount of errors without retransmitting the data.

[0004] Hybrid Automatic Repeat Request (Hybrid ARQ or HARQ) is a scheme that combines forward error-correcting coding with Automatic Repeat Request (ARQ). With HARQ, data frames that are not correctly decoded are not discarded, but are stored so that the receiver can combine them with retransmitted data frames later before decoding. In poor channel conditions, HARQ performs better than Automatic Repeat Request (ARQ), while in relatively good channel conditions, HARQ performance may be worse than Automatic Repeat Request (ARQ) due to the added redundancy. In practice, the two most common HARQ combining techniques are Chase Combining (CC) and Incremental Redundancy (IR). HARQ combined with CC enhances decoding by combining past and current transmissions, while Incremental Redundancy (IR) is performed by sending additional parity bits in batches to control the coding rate.

[0005] Currently, under the IEEE 802.11ax standard, the physical (Physical, PHY) layer uses low-density parity-check (LDPC) code for forward error correction coding (FEC), and the medium access control (MAC) layer uses block ACK (Block ACK, BACK) for automatic repeat request (ARQ). In other words, in 802.11, automatic repeat request (ARQ) and forward error correction coding (FEC) are not combined, but are used independently at different protocol layers. Introducing HARQ under the IEEE 802.11 standard will bring many challenges. For example, if HARQ is used only in a MAC protocol using MAC protocol data units (MPDU) or Aggregate MPDU (A-MPDU), each retransmission will carry a different codeword (or coded data) with respect to a retransmission request because the retransmitted codeword is generated by the PHY using a different MPDU payload and header (e.g., a different number of delimiters, different CRC / FCS bits, and / or a different MAC header). Therefore, the receiver cannot combine the current and past codewords for decoding purposes. In addition, an MPDU or A-MPDU may span multiple complete and partial codewords. This results in a codeword mismatch, which also prevents the retransmitted codewords from being combined at the receiver. On the other hand, if HARQ is used only at the LDPC codeword level, the existing 802.11 PHY layer cannot perform detection of erroneous LDPC codewords and request retransmission because the PHY layer defined according to the current IEEE 802.11 standard does not have the ability to support a codeword-based automatic repeat request (ARQ) mechanism. Summary of the invention

[0006] Therefore, there is a need for a HARQ method and apparatus that complies with the emerging IEEE 802.11 standards (eg, IEEE 802.11be and later versions) by adjusting existing PHY and MAC layer protocols.

[0007] Embodiments of the present invention provide an apparatus and method for performing HARQ functions according to an 802.11 standard (e.g., 802.11be), including minimal changes to the PHY layer and the MAC layer. At the sender, a forward error correction coding (FEC) frame (FECFrame-based, FECF) encoder is used to generate parity (also known as redundant) frames from data frames. These parity frames are sent by the sender in response to an automatic repeat request (ARQ) request sent by the receiver. The sender can use the parity frame to recover the lost data frame using the FECF decoder. According to some embodiments, a HARQ hard scheme (HARQ-hard scheme) using a FECF hard input decoder (FECF hard input decoder) employed entirely on the MAC layer is described. According to other embodiments, a HARQ soft scheme (HARQ-soft scheme) using a FECF soft input decoder (FECF soft input decoder) employed on the PHY layer is described. The sender can also compensate for packet losses in the wireless channel by opportunistically transmitting a certain number of parity frames.

[0008] According to some embodiments, the present invention provides a method for wirelessly transmitting information, which is performed by a transmitting device. The method includes: calculating / generating multiple redundant frames based on multiple data frames, wherein the multiple data frames include data bits; sending the multiple data frames to a receiving device; receiving a first confirmation from the receiving device, the first confirmation indicating that one or more of the multiple data frames are lost at the receiving device; and, in response to receiving the first confirmation, sending a first set of the multiple redundant frames to the receiving device, wherein the transmitting device and the receiving device communicate according to a version of the IEEE 802.11 standard.

[0009] In some embodiments, the method further includes: after sending the first set of the multiple redundant frames, receiving a second confirmation from the receiving device, the second confirmation indicating that one or more of the multiple data frames are lost at the receiving device; and, in response to receiving the second confirmation, sending a second set of the multiple redundant frames to the receiving device, wherein the first set and the second set include different redundant frames among the multiple redundant frames.

[0010] In some embodiments, the method further includes: storing the plurality of redundant frames in a buffer memory (buffer memory / cache) of the transmitting device.

[0011] In some embodiments, before receiving the first acknowledgment, a redundant frame from the plurality of redundant frames is sent to the receiving device in a timely manner.

[0012] In some embodiments, the plurality of redundant frames are used to provide information to the receiving device to reconstruct lost data frames of the plurality of data frames.

[0013] In some embodiments, each redundant frame of the plurality of redundant frames includes a corresponding header, the header including: an indication that the corresponding frame in which the header is located is a redundant frame; and a sequence number for identifying a group of data frames to which the corresponding frame belongs.

[0014] According to some other embodiments of the present invention, a method for decoding wirelessly transmitted information is provided, which is performed by a receiving device. The method includes: receiving a plurality of data frames including data bits from a transmitting device; checking the plurality of data frames to determine a failed data frame in the plurality of data frames; sending a request to the transmitting device to request the transmitting device to send a redundant frame associated with the plurality of data frames; receiving the redundant frame from the transmitting device; and decoding the failed data frame using the data frame in the plurality of data frames and the redundant frame, wherein the transmitting device and the receiving device communicate according to a version of the IEEE 802.11 standard.

[0015] In some embodiments, each redundant frame of the plurality of redundant frames includes a corresponding header, the header including: an indication that the corresponding frame in which the header is located is a redundant frame; and a sequence number for identifying a group of data frames to which the corresponding frame belongs.

[0016] In some embodiments, the method further includes: before sending a request to the sending device to request the sending device to send a redundant frame, determining that the number of successfully decoded data frames in the multiple data frames plus the number of successfully decoded redundant frames in the multiple redundant frames is less than a predetermined value.

[0017] In some embodiments, checking the plurality of data frames to determine a failed data frame among the plurality of data frames is implemented using a decoder that is operative to decode a low density parity check (LDPC) code and employs a soft decision input and a hard decision output.

[0018] In some embodiments, the method further includes: determining a failed data frame among the multiple data frames; sending a request for an additional redundant frame; receiving the additional redundant frame from the sending device; and decoding the failed data frame using the data frame received from the multiple data frames and the redundant frame received from the multiple redundant frames.

[0019] According to some embodiments of the present invention, a receiving device (or a device in a receiving device) is provided for decoding information transmitted wirelessly from a transmitting device. The receiving device includes: a controller coupled to a buffer memory and configured to receive and store a log likelihood ratio (LLR) of a received data frame and a LLR of a received redundant frame in the buffer memory; an 802.11 decoder configured to decode a codeword of the received data frame and transmit the decoded bits of the codeword to an 802.11 MAC interface, wherein the 802.11 decoder is coupled to the controller; the 802.11 MAC interface is coupled to the controller and the 802.11 decoder, wherein the 802.11 MAC interface is configured to provide an indication to the controller identifying a failed data frame in the received data frame; and a redundant decoder coupled to the controller and the 802.11 MAC interface, wherein the redundant decoder is configured to receive an instruction from the controller to decode the bits of the failed data frame using the LLR stored in the buffer memory.

[0020] In some embodiments, the receiving device is operable to request an additional redundant frame based on an indication identifying a failed data frame in the received data frames, and the redundant decoder is operable to decode bits of the failed data frame using the LLRs stored in the buffer memory and the LLRs of the last received redundant frame.

[0021] In some embodiments, the 802.11 decoder and the redundant decoder reside at a physical layer of the receiving device.

[0022] In some embodiments, when the 802.11 MAC interface indicates that all bits of the failed data frame are successfully decoded, the controller is further operable to clear the buffer memory.

[0023] In some embodiments, the receiving device communicates with the sending device according to a version of the IEEE 802.11 standard.

[0024] In some embodiments, the receiving device further comprises: a demodulator coupled to the controller and the 802.11 decoder, the demodulator being operable to transmit the LLR of the received frame to the controller and transmit the demodulated signal to the 802.11 decoder to decode the received data frame.

[0025] In some embodiments, the 802.11 MAC interface is operable to receive the decoded bits of the codeword from the 802.11 decoder, and is further operable to discard the decoded bits of the redundant frame, and is further operable to store the decoded bits of the data frame.

[0026] In some embodiments, the redundant decoder is operable to use the same redundant check matrix used by the redundant encoder of the transmitting device for decoding, and further identify the matrix to the receiving device based on a MAC protocol.

[0027] In some embodiments, the redundant decoder outputs only the decoded bits of the failed data frame to the 802.11 MAC interface for identification of the failed data frame.

[0028] The present invention is provided by way of example and is not intended to limit the present invention. Those skilled in the art will undoubtedly understand these and other purposes of the present invention after reading the following detailed description of the preferred embodiments shown in the accompanying drawings. The detailed description will be provided in the following embodiments with reference to the accompanying drawings. BRIEF DESCRIPTION OF THE DRAWINGS

[0029] The present invention may be more fully understood by reading the following detailed description and by referring to the examples given in the accompanying drawings, in which:

[0030] Figure 1 is a block diagram illustrating an exemplary frame exchange sequence using a novel HARQ scheme according to an embodiment of the present invention.

[0031] Figure 2 is a block diagram of an exemplary FECF encoder according to an embodiment of the present invention.

[0032] Figure 3A is a flow chart illustrating an exemplary method for performing HARQ transmissions.

[0033] Figure 3B is a flow chart illustrating an exemplary method for performing HARQ-hard decoding.

[0034] Figure 4A graphical diagram of Packet Error Rate (PER) as a function of Signal-to-Noise ratio (SNR) is shown for a HARQ hard scheme using 4-way Quadrature Amplitude Modulation (QAM).

[0035] Figure 5 A schematic diagram of PER as a function of SNR is shown for a HARQ hard scheme using 16QAM.

[0036] Figure 6 A graphical diagram of the average number of transmissions per data frame as a function of SNR is shown for a HARQ hard scheme using 4QAM.

[0037] Figure 7 A graphical diagram of the average number of transmissions per data frame as a function of SNR is shown for a HARQ hard scheme using 16QAM.

[0038] Figure 8 A schematic graph of throughput (megabits per second) as a function of SNR is plotted for the HARQ hard scheme.

[0039] Fig.9A A flow chart of an exemplary method for decoding a HARQ transmission at a HARQ-soft receiver is shown.

[0040] Fig. 9B A flow chart of an exemplary method for performing HARQ soft decoding is shown.

[0041] Fig.10 is a graph showing the bit error rate (BER) as a function of SNR for a HARQ soft scheme using a 2 / 3 basis code rate.

[0042] Fig.11 is a graph depicting BER as a function of SNR for a HARQ soft scheme using a 3 / 4 base code rate.

[0043] Fig.12 is a graph showing PER as a function of SNR for a HARQ soft scheme using 2 / 3 base code rate.

[0044] Fig.13 is a graph showing PER as a function of SNR for a HARQ soft scheme using a 3 / 4 base code rate.

[0045] Fig.14is a graph showing the throughput (in megabits per second) as a function of SNR for a HARQ soft scheme using a 2 / 3 base code rate.

[0046] Fig.15 Graph showing throughput (Mbits per second) as a function of SNR for a HARQ soft scheme using a 3 / 4 base code rate.

[0047] Fig.16 A block diagram of an exemplary electronic system platform is shown upon which embodiments of the present invention may be implemented.

[0048] In the following detailed description, for the purpose of illustration, many specific details are set forth so that those skilled in the art can more thoroughly understand the embodiments of the present invention. However, it is apparent that one or more embodiments may be implemented without these specific details, and different embodiments may be combined as needed, and should not be limited to the embodiments listed in the accompanying drawings. DETAILED DESCRIPTION

[0049] The following description is a preferred embodiment of the present invention, which is only used to illustrate the technical features of the present invention, and is not used to limit the scope of the present invention. Certain words are used throughout the specification and claims to refer to specific components. It should be understood by those skilled in the art that manufacturers may use different names to refer to the same components. Therefore, the present specification and claims do not use the difference in name as a way to distinguish components, but use the difference in function of the components as a basis for distinction. The terms "component", "system" and "device" used in the present invention can be entities related to computers, wherein the computer can be hardware, software, or a combination of hardware and software. The terms "including" and "comprising" mentioned in the following description and claims are open-ended terms, so they should be interpreted as "including, but not limited to...". In addition, the term "coupled" means an indirect or direct electrical connection. Therefore, if a device is described as coupled to another device, it means that the device can be directly electrically connected to the other device, or indirectly electrically connected to the other device through other devices or connection means.

[0050] Corresponding numbers and symbols in the various figures of the drawings generally refer to corresponding parts unless otherwise indicated. The drawings are drawn to clearly illustrate the relevant parts of the embodiments and are not necessarily drawn to scale.

[0051] The term "substantially" or "approximately" as used herein means that within an acceptable range, a person skilled in the art can solve the technical problem to be solved and basically achieve the technical effect to be achieved. For example, "approximately equal to" means that a certain error from "completely equal to" is acceptable to a person skilled in the art without affecting the correctness of the result.

[0052] Portions of the following detailed description are presented and discussed in terms of methods. Although the drawings (e.g., Figure 3A , Figure 3B , Fig.9A and Fig. 9B ) discloses its steps and sequence, but these steps and sequence are exemplary. Each embodiment is suitable for performing various other steps or variations of the steps listed in the flowchart of the accompanying drawings of this document, and can be performed in other sequences different from the sequence depicted and described herein.

[0053] Some parts of the detailed description are presented in the form of symbolic representations of processes, steps, logic blocks, processing and other data bit operations that can be performed on a computer memory. These descriptions and representations are the means by which technicians in the field of data processing use to most effectively convey the essence of their work to other technicians in the field. Here, programs, steps, logic blocks, processes, etc. performed by a computer are generally considered to be self-consistent sequences of steps or instructions that cause a desired result. These steps are steps that require physical operations on physical quantities. Typically, these physical quantities take the form of electrical or magnetic signals that can be stored, transmitted, combined, compared, and otherwise operated in a computer system. Sometimes, mainly for commonly used reasons, it has proven to be convenient to refer to these signals as bits / bits / bits, values, elements, symbols, characters, terms, numbers, etc.

[0054] It should be remembered, however, that all of these and similar terms will be associated with the appropriate physical quantities and are merely convenient labels applied to these quantities. Unless otherwise clear from the following discussion, it should be understood that throughout the discussion, the use of terms such as "access," "configure," "coordinate," "store," "transmit," "retransmit," "authenticate," "identify," "request," "report," "determine," etc., refers to the actions and processes of a computer system or similar electronic computing device that operates and converts data represented by physical (electronic) quantities. The conversion of computer system registers and memories into other data, similarly represented as physical quantities within a computer system memory or registers or other such information storage, transmission or display device.

[0055] A novel HARQ scheme for IEEE 802.11

[0056] Embodiments of the present invention provide an apparatus and method for performing HARQ functions according to an 802.11 standard (e.g., 802.11be), which includes minimal changes / minor changes to the PHY layer and the MAC layer. A forward error correction coding (FEC) frame (FECFrame-based, FECF) encoder is used to generate parity (also known as redundancy) frames from data frames of a sender. These parity frames are sent by the sender in response to an automatic repeat request (ARQ) request sent by a receiver. According to some embodiments, the sender can use parity frames to enable the FECF decoder to recover lost data frames (datta frames). According to some embodiments, the present invention describes a HARQ hard scheme that uses a FECF hard input decoder that is entirely employed at the MAC layer. According to other embodiments, the present invention also describes a HARQ soft scheme that uses a FECF soft input decoder employed at the PHY layer. The sender can also compensate for packet loss in the wireless channel by opportunistically transmitting a certain number of parity frames.

[0057] Figure 1According to an embodiment of the present invention, an exemplary HARQ protocol sequence 100 is shown, which includes original data frames 115, 120, 125, 130, block acknowledgement (BACK) 135 and parity frame 140. In sequence 100, parity frames (e.g., parity frame 140) are generated from k data frames by sender 105 using a code generator matrix. First, the sender transmits a data frame. Data frame 1 (115) is sent by sender 105 ("sending device") to receiver 10 ("receiving device"). As used herein, the term station (STA) generally refers to an electronic device capable of sending and receiving data via Wi-Fi, which does not operate as an access point (AP). The sender 105 and the receiver 10 may include a wireless STA or AP. The receiver 110 successfully (without error) receives data frame 1 (115) and data frame 2 (120). Data frame 3 (125) is not successfully received by the receiver 10. After the sender 105 sends all k data frames 115, 120, 125, and 130, the receiver 10 sends a BACK indicating which data frames (e.g., MPDUs) have been successfully received or not. In example 100, a BACK is sent from the receiver 10 to the sender 105 indicating that data frame 3 (125) was not successfully decoded.

[0058] Based on BACK 135, the sender 105 can identify the number of failed data frames. The sender 105 can use any well-known predetermined algorithm to determine the number of parity frames to send to the receiver 10. Figure 1 In the example of , the sender 105 determines that it is sufficient to send only one parity frame 140 to the receiver 10 so that all bits in the data frame 3 can be reconstructed at the receiver. A group of k data frames and parity frames are considered by the sender (105) and the receiver (110) as codewords of a linear block code.

[0059] In one embodiment, the FECF encoder on the sender side may use any systematic block code C(n,k,d) that enables the sender to construct r parity check frames from k data frames, where C(n,k,d) is a standard representation of a typical block code, n is the length of the codeword, i.e., the length of the FECF coding group, k is the length of the message, i.e., the number of data frames, n=k+r. The following Table I shows the encoding matrix G from k data frames. k×n An exemplary process for generating a codeword c, where u i,j and p i,j are the i-th symbol of the j-th data frame and the i-th symbol of the j-th parity frame. i,j and p i,j It can be defined as a bit, a sequence of bits, or a modulated symbol.

[0060]

[0061] c=(u 1 ,..,u k , p k+1 ,..,p n ) represents the original data frames, and the remaining (nk) columns represent the parity check frames. Each data frame is of size L bits or symbols. Although code C(n,k,d) can be any block code, it is desirable to select a code C with optimal or near-optimal fault correction capability.

[0062] about Figure 2 , an exemplary series of data frames (such as MPDUs shown in the figure) and parity frames (such as R-MPDUs shown in the figure) are depicted according to an embodiment of the present invention. Each parity MPDU carries a MAC header (header, HDR) and a frame check sum (frame check sums, FCS) for error detection. Figure 2As shown, when the FECF encoder uses the C(n,k,d) code, r parity frames (such as R-MPDUs 220 and 225) can be generated from k data frames (such as MPDUs 205, 210, 215). This forms a FECF Coding Group (FECF CG) of size n frames. The FECF CG is a set of encoded MPDU frames that belong to the same codeword of the code C(n,k,d). The sender is operated to store r parity frames (e.g., R-MPDUs 220 and 225) in a buffer. The FECF encoder requires that all MSDUs are of the same size (e.g., L bits). For example, this can be achieved by using zero padding. The sender must include a set of predefined elements or fields in the HDR of the parity frame (such as the R-MPDU) for the receiver to identify the parity frame.

[0063] The receiver may use R-MPDUs 220 and 225 to reconstruct any original data contained in MPDUs 205, 210, and 215 (and any other data frames sent) that was not successfully decoded. Figure 2 In the HDR, if MPDU-2 is not successfully decoded at the receiver, the R-MPDU parity frame can be used to reconstruct the payload bits of MPDU-2 (i.e., MSDU-2210). According to some embodiments, the MPDU and R-MPDU used to generate the same codeword are identified by the receiver using the FECF CG number and frame sequence number (FSN) carried in the HDR. Both the FECF CG number and the FSN are parsed in the HDR by the sender according to a predetermined rule.

[0064] Figure 3A 3 is a flow chart depicting an exemplary method 300 for performing FECF-based HARQ encoding at a transmitting device (transmitter). When the HARQ encoder uses C(n,k,d) code, the transmitter can only send at most r parity frames belonging to the same FECF CG.

[0065] Specifically, at step 305, the sender sends k data frames (e.g., k MPDU frames). At step 310, the sender may also opportunistically send α parity check frames after step 305. For example, the sender may use a bit error rate estimate P Band some additional function f(·) to determine how many parity frames to send to compensate for channel losses and reconstruct lost frames in a timely manner at the receiver. For example, the bit error rate estimate P can be determined by calculating the average number of errors in the channel based on previously received acknowledgment messages (e.g., BACKs), or using other well-known error estimation methods. B Sending parity at the right time is a way to predict errors in the channel so that receivers that use simpler HARQ (such as HARQ hard schemes) can manage redundancy and throughput.

[0066] In step 315, the bit error rate estimate P is updated based on the most recently received BACK. B .

[0067] At step 320, the sender determines whether all transmitted data frames have been successfully received based on the BACK received from the receiver. At step 330, if all data frames have been successfully transmitted at step 320 or if the sender has transmitted all r parity frames at step 325, the sender refreshes the buffer storing the transmitted frames. If it is determined that some data frames are lost (at step 320), or if the number of transmitted parity frames belonging to the same FEC CG is less than r (at step 325), the sender may update the P frame count based on the newly received BACK at step 315. B And a new partial parity frame may be sent (in step 310). At step 330, method 300 ends and any buffers used to store data and parity frames may be flushed.

[0068] It should be understood that for decoding, as described above with respect to Figure 2 As described, the FECF decoder may use only those parity frames that belong to the same coded data group and the same codeword of code C(n,k,d). Figure 3B FIG. 3 is a flowchart of exemplary steps of a method 350 for performing HARQ hard decoding according to an embodiment of the present invention.

[0069] At step 360, the receiving device checks the received frames (e.g., performs an FCS check on the received frames) to determine any failed / unsuccessful frames. When the receiving device (receiver / receiver) is operated to perform a HARQ hard scheme, a FECF decoder operating on hard decision inputs is used at the MAC layer. The receiver is able to use the FCS check to determine the location of failed frames (also known as error frames). When the location of the error frame is known in the FECF CG, the FECF decoder is able to utilize the erasure capabilities of the code. Step 362 determines whether at least k frames are successfully decoded / received so that the FECF decoder can recover any failed data frames in the FECF CG of size n frames. Step 363 determines whether the MAC has reached a limit on retry requests. If it is determined at step 363 that the retry limit has been exceeded, method 350 ends.

[0070] At step 365, if it is determined in step 363 that the retry limit has not been exceeded, the receiving device sends a request to the sending device to request to send redundancy frames associated with the plurality of data frames.

[0071] At step 370, the receiving device receives redundant frames from the transmitting device. Method 350 continues at step 360 using the redundant frames received at step 370. According to some embodiments, the redundant frames include an indication of whether each redundant frame is a redundant frame and a sequence number identifying a group of data frames to which each redundant frame belongs.

[0072] If it is determined at step 362 that at least k frames are successfully received, then at step 375, any failed data frames are decoded using the received data frames and redundant frames. For example, assuming k=5, r=2, and n=7, when k frames (e.g., 3 data frames and 2 parity frames) are successfully received, the failed 2 data frames can be recovered from the received frames. After all data frames are successfully decoded, any padded zeros are deleted from the MPDU. The actual size of the frame can be tracked from the delimiter field of the frame. After step 375, the method 350 ends.

[0073] According to some embodiments, the system model with HARQ hard scheme uses the following parameters: n=64, L=500 bytes, and α=n(1-(1-P B ) L ), where P BRepresents an estimate of the bit error rate. k data frames are encoded using a Reed-Solomon code that can correct up to r erasures. The number of parity frames, α, is chosen to minimize the packet error rate by compensating for independent frame losses. Redundancy bits are added by adding r parity frames, which have a code rate of k / n. The channel is modeled as a fast varying Rayleigh fading channel at 20 MHz with 2 Modulation Coding Schemes (MCS), rate R 1 = 16 Mbps 4QAM and rate R 2 =33 mbps 16QAM.

[0074] Figure 4 and Figure 5 PER and SNR are shown for HARQ hard schemes using 4QAM and 16QAM, respectively. It can be understood that for both cases of using 4QAM and 16QAM, using the HARQ hard scheme significantly improves the average PER over the entire transmission power range. Specifically, Figure 4 As shown in Figure 1, for 16QAM, the achieved coding gain can reach 14dB, and for 4QAM it can reach 4dB. Figure 4 and Figure 5 , curves 405 and 505 represent theoretical non-HARQ, curves 410 and 510 represent simulated non-HARQ, curves 415 and 515 represent theoretical HARQ hard schemes, and curves 420 and 520 represent simulated HARQ hard schemes.

[0075] Figure 6 and Figure 7 The average number of transmissions per data frame at different SNRs is plotted for HARQ hard schemes using 4QAM and 16QAM, respectively. It is noteworthy that the HARQ hard scheme advantageously reduces the PER, resulting in fewer retransmissions. As a result, this improves the end-to-end delay (latency). Figure 6 and Figure 7 , curves 605 and 705 represent theoretical non-HARQ, curves 610 and 710 represent simulated non-HARQ, curves 615 and 715 represent theoretical HARQ hard schemes, and curves 620 and 720 represent simulated HARQ hard schemes.

[0076] Figure 8Throughput in megabits per second (Mbps) versus SNR is shown for the HARQ hard scheme. When Rate Adaptation (RA) is not enabled, the HARQ hard scheme alone is a relatively mediocre scheme for improving throughput. However, the HARQ hard scheme performed with RA enabled can advantageously provide gains in systems with QoS requirements to meet a certain target PER (e.g., video or audio applications). If the system cannot meet the target PER even for the lowest available MCS, it is reasonable to consider the throughput to be zero, in which case the QoS service is interrupted. It can be appreciated that in low to medium SNR conditions, the throughput can be significantly improved in a system with the HARQ hard scheme.

[0077] exist Figure 8 , curve 805 represents non-HARQ with 16QAM, curve 810 represents the HARQ hard scheme enabled in conjunction with RA to achieve the 15% target, curve 815 represents the HARQ hard scheme with 16QAM, curve 820 represents non-HARQ with 4QAM, curve 825 represents the HARQ hard scheme with 4QAM, and curve 830 represents the baseline case of the non-HARQ scheme with RA and 15% target PER.

[0078] Fig.9A A block diagram of an exemplary apparatus 900 including PHY (physical layer)-MAC protocol interaction for performing a HARQ soft scheme is depicted. The HARQ soft scheme is based on using an additional LDPC decoder (also referred to as a redundant decoder) in Fig.9A The FECF LDPC decoder 905 is labeled as FECF LDPC decoder 905 in the figure. The FECF LDPC decoder is essentially a conventional LDPC decoder (or soft input decoder) using soft input, which is used on the 802.11PHY layer. The MAC layer and the PHY layer cooperate to decode transmissions, detect errors, control decoding, and request retransmission of data, etc. The FECF LDPC decoder 905 uses the log-likelihood ratio (LLR) of the bits stored in the FECF cache 915 (also called a buffer memory, which is coupled to the FECF controller 910) as input. The controller 910 stores the accumulated LLR of the bits obtained after demodulating the data frame or the parity frame.

[0079] When the original data frame is successfully received, the FECF controller 910 clears the FECF buffer 915. Otherwise, the sender stores all LLRs of all bits in the FECF buffer 915. The 802.11 MAC module 920 (labeled "802.11 MAC" in the figure) determines whether the frame is successfully received, and the LLRs of the parity frame and the data frame are used by the FECF LDPC decoder 905 to recover the bits of any failed data frame. The input L(c i,j ) and the decision output Q(c i,j ) represents the i-th bit in the j-th frame. The output bit sequence Q(c i,j ) is passed to the 802.11 MAC module 920 (also referred to as the 802.11 MAC layer). The input of the FECF LDPC decoder 905 is controlled by the FECF controller 910. Fig.9A , LDPC decoder 925 is a conventional LDPC decoder used in the 802.11PHY standard, which directly receives input from demodulator 930 and passes the decoded bits of the data frame to 802.11MAC module 920 for FCS error checking. Parity frames after demodulator 930 do not need to pass FCS because their LLRs can be used directly by FECF LDPC decoder 905. Although the implementation complexity of the HARQ soft scheme is higher than that of the HARQ hard scheme, the introduction of FECF LDPC decoder 905 can significantly improve throughput because its decoding is performed using LLRs of data bits and parity bits.

[0080] Fig. 9B FIG. 9 is a flowchart of an exemplary method 950 for performing a decoding process using a HARQ soft scheme according to an embodiment of the present invention. Fig. 9B The block diagram depicted in is executed as follows.

[0081] At step 955, the modulated signal is received by a demodulator (eg, Fig.9A After demodulation, the soft decision input (e.g., the LLRs of the received bits) is passed to the LDPC decoder (e.g., Fig.9A LDPC decoder 925 shown) and FECF controller (such as Fig.9A FECF controller 910 shown). That is, the demodulator outputs LLRs.

[0082] At step 960, the LDPC decoder decodes the LDPC codewords of the data frame and the parity frame, and the decoded bits are passed to the 802.11 MAC layer (i.e. Fig.9A 802.11 MAC module described in the embodiment). After the FCS check, the MAC discards the correctly decoded parity check frames and stores the correctly received / decoded data frames.

[0083] At step 965, the LLRs of the received data bits and parity bits are provided to the FECF controller, and the LLRs are stored in a shared FECF buffer.

[0084] At step 970, the FECF LDPC decoder decodes the FECF encoded codeword. All LLRs of data bits and parity bits must belong to the same FECF CG. The FECF decoder considers the LLRs of data bits and parity bits stored in the FECF buffer and the newly received LLRs of parity bits as LDPC codewords. Receiving new parity frames adds more non-zero LLRs, thereby increasing the probability of successful decoding. Both the FECF decoder and the FECF controller are managed by the 802.11MAC module. Note that the FECF decoder uses code puncturing for all LLRs in the codeword corresponding to parity frames that have not yet been transmitted, for example, for all j parity frames that have not yet been requested, L(c i,j )=0. Due to its poor performance, code shortening is not recommended for HARQ soft schemes, for example, L(c i,j )>>0.

[0085] According to some embodiments, a system model with a HARQ soft scheme uses the following exemplary parameters: LDPC code with a block length of 64,800 bits and a base code rate (also called mother code rate) of 2 / 3 and 3 / 4, MPDU and R-MPDU frames of 500 bytes, and a FECF CG length of n=648 frames, where k=432 and k=486 data frames are used for 2 / 3 and 3 / 4 code rates, respectively. The length of the FECF coded symbols (e.g., u(i,j) and p(i,j) defined above) is 100 bits. The channel uses an additive white Gaussian noise model (AGWN), with a bandwidth of 20 MHz, a constellation size of 4QAM, and a PHY rate of 33 Mbps. The first transmission carries k data frames, and subsequent transmissions carry parity frames. The receiver allows up to 3 requests for parity frames to correct failed data frames in the FECF CG. The number of parity check frames per retry is a fixed value of (nk) / 3 frames. By transmitting a limited number of parity checks, the code can be effectively punctured to obtain a higher code rate. At the input of the FECF LDPC decoder 905, the LLRs of the missing bits are set to zero, for example, for the i-th bit in the j-th frame that has not been transmitted, L(c i,j )=0.

[0086] Fig.10 A diagram depicting BER versus SNR for a HARQ soft scheme using 2 / 3 base code rate. Fig.11 The BER for the HARQ soft scheme is plotted against the SNR value using 3 / 4 base code rate. The HARQ soft scheme is able to significantly improve the BER in medium to high SNR conditions. When all parity frames are transmitted (in this example, after 3 retries), the HARQ soft scheme can provide reliable transmission with near zero BER. Fig.10 and Fig.11 In FIG. 1 , curves 1005 and 1105 show the baseline results of BER obtained when HARQ is not enabled, curves 1010 and 1110 show the BER results obtained after transmitting 1 / 3 of the parity check frames, curves 1015 and 1115 are the BER results when the sender sends 2 / 3 of the parity check frames, and curves 1020 and 1120 represent the BER results when all the parity check frames are sent. Fig.10 and Fig.11 As shown, the lower 2 / 3 code rate provides better performance than the higher 3 / 4 code rate due to the larger number of parity check frames in the retry.

[0087] Fig.12A diagram depicting the PER and SNR using 2 / 3 of the base bit rate. Fig.13 A diagram of PER and SNR using a 3 / 4 base code rate is depicted. When all parity check frames are transmitted, the HARQ soft scheme is expected to provide substantially reliable data packet transmission. Curves 1205 and 1305 are baseline results when the HARQ soft scheme is not enabled, curves 1210 and 1310 represent the results after transmitting 1 / 3 of the parity check frames, curves 1215 and 1315 represent the results after transmitting 2 / 3 of the parity check frames, and curves 1220 and 1320 represent the results obtained after all the parity check frames are transmitted.

[0088] Fig.14 A diagram depicting the throughput (Mbps) and SNR using 2 / 3 of the base bit rate. Fig.15 A diagram depicting throughput (Mbps) versus SNR using a 3 / 4 base code rate is shown. At low and medium SNR values, the HARQ soft scheme significantly outperforms the non-HARQ baseline scheme. At high SNR states, error correction is not required because the added redundant frames are essentially a data rate loss since the BER is very low. Furthermore, in addition to the throughput gain, the HARQ soft scheme can extend the transmission range by up to 5dB for a 2 / 3 base code rate. Despite the rate loss due to the added redundant frames, the throughput gain can be as high as 100%. Fig.14 and Fig.15 , curves 1405 and 1505 represent the throughput results when the HARQ soft scheme is not enabled, curves 1410 and 1510 represent the results after transmitting 1 / 3 of the parity frames, curves 1415 and 1515 represent the results obtained after transmitting 2 / 3 of the parity frames, and curves 1420 and 1520 represent the results after all the parity frames are transmitted.

[0089] Exemplary Electronic Systems

[0090] Embodiments of the present invention relate to electronic systems having wireless capabilities operable to send and / or receive data in accordance with the IEEE 802.11 standard (also known as Wi-Fi). Fig.16 An exemplary electronic system 1612 is described that can be used as a platform for implementing embodiments of the present invention. For example, the system 1612 can be an embedded wireless device, a STA, or an AP.

[0091] Fig.16 An electronic system 1612 is shown, which includes a communication device 1608, a central processing unit / processor 1601, memory 1602 (such as non-volatile ROM) and 1603 (such as volatile RAM), a data storage device 1604 and other peripheral devices, such as a removable disk drive, flash memory and / or optical storage devices.

[0092] The wireless transceiver 1615 of the communication device 1608 enables the system 1612 to communicate wirelessly with other 802.11-enabled devices directly or through a network. Typically, the transceiver 1615 consists of three main functional blocks: an RF frontend 1609, a PHY baseband module 1610 (or 802.11 PHY interface), and an 802.11 MAC 1611 (or 802.11 MAC interface). At the MAC 1611 and the baseband PHY 1610, embodiments of the present invention will be employed in the communication device 1608. Specifically, the functionality of the HARQ hard scheme is fully implemented in the MAC 1611 without changing any hardware blocks using the existing system-on-chip 802.11 MAC architecture. The HARQ hard scheme can be implemented in software, typically in microcode, which runs on a microcontroller or embedded CPU. Some functions can be implemented in hardware to accelerate calculations.

[0093] According to an embodiment related to the HARQ soft scheme, the 802.11PHY 1610 of the wireless transceiver 1615 includes a FECF LDPC decoder, a shared buffer, a FECF controller, an interface between a forward error correction coding (FEC) controller and a conventional LDPC decoder, and any other related interfaces for synchronization and clock. Compared with the HARQ hard scheme, the HARQ soft scheme requires some minor changes in both the baseband PHY 1610 and the MAC 1611. According to some embodiments, when the HARQ soft scheme or the HARQ hard scheme is enabled, the communication device 1608 uses the previously stored data and parity frames to decode the lost data frames by combining the current and future parity frames. The HARQ encoder is also implemented on the sender. For example, using an additional protocol exchange with the receiver, the sender can generate parity frames using a FEFC encoder implemented in hardware or software. It should be understood that for the HARQ soft scheme or the HARQ hard scheme, on the sending side, the action of the FECF encoder is no different.

[0094] Some embodiments may be described in the general context of executable instructions executed by one or more microcontrollers or embedded CPUs, such as program modules. Typically, program modules include routines, programs, objects, components, data structures, etc. that perform specific tasks or implement specific abstract data types. Typically, the functionality of program modules can be combined or distributed as desired in various embodiments.

[0095] The use of ordinal terms such as "first", "second", "third", etc. in the claims to modify claim elements does not in itself indicate any priority, precedence or order of one claim element relative to another claim element, or the temporal order of performing method actions, but is merely used as a marker to distinguish one claim element with the same name from another element with the same name using ordinal numbers.

[0096] Although the present invention has been described by way of example and in terms of preferred embodiments, it should be understood that the present invention is not limited to the disclosed embodiments. Instead, it is intended to cover various modifications and similar structures (as will be apparent to those skilled in the art), for example, combinations or replacements of different features in different embodiments. Therefore, the scope of the appended claims should be given the broadest interpretation to cover all such modifications and similar structures.

Claims

1. A method for wirelessly transmitting information, which is performed by a sending device, characterized in that: The method includes: calculating a plurality of redundant frames based on a plurality of data frames, wherein the plurality of data frames include data bits; sending the plurality of data frames to a receiving device; sending a first set of the plurality of redundant frames to the receiving device; receiving, from the receiving device, a request for requesting the sending device to send redundant frames associated with the plurality of data frames, wherein the request is issued by the receiving device in response to determining that the number of successfully decoded data frames in the plurality of data frames plus the number of successfully decoded redundant frames in the plurality of redundant frames is less than a predetermined value; In response to receiving the request, redundant frames associated with the plurality of data frames are sent to the receiving device.

2. The method according to claim 1, characterized in that The method further includes: After sending the first set of the plurality of redundant frames, receiving a second acknowledgment from the receiving device, the second acknowledgment indicating that one or more of the plurality of data frames are lost at the receiving device; and, In response to receiving the second acknowledgement, a second set of the plurality of redundant frames is sent to the receiving device, wherein the first set and the second set include different redundant frames of the plurality of redundant frames.

3. The method according to claim 2, characterized in that The method further includes: storing the plurality of redundant frames in a buffer memory of the transmitting device.

4. The method according to claim 1, characterized in that A first set of the plurality of redundant frames is sent to the receiving device in a timely manner prior to receiving the first acknowledgment.

5. The method according to claim 1, characterized in that The plurality of redundant frames are used to provide information to the receiving device to reconstruct lost data frames of the plurality of data frames.

6. The method according to claim 1, characterized in that Each redundant frame of the plurality of redundant frames comprises a corresponding header, the header comprising: an indication that the corresponding frame in which the header is located is a redundant frame; and, A sequence number used to identify the group of data frames to which the corresponding frame belongs.

7. A method for decoding wirelessly transmitted information, which is performed by a receiving device, characterized in that: The method includes: receiving a plurality of data frames including data bits from a transmitting device; receiving, from the transmitting device, a first set of a plurality of redundant frames associated with the plurality of data frames; In response to determining that the number of successfully decoded data frames in the plurality of data frames plus the number of successfully decoded redundant frames in the plurality of redundant frames is less than a predetermined value, sending a request to the sending device to request the sending device to send redundant frames associated with the plurality of data frames; receiving, from the transmitting device, redundant frames associated with the plurality of data frames; and, The data frame in the plurality of data frames and the received redundant frame that failed in decoding are used.

8. The method according to claim 7, characterized in that Each redundant frame of the plurality of redundant frames comprises a corresponding header, the header comprising: an indication that the corresponding frame in which the header is located is a redundant frame; and, A sequence number used to identify the group of data frames to which the corresponding frame belongs.

9. The method according to claim 7, characterized in that Checking the plurality of data frames to determine a failed data frame among the plurality of data frames is implemented using a decoder that is operative to decode a low density parity check (LDPC) code and employs a soft decision input and a hard decision output.

10. The method according to claim 7, characterized in that The method further includes: Determine a failed data frame among the multiple data frames; Sending a request for additional redundant frames; receiving the extra redundant frame from the transmitting device; and, The data frames received from the multiple data frames and the data frames whose redundant frames decoding fails are used.

11. A receiving device for decoding wirelessly transmitted information from a sending device, characterized in that: The receiving device comprises: a controller coupled to the buffer memory and configured to receive and store the received log likelihood ratios (LLRs) of the data frame and the received LLRs of the redundant frame in the buffer memory; an 802.11 decoder, configured to decode a codeword of the received data frame and transmit the decoded bits of the codeword to an 802.11 MAC interface, wherein the 802.11 decoder is coupled to the controller; The 802.11 MAC interface is coupled to the controller and the 802.11 decoder, wherein the 802.11 MAC interface is used to provide an indication of a failed data frame in the received data frame to the controller; and a redundant decoder coupled to the controller and the 802.11 MAC interface, the redundant decoder being configured to receive instructions from the controller to decode bits of the failed data frame using the LLRs stored in the buffer memory; Wherein, when the 802.11 MAC interface indicates that all bits of the failed data frame are successfully decoded, the controller can also be operated to clear the buffer memory.

12. The receiving device according to claim 11, characterized in that The receiving device is operable to request an additional redundant frame based on an indication identifying a failed data frame in the received data frames, and the redundant decoder is operable to decode bits of the failed data frame using the LLRs stored in the buffer memory and the LLRs of the most recently received redundant frame.

13. The receiving device according to claim 11, characterized in that The 802.11 decoder and the redundant decoder reside on the physical layer of the receiving device.

14. The receiving device according to claim 11, characterized in that The receiving device communicates with the sending device according to a version of the IEEE 802.11 standard.

15. The receiving device according to claim 11, characterized in that The receiving device also includes: A demodulator is coupled to the controller and the 802.11 decoder, and is operable to transmit the LLR of the received frame to the controller and transmit the demodulated signal to the 802.11 decoder to decode the received data frame.

16. The receiving device according to claim 11, characterized in that The 802.11 MAC interface is operable to receive the decoded bits of the codeword from the 802.11 decoder, and is further operable to discard the decoded bits of the redundant frame, and is further operable to store the decoded bits of the data frame.

17. The receiving device according to claim 11, characterized in that The redundancy decoder is operable to use the same redundancy check matrix as used by the redundancy encoder of the transmitting device for decoding, and further identify the matrix to the receiving device based on the MAC protocol.

18. The receiving device according to claim 11, characterized in that The redundant decoder outputs only the decoded bits of the failed data frame to the 802.11 MAC interface for identification of the failed data frame.

Citation Information

Patent Citations

  • Signaling reconfiguration method and device

    CN105897386A

  • Method, device and system based on HARQ transmission

    CN106899390A

  • Fountain HARQ for reliable low latency communication

    CN107113131A

  • Method and system for wireless communication of data with a fragmentation pattern and low-density parity-check codes

    US20090086638A1

  • Systems and methods for a data scrambling procedure

    US20150016360A1