Method and system for codeword transmission

By independently acknowledging and retransmitting only failed code words in IEEE 802.11 networks, the method addresses inefficient error recovery in MPDU transmission, reducing overhead and optimizing data transmission.

CN115336210BActive Publication Date: 2025-07-15HUAWEI TECH CO LTD
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202080099104.6
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2020-04-03
Publication Date
2025-07-15
Estimated Expiration
2040-04-03

AI Technical Summary

Technical Problem

In IEEE 802.11 wireless networks, the prior art has a huge error recovery overhead problem caused by retransmitting the entire failed MPDU in data transmission, especially when only partial codewords or MPDU decoding fails.

Method used

By generating a confirmation message, only the wrongly decoded codewords are retransmitted, rather than the entire MPDU, using a bitmap or numeric list to indicate the correctly decoded codeword subset, reducing retransmission overhead.

Benefits of technology

It effectively reduces the overhead associated with codewords of non-overlapping data parts, and improves the efficiency of data transmission and resource utilization.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115336210B_ABST
    Figure CN115336210B_ABST
Patent Text Reader

Abstract

Describes a method for transmitting data between a transmitter and a receiver. The method includes: receiving a data payload including a plurality of codewords, the codewords encoding data in non-overlapping data portions corresponding to information bits of the data payload; decoding the plurality of codewords; generating an acknowledgment message, the acknowledgment message including an indication of a subset of the correctly decoded codewords; transmitting the acknowledgment message to obtain a retransmission of the codewords corresponding to the incorrectly decoded codewords; in response to the acknowledgment message, receiving one or more codewords, the one or more codewords encoding data in at least a portion of the non-overlapping data portions. The acknowledgment message is generated based on the identification of the codewords in the subset and the identification of the corresponding subset of the correctly decoded non-overlapping data portions having information bits encoded in the codewords in the subset.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure relates to a system and method for digital communication, and more particularly to a method and system for transmitting codewords between a transmitter and a receiver. Background Art

[0002] In IEEE 802.11 wireless networks, a station can be an access point (AP) or a non-AP station (STA), and send data to another station. The data payload sent between stations includes one or more media access control (MAC) protocol data units (MAC protocol data unit, MPDU). In the case of sending multiple MPDUs in one transmission, the MPDUs can be aggregated into an aggregated MPDU (A-MPDU).

[0003] Once the data payload including MPDUs (or A-MPDUs) is large enough, it is encoded into one or more independently decodable codewords. Then, the one or more codewords are modulated and subsequently sent to the receiver through a channel. The receiver attempts to decode the one or more codewords carried by the received signal, reconstruct the MPDU (or A-MPDU) data, and provide an indicator to the transmitter indicating which MPDUs failed to decode and need to be retransmitted. This indicator can be sent via an acknowledgement (ACK) or block acknowledgement (Block-ACK) feedback message. Summary of the Invention

[0004] An object of the present disclosure is to provide a method for transmitting codewords between a transmitter and a receiver.

[0005] The above and other objects are achieved by the features of the independent claims. Other implementations are apparent from the dependent claims, the description, and the drawings.

[0006] According to one aspect, a method for transmitting data between a transmitter and a receiver is provided. The method includes: receiving a data payload including a plurality of codewords, the codewords encoding data in non-overlapping data portions corresponding to information bits of the data payload; decoding the plurality of codewords; generating an acknowledgment message including an indication of a subset of the correctly decoded codewords; transmitting the acknowledgment message to obtain a codeword retransmission corresponding to the incorrectly decoded codewords; and in response to the acknowledgment message, receiving one or more codewords, the one or more codewords encoding data in at least a portion of the non-overlapping data portions. The acknowledgment message is generated based on the identification of the codewords in the subset and the identification of the corresponding subset of the non-overlapping data portions with correctly decoded codewords having information bits encoded in the subset.

[0007] The method according to the first aspect provides an efficient retransmission of data in non-overlapping data portions by retransmitting the codewords that failed to be decoded. This reduces the overhead compared to retransmitting the failed non-overlapping data portions.

[0008] According to another aspect, a method for transmitting data between a transmitter and a receiver is provided. The method includes: transmitting a data payload including a plurality of codewords, the codewords encoding data in non-overlapping data portions corresponding to information bits of the data payload; receiving an acknowledgment message including an indication of a subset of the correctly decoded codewords; generating, based on the acknowledgment message, one or more codewords, the one or more codewords encoding data in at least a portion of the non-overlapping data portions; and transmitting the one or more codewords to the receiver. The acknowledgment message is generated based on the identification of the codewords in the subset and the identification of the corresponding subset of the non-overlapping data portions with correctly decoded codewords having information bits encoded in the subset.

[0009] According to another aspect, a device is provided. The device includes: a non-transitory memory including instructions; and one or more processors in communication with the memory, wherein the one or more processors execute the instructions to: receive a data payload including a plurality of codewords, the codewords encoding data in non-overlapping data portions corresponding to information bits of the data payload; decode the plurality of codewords; generate an acknowledgment message including an indication of a subset of the correctly decoded codewords; transmit the acknowledgment message to obtain a codeword retransmission corresponding to the incorrectly decoded codewords; and in response to the acknowledgment message, receive one or more codewords, the one or more codewords encoding data in at least a portion of the non-overlapping data portions. The acknowledgment message is generated based on the identification of the codewords in the subset and the identification of the corresponding subset of the non-overlapping data portions with correctly decoded codewords having information bits encoded in the subset.

[0010] According to another aspect, a device is provided. The device includes: a non-transitory memory including instructions; one or more processors in communication with the memory, wherein the one or more processors execute the instructions to: transmit a data payload including a plurality of codewords that encode data in non-overlapping data portions corresponding to information bits of the data payload; receive an acknowledgment message that includes an indication of a subset of the correctly decoded codewords; based on the acknowledgment message, generate one or more codewords that encode data in at least a portion of the non-overlapping data portions; transmit the one or more codewords; the acknowledgment message is generated based on the identification of the codewords in the subset and the identification of the corresponding subset of the codewords of the non-overlapping data portions having the information bits encoded in the codewords in the subset.

[0011] In one implementation, the acknowledgment message includes an indication of the corresponding subset of the correctly decoded non-overlapping data portions. The acknowledgment message according to this implementation can efficiently identify the incorrectly decoded non-overlapping data portions based on the acknowledgment message.

[0012] In one implementation, the acknowledgment message includes a bitmap that includes bits for each codeword of the subset. The acknowledgment message according to this implementation can efficiently confirm the correctly decoded codewords and reduces the overhead associated with retransmitting the codewords of the non-overlapping data portions compared to retransmitting the entire failed non-overlapping data portion.

[0013] In one implementation, the bitmap does not include bits for each codeword of the corresponding subset of the correctly decoded non-overlapping data portions. The acknowledgment message according to this implementation further reduces the overhead associated with retransmission of the codewords.

[0014] In one implementation, the acknowledgment message includes numbers representing the indices of each codeword in the subset. The acknowledgment message according to this implementation of the method reduces the overhead associated with retransmission of the codewords by shortening the acknowledgment message.

