Systems and methods for transmitting data frames using multiple antennas
09935665 ยท 2018-04-03
Assignee
Inventors
Cpc classification
H04L5/0053
ELECTRICITY
H04L5/0044
ELECTRICITY
H04B1/38
ELECTRICITY
International classification
Abstract
A transmitter including a transmit section and a frame formatter. The transmit section is to generate a stream of data to be transmitted using a plurality of antennas and separate the stream of data into a plurality of substreams corresponding to respective ones of the plurality of antennas. The frame formatter is to form respective frames of data from the plurality of substreams. Each of the frames of data includes a short preamble including short training symbols, a long preamble including long training symbols, and a signal field indicating a quantity of the plurality of antennas. The transmit section is further to transmit the frames of data using respective ones of the plurality of antennas.
Claims
1. A transmitter, comprising: a transmit section to generate a stream of data to be transmitted using a plurality of antennas, and separate the stream of data into a plurality of substreams corresponding to respective ones of the plurality of antennas; and a frame formatter to form respective frames of data from the plurality of substreams, wherein each of the frames of data includes a short preamble including short training symbols, a long preamble including long training symbols, and a signal field indicating a quantity of the plurality of antennas and a spatial multiplexing rate, the frame formatter further to vary the spatial multiplexing rate as indicated n the signal field between 1 and the quantity of the plurality of antennas, wherein the transmit section is further to transmit the frames of data using respective ones of the plurality of antennas in accordance with the spatial multiplexing rate as indicated in the signal field, and wherein, to transmit the frames of data, the transmit section is further to generate a space-frequency code matrix such that (i) the substreams are transmitted at an approximately equal power per tone and (ii) the substreams are transmitted at an approximately equal power per transmit antenna.
2. The transmitter of claim 1, wherein the long training symbols include (i) a first set of long training symbols associated with training a first antenna of the plurality of antennas and (ii) a second set of long training symbols associated with training at least one second antenna of the plurality of antennas.
3. The transmitter of claim 1, wherein, to transmit the frames of data, the transmit section is further to transmit different tones in the short training symbols using the respective ones of the plurality of antennas.
4. The transmitter of claim 3, wherein, to transmit the different tones, the transmit section is further to transmit the different tones in a cyclic manner using the respective ones of the plurality of antennas.
5. The transmitter of claim 1, wherein, to transmit the frames of data, the transmit section is further to transmit the short training symbols using the respective ones of the plurality of antennas.
6. The transmitter of claim 1, wherein a quantity of sets of the long training symbols corresponds to the quantity of the plurality of antennas.
7. The transmitter of claim 1, the transmit section is further to generate the space-frequency code matrix such that a Frobenius norm of the space-frequency code matrix is constant for all tones.
8. A method of operating a transmitter, the method comprising: generating a stream of data to be transmitted using a plurality of antennas; separating the stream of data into a plurality of substreams corresponding to respective ones of the plurality of antennas; forming respective frames of data from the plurality of substreams, wherein each of the frames of data includes a short preamble including short training symbols, a long preamble including long training symbols, and a signal field indicating a quantity of the plurality of antennas and a spatial multiplexing rate, wherein forming the respective frames includes variably controlling the spatial multiplexing rate as indicated in the signal field between 1 and the quantity of the plurality of antennas; and transmitting the frames of data using respective ones of the plurality of antennas in accordance with the spatial multiplexing rate as indicated in the signal field, wherein transmitting the frames of data includes generating a space-frequency code matrix such that (i) the substreams are transmitted at an approximately equal power per tone and (ii) the substreams are transmitted at an approximately equal power per transmit antenna.
9. The method of claim 8, wherein the long training symbols include (i) a first set of long training symbols associated with training a first antenna of the plurality of antennas and (ii) a second set of long training symbols associated with training at least one second antenna of the plurality of antennas.
10. The method of claim 8, wherein transmitting the frames of data includes transmitting different tones in the short training symbols using the respective ones of the plurality of antennas.
11. The method of claim 10, wherein transmitting the different tones includes transmitting the different tones in a cyclic manner using the respective ones of the plurality of antennas.
12. The method of claim 8, wherein transmitting the frames of data includes transmitting the short training symbols using the respective ones of the plurality of antennas.
13. The method of claim 8, wherein a quantity of sets of the long training symbols corresponds to the quantity of the plurality of antennas.
14. The method of claim 8, the space-frequency code matrix is generated such that a Frobenius norm of the space-frequency code matrix is constant for all tones.
Description
BRIEF DESCRIPTION OF DRAWINGS
(1)
(2)
(3)
(4)
(5)
(6)
(7)
(8)
(9)
DESCRIPTION
(10)
(11) The transmitter 100 and receiver 102 may be implemented in a wireless local Area Network (WLAN) that complies with the IEEE 802.11 standards (including IEEE 802.11, 802.11a, 802.11b, 802.11g, and 802.11n). The IEEE 802.11 standards describe orthogonal frequency-division multiplexing (OFDM) systems and the protocols used by such systems. In an OFDM system, a data stream is split into multiple substreams, each of which is sent over a different subcarrier frequency (also referred to as a tone). For example, in IEEE 802.11a systems, OFDM symbols include 64 tones (with 48 active data tones) indexed as {32, 31 , . . . , 1,0,1, . . . , 30,31}, where 0 is the DC tone index. The DC tone is not used to transmit information.
(12) The antennas in the transmitter 102 and receiver 106 communicate over channels in a wireless medium. In
Y.sub.k=H.sub.kQ.sub.k+N.sub.k,
(13) where H.sub.k is the channel gain for the k.sup.th tone, Q.sub.k is the symbol transmitted on the k.sup.th tone, and N.sub.k is the additive noise. An estimate of the channel may be determined at the receiver by dividing Y.sub.k by Q.sub.k.
(14) The number of independent data streams transmitted by the transmit antennas 104 is called the multiplexing order or spatial multiplexing rate (r.sub.s). A spatial multiplexing rate of r.sub.s=1 indicates pure diversity, and a spatial multiplexing rate of r.sub.s=min(M.sub.R, M.sub.T)(minimum number of receive or transmit antennas) indicates pure multiplexing.
(15) In an embodiment, the MIMO system 100 may use combinations of diversity and spatial multiplexing, e.g., 1r.sub.smin(M.sub.R, M.sub.T). For example, in a 44 MIMO system, the system may select one of four available multiplexing rates (r.sub.s [1,2,3,4]) depending on the channel conditions. The system may change the spatial multiplexing rate as channel conditions change.
(16)
(17) Data bits in a data stream to be transmitted are scrambled by a scrambler 200 and then encoded by a convolutional encoder 202. A space-frequency interleaver 204 interleaves and separates the single data stream into M.sub.T substreams. Quadrature amplitude modulation (QAM) constellation mapping may be performed on each substream by mapping modules 206. The mapped substreams are then encoded using a linear space-frequency coding module 208, the operation of which is described in more detail below. Each of the individual substreams are processed in a corresponding processing chain 210. Each processing chain includes a pilot symbol insertion module 212, a serial-to-parallel (S/P) converter 214, an inverse fast Fourier transform (IFFT) module 216, a parallel-to-serial (P/S) converter 218, a cyclic prefix module 220, and a radio frequency (RF) module 222 for digital-to-analog (D/A) and baseband-to-RF conversion.
(18)
(19) Signals received on the multiple receive antennas are input to corresponding processing chains 300. Each processing chain includes an RF module 301 for RF-to-baseband and analog-to-digital (A/D) conversion. A time/frequency synchronization module 302 performs synchronization operations and extracts information from the multiple substreams for channel estimation 303. Each processing chain 300 includes a cyclic prefix removal module 304, S/P converter 306, fast Fourier transform (FFT) module 308, a common phase error (CPE) correction module 310, a space-frequency detection module 312, and a P/S converter 314. The multiple substreams are input to a space-frequency deinterleaver and decoding module 316 which de-interleaves the substreams into a single data stream 317 and performs soft decoding. The single stream is then input to a descrambler 318.
(20) The space-frequency code module 208 in the transmit section 110 generates codewords for the different substreams. For a given spatial multiplexing rate (r.sub.s), a vector X of modulated symbols for each tone is defined, as shown in
X.sub.k=[X.sub.0,k . . . X.sub.r.sub.
(21) The codeword vector C.sub.k for the k-th tone is given by:
C.sub.k=[C.sub.0,k . . . C.sub.M.sub.
(22) The codeword vector C.sub.k may be calculated in a codeword generator 402 by multiplying the vector X.sub.k by the M.sub.Tr.sub.s space-frequency code matrix for the k-th tone (B.sub.k), i.e.,
C.sub.k=B.sub.kX.sub.k.
(23) The codeword C.sub.k is output to the processing chains 210, and an IFFT operation is performed on the codeword vector to generate the time domain codeword c.sub.n, where
c.sub.n=[c.sub.0,n . . . c.sub.M.sub.
(24) In an embodiment, the code matrix B.sub.k is selected such that there is equal transmit power per tone and equal transmit power for each antenna. To produce equal transmit power per tone, the sum of the squares of all elements in the matrix, i.e., the Frobenius norm of code matrix B.sub.k, must constant for all tones, i.e.,
B.sub.k.sub.F.sup.2=const.,k=0, . . . , N.sub.u1
(25) where N.sub.u is the number of used tones (subcarriers), e.g., 52 tones for IEEE 802.11a compatible systems.
(26) To produce equal transmit power per antenna, the row norms summed across all tones must be equal for each of the rows, i.e.,
(27)
(28) Utilizing equal transmit power per antenna may be useful in minimizing the cost of the power amplifier (PA) in the transmitter.
(29) Different types of space-frequency encoding may be implemented by the space-frequency code module 208. In an embodiment, permuted space-frequency codes (also referred to as antenna tone hopping) may be used. In antenna tone hopping, symbols are transmitted on the multiple transmit antennas such that each tone has only one antenna active for r.sub.s=1. The space-frequency code module 208 may cycle through different permutations of tone-antenna mappings, e.g., on a tone-by-tone basis. For example, for a system with three transmit antennas (M.sub.T=3) and using pure diversity spatial multiplexing (r.sub.s=1), the code matrix is given by
(30)
(31) where c.sub.31 is a normalization constant. In this example, the permutations include, from left to right, (1) only antenna T0 transmitting tone k, (2) only antenna T1 transmitting tone k, and (3) only antenna T2 transmitting tone k, respectively. The space-frequency code module 208 may cycle through these permutations on a tone-by-tone basis.
(32) Similarly, for a system with M.sub.T=3 and r.sub.s=2,the code matrix is given by
(33)
(34) wherein c.sub.32 is a normalization constant. In this example, the permutations include, from left to right, (1) antenna T0 transmitting tone k in the first substream and antenna T1transmitting tone k in the second substream, (2) antenna T1 transmitting tone k in the first substream and antenna T2 transmitting tone k in the second substream, and (3) antenna T2 transmitting tone k in the first substream and antenna T0 transmitting tone k in the second substream, respectively. Other permutations may be possible.
(35) Another type of space-frequency encoding that may be implemented by the space-frequency code module 208 is generalized cyclic delay diversity. In this encoding technique, substreams are switched between antennas on a cyclic basis. For example, symbol A may be transmitted on antenna T0, and then on antenna T1 after a cyclic delay L.sub.2, and then on antenna T2 after a cyclic delay L.sub.3. The code matrix B.sub.k is given by:
B.sub.k=k.sub.M.sub.
(36) where k.sub.M.sub.
D.sub.k=diag{e.sup.j2kL.sup.
(37) where L.sub.i is the cyclic delay for the i-th antenna, and N is the size of the IFFT.
(38) The MIMO-OFDM system may be compatible with IEEE 802.11a systems, and consequently may have many similarities to an IEEE 802.11a system. For example, like IEEE 802.11a systems, the MIMO-OFDM system may use 52 tones (48 data tones and 4 pilot tones), 312.5 kHz subcarrier spacing, a FFT/IFFT period of 3.2 s, a cyclic prefix with a duration of 0.8 s, and an OFDM symbol duration of 4.0 s. The MIMO-OFDM system may also use a frame format similar to that specified by IEEE 802.11a, which is shown in
(39) An IEEE 802.11a frame 500 includes a short preamble 501, a long preamble 502, a header 504, and a DATA field 506. The short preamble 501 consists of a short training symbol 508 with a duration of 0.8 s repeated ten times. The short preamble 501 is used for signal detection, automatic gain control (AGC), coarse frequency offset estimation, and symbol timing estimation.
(40) The long preamble 502 includes two long training symbols 510, each of duration 3.2 s, which are separated from the short training symbols 508 by a long guard interval (1.6 s) 512.
(41) The header 504 includes a SIGNAL symbol 514, which is encoded at 6 Mbps. The SIGNAL symbol 514 is 12 bits in length and includes 4 bits for the data rate, 1 reserved bit, 1 parity bit, and 6 tail bits (set to 0 to return the convolutional decoder to State 0).
(42) The DATA field 506 includes OFDM symbols including the data bits to be transmitted. The data bits are prepended by a 16-bit SERVICE field and are appended by 6 tail bits. The resulting bits are appended by a number of pad bits needed to yield an integer number of OFDM symbols.
(43) The MIMO-OFDM system may use a similar frame format, as shown in
(44) Each transmit antenna transmits a different MIMO-OFDM frame 600. Like the IEEE 802.11a frame 500, the MIMO-OFDM frames 600 include a short preamble 602 with a series of short training symbols 604, a long preamble 605 with a set of two long training symbols 606, a header 608 including a SIGNAL symbol 610, and a data field 612. In addition, the header 608 may include a second SIGNAL symbol (SIGNAL2) 614, which may be used to transmit MIMO-OFDM-specific information, such as the number of transmit antennas and the spatial multiplexing rate. The frame may also include a supplemental long preamble 616 including M.sub.T 1 additional long training symbols to train the other antennas.
(45) As in IEEE 802.11a, a short OFDM training symbol consists of 12 tones, which are modulated by the elements of the following frequency-domain sequence:
(46)
(47) The multiplication by {square root over (13/6)} is in order to normalize the average power of the resulting OFDM symbol. The short training symbol has a duration of 0.8 s and is repeated 10 times.
(48) In an embodiment, different tones in the short training symbol may be transmitted on different antennas.
(49) For M.sub.T=1,all tones are transmitted on one antenna, T0, as shown in
(50) As in IEEE 802.11a, the long preamble 602 is used for fine frequency offset estimation and channel estimation. A long training OFDM symbol includes 52 tones, which are modulated by the following frequency-domain BPSK training sequence:
L.sub.26,26={1,1,1,1,1,1,1,1,1,1,1,1,1,1,11,1,1,1,1,1,1,1,1,1,1,0,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1 1,1,1,1,1,1,1}
(51) The number of sets of long training symbols may be M.sub.T for all spatial multiplexing rates. The additional long training symbols may be used to estimate the full M.sub.RM.sub.T channel matrix. This estimation may be used for link adaptation, in which modulation, coding rate, and/or other signal transmission parameters may be dynamically adapted to the changing channel conditions. However, for compatibility with IEEE 802.11a systems, the transmitter may also operate in a legacy mode in which only one set of long training symbols is transmitted on all antennas, i.e., the supplemental long preamble 616 is omitted. In the legacy mode, the SIGNAL2 symbol 614 may also be omitted, such that the data starts after the SIGNAL symbol 610.
(52) The preamble may be generated from r.sub.s frequency domain input symbols, p=0, . . . , r.sub.s1. For data tones in the long preamble section, the vector X is given by:
X.sub.k.sup.(p)=[0 . . . 0 L.sub.k 0 . . . 0].sup.T,
(53) where L.sub.k is positioned at the p-th position in the vector.
(54) For pilot tones in the long preamble section, the vector X is given by:
X.sub.k.sup.(p)=[L.sub.k 0 . . . 0].sup.T
(55) The frequency-domain preamble may then be generated by multiplying the vector X by the matrix B.sub.k, i.e.,
C.sub.k.sup.(p)=B.sub.k.sup.(p)X.sub.k.sup.(p)
(56) The time-domain preamble p for the i-th antenna is given by:
c.sub.p,n.sup.(i).
(57) The additional long training symbols in the supplemental long preamble 616 may be generated from input symbols p=r.sub.s, . . . , M.sub.T1 by multiplying L.sub.k with (M.sub.Tr.sub.s)M1 mutually orthogonal column vectors that are orthogonal to the columns of B.sub.k.
(58) Data bits in the data field 612 are scrambled, convolutionally encoded, and interleaved before mapping onto subcarrier constellations in a manner similar to that specified in IEEE 802.11a. To account for the availability of multiple spatial multiplexing rates, the interleaving may be performed by a block interleaver with a block size equal to the number of coded bits per spatial substream in an OFDM symbol.
(59) As in IEEE 802.11a, tones k=21, 7, 7, and 21 are used for pilot tones in each data MIMO-OFDM symbol. The pilot tones consist of modulating the first spatial substream with IEEE 802.11a MPSK pilot tone sequence followed by multiplication by code matrix B.sub.k. The dimension of B.sub.k for pilot tones is M.sub.T1. The matrix B.sub.k for each pilot tones may be selected to maintain equal power per transmit antenna.
(60)
(61) As described above, the frame formatter 120 MIMO-OFDM transmitter may be operated in a MIMO-OFDM mode and a legacy mode for compatibility with IEEE 802.11a systems.
(62) If the frame formatter is in the MIMO-OFDM mode (block 902), the frame formatter generates a MIMO-OFDM frame (block 914). The frame has a format in which different tones in the short training symbol may be transmitted on different antennas, e.g., in a cyclic distribution (block 916). In the MIMO-OFDM mode, the transmitter may transmit multiple sets of long training symbols, one for each of the M.sub.T transmit antennas (block 918) to facilitate link adaptation and a header with only two SIGNAL symbols (block 920), including one SIGNAL symbol with MIMO-OFDM-specific information. Finally, the transmitter transmits the frame's DATA field (block 922).
(63) A number of embodiments have been described. Nevertheless, it will be understood that various modifications may be made without departing from the spirit and scope of the invention. For example, blocks in the flowcharts may be skipped or performed out of order and still produce desirable results. Accordingly, other embodiments are within the scope of the following claims.
(64) Embodiments of the subject matter described in this specification can be implemented as one or more computer programs embodied in a machine-readable medium to control the operation of one or more machines, including a computer, to cause the one or more machines to perform operations as described in this specification. As used herein, a machine-readable medium does not include a propagated signal and is a non-transitory medium.