exponenta event banner

Взаимодействие MOS и перекрестные помехи с использованием объектов RFCKT

В этом примере показано, как построить и смоделировать канал дерева RC с использованием радиочастотного Toolbox™.

В «Оценке асимптотической формы волны для анализа синхронизации» (IEEE Transactions on Computer-Aided Design, Vol., 9, No. 4, April 1990) компания Pillage and Rohrer представила и смоделировала схему дерева RC, которая моделирует целостность сигнала и перекрестные помехи в низкочастотном и среднечастотном межцепном взаимодействии МОП. Этот пример подтверждает их моделирование с использованием программного обеспечения RF Toolbox.

Их схема, воспроизведенная на следующем рисунке, состоит из 11 резисторов и 12 конденсаторов. В статье Разграбление и Рорер:

  • Применить вход напряжения клина

  • Вычислить переходные ответы

  • Постройте график выходных напряжений на двух различных конденсаторах, C7 и C12.

Рисунок 1: Модель дерева RC взаимодействия MOS с перекрестными помехами.

Программное обеспечение RF Toolbox позволяет программно создавать эту схему в MATLAB и выполнять моделирование целостности сигнала.

В этом примере показано:

  1. Как использовать rfckt.seriesrlc, rfckt.shuntrlc, rfckt.series, и rfckt.cascade объект для программного построения схемы в виде двух различных сетей, в зависимости от требуемого выхода.

  2. Как использовать analyze функция извлечения S-параметров для каждой 2-портовой сети в широком диапазоне частот.

  3. Как использовать s2tf функция с Zsource = 0 и Zload = Inf вычисляют передаточную функцию напряжения от входа к каждому требуемому выходу.

  4. Как использовать rationalfit функция для получения аппроксимаций рациональной функции, которые фиксируют идеальное поведение RC-схемы с очень высокой степенью точности.

  5. Как использовать timeresp функцию для вычисления переходного отклика на сигнал входного напряжения.

Перерисовать цепь как отдельную сеть 2-Port

Чтобы дублировать оба выходных графика, RF Toolbox вычисляет выходное напряжение на C7 и C12. Для этого цепь должна быть выражена как две отдельные 2-портовые сети, каждая с соответствующим конденсатором на выходе. На рис. 2 показана 2-портовая конфигурация для вычисления напряжения на C7. На рис. 3 показана конфигурация для C12. Обе 2-портовые сети сохраняют исходную топологию каналов и имеют одну и ту же структуру.

Рис. 2: Схема, построенная в виде 2-портовой сети с выходом через C7.

Рис. 3: Схема, построенная в виде 2-портовой сети с выходом через C12.

Использование стандартных блоков RLC

Все стандартные блоки формируются путем выбора соответствующих значений с помощью rfckt.shuntrlc объект, показанный на рис. 4, или rfckt.seriesrlc объект, показанный на рис. 5. Затем 2-портовые компоновочные блоки соединяются с помощью rfckt.cascade как показано на рис. 6 или rfckt.series как показано на фиг.7.

Рис. 4: 2-портовая сеть, созданная с помощью rfckt.shuntrlc объект.

Рис. 5: 2-портовая сеть, созданная с помощью rfckt.seriesrlc объект.

Рис. 6. Подключение 2-портовых сетей с помощью rfckt.cascade объект.

Рис. 7. Подключение 2-портовых сетей с помощью rfckt.series объект.

Общие части 2-Port сетей

Следующий код MATLAB создает часть сети, совместно используемую двумя вариантами.

R1 = rfckt.seriesrlc('R',10);
C1 = rfckt.shuntrlc('C',0.114e-12);
R9 = rfckt.shuntrlc('R',48);
C9 = rfckt.shuntrlc('C',0.007e-12);
R10 = rfckt.shuntrlc('R',24);
C10 = rfckt.shuntrlc('C',0.2e-12);
R10C10 = rfckt.series('Ckts',{R10,C10});
C9R10C10 = rfckt.cascade('Ckts',{C9,R10C10});
R9C9R10C10 = rfckt.series('Ckts',{R9,C9R10C10});
R2 = rfckt.seriesrlc('R',72);
C2 = rfckt.shuntrlc('C',1.238e-12);
R3 = rfckt.seriesrlc('R',34);
C3 = rfckt.shuntrlc('C',0.021e-12);
R4 = rfckt.seriesrlc('R',96);
C4 = rfckt.shuntrlc('C',0.028e-12);
R5 = rfckt.seriesrlc('R',72);
C5 = rfckt.shuntrlc('C',0.007e-12);
R6 = rfckt.seriesrlc('R',10);
C6 = rfckt.shuntrlc('C',1.048e-12);
R7 = rfckt.seriesrlc('R',120);
R8 = rfckt.shuntrlc('R',24);
C8 = rfckt.shuntrlc('C',0.2e-12);
R8C8 = rfckt.series('Ckts',{R8,C8});
sharedckt = rfckt.cascade('Ckts', ...
    {R1,C1,R9C9R10C10,R2,C2,R3,C3,R4,C4,R5,C5,R6,C6,R7,R8C8});

% Additional shared building blocks used in both 2-port networks.
C7 = rfckt.shuntrlc('C',0.47e-12);
R11C12 = rfckt.shuntrlc('R',1000,'C',1e-12);

Создание каждой сети 2-Port

