Верификация систем на кристалле

Репозиторий дисциплины образовательной программы «Информатика и вычислительная техника» (бакалавриат), 1–2 модули 2026/2027 учебного года (осенний семестр). Московский институт электроники и математики им. А. Н. Тихонова, департамент компьютерной инженерии.

№ Раздел Содержание раздела
1 Наименование дисциплины Верификация систем на кристалле
2 Семестр 1 — 1–2 модули 2026/2027 учебного года (осенний семестр)
3 Форма промежуточной аттестации Экзамен во 2 модуле (письменная работа с защитой)
4 Трудоемкость 6 з.е., 228 час.: лекции — 30, практические занятия — 32, самостоятельная работа — 166
5 Цель дисциплины Сформировать знания и практические умения верификации цифровых устройств и систем на кристалле: от тестбенча отдельного блока до проверки СнК на софт-процессоре RISC-V моделированием и на ПЛИС.
6 Пререквизиты Цифровая схемотехника и язык описания аппаратуры Verilog; Архитектура ЭВМ и организация процессоров; Программирование на C/C++; Работа в ОС Linux: терминал, make, Git.
7 Кореквизиты Проектирование на ПЛИС; Встраиваемые системы.
8 Постреквизиты Проектирование систем на кристалле; Проектная работа и производственная практика; Выпускная квалификационная работа по направлению СнК и ПЛИС.
9 Профессиональные компетенции ППК-Р1, ППК-Р2, ППК-Р3, ИП-ДРС-1 (индикаторы ППК-Р1.7, ППК-Р2.1, ППК-Р2.2, ППК-Р2.3, ППК-Р3.1, ППК-Р3.2, ИП-ДРС-1.1, ИП-ДРС-1.4)
10 Основные профессиональные результаты обучения Строит тестовые окружения на Verilog, C++ (Verilator) и Python (cocotb); разрабатывает тестовые последовательности и тестовые программы; локализует и исправляет дефекты; подключает IP-блоки к шине Wishbone; пишет и отлаживает bare-metal программы для RISC-V; проверяет СнК моделированием и на ПЛИС.
11 Вклад в профессиональную роль Готовит к роли «инженер-программист» в области «разработка системного программного обеспечения и верификация цифровых устройств»: проверка работоспособности и исправление дефектов (ППК-Р2), интеграция модулей и проверка выпусков (ППК-Р3), отладка кода (ППК-Р1.7), низкоуровневое ПО процессорных систем (ИП-ДРС-1).
12 Связь с другими дисциплинами Опирается на цифровую схемотехнику, архитектуру ЭВМ и программирование на C/C++; дает методическую и инструментальную базу для проектирования СнК, проектной работы и ВКР.
13 Практические форматы Практические занятия — 32 ч: работы № 1–2 (тестбенч UART и PicoSoC в Icarus Verilog) выполняются на занятиях, работы № 3–5 (тестовое окружение интерфейса в Verilator, верификация софт-процессора PicoRV32, верификация памяти и двухъядерной системы) защищаются по критериям.

Домашнее задание в бригаде из 2–3 человек: регрессионные тесты UART на cocotb (практико-ориентированное задание с паспортом) и проект по одному из 14 вариантов.

Контроль на лекциях: 17 заданий по восьми лекциям.
14 Использование материалов индустрии Открытые промышленные инструменты: Verilator, Icarus Verilog, cocotb, riscv-gnu-toolchain, PicoRV32, verilog-wishbone.

Партнер дисциплины — YADRO: учебник серии «Книжная полка истового инженера», материалы YADRO в лекциях 5 и 6, карьерный трек «Импульс», ядро SCR1 компании Syntacore. Подробнее — в КРМ.md.
15 Универсальные компетенции Системное мышление и внимательность к деталям при планировании проверки; самостоятельный поиск и чтение технической документации; аргументация результата на защите; работа в бригаде с индивидуальной ответственностью за свой набор тестов.
16 Профессиональный результат и артефакты Репозиторий практических работ и домашнего задания: тестбенчи на Verilog, C++ и cocotb, скрипты сборки, прошивки для PicoRV32, отчеты о верификации с планом проверки и журналом дефектов, проект СнК, проверенный на ПЛИС.

Взаимодействие с индустриальным партнером

Элемент Содержание Где в курсе
Учебник курса Уилкокс П., Романов А. Ю. «Профессиональная верификация» (ДМК Пресс, 2025) — серия «Книжная полка истового инженера», издается при поддержке YADRO; книга подготовлена МИЭМ НИУ ВШЭ. Лекции 1–8, экзамен
Материалы YADRO в лекциях Схема совместной симуляции и тесты системы команд RISC-V из материалов YADRO. Лекции 5 и 6
Карьерный трек Летняя стажировка YADRO «Импульс» (edu.yadro.com/impulse) представлена студентам как продолжение курса. Лекция 1
Открытое ядро Syntacore Вариант домашнего задания с заменой PicoRV32 на ядро SCR1 компании Syntacore (входит в группу YADRO). Домашнее задание

Планируемое развитие (формат участия согласуется с партнером):

  • Тесты системы команд RV32I в практической работе № 4 — обязательный прогон тестов ISA до прикладной программы — по аналогии с материалами YADRO лекции 5.
  • Ядро SCR1 как альтернативный вариант практической работы № 4 — перенос варианта домашнего задания в практикум.
  • Гостевая лекция инженера YADRO по промышленной верификации процессорных ядер — по согласованию с партнером.
  • Темы домашних проектов по задачам партнера и участие его представителя в защите — по согласованию с партнером.

Материалы дисциплины