exponenta event banner

Анализ гармонического баланса бюджета РФ приемника с низким ПЧ, IP2 и NF

В этом примере показано, как использовать решатель гармонического баланса объекта rfbudget для анализа РЧ-бюджета приемника с низким ПЧ (промежуточной частотой) для точки перехвата второго порядка (IP2), точки перехвата второго порядка и для вычисления более точного показателя шума (NF), который правильно учитывает нелинейность системы и складывание шума.

Использовать amplifier и modulator объекты для построения 2-портовых радиочастотных элементов в конструкции приемника с низким ПЧ вместе с их выходными спецификациями точки перехвата второго порядка (OIP2). Можно отключить отбраковку идеального изображения по умолчанию и фильтрацию выбора канала в модуляторе с помощью ImageReject и ChannelSelect логические пары имя-значение.

Вычисление результатов бюджета RF путем каскадирования элементов в систему RF с помощью rfbudget. Объект rfbudget позволяет исследовать и визуализировать проект в командной строке MATLAB. Он также позволяет автоматически создавать модели RF Blockset и средства тестирования измерений.

a1 = amplifier('Name','RFAmplifier', ...
    'Gain',11.53, ...
    'NF',1.53, ...
    'OIP2',35);

d = modulator('Name','Demodulator', ...
    'Gain',-6, ...
    'NF',4, ...
    'OIP2',50, ...
    'LO',2.03e9, ...
    'ConverterType','Down', ...
    'ImageReject',false, ...
    'ChannelSelect',false);

a2 = amplifier('Name','IFAmplifier', ...
    'Gain',30, ...
    'NF',8, ...
    'OIP2',37);

b = rfbudget('Elements',[a1 d a2], ...
    'InputFrequency',2.1e9, ...
    'AvailableInputPower',-30, ...
    'SignalBandwidth',45e6)
b = 
  rfbudget with properties:

               Elements: [1x3 rf.internal.rfbudget.RFElement]
         InputFrequency: 2.1 GHz
    AvailableInputPower: -30 dBm
        SignalBandwidth:  45 MHz
                 Solver: Friis      
             AutoUpdate: true

   Analysis Results
        OutputFrequency: (GHz) [   2.1    0.07   0.07]
            OutputPower: (dBm) [-18.47  -24.47   5.53]
         TransducerGain: (dB)  [ 11.53    5.53  35.53]
                     NF: (dB)  [  1.53   1.843  4.793]
                   IIP2: (dBm) []                     
                   OIP2: (dBm) []                     
                   IIP3: (dBm) [   Inf     Inf    Inf]
                   OIP3: (dBm) [   Inf     Inf    Inf]
                    SNR: (dB)  [ 65.91    65.6  62.65]

Почему OIP2 и IIP2 пусты в результатах?

Дефолт Solver свойство объекта rfbudget - «Friis», эквивалентное приближение основной полосы частот, которое не может вычислить IP2. Для просмотра результатов IP2 можно установить Solver свойство объекта бюджета для HarmonicBalance. При этом выполняется нелинейный анализ цепи для вычисления установившейся рабочей точки, по которой можно вычислить IP2.

Можно также выбрать решатель «HarmonicBalance» во время построения бюджета, передав Solver пара имя-значение после других аргументов пара позиция или имя-значение, например

b = rfbudget([a1 d a2],2.1e9,-30,45e6,'Solver','HarmonicBalance')

В общем случае решатель 'HarmonicBalance' не так быстр, как решатель 'Friis', и не вычисляет показатель шума (NF) или отношение сигнал/шум (SNR).

b.Solver = 'HarmonicBalance'
b = 
  rfbudget with properties:

               Elements: [1x3 rf.internal.rfbudget.RFElement]
         InputFrequency: 2.1 GHz
    AvailableInputPower: -30 dBm
        SignalBandwidth:  45 MHz
                 Solver: HarmonicBalance
                WaitBar: true
             AutoUpdate: true

   Analysis Results
        OutputFrequency: (GHz) [   2.1    0.07    0.07]
            OutputPower: (dBm) [-18.47  -24.47    5.53]
         TransducerGain: (dB)  [ 11.53    5.53   35.53]
                     NF: (dB)  [  1.53     4.7   6.487]
                   IIP2: (dBm) [ 23.47   44.47  -4.581]
                   OIP2: (dBm) [    35      50   30.95]
                   IIP3: (dBm) [   Inf     Inf   19.45]
                   OIP3: (dBm) [   Inf     Inf   54.98]
                    SNR: (dB)  [ 65.91   62.74   60.96]

На приведенном выше дисплее бюджета показаны результаты каскада, вычисленного решателем HarmonicBalance. Сравнивая их с результатами «Friis», хорошо совпадают свойства вектора, показывающие OutputPower и ForcedGain вдоль каскада.

Как и ожидалось, свойства OIP2 и IIP2 имеют непустые значения. Кроме того, свойства выходной точки перехвата третьего порядка (OIP3) и входной точки перехвата третьего порядка (IIP3) изменились. Решатель «Фрииса» не может захватить нелинейное кровотечение через IP2 свойства каскада, чтобы повлиять на точку перехвата третьего порядка. Математически это происходит потому, что каскадирование двух многочленов второго порядка приводит к многочлену с членом третьего порядка.

Аналогично, результаты NF гармонического баланса отличаются (и более точны) от результатов Фрииса, потому что гармонический баланс правильно фиксирует эффекты шумов нелинейности.

Проверка результатов HB с помощью моделирования оболочки цепи радиочастотного блока

Результаты гармонического баланса NF, IP2 и IP3 можно проверить путем экспорта бюджета в модель RF Blockset testbench с помощью следующей команды:

exportTestbench(b)

Для проверки NF дважды щелкните RF Measurement Unit, чтобы открыть маску, затем выберите NF из выпадающего списка Measured quantity. Затем запустите модель. При этом проверяется расчет NF гармонического баланса.

Чтобы проверить IP2, дважды щелкните RF Measurement Unit, чтобы открыть маску, а затем выберите IP2 из выпадающего списка Measured quantity.

Также снимите флажок Имитировать шум (Simulate noise). Затем запустите модель.

Чтобы проверить IP3, выберите IP3 из выпадающего списка Измеренное количество (Measured quantity) и снова запустите модель.

Проверка результатов HB с помощью гармонического баланса RF Blockset

Вместо того, чтобы использовать большой механизм оболочки цепи и RF Testbench, можно построить более простую модель, которая вычисляет IP2 и IP3, используя два тона и гармонический баланс. Открытие модели oipHB.slx находится в папке MATLAB/Examples. Моделирование модели.

Связанные темы