Documentation

This is machine translation

Translated by Microsoft
Mouseover text to see original. Click the button below to return to the English verison of the page.

Note: This page has been translated by MathWorks. Please click here
To view all translated materals including this page, select Japan from the country navigator on the bottom of this page.

wlanHTLTFChannelEstimate

Channel estimation using HT-LTF

Syntax

chEst = wlanHTLTFChannelEstimate(demodSig,cfg)
chEst = wlanHTLTFChannelEstimate(demodSig,cfg,span)

Description

example

chEst = wlanHTLTFChannelEstimate(demodSig,cfg) returns the channel estimate using the demodulated HT-LTF[1] signal, demodSig, given the parameters specified in configuration object cfg.

example

chEst = wlanHTLTFChannelEstimate(demodSig,cfg,span) returns the channel estimate and specifies the span of a moving-average filter used to perform frequency smoothing.

Examples

collapse all

Estimate and plot the channel coefficients of an HT-mixed format channel by using the high throughput long training field.

Create an HT format configuration object. Generate the corresponding HT-LTF based on the object.

cfg = wlanHTConfig;
txSig = wlanHTLTF(cfg);

Multiply the transmitted HT-LTF signal by 0.2 + 0.1i and pass it through an AWGN channel. Demodulate the received signal.

rxSig = awgn(txSig*(0.2+0.1i),30);
demodSig = wlanHTLTFDemodulate(rxSig,cfg);

Estimate the channel response using the demodulated HT-LTF.

est = wlanHTLTFChannelEstimate(demodSig,cfg);

Plot the channel estimate.

scatterplot(est)
grid

The channel estimate matches the complex channel multiplier.

Estimate the channel coefficients of a 2x2 MIMO channel by using the high throughput long training field. Recover the HT-data field and determine the number of bit errors.

Create an HT-mixed format configuration object for a channel having two spatial streams and four transmit antennas. Transmit a complete HT waveform.

cfg = wlanHTConfig('NumTransmitAntennas',2, ...
    'NumSpaceTimeStreams',2,'MCS',11);
txPSDU = randi([0 1],8*cfg.PSDULength,1);
txWaveform = wlanWaveformGenerator(txPSDU,cfg);

Pass the transmitted waveform through a 2x2 TGn channel.

tgnChan = wlanTGnChannel('SampleRate',20e6, ...
    'NumTransmitAntennas',2, ...
    'NumReceiveAntennas',2, ...
    'LargeScaleFadingEffect','Pathloss and shadowing');
rxWaveformNoNoise = tgnChan(txWaveform);

Create an AWGN channel with noise power, nVar, corresponding to a receiver having a 9 dB noise figure. The noise power is equal to kTBF, where k is Boltzmann's constant, T is the ambient noise temperature (290K), B is the bandwidth (20 MHz), and F is the noise figure (9 dB).

nVar = 10^((-228.6 + 10*log10(290) + 10*log10(20e6) + 9)/10);
awgnChan = comm.AWGNChannel('NoiseMethod','Variance', ...
    'Variance',nVar);

Pass the signal through the AWGN channel.

rxWaveform = awgnChan(rxWaveformNoNoise);

Determine the indices for the HT-LTF. Extract the HT-LTF from the received waveform. Demodulate the HT-LTF.

indLTF  = wlanFieldIndices(cfg,'HT-LTF');
rxLTF = rxWaveform(indLTF(1):indLTF(2),:);
ltfDemodSig = wlanHTLTFDemodulate(rxLTF,cfg);

Generate the channel estimate by using the demodulated HT-LTF signal. Specify a smoothing filter span of three subcarriers.

chEst = wlanHTLTFChannelEstimate(ltfDemodSig,cfg,3);

Extract the HT-data field from the received waveform.

indData = wlanFieldIndices(cfg,'HT-Data');
rxDataField = rxWaveform(indData(1):indData(2),:);

Recover the data and verify that there no bit errors occurred.

rxPSDU = wlanHTDataRecover(rxDataField,chEst,nVar,cfg);

numErrs = biterr(txPSDU,rxPSDU)
numErrs =

     0

Input Arguments

collapse all

Demodulated HT-LTF signal, specified as an NST-by-NSYM-by-NR array. NST is the number of occupied subcarriers, NSYM is the number of HT-LTF OFDM symbols, and NR is the number of receive antennas.

Data Types: double
Complex Number Support: Yes

Configuration information, specified as a wlanHTConfig object. The function uses the following wlanHTConfig object properties:

Channel bandwidth in MHz, specified as 'CBW20' or 'CBW40'.

Data Types: char | string

Number of space-time streams in the transmission, specified as 1, 2, 3, or 4.

Data Types: double

Number of extension spatial streams in the transmission, specified as 0, 1, 2, or 3. When NumExtensionStreams is greater than 0, SpatialMapping must be 'Custom'.

Data Types: double

Modulation and coding scheme to use for transmitting the current packet, specified as an integer from 0 to 31. The MCS setting identifies which modulation and coding rate combination is used, and the number of spatial streams (NSS).

MCS(Note 1)NSS(Note 1)ModulationCoding Rate

0, 8, 16, or 24

1, 2, 3, or 4

BPSK1/2

1, 9, 17, or 25

1, 2, 3, or 4

QPSK1/2

2, 10, 18, or 26

1, 2, 3, or 4

QPSK3/4

3, 11, 19, or 27

1, 2, 3, or 4

16QAM1/2

4, 12, 20, or 28

1, 2, 3, or 4

16QAM3/4

5, 13, 21, or 29

1, 2, 3, or 4

64QAM2/3

6, 14, 22, or 30

1, 2, 3, or 4

64QAM3/4

7, 15, 23, or 31

1, 2, 3, or 4

64QAM5/6
Note-1 MCS from 0 to 7 have one spatial stream. MCS from 8 to 15 have two spatial streams. MCS from 16 to 23 have three spatial streams. MCS from 24 to 31 have four spatial streams.

See IEEE® 802.11™-2012, Section 20.6 for further description of MCS dependent parameters.

When working with the HT-Data field, if the number of space-time streams is equal to the number of spatial streams, no space-time block coding (STBC) is used. See IEEE 802.11-2012, Section 20.3.11.9.2 for further description of STBC mapping.

Example: 22 indicates an MCS with three spatial streams, 64-QAM modulation, and a 3/4 coding rate.

Data Types: double

Filter span of the frequency smoothing filter, specified as an odd integer. The span is expressed as a number of subcarriers.

Note

If adjacent subcarriers are highly correlated, frequency smoothing will result in significant noise reduction. However, in a highly frequency selective channel, smoothing may degrade the quality of the channel estimate.

Data Types: double

Output Arguments

collapse all

Channel estimate between all combinations of space-time streams and receive antennas, returned as an NST-by-(NSTS+NESS)-by-NR array. NST is the number of occupied subcarriers, NSTS is the number of space-time streams. NESS is the number of extension spatial streams. NR is the number of receive antennas. Data and pilot subcarriers are included in the channel estimate.

Data Types: double
Complex Number Support: Yes

More About

collapse all

HT-LTF

The high throughput long training field (HT-LTF) is located between the HT-STF and data field of an HT-mixed packet.

As described in IEEE Std 802.11-2012, Section 20.3.9.4.6, the receiver can use the HT-LTF to estimate the MIMO channel between the set of QAM mapper outputs (or, if STBC is applied, the STBC encoder outputs) and the receive chains. The HT-LTF portion has one or two parts. The first part consists of one, two, or four HT-LTFs that are necessary for demodulation of the HT-Data portion of the PPDU. These HT-LTFs are referred to as HT-DLTFs. The optional second part consists of zero, one, two, or four HT-LTFs that can be used to sound extra spatial dimensions of the MIMO channel not utilized by the HT-Data portion of the PPDU. These HT-LTFs are referred to as HT-ELTFs. Each HT long training symbol is 4 μs. The number of space-time streams and the number of extension streams determines the number of HT-LTF symbols transmitted.

Tables 20-12, 20-13 and 20-14 from IEEE Std 802.11-2012 are reproduced here.

NSTS DeterminationNHTDLTF DeterminationNHTELTF Determination

Table 20-12 defines the number of space-time streams (NSTS) based on the number of spatial streams (NSS) from the MCS and the STBC field.

Table 20-13 defines the number of HT-DLTFs required for the NSTS.

Table 20-14 defines the number of HT-ELTFs required for the number of extension spatial streams (NESS). NESS is defined in HT-SIG2.

NSS from MCSSTBC fieldNSTS
101
112
202
213
224
303
314
404

NSTSNHTDLTF
11
22
34
44

NESSNHTELTF
00
11
22
34

Additional constraints include:

  • NHTLTF = NHTDLTF + NHTELTF ≤ 5.

  • NSTS + NESS ≤ 4.

    • When NSTS = 3, NESS cannot exceed one.

    • If NESS = 1 when NSTS = 3 then NHTLTF = 5.

References

[1] IEEE Std 802.11™-2012 IEEE Standard for Information technology — Telecommunications and information exchange between systems, Local and metropolitan area networks — Specific requirements — Part 11: Wireless LAN Medium Access Control (MAC) and Physical Layer (PHY) Specifications.

[2] Perahia, E., and R. Stacey. Next Generation Wireless LANs: 802.11n and 802.11ac . 2nd Edition, United Kingdom: Cambridge University Press, 2013.

Extended Capabilities

Introduced in R2015b


[1] IEEE Std 802.11-2012 Adapted and reprinted with permission from IEEE. Copyright IEEE 2012. All rights reserved.

Was this topic helpful?