Измерения передатчика 802.11ac

В этом примере показано, как выполнить эти измерения передатчика на форме волны IEEE® 802.11ac™:

  • Точность модуляции

  • Маска эмиссии спектра

  • Плоскость спектра

  • Синфазный и квадратура (IQ) усиление и разбаланс фазы

Введение

Точность модуляции передатчика, требуемая маска спектра и требуемая спектральная плоскость для данной настройки заданы в [Раздел 21.3.17 из 1]. В этом примере показано, как выполнить эти измерения на форме волны. Этот пример также модели, меры, и корректирует усиление IQ и разбаланс фазы. Сгенерируйте форму волны с WLAN Toolbox™ или используйте полученную форму волны со спектром анализатор.

Пример генерирует 20 пакетов VHT с пропускной способностью канала на 80 МГц и разрывом с 10 микросекундами между пакетами. Каждый пакет содержит случайные данные и использует 256-QAM модуляцию. Чтобы сократить внеполосные выбросы и удовлетворить спектральное требование маски, сверхдискретизируйте и отфильтруйте основополосную форму волны. Добавьте усиление IQ и разбаланс фазы к отфильтрованной форме волны. Используйте модель мощного усилителя (HPA), чтобы ввести внутриполосное искажение и спектральный перерост. Выполните спектральное измерение маски эмиссии на сверхдискретизированной форме волны после мощного моделирования усилителя. Downsample и правильный форма волны с предполагаемым усилением IQ и разбалансом фазы. Измерьте величину вектора ошибок (EVM) Поля данных VHT, чтобы определить точность модуляции. Кроме того, измерьте спектральную плоскость. Эта схема показывает рабочий процесс, содержавшийся в примере.

IEEE 802.11ac Пакетная настройка VHT

Этот пример генерирует форму волны IEEE 802.11ac, состоящую из нескольких пакетов формата VHT. Используйте объект настройки формата VHT, wlanVHTConfig, сконфигурировать свойства передачи пакета VHT. Этот пример конфигурирует форму волны VHT для пропускной способности на 80 МГц. Поскольку этот пример не использует пространственно-временное блочное кодирование, он может измерить точность модуляции на пространственный поток.

cfgVHT = wlanVHTConfig;            % Create packet configuration
cfgVHT.ChannelBandwidth = 'CBW80'; % 80 MHz
cfgVHT.NumTransmitAntennas = 1;    % One transmit antenna
cfgVHT.NumSpaceTimeStreams = 1;    % One space-time stream
cfgVHT.STBC = false;               % No STBC so one spatial stream
cfgVHT.MCS = 8;                    % Modulation: 256-QAM
cfgVHT.APEPLength = 3000;          % A-MPDU length pre-EOF padding in bytes

Основополосная генерация сигналов

Сгенерируйте форму волны VHT для заданных битов и настройки при помощи wlanWaveformGenerator функция, задавая желаемый фактор сверхдискретизации, количество пакетов, и время простоя между каждым пакетом.

numPackets = 20;  % Generate 20 packets
idleTime = 10e-6; % 10 microseconds idle time between packets

Создайте случайные биты для всех пакетов, data, и передайте в качестве аргумента wlanWaveformGenerator наряду с пакетным объектом cfgVHT настройки VHT. Это конфигурирует генератор формы волны, чтобы синтезировать 802.11ac форма волны VHT. Кроме того, сконфигурируйте генератор формы волны при помощи пар "имя-значение", чтобы сгенерировать несколько пакетов с заданным временем простоя между каждым пакетом.

% Create random data; PSDULength is in bytes
savedState = rng(0); % Set random state
data = randi([0 1],cfgVHT.PSDULength*8*numPackets,1);

% Generate a multi-packet waveform
txWaveform = wlanWaveformGenerator(data,cfgVHT, ...
    'NumPackets',numPackets,'IdleTime',idleTime);

