Этот пример показывает, как отношение мощности утечки в соседнем канале (ACLR) может быть измерено в сигнале опорного измерительного канала нисходящей линии связи (RMC) с использованием Toolbox™ LTE.
В этом примере выполняются измерения коэффициента мощности утечки в соседних каналах (ACLR) в соответствии с TS36.104, раздел 6.6.2 [1] для формы сигнала нисходящей линии связи. ACLR используется как мера величины мощности, просачивающейся в соседние каналы, и определяется как отношение отфильтрованной средней мощности, центрированной на назначенной частоте канала, к отфильтрованной средней мощности, центрированной на частоте соседнего канала. Минимальные требования к соответствию ACLR приведены для несущих E-UTRA (LTE) и несущих UTRA (W-CDMA).
Пример структурирован следующим образом:
Форма сигнала нисходящей линии связи генерируется с использованием конфигурации опорного канала измерения (RMC).
Параметры для измерений ACLR вычисляются, включая требуемую скорость избыточной дискретизации, чтобы гарантировать, что сигнал может представлять как E-UTRA, так и UTRA 1-й и 2-й соседних несущих с пропускной способностью не более 85%
При необходимости происходит избыточная выборка формы сигнала.
E-UTRA ACLR вычисляется с помощью квадратного измерительного фильтра
UTRA ACLR вычисляется с использованием корневого фильтра Raise Cosine (RRC).
Отображаются измерения ACLR
RMC нисходящей линии связи используется для измерения ACLR и создается с использованием lteRMCDL и lteRMCDLTool.
% Generate the downlink configuration structure for RMC R.6 cfg = lteRMCDL('R.6'); % Generate the waveform which is a T-by-P matrix where T is the number of % time-domain samples and P is the number of receive antennas [waveform, ~, info] = lteRMCDLTool(cfg, [1; 0; 0; 1]); % Write the sampling rate and chip rate to the configuration structure to % allow the calculation of ACLR parameters cfg.SamplingRate = info.SamplingRate; cfg.UTRAChipRate = 3.84; % UTRA chip rate in MCPS
Параметры, необходимые для измерения ACLR, рассчитываются с помощью вспомогательной функции hACLRParameters.m.
Определение требуемой избыточной выборки. Если частота дискретизации формы входного сигнала (cfg.SamplingRate) недостаточно для охвата всей полосы пропускания (aclr.BandwidthACLR) соседних каналов (допускающих максимум 85% занятости полосы пропускания), для вычислений ACLR должна использоваться более дискретизированная версия формы сигнала. aclr.OSR - коэффициент повышения дискретизации.
Определение параметров UTRA; скорости и полосы пропускания элементарных посылок.
% Calculate ACLR measurement parameters
[aclr, nRC, R_C, BWUTRA] = hACLRParameters(cfg);
Генерируемый выше сигнал не имеет фильтрации, поэтому существуют значительные внеполосные спектральные излучения вследствие неявного формирования прямоугольных импульсов в OFDM-модуляции (каждая OFDM-поднесущая имеет форму sinc в частотной области). Для достижения хороших характеристик ACLR к форме сигнала должна применяться фильтрация. Фильтр разработан с переходной полосой, которая начинается на границе занятой полосы пропускания передачи (aclr.BandwidthConfig) и останавливается на краю общей полосы пропускания канала (aclr.Bandwidth). Этот фильтр не включает изменения скорости, он просто формирует спектр в пределах исходной полосы частот сигнала. Фильтр сначала проектируется, а затем прикладывается к форме сигнала.
% Design filter firFilter = dsp.LowpassFilter(); firFilter.SampleRate = info.SamplingRate; firFilter.PassbandFrequency = aclr.BandwidthConfig/2; firFilter.StopbandFrequency = aclr.Bandwidth/2; % Apply filter waveform = firFilter(waveform);
ACLR для E-UTRA и UTRA измеряется с использованием двух вспомогательных функций:
hACLRMeasedEUTRA.m измеряет E-UTRA ACLR с помощью квадратного окна на соседних каналах. Берется ДПФ измерительного сигнала и энергия соответствующих бункеров, используемых для вычисления мощности соседнего канала.
hACLRMeasurementUTRA.m измеряет UTRA ACLR, используя фильтр RRC на смежных каналах с фактором спада 0,22 и пропускная способность, равная уровню чипа.
% Apply required oversampling resampled = resample(waveform,aclr.OSR,1); % Calculate E-UTRA ACLR aclr = hACLRMeasurementEUTRA(aclr, resampled); % Calculate UTRA ACLR aclr = hACLRMeasurementUTRA(aclr, resampled, nRC, R_C, BWUTRA);
Результаты ACLR возвращаются в структуре aclr. aclr содержит поля:
Bandwidth : Полоса пропускания канала, связанная с cfg.NDLRB или cfg.NULRB, в Герце. Это общая полоса пропускания назначенного канала.
BandwidthConfig : Конфигурация полосы пропускания передачи, связанная с cfg.NDLRB или cfg.NULRB, в Герце. Это полоса пропускания в пределах полосы пропускания канала, которая содержит активные поднесущие.
BandwidthACLR Полоса пропускания, необходимая для представления 1-й и 2-й смежных несущих E-UTRA и UTRA; частота дискретизации, используемая внутри для измерений ACLR, будет поддерживать эту полосу пропускания с заполненностью не более 85% полосы пропускания.
OSR : Целочисленный коэффициент избыточной дискретизации входного сигнала waveform требуется для создания сигнала, способного представлять как E-UTRA, так и UTRA 1-ю и 2-ю смежные несущие, т.е. представлять aclr.BandwidthACLR с пропускной способностью не более 85%.
SamplingRate Частота дискретизации внутреннего измерительного сигнала, на основе которого рассчитывается ACLR. Если OSR=1этот сигнал является входной формой сигнала; если OSR>1, этот сигнал является входной формой сигнала, увеличенной на OSR. Поэтому: aclr.SamplingRate = OSR*cfg.SamplingRate.
EUTRAPowerdBm Мощность в децибелах относительно 1mW в 1 Ом входного сигнала в представляющем интерес канале E-UTRA, т.е. в квадратном фильтре полосы пропускания aclr.BandwidthConfig с центром на 0Hz.
EUTRAdB Вектор E-UTRA ACLR, в децибелах относительно aclr.EUTRAPowerdBm, измеренное для соседних каналов [-2, -1, 1, 2].
EUTRACenterFreqВектор центральных частот E-UTRA в Герце для смежных каналов [-2, -1, 1, 2].
UTRAPowerdBm Вектор мощностей в децибелах относительно 1mW в 1 Ом входного сигнала в представляющем интерес канале UTRA; каждый элемент вектора соответствует каждой из сконфигурированных скоростей передачи элементарных посылок UTRA, т.е. UTRAPowerdBm(i) дает мощность входа в RRC-фильтр, предназначенный для R=cfg.UTRAChipRate(i) Чипс/с, alpha=0.22с центром на частоте 0 Гц.
UTRAdB : Матрица ACLR UTRA, в децибелах относительно aclr.EUTRAPowerdBm. В столбцах приводятся значения для соседних каналов [-2, -1, 1, 2], а в строках - значения для каждой из сконфигурированных скоростей передачи чипов UTRA. Обратите внимание, что в соответствии с требованиями стандарта эти ACLR относятся к aclr.EUTRAPowerdBm, не aclr.UTRAPowerdBm.
UTRACenterFreq : Матрица центральных частот UTRA, в Герце. В столбцах приводятся значения для соседних каналов [-2, -1, 1, 2], а в строках - значения для каждой из сконфигурированных скоростей передачи чипов UTRA.
hACLRResults.m отображает ACLR и строит графики мощности соседних каналов. В соответствии с TS 36.104 Таблица 6.6.2.1-1 [1] минимальный требуемый ACLR для базовой станции в парном спектре составляет 45 дБ. Поскольку результаты ACLR превышают 45 дБ, они соответствуют требованиям.
minACLR = 45; hACLRResults(aclr,minACLR);
Bandwidth: 5000000
BandwidthConfig: 4500000
BandwidthACLR: 25000000
OSR: 4
SamplingRate: 30720000
EUTRACenterFreq: [-10000000 -5000000 5000000 10000000]
EUTRAPowerdBm: -0.5918
EUTRAdB: [79.2357 72.1187 72.2046 79.2157]
UTRAPowerdBm: -1.3397
UTRAdB: [80.3117 72.5323 72.5011 80.3540]
UTRACenterFreq: [-10000000 -5000000 5000000 10000000]


