160 www.finestreet.ru САПР
Иосиф ЗЛАТИН
Программа Advanced Analysis
и режим анализа Monte Carlo в PSD 15.0 и OrCAD 10.0
Настоящая статья продолжает знакомить читателя с новым видом анализа Advanced Analysis. В предыдущих статьях [4, 5, 6, 8] мы познакомились с режимами анализа Smoke, Sensitivity и Optimizer. В данной статье мы познакомимся с режимом анализа Monte Carlo.
Метод Monte Carlo давно используется как один из основных в инженерных расчетах. Несмотря на его популярность, напомним основные отличительные особенности.
Расчет методом Monte Carlo позволяет предсказывать статистическое поведение схемы, когда значения элемента изменяются в диапазоне некоторых допустимых отклонений. Анализ Monte Carlo также позволяет прогнозировать процент выхода годных изделий.
Перечислим основные моменты расчетов по методу Monte Carlo:
• отображение результатов на графике функции распределения вероятностей (probability distribution function — PDF);
• отображения результатов на графике интегральной функции распределения (cumulative distribution function — CDF);
• вычисление статистических данных;
• отображение значений измерения для каждого выполнения анализа Monte Carlo. Для выполнения расчетов по методу Monte
Carlo потребуются:
• компоненты схемы, подготовленные к Advanced Analysis;
• схема и исходные данные для моделирования PSpice;
• измерения, установленные в PSpice. Следует запланировать заранее следующие
опции:
• запуск с достаточным количеством итераций моделирования для обеспечения приемлемой достоверности результатов расчета;
• для получения более высокой точности необходимо увеличивать число итераций. Это более близко моделирует серийное производство;
• необходимо обеспечивать запуск с различными случайными начальными значениями, если вы желаете получить различные результаты;
• необходимо установить число столбцов графика (гистограммы), чтобы показать желаемую степень детализации. Большее
число столбцов обеспечивает большую детализацию, но требуется большое количество итераций моделирования.
Если планируется расчет с порядка тысячью итераций, удобно воспользоваться выключением опции сохранения данных моделирования, что позволит сэкономить свободное дисковое пространство. Однако в этом случае моделирование будет выполняться медленнее.
Найдите самые чувствительные измерения в анализе Sensitivity и выполните анализ Monte Carlo только на этих измерениях.
Порядок осуществления анализа Monte Carlo
Для подготовки схемы в редакторе схем:
• создайте схему в редакторе схем Capture;
• определите режимы моделирования и измерения (режимы моделирования могут быть Time Domain (transient), DC Sweep и анализ AC Sweep/Noise);
• компоненты схемы, которые необходимо включить в необходимые данные, должны быть подготовлены к Advanced Analysis с указанными допустимыми отклонениями от номинального значения.
1. В вашем редакторе схем откройте схему.
2. Выполните моделирование PSpice. Advanced Analysis Monte Carlo не использует установки PSpice Monte Carlo. Вы можете выполнить Advanced Analysis Monte Carlo сразу на нескольких профайлах моделирования. Однако число итераций анализа, установленное в PSpice (например, parametric sweep (параметрический анализ) или temperature sweep (вариация температуры)), велико, Advanced Analysis Monte Carlo перед запуском моделирования уменьшит профайл до одной итерации. Для режима temperature sweeps для выполнения анализа Monte Carlo используется первое значение температуры.
Для открытия анализа Monte Carlo в меню PSpice в вашем редакторе схем выберите
Advanced Analysis/Monte Carlo. Для импортирования измерений из PSpice необходимо проделать следующее:
1. В таблице Statistical Information щелкните по строке, содержащей текст «Click here to import a measurement created within PSpice.» В результате появится диалоговое окно Import Measurement.
2. Выберите измерения, которые вы хотите включить в анализ.
Для установки опций анализа Monte Carlo в меню Edit анализа Advanced Analysis выберите Profile Settings, щелкните по закладке Monte Carlo, и введите следующие опции Monte Carlo:
• Number of runs — число итераций.
Для каждой итерации параметры компонента с допустимыми отклонениями будут случайным образом изменяться. Первая итерация использует номинальные значения параметров компонентов. Максимальное число итераций в основном ограничивается величиной доступной памяти и временем проведения расчетов.
• Starting run number — начальный номер итерации.
Заданный по умолчанию начальный номер равен 1. Как указывалось выше, для первого расчета используются номинальные значения параметров элементов схемы. Если случайное значение начального числа сохраняется постоянным, можно изменить его значение, чтобы частично продублировать моделирование Monte Carlo. Вы можете использовать его, чтобы отделить результаты, которые представляют особый интерес, без необходимости повторно выполнять полное моделирование Monte Carlo.
• Random seed value — случайное значение начального числа для последовательности псевдослучайных чисел.
Генератор случайных чисел использует это значение для создания последовательности случайных чисел. Вы можете изменить начальное число для создания уникальной случайной последовательности для каждого
Таблица. Результаты моделирования втаблице Statistical Information
Заголовок столбца Результат моделирования
Cursor Min Значение измеряемого параметра в минимальном положении курсора
Cursor Max Значение измеряемого параметра в максимальном положении курсора
Yield (in percent) (Выход готовых изделий в процентах) Соотношение числа итераций моделирования, результаты измерений которых попали в поле допуска, к общему числу итераций, выраженное в процентах. Используется для оценки эффективности серийного производства
Mean (Среднее значение) Математическое ожидание измеряемого параметра. См. таблицу Raw Measurement
Std Dev (Стандартная девиация) Среднеквадратическое отклонение
3 Sigma (in percent) (3 в процентах) Число значений выполняемых измерений, которые находятся в пределах заданного диапазона плюс или минус 3 от математического ожидания
6 Sigma (in percent) (6 в процентах) Число значений выполняемых измерений, которые находятся в пределах заданного диапазона плюс или минус 6 от математического ожидания
Median (медиана) Значение измеряемого параметра, которое встречается в середине массива всех значений. См. таблицу Raw Measurement
моделирования Monte Carlo. Если начальное число и свойства устройства не изменялись, то каждый раз будет генерироваться одна и та же последовательность псевдослучайных чисел. Вы можете использовать эту процедуру для повторного воспроизведения моделирования.
• Number of bins — число столбиков графика (гистограммы).
Это значение определяет число секций в гистограмме. Типичное значение — одна десятая от числа итераций. Минимальное значение — 1, а максимальное значение определяется объемом доступной памяти. Рекомендуется, чтобы это значение было меньше, чем 10 000.
После выполнения моделирования при номинальных значениях параметров Monte Carlo случайным образом вычисляет значение каждого переменного параметра, используя информацию о его допуске. Генерируемые значения подчиняются равновероятному распределению. Для каждого профайла Monte Carlo использует расчетные значения параметра, вычисляет измерения и сохраняет их значения. Анализ Monte Carlo повторяет вычисления для указанного числа итераций моделирования, а затем производит расчет и отображение статистических данных для каждого измерения.
Вы можете посмотреть на результаты анализа Monte Carlo на двух графиках и двух таблицах:
• графике функции распределения вероятностей (PDF);
• графике интегральной функции распределения (CDF);
• таблице Statistical Information (статистическая информация);
• таблице Raw Measurements.
Рассмотрим таблицу Statistical Information.
Для каждой итерации анализ Monte Carlo случайным образом изменяет значения параметра в пределах допустимого отклонения и вычисляет единственное значение измерения. После всех сделанных выполнений, Monte Carlo использует результаты выполнения статистического анализа.
1. Выберите закладку Statistics.
2. Выберите строку измерения в таблице Statistical Information.
В левом столбце появится черная стрелка И. Данные на графике соответствуют только выбранному измерению.
Вы можете рассмотреть результаты каждого измерения (см. таблицу):
График PDF — способ отобразить распределение вероятностей. Он показывает диапазон значений измерения по оси X и число выполнений с этими значениями измерения по оси Y.
1. Выберите строку измерения в таблице Statistical Information.
2. Если по графику PDF еще не отображен, щелкните правой кнопкой мыши на графике и выберите PDF Graph в выплываю-
щем меню. Появившийся график отобразит все значения измерения, полученные в результате моделирования по методу Monte Carlo.
3. Щелкнув правой кнопкой мыши по графику, в появившемся меню можно изменить масштаб, выбрать другой тип графика или единицы оси Y:
• выберите Zoom In, чтобы сосредоточиться на малом диапазоне значений;
• выберите CDF Graph, чтобы переключиться с графика по умолчанию (PDF) к графику CDF;
• выберите Percent Y-axis, чтобы переключиться от заданной по умолчанию абсолютной оси Y Number of Runs к Percent of Runs;
4. Для того чтобы изменить число столбцов по оси X:
• в меню Edit выберите Profile Settings,
щелкните по закладке Monte Carlo и введите новое число в текстовом поле Number of Bins.
• необходимо помнить, что отображение большего числа столбцов дает более точные результаты, но требует больше итераций моделирования.
График CDF является альтернативным
способом отображения вероятностного распределения. В математических терминах CDF
является интегральной функцией от PDF.
1. Выберите строку с выражением для измерения в таблице Statistical Information.
2. Если по графику CDF еще не отображен, щелкните правой кнопкой мыши на графике PDF и выберите CDF Graph в появившемся меню. В результате будет показана интегральная функция распределения.
3. Щелкните правой кнопкой мыши по графику для выбора масштаба и единиц оси Y. В появившемся меню можно изменить:
• Zoom In — увеличить масштаб, чтобы сосредоточиться на малом диапазоне значений;
• Выберите PDF Graph, чтобы переключить CDF на график по умолчанию — PDF. Выберите Percent Y-axis, чтобы переключиться от заданной по умолчанию абсолютной оси Y Number of Runs к Percent of Runs.
4. Измените число столбцов по оси X, для этого в меню Edit выберите Profile Settings, щелкните по закладке Monte Carlo и напечатайте новое число в текстовом поле Number of Bins.
САПР |161
• Если вы хотите видеть большее число столбцов на графике, определите его (максимальное значение равно числу итераций моделирования).
Для изменения местоположения курсора на графике щелкните по курсору (он станет красным) и затем щелкните мышью в нужном месте на графике. Одновременно с изменением местоположения курсора на графике изменится и минимальное или максимальное значения измерения в таблице Statistical Information. Новое расчетное значение выхода годных изделий появится в таблице.
Для ограничения объема статистических вычислений, отображаемых в таблице Statistical Information, служат курсоры Min и Max. Из выпадающего при щелчке правой кнопкой мыши меню можно выбрать ограничивающую диапазон команду вычисления.
1. Переместите курсор в нужное местоположение.
2. Щелкните правой кнопкой мыши по графику или в таблице Statistical Information и выберите Restrict Calculation Range
во всплывающем меню.
Заштрихованный диапазон значений, который появится на графике, ограничит диапазон.
Таблица Raw Measurements — таблица только для чтения, которая имеет взаимнооднозначную зависимость с таблицей Statistical Information. Каждой строке с выражением для измерения в таблице Raw Measurements соответствует строка в таблице Statistical Information. Значения в таблице Raw Measurements используются для вычисления выхода годных изделий и статистических значений в таблице Statistical Information.
1. Щелкните по закладке Raw Meas. Появится таблица Raw Measurements.
2. В меню View выберите Log File/Monte Carlo, чтобы рассмотреть значения параметра компонента для каждой итерации.
Если вы не достигли цели при первом анализе Monte Carlo, есть несколько вещей, которые вы можете сделать, чтобы немного изменить параметры:
• для анализа предварительных результатов при большом числе итераций моделирования щелкните по кнопке 0 в верхней панели инструментов, когда уже выполнено
162 САПР
Рис. 1. Диалоговое окно анализа Monte Carlo с выражениями для измерений, импортированными из PSpice
Рис. 3. Результаты анализа Monte Carlo
приблизительно 50 итераций анализа Monte Carlo. Анализ остановится в следующей точке, отобразятся доступные данные, и в выходном окне отобразится число выполненных итераций;
• щелкните повторно по кнопке И или и для возобновления процесса вычислений;
• для остановки щелкните по кнопке И. Если анализ Monte Carlo был остановлен, вы не сможете уже его возобновить;
• щелкните по кнопке И, чтобы запустить или перезапустить моделирование.
Если вы не получили желаемых результатов, можете возвратиться в редактор схем и изменить параметры схемы.
1. Пробуйте различные компоненты для схемы или изменяйте предельно допустимые отклонения параметров компонентов.
2. Повторно запустите моделирование PSpice и проверьте результаты.
3. Запустите анализ Monte Carlo, используя установки, сохраненные в предыдущем анализе.
4. Оцените результаты.
Если не удалось достичь желаемых результатов и технические требования к проекту могут быть изменены, вы можете попробовать добавить, отредактировать, удалить или отключить измерение и повторно запустить анализ Monte Carlo.
Заштрихованные ячейки используются только для чтения и не могут быть отредактированы.
• чтобы исключить измерение из следующего выполнения анализа Monte Carlo, щелкните по кнопке s в таблице Statistical Information;
• чтобы отредактировать измерение, выбе-риге его, а затем щелкните по кнопке У;
• чтобы отредактировать параметры измерения Min или Max, щелкните по курсору Min или Max на графике (выбранный курсор приобретет красный цвет), затем щелкните мышью в любом месте. Новое значе-
ние отобразится в столбце Cursor Min или Cursor Max в таблице Statistical Information;
• чтобы добавить новое измерение, щелкните на строке с надписью «Click here to import a measurement...»;
• для экспорта нового измерения в Optimizer или Monte Carlo выберите его и щелкните на строке, содержащей текст «Click here to import a measurement created within PSpice». Затем выберите Send To в выплывающем меню.
Для распечатки результатов можно воспользоваться кнопкой И на стандартной панели инструментов или в меню File выбрать пункт Print.
Д ля сохранения результатов щелкните на кнопке 0 или выберите в меню File пункт Save.
Результаты будут сохранены в профайле Advanced Analysis (.aap).
Пример
В качестве примера рассмотрим моделирование схемы ВЧ-усилителя с сопротивлением нагрузки 50 Ом, которую мы часто использовали в предыдущих статьях. Для этого необходимо проделать следующее.
1. Откройте проект RFAmp из папки \PSpice\ tutorial\Capture\pspiceaa\rfamp.
2. Выберите профайл моделирования SCHEMATIC1-AC.
3. Щелкните на кнопке 0 для выполнения моделирования PSpice.
4. В редакторе схем Capture в меню PSpice выберите Advanced Analysis/Monte Carlo. В результате этих действий откроется диалоговое окно анализа Monte Carlo.
5. В таблице Statistical Information щелкните на строке, содержащей текст «Click here to import a measurement created within PSpice.» Появится диалоговое окно Import Measurement.
6. Выберите следующие четыре выражения для измерений:
• Max(DB(V(Load)))
• Bandwidth(V(Load),3)
Рис. 2. Диалоговое окно Profile Settings
• Min(10*Log10(V(inoise)*V(inoise)/8.28e-19))
• Max(V(onoise))
7. Нажмите OK. Диалоговое окно анализа Monte Carlo после выполнения этой операции показано на рис. 1.
8. В меню Edit расширенного анализа выберите Profile Settings, затем щелкните по закладке Monte Carlo (рис. 2) и введите значения, как показано на рисунке.
9. Нажмите ОК.
10. Щелкните по кнопке 0 в верхней панели инструментов. Запустится анализ Monte Carlo. Сообщения в выходном окне будут описывать состояние процесса моделирования. Первым в анализе по методу Monte Carlo, как говорилось выше, является вычисление измерений для номинальных значений элементов схемы. После этого в случайном порядке вычисляются значения каждого переменного параметра в соответствии с его допустимым отклонением и с учетом равновероятного распределения этих значений. Для каж-
САПР 163
Рис. 5. График CDF в диалоговом окне анализа Monte Carlo
Рис. S. Статистические данные в ограниченном диапазоне значений
дого профайла анализ Monte Carlo использует расчетные значения параметра, оценивает измерения и сохраняет полученные значения.
Анализ Monte Carlo повторяет вышеупомянутые вычисления для установленного числа итераций моделирования, затем вычисляет и отображает статистические данные для каждого измерения. Десять столбцов измеренных данных отображаются на гистограмме (рис. 3).
Рассмотрим результаты анализа Monte Carlo. При выборе вкладки Statistics отображается таблица Statistical Information, которая содержит результаты для четырех измерений.
• Выберите строку измерения Max(DB(V(load))). Строка выделится цветом и слева появится черная стрелка bmp.
Для нашего примера выводятся следующие статистические характеристики: Mean, Std Dev, 3 Sigma, 6 Sigma, и Median (см. таблицу). Кроме того, рассчитывается и сообщается выход годных изделий (Yield).
Рассмотрим гистограмму PDF. Она отображает диапазон значений измерения по оси X и число итераций с этими значениями измерения по оси Y.
Статистическое распределение плотности вероятности этого измерения показано на графике PDF.
1. Щелкните правой кнопкой по графику и выберите Percent Y-axis в контекстном меню (рис. 4). Единицы оси Y изменятся от абсолютных значений Number of Runs к Percent of Runs (к процентам).
2. В меню Edit выберите Profile Settings, щелкните по закладке Monte Carlo, выберите текстовое поле Number of Bins и введите число 20 вместо 10. В результате гистограмма будет отображена более точно.
3. Щелкните правой кнопкой мыши по графику и выберите в контекстном меню пункт Zoom In для наблюдения указанного диапазона.
4. Выберите Zoom Fit, чтобы показать полный график с курсорами.
5. Щелкните по курсору Max для его выбора (он приобретает красный цвет), затем щелкните мышью в новом местоположении на оси X. В результате в таблице Statistical Information изменятся максимальное значение и выход годных изделий. Перемещение курсора не модифицирует
остальную часть статистических результатов для этого нового диапазона min/max. Используйте команду Restrict Calculation Range, для повторного вычисления остальной части статистических результатов для этого диапазона min/max.
График CDF — интегральный ступенчатый график. Для того чтобы отобразить этот график:
1. Выберите измерение Max(DB(V(Load))) в таблице Statistical Information.
2. Щелкните правой кнопкой мыши по графику PDF и выберите CDF Graph в контекстном меню.
3. Щелкните правой кнопкой мыши по графику и выберите Zoom In для анализа указанного диапазона.
4. Щелкните по курсору Max, чтобы выбрать его. Курсор приобретет красный цвет.
5. Щелкните мышью по значению 10 на оси X. Курсор переместится в новую позицию.
6. Щелкните курсором Min по значению 9 на оси X.
Когда Вы изменяете расположение курсоров Min и Max, значения выхода годных изделий (Yield) также изменяются в таблице Statistical Information (рис. 5).
Для быстрой оценки статистических результатов для различных диапазонов min/max используйте команду Restrict Calculation Range.
1. Установите курсоры графика в Min = 9 и Max = 10 или отредактируйте минимальные или максимальные значения в таблице Statistical Information.
2. Щелкните правой кнопкой мыши в таблице или по графику и выберите Restrict Calculation Range в меню. Анализ Monte Carlo повторно вычислит статистические данные для ограниченного диапазона значений (рис. 6).
Таблица Raw Measurements предназначена только для чтения и имеет однозначную зависимость с таблицей Statistical Information. Для каждой строки в этой таблице есть соответствующая строка в другой таблице, где отображены статистические данные.
1. Щелкните по закладке Raw Meas. Появится таблица Raw Measurements.
2. Выберите строку измерения Max(DB(V(load))) и дважды щелкните по крайней левой кнопке в строке И. В результате данные будут отсортированы в восходящем или нисходящем порядке.
Если вы планируете анализ тысяч итераций моделирования схемы, вы можете выключить опцию хранения данных моделирования, чтобы не занимать пространство на диске.
Для выключения сохранения данных:
1. В меню Advance Analysis выберите Edit/ Profile Settings/Simulation. Появится диалоговое окно Profile Settings.
2. В поле Monte Carlo выберите Save None (рис. 7). Данные моделирования будут за-писаваться поверх каждого нового выпол-
Рис. 4. Выплывающее меню, открываемое щелчком правой кнопки мыши в диалоговом окне анализа Monte Carlo
164
САПР
Рис. 7. Выключение сохранения данных
нения. Только данные последнего выполнения будут сохранены. ■
Литература
1. Разевиг В. Д. Система проектирования OrCAD 9.2. М.: Солон-Р, 2001.
2. Златин И. Моделирование на функциональном уровне в OrCAD 9.2 // Компоненты и технологии. 2003. № 3, 4.
3. Златин И. В. Монте-Карло с OrCAD 9.2 // Компоненты и технологии. 2003. № 5.
4. Златин И. Графический анализ результатов моделирования в OrCAD 9.2 // Компоненты и технологии. 2003. № 7.
5. Златин И. Программа Advanced Analysis и режим анализа Smoke в PSD 15.0 и OrCAD 10.0 // Компоненты и технологии. 2005. № 4.
6. Златин И. Программа Advanced Analysis и режим анализа Sensitivity в PSD 15.0 и OrCAD 10.0 // Компоненты и технологии. 2005. № 5.
7. Златин И. Программа Advanced Analysis и режим анализа Optimizer в PSD 15.0 и OrCAD 10.0 // Компоненты и технологии. 2005. № 6, S.