% Get the sampling rate of the waveform
fs = wlanSampleRate(cfgVHT);
disp(['Baseband sampling rate: ' num2str(fs/1e6) ' Msps']);
Baseband sampling rate: 80 Msps

Сверхдискретизация и фильтрация

Используйте спектральную фильтрацию, чтобы сократить внеполосные спектральные выбросы вследствие неявного формирования меандра в модуляции OFDM и спектральном переросте, вызванном мощной моделью усилителя. Сверхдискретизируйте форму волны, чтобы смоделировать эффект мощного усилителя и просмотреть внеполосную спектральную эмиссию. Сверхдискретизация требует, чтобы фильтр интерполяции удалил спектральные изображения, вызванные путем повышающей дискретизации. Этот пример сверхдискретизировал форму волны с фильтром интерполяции, который действует как спектральный фильтр и позволяет форме волны удовлетворять спектральные требования маски. Сверхдискретизируйте и отфильтруйте форму волны при помощи dsp.FIRInterpolator System object(TM).

% Oversample the waveform
osf = 3;         % Oversampling factor
filterLen = 120; % Filter length
beta = 0.5;      % Design parameter for Kaiser window

% Generate filter coefficients
coeffs = osf.*firnyquist(filterLen,osf,kaiser(filterLen+1,beta));
coeffs = coeffs(1:end-1); % Remove trailing zero
interpolationFilter = dsp.FIRInterpolator(osf,'Numerator',coeffs);
txWaveform = interpolationFilter(txWaveform);

% Plot the magnitude and phase response of the filter applied after
% oversampling
h = fvtool(interpolationFilter);
h.Analysis = 'freq';           % Plot magnitude and phase responses
h.FS = osf*fs;                 % Set sampling rate
h.NormalizedFrequency = 'off'; % Plot responses against frequency

Моделирование неустойчивости IQ

Неустойчивость IQ возникает, когда компонент фронтенда не уважает баланс сил или ортогональность между ветвями Q и мной. Этот пример добавляет усиление IQ и разбаланс фазы к переданной форме волны на основе флага modelIQImbalance. В приемнике оцените усиление IQ и разбаланс фазы и откорректируйте форму волны согласно схеме компенсации, заданной в [5].

modelIQImbalance = true; % Set to true to add IQ gain and phase imbalance

if modelIQImbalance
    iqGaindB = 1; % IQ gain imbalance in dB, specify from the range [-1 1]
    iqPhaseDeg = 1; % IQ phase imbalance in degrees, specify from the range [-2 2]
    iqGainLin = db2mag(iqGaindB); % Convert gain from dB to linear value
    txWaveform = real(txWaveform) + 1i*imag(txWaveform)*iqGainLin*exp(1j*iqPhaseDeg*pi/180); % As specified in Equation-1 of [5]
end

Мощное моделирование усилителя

Мощный усилитель вводит нелинейное поведение в форме внутриполосного искажения и спектрального перероста. Этот пример симулирует усилители мощности при помощи модели Rapp в 802.11ac [2], который вводит искажение AM.

Смоделируйте усилитель при помощи comm.MemorylessNonlinearity объект, и конфигурирует уменьшаемое искажение путем определения возврата, hpaBackoff, таким образом, что усилитель действует ниже его точки насыщения. Можно увеличить возврат, чтобы уменьшать EVM для более высоких значений MCS.

pSaturation = 25; % Saturation power of a power amplifier in dBm
hpaBackoff = 13; % Power amplifier backoff in dB

% Create and configure a memoryless nonlinearity to model the amplifier
nonLinearity = comm.MemorylessNonlinearity;
nonLinearity.Method = 'Rapp model';
nonLinearity.Smoothness = 3; % p parameter
nonLinearity.LinearGain = -hpaBackoff;
nonLinearity.OutputSaturationLevel = db2mag(pSaturation-30);

