Systems, apparatuses and methods for a signal extension padding scheme

11606234 · 2023-03-14

Assignee

Inventors

Cpc classification

International classification

Abstract

Systems, apparatuses and methods described herein provide a method for padding a signal extension of orthogonal frequency-division multiplexing (OFDM) symbols. A transceiver may obtain a plurality of data symbols for transmission, and determine that a number of information bits for a last symbol of the plurality of data symbols is not an integer value. A special padding rule may be applied to add padding bits to the last symbol. A number of coded bits for the last symbol may be determined when the number of information bits for the last symbol has changed, and the plurality of data symbols for data transmission may be encoded based on the determined number of coded bits for the last symbol.

Claims

1. A method for forward error correction (FEC) padding, the method comprising: obtaining, at a transceiver, a plurality of data symbols for transmission; determining a number of information bits that are available for inclusion in a last symbol of the plurality of data symbols; selecting a compatible number of scheduled data subcarriers, the compatible number being a fraction of a number of scheduled data subcarriers used for transmission in a single symbol period under a same bandwidth; calculating an integer number of information bits for the last symbol based on the compatible number of scheduled data subcarriers; adding a number of padding bits to the number of information bits that are available for transmission, wherein the number of padding bits and the number of information bits sum to the integer number of information bits; and encoding, for data transmission, the plurality of data symbols, the plurality of data symbols including the last data symbol having the integer number of information bits.

2. The method of claim 1, wherein the number of padding bits is added to the number of information bits before forward error-corrective encoding.

3. The method of claim 1, wherein the number of padding bits is a first number of padding bits, the method further comprising: adding a second number of padding bits to the last symbol after forward error-corrective encoding.

4. The method of claim 3, wherein the second number of padding bits consists of bits with value ‘0’.

5. The method of claim 1, wherein the compatible number of scheduled data subcarriers is dependent on a coding rate used for transmission in the single symbol period under the same bandwidth.

6. A system for forward error correction (FEC) padding, the system comprising: an input data processing module to obtain a plurality of data symbols for transmission; a pre-encoding padding module communicatively coupled to the input data processing module, the pre-encoding padding module being configured to: determine a number of information bits that are available for inclusion in a last symbol of the plurality of data symbols; select a compatible number of scheduled data subcarriers, the compatible number being a fraction of a number of scheduled data subcarriers used for transmission in a single symbol period under a same bandwidth; calculate an integer number of information bits for the last symbol based on the compatible number of scheduled data subcarriers; add a number of padding bits to the number of information bits that are available for transmission, wherein the number of padding bits and the number of information bits sum to the integer number of information bits; and encode, for data transmission, the plurality of data symbols, the plurality of data symbols including the last data symbol having the integer number of information bits.

7. The system of claim 6, wherein the number of padding bits is added to the number of information bits before forward error-corrective encoding.

8. The system of claim 6, wherein the number of padding bits is a first number of padding bits, and wherein the pre-encoding padding module is further configured to: add a second number of padding bits to the last symbol after forward error-corrective encoding.

9. The system of claim 8, wherein the second number of padding bits consists of bits with value ‘0’.

10. The system of claim 6, wherein the compatible number of scheduled data subcarriers is dependent on a coding rate used for transmission in the single symbol period under the same bandwidth.

Description

BRIEF DESCRIPTION OF THE DRAWINGS

(1) Further features of the disclosure, its nature and various advantages will become apparent upon consideration of the following detailed description, taken in conjunction with the accompanying drawings, in which like reference characters refer to like parts throughout, and in which:

(2) FIG. 1 provides an exemplary block diagram illustrating a transceiver system that includes a data encoder in which a padding scheme is employed, in accordance with various embodiments of the disclosure.

(3) FIG. 2 provides an exemplary logic flow diagram illustrating a padding procedure that is implemented in an encoder (e.g., 101 in FIG. 1), in accordance with various embodiments of the disclosure.

(4) FIG. 3 provides an exemplary logic diagram illustrating an example special padding rule by applying unequal bits per encoder, in accordance with various embodiments of the disclosure.

