exponenta event banner

wlanCoarseCFOEstimate

Выполнение грубой оценки финансового директора

Описание

пример

fOffset = wlanCoarseCFOEstimate(rxSig,cbw) выполняет оценку грубого сдвига несущей частоты (CFO) для принятых L-STF1отсчетов временной области [] rxSig для полосы пропускания канала cbw. Функция может оценить максимальный финансовый директор в 625 кГц или в два раза больше интервала между поднесущими.

пример

fOffset = wlanCoarseCFOEstimate(rxSig,cbw,corrOffset) задает смещение корреляции в виде доли короткого обучающего символа.

Примеры

свернуть все

Создание объекта конфигурации, отличного от HT.

nht = wlanNonHTConfig;

Генерация сигнала без HT.

txSig = wlanWaveformGenerator([1;0;0;1],nht);

Создайте объект сдвига фазы и частоты и введите сдвиг частоты 2 кГц.

pfOffset = comm.PhaseFrequencyOffset('SampleRate',20e6,'FrequencyOffset',2000);
rxSig = pfOffset(txSig);

Извлеките L-STF.

ind = wlanFieldIndices(nht,'L-STF');
rxLSTF = rxSig(ind(1):ind(2),:);

Оцените сдвиг частоты от L-STF.

freqOffsetEst = wlanCoarseCFOEstimate(rxLSTF,'CBW20')
freqOffsetEst = 2.0000e+03

Оцените сдвиг частоты для сигнала VHT, проходящего через шумный канал TGac. Исправьте смещение частоты.

Создайте объект конфигурации VHT и L-STF.

vht = wlanVHTConfig;
txstf = wlanLSTF(vht);

Установите полосу пропускания канала и частоту дискретизации.

cbw = 'CBW80';
fs = 80e6;

Создание объектов канала TGac и теплового шума. Установите профиль задержки канала TGac в значение 'Model-C'. Установите показатель шума канала теплового шума на 9 дБ.

tgacChan = wlanTGacChannel('SampleRate',fs,'ChannelBandwidth',cbw, ...
    'DelayProfile','Model-C','LargeScaleFadingEffect','Pathloss');

noise = comm.ThermalNoise('SampleRate',fs,'NoiseMethod','Noise figure', ...
    'NoiseFigure',9);

Пропустите L-STF через шумный канал TGac.

rxstfNoNoise = tgacChan(txstf);
rxstf = noise(rxstfNoNoise);

Создайте объект сдвига фазы и частоты и введите сдвиг частоты 750 Гц.

pfOffset = comm.PhaseFrequencyOffset('SampleRate',fs, ...
    'FrequencyOffsetSource','Input port');
rxstf = pfOffset(rxstf,750);

Для профиля задержки модели-С разброс среднеквадратичной задержки составляет 30 нс, что составляет 3/8 от длительности 80 нс короткого обучающего символа. Поэтому установите смещение корреляции равным 0,375.

corrOffset = 0.375;

Оцените сдвиг частоты. Ваши результаты могут немного отличаться.

fOffsetEst = wlanCoarseCFOEstimate(rxstf,cbw,corrOffset)
fOffsetEst = 746.2700

Оценка очень близка к введенному финансовому директору 750 Гц.

Изменение профиля задержки на 'Model-E', которая имеет разброс среднеквадратичной задержки 100 нс.

release(tgacChan)
tgacChan.DelayProfile = 'Model-E';

Пропустите передаваемый сигнал через модифицированный канал и примените CFO 750 Гц.

rxstfNoNoise = tgacChan(txstf);
rxstf = noise(rxstfNoNoise);
rxstf = pfOffset(rxstf,750);

Оцените сдвиг частоты.

fOffsetEst = wlanCoarseCFOEstimate(rxstf,cbw,corrOffset)
fOffsetEst = 947.7234

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

Установите смещение корреляции на максимальное значение 1 и оцените финансового директора.

corrOffset = 1;
fOffsetEst = wlanCoarseCFOEstimate(rxstf,cbw,corrOffset)
fOffsetEst = 745.3640

Оценка является точной, поскольку автокорреляция не использует первый обучающий символ. Канальная задержка делает этот символ бесполезным.

Исправьте расчетное смещение частоты.

rxstfCorrected = pfOffset(rxstf,-fOffsetEst);

Оцените сдвиг частоты скорректированного сигнала.

fOffsetEstCorr = wlanCoarseCFOEstimate(rxstfCorrected,cbw,corrOffset)
fOffsetEstCorr = 1.9929e-11

Скорректированный сигнал имеет незначительный сдвиг частоты.

Оцените и исправьте значительное смещение несущей частоты в два шага. Оцените сдвиг частоты после внесения всех поправок.

Установите полосу пропускания канала и соответствующую частоту дискретизации.

cbw = 'CBW40';
fs = 40e6;

Грубая коррекция частоты

Создайте объект конфигурации формата HT.

cfg = wlanHTConfig('ChannelBandwidth',cbw);

Создайте сигнал передачи.

txSig = wlanWaveformGenerator([1;0;0;1],cfg);

Создание объектов канала TGn и теплового шума. Установите значение шума приемника 9 дБ.

tgnChan = wlanTGnChannel('SampleRate',fs,'DelayProfile','Model-D', ...
    'LargeScaleFadingEffect','Pathloss and shadowing');
noise = comm.ThermalNoise('SampleRate',fs, ...
    'NoiseMethod','Noise figure', ...
    'NoiseFigure',9);

Передайте сигнал через канал TGn и добавьте шум.