% Apply the model to each transmit antenna
for i=1:cfgVHT.NumTransmitAntennas
    txWaveform(:,i) = nonLinearity(txWaveform(:,i));
end

Добавьте тепловой шум в форму волны, задав фигуру [3] шума приемника на 6 дБ.

NF = 6;         % Noise figure (dB)
BW = fs*osf;    % Bandwidth (Hz)
k = 1.3806e-23; % Boltzman constant (J/K)
T = 290;        % Ambient temperature (K)
noisePower = 10*log10(k*T*BW)+NF;

awgnChannel = comm.AWGNChannel('NoiseMethod','Variance', ...
    'Variance',10^(noisePower/10));
txWaveform = awgnChannel(txWaveform);

Точность модуляции (EVM), спектральная плоскость и измерения неустойчивости IQ

Передискретизируйте сверхдискретизированную форму волны вниз к основной полосе для обработки физического уровня и EVM, спектральной плоскости и измерений неустойчивости IQ. Как часть передискретизации, примените фильтр сглаживания lowpass перед субдискретизацией. Удар фильтра lowpass отображается в спектральном измерении плоскости. Передискретизируйте форму волны к основной полосе с помощью dsp.FIRDecimator System object(TM) с теми же коэффициентами, coeffs, используемый для сверхдискретизации в разделе 'Oversampling and Filtering'.

% Resample the waveform to baseband
decimationFilter = dsp.FIRDecimator(osf,'Numerator',coeffs);
rxWaveform = decimationFilter(txWaveform);

Этот раздел обнаруживает, синхронизирует и извлекает каждый пакет в rxWaveform, затем измеряет EVM, спектральную плоскость и неустойчивость IQ. Для каждого пакета пример выполняет эти шаги:

  • Обнаружьте запуск пакета

  • Извлеките поля non-HT

  • Оцените и откорректируйте крупную несущую частоту возмещена (CFO)

  • Выполните прекрасную оценку синхронизации символа при помощи откорректированных частотой полей non-HT

  • Извлеките пакет из формы волны при помощи прекрасного смещения синхронизации символа

  • Откорректируйте извлеченный пакет крупной оценкой CFO

  • Извлеките L-LTF, затем оцените прекрасный CFO и правильный для целого пакета

  • Извлеките VHT-LTF и выполните оценку канала для каждого из потоков передачи

  • Измерьтесь неустойчивость IQ от канала оценивают и выполняют коррекцию на оценке канала

  • Измерьте спектральную плоскость при помощи оценки канала

  • Извлеките и OFDM демодулируют поле данных VHT

  • Выполните шумовую оценку при помощи демодулируемых пилотов поля данных и оценки канала единого потока в экспериментальных поднесущих

  • Правильный фазой и компенсируют поле данных VHT при помощи канала и шумовых оценок

  • Откорректируйте компенсируемые поднесущие данных оценкой неустойчивости IQ

  • Для каждой несущей данные поднесущей в каждом пространственном потоке найдите, что самое близкое созвездие указывает и измеряет EVM

Схема показывает цепь обработки:

Символы VHT-LTF включают экспериментальные символы, чтобы позволить, чтобы фаза отследила, но этот пример не выполняет отслеживание фазы.

Протестируйте спектральную плоскость на каждый пакет путем измерения отклонения в величине отдельных поднесущих в оценке канала против среднего значения [1]. Постройте эти отклонения для каждого пакета с помощью функции помощника vhtTxSpectralFlatnessMeasurement. Постройте средний EVM на несущую данные поднесущую и компенсируемые символы для каждого пакета.

Демодулируйте, компенсируйте и декодируйте символы Данных VHT при помощи wlanVHTDataRecover функция. Параметрируйте эту функцию, чтобы выполнить отслеживание экспериментального этапа и обеспечивающую нуль эквализацию как требуется по стандарту. Этот пример измеряет точность модуляции от компенсируемых символов.