(5) FIG. 4 provides an exemplary logic diagram illustrating an alternative implementation of an example special padding rule by adding additional padding bits, in accordance with various embodiments of the disclosure.

(6) FIG. 5 provides an exemplary logic diagram illustrating an alternative implementation of an example special padding rule by apply dynamic puncturing for each encoder, in accordance with various embodiments of the disclosure.

(7) FIG. 6 provides an exemplary logic diagram illustrating an alternative implementation of an example special padding rule by enforcing an integer number of coded bits per symbol for short OFDM symbols, in accordance with various embodiments of the disclosure.

DETAILED DESCRIPTION

(8) This disclosure describes methods and systems for a padding scheme for orthogonal frequency-division multiplexing (OFDM) signal extensions (SE) in a wireless data transmission system. According to this disclosure, a new padding procedure including special padding rules is adopted when the calculated number of data bits per symbol for the last OFDM symbol (N.sub.DBPS,Last) is not integer, or the calculated number of data bits per symbol per encoder

(9) N DBPS , Last / N ES
(where N.sub.ES denotes the number of encoders) is not an integer when there are more than one encoders per regular data symbol. The number of coded bits N.sub.CBPS,Last for the last symbol may be re-computed based on the changed N.sub.DBPS,Last, and these parameters can then be used for encoding.

(10) FIG. 1 provides an exemplary block diagram illustrating a transceiver system that includes a data encoder in which a padding scheme is employed, in accordance with various embodiments of the disclosure. As shown in FIG. 1, a transceiver system 100 may obtain input data 110 for transmission, e.g., from a processor of the system. An encoder 101 at the transceiver 100 may include an input data processing module 102 to pre-process data bits before forward error correcting (FEC) encoding. For example, the input data processing module 102 may determine parameters such as the number of coded bits per data symbol, a SE parameter, and/or the like, as further illustrated in 201-203 in FIG. 2.

(11) The encoder 101 may further include a pre-FEC padding module 103, which may pad additional bits to the OFDM symbol, and then pass the padded bits to the FEC encoding module 104. A post-FEC padding module 105 can be employed to fill up the last OFDM symbol, e.g., with zero-padding. The padded data symbols may then be passed on to the interleaver 120 and modulation module 130 before transmitting the data 135. The data 135 may be modulated symbols output by modulation module 130.

(12) FIG. 2 provides an exemplary logic flow diagram illustrating a padding procedure that is implemented in an encoder (e.g., 101 in FIG. 1), in accordance with various embodiments of the disclosure. At 201, an encoder may determine the coded bits per symbol. For example, the encoder may determine the coded bits per symbol (N.sub.CBPS) for a user u based on the following determination
N.sub.CBPS.sup.(u)=N.sub.SD.sup.(u)×N.sub.SS.sup.(u)×N.sub.BPSCS.sup.(u)
where N.sub.CBPS.sup.(u) denotes the number of coded bits per symbol in a 4× symbol for user u; N.sub.SD.sup.(u) denotes the number of scheduled data subcarriers in a 4× symbol for user u; N.sub.SS.sup.(u) denotes the number of special strings in a 4× symbol for user u; and N.sub.BPSCS.sup.(u) denotes the number of coded bits per subcarrier per spatial streams in a 4× symbol for user u, u=0, 1, 2, 3, etc. It is noted that for all the parameters defined above, the values can be configured differently for a specific user u, and the superscript “u” may be adopted or skipped interchangeably throughout the disclosure.

(13) Specifically, when single user (SU) or multi-user (MU) multiple-input multiple-output (MIMO) system with physical protocol data unit (PPDU) is employed, N.sub.SD denotes the number of available data subcarriers.

(14) At 202, the encoder determines the info bits per regular symbol. For example, the encoder may determine the info bits per symbol (N.sub.DBPS) based on the following N.sub.DBPS.sup.(u)=N.sub.CBPS.sup.(u)×R.sup.(u), where N.sub.DBPS.sup.(u) denotes the number of data bits per symbol in a 4× symbol for user u, and R denotes the coding rate for user u, u=0, 1, 2, 3, etc.

