Этот пример показывает, как использовать RF Blockset для измерения фигуры усиления и шума системы RF в заданной спектральной области значений.
Для примера требуется DSP System Toolbox™.
В этом примере описан способ измерения частотно-зависимых рисунков усиления и шума РЧ-системы. Эти спектральные свойства измеряются для двух систем RF; Один усилитель Low Noise и тот же усилитель при совпадении. Модель, используемая для измерения, показана ниже:
model = 'GainNoiseMeasurementExample';
open_system(model);
Модель имеет два модулей измерения, каждая из которых соединена с другой подсистемой, содержащей DUT. Верхний модуль измерения соединяется с несопоставленной LNA в подсистеме DUT с желтым фоном:
open_system([model '/DUT Unmatched']);
Нижний модуль измерения соединяется с согласованной LNA в подсистеме DUT с синим фоном:
open_system([model '/DUT Matched']);
Каждый модуль измерения выводит два векторных сигнала, представляющих спектры фигуры усиления и шума соответствующего DUT, и те, которые вводятся в два блока Array Plot (DSP System Toolbox), которые строят график вышеуказанных свойств по сравнению с частотой, сравнивая несопоставленные и согласованные системы DUT. В следующих разделах описан соответствующий процесс проекта сети, приведены результаты симуляции и сравнены с ожидаемыми от LNA и совпадающими свойствами сети. Наконец, поясняется процедура, используемая в единицах измерения для получения спектральных результатов Gain и Noise.
Совпадающая сеть, используемая в согласованной подсистеме DUT, содержит однокаскадную сеть L-C, которая спроектирована в соответствии с процедурой, описанной в примере RF Toolbox «Разработка совпадающих сетей для малошумящих усилителей». Поскольку LNA, используемая здесь, отличается, проект описывается ниже
Первоначально, an rfckt.amplifier
объект создан для представления малошумного усилителя на основе гетероъюнкции Биполярного Транзистора, заданного в файле 'RF _ HBT _ LNA.S2P'. Затем, circle
метод rfckt.amplifier
объект используется, чтобы поместить постоянное доступное усиление и окружности рисунка постоянного шума на график Смита и выбрать соответствующий коэффициент отражения источника, GammaS, который обеспечивает подходящий компромисс между усилением и шумом. Значение Гамма С, выбранное выражениями доступный коэффициент усиления Ga = 21 д Б и рисунком шума NF = 0,9 д Б на центральной частоте fc = 5,5 ГГ ц:
unmatched_amp = read(rfckt.amplifier, 'RF_HBT_LNA.S2P'); fc = 5.5e9; % Center frequency (Hz) circle(unmatched_amp,fc,'Stab','In','Stab','Out','Ga',15:2:25, ... 'NF',0.9:0.1:1.5); % Choose GammaS and show it on smith chart: hold on GammaS = 0.411*exp(1j*106.7*pi/180); plot(GammaS,'k.','MarkerSize',16) text(real(GammaS)+0.05,imag(GammaS)-0.05,'\Gamma_{S}','FontSize', 12, ... 'FontUnits','normalized') hLegend = legend('Location','SouthEast'); hLegend.String = hLegend.String(1:end-1); hold off
Для выбранного ГаммаС могут быть получены следующие свойства:
% Normalized source impedance: Zs = gamma2z(GammaS,1); % Matching |GammaL| that is equal to the complex conjugate of % |GammaOut| shown on the data tip: GammaL = 0.595*exp(1j*135.0*pi/180); % Normalized load impedance: Zl = gamma2z(GammaL,1);
Сеть согласования входа состоит из одного шунтирующего конденсатора, Cin, и одного последовательного индуктора, Lin. График Смита используется, чтобы найти значения компонентов. Для этого, постоянная окружность проводимости, которая пересекает центр графика Смита, и постоянная окружность сопротивления, которая пересекает GammaS
нанесены и найдены точки пересечения (Точка):
[~, hsm] = circle(unmatched_amp,fc,'G',1,'R',real(Zs)); hsm.Type = 'YZ'; % Choose GammaA and show points of interest on smith chart: hold on plot(GammaS,'k.','MarkerSize',16) text(real(GammaS)+0.05,imag(GammaS)-0.05,'\Gamma_{S}','FontSize', 12, ... 'FontUnits','normalized') plot(0,0,'k.','MarkerSize',16) GammaA = 0.384*exp(1j*(-112.6)*pi/180); plot(GammaA,'k.','MarkerSize',16) text(real(GammaA)+0.05,imag(GammaA)-0.05,'\Gamma_{A}','FontSize', 12, ... 'FontUnits','normalized') hLegend = legend('Location','SouthEast'); hLegend.String = hLegend.String(1:end-3); hold off
Используя выбранный GammaA, получаются входные компоненты сети, совпадающие с Cin и Lin:
% Obtain admittance Ya corresponding to GammaA: Za = gamma2z(GammaA,1); Ya = 1/Za; % Using Ya, find Cin and Lin: Cin = imag(Ya)/50/2/pi/fc Lin = (imag(Zs) - imag(Za))*50/2/pi/fc
Cin = 4.8145e-13 Lin = 1.5218e-09
Подобным образом получаются выходы совпадающие компоненты сети с помощью точек пересечения (Point) между постоянным кругом проводимости, который пересекает центр графика Смита, и постоянным кругом сопротивления, который пересекает GammaL
:
[hLine, hsm] = circle(unmatched_amp,fc,'G',1,'R',real(Zl)); hsm.Type = 'YZ'; % Choose GammaB and show points of interest on smith chart: hold on plot(GammaL,'k.','MarkerSize',16) text(real(GammaL)+0.05,imag(GammaL)-0.05,'\Gamma_{L}','FontSize', 12, ... 'FontUnits','normalized') plot(0,0,'k.','MarkerSize',16) GammaB = 0.612*exp(1j*(-127.8)*pi/180); plot(GammaB,'k.','MarkerSize',16) text(real(GammaB)+0.05,imag(GammaB)-0.05,'\Gamma_{B}','FontSize', 12, ... 'FontUnits','normalized') hLegend = legend('Location','SouthEast'); hLegend.String = hLegend.String(1:end-3); hold off
Используя выбранный GammaB, получаются входные совпадающие компоненты сети, Cout и Lout:
% Obtain admittance Yb corresponding to GammaB: Zb = gamma2z(GammaB, 1); Yb = 1/Zb; % Using Yb, find Cout and Lout: Cout = imag(Yb)/50/2/pi/fc
Cout = 8.9651e-13
Lout = (imag(Zl) - imag(Zb))*50/2/pi/fc
Lout = 1.2131e-09
Вышеуказанные входы и выход значения компонента сети используются в симуляции согласованного DUT в модели измерения усиления и рисунка шума спектра описанной ранее. Спектральные результаты, отображенные в блоках Array Plot, приведены ниже:
open_system([model '/Gain Spectrum']); open_system([model '/Noise Figure Spectrum']); sim(model, 1e-4);
Затем результаты симуляции сравниваются с ожидаемыми аналитически. Для облегчения сравнения несопоставленные и совпадающие сети усилителей анализируются с помощью RF Toolbox. В сложение, поскольку требуются более мелкие детали, симуляция запускается в течение более длительного времени. Результаты более длительной симуляции приведены в файле 'GainNoiseResults.mat'.
% Analyze unmatched amplifier BW_analysis = 2e9; % Bandwidth of the analysis (Hz) f_analysis = (-BW_analysis/2:1e6:BW_analysis/2)+fc; analyze(unmatched_amp, f_analysis); % Create and analyze an RF network for the matched amplifier input_match = rfckt.cascade('Ckts', ... {rfckt.shuntrlc('C',Cin),rfckt.seriesrlc('L',Lin)}); output_match = rfckt.cascade('Ckts', ... {rfckt.seriesrlc('L',Lout),rfckt.shuntrlc('C',Cout)}); matched_amp = rfckt.cascade('ckts', ... {input_match,unmatched_amp,output_match}); analyze(matched_amp,f_analysis); % Load results of a longer simulation load 'GainNoiseResults.mat' f GainSpectrum NFSpectrum; % Plot expected and simulated Transducer Gain StdBlue = [0 0.45 0.74]; StdYellow = [0.93,0.69,0.13]; hLineUM = plot(unmatched_amp, 'Gt', 'dB'); hLineUM.Color = StdYellow; hold on plot(f, GainSpectrum(:,1), '.', 'Color', StdYellow); hLineM = plot(matched_amp, 'Gt', 'dB'); hLineM.Color = StdBlue; plot(f, GainSpectrum(:,2), '.', 'Color', StdBlue); legend({'G_t analysis - Unmatched', ... 'G_t simulation - Unmatched', ... 'G_t analysis - Matched', ... 'G_t simulation - Matched'}, 'Location','SouthWest'); % Plot expected and simulated Noise Figure hFig = figure; hLineUM = plot(unmatched_amp, 'NF', 'dB'); hLineUM.Color = StdYellow; legend('Location','NorthWest') hold on plot(f, NFSpectrum(:,1), '.', 'Color', StdYellow); hLineM = plot(matched_amp, 'NF', 'dB'); hLineM.Color = StdBlue; plot(f, NFSpectrum(:,2), '.', 'Color', StdBlue); legend({'NF analysis - Unmatched', ... 'NF simulation - Unmatched', ... 'NF analysis - Matched', ... 'NF simulation - Matched'}, 'Location','NorthWest');
Модуль измерения формирует входной сигнал, DUT_in, который состоит из нулевого среднего белого шума и сигнала импульсной характеристики с нулевой дисперсией. Последний используется, чтобы определить частотную характеристику усиления DUT и вместе с белым шумом определить рисунок шума DUT. Модуль измерения собирает выходной сигнал DUT, выполняет оконное БПФ на нем и затем облегчает статистические вычисления, чтобы получить коэффициент усиления и шумовой рисунок DUT.
open_system([model '/Noise and Gain Measurement'], 'force');
Статистические расчеты проводятся в районе, отмеченном синим цветом. В вычислениях используются три входов в частотный диапазон; Только входной шум, только входной сигнал и выходной сигнал. Только входной сигнал сравнивается со средним значением выходного сигнала, чтобы определить коэффициент усиления DUT в каждом частотном интервале. Отклонение Выходного Сигнала с удаленным средним сигналом приводит к выходному шуму системы DUT, Вместе с входным шумом, подаваемым на DUT, вычисленным путем взятия отклонения Только Входного Шума, Шумовой Фигуры, может быть вычислена с помощью следующей формулы:
Где и в приведенном выше уравнении находятся отношения Сигнал-Шум на входе и выходе DUT. Наконец, после преобразования в децибелы спектральные результаты разделяют на интервалы и усредняют в них, чтобы облегчить более быстрое сходимость. Кроме того, чтобы улучшить сходимость вычисления шума, выход отклонения шума сбрасывается, когда коэффициент усиления достигает сходимости.
Свойства, влияющие на операцию модуля измерения, заданы в диалоговом окне маскирующего параметра блока, как показано ниже:
Эти параметры описаны ниже:
Шаги расчета - Шаг расчета сигнала, создаваемого измерительным модулем. Этот шаг расчета также управляет общей полосой пропускания симуляции, захваченной модулем измерения.
Размер БПФ - Количество интервалов БПФ, используемых для получения представления частотного диапазона сигналов в модуле измерения.
Бета окна Кайзера - параметр окна Кайзера, используемый во всех вычислениях БПФ в модуле измерения. Увеличение расширяет майнлобу и уменьшает амплитуду боковых элементов частотной характеристики окна.
Коэффициент покрытия спектра - Значение от 0 до 1, представляющее часть общей полосы пропускания симуляции, обработанную модулем измерения.
Количество интервалов - количество выхода интервалов частоты в сигналах Gain и NF, созданных модулем измерения. Интервалы БПФ в охватываемом спектре распределяются повторно в эти выходные интервалы. Усредняются несколько интервалов БПФ, попадающих в одно и то же выходное гнездо.
Отношение среднего сигнала к RMS-шуму - отношение средней амплитуды сигнала к RMS-шуму в DUT_in сигнале, создаваемом модулем измерения. Большое значение улучшает сходимость вычисления усиления DUT, но снижает точность вычисления шума из-за численных неточностей.
Допуск усиления - порог изменения усиления относительно его среднего значения. Когда порог падает, коэффициент усиления рассматривается как сходимый, вызывая сброс для вычисления выходного шума.
close(hFig); bdclose(model); clear model hLegend hsm hLine hLegend StdBlue StdYellow hLineUM hLineM hFig; clear GammaS Zs GammaL Zl GammaA Za Ya GammaB Zb Yb; clear unmatched_amp BW_analysis f_analysis input_match output_match matched_amp;
Усилитель | Строение | Inport | Вспомогательный порт