[0015] In one implementation, the indices do not include the codewords of the corresponding subset of the correctly decoded non-overlapping data portions. The acknowledgment message according to this implementation further reduces the overhead associated with retransmission of the codewords.

[0016] In one implementation, the acknowledgment message includes numbers representing the increments of the indices of each codeword in the subset.

[0017] The acknowledgment message according to this implementation reduces the overhead associated with retransmission of the codewords by shortening the acknowledgment message.

[0018] In one implementation, the increment does not include the codewords of the corresponding subset of the correctly decoded non-overlapping data portions. The acknowledgement message according to this implementation further reduces the overhead associated with the retransmission of codewords.

[0019] In one implementation, the method includes: determining a maximum bit length for representing the increment of the index; for each codeword in the subset, representing the increment of the index of the codeword using a number with a bit length of at most the maximum bit length. This will generate a shorter acknowledgement message and enable dynamic calculation.

[0020] In one implementation, the acknowledgement message further includes a length indicator indicating the length of the acknowledgement message.

[0021] In one implementation, the acknowledgement message includes an indication of the incorrectly decoded codewords. In the case where the number of incorrect codewords is less than the number of correctly decoded codewords, providing an indication of the incorrectly decoded codewords results in a shorter acknowledgement message.

[0022] In one implementation, the acknowledgement message includes a bit indicating whether the indication of the codeword in the acknowledgement message corresponds to a correctly decoded or incorrectly decoded codeword.

[0023] In one implementation, the acknowledgement message is a codeword block acknowledgement (CBACK) message.

[0024] In one implementation, the codewords among the plurality of codewords are encoded using a binary convolutional coding (BCC) code or a low density parity check (LDPC) code.

[0025] These and other aspects of the present disclosure will be apparent from one or more of the embodiments described below. BRIEF DESCRIPTION OF THE DRAWINGS

[0026] To more fully understand the present disclosure and its advantages, reference is now made to the following description taken in conjunction with the accompanying drawings, in which:

[0027] Figure 1 shows a communication system provided by an example infrastructure basic service set (BSS);

[0028] Figure 2 shows a diagram of an exemplary A-MPDU and the resulting plurality of codewords;

[0029] Figure 3Shows an A-MPDU that highlights an error-decoded codeword provided by an example;

[0030] Figures 4 to 8 Shows a codeword block ACK (CBACK) provided by an example;

[0031] Figure 9 Shows an example of a message and an A-MPDU transmitted from a transmitter provided by an example;

[0032] Figure 10 Shows a flowchart of a method for receiving data provided by an example;

[0033] Figure 11 Shows a flowchart of a method for transmitting data provided by an example;

[0034] Figure 12 Shows an exemplary communication system provided by the exemplary embodiments described herein;

[0035] Figure 13A and Figure 13B Shows an exemplary device that can implement the methods and teachings according to the present disclosure;

[0036] Figure 14 Is a block diagram of a computing system that can be used to implement the devices and methods disclosed herein. Detailed Description

[0037] The exemplary embodiments are described in sufficient detail below so that those of ordinary skill in the art can implement and realize the systems and processes described herein. Importantly, it is understood that the embodiments can be provided in many alternative forms and should not be construed as limited to the examples described herein.

[0038] Accordingly, while the embodiments can be modified in various ways and take various alternative forms, specific embodiments thereof are shown in the drawings and are described in detail below as examples. It is not intended to be limited to the particular forms disclosed. On the contrary, all modifications, equivalents, and alternatives falling within the scope of the appended claims should be included. In all the drawings and the appropriate detailed description, the elements of the exemplary embodiments are consistently denoted by the same reference numerals.

[0039] The terms used in this document to describe embodiments are not intended to limit the scope. The articles "a / an" and "the" are singular because they refer to only one referent, but the use of the singular form in this document should not exclude the existence of multiple referents. In other words, unless the context clearly indicates otherwise, elements mentioned in the singular may be one or more in number. It should also be understood that the term "comprising" as used herein indicates the presence of the stated features, items, steps, operations, elements, and / or components, but does not preclude the presence or addition of one or more other features, items, steps, operations, elements, components, and / or combinations thereof.

[0040] Unless otherwise defined, all terms used herein (including technical and scientific terms) shall be interpreted in accordance with the common usage in the relevant field. It should also be understood that terms in common usage shall be interpreted as the common usage in the relevant field, and not in an idealized or overly formal sense, unless explicitly defined herein.

[0041] Figure 1An exemplary communication system 100 consisting of an infrastructure BSS is shown. The communication system 100 includes an access point (AP) 105 that serves multiple stations (STAs) 110, 112, 114, 116, and 118. The AP 105 controls aspects related to communicating with its associated stations or communicating between its associated stations, such as radio frequency channels, transmission power limits, authentication, and security. In some cases, in the communication system 100, a transmitter can access wireless resources for uplink transmission (i.e., the link from the STA to the AP) and downlink transmission (i.e., the link from the AP to the STA) based on a distributed contention mechanism commonly known as carrier sensing multiple access with collision avoidance (CSMA / CA). In some examples, the AP is referred to as Node B, evolved Node B (eNB), next generation (NG) Node B (next generation Node B, gNB), master eNB (MeNB), secondary eNB (SeNB), master gNB (MgNB), secondary gNB (SgNB), network controller, control node, base station, access node, transmission point (TP), transmission-reception point (TRP), cell, carrier, macro cell, femto cell, pico cell, etc., while the STA can generally also be referred to as user equipment (UE), mobile station, mobile phone, terminal, user, subscriber, station, etc. The AP can provide wireless access according to one or more wireless communication protocols, such as Wi-Fi 802.11a / b / g / n / ac / ad / ax / ay / be, third generation partnership project (3GPP) long term evolution (LTE), LTE advanced (LTE-A), 5G, 5G LTE, 5G NR, high speed packet access (HSPA), etc. Although it can be understood that a communication system can use multiple APs capable of communicating with multiple stations, for simplicity, Figure 1 only one AP 105 and five stations 110 to 118 are shown.

[0042] In the examples described herein, the data payload sent from a transmitter to a receiver includes one or more media access control (MAC) protocol data units (MPDUs). An MPDU is an information unit transmitted between two MAC layer entities (e.g., at a transmitting device and a receiving device). If multiple MPDUs are sent, the MPDUs are aggregated into an aggregated MPDU (A-MPDU). The receiver attempts to decode the received data and provides an indication of one or more successfully decoded MPDUs. This indicator may be sent via an acknowledgement (ACK) or a block acknowledgement (Block-ACK) feedback message.