(15) The encoder may also determine the number of encoders per regular symbol, e.g.,

(16) N ES u = .Math. N DBPS ( u ) / R ( u ) .Math. ,
wherein “┌ ┐” denotes a ceiling operation. For all valid number of scheduled data subcarriers, N.sub.DBPS.sup.(u) and

(17) N DBPS ( u ) / N ES ( u )
are integer numbers.

(18) At 203, the encoder may start a pre-FEC padding procedure by determining a SE parameter “a” for the last OFDM symbol (i.e., a short symbol). Further discussion on determining the SE parameter “a” can be found in commonly owned U.S. application Ser. No. 14/728,802, which is herein expressly incorporated by reference. For example, the SE parameter a may take a value of 1, 2, 3 or 4.

(19) At 204, the encoder may determine the number of information bits for a short (1×) OFDM symbol. In one example, the number of information bits can be determined based on the following:

(20) N DBPS , short ( u ) = 1 4 N DBPS ( u ) .
For another example, the number of information bits can be determined based on the following:

(21) N DBPS , short ( u ) = N CBPS , short ( u ) × R ( u ) = 1 4 N SD ( u ) × N SS ( u ) × N BPSCS ( u ) × R ( u ) .

(22) At 205, the encoder determines the padding bits for the last OFDM symbol. For example, the number of data bits of the last symbol can be determined as follows: N.sub.DBPS,last.sup.(u)=a.Math.N.sub.DBPS,short.sup.(u). The number of padding bits can be determined as follows: N.sub.Pre-FEC-Pad.sup.(u)=N.sub.DBPS,last.sup.(u)−(N.sub.inf o.sup.(u)−(N.sub.SYM−1).Math.N.sub.DBPS.sup.(u)), where N.sub.inf o.sup.(u) denotes the number of information bits for user u, and N.sub.SYM denotes the number of symbols.

(23) At decision 206, the encoder may determine whether N.sub.DBPS,Last or

(24) N DBPS , Last / N ES
is an integer. If one of the two values is not an integer, the encoder may apply special padding rules at 207, which may be further illustrated in various examples in FIGS. 3-6. After special padding rules have been applied at 207, the encoder may calculate the number of coded bits for the last symbol at 208 (as further discussed in connection with FIG. 6), and use the computed parameters for FEC encoding at 209.

(25) Specifically, at 207, for a non-short padding scenario, e.g., when the SE parameter a=4, the last symbol can be encoded in the same way as a regular long symbol. Or alternatively, when the SE parameter a=1, 2 or 3, special padding for a non-integer N.sub.DBPS,Last or

(26) N DBPS , Last / N ES
are discussed in connection with FIGS. 3-6.

(27) FIG. 3 provides an exemplary logic flow diagram illustrating an example special padding rule by applying unequal bits per encoder, in accordance with various embodiments of the disclosure. Continuing from 207 in FIG. 2, the encoder may determine whether N.sub.DBPS,Last is an integer at 301. When N.sub.DBPS,Last is an integer but

(28) N DBPS , Last / N ES
is not, the encoder may pad N.sub.DBPS,Last bits before encoders at 302, and then unevenly distribute padding bits across encoders at 302. For example, as shown in the table in FIG. 3, for a list of encoders 304, some encoders may have more bits (e.g., see 304b) padded than the rest encoders (e.g., see 304a).

(29) Specifically, the parameter N.sub.R can be configured to be a different value per coding scheme, e.g., for binary convolutional coding (BCC) and low density parity-check (LDPC) coding. For example, the encoder can set N.sub.R=1 for LDPC, and N.sub.R=the number of bits per puncturing block given the coding rate for BCC.

(30) FIG. 4 provides an exemplary logic diagram illustrating an alternative implementation of an example special padding rule by adding additional padding bits, in accordance with various embodiments of the disclosure. Continuing on from 207 in FIG. 2, the encoder may determine whether one of N.sub.DBPS,Last and

(31) N DBPS , Last / N ES
is not an integer at 401. If not, the encoder may proceed with 209. Otherwise, the encoder may pad additional bits to make both of the two parameters integral, and then split the padding bits evenly across encoders at 402. For example, the encoder may first pad more bits if N.sub.DBPS,Last is not an integer, such that after padding the revised number of information bits for the last symbol may be determined based on the following:

