Слайды с задачами для новой программы моделирования и для

advertisement
Программа моделирования. Задачи
1
Редактор элементов
2
Библиотека элементов
3
Редактор схемы
4
Конвертер xHDL-AMS в дифференциально-алгебраические уравнения
5
Интеграция симулятора цифровых систем (FreeHDL, Verilator, др.)
6
Интерпретатор языка С
7
Нули и полюсы передаточной функции (поиск корней полинома)
8
Производная в символьном виде
9
Интервальные вычисления (cинонимы: trusted/reliable/scientific computing)
10
Расчет/синтез цифровых КИХ/БИХ фильтров (ФНЧ, ФВЧ, ПФ, РФ)
11
Учет эффектов квантования в цифровых фильтрах
12
Генерация блок схемы для ЦФ
13
Генерация С кода для ЦФ с фиксированной и плавающей точкой
14
Генерация VHDL/Verilog кода для ЦФ с фиксированной точкой
Редактор элементов
На входе
Пустой или существующий элемент (текстовое
описание изображения + текстовое описание
модели)
Основные
1. Добавление/перемещение/удаление: линий,
возможности эллипсов, прямоугольников, дуг, текстовых
надписей, стрелок, обозначение выводов
2. Редактирование текстового описания модели
3. Функция прорисовки элемента
На выходе
Созданный или измененный элемент
Средства
реализации
язык Python, графическая библиотека wxPython,
текстовое описание yaml и/или json
Применение
Создание произвольных элементов
Библиотека элементов
На входе
Пустая или существующая библиотека элементов
(папка с файлами элементов)
Основные
1. Добавление/удаление/редактирование
возможности элементов
2. Объединение элементов в группы (подпапки)
3. Экспорт / импорт элементов
4. Публикация в интернете / поиск в интернете
На выходе
Созданная или измененная библиотека
Средства
реализации
язык Python, графическая библиотека wxPython,
HTML, PHP, MySQL
Применение
Создание групп элементов для различных
технических областей
Редактор схемы
На входе
Пустая или существующая схема (текстовое
описание элементов из библиотеки и их
соединений)
Основные
1. Добавление/перемещение/поворот/удаление
возможности элементов из библиотеки
2. Соединение элементов проводами
3. Текстовые блоки на схеме
4. Работа с подсхемами
На выходе
1. Созданная или измененная схема
2. Текстовое описание модели (xHDL-AMS)
Средства
реализации
язык Python, графическая библиотека wxPython,
текстовое описание yaml и/или json
Применение
Создание модели технической системы
Конвертер xHDL-AMS в дифференциальноалгебраические уравнения (ДАУ)
На входе
Текстовое описание модели (xHDL-AMS)
Основные
1. Переход от иерархического к плоскому описанию
возможности модели (одна большая схема без подсхем)
2. Выделение цифровых и аналоговых частей
3. Переход к ДАУ для аналоговых частей (законы
Кирхгофа + уравнения отдельных элементов)
На выходе
1. ДАУ для аналоговых частей
2. xHDL описания для цифровых частей
3. Описание связей между аналоговыми и
цифровыми частями
Средства
реализации
язык Python
Применение
Подготовка к моделированию во временной
области
Интеграция симулятора цифровых систем
(FreeHDL, Verilator, др.)
На входе
Текстовое описание цифровой части (xHDL)
Основные
1. Запуск цифрового симулятора
возможности 2. Координация шагов во времени между
аналоговым и цифровым симулятором
(возможность отката назад)
На выходе
Временной процесс в цифровой части схемы,
возможность управлять расчетом (сделать шаг,
откатиться назад)
Средства
реализации
язык С/С++
Применение
Моделирование смешанных аналого-цифровых
систем
Интерпретатор языка С
На входе
Программа на языке С
Основные
1. Разбор программы на языке С
возможности 2. Получение списка макроопределений, функций и
глобальных переменных
3. Вызов произвольной функции С программы
4. Изменение глобальных переменных
5. Пошаговая отладка
На выходе
Выполнение программы на языке С под
управлением интерпретатора
Средства
реализации
язык С/С++
Применение
Моделирование цифрового управления на
микроконтроллере
Нули и полюсы передаточной функции
(поиск корней полинома)
На входе
передаточная функция в текстовом виде
На выходе
нули и полюсы передаточной функции
Проверка
подстановка нулей в числитель, полюсов в
знаменатель, сравнение ЧХ
Средства
реализации
язык Python, библиотеки numpy и scipy
Применение
карта нулей/полюсов исследуемой системы, синтез
цифрового фильтра по аналоговому прототипу,
замена аналоговой схемы на блок H(p)
Производная в символьном виде
На входе
математическое выражение в символьном виде
(+,-,*,/,^,функции)
На выходе
математическое выражение для производной в
символьном виде
Проверка
вычисление производной численно (малые
приращения) и по формуле
Средства
реализации
язык С/С++, обертка для Python
Применение
любая оптимизация, расчет систем с гладкими
нелинейностями (заполнение матрицы Якоби),
синтез H(p) по АЧХ
Интервальные вычисления
(trusted/reliable/scientific computing)
На входе
Вычислительный алгоритм на С++ (?)
Описание
Все входные данные заменяются на интервалы
[а,b], соответствующие соседним значениям
разрядной сетки. Определяются операции + - * /
для интервалов. Выполняется заданный
вычислительный алгоритм для интервалов.
На выходе
Результат работы алгоритма в виде интервала
Средства
реализации
язык С++ (?)
Применение
оценка точности вычислений на компьютере с
ограниченной разрядной сеткой
любые алгоритмы (обращение матрицы, цифровой
фильтр с фиксированной точкой и др.)
Расчет/синтез цифровых КИХ/БИХ фильтров
(ФНЧ, ФВЧ, ПФ, РФ)
На входе
Требования к цифровому фильтру (тип, частоты
полосы пропускания и задерживания, ослабление,
неравномерность АЧХ и т.п.)
Основные
1. Графический интерфейс для задания
возможности требований к фильтру
2. Задание порядка фильтра и типа характеристики
(Баттерворта, Чебышева, Бесселя, эллиптический)
3. Синтез коэффициентов КИХ/БИХ фильтра
На выходе
Коэффициенты цифрового фильтра,
удовлетворяющие требованиям
Средства
реализации
язык Python, графическая библиотека wxPython,
библиотеки numpy, scipy, matplotlib
Применение
Проектирование цифровых фильтров
Учет эффектов квантования в цифровых
фильтрах
На входе
Коэффициенты цифрового КИХ/БИХ фильтра
Основные
1. Ограничение разрядности исходных
возможности коэффициентов
2. Разбиение фильтра на звенья 2-го порядка
3. Выбор порядка соединения звеньев и
масштабирующих множителей
На выходе
Характеристики фильтров (АЧХ, нули/полюсы и др.)
с квантованием коэффициентов и без
Средства
реализации
язык Python, графическая библиотека wxPython,
библиотека matplotlib
Применение
Проектирование цифровых фильтров для
реализации на FPGA и DSP с фиксированной
точкой
Генерация блок схемы для ЦФ
На входе
Коэффициенты цифрового КИХ/БИХ фильтра
Основные
1. Получение текстового описания схемы,
возможности реализующей заданный фильтр
2. Схема может быть открыта в редакторе схем и
использована для моделирования
На выходе
Текстовое описание схемы
Средства
реализации
язык Python, текстовое описание yaml и/или json
Применение
Интеграция с программой моделирования
Генерация С кода для ЦФ с фиксированной и
плавающей точкой
На входе
Коэффициенты цифрового КИХ/БИХ фильтра
На выходе
Программа на языке С, реализующая заданный
фильтр
Средства
реализации
язык Python
Применение
Реализация цифрового фильтра на
микропроцессоре (ПК, ARM, DSP и т.п.)
Интеграция с программой моделирования через
интерпретатор языка С
Генерация VHDL/Verilog кода для ЦФ с
фиксированной точкой
На входе
Коэффициенты цифрового КИХ/БИХ фильтра
На выходе
VHDL/Verilog описание цифровой схемы,
реализующей заданный фильтр
Средства
реализации
язык Python
Применение
Реализация цифрового фильтра на FPGA
Интеграция с программой моделирования
(цифровой симулятор)
Download