[0043] In IEEE 802.11, the data payload is encoded in the physical (PHY) layer to provide efficient transmission, error detection capabilities, error correction capabilities, or a combination thereof. In an IEEE 802.11 compliant wireless network, the data payload may be encoded using binary convolutional coding (BCC) or low-density parity check (LDPC) coding. In the case of BCC coding, the entire information bit stream is sequentially fed into a generator that generates the coded bits. Each successive subset of coded bits is a function of the information bits currently residing in the buffer of the generator, which is typically 6 bits in size. In the case of LDPC coding, several codeword sizes are defined. The information bits are divided into separate, non-overlapping parts. These parts are encoded separately. To align with a predefined LDPC codeword size, the information bits may be padded with so-called shortened bits, forward error correcting (FEC) pre-padding, or may be repeated in whole or in part. The number of shortened, repeated, punctured, or FEC pre-bits depends on the A-MPDU size, as well as the overall transmission parameters (e.g., total duration, bandwidth, modulation, etc.).

[0044] An MPDU (or A-MPDU) using LDPC coding may include multiple codewords, where each codeword may span multiple MPDUs or portions thereof. In contrast, when using BCC coding, the entire data payload is BCC-encoded sequentially, essentially resulting in a single codeword. In BCC or LDPC, different codewords and corresponding portions of the MPDU are processed independently by the encoder on the transmitter side and the decoder on the receiver side. This independence between codewords or corresponding MPDU portions allows individual codewords to be encoded or decoded separately without requiring bits from other codewords.

[0045] The data payload may be divided or segmented into several parts of a predefined length, where each part is individually BCC- or LDPC-encoded (but all parts of the data payload use the same coding scheme). In terms of coding, there is no overlap between the parts of the data payload. Specifically, the codewords generated from the individual parts of the data payload may be generated independently of each other. Examples of parts may include multiple data bits for generating a group of individual codewords or a small number of codewords (e.g., 2, 3, or 4).

[0046] In IEEE 802.11, when a single bit of an LDPC-coded codeword of an MPDU fails, the corresponding entire MPDU is considered to have failed. Similarly, when a single bit of a BCC-coded portion of an MPDU fails, the entire MPDU fails. The block acknowledgment (Block-Ack or BACK) mechanism implemented in the IEEE 802.11 standard requires the receiver to send an indicator to the transmitter indicating that the MPDU has been successfully decoded. This indicator is typically referred to as an acknowledgment, and it can indicate decoding success (positive Ack) or failure (negative Ack or Nack). The transmitter then retransmits the entire failed MPDU regardless of the number of decoded bits that failed within the MPDU. The retransmission of the entire MPDU incurs a significant error recovery overhead because, as in many cases where multiple MPDUs fail, in fact only a small number of codewords or portions within the MPDU fail.

[0047] Typically, in IEEE 802.11, the correspondence between codewords and the MPDU is opaque to the MAC layer of the receiving device until each codeword of the MPDU is confirmed to have been correctly decoded. Specifically, when a codeword is decoded incorrectly, the MAC layer cannot identify which MPDUs have been decoded incorrectly or, in fact, how many MPDUs have been decoded incorrectly because the boundaries of the MPDU are unknown to the receiver. In contrast, when an MPDU is identified as having been correctly decoded, the MAC layer determines that all codewords of that MPDU must have been correctly decoded. In the examples described herein, this information is used in the acknowledgment message to reduce the length of the message. Additionally, the PHY layer at the receiver may use parity checks to ensure that the codewords have been correctly decoded.

[0048] Figure 2 FIG. 200 shows an exemplary A-MPDU 205 and the resulting multiple codewords. As Figure 2 shown, the A-MPDU 205 includes four MPDUs 207, 208, 209, 210. The A-MPDU 205 may also include padding bits appended to the end of MPDU 210 ( Figure 2 not shown in FIG. 200). The A-MPDU 205 is fed into an encoder that encodes the bits to produce multiple codewords 220. In Figure 2 FIG. 200, the first three codewords of the multiple codewords 220 encode the information bits of MPDU 207. The third codeword of the multiple codewords 220 also encodes the bits of MPDU 208. The next three codewords also encode the bits of MPDU 208. The sixth codeword also encodes the bits of MPDU 209 along with the next two codewords. The eighth codeword encodes the bits of MPDU 210 along with the last six codewords. Generally, as Figure 2 shown in FIG. 200, the boundaries of the MPDUs do not exactly correspond to the boundaries of the codewords. In other words, the MPDUs are not encoded using an integer number of codewords. However, in the remainder of the description, the MPDUs are shown as being encoded using an integer number of codewords. This should not be construed as limiting the scope of the present disclosure in any way, and the examples described herein apply equally to MPDUs encoded using a non-integer number of codewords, and specifically, where the boundaries of the MPDUs do not coincide with the boundaries of the codewords.

[0049] In Figure 2 FIG. 200, an illustrative example of a codeword 230 is shown. The codeword 230 includes multiple information bits 240 for error detection and multiple parity bits 250. As an illustrative example, for an LDPC encoder implementing a code at a coding rate of 1 / 2 (where k data bits are encoded into n = 2k coded bits), each LDPC codeword may be 1820 or 1822. The codeword 230 may include 910 information bits and 910 parity bits. Other codewords may have different numbers of information bits or parity bits.

[0050] As previously mentioned, if a single bit of an MPDU fails, a single LDPC codeword (or similarly, a single BCC portion) fails. However, using the block acknowledgement (BACK) mechanism implemented in the existing IEEE 802.11 technical standard, the receiver sends an acknowledgement indicator to the transmitter based on successfully decoded MPDUs. The transmitter retransmits the entire failed MPDU. For example, if Figure 2If a single bit of the first codeword of the multiple codewords 220 shown in [Figure] fails, but the remaining codewords are successfully decoded, the receiver will send an acknowledgment indicator to the transmitter indicating that the MPDUs 208, 209, 210 have been successfully decoded. The transmitter will respond by retransmitting the MPDU 207.

[0051] As described herein, instead of transmitting the entire failed MPDU, a single codeword of the failed MPDU is transmitted. Retransmitting partial MPDU data reduces the error recovery overhead. The receiving device indicates the specific codewords that are correctly decoded, and the transmitting device retransmits the erroneously decoded codewords or parts based on the indicated correctly decoded codewords.

[0052] Figure 3 is a diagram 300 showing an A-MPDU 305 similar to Figure 2 the A-MPDU 205 shown in [Figure]. In Figure 3 the first encoded MPDU 307 includes three codewords 321, 322, 323, while the second encoded MPDU 308 includes three codewords 331, 332, 333, the third encoded MPDU 309 includes three codewords 341, 342, 343, and the fourth encoded MPDU 310 includes seven codewords 351, 352, 353, 354, 355, 356, 357. Although the A-MPDU 305 is shown in Figure 3 as being composed of four MPDUs, the A-MPDU can have any number of MPDUs. In addition, as Figure 3 shown, the MPDUs of the A-MPDU can each have the same or different numbers of codewords. In addition, in Figure 3 each MPDU of the A-MPDU 305 is encoded using an integer number of codewords. However, as previously explained with respect to Figure 2 the A-MPDU 205 shown in [Figure], this is not usually the case. Figure 3 The example of the A-MPDU 305 shown in [Figure] should not be construed as limiting the scope of the exemplary embodiments.