Этот пример делает два различных измерения EVM с помощью двух экземпляров comm.EVM.

  • EVM RMS на пакет, который включает усреднение EVM по поднесущим, символам OFDM и пространственным потокам.

  • RMS EVM на поднесущую на пространственный поток для пакета. Поскольку эта настройка сопоставляет пространственные потоки непосредственно с антеннами, это измерение может помочь обнаружить зависимые частотой нарушения, которые могут влиять на отдельные цепи RF по-другому. Это измерение составляет в среднем EVM по символам OFDM только.

% Setup EVM measurements
[EVMPerPkt,EVMPerSC] = vhtEVMSetup(cfgVHT);

Этот код конфигурирует объекты и переменные для обработки.

% Get indices for accessing each field within the time-domain packet
ind = wlanFieldIndices(cfgVHT);

rxWaveformLength = size(rxWaveform,1);
pktLength = double(ind.VHTData(2));

% Define the minimum length of data we can detect; length of the L-STF in
% samples
minPktLen = double(ind.LSTF(2)-ind.LSTF(1))+1;

% Setup the measurement plots
[hSF,hCon,hEVM] = vhtTxSetupPlots(cfgVHT);

rmsEVM = zeros(numPackets,1);
pktOffsetStore = zeros(numPackets,1);

rng(savedState); % Restore random state

Обнаружьте и пакеты процесса в полученной форме волны, rxWaveform при помощи некоторое время цикла, который выполняет эти шаги.

  • Обнаружьте пакет путем индексации в rxWaveform с демонстрационным смещением, searchOffset

  • Обнаружьте и обработайте первый пакет в rxWaveform

  • Обнаружьте и обработайте следующий пакет путем постепенного увеличения демонстрационного смещения индекса, searchOffset

  • Повторитесь, пока никакие дальнейшие пакеты не будут обнаружены

