Вычисления отношения мощности соседнего канала (ACPR) (также известные как отношение утечки соседнего канала (ACLR)) характеризуют повторный рост спектра в компоненте системы связи, таком как модулятор или аналоговый внешний интерфейс. Нелинейность усилителя вызывает повторный рост спектра. Вычисления ACPR определяют вероятность того, что данная система вызывает помехи со смежным каналом.
Многие стандарты передачи, такие как IS-95, CDMA, WCDMA, 802.11 и Bluetooth, содержат определение для измерений ACPR. Большинство стандартов определяют измерения ACPR как отношение средней мощности в основном канале и любых смежных каналах. Частоты смещения и полосы пропускания измерений (BW), используемые при получении измерений, зависят от конкретного используемого отраслевого стандарта. Например, измерения для МДКР усилителей включают два смещения (от несущей частоты) 885 кГц и 1,98 МГц и измерение BW 30 кГц.
Дополнительные сведения см. в разделе comm.ACPR страница справки.
Коммуникационный Toolbox™ содержит comm.ACPR object™ системы. В данном учебном пособии измерения ACPR выполняются с использованием сигнала связи WCDMA в соответствии со стандартом 3GPP™ TS 125.104.
В этом примере используются сигналы выборки WCDMA основной полосы на входе и выходе нелинейного усилителя. Файл WCDMASignal.mat содержит примеры данных для использования в учебном пособии. Этот файл делит данные на 25 снимков сигналов по 7e3 выборки каждый и сохраняет их в столбцах матриц данных, dataBeforeAmplifier и dataAfterAmplifier.
Спецификация WCDMA требует, чтобы все измерения проводились с частотой дискретизации 3,84 МГц.
Определите частоту дискретизации, загрузите файл WCDMA и получите данные, введя в командной строке MATLAB ® следующее:
% System sampling frequency, 3.84 MHz chip rate, 8 samples per chip SampleRate = 3.84e6*8; load WCDMASignal.mat % Use the first signal snapshot txSignalBeforeAmplifier = dataBeforeAmplifier(:,1); txSignalAfterAmplifier = dataAfterAmplifier(:,1);
Создайте объект comm.ACPR System и укажите частоту дискретизации.
hACPR = comm.ACPR('SampleRate',SampleRate)
Объект System содержит следующую информацию:
NormalizedFrequency: false
SampleRate: 30720000
MainChannelFrequency: 0
MainMeasurementBandwidth: 50000
AdjacentChannelOffset: [-100000 100000]
AdjacentMeasurementBandwidth: 50000
MeasurementFilterSource: 'None'
SpectralEstimation: 'Auto'
FFTLength: 'Next power of 2'
MaxHold: false
PowerUnits: 'dBm'
MainChannelPowerOutputPort: false
AdjacentChannelPowerOutputPort: false Укажите центральную частоту основного канала и ширину полосы измерения.
Укажите центральную частоту основного канала с помощью MainChannelFrequency собственность. Затем укажите полосу пропускания измерения основного канала с помощью MainMeasurementBandwidth собственность.
Для используемых данных основной полосы частот центральная частота основного канала равна 0 Гц. Стандарт WCDMA определяет, что мощность основного канала достигается с помощью 3.84-MHz полосы пропускания измерения. Укажите их, введя следующее.
hACPR.MainChannelFrequency = 0; hACPR.MainMeasurementBandwidth = 3.84e6;
Укажите смещения соседних каналов и полосы пропускания измерений.
Стандарт WCDMA определяет пределы ACPR для четырех смежных каналов, расположенных на расстоянии 5, -5, 10, -10 МГц от центральной частоты основного канала. Во всех случаях питание соседних каналов обеспечивается с использованием 3.84-MHz полосы пропускания. Задайте смещения соседних каналов и полосы пропускания измерений с помощью AdjacentChannelOffset и AdjacentMeasurementBandwidth свойства.
hACPR.AdjacentChannelOffset = [-10 -5 5 10]*1e6; hACPR.AdjacentMeasurementBandwidth = 3.84e6;
Обратите внимание, что если полосы пропускания измерений для всех смежных каналов равны, задается скалярное значение. Если полосы пропускания измерения отличаются, задается вектор полос пропускания измерения длиной, равной длине вектора смещения.
Установите MainChannelPowerOutputPort и AdjacentChannelPowerOutputPort свойства для true путем ввода следующего в командной строке MATLAB:
hACPR.MainChannelPowerOutputPort = true hACPR.AdjacentChannelPowerOutputPort = true
Создать comm.ACPR Системный объект для измерения выхода усилителя.
hACPRoutput = clone(hACPR);
Для получения результатов измерений ACPR вызовите step способ comm.ACPR. Можно также получить измерения мощности для основного и смежных каналов. PowerUnits свойство определяет единицу измерения. Значение свойства по умолчанию равно дБм (отношение мощности к одному милливатту (мВт)).
Получите результаты измерений ACPR на входе усилителя:
[ACPR mainChannelPower adjChannelPower] = hACPR(txSignalBeforeAmplifier);
comm.ACPR Системный объект выдает следующие выходные данные измерений:
ACPR = -68.6668 -54.9002 -55.0653 -68.4604 mainChannelPower = 29.5190 adjChannelPower = -39.1477 -25.3812 -25.5463 -38.9414
Получите результаты измерений ACPR на выходе усилителя:
[ACPR mainChannelPower adjChannelPower] = hACPRoutput(txSignalAfterAmplifier)
comm.ACPR Системный объект выдает следующие входные данные измерений:
ACPR = -42.1625 -27.0912 -26.8785 -42.4915 mainChannelPower = 40.6725 adjChannelPower = -1.4899 13.5813 13.7941 -1.8190
Обратите внимание на увеличение значений ACPR на выходе усилителя. Это увеличение отражает искажения из-за нелинейности усилителя. Стандарт WCDMA указывает, что значения ACPR должны быть ниже -45 дБ при смещениях +/- 5 МГц и ниже -50 дБ при смещениях +/- 10 МГц. В этом примере сигнал на входе усилителя соответствует спецификациям, а сигнал на выходе усилителя - нет.
Стандарт WCDMA определяет, что измерения ACPR получаются с помощью корневого косинусного фильтра. Также указывается, что мощность основного канала и мощность соседнего канала измеряются с помощью согласованного фильтра RRC с коэффициентом отката 0.22. Фильтр измерения задается с помощью MeasurementFilter собственность. Значение этого свойства по умолчанию - фильтр всех частот с единичным коэффициентом усиления.
Фильтр должен быть фильтром FIR, а его отклик должен центрироваться на частоте 0 Гц. Объект ACPR автоматически сдвигает и применяет фильтр в каждом из указанных основного и смежных диапазонов каналов. (Измерение мощности по-прежнему находится в пределах диапазонов, определенных MainMeasurementBandwidth, и AdjacentMeasurementBandwidth свойства.)
Файл WCDMASignal.mat содержит данные, полученные с помощью 96-отводного фильтра с коэффициентом отката 0,22.
Создание фильтра (с помощью rcosdesign, из программного обеспечения обработки сигналов Toolbox™ Signal Processing) и получения результатов измерений путем ввода в командной строке MATLAB:
% Scale for 0 dB passband gain
measFilt = rcosdesign(0.22,16,8)/sqrt(8); Задайте фильтр, созданный на предыдущем шаге, в качестве фильтра измерения для объекта ACPR.
release(hACPR);
hACPR.MeasurementFilterSource = 'Property';
hACPR.MeasurementFilter = measFilt;
Реализовать тот же фильтр на выходе усилителя путем клонирования comm.ACPR Системный объект.
hACPRoutput = clone(hACPR)
Получайте измерения мощности ACPR на входе усилителя.
ACPR = hACPR(txSignalBeforeAmplifier)
comm.ACPR Системный объект выдает следующие данные измерений:
ACPR = -71.4648 -55.5514 -55.9476 -71.3909
Получайте измерения мощности ACPR на выходе усилителя.
ACPRoutput = hACPRoutput(txSignalAfterAmplifier)
comm.ACPR Системный объект выдает следующие данные измерений:
ACPR = -42.2364 -27.2242 -27.0748 -42.5810
По умолчанию объект ACPR измеряет мощность с использованием спектрального оценщика мощности Welch с окном Хэмминга и нулевым процентным перекрытием. Объект использует прямоугольное приближение интеграла для оценок спектральной плотности мощности в интересующей полосе частот измерения. Если для параметра SpectralEstimateOption задано значение «User defined», становится доступным несколько свойств, обеспечивающих управление разрешением, дисперсией и динамическим диапазоном спектральных оценок.
Включите свойства SegiveLength, PercentPercent и WindowOption, введя в командной строке MATLAB следующее:
release(hACPRoutput)
hACPRoutput.SpectralEstimation = 'Specify window parameters'Это изменение позволяет настраивать спектральные оценки для получения измерений мощности. Например, можно установить длину сегмента спектральной оценки 1024 и увеличить процент перекрытия до 50%, уменьшив последующее увеличение дисперсии. Можно также выбрать окно с большим затуханием боковых лепестков (по сравнению с окном Хэмминга по умолчанию).
Создайте спектральный оценщик с окном «Чебышева» и затуханием боковых лепестков 200 дБ.
hACPRoutput.SegmentLength = 1024; hACPRoutput.OverlapPercentage = 50; % Choosing a Chebyshev window enables a SidelobeAtten property % you can use to set the side lobe attenuation of the window. hACPRoutput.Window = 'Chebyshev'; hACPRoutput.SidelobeAttenuation = 200;
Запустите объект для получения измерений мощности ACPR на выходе усилителя.
ACPRoutput = hACPRoutput(txSignalAfterAmplifier)
Объект ACPR создает следующие данные измерений:
ACPR = -44.9399 -30.7136 -30.7670 -44.4450
В некоторых стандартах связи при вычислении значений ACPR используются измерения мощности спектра максимального удержания. Такие вычисления сравнивают текущую оценку вектора спектральной плотности мощности с предыдущей оценкой вектора накопленной спектральной плотности мощности с максимальным удержанием. При получении измерений max-hold объект получает оценку вектора спектральной плотности мощности с использованием текущих входных данных. Он получает предыдущий вектор спектральной плотности накопленной мощности с максимальным удержанием из предыдущего вызова объекта. Объект использует максимальные значения на каждом частотном блоке для вычисления средних измерений мощности. Вызов метода сброса очищает спектр максимального удержания.
Накапливайте спектры max-hold для снимков выходных данных усилителя 25 и получайте измерения ACPR, вводя в командной строке MATLAB следующее:
for idx = 1:24 hACPRoutput(dataAfterAmplifier(:,idx)); end ACPRoutput = hACPRoutput(dataAfterAmplifier(:,25))
Объект ACPR создает следующие выходные данные:
ACPR = -43.1123 -26.6964 -27.0009 -42.4803
Программное обеспечение MATLAB используется для построения графика спектральной плотности мощности сигналов WCDMA на входе и выходе нелинейного усилителя. График позволяет визуализировать эффекты спектрального повторного роста, присущие нелинейности усилителя. Обратите внимание, как измерения отражают повторный рост спектра. (Примечание: следующий код предназначен только для визуализации спектров сигнала; это не имеет ничего общего с получением измерений ACPR).
win = hamming(1024); [PSD1,F] = pwelch(txSignalBeforeAmplifier,win,50,1024,SampleRate,'centered'); [PSD2,F] = pwelch(txSignalAfterAmplifier,win,50,1024,SampleRate,'centered'); plot(F,10*log10(PSD1)) hold on grid on plot(F,10*log10(PSD2),'g') legend('Amplifier input', 'Amplifier output')