[0053] The A-MPDU 305 received by the receiving device includes a combination of correctly decoded codewords and erroneously decoded codewords. For example, Figure 3 the codewords indicated by X in [Figure] cannot be correctly decoded. That is, the second codeword 322 of the first MPDU 307 is erroneously decoded, the first codeword 331 and the second codeword 332 of the second MPDU 308 are erroneously decoded, and the first codeword 351 and the last codeword 357 of the fourth MPDU 310 are erroneously decoded. All three codewords 341, 342, 343 of the third MPDU 309 are successfully decoded by the receiving device.

[0054] If the existing BACK mechanism is used, the receiving device will send an acknowledgment indicator to the transmitting device indicating that only the third MPDU 309 was correctly decoded. In response, the transmitting device will send new codewords for the first MPDU 307, the second MPDU 308, and the fourth MPDU 310. However, not every codeword of MPDUs 307, 308, 310 was decoded incorrectly. Two of the three codewords of the first MPDU 307 were successfully decoded, while five of the seven codewords of the fourth MPDU 310 were successfully decoded. Thus, simply retransmitting the MPDUs will incur recovery overhead unnecessarily.

[0055] In an exemplary embodiment of the methods and systems described herein, a transmitting device is used to transmit a data payload that includes a plurality of codewords. The codewords encode data in non-overlapping data portions of information bits corresponding to the data payload. In one embodiment, after receiving a transmission, a receiving device (i.e., the intended receiver of the transmission) decodes the codewords and sends an acknowledgment message that includes an indication of a subset of the correctly decoded codewords. The acknowledgment is transmitted by the receiver to obtain a retransmission of codewords corresponding to the incorrectly decoded codewords. The acknowledgment message is generated based on an identification of the codewords in the subset and an identification of the corresponding subset of codewords having non-overlapping data portions correctly decoded with information bits encoded in the codewords of the subset.

[0056] In one embodiment, the receiving device responds to a transmission from the transmitting device using a codeword Block-ACK (CBACK) message. The CBACK message is transmitted to the transmitting device. As an example, the CBACK message can be a bitmap of the correctly decoded codewords or portions in the transmission, with a first bit value indicating that the associated codeword was correctly decoded and a second bit value indicating that the codeword decoding failed. The position of the bits in the bitmap can correspond to the position of the codewords in the previous transmission.

[0057] Figure 4FIG. 400 is a diagram of a first example of an A-MPDU 305 and a codeword block acknowledgement (CBACK) 410 provided by an embodiment of the present disclosure. The CBACK 410 includes a bitmap 415, where each bit is associated with a codeword of a data payload (e.g., an A-MPDU). In this exemplary embodiment, the bitmap 415 is an acknowledgement message. If a specific bit is set to a first value (e.g., 1), it indicates that the associated codeword has been successfully decoded. If the specific bit is set to a second value (e.g., 0), the associated codeword has been decoded incorrectly. The values of the bits can be reversed without affecting the scope or spirit of the exemplary embodiment. The CBACK 410 also includes a CBACK mode field 420. The value stored in the CBACK mode field 420 indicates the format of the information stored in the acknowledgement message. For example, if the CBACK mode field 420 includes 1, the acknowledgement message is in the form of a bitmap (e.g., bitmap 415). The CBACK 410 may also include a length field 425. The length field 425 includes a value corresponding to the length of the bitmap 415. In other words, the length field 425 specifies the number of codewords acknowledged in the CBACK 410. In some examples, the mode field 420 and the length field 425 are included in the header of a BACK message transmitted from a receiver to a transmitter to indicate correctly decoded MPDUs.

[0058] As Figure 4 shown, the bits of the bitmap 415 are associated with the codewords of the A-MPDU 305. For example, bit 421 corresponds to codeword 321, bit 422 corresponds to codeword 322, bit 423 corresponds to codeword 323, bit 431 corresponds to codeword 331, bit 432 corresponds to codeword 332, and bit 433 corresponds to codeword 333.

[0059] In an example of the methods and systems described herein, as Figure 4 shown, the bitmap 415 is shortened by excluding the bits of the codewords for which each codeword of the corresponding MPDU has been successfully decoded. Thus, in Figure 4In the exemplary bitmap 415 shown, bit 451 corresponds to codeword 351, rather than codeword 341. Similarly, bit 452 corresponds to bit 352, rather than bit 342, and so on. The MAC layer of the receiving device that generates CBACK 410 "knows" that codewords 341, 342, and 343 have all been correctly decoded because MPDU 309 has been correctly decoded. Therefore, these bits can be excluded from CBACK 410. This shortens the length of CBACK 410, thereby reducing the recovery overhead. In a network compliant with the IEEE 802.11 standard, the transmitter also receives BACK messages indicating correctly decoded MPDUs. The transmitter is able to infer from the BACK which bits of the bitmap 415 of CBACK 410 correspond to which codewords of the plurality of codewords 320. The transmitter excludes the codewords of the correctly decoded MPDUs as indicated in the BACK and determines the incorrectly decoded codewords from the bitmap 415 of CBACK 410.

[0060] In the examples described herein, the acknowledgment message includes numbers representing the index of each codeword in the subset of correctly decoded codewords. These numbers can be ordinals, for example, corresponding to the position of the successfully decoded codewords among all the codewords in the transmission.

[0061] Figure 5 A second example of CBACK 510 is shown. CBACK 510 includes a list of numbers 525, where each value corresponds to a codeword of a successfully decoded data payload (e.g., A-MPDU). Each value in the list of numbers 525 is an ordinal number associated with the codeword. CBACK 510 also includes a CBACK mode field 526. The value stored in the CBACK mode field 526 indicates the format of the information stored in the acknowledgment message. For example, if the CBACK mode field 526 includes 2, the form of the acknowledgment message is a list of numbers similar to the list of numbers 525.

[0062] As Figure 5 shown, the numbers in the list of numbers 525 are associated with the codewords of Figure 3 the A-MPDU 305. The list of numbers 525 includes the values 0 (included in value 530), 2 (included in value 531), 5 (included in value 532), 6 (included in value 533), 7 (included in value 534), 8 (included in value 535), 10 (included in value 536), 11 (included in value 537), 12 (included in value 538), 13 (included in value 539), 14 (included in value 540). These values correspond to codewords 321, 323, 333, 341, 342, 343, 352, 353, 354, 355, and 356, all of which have been successfully decoded.

[0063] Alternatively, the numbers representing the indices in the digital list 525 can be ordinals, e.g., corresponding to the positions of the codewords that failed to be correctly decoded. For example, in cases where most of the codewords or MPDUs decoding fails, this representation can be more efficient.

[0064] In another example described herein, the acknowledgment message includes numbers representing the indices of each codeword in the correctly decoded subset of codewords. In this example, the indices do not include the codewords of the corresponding subset of the correctly decoded MPDU. That is, similar to the bitmap 415, the acknowledgment message is shortened by excluding the codewords for which each codeword of the corresponding MPDU was successfully decoded. These numbers can be ordinals, e.g., corresponding to the positions of the successfully decoded codewords among all the codewords in the transmission.