rxSigNoNoise = tgnChan(txSig);
rxSig = noise(rxSigNoNoise);

Создайте объект сдвига фазы и частоты, чтобы ввести смещение несущей частоты. Введите сдвиг частоты 2 кГц.

pfOffset = comm.PhaseFrequencyOffset('SampleRate',fs,'FrequencyOffsetSource','Input port');
rxSig = pfOffset(rxSig,2e3);

Извлеките сигнал L-STF для оценки грубого сдвига частоты.

istf = wlanFieldIndices(cfg,'L-STF');
rxstf = rxSig(istf(1):istf(2),:);

Выполните грубую оценку сдвига частоты. Ваши результаты могут отличаться.

foffset1 = wlanCoarseCFOEstimate(rxstf,cbw)
foffset1 = 2.0221e+03

Исправьте предполагаемое смещение.

rxSigCorr1 = pfOffset(rxSig,-foffset1);

Точная коррекция частоты

Извлеките сигнал L-LTF для точной оценки смещения.

iltf = wlanFieldIndices(cfg,'L-LTF');
rxltf1 = rxSigCorr1(iltf(1):iltf(2),:);

Выполните точную оценку скорректированного сигнала.

foffset2 = wlanFineCFOEstimate(rxltf1,cbw)
foffset2 = -11.0795

Скорректированное смещение сигнала уменьшается с 2000 Гц до приблизительно 7 Гц.

Исправить для оставшегося смещения.

rxSigCorr2 = pfOffset(rxSigCorr1,-foffset2);

Определите сдвиг частоты дважды скорректированного сигнала.

rxltf2 = rxSigCorr2(iltf(1):iltf(2),:);
deltaFreq = wlanFineCFOEstimate(rxltf2,cbw)
deltaFreq = -2.0700e-11

Финансовый директор равен нулю.

Входные аргументы

свернуть все

Принятые выборки L-STF, указанные как матрица комплексных значений размера NS-by-NR. NS - количество выборок в L-STF, а NR - количество приемных антенн.

Примечание

Если количество выборок на этом входе больше, чем количество выборок в L-STF, функция оценивает финансового директора, используя только первые выборки NS.

Типы данных: single | double
Поддержка комплексного номера: Да

Полоса пропускания канала в МГц, заданная как одно из этих значений.

  • 'CBW5' - Полоса пропускания канала 5 МГц

  • 'CBW10' - Полоса пропускания канала 10 МГц

  • 'CBW20' - Полоса пропускания канала 20 МГц

  • 'CBW40' - Полоса пропускания канала 40 МГц

  • 'CBW80' - Полоса пропускания канала 80 МГц

  • 'CBW160' - Полоса пропускания канала 160 МГц

Типы данных: char | string

Смещение корреляции как доля короткого обучающего символа, заданного как скаляр в интервале [0, 1]. Длительность короткого обучающего символа зависит от полосы пропускания. Дополнительные сведения см. в разделе L-STF.

Типы данных: single | double

Выходные аргументы

свернуть все

Сдвиг частоты в Гц, возвращаемый как скаляр с действительными значениями. Функция может оценить максимальный финансовый директор в 625 кГц или в два раза больше интервала между поднесущими.

Типы данных: double

Подробнее

свернуть все

L-STF

Наследие короткая учебная область (L-STF) является первой областью 802.11™ устаревшая преамбула OFDM PLCP. L-STF является компонентом VHT, HT и не-HT PPDU.

Длительность L-STF изменяется в зависимости от полосы пропускания канала.

Полоса пропускания канала (МГц)Частотный интервал поднесущей, ΔF (кГц)Период быстрого преобразования Фурье (FFT) (TFFT  =   1/ΔF)Длительность L-STF (TSHORT  = 10 × TFFT/4  )
20, 40, 80 и 160312.53,2 мкс8 мкс
10156.256,4 мкс16 мкс
578.12512,8 мкс32 мкс

Поскольку последовательность имеет хорошие корреляционные свойства, она используется для обнаружения начала пакета, для грубой коррекции частоты и для установки АРУ. Последовательность использует 12 из 52 поднесущих, которые доступны на сегмент полосы пропускания канала 20 МГц. Для полос пропускания 5 МГц, 10 МГц и 20 МГц число сегментов полос пропускания канала равно 1.

Ссылки

[1] IEEE Std 802.11™-2016 (версия IEEE Std 802.11-2012). «Часть 11: Спецификации управления доступом к среде беспроводной локальной сети (MAC) и физического уровня (PHY)». Стандарт IEEE для информационных технологий - Телекоммуникации и обмен информацией между системами - Локальные и городские сети - Особые требования.

[2] Ли, Цзянь. «Оценка смещения несущей частоты для WLAN на основе OFDM». Письма обработки сигналов IEEE. Том 8, выпуск 3, Мар 2001, стр. 80-82.

[3] Moose, P.H. «Метод коррекции сдвига частоты с ортогональным частотным разделением». Транзакции IEEE по коммуникациям. Том 42, выпуск 10, окт. 1994, стр. 2908-2914.

[4] Перахия, Э. и Р. Стейси. Беспроводные локальные сети следующего поколения: 802.11n и 802.11ac. 2-е издание. Великобритания: Cambridge University Press, 2013.

Расширенные возможности

Создание кода C/C + +
Создайте код C и C++ с помощью MATLAB ® Coder™

.
Представлен в R2015b

[1] IEEE ® Std 802.11-2012 Адаптирован и переиздан с разрешения IEEE. Авторское право IEEE 2012. Все права защищены.