Вычисления коэффициента степени смежного канала (ACPR) (также известный как коэффициент утечки смежного канала (ACLR)), характеризуют spectral regrowth в компоненте коммуникационной системы, таком как модулятор или аналоговый передний конец. Нелинейность усилителя вызывает спектральное возрождение. Вычисления ACPR определяют вероятность того, что данная система вызывает помехи смежному каналу.
Многие стандарты передачи, такие как IS-95, CDMA, WCDMA, 802.11 и Bluetooth, содержат определение для измерений ACPR. Большинство стандартов определяют измерения ACPR как отношение средней степени в основном канале и любых смежных каналах. Частоты смещения и полосы пропускания измерения (BW), которые вы используете при получении измерений, зависят от того, какой конкретный промышленный стандарт вы используете. Для образца измерения для усилителей CDMA включают два смещения (от несущей частоты) 885 кГц и 1,98 МГц и измерение BW 30 кГц.
Для получения дополнительной информации смотрите comm.ACPR
страница справки.
Communications 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 и укажите частоту дискретизации.
hACPR = comm.ACPR('SampleRate',SampleRate)
Системный объект предоставляет следующую информацию:
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
. Можно также получить измерения мощности для основного и смежных каналов. The PowerUnits
свойство задает модуль измерения. Значение свойства по умолчанию равняется дБм (степень, ссылка на одно милливатт (мВт)).
Получите измерения ACPR на входе усилителя:
[ACPR mainChannelPower adjChannelPower] = hACPR(txSignalBeforeAmplifier);
The 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)
The 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
свойство. Это значение свойства по умолчанию присваивается полнопроходному фильтру с коэффициентом усиления единицы.
Фильтр должен быть конечная импульсная характеристика, а его реакция должна центрироваться на 0 Гц. Объект ACPR автоматически смещается и применяет фильтр в каждом из заданных основных и смежных полос каналов. (Измерение мощности все еще находится в диапазонах, заданных MainMeasurementBandwidth
, и AdjacentMeasurementBandwidth
свойства.)
Файл WCDMASignal.mat содержит данные, которые были получены с помощью фильтра касания 96 с коэффициентом срабатывания 0,22.
Создайте фильтр (используя rcosdesign
, из Signal Processing Toolbox™ программное обеспечение) и получить измерения путем ввода следующего в командной строке 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)
The comm.ACPR
Системный объект генерирует следующие данные измерений:
ACPR = -71.4648 -55.5514 -55.9476 -71.3909
Получите измерения мощности ACPR на выходе усилителя.
ACPRoutput = hACPRoutput(txSignalAfterAmplifier)
The comm.ACPR
Системный объект генерирует следующие данные измерений:
ACPR = -42.2364 -27.2242 -27.0748 -42.5810
По умолчанию объект ACPR измеряет степень, используя спектральную оценку степени Уэлча с окном Хэмминга и нулевым процентным перекрытием. Объект использует прямоугольное приближение интеграла для оценок спектральной плотности степени в интересующей полосе измерений. Если вы установите SpectralEstimatorOption на 'User defined', станут доступны несколько свойств, обеспечивающих вам управление разрешением, отклонением и динамической областью значений спектральных оценок.
Включите свойства SegmentLength, OverlapPercent и 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
Некоторые стандарты связи определяют использование измерений мощности спектра max-hold при вычислении значений ACPR. Такие вычисления сравнивают оценку вектора спектральной плотности степени тока с предыдущей оценкой вектора спектральной плотности накопленной степени с максимальным удержанием. При получении измерений max-hold объект получает оценку вектора спектральной плотности степени, используя входные данные тока. Он получает предыдущий вектор спектральной плотности степени max-hold, от предыдущего вызова объекта. Объект использует максимальные значения в каждом частотном интервале для вычисления средних измерений мощности. Вызов метода сброса очищает спектр 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')