[0065] Figure 6 FIG. 600 shows a diagram of a third exemplary CBACK 610. The CBACK 610 includes a digital list 625, each value corresponding to a successfully decoded codeword. In this exemplary embodiment, the digital list 625 is an acknowledgment message. Each value in the digital list 625 is an ordinal number associated with the codeword. The CBACK 610 further includes a CBACK mode field 626. The value stored in the CBACK mode field 626 indicates the format of the information stored in the acknowledgment message. For example, if the CBACK mode field 626 includes 3, the acknowledgment message is in the form of the digital list 625.

[0066] As Figure 6 shown, the numbers in the digital list 625 are associated with the codewords of the A-MPDU 305 of Figure 3 . The digital list 625 includes the values 0 (included in the value 630), 2 (included in the value 631), 5 (included in the value 632), 7 (included in the value 633), 8 (included in the value 634), 9 (included in the value 635), 10 (included in the value 636), 11 (included in the value 637). These values correspond to the codewords 321, 323, 333, 352, 353, 354, 355, and 356, all of which were successfully decoded. Specifically, since the MPDU 309 was successfully decoded, the indices do not include the codewords 341, 342, 343. It should be noted that the index corresponding to the codeword 351 is 6, and this codeword decoding failed, so it is not indicated in the CBACK. Therefore, the next codeword indicated in the acknowledgment message is the codeword 352, which has the index 7, excluding the codewords 341, 342, and 343. Compared with the CBACK 510, this further shortens the length of the CBACK 610, thus further reducing the overhead associated with the retransmission of the MPDU.

[0067] Alternatively, similar to CBACK 510, the numbers in the digital list 625 can be used to represent the indices corresponding to the positions of the codewords that failed to be decoded (instead of those that were successfully decoded). Since the entire MPDU 309 was successfully decoded, the index is still determined based on the excluded codewords 341, 342, and 343. In cases where most of the codewords are successfully decoded, listing the codewords that failed to be decoded actually results in a shorter CBACK.

[0068] In the examples described herein, the acknowledgment message includes numbers representing the increments of the indices of each codeword in the subset of correctly decoded codewords. The numbers representing the indices can be ordinals, for example, the increment of the index corresponding to the position of the next codeword successfully decoded among all the codewords in the transmission. Using the increment of the index instead of the index itself can reduce the number of bits used in the acknowledgment message.

[0069] Figure 7 Diagram 700 shows a fourth exemplary CBACK 710. CBACK 710 includes a digital list 725, with each value corresponding to a successfully decoded codeword. Each value in the digital list 725 is an ordinal associated with the codeword. CBACK 710 also includes a CBACK mode field 726. The value stored in the CBACK mode field 726 indicates the format of the information stored in the acknowledgment message. For example, if the CBACK mode field 726 includes 4, the form of the acknowledgment message is a digital list similar to the digital list 725.

[0070] As Figure 7 shown, the numbers representing the increments of the indices in the digital list 725 are associated with the codewords of Figure 3 the A-MPDU 305. The digital list 725 includes the values 0 (included in value 730), 2 (included in value 731), 3 (included in value 732), 1 (included in value 733), 1 (included in value 734), 1 (included in value 735), 2 (included in value 736), 1 (included in value 737), 1 (included in value 738), 1 (included in value 739), 1 (included in value 740). These values correspond to the codewords 321, 323, 333, 341, 342, 343, 352, 353, 354, 355, and 356, all of which were successfully decoded.

[0071] Alternatively, the numbers representing the increments of the indices in the digital list 725 can be ordinals, for example, corresponding to the positions of the codewords that failed to be correctly decoded.

[0072] In another example described herein, the acknowledgment message includes a number representing the increment of the index of each codeword in the correctly decoded subset of codewords. In this example, the index does not include the codewords of the corresponding subset of the correctly decoded MPDU. That is, similar to the bitmap 415 and the list of numbers 625, the acknowledgment message is shortened by excluding the codewords for which each codeword of the corresponding MPDU has been successfully decoded. The number representing the increment of the index can be an ordinal number, for example, the increment of the index corresponding to the position of the next codeword successfully decoded among all codewords in the transmission.

[0073] Figure 8 FIG. shows a fifth exemplary CBACK 810. The CBACK 810 includes a list of numbers 825, each value corresponding to a successfully decoded codeword. Similar to the previous exemplary embodiments, the list of numbers 825 in this embodiment is an acknowledgment message. Each value in the list of numbers 825 is an ordinal number associated with the codeword. The CBACK 810 also includes a CBACK mode field 826. The value stored in the CBACK mode field 826 indicates the format of the information stored in the acknowledgment message. For example, if the CBACK mode field 826 includes 5, the form of the acknowledgment message is a list of numbers similar to the list of numbers 825.

[0074] As Figure 8 shown, the number representing the increment of the index in the list of numbers 825 is associated with the codewords of the A-MPDU 305 of Figure 3 . The list of numbers 825 includes the values 0 (included in the value 830), 2 (included in the value 831), 3 (included in the value 832), 2 (included in the value 833), 1 (included in the value 834), 1 (included in the value 835), 1 (included in the value 836), 1 (included in the value 837). These values correspond to the codewords 321, 323, 333, 352, 353, 354, 355, and 356, all of which have been successfully decoded. Specifically, since the MPDU 309 has been successfully decoded, the increment of the index does not include the codewords 341, 342, 343. It should be noted that the increment of the index from the codeword 333 to the codeword 352 (excluding the codewords 341, 342, 343) is 2 (included in the value 833). Compared with the CBACK 710, this further shortens the length of the CBACK 610, thereby further reducing the overhead associated with the retransmission of the MPDU.

[0075] Alternatively, similar to CBACK 710, a digital list 825 can be used to represent indices corresponding to the positions of codewords that failed to be decoded (rather than those that were successfully decoded). Since the entire MPDU 309 was successfully decoded, the index is still determined based on the excluded codewords 341, 342, 343. Similar to the previous CBACK, listing the codewords that failed to be decoded results in a shorter CBACK in cases where most of the codewords were successfully decoded.

[0076] According to an exemplary embodiment, a transmitting device receives an acknowledgment message from a receiving device. The acknowledgment message includes an indication of a subset of correctly decoded codewords. The transmitting device generates one or more codewords based on the acknowledgment message, where the one or more codewords encode at least a portion of the data payload of a non-overlapping data portion (e.g., MPDU) that was initially transmitted to the receiver. The transmitting device transmits the one or more codewords to the receiver. As an illustrative example, the transmitting device generates a message that includes the codewords or portions that were not correctly decoded and transmits the message.

[0077] Figure 9 FIG. 900 shows a diagram of an A-MPDU 305 and an exemplary message 910 transmitted from a transmitting device to a receiver. The message includes codewords 922, 931, 932, 951, 957 that encode data encoded by the codewords 322, 331, 332, 351, and 357 that were not correctly decoded. In some examples, the codewords 922, 931, 932, 951, 957 include the same encoded bits as the codewords 322, 331, 332, 351, and 357. The message 910 includes a codeword retransmission (CW-RETX) field 915 that includes an indicator indicating that the message 910 includes a retransmission of a codeword that was not correctly decoded. The indicator can be a multi-valued indicator, where a first value indicates that the message includes a retransmission of a codeword that was not correctly decoded, and a second value indicates that the message does not include a retransmission of a codeword that was not correctly decoded. The field 915 can include a CBACK mode field similar to the CBACK mode fields 726, 826. The value stored in the CBACK mode field indicates the format of the information stored in the acknowledgment message.