Спектр формы сигнала отображается вместе со спектральной маской передачи, определенной в TS 36.104. В этом примере предполагается, что форма сигнала соответствует BS среднего диапазона, как описано в таблице 6.2-1 TS 36.104, и мощность устанавливается равной 38.0dBm (~ 21,5 дБм/100 кГц). Соответствующей спектральной маске предоставляют в таблице 6.6.3.2C-5 TS 36.104 «БАКАЛАВРА НАУК среднего диапазона операционную группу нежелательные пределы эмиссии для 5, 10, пропускная способность канала на 15 и 20 МГц, 31 <P_max, c <= 38dBm».
% Adjust waveform power to maximum rated output power P_max = 38.0; % TS 36.104 Table 6.2-1 bsWaveform = resampled * 10^((P_max-aclr.EUTRAPowerdBm)/20); % Create a spectrum analyzer, configure it for the waveform sampling rate % and a resolution bandwidth of 100kHz, configure and display the spectral % mask in TS 36.104 Table 6.6.3.2C-5, and perform spectrum analysis of the % waveform rbw = 100e3; % resolution bandwidth vbw = 30e3; % video bandwidth spectrumAnalyzer = dsp.SpectrumAnalyzer; spectrumAnalyzer.Name = 'Operating Band Unwanted Emissions'; spectrumAnalyzer.Title = spectrumAnalyzer.Name; spectrumAnalyzer.SampleRate = info.SamplingRate * aclr.OSR; spectrumAnalyzer.RBWSource = 'Property'; spectrumAnalyzer.RBW = rbw; spectrumAnalyzer.AveragingMethod = 'Exponential'; spectrumAnalyzer.ForgettingFactor = hvbw2ff(vbw,spectrumAnalyzer.SampleRate); spectrumAnalyzer.ShowLegend = true; spectrumAnalyzer.ChannelNames = {'Transmit waveform'}; spectrumAnalyzer.YLimits = [-120 40]; % "Frequency offset of measurement filter center frequency" in table f_offset = [0.05; 5.05; 10.05; 10.05] * 1e6; % "Minimum requirement" in table (dBm/100kHz) mask_power = [(P_max-53); (P_max-60)*[1; 1]; min(P_max-60,-25)*[1; 1];]; % Add vertical mask segment at the band edge; no particular in-band power % mask is required to be met for this test f_offset = [repmat(f_offset(1),2,1); f_offset]; mask_power = [NaN; spectrumAnalyzer.YLimits(2); mask_power]; % Extend mask to analysis bandwidth edge, assumed to be closer to the edge % frequency of the carrier of interest than f_offset_max (the offset to the % frequency 10MHz outside the downlink operating band) mask_freq = [f_offset + aclr.Bandwidth/2; spectrumAnalyzer.SampleRate/2]; % Add a mirrored version of the mask to cover negative frequencies, and % enable the mask mask_power = [flipud(mask_power); mask_power]; mask_freq = [-flipud(mask_freq); (mask_freq)]; spectrumAnalyzer.SpectralMask.EnabledMasks = 'Upper'; spectrumAnalyzer.SpectralMask.UpperMask = [mask_freq, mask_power]; % Perform spectrum analysis spectrumAnalyzer(bsWaveform);