(32) 0 N ~ DBPS , Last = .Math. a .Math. 1 4 .Math. N SD .Math. N SS .Math. N BPSCS .Math. R .Math. . ,
wherein “┌ ┐” denotes a ceiling operation. Then the encoder may pad more bits if

(33) N DBPS , Last / N ES
is not an integer, such that after the padding the revised number of information bits for the last symbol may be determined as follows:

(34) N ~ ~ DBPS , Last = .Math. N ~ DBPS , Last N ES .Math. N R .Math. .Math. N ES .Math. N R .

(35) In an alternative implementation, at 403, the encoder may pad additional bits to make N.sub.DBPS,Last an integer, and apply 402 to unequally distribute the bits across encoders.

(36) FIG. 5 provides an exemplary logic diagram illustrating an alternative implementation of an example special padding rule by apply dynamic puncturing for each encoder, in accordance with various embodiments of the disclosure. Similarly, continuing on from 401, when one of N.sub.DBPS,Last and

(37) N DBPS , Last / N ES
is not an integer, the encoder may use dynamic puncturing for each encoder at 405. At 406, for each encoder,

(38) .Math. N DBPS , Last / N ES .Math.
may be fed, wherein “┌ ┐” denotes a ceiling operation. At 407, for the last puncture block of each encoder, a dynamic puncture pattern can be designed for the available BCC output. For example, any puncture pattern can be applied, such that the number of output bits can be set equivalent to N.sub.CBPS,Last. If N.sub.CBPS,Last is not an integer, then the number of output bits can be set equivalent to ┌N.sub.CBPS,Last┐, wherein “┌ ┐” denotes a ceiling operation.

(39) In an alternative implementation, the encoder can enforce the data bits of the short symbol N.sub.DBPS,Short to be an integer. For example, an f( ) mapping can be defined as the following: N.sub.DBPS,Short=f(N.sub.DBPS,Short.sup.(u)) such that N.sub.DBPS,Short.sup.(u) is an integer.

(40) In one example, the encoder can set Ñ.sub.DBPS,Short.sup.(u)=┌N.sub.DBPS,Short.sup.(u)┐ or └N.sub.DBPS,Short.sup.(u)┘, wherein “┌ ┐” denotes a ceiling operation, and “└ ┘” denotes a floor operation; and then the SE parameter a and the data bits of the last OFDM symbol N.sub.DBPS,Last.sup.(u) can be obtained as illustrated in FIGS. 3-5.

(41) In another alternative implementation, the encoder may configure a compatible number of scheduled data subcarriers N.sub.SD.sup.(u). For example, Instead of using exactly ¼ of scheduled data tones, using a compatible N.sub.SD that leads to integer N.sub.CBPS,Short and N.sub.DBPS,Short for all the MCS's. In this way, the number of information bits of the short symbol can be set as N.sub.DBPS,Short=N.sub.SD,Short-compatible.Math.N.sub.SS.Math.N.sub.BPSCS, where N.sub.SD,Short-compatible denotes a number of scheduled data subcarriers that is compatible for the short symbol. For example, N.sub.SD,Short-compatible can be set (close to) the value of N.sub.SD of the same bandwidth (BW) in 1× symbols. Examples of compatible N.sub.SD are shown in the following:

(42) TABLE-US-00001 TABLE 1 Example Compatible N.sub.SD N.sub.SD N.sub.SD,Short-Compatible 24 6 48 12 102 24 234 48 468 114 or 120 980 234, 240 or 246

(43) FIG. 6 provides an exemplary logic diagram illustrating an alternative implementation of an example special padding rule by enforcing an integer number of coded bits per symbol for short OFDM symbols, in accordance with various embodiments of the disclosure. Continuing on from 207 in FIG. 2, at 411, the encoder may enforce the number of coded bits of a short symbol N.sub.CBPS,short to be an integer number. For example, the encoder can set as