[0078] Figure 10 FIG. 1000 shows a flowchart of an exemplary method 1000. The method 1000 indicates operations that occur at a receiving device when the receiving device receives and decodes a data payload.

[0079] Method 1000 includes receiving a data payload (e.g., A-MPDU) that includes a plurality of codewords (block 1010). The codewords encode data in non-overlapping data portions corresponding to information bits of the data payload. In block 1020, the plurality of codewords are decoded. In block 1030, an acknowledgment message is generated that includes an indication of a subset of correctly decoded codewords. For example, the acknowledgment message can be similar toFigures 4 to 8 The acknowledgment message shown. The acknowledgment message is generated based on the identification of codewords in a subset of correctly decoded codewords and the identification of codewords in a corresponding subset of correctly decoded non-overlapping data portions having information bits encoded in the codewords in the subset of correctly decoded codewords. For example, the acknowledgment message is transmitted to the transmitting device to obtain a retransmission of a codeword corresponding to an incorrectly decoded codeword (block 1040). A response to the acknowledgment message is received, including a codeword that encodes data in at least a portion of one or more non-overlapping data portions (block 1050).

[0080] According to an example, the acknowledgment message may also (implicitly or explicitly) indicate the corresponding subset of correctly decoded non-overlapping data portions. The acknowledgment message may be in the form of a bitmap, where a single bit in the bitmap represents a codeword of a non-overlapping data portion, and the bitmap does not include bits for each codeword of the corresponding subset of correctly decoded non-overlapping data portions. The acknowledgment message may also include a length indicator indicating the length of the acknowledgment message.

[0081] In some embodiments, the acknowledgment message includes a number representing the index of each codeword in the subset. The index may not include the codewords of the corresponding subset of correctly decoded non-overlapping data portions. In other cases, the acknowledgment message includes a number representing the increment of the index of each codeword in the subset. The increment may not include the codewords of the corresponding subset of correctly decoded non-overlapping data portions. In some cases, method 1000 includes: determining a maximum bit length for representing the increment of the index; for each codeword in the subset, representing the increment of the index of the codeword using a number with a bit length of at most the maximum bit length.

[0082] According to an example, the receiving device decodes the retransmission, which is not shown in Figure 10 In some cases, more than one codeword retransmission occurs before the receiving device implementing method 1000 successfully decodes all non-overlapping data portions.

[0083] Figure 11 A flowchart of method 1100 provided by an example is shown. Method 1000 indicates operations that occur at the transmitting device when the transmitting device encodes and transmits a data payload.

[0084] Method 1100 includes transmitting a data payload that includes a plurality of codewords encoding data in non-overlapping data portions of information bits (e.g., A-MPDUs) (block 1110). At block 1120, an acknowledgment message is received that includes an indication of a subset of correctly decoded codewords. The acknowledgment message is generated based on the identification of codewords in the subset of correctly decoded codewords and the identification of corresponding subsets of correctly decoded non-overlapping data portions having information bits encoded in the codewords in the subset of correctly decoded codewords. At block 1130, one or more codewords are generated based on the acknowledgment message, the one or more codewords encoding data in at least a portion of the non-overlapping data portions. The one or more codewords are transmitted to a receiver (block 1140).

[0085] The described methods and systems provide acknowledgment messages for failed codewords. Compared to standard BACK mechanisms, correctly received codewords are not retransmitted. After a correct acknowledgment message is received, the transmitter retransmits data from codewords that were incorrectly received in the previous transmission. Compared to previous methods, these methods provide shorter retransmissions. The acknowledgment messages have a shorter duration and the overall duration is reduced.

[0086] Figure 12 An exemplary communication system 1200 is shown. Generally, system 1200 enables a plurality of wireless or wired users to send and receive data and other content. System 1200 may implement one or more channel access methods such as code division multiple access (CDMA), time division multiple access (TDMA), spatial division multiple access (SDMA), frequency division multiple access (FDMA), orthogonal FDMA (OFDMA), single-carrier FDMA (SC-FDMA), non-orthogonal multiple access (NOMA), or some combination thereof.

[0087] In this example, the communication system 1200 includes electronic devices (EDs) 1210a to 1210c, radio access networks (RANs) 1220a and 1220b, a core network 1230, a public switched telephone network (PSTN) 1240, the Internet 1250, and other networks 1260. Although Figure 12 a certain number of these components or elements are shown, any number of these components or elements may be included in the system 1200.

[0088] The EDs 1210a to 1210c are used to operate or communicate in the system 1200. For example, the EDs 1210a to 1210c are used to transmit or receive via wireless or wired communication channels. Each of the EDs 1210a to 1210c represents any suitable end-user device and may include, for example (or may be referred to as): a user equipment (UE), a wireless transmit or receive unit (WTRU), a mobile station, a fixed or mobile subscriber unit, a cellular phone, a personal digital assistant (PDA), a smart phone, a laptop computer, a computer, a touchpad, a wireless sensor, or a consumer electronic device.

[0089] In this document, the RANs 1220a and 1220b each include base stations 1270a and 1270b, respectively. Each of the base stations 1270a and 1270b is used to wirelessly connect to one or more of the EDs 1210a to 1210c so as to be able to access the core network 1230, the PSTN 1240, the Internet 1250, and / or other networks 1260. For example, the base stations 1270a and 1270b may include (or be) one or more of several well-known devices, such as a base transceiver station (BTS), a Node-B (NodeB), an evolved NodeB (eNodeB), a next generation (NG) NodeB (next generation Node B, gNB), a home NodeB, a home eNodeB, a site controller, an access point (AP), or a wireless router. The EDs 1210a to 1210c are used to connect to and communicate with the Internet 1250 and may access the core network 1230, the PSTN 1240, or other networks 1260.

[0090] In Figure 12 the illustrated embodiment, base station 1270a forms part of RAN 1220a, which may include other base stations, elements, or devices. Additionally, base station 1270b forms part of RAN 1220b, which may include other base stations, elements, and / or devices. Each of base stations 1270a and 1270b is used to transmit or receive wireless signals within a specific geographical area (sometimes referred to as a "cell"). In some embodiments, multiple-input multiple-output (MIMO) technology may be used, and each cell has multiple transceivers.

[0091] Base stations 1270a and 1270b communicate with one or more of the EDs 1210a to 1210c using a wireless communication link via one or more air interfaces. These air interfaces may use any suitable radio access technology.

[0092] It is contemplated that system 1200 may use multi-channel access capabilities, including the scenarios described above. In a particular embodiment, the base stations and EDs implement IEEE 802.11 (Wi-Fi), 5G new radio (NR), LTE, LTE-A, or LTE-B. Of course, other multiple access schemes and wireless protocols may also be used.

