Всероссийская научно-техническая конференция «Проблемы разработки перспективных микро- и наноэлектронных систем» МЭС-2014 Маничев В.Б., Жук Д.М., Витюков Ф.А. МГТУ ИМ. Н.Э.БАУМАНА, КАФ. РК-6 (САПР) МЕТОД МАТЕМАТИЧЕСКОГО ТЕСТИРОВАНИЯ ПРОГРАММ АНАЛИЗА ПЕРЕХОДНЫХ ПРОЦЕССОВ (TRANSIENT ANALYSIS PROGRAM) В САПР ЭЛЕКТРОННЫХ СХЕМ (НА ПРИМЕРЕ ПРОГРАММ NI-MULTISIM, CADANCE-ORCAD-PSPICE, SYMICA, LTSPICE) ОБЪЕКТ МОДЕЛИРОВАНИЯ ТАКТОВЫЕ КВАРЦЕВЫЕ и МЭМС ГЕНЕРАТОРЫ ТЕСТОВЫЕ МАТЕМАТИЧЕСКИЕ ЗАДАЧИ: жесткие системы ОДУ с многопериодным решением, локально неустойчивыми решениями и с функциями, имеющими разрывы производных ДВА НАПРАВЛЕНИЯ ОБЕСПЕЧЕНИЯ ДОСТОВЕРНОСТИ И ТОЧНОСТИ ЧИСЛЕННОГО РЕШЕНИЯ СИСТЕМ ОДУ В САПР 1. Тестирование математического ядра (программы решателя систем ОДУ) на практических задачах с известным экспериментальным решением для конкретного класса моделируемых объектов 2. Тестирование математического ядра на математических тестовых задачах с известным асимптотическим или аналитическим решением Тестирование программ анализа переходных процессов в электронных схемах на практических задачах с известным экспериментальным решением Экспериментальное тестирование пакета NIMultisim для моделирования кварцевых генераторов НАБОР «ТРУДНЫХ» МАТЕМАТИЧЕСКИХ ТЕСТОВ ТЕСТ 1. Осциллятор Ван дер Поля Система ОДУ 2-го порядка с локально неустойчивым решением и с переменной степенью «трудности» (MU – параметр «трудности») период колебаний равен 2MU: dx1 / dt x 2 2 dx 2 / dt x1 MU (1 x 1 ) x 2 x1 (0) 1, x 2 (0) 1, t [0,4.2 MU ]. Описания, НЕКОРРЕКТНЫЕ РЕШЕНИЯ ТЕСТА 1 в MATHCAD, MATLAB, MATHEMATICA, MAPLE и КОРРЕКТНОЕ РЕШЕНИЕ в SADEL Тест 2 Линейная электрическая схема ( high Q filter circuit ) с многопериодным решением, которая моделируется системой ОДУ 5-го порядка Метод согласованного изменения параметров тестовой электронной схемы и соответствующей системы ОДУ, моделирующей динамические переходные процессы в этой схеме. Введены 6 масштабных коэффициентов: Kt, Ku, Ki, KR, KC, KL для соответствующих переменных и параметров электронной схемы: Время t [с*Kt]; Напряжение u [В*Ku]; Ток i [А*Ki]; Сопротивление R [Ом*KR]; Емкость C [Ф*KC]; Индуктивность L [Гн*KL]. Масштабные коэффициенты для переменных схемы Kt, Ku и Ki взаимно независимы и задаются произвольно. Масштабные коэффициенты для других параметров схемы рассчитываются по формулам: KR = Ku/Ki; KC = Kt*Ki/Ku; KL = Kt*Ku/Ki. Тест 2 Система ОДУ 5-го порядка Kt, Ku, Ki, KR, KC, KL - масштабные коэффициенты «трудности» для переменных и параметров схемы. Размерности для каждой переменной и параметра схемы следующие: время t [с*Kt]; напряжение u [В*Ku]; ток i [А*Ki]; сопротивление R [Ом*KR]; емкость C [Ф*KC]; индуктивность L [Гн*KL]. kr Ku / Ki, kc Kt Ki / Ku, kl Kt Ku / Ki, dx1 / dt x 4 / 0.001 kc dx / dt x / 0.001 kc 5 2 dx3 / dt ( x 4 x5 ) / kc dx / dt (ku x x kr x ) / 1001 kl 1 3 4 4 dx5 / dt ( x 2 x3 kr x5 ) / 999 kl x1 (0) 0, x 2 (0) 0, x3 (0) 0, x 4 (0) 0, x5 (0) 0, t [0,12560 Kt ] . Описания, НЕКОРРЕКТНЫЕ РЕШЕНИЯ ТЕСТА 2 в MATHCAD, MATLAB и КОРРЕКТНОЕ РЕШЕНИЕ в SADEL ТЕСТ 3 Нелинейная жесткая система ОДУ, имеющая локально-неустойчивое решение. dy1dt y2 dy2 / dt 10 (1 y )( y1 y2 ) 6 2 1 y1 (0) 2, y2 (0) 0, t (0,3) Описания, НЕКОРРЕКТНЫЕ РЕШЕНИЯ ТЕСТА 3 в MATLAB, Maple и КОРРЕКТНОЕ РЕШЕНИЕ в SADEL ТЕСТ 4 Нелинейная жесткая система ОДУ для моделирования процессов реального лазера. dy1 dt y1 * ( * y 2 ) dy 2 / dt y 2 * ( p * y1 ) * (1 y1 ) y1 (0) 1, y 2 (0) 0, t (0,10 ), 6 1.5 *10 , 2.5 *10 , 2.1 * 10 , p 0.6, 0.18, 0.016 18 6 Сравнение программ проведено для параметров реального работающего лазера 6 Описание, НЕКОРРЕКТНОЕ РЕШЕНИЕ ТЕСТА 4 в Maple и КОРРЕКТНОЕ РЕШЕНИЕ в SADEL ТЕСТ 5 Емкостной делитель напряжения Система ОДУ: C1(duC1 (t ) / dt ) i(t ) 0 (0.5 uC 2 (t )) (duC 2 (t ) / dt ) i(t ) 0 u (t ) u (t ) V (t ) 0 C2 C1 i(t ) iC1 (t ) iC 2 (t ) Аналитическое решение этой задачи для напряжения и тока на емкости С2 при начальных условиях : uC 2 (0) 0 u (0) 0 C1 uC 2 (t ) C1 C 2(0) ((C1 C 2(0) 2 2C1V (t ) iC 2 (t ) C1(0.5 uC 2 (t )) (C1 C 2(0)) 2 2C1V (t ) КОРРЕКТНОЕ РЕШЕНИЕ для тока через емкость С2 ТЕСТА 5 в SADEL МЕТОД СХЕМНОГО ПРЕДСТАВЛЕНИЯ СИСТЕМ ОДУ Схемные модели для дифференциальных и алгебраических уравнений uCdi xdi dX d / dt Fd ( X d , Ya , t ), Ya Ga ( X d ,Ya , t ), u Rai yai ЭЛЕКТРИЧЕСКАЯ СХЕМА ДЛЯ ТЕСТа 1в ПАКЕТЕ MULTISIM ЭЛЕКТРИЧЕСКАЯ СХЕМА ДЛЯ ТЕСТа 1в ПАКЕТЕ OrCAD-PSPICE РЕЗУЛЬТАТЫ РАСЧЕТА ТЕСТа 1 (Mulyisim и PSPICE) СИСТЕМА ОДУ ДЛЯ ТЕСТа 2 И ЭЛЕКТРИЧЕСКАЯ СХЕМА ДЛЯ ТЕСТа 2 в ПРОГРАММЕ MULTISIM kr ku / ki, kc kt ki / ku, kl kt ku / ki, dx1 / dt x 4 / 0.001 kc dx / dt x / 0.001 kc 5 2 dx3 / dt ( x 4 x5 ) / kc dx / dt (ku x x kr x ) / 1001 kl 1 3 4 4 dx5 / dt ( x2 x3 kr x5 ) / 999 kl x1 (0) 0, x 2 (0) 0, x3 (0) 0, x 4 (0) 0, x5 (0) 0, t [0,12560kt] . Результаты расчета теста 2 (Multisim) РЕЗУЛЬТАТЫ РАСЧЕТА ТЕСТа 2 по умолчанию (OrCAD-PSPICE) РЕЗУЛЬТАТЫ РАСЧЕТА ТЕСТа 2 метод трапеций (OrCAD-PSPICE) РЕЗУЛЬТАТЫ РАСЧЕТА ТЕСТЕа 2 метод трапеций, ограничение шага интегрирования (OrCAD-PSPICE) РЕЗУЛЬТАТЫ РАСЧЕТА ТЕСТа 2 по умолчанию (SYMICA) РЕЗУЛЬТАТЫ РАСЧЕТА ТЕСТа 2 метод трапеций, ограничение шага интегрирования (SYMICA) РЕЗУЛЬТАТЫ РАСЧЕТА ТЕСТа 5 (Multisim SYMICA) Итоговое сравнение решателей систем ОДУ для «трудных» систем ОДУ ТЕСТЫ ТЕСТ 1 Программа-решатель систем ОДУ «Трудность» MU=1e9 ТЕСТ 2 «Трудность» Kt=1,Ki=1, Ku=1e1 ТЕСТ 3 ТЕСТ 4 «Трудность» MU=1e6 Параметры реального лазера ТЕСТ 5 C 2 (0.5 uC 2 (t ) SADEL 2012 + + -++ -++ + Mathcad 2010 - -++ + + нд MATLAB 2012 - -++ -++ + нд Maple 2008 - + -++ -++ нд Mathematica 2012 - + + + нд SPICE-Multisim - -++ -+ -+ -+ OrCAD- PSPICE - -+ - - + SPICE-SYMICA нд -+ нд нд + - - + - + LTSpice Знак (+) означает верное решение теста c параметрами по умолчанию. Знак (-) означает не верное решение теста c параметрами по умолчанию без предупреждения пользователя и отказ при попытке получения верного решения. Знак (-+) означает не верное решение теста c параметрами по умолчанию без предупреждения пользователя и получение верного решения путем настройки ряда параметров метода интегрирования и увеличении времени счета. Знак (-++) означает не верное решение теста c параметрами по умолчанию без предупреждения пользователя и получение верного решения путем настройки только параметра заданной точности интегрирования и увеличении времени счета. нд – нет данных. ВЫВОДЫ: Основные недостатки программ анализа переходных процессов в САПР электронных схем, использующих программу-решатель систем ОДУ SPICE 1. Получение не достоверного, не точного, часто правдоподобного, результата численного моделирования электронной схемы при невысоких по умолчанию, требованиях к математической точности решения систем ОДУ, обычно равной 0.001 в программах-решателях систем ОДУ, т.к. исходные внутренние параметры электронных схем получены с невысокой математической точностью и имеют технологический разброс ВЫВОДЫ (продолжение): Основные недостатки программ анализа переходных процессов в САПР электронных схем, использующих программу-решатель систем ОДУ SPICE 2. Реализованный в программе SPICE неявный метод трапеций выдает «ложные» колебания для систем ОДУ, имеющих функции с разрывами производных 3. Неудачная реализация алгоритмов автоматического выбора шага интегрирования 4. Невысокий фактический порядок точности интегрирования дифференциальных уравнений, что ведет к непроизводительным затратам машинного времени счета. Направление исследований Новые научные результаты предполагается получить в направлении разработки для САПР электронных схем решателей систем ОДУ, в которых будут устранены указанные выше недостатки . Для достоверного и точного решения систем ОДУ при невысоких требованиях к математической точности результатов будут реализованы только A(π/2)-устойчивые методы решения систем ОДУ, т.к. при использовании других методов решения систем ОДУ трудно обеспечить устойчивость численного решения при увеличении шага интегрирования в случае невысоких значений параметра eps. На основе таких решателей будет разрабатываться программа анализа динамических систем ПА10 (PA10), как развитие программ анализа электронных схем ПА1-ПА9 (руководитель этих разработок – д.т.н., проф. Норенков И.П.) и альтернатива OrCAD, MULTISIM, SYMICA и т.п. Отличительные особенности ПА10 (PA10) 1. Три библиотеки математических моделей – аналитическая (математические функции, алгебраические и дифференциальные уравнения), схемная (электронные, тепловые, механические, гидравлические, пневматические и др. схемы) и смешанная. 2. Новые методы и алгоритмы интегрирования систем ОДУ (включая интегрирование кусочно-линейных функций с разрывами производных). 3. Новые алгоритмы решения разреженных систем линейных алгебраических уравнений (ЛАУ) (включая переход на вычисления с повышенной точностью вычислений при необходимости). 4. Достоверность и точность выдаваемых пользователю результатов решения систем ОДУ и ЛАУ или выдача сообщения о невозможности решения соответствующих систем с заданной точностью. САЙТ: www.па10.рф или www.pa10.ru РЕЗУЛЬТАТЫ РАСЧЕТА ТЕСТа 1 в PA10-mini РЕЗУЛЬТАТЫ РАСЧЕТА ТЕСТа 2 в PA10-mini РЕЗУЛЬТАТЫ РАСЧЕТА ТЕСТа 3 в PA10-mini РЕЗУЛЬТАТЫ РАСЧЕТА ТЕСТа 4 в PA10-mini