(44) N CBPS , Short = .Math. 1 4 .Math. N SD .Math. N SS .Math. N BPSCS .Math. or .Math. 1 4 .Math. N SD .Math. N SS .Math. N BPSCS .Math. ,
wherein “┌ ┐” denotes a ceiling operation, and “└ ┘” denotes a floor operation. Or in another example, the encoder may use a “compatible” N.sub.SD as discussed above in connection with Table 1, which may make the N.sub.CBPS,short an integer number. In this case, the number of scheduled data subcarriers for the short symbol can be set as

(45) N SD , Short = .Math. 1 4 .Math. N SD .Math. or .Math. 1 4 .Math. N SD .Math. ,
wherein “┌ ┐” denotes a ceiling operation, and “└ ┘” denotes a floor operation, and the number of information bits of the short symbol can be set as N.sub.CBPS,Short=N.sub.SD,Short.Math.N.sub.SS.

(46) At 412, the encoder may determine the SE parameter a by using a number of information bits of the short symbol

(47) N DBPS , Short = .Math. N CBPS , Short .Math. R .Math. ,
wherein “└ ┘” denotes a floor operation and then add the pre-FEC padding bits. Specifically, for BCC, the number of information bits of the short symbol may be determined as follows:

(48) N DBPS , Short = .Math. N CBPS , Short .Math. R N ES .Math. N R .Math. .Math. N ES .Math. N R .
In this case, a ceiling operation “┌ ┐” can be used alternatively for both BCC and LDPC.

(49) At 413, for LDPC, the encoder may determine all the LDPC parameters, such as but not limited to parity-check matrix, block length, and/or the like. If an extra symbol is needed per LDPC encoding rule, the encoder may update the related LDPC parameters, and also update the number of coded bits of the last symbol N.sub.CBPS,Last and the number of information bits of the last symbol N.sub.DBPS,Last. At 414, the encoder may compute the post-FEC padding bits to fill up the last data symbol, e.g., for post-FEC padding at 105 in FIG. 1.

(50) In one implementation, after applying various special padding rules as illustrated in FIGS. 3-6, the number of coded bits for the last symbol can be re-computed (e.g., see 208 in FIG. 2). Specifically, in case of LDPC, the number of coded bits for the last symbol N.sub.CBPS,Last is updated and used together with the number of information bits for the last symbol N.sub.DBPS,Last to determine LDPC parameters. For example, N.sub.CBPS,Last can be determined based on

(51) N CBPS , Last = .Math. N DBPS , Last R .Math.
or

(52) 0 N CBPS , Last = .Math. .Math. N DBPS , Last R .Math. R .Math. .
N.sub.BPSCS, where R denotes the coding rate, and “┌ ┐” denotes a ceiling operation.

(53) For both BCC and LDPC, after pre-FEC padding parameters is determined, N.sub.CBPS,Last can be used be the number of output bits for data transmission (e.g., at 135 in FIG. 1).

(54) The various examples of special padding rules to configure coding parameters as illustrated in FIGS. 3-6, can be employed interchangeably, dynamically, or in a combinational manner. The special padding rules can also be applied to scenarios when space-time block codes (STBC) are used. For example, when STBC is employed, the number of symbols N.sub.SYM is calculated differently, but the number of coded bits for the last symbol N.sub.CBPS,Last or the number of information bits for the last symbol N.sub.DBPS,Last can be obtained in a similar manner as described in FIGS. 3-6.

(55) While various embodiments of the present disclosure have been shown and described herein, it will be obvious to those skilled in the art that such embodiments are provided by way of example only. Numerous variations, changes, and substitutions will now occur to those skilled in the art without departing from the disclosure. It should be understood that various alternatives to the embodiments of the disclosure described herein may be employed in practicing the disclosure. It is intended that the following claims define the scope of the disclosure and that methods and structures within the scope of these claims and their equivalents be covered thereby.

(56) The foregoing is merely illustrative of the principles of this disclosure, and various modifications can be made without departing from the scope of the present disclosure. The above-described embodiments of the present disclosure are presented for purposes of illustration and not of limitation, and the present disclosure is limited only by the claims that follow.