[0093] RANs 1220a and 1220b communicate with core network 1230 to provide voice, data, applications, Voice over Internet Protocol (VoIP), or other services to the EDs 1210a to 1210c. It is understood that RANs 1220a and 1220b or core network 1230 may communicate directly or indirectly with one or more other RANs (not shown). Core network 1230 may also serve as a gateway access to other networks (e.g., PSTN 1240, Internet 1250, and other networks 1260). Additionally, some or all of the EDs 1210a to 1210c may include the ability to communicate with different wireless networks using different wireless technologies and / or protocols via different wireless links. Instead of (or in addition to) wireless communication, the EDs may also communicate with a service provider or switch (not shown) and with the Internet 1250 via a wired communication channel.

[0094] Although Figure 12 an example of a communication system is shown, various changes may be made to Figure 12 it. For example, in any suitable configuration, communication system 1200 may include any number of EDs, base stations, networks, or other components.

[0095] 13A and Figure 13B illustrates exemplary devices that may implement the methods and teachings provided by the present disclosure. Specifically, Figure 13A illustrates exemplary ED 1310, Figure 13B illustrates exemplary base station 1370. These components may be used in system 1300 or any other suitable system.

[0096] As Figure 13A shown, ED 1310 includes at least one processing unit 1300. The processing unit 1300 implements various processing operations of ED 1310. For example, the processing unit 1300 may perform signal encoding, data processing, power control, input / output processing, or any other function that enables ED 1310 to operate in system 1200. The processing unit 1300 also supports the methods and teachings described in more detail above. Each processing unit 1300 includes any suitable processing or computing device for performing one or more operations. For example, each processing unit 1300 may include a microprocessor, a microcontroller, a digital signal processor, a field programmable gate array, or an application specific integrated circuit.

[0097] ED 1310 also includes at least one transceiver 1302. The transceiver 1302 is used to modulate data or other content for transmission via at least one antenna or network interface controller (NIC) 1304. The transceiver 1302 is also used to demodulate data or other content received by at least one antenna 1304. Each transceiver 1302 includes any suitable structure for generating signals for wireless or wired transmission or for processing signals received wirelessly or wiredly. Each antenna 1304 includes any suitable structure for transmitting or receiving wireless or wired signals. One or more transceivers 1302 may be used for ED 1310, and one or more antennas 1304 may be used for ED 1310. Although shown as a single functional unit, the transceiver 1302 may also be implemented using at least one transmitter and at least one separate receiver.

[0098] ED 1310 also includes one or more input / output devices 1306 or interfaces (such as a wired interface connected to the Internet 1250). The input / output devices 1306 facilitate interaction (network communication) with users or other devices in the network. Each input / output device 1306 includes any suitable structure for providing information to the user or receiving information from the user, such as a speaker, a microphone, a keypad, a keyboard, a display, or a touch screen, including network interface communication.

[0099] In addition, the ED 1310 includes at least one memory 1308. The memory 1308 stores instructions and data used, generated, or collected by the ED 1310. For example, the memory 1308 may store software or firmware instructions executed by one or more processing units 1300, as well as data for reducing or eliminating interference in the incoming signals. Each memory 1308 includes any suitable one or more volatile or non-volatile storage and retrieval devices. Any suitable type of memory may be used, such as random access memory (RAM), read only memory (ROM), hard disk, optical disk, subscriber identity module (SIM) card, memory stick, secure digital (SD) memory card, and the like.

[0100] As Figure 13B shown, the base station 1370 includes at least one processing unit 1350, at least one transceiver 1352 (including the functions of a transmitter and a receiver), one or more antennas 1356, at least one memory 1358, and one or more input / output devices or interfaces 1366. A scheduler understood by those skilled in the art may be coupled to the processing unit 1350. The scheduler may be included within the base station 1370 or operate separately from the base station 1370. The processing unit 1350 implements various processing operations of the base station 1370, such as signal encoding, data processing, power control, input / output processing, or any other function. The processing unit 1350 may also support the methods and teachings described in more detail above. Each processing unit 1350 includes any suitable processing or computing device for performing one or more operations. For example, each processing unit 1350 may include a microprocessor, a microcontroller, a digital signal processor, a field programmable gate array, or an application specific integrated circuit.

[0101] Each transceiver 1232 includes any suitable structure for generating signals to be transmitted wirelessly or wired to one or more EDs or other devices. Each transceiver 1352 also includes any suitable structure for processing signals received wirelessly or wired from one or more EDs or other devices. Although the transmitter and receiver are shown combined as transceiver 1352, they may be separate components. Each antenna 1356 includes any suitable structure for transmitting or receiving wireless or wired signals. While the common antenna 1356 is shown here coupled to transceiver 1352, one or more antennas 1356 may be coupled to one or more transceivers 1352, thus supporting separate antennas 1356 coupled to the transmitter and receiver (when the transmitter and receiver are separate components). Each memory 1358 includes any suitable one or more volatile or non-volatile storage and retrieval devices. Each input / output device 1366 facilitates interaction with users or other devices in the network (network communication). Each input / output device 1366 includes any suitable structure for providing information to the user or receiving / providing information from the user, including network interface communication.

[0102] Figure 14 is a block diagram of a computing system 1400 that can be used to implement the devices and methods disclosed herein. For example, the computing system can be any entity of a UE, an access network (AN), mobility management (MM), session management (SM), a user plane gateway (UPGW), or an access stratum (AS). A particular device may use all of the shown components or only a subset of these components, and the degree of integration between devices may vary. Additionally, a device may include multiple instances of components, such as multiple processing units, processors, memories, transmitters, receivers, etc. The computing system 1400 includes a processing unit 1402. The processing unit includes a central processing unit (CPU) 1414, a memory 1408, and may also include a mass storage 1404, a video adapter 1410, and an I / O interface 1412 connected to a bus 1420.

[0103] The bus 1420 can be one or more of several bus architectures of any type, including a memory bus or a memory controller, a peripheral bus, or a video bus. The CPU 1414 can include any type of electronic data processor. The memory 1408 can include any type of non-transitory system memory, such as static random access memory (SRAM), dynamic random access memory (DRAM), synchronous DRAM (SDRAM), read-only memory (ROM), or a combination thereof. In one embodiment, the memory 1408 can include ROM used at power-on and DRAM for storing programs and data during program execution.

[0104] The mass storage 1404 can include any type of non-transitory storage device for storing data, programs, and other information and making these data, programs, and other information accessible via the bus 1420. The mass storage 1404 can include, for example, one or more of a solid state drive, a hard disk drive, a disk drive, or an optical disk drive.

[0105] The video adapter 1410 and the I / O interface 1412 provide interfaces to couple external input and output devices to the processing unit 1402. As shown, examples of input and output devices include a display 1418 coupled to the video adapter 1410 and a mouse, a keyboard, or a printer 1416 coupled to the I / O interface 1412. Other devices can be coupled to the processing unit 1402, and more or fewer interface cards can be used. For example, a serial interface (not shown), such as a universal serial bus (USB), can be used to provide an interface for external devices.