pktNum = 0;
searchOffset = 0; % Start at first sample (no offset)
while (searchOffset+minPktLen)<=rxWaveformLength
    % Packet detect
    pktOffset = wlanPacketDetect(rxWaveform,cfgVHT.ChannelBandwidth);
    % Packet offset from start of waveform
    pktOffset = searchOffset+pktOffset;
    % If no packet detected or offset outwith bounds of waveform then stop
    if isempty(pktOffset) || (pktOffset<0) || ...
            ((pktOffset+ind.LSIG(2))>rxWaveformLength)
        break;
    end

    % Extract non-HT fields and perform coarse frequency offset correction
    % to allow for reliable symbol timing
    nonht = rxWaveform(pktOffset+(ind.LSTF(1):ind.LSIG(2)),:);
    coarsefreqOff = wlanCoarseCFOEstimate(nonht,cfgVHT.ChannelBandwidth);
    nonht = helperFrequencyOffset(nonht,fs,-coarsefreqOff);

    % Determine offset between the expected start of L-LTF and actual start
    % of L-LTF
    lltfOffset = wlanSymbolTimingEstimate(nonht,cfgVHT.ChannelBandwidth);
    % Determine packet offset
    pktOffset = pktOffset+lltfOffset;
    % If offset is without bounds of waveform skip samples and continue
    % searching within remainder of the waveform
    if (pktOffset<0) || ((pktOffset+pktLength)>rxWaveformLength)
        searchOffset = pktOffset+double(ind.LSTF(2))+1;
        continue;
    end

    % Timing synchronization complete; extract the detected packet
    rxPacket = rxWaveform(pktOffset+(1:pktLength),:);
    pktNum = pktNum+1;
    disp(['  Packet ' num2str(pktNum) ' at index: ' num2str(pktOffset+1)]);

    % Apply coarse frequency correction to the extracted packet
    rxPacket = helperFrequencyOffset(rxPacket,fs,-coarsefreqOff);

    % Perform fine frequency offset correction on the extracted packet
    lltf = rxPacket(ind.LLTF(1):ind.LLTF(2),:); % Extract L-LTF
    fineFreqOff = wlanFineCFOEstimate(lltf,cfgVHT.ChannelBandwidth);
    rxPacket = helperFrequencyOffset(rxPacket,fs,-fineFreqOff);

    % Extract VHT-LTF samples, demodulate and perform channel estimation
    vhtltf = rxPacket(ind.VHTLTF(1):ind.VHTLTF(2),:);
    vhtltfDemod = wlanVHTLTFDemodulate(vhtltf,cfgVHT);

    % Get single stream channel estimate
    chanEstSSPilots = vhtSingleStreamChannelEstimate(vhtltfDemod,cfgVHT);

    % Channel estimate
    chanEst = wlanVHTLTFChannelEstimate(vhtltfDemod,cfgVHT);

    % Perform IQ gain and phase imbalance estimation
    [gainEst,phaseEst,alphaEst,betaEst,gamma,dataRot] = ...
                                    helperIQImbalanceEstimate(chanEst,cfgVHT);
    fprintf('    Measured IQ gain & phase imbalance: %2.2f dB, %2.2f deg\n',gainEst,phaseEst);

    % Perform IQ gain and phase imbalance correction on channel
    % estimates
    chanEst = chanEst./(alphaEst + betaEst.*gamma); % As specified in Equation-29 of [5]

    % Spectral flatness measurement
    vhtTxSpectralFlatnessMeasurement(chanEst,cfgVHT,pktNum,hSF);

    % Extract VHT Data samples from the waveform
    vhtdata = rxPacket(ind.VHTData(1):ind.VHTData(2),:);

    % Estimate the noise power in VHT data field
    noiseVarVHT = vhtNoiseEstimate(vhtdata,chanEstSSPilots,cfgVHT);

    % Extract VHT Data samples and perform OFDM demodulation, equalization
    % and phase tracking
    [~,~,eqSym] = wlanVHTDataRecover(vhtdata,chanEst,noiseVarVHT,cfgVHT,...
        'EqualizationMethod','ZF','PilotPhaseTracking','PreEQ'); % Use zero forcing algorithm for equalization

    % Perform IQ gain and phase imbalance correction on VHT data
    eqSym = eqSym.*dataRot; % Carrier rotation on data subcarriers
    eqSym = ((conj(alphaEst)*eqSym)-(betaEst*conj(eqSym(end:-1:1,:,:))))/((abs(alphaEst)^2)-(abs(betaEst)^2));  % As specified in Equation-30 of [5]

    % Compute RMS EVM over all spatial streams for packet
    rmsEVM(pktNum) = EVMPerPkt(eqSym);
    fprintf('    RMS EVM: %2.2f%%, %2.2fdB\n',rmsEVM(pktNum),20*log10(rmsEVM(pktNum)/100));

    % Compute RMS EVM per subcarrier and spatial stream for the packet
    evmPerSC = EVMPerSC(eqSym); % Nst-by-1-by-Nss

    % Plot RMS EVM per subcarrier and equalized constellation
    vhtTxEVMConstellationPlots(eqSym,evmPerSC,cfgVHT,pktNum,hCon,hEVM);

    % Store the offset of each packet within the waveform
    pktOffsetStore(pktNum) = pktOffset;

    % Increment waveform offset and search remaining waveform for a packet
    searchOffset = pktOffset+pktLength+minPktLen;
end

if pktNum>0
    fprintf('Average EVM for %d packets: %2.2f%%, %2.2fdB\n', ...
        pktNum,mean(rmsEVM(1:pktNum)),20*log10(mean(rmsEVM(1:pktNum))/100));
else
    disp('No complete packet detected');
