Бакалавриат
2024/2025![Цель освоения дисциплины](/f/src/global/i/edu/objectives.svg)
![Планируемые результаты обучения](/f/src/global/i/edu/results.svg)
![Содержание учебной дисциплины](/f/src/global/i/edu/sections.svg)
![Элементы контроля](/f/src/global/i/edu/controls.svg)
Высокоуровневое и имитационное моделирование цифровых систем
Статус:
Курс обязательный (Информатика и вычислительная техника)
Направление:
09.03.01. Информатика и вычислительная техника
Кто читает:
Департамент компьютерной инженерии
Когда читается:
4-й курс, 1-3 модуль
Формат изучения:
без онлайн-курса
Охват аудитории:
для своего кампуса
Язык:
русский
Кредиты:
9
Контактные часы:
76
Программа дисциплины
Аннотация
Курс «Высокоуровневое и имитационное моделирование цифровых систем» базируется на материалах предшествующих дисциплин «Проектирование систем на кристалле», «Теория автоматов», «Сети и телекоммуникации», «Инструментальные средства и технологии программирования», «Информатика», НИС «Python в науке о данных».
Курс позволит студентам приобрести теоретические и практические навыки по разработке, проектированию, моделированию, верификации и программированию цифровых систем (портативные системы, системы управления и контроля, видео-/аудио-системы и т.д.), а также обеспечит освоение новых САПР (таких, как: Intel FPGA Quartus Prime, ModelSim/QuestaSim) и языка программирования (проектирования цифровых систем) SystemVerilog с интерфейсом DPI. В рамках курса студенты также знакомятся с тем, как машинное обучение реализуется на аппаратном уровне. Курс расширяет знания, которые студенты получают в рамках дисциплин, связанных с проектированием программного обеспечения, а также программированием микропроцессоров/микроконтроллеров/одноплатных компьютеров (в том числе и для разработки систем машинного обучения); является одним из базовых для работы над ВКР и прохождения производственной практики на предприятиях с конструкторским уклоном.
Цель освоения дисциплины
- Приобретение теоретических и практических навыков по разработке, проектированию и программированию цифровых систем (портативных систем, систем управления и контроля, видео-/аудио-систем и пр.). При этом акцент в данной дисциплине сделан на программную составляющую цифровых встраиваемых систем и разработку программного обеспечения для них.
- Изучение особенностей языка программирования и верификации цифровых систем SystemVerilog и интерфейса DPI.
- Изучение применения Искусственного интеллекта во встраиваемых системах. Освоение методов реализации искусственных нейронных сетей во встраиваемых системах.
- Изучение использования современных библиотек OpenCV, OpenCL для проектирования встраиваемых систем. Методы моделирования цифровых систем с использованием данных библиотек.
- Изучение использования различных аппаратных платформ (одноплатных компьютеров, ПЛИС и др.) и особенностей разработки ПО под них, в том числе и для методов искусственного интеллекта. Обучение методам моделирования, отладки и верификации программно-аппаратных систем на разных уровнях абстракции.
- Изучение особенностей проектирования многопроцессорных систем и разработки ПО для них. Изучение сетей на кристалле и методов их высокоуровневого и HDL моделирования.
- Изучение методов синтеза аппаратных описаний (HDL) цифровых систем из высокоуровневого описания.
Планируемые результаты обучения
- Иметь навыки (приобрести опыт): работы в ОС реального времени для встраиваемых систем;
- Иметь навыки (приобрести опыт): синтеза процессорных ядер MIPS, Nios II, ARM (HPS) и их программирования;
- Знать методы программирования автоматизированных систем;
- Знать особенности применения библиотек OpenCV, OpenCL для проектирования автоматизированных систем.
- Знать подходы к описанию и верификации цифровых систем
- Знать принципы проектирования многоядерных систем;
- Иметь навыки (приобрести опыт): проектирования в специализированном программном обеспечении Intel Quartus Prime;
- Иметь навыки (приобрести опыт): работы в среде моделирования ModelSim и проектирования/верификации цифровых систем на языке SystemVerilog совместно с высокоуровневыми языками с использованием интерфейса DPI.
- Иметь навыки (приобрести опыт): разработки под чипы Intel FPGA и платформу OpenVINO, а также Raspberry PI.
- Уметь o вести разработку программной части автоматизированной системы с применением современных методов Искусственного интеллекта, библиотек обработки медиа-данных и проектирования гетерогенных многоядерных вычислительных систем.
Содержание учебной дисциплины
- Автоматизация проектирования цифровых СБИС
- Трансляция HDL-описаний и синтез логических схем
- Методы структурного представления булевых функций
- Оптимизация логических схем с помощью итеративной замены подсхем
- Технологическое отображение логических схем
- Проверка эквивалентности логических схем
- Место дисциплины в образовательном треке студента и его будущей карьере
- Особенности проектирования программного обеспечения для встраиваемых систем
- Особенности реализации искусственных нейронных сетей на уровне аппаратуры. Моделирование работы искусственных нейронных сетей
- Высокоуровневая программная верификация цифровых систем
- Разработка ПО для одноплатных компьютеров. Моделирование работы программно-аппаратных комплексов
- OpenCL и OpenCV для проектирования встраиваемых систем, в том числе с использованием компьютерного зрения
- Разработка и программирование гетерогенных многоядерных систем. Высокоуровневое и HDL моделирование сетей на кристалле
Элементы контроля
- Домашняя работаОписание требований к выполнению работы содержится в метод. указаниях.
- Контроль на лекциях 1
- Контроль на лекциях 2
- Экзамен 1
- Экзамен 2Описание экзамена и список вопросов содержатся в методических указаниях
- Практические работы 1
- Практические работы 2