[0106] The processing unit 1402 also includes one or more network interfaces 1406, which can include a wired link, such as an Ethernet cable, to an access node or a different network, or a wireless link. The network interface 1406 can enable the processing unit 1402 to communicate with remote units via a network. For example, the network interface 1406 can provide wireless communication through one or more transmitters / transmitting antennas and one or more receivers / receiving antennas. In one embodiment, the processing unit 1402 is coupled to a local area network 1422 or a wide area network to perform data processing and communication with remote devices, such as other processing units, the Internet, or a remote storage facility.

[0107] It should be understood that one or more steps of the method of the embodiments provided herein may be performed by corresponding units or modules. For example, a signal may be sent by a sending unit or a sending module. A signal may be received by a receiving unit or a receiving module. A signal may be processed by a processing unit or a processing module. Other steps may be performed by a decoding unit or module, or a determining unit or module. The corresponding unit / module may be hardware, software, or a combination thereof. For example, one or more units or modules may be integrated circuits, such as a field programmable gate array (FPGA) or an application-specific integrated circuit (ASIC).

[0108] Although the present disclosure has been described in detail with its advantages, it should be understood that various changes, substitutions, and alterations can be made without departing from the spirit and scope of the present disclosure as defined by the appended claims.

[0109] The present disclosure may be embodied in other specific devices and / or methods. The described embodiments are to be considered in all respects as illustrative and not restrictive. Specifically, the scope of the present disclosure is indicated by the appended claims rather than by the description and drawings herein. All changes that come within the meaning and range of equivalency of the claims are to be embraced within their scope.

Claims

1. A method for transmitting data between a transmitter and a receiver, characterized in that, The method includes: Receiving a data payload including a plurality of codewords, the codewords encoding data in non - overlapping data portions corresponding to information bits of the data payload, the plurality of codewords being a result of encoding an aggregated media access control protocol data unit A - MPDU; Decoding the plurality of codewords; Generating an acknowledgment message, the acknowledgment message including an indication of a subset of correctly decoded codewords; Transmitting the acknowledgment message to obtain a re - transmission of codewords corresponding to incorrectly decoded codewords; In response to the acknowledgment message, receiving one or more codewords, the one or more codewords encoding data in at least a portion of the non - overlapping data portions; Wherein, the acknowledgment message is generated based on the identification of the codewords in the subset and the identification of the corresponding subset of codewords of correctly decoded non - overlapping data portions having information bits encoded in the codewords of the subset.

2. The method according to claim 1, wherein The acknowledgment message includes an indication of the corresponding subset of the correctly decoded non - overlapping data portions.

3. The method according to claim 1 or 2, characterized in that, The acknowledgment message includes a bitmap, the bitmap including bits of each codeword of the subset.

4. The method according to claim 3, characterized in that, The bitmap does not include bits of each codeword of the corresponding subset of the correctly decoded non - overlapping data portions.

5. The method according to claim 1 or 2, characterized in that, The acknowledgment message includes a number representing an index of each codeword in the subset.

6. The method according to claim 5, wherein The index does not include codewords of the corresponding subset of the correctly decoded non - overlapping data portions.

7. The method according to claim 1 or 2, characterized in that The acknowledgment message includes a number representing an increment of the index of each codeword in the subset.

8. The method according to claim 7, wherein The increment does not include codewords of the corresponding subset of the correctly decoded non - overlapping data portions.

9. The method according to claim 7, wherein Includes: Determining a maximum bit length for representing the increment of the index; For each codeword in the subset, representing the increment of the index of the codeword using a number with a bit length of at most the maximum bit length.

10. The method according to claim 1 or 2, characterized in that, The acknowledgment message further includes a length indicator indicating the length of the acknowledgment message.

11. The method according to claim 1 or 2, characterized in that, The acknowledgment message includes an indication of the incorrectly decoded codewords.

12. The method according to claim 11, wherein, The acknowledgment message includes a bit indicating whether the indication of the codewords in the acknowledgment message corresponds to correctly decoded or incorrectly decoded codewords.

13. The method according to claim 1 or 2, characterized in that, The acknowledgment message is a codeword block acknowledgment CBACK message.

14. The method according to claim 1 or 2, characterized in that, The codewords in the plurality of codewords are encoded using a binary convolutional code BCC code or a low - density parity - check LDPC code.

15. The method according to claim 1 or 2, characterized in that Includes: Decoding the one or more codewords received in response to the acknowledgment message.

16. A method for transmitting data between a transmitter and a receiver, characterized in that, The method includes: Transmitting a data payload including a plurality of codewords, the codewords encoding data in non - overlapping data portions corresponding to information bits of the data payload, the plurality of codewords being a result of encoding an aggregated media access control protocol data unit A - MPDU; Receiving an acknowledgment message, the acknowledgment message including an indication of a subset of correctly decoded codewords; Based on the acknowledgment message, generating one or more codewords, the one or more codewords encoding data in at least a portion of the non - overlapping data portions; Transmitting the one or more codewords to the receiver Wherein, the acknowledgment message is generated based on the identification of the codewords in the subset and the identification of the codewords in the corresponding subset of the non-overlapping data portions with the information bits encoded in the codewords in the subset.

17. A device, characterized in that, Comprising: A non-transitory memory including instructions; One or more processors in communication with the memory, wherein the one or more processors execute the instructions to: Receive a data payload including a plurality of codewords that encode data in non-overlapping data portions corresponding to the information bits of the data payload, the plurality of codewords being the result of encoding an aggregated media access control protocol data unit A-MPDU; Decode the plurality of codewords; Generate an acknowledgment message that includes an indication of a subset of correctly decoded codewords; Transmit the acknowledgment message to obtain a retransmission of the codewords corresponding to the incorrectly decoded codewords; In response to the acknowledgment message, receive one or more codewords that encode data in at least a portion of the non-overlapping data portions; Wherein, the acknowledgment message is generated based on the identification of the codewords in the subset and the identification of the codewords in the corresponding subset of the non-overlapping data portions with the information bits encoded in the codewords in the subset.

18. A device, characterized in that, Comprising: A non-transitory memory including instructions; One or more processors in communication with the memory, wherein the one or more processors execute the instructions to: Transmit a data payload including a plurality of codewords that encode data in non-overlapping data portions corresponding to the information bits of the data payload, the plurality of codewords being the result of encoding an aggregated media access control protocol data unit A-MPDU; Receive an acknowledgment message that includes an indication of a subset of correctly decoded codewords; Based on the acknowledgment message, generate one or more codewords that encode data in at least a portion of the non-overlapping data portions; Transmit the one or more codewords; Wherein, the acknowledgment message is generated based on the identification of the codewords in the subset and the identification of the codewords in the corresponding subset of the non-overlapping data portions with the information bits encoded in the codewords in the subset.

Citation Information

Patent Citations

  • Method and device for transmitting and receiving short frame fragment in wireless LAN system

    US20160173662A1