Наконец, форма сигнала понижается и повторно синхронизируется, и выполняется измерение EVM. Дополнительные сведения о выполнении измерений EVM см. в разделе Измерение величины вектора ошибок PDSCH (EVM). Согласно TS 36.104 Таблица 6.5.2-1 [1], максимальное значение EVM при 64QAM созвездия составляет 8%. Поскольку общий показатель EVM, составляющий около 0,78%, ниже 8%, это измерение соответствует требованиям.
downsampled = resample(resampled,1,aclr.OSR); offset = lteDLFrameOffset(cfg,downsampled,'TestEVM'); cec.PilotAverage = 'TestEVM'; evmsettings.EnablePlotting = 'Off'; evm = hPDSCHEVM(cfg,cec,downsampled(1+offset:end,:),evmsettings);
Low edge EVM, subframe 0: 0.741% High edge EVM, subframe 0: 0.707% Low edge EVM, subframe 1: 0.885% High edge EVM, subframe 1: 0.789% Low edge EVM, subframe 2: 0.785% High edge EVM, subframe 2: 0.699% Low edge EVM, subframe 3: 0.698% High edge EVM, subframe 3: 0.667% Low edge EVM, subframe 4: 0.817% High edge EVM, subframe 4: 0.640% Low edge EVM, subframe 6: 0.840% High edge EVM, subframe 6: 0.747% Low edge EVM, subframe 7: 0.732% High edge EVM, subframe 7: 0.696% Low edge EVM, subframe 8: 0.742% High edge EVM, subframe 8: 0.745% Averaged overall EVM: 0.783%
Можно изменить части этого примера для расчета ACLR (согласно TS36.101, раздел 6.6.2.3 [2]) для восходящего канала с помощью lteRMCUL вместо lteRMCDL для формирования формы сигнала.
В этом примере используются следующие вспомогательные функции:
3GPP TS 36.104 «Радиопередача и прием базовой станции (BS)»
3GPP ТС 36.101 «Радиопередача и прием пользовательского оборудования (UE)»