На рис. 2 показано построение 2-портовой сети с выходным портом C7 требует создания C11 использование rfckt.shuntrlc объект, затем объединение C11 с R11 и C12 использование rfckt.series объект и, наконец, объединение C11R11C12 с остальной частью сети и C7 использование rfckt.cascade объект.

Аналогично, на рис. 3 показано, что построение 2-портовой сети с выходным портом через C12 требует создания другой версии C11 (C11b) с использованием rfckt.seriesrlc объект и объединение всех деталей вместе с помощью rfckt.cascade объект.

Построить шунтирующую RLC-цепь.

C11 = rfckt.shuntrlc('C',0.1e-12);
C11R11C12 = rfckt.series('Ckts',{C11,R11C12});
cktC7 = rfckt.cascade('Ckts',{sharedckt,C11R11C12,C7});

Построение цепи RLC серии.

C11b = rfckt.seriesrlc('C',0.1e-12);
cktC12 = rfckt.cascade('Ckts',{sharedckt,C7,C11b,R11C12});

Настройка моделирования

Входной сигнал, используемый Pillage и Rohrer, представляет собой клин напряжения от 0 до 5 вольт со временем подъема в одну наносекунду и длительностью в десять наносекунд. Следующий код MATLAB моделирует этот сигнал с 1000 временными точками с sampleTime 0,01 наносекунды.

Следующий код MATLAB также использует logspace функция для генерации вектора из 101 логарифмически разнесенных частот анализа между 1 Гц и 100 ГГц. Определение широкого набора частотных точек повышает точность моделирования.

sampleTime = 1e-11;
t = (0:1000)'*sampleTime;
input = [(0:100)'*(5/100); (101:1000)'*0+5];
freq = logspace(0,11,101)';

Моделирование каждой сети 2-Port

Для моделирования каждой сети:

  1. analyze функция извлекает S-параметры в заданном диапазоне частот.

  2. s2tf функция, с option = 2вычисляет коэффициент усиления от напряжения источника к выходному напряжению. Он допускает произвольные импедансы источника и нагрузки, в данном случае Zsource = 0 и Zload = Inf. Результирующие передаточные функции tfC7 и tfC12 - частотно-зависимые векторы данных, которые могут соответствовать аппроксимации рациональной функции.

  3. rationalfit функция формирует высокоточные аппроксимации рациональной функции. Полученные в результате аппроксимации соответствуют сетям с точностью обработки.

  4. timeresp функция вычисляет аналитическое решение уравнений состояния-пространства, определяемых аппроксимацией рациональной функции. Эта методология достаточно быстра, чтобы один из них мог протолкнуть миллион битов через канал.

Моделировать cktC7 цепь.

analyze(cktC7,freq);
sparamsC7 = cktC7.AnalyzedResult.S_Parameters;
tfC7 = s2tf(sparamsC7,50,0,Inf,2);
fitC7 = rationalfit(freq,tfC7);
outputC7 = timeresp(fitC7,input,sampleTime);

Моделировать cktC12 цепь.

analyze(cktC12,freq);
sparamsC12 = cktC12.AnalyzedResult.S_Parameters;
tfC12 = s2tf(sparamsC12,50,0,Inf,2);
fitC12 = rationalfit(freq,tfC12);
outputC12 = timeresp(fitC12,input,sampleTime);

График переходных реакций

Выходные данные соответствуют рисункам 23 и 24 в газетах «Разграбление» и «Рорер». Постройте график клиновой характеристики низко- и среднечастотного МОП-соединения с перекрестными помехами.

figure
plot(t,input,t,outputC7,'LineWidth',2)
axis([0 2.5e-9 0 5.5]);
title('Ramp Response of Low- to Mid-Frequency MOS Circuit Interconnect with Crosstalk');
xlabel('Time (sec)');
ylabel('Voltage (volts)');
legend('Vinput','V(C7)','Location','NorthWest');

Figure contains an axes. The axes with title Ramp Response of Low- to Mid-Frequency MOS Circuit Interconnect with Crosstalk contains 2 objects of type line. These objects represent Vinput, V(C7).

Постройте график перекрестных помех в низко- и среднечастотном МОП-соединении с линейным входом.

figure
plot(t,input,t,outputC12,'LineWidth',2)
axis([0 5e-9 0 .5]);
title('Crosstalk in Low- to Mid-frequency MOS Circuit Interconnect with Ramp Input');
xlabel('Time (sec)');
ylabel('Voltage (volts)');
legend('Vinput','V(C12)','Location','NorthEast');

Figure contains an axes. The axes with title Crosstalk in Low- to Mid-frequency MOS Circuit Interconnect with Ramp Input contains 2 objects of type line. These objects represent Vinput, V(C12).

Проверить рациональное вписывание вне диапазона вписывания

Хотя это не показано в этом примере, можно также использовать freqresp функция для проверки поведения rationalfit функция находится далеко за пределами указанного диапазона частот. Подгонка за пределы указанного диапазона иногда может вызвать неожиданное поведение, особенно если не были предоставлены частотные данные около 0 Гц (DC).

Чтобы выполнить эту проверку аппроксимации рациональной функции в этом примере, раскомментируйте и запустите следующий код MATLAB.

% widerFreqs = logspace(0,12,1001);
% respC7 = freqresp(fitC7,widerFreqs);
% figure
% loglog(freqs,abs(tfC7),'+',widerFreqs,abs(respC7))
% respC12 = freqresp(fitC12,widerFreqs);
% figure
% loglog(freqs,abs(tfC12),'+',widerFreqs,abs(respC12))

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