end
  Packet 1 at index: 41
    Measured IQ gain & phase imbalance: 0.98 dB, 0.96 deg
    Spectral flatness passed
    RMS EVM: 3.38%, -29.43dB
  Packet 2 at index: 9801
    Measured IQ gain & phase imbalance: 0.98 dB, 0.96 deg
    Spectral flatness passed
    RMS EVM: 3.14%, -30.05dB
  Packet 3 at index: 19561
    Measured IQ gain & phase imbalance: 0.98 dB, 0.96 deg
    Spectral flatness passed
    RMS EVM: 2.96%, -30.56dB
  Packet 4 at index: 29321
    Measured IQ gain & phase imbalance: 0.98 dB, 0.96 deg
    Spectral flatness passed
    RMS EVM: 3.09%, -30.20dB
  Packet 5 at index: 39081
    Measured IQ gain & phase imbalance: 0.98 dB, 0.96 deg
    Spectral flatness passed
    RMS EVM: 3.03%, -30.36dB
  Packet 6 at index: 48841
    Measured IQ gain & phase imbalance: 0.98 dB, 0.96 deg
    Spectral flatness passed
    RMS EVM: 2.73%, -31.27dB
  Packet 7 at index: 58601
    Measured IQ gain & phase imbalance: 0.98 dB, 0.96 deg
    Spectral flatness passed
    RMS EVM: 3.00%, -30.46dB
  Packet 8 at index: 68361
    Measured IQ gain & phase imbalance: 0.98 dB, 0.96 deg
    Spectral flatness passed
    RMS EVM: 2.89%, -30.79dB
  Packet 9 at index: 78121
    Measured IQ gain & phase imbalance: 0.98 dB, 0.96 deg
    Spectral flatness passed
    RMS EVM: 3.02%, -30.39dB
  Packet 10 at index: 87881
    Measured IQ gain & phase imbalance: 0.98 dB, 0.96 deg
    Spectral flatness passed
    RMS EVM: 2.79%, -31.09dB
  Packet 11 at index: 97641
    Measured IQ gain & phase imbalance: 0.98 dB, 0.96 deg
    Spectral flatness passed
    RMS EVM: 2.98%, -30.52dB
  Packet 12 at index: 107401
    Measured IQ gain & phase imbalance: 0.98 dB, 0.96 deg
    Spectral flatness passed
    RMS EVM: 3.00%, -30.47dB
  Packet 13 at index: 117161
    Measured IQ gain & phase imbalance: 0.98 dB, 0.96 deg
    Spectral flatness passed
    RMS EVM: 2.88%, -30.80dB
  Packet 14 at index: 126921
    Measured IQ gain & phase imbalance: 0.98 dB, 0.96 deg
    Spectral flatness passed
    RMS EVM: 2.96%, -30.59dB
  Packet 15 at index: 136681
    Measured IQ gain & phase imbalance: 0.98 dB, 0.96 deg
    Spectral flatness passed
    RMS EVM: 3.17%, -29.98dB
  Packet 16 at index: 146441
    Measured IQ gain & phase imbalance: 0.98 dB, 0.96 deg
    Spectral flatness passed
    RMS EVM: 2.69%, -31.42dB
  Packet 17 at index: 156201
    Measured IQ gain & phase imbalance: 0.98 dB, 0.96 deg
    Spectral flatness passed
    RMS EVM: 3.03%, -30.36dB
  Packet 18 at index: 165961
    Measured IQ gain & phase imbalance: 0.98 dB, 0.96 deg
    Spectral flatness passed
    RMS EVM: 3.26%, -29.75dB
  Packet 19 at index: 175721
    Measured IQ gain & phase imbalance: 0.98 dB, 0.96 deg
    Spectral flatness passed
    RMS EVM: 3.29%, -29.65dB
  Packet 20 at index: 185481
    Measured IQ gain & phase imbalance: 0.98 dB, 0.96 deg
    Spectral flatness passed
    RMS EVM: 3.27%, -29.72dB
Average EVM for 20 packets: 3.03%, -30.38dB

