Systems and methods for introducing time diversity in WiFi transmissions
11190305 · 2021-11-30
Assignee
Inventors
- Yakun Sun (Sunnyvale, CA)
- Hongyuan Zhang (Fremont, CA)
- Liwen Chu (San Ramon, CA)
- Hui-Ling Lou (Sunnyvale, CA)
Cpc classification
H04L1/1825
ELECTRICITY
H04L1/0042
ELECTRICITY
International classification
Abstract
Systems and methods are provided for introducing time diversity in a transmitter. The systems and methods may include receiving, at the transmitter, a request from a receiver to retransmit data. The systems and methods may further include receiving an input of data corresponding to the data requested for retransmission at a first transmitter block. The systems and methods may further include operating on the signals using the first transmitter block in at least one of a first mode and a second mode, such that an output of signals from the first transmitter block is dependent on a time-varying function and corresponds to the data requested by the receiver for retransmission.
Claims
1. A method for introducing time diversity in a transmitter, the method comprising: receiving a request to retransmit data, wherein the request indicates a retransmission number; obtaining a plurality of bits; parsing the plurality of bits into a plurality of streams, wherein the plurality of streams occupies a bandwidth, and wherein the bandwidth is 160 MHz or two 80-Mhz bandwidths; when the bandwidth is 160 MHz, allocating the plurality of streams into two 80-MHz frequency segments; encoding the plurality of streams into a plurality of symbols; mapping the plurality of symbols to a respective plurality of tones by shifting, based on the retransmission number and a stream offset, the mapping by a fraction of the bandwidth, wherein the mapping is time-varying; generating, based on the time-varying mapping, a plurality of time-domain signals; and transmitting the plurality of time-domain signals.
2. The method for introducing time diversity of claim 1, wherein parsing the plurality of bits into the plurality of streams comprises: determining, based on the retransmission number, an ordering of the plurality of streams across time; assigning the plurality of bits to respective plurality of bit blocks; generating, based on the respective plurality of bit blocks, the plurality of streams; and ordering, based on the ordering of the plurality of streams across time, the plurality of streams.
3. The method for introducing time diversity of claim 1, wherein, when the bandwidth is 160 MHz, allocating the plurality of streams into two 80-MHz frequency segments comprises: determining, based on the retransmission number, an ordering of the two 80-MHz frequency segments across time; assigning a plurality of bit blocks to an 80-MHz frequency segment of the two 80-MHz frequency segments, wherein the plurality of bit blocks is from the plurality of streams; generating, based on the assignment, the two 80-MHz frequency segments; and ordering, based on the ordering of the two 80-MHz frequency segments across time, the two 80-MHz frequency segments.
4. The method for introducing time diversity of claim 1, further comprising splitting, based on the retransmission number, the plurality of bits into a respective plurality of encoder parsers.
5. The method for introducing time diversity of claim 1, further comprising time-shifting, based on the retransmission number, the mapped plurality of symbols.
6. A system for introducing time diversity in a transmitter, the system comprising: control circuitry coupled to a transmitter configured to: receive a request to retransmit data, wherein the request indicates a retransmission number; obtain a plurality of bits; parse the plurality of bits into a plurality of streams, wherein the plurality of streams occupies a bandwidth, and wherein the bandwidth is 160 MHz or two 80-Mhz bandwidths; when the bandwidth is 160 MHz, allocate the plurality of streams into two 80-MHz frequency segments; encode the plurality of streams into a plurality of symbols; map the plurality of symbols to a respective plurality of tones by shifting, based on the retransmission number and a stream offset, the mapping by a fraction of the bandwidth, wherein the mapping is time-varying; and generate, based on the time-varying mapping, a plurality of time-domain signals; and the transmitter configured to: transmit the plurality of time-domain signals.
7. The system for introducing time diversity of claim 6, wherein the control circuitry is configured to parse the plurality of bits into the plurality of streams by: determining, based on the retransmission number, an ordering of the plurality of streams across time; assigning the plurality of bits to respective plurality of bit blocks; generating, based on the respective plurality of bit blocks, the plurality of streams; and ordering, based on the ordering of the plurality of streams across time, the plurality of streams.
8. The system for introducing time diversity of claim 6, wherein, when the bandwidth is 160 MHz, the control circuitry is configured to allocate the plurality of streams into two 80-MHz frequency segments by: determining, based on the retransmission number, an ordering of the two 80-MHz frequency segments across time; assigning a plurality of bit blocks to an 80-MHz frequency segment of the two 80-MHz frequency segments, wherein the plurality of bit blocks is from the plurality of streams; generating, based on the assignment, the two 80-MHz frequency segments; and ordering, based on the ordering of the two 80-MHz frequency segments across time, the two 80-MHz frequency segments.
9. The system for introducing time diversity of claim 6, the control circuitry further configured to split, based on the retransmission number, the plurality of bits into a respective plurality of encoder parsers.
10. The system for introducing time diversity of claim 6, the control circuitry further configured to time-shift, based on the retransmission number, the mapped plurality of symbols.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
(1) Further features of the disclosure, its nature and various advantages will be 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)
(3)
(4)
(5)
(6)
(7)
(8)
(9)
(10)
(11)
(12)
(13)
DETAILED DESCRIPTION
(14) This disclosure describes methods and systems for introducing time diversity into a wireless system transmission. According to this disclosure, time diversity can be introduced into the transmission by modifying existing blocks of a wireless transmitter, and by adding new blocks or layers specifically designed to provide time diversity functionality. Any or all of the blocks or layers described in the disclosure can be implemented by software instructions encoded on computer-readable media.
(15)
(16)
(17) It should be understood that the concept of ordering or re-ordering of any of the bits, symbols, signals, inputs, outputs, or blocks described in this disclosure is not limited to a specific time scale. For example, the ordering can differ over subsequent transmissions or retransmissions of a packet, such that when T equals to 0, the packet or data is sent during a first transmission attempt, and when T equals to 1, the packet or data is sent during a second transmission attempt. As another example, the ordering can be applied over each orthogonal frequency-division multiplexing (OFDM) symbol. The ordering can also vary across time in various manners, for example, a transmission-level time variance may be accomplished every n number of transmissions. Alternatively, the applied ordering can be configured by a higher layer of the transmitter, or by signaling. Finally, it should be understood that the terms time-dependent and time-varying are used interchangeable in this disclosure.
(18) To illustrate an example embodiment of the application of time diversity in a wireless transmitter, reference is now made to
(19) ##STR00001##
As shown below, the i-th bit block y.sub.i.sup.(j) is cyclically selected from the j-th encoder and sent to spatial stream i.sub.ss according to a non-time-dependent function:
(20)
(21) Time diversity may be introduced by adding a time dependence to the selection of the bit block input y.sub.i.sup.(j) from an encoder j and to the selection of one of the encoders j, where output x.sub.k.sup.t(iss,T) is made to be time-dependent by the introduction of time-dependent functions f, f-tilde, and t.
(22)
Accordingly, the ordering blocks is time-dependent, as shown below:
(23) ##STR00002##
The time varying of spatial stream ordering can be selected out of a finite set, defined as follows.
{t(1,T), . . . ,t(N.sub.SS,T)}∈{Π.sub.1,Π.sub.2, . . . Π.sub.L}L≤N.sub.SS!
In the constraint, L is defined as the number of orderings used by the system. This set of orderings can be the subset of all possible N.sub.ss combinations. For example, if there are two encoders (N.sub.ss is equal to 2), the possible set of spatial stream orderings becomes:
Π.sub.1={1,2},Π.sub.2={2,1}
In this example, the ordering is selected as Π.sub.1 at T=0, and as Π.sub.2 at T=1. In other words, at time T equal to 0, the first spatial stream is stream 1 (310), while the second spatial stream is stream 2 (312). Meanwhile, at time T equal to 1, the first spatial stream is stream 2 (312), while the second spatial stream is stream 1 (310).
t(1,0)=1,t(2,0)=2
(1,1)=2,t(2,1)=1
(24) An example of time varying the spatial stream ordering is to cyclically shift the streams by introducing the following function t.
t(i.sub.SS,T)=(i.sub.SS−1+Δ.sub.SS.Math.T)mod N.sub.SS+1T=0,1, . . . ,N.sub.retransmission
In the example above, N.sub.retransmission is defined as the total number of retransmission sent. As an additional example, the spatial stream ordering can be made time-varying by flipping the order of the streams across time. That is, the time-dependent function t can be defined as:
t(i.sub.SS,2T)=i.sub.SSt(i.sub.SS,2T+1)=N.sub.SS−i.sub.SS+1
(25) To introduce time diversity, a time-dependent encoder stream ordering can also be selected out of a finite set of orderings. For a given number of encoders in a system N.sub.ES, the ordering is selected out of the set defined as:
{f(0,T), . . . ,t(N.sub.ES−1,T)}∈{Π′.sub.1,Π′.sub.2, . . . Π′.sub.L} L≤N.sub.ES!
For example, if there are two encoders (N.sub.ES is equal to 2), the possible set of spatial stream orderings becomes:
Π′.sub.1={1,2},Π′.sub.2={2,1}
An example of time varying the encoder ordering is to cyclically shift the streams from the encoders, with the introduction of function f, defined as:
ƒ(k,T)=(k+Δ.sub.ES.Math.T)mod N.sub.ES
Here, Δ.sub.ES is defined as the offset for the cyclical shift per encoder. As another example, the spatial stream ordering can be made time-varying by flipping the order of the encoder streams across time with the introduction of function f, defined as:
ƒ(k,2T)=kƒ(k,2T+1)=N.sub.ES−k−1
(26) For certain number of coded bits per symbol that cannot be divided into blocks of bits for each stream and encoder, additional bits are parsed separately. For example, in an existing IEEE 802.11ac transmission using a 160 MHz bandwidth, with five or seven spatial streams (N.sub.ss is equal to 5 or 7) and with a modulation and coding set (MCS) set to a value 5 or 6, an encoder j and an bit block i are currently selected as follows:
(27)
In the equations above, N.sub.Block is defined as the number of blocks, and s is defined in the equation below. The parser will operate in an identical manner as the parser detailed in the previous examples for the first N.sub.Block×N.sub.ES×s bits, and the selection of the blocks of bits originating from an encoder j and selection of the i-th spatial stream is made to be time-dependent by the introduction of time-dependent term function f, f-tilde, t, and t-tilde.
(28)
To simplify the implementation, the f function and t function can be used in place of the f-tilde and t-tilde function, respectively.
(29) Another example embodiment of the application of time diversity in a wireless transmitter is shown in
(30) Currently, in cases where there is more than one BCC encoder present, the i-th bit in the j-th encoder is selected from the bit sequence b by the following function. N.sub.DPBS is defined as the number of data bits per symbol, and N.sub.SYM is defined as the number of OFDM symbols.
(31)
A time-varying info bit to encoder parser changes the bit-to-encoder parsing every transmission or every retransmission.
(32)
The bit encoder parsing can be selected out of a finite set of orderings.
{t(1,T), . . . ,t(N.sub.ES,T)}∈{Π″.sub.1,Π″.sub.2, . . . Π″.sub.L}L≤N.sub.ES!
For example, when two encoders are present, the sets may be defined as follows:
Π″.sub.1={1,2},Π″.sub.2={2,1}
Similarly to the case of the stream parser, the ordering of encoders can by cyclically shifted across time using function t defined as:
t(j,T)=(j+Δ.sub.ES.Math.T)mod N.sub.ES T=0,1, . . . ,N.sub.retransmission.
As another example, and similarly to the case of the stream parser, the ordering of encoders can be flipped at each time, using the function t defined as:
t(j,2T)=j t(j,2T+1)=N.sub.ES−j−1
(33) Yet another example embodiment of the application of time diversity in a wireless transmitter is shown in
(34) The bit blocks of each spatial stream 310 and 312 are allocated into two frequency segments. For clarity, only 310 is shown in
(35)
(36) In order to take advantage of time diversity in the segment parser, the segment ordering may change across time.
y.sub.k,t(l,T)=x.sub.j
A possible embodiment that alternates the order of the segments during each transmission can be used to implement time diversity. For example, at time 2T, the segment 502 is selected to be the first segment to receive a block of bits, and 504 is selected to be the second segment to receive a block of bits. At time 2T+1, 504 is selected to be the first segment to receive a block of bits, and 502 is selected to be the second segment to receive a block of bits.
(37) Another example embodiment of the application of time diversity in a wireless transmitter is shown in
(38) Returning to the example in which time dependency is introduced into any combination of the layers 702, 704, and 706 depicted in
(39)
N.sub.COL is defined to be the number of columns in the interleaving procedure. The bit-to-subcarrier permutation layer 702 can be made time-dependent. For example, a random and prefixed table of mappings can be introduced, where the block of bits w.sub.k.sup.iss is determined as follows:
(40)
Here, N.sub.SD is the number of complex data numbers per spatial stream per OFDM symbol. As another example, the rows may be shifted cyclically.
(41)
Δ.sup.iss.sub.ROW is defined as the offset of rows for the i.sub.ss-th stream in the interleaving procedure. Finally, as a third example, the order of the rows can be flipped in an alternating manner during each transmission.
(42)
(43) Upon processing the bits in 702, the bits are sent to 704. This layer randomizes the reliability of coded bits in the modulated symbols. The output block of bits from layer 704 y.sub.k.sup.iss is as follows:
(44)
N.sub.CBPSSI is equal to N.sub.CBPSS for 20, 40, and 80 MHz, and N.sub.CBPSSI is equal to N.sub.CBPSS divided by 2, for 160 and 80+80 MHz cases. Time diversity can also be introduced into this layer. For example, a time-varying random mapper to least significant bits (LSB) and most significant bits (MSB) can be introduced, where the next block of bits y.sub.k.sup.iss is defined as follows: y.sub.k.sup.i.sup.
For example, a time-varying random mapper to LSB/MSB can be defined as
(45)
As another example, a cyclic shift can be introduced over time.
(46)
Finally, the LSB to MSB can be flipped alternatively for each transmission.
(47)
(48) Upon processing the bits in 704, the bits are processed by the bit-to-frequency rotation layer 706. In 706, the bits are cyclically shifted over frequency for each spatial stream per ODFM symbol. The output block of bits from 706 z.sub.k.sup.iss is as follows, where r is defined the bit index of output at the second bit interleaver:
(49)
N.sub.ROT is defined as the frequency rotation parameter. A time-dependent frequency rotation can be used to introduce time diversity as follows: z.sub.k.sup.i.sup.
The time-dependent frequency rotation may be applied even if there is only one spatial stream (N.sub.ss is equal to 1). One possible method of applying a time-dependent frequency rotation is to create a time-dependent ordering of the spatial streams.
(50)
In a special case, the number of spatial streams may be cyclically shifted. Therefore, function f can be defined as:
ƒ(i.sub.SS,T)=(i.sub.SS−1+Δ.sub.SS.Math.T)mod N.sub.SS,Max
As another example, the time-dependent rotation may be accomplished by frequency shift:
(51)
As a third example, both the time-dependent ordering of spatial streams and frequency shift examples above can be combined. Finally, as a fourth example, the order of spatial streams can be flipped alternatively for each transmission.
(52)
(53) Time-dependent permutations can be applied in arbitrary combinations to 702, 704, and 706. For example, an embodiment of the current invention may include time-dependent permutations in 706 only. As another example, all of 702, 704, and 706 of the current BCC interleaver block 506 may be modified to introduce time-dependent permutations. In addition, the method of time-dependent permutations can vary from one layer of permutation to the next. For example, the parameters Δ.sub.ROW, Δ.sub.SS in each time-dependent permutation can be configured individually. The parameters can also be configured individually for each spatial stream, for example, Δ.sub.ROW.sup.1 for spatial stream 1, Δ.sub.ROW.sup.2 for spatial stream 2, and Δ.sub.ROW.sup.Nss for spatial stream N.sub.ss.
(54) As previously noted, another example embodiment of introducing time diversity into a BCC interleaver is achieved by the addition of a new time-varying interleaver 802 placed after 702, 704, and 706, as depicted in
(55)
In this example, the function f(m), m=0 through N.sub.SD/L-1 is a permuted array of {0, L, 2L . . . }
(56) Another example embodiment of the application of time diversity in a wireless transmitter is shown in
(57) Two example time-dependent subcarrier mapping block implementation approaches are described below. In the first example approach, the time-varying permutation is added to block 908, and the resultant block is depicted as time-varying permutation of symbol-to-subcarrier mapping block 1002 in
(58) Currently, when an LDPC encoder is used, the modulated symbols are mapped to a frequency by 908.
(59)
(60) Here, d.sub.k,l,n-tilde is defined as output of the tone-mapping procedure, D.sub.TM is defined as the separation distance of subcarriers, 1 is defined as the index of spatial streams, and n is defined as the index of OFDM symbols. The mapping is implemented per each OFDM symbol, and, in turn, it is inherently constant over each transmission. The time-varying permutation of 1002 can be used in the case of LDPC to introduce time diversity. Therefore, the mapping varies per transmission, and potentially, it can vary in a different manner for each spatial stream. d.sub.k,l,n-tilde is re-defined as:
d′.sub.k,l,n=d.sub.t(k,T,l),l,n
T=0 . . . N.sub.transmission, k=0 . . . N.sub.SD−1, l=1, . . . ,N.sub.SS, n=0, . . . ,N.sub.SYM−1;
(61) In one example embodiment, the subcarrier mapper only varies in the same way for each spatial stream. Here, N.sub.try is defined as the number of retransmissions:
d′.sub.k,l,n=d.sub.t(k,T),l,n
T=1 . . . N.sub.try, k=0 . . . N.sub.SD−1, l=1, . . . ,N.sub.SS, n=0, . . . ,N.sub.SYM−1;
In another example embodiment, the mapper is rotated or shifted by a fraction of the bandwidth for each transmission. Here, Δ.sup.iss.sub.LDPC is defined as the offset for the i.sub.ss-th stream.
(62)
In a final example embodiment of 1002, the interleaver rows are swapped, depending on the time T, as follows:
(63)
To achieve this, three example methods are further disclosed. In the first example method, a table can be provided for the function f above. A second example method permits for the cyclical shift of rows:
(64)
Δ.sup.iss.sub.ROW,LDPC is defined as the row offset for the iss-th stream. Finally, a third example method allows for the flipping of the rows alternatively for each transmission:
(65)
(66) The second example approach of introducing time diversity in the operations of the symbol-to-subcarrier mapping block 908 is to introduce 1102 in order to scramble the original symbols across subcarriers. Accordingly, in this example approach, the modulated symbols are initially mapped to subcarriers:
(67)
Next, the symbols mapped over the subcarriers are interleaved.
d″.sub.k,l,n=d′.sub.s(k,T,l),l,n
k=0 . . . N.sub.SD−1, l=1, . . . ,N.sub.SS, n=0, . . . ,N.sub.SYM−1,
Here, d.sub.k,l,n-double-tilde is defined as the output of the interleaving.
(68) A final example embodiment of the application of time diversity in a wireless transmitter is shown in
(69)
Here, r.sup.iTX.sub.Field is defined as the time domain signal of the i.sub.TX-th transmit antenna for a given field at time t, N.sup.Tone.sub.Field is defined as the number of tones for a given field, N.sub.SR is defined as the highest data subcarrier index per frequency segment, Q.sub.k is defined as the spatial mapping matrix for the k-th data subcarrier, X.sup.iss.sub.k is defined as the data symbol for the i.sub.SS-th spatial stream at the k-th data subcarrier, T.sup.Field.sub.GI, is defined as the guard interval duration for a given field, T.sup.iss.sub.CS is defined as the cyclical delay value for the i.sub.SS-th spatial stream, i.sub.TX is defined as the index of the transmit antenna, and Δ.sub.F is defined as tone spacing. The time shift T.sub.CS for a spatial stream i is configured by the transmitter. In order to introduce time diversity, the time shift can be changed across transmissions, as follows:
(70)
(71) A time-dependent time shift can be achieved by re-ordering the antennas in a time-dependent manner. The ordering is defined by the following T function:
(72)
As another example, the time-dependent time shift can be rotated across the antennas. The ordering then becomes:
T.sub.CS.sup.i.sup.
Δ.sup.iss.sub.CS is defined as the offset of CSD values for the iss-th spatial stream and T.sup.iss.sub.max is defined as the largest value of CSD values for the iss-th spatial stream. Finally, as a last example, the time-dependent time shift can be achieved by incrementing (and rotating) the linear phase:
T.sub.CS.sup.i.sup.
(73) 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.
(74) 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.