Custom implementation of the 802.11px standard

7 views (last 30 days)
The following queries focus on certain aspects regarding the implementation of the 802.11px standard (custom implementation) using the existing WLAN Toolbox functions:
1.Assuming that the 802.11px standard borrows certain techniques from the 802.11ac standard (termed as VHT in the standard). By default, 10 MHz is available only with nonHT configuration, but to emulate 802.11px, the VHT configuration (or at the least HT configuration) will have to be used. Is there any restriction that 10 MHz is configurable only with the nonHT standard . If there is such a restriction, would there be any means of implementing the desired configuration by customizing the existing functionalities?
2. If the 802.11px standard is to use a better equalization algorithm than the one being used in the 802.11a/ac standards, and if this new algorithm has not been implemented in MATLAB (WLAN Toolbox), would it be possible to write this new algorithm and replace the NonHT Data Equalization block with a custom block. 

Accepted Answer

MathWorks Support Team
MathWorks Support Team on 2 Sep 2021
Edited: MathWorks Support Team on 27 Sep 2021
In general, it would be possible to make changes to the existing algorithms and function implementations as per the user's requirements.
1.  When comparing 10 MHz 802.11p with 20 MHz 802.11a, the actual baseband waveform at the physical layer is the same, but the symbol duration is doubled (8us vs 4 us where us stands for microseconds) and the sub-carrier spacing is halved (156.25 kHz vs 312.5 kHz). Therefore, when we generate a waveform with 'CBW10', the waveform is identical to 'CBW20'. Knowledge of the actual bandwidth is used outside generation for applying impairments such as frequency offsets, and channel models.
If you want to simulate a similar scheme with VHT (double the symbol duration and half the subcarrier spacing to operate in a 10 MHz bandwidth), then you can keep working with
ChannelBandwidth = 'CBW20'
for baseband processing, and only use the true sample rate when working with impairments. Alternatively, if you wish to keep the sub-carrier spacing the same for 20 MHz and 10 MHz then you would need to modify the code to change the FFT size, mapping of data, and pilots sub-carriers etc, which is possible but not trivial.
For instance, when considering the shipped example '802.11ac Packet Error Rate Simulation for 8x8 TGac channel'
you might be interested in halving the subcarrier spacing to create a 10 MHz waveform (e.g. 156.25 kHz instead of 312.5 kHz similar to the 802.11p standard). For accomplishing this, set:
cfgVHT.ChannelBandwidth = 'CBW20';
Also, manually set sampling frequency 'fs' to '10e6'. This will use a 64-point FFT at 10 MHz when generating/demodulating the waveform and therefore simulates a subcarrier spacing of 156.25 kHz.
2) WLAN Toolbox is all open m-code, therefore, you can replace the equalizer if you wish. For example, the current equalization algorithm is visible on line 308 to 313 of wlanVHTDataRecover:
% Equalization
if cfgVHT.STBC % Only SU
[eqDataSym, dataCSI] = wlan.internal.wlanSTBCCombine(ofdmDemodData, chanEstData, numSS, eqMethod, noiseVarEst);
else % Both SU and MU
[eqDataSym, dataCSI] = wlan.internal.wlanEqualize(ofdmDemodData, chanEstData(:,stsIdx,:), eqMethod, noiseVarEst);
end
This could be replaced with your custom algorithm to create the equalized data symbols.
Consider this MATLAB R2018b example which demonstrates a decision directed channel estimation algorithm and receiver for 802.11p:

More Answers (0)

Categories

Find more on Get Started with WLAN Toolbox in Help Center and File Exchange

Products


Release

R2018b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!