Передайте измерение маски эмиссии спектра

Этот раздел измеряет спектральную маску отфильтрованной и формы волны, которой повреждают, после мощного моделирования усилителя.

Передатчик спектральный тест маски [4] использование пропущенное временем спектральное измерение Поля данных VHT. Пример извлекает Поле данных VHT каждого пакета от сверхдискретизированной формы волны, txWaveform, при помощи индексов запуска каждого пакета в основополосной форме волны. Любая задержка, введенная в основополосной цепи обработки, используемой, чтобы определить пакетные индексы, должна составляться при пропускании поля данных VHT в txWaveform. Конкатенация извлеченных Полей данных VHT при подготовке к измерению.

startIdx = osf*(ind.VHTData(1)-1)+1;  % Upsampled start of VHT Data
endIdx = osf*ind.VHTData(2);          % Upsampled end of VHT Data
delay = grpdelay(decimationFilter,1); % Group delay of downsampling filter
idx = zeros(endIdx-startIdx+1,pktNum);
for i = 1:pktNum
    % Start of packet in txWaveform
    pktOffset = osf*pktOffsetStore(i)-delay;
    % Indices of VHT Data in txWaveform
    idx(:,i) = (pktOffset+(startIdx:endIdx));
end
gatedVHTData = txWaveform(idx(:),:);

Стандарт 802.11ac задает спектральную маску относительно пиковой мощности спектральная плотность. Функция помощника helperSpectralMaskTest генерирует график, который накладывает необходимую маску с измеренным PSD.

if pktNum>0
    helperSpectralMaskTest(gatedVHTData,fs,osf);
end
   Spectrum mask passed

Заключение и дальнейшее исследование

Этот пример строит четыре результата: спектральная плоскость, RMS EVM на поднесущую, компенсировала созвездие и спектральную маску.

Мощная модель усилителя вводит значительное внутриполосное искажение и спектральный перерост, который отображается в результатах EVM, шумном созвездии и внеполосной эмиссии в спектральном графике маски. Попытайтесь увеличить мощный возврат усилителя и отметьте улучшенный EVM, созвездие и понизьте внеполосную эмиссию.

Попытайтесь использовать различные значения для iqGaindB и iqPhaseDeg и отметьте удар на EVM и созвездие.

Спектральная фильтрация и субдискретизация (чтобы принести форму волны к основной полосе для обработки) этапы включают фильтрацию. Эти ответы фильтра влияют на спектральное измерение плоскости. Пульсация в спектральном измерении плоскости происходит в основном из-за субдискретизации к основной полосе. Попытайтесь использовать различные фильтры или отфильтруйте длины и отметьте удар на спектральную плоскость.

Выбранная библиография

  1. Станд. IEEE 802.11™-2016 Стандарт IEEE для Информационных технологий - Телекоммуникаций и обмена информацией между системами - Локальными сетями и городскими компьютерными сетями - Конкретными требованиями - Часть 11: Беспроводное Среднее управление доступом (MAC) LAN и Физический уровень (PHY) Технические требования.

  2. Loc и Cheong. IEEE P802.11 Беспроводная LAN. Функциональные требования TGac и версия методологии оценки. 16. 2011-01-19.

  3. Perahia, E. и Р. Стейси. Беспроводная LAN следующего поколения: 802.11n и 802.11ac. 2-й выпуск. Соединенное Королевство: Издательство Кембриджского университета, 2013.

  4. Archambault, Джерри и Шрэвэн Суринени. "IEEE 802.11 спектральные измерения с помощью вектора сигнализирует об анализаторах". Проект 27.6 (2004) RF: 38-49.

  5. М. Джейнэсвами, Н. К. Чавали и С. Бэйтабьял, "Измерение передатчика параметры IQ в HT и беспроводных системах LAN VHT", 2 016 Международных конференций по вопросам Обработки сигналов и Коммуникаций (SPCOM), Бангалора.