Зимняя школа RISC-V 2025

Завершилась Зимняя школа «Программирование для RISC-V», которую ежегодно организует компания YADRO вместе с ведущими вузами России. В этом году мероприятие также проходило совместно и с БГУИР на базе совместной учебной лаборатории БГУИР-YADRO.

Зимняя школа - это недельный интенсив по программированию, в рамках которого участники знакомятся с основами разработки и оптимизации программ для современных процессоров, построенных на основе открытой архитектуры RISC-V. Обучение состоит из двух частей:
- онлайн-лектория;
- очная проектная работа.

В этом году в Зимней школе приняли участие 12 студентов БГУИР, большинство из которых активно обучается в совместной учебной лаборатории БГУИР-YADRO по треку «Системы на кристалле». Онлайн-лекции для всех желающих проводили преподаватели вузов и эксперты YADRO.
В рамках программы лектория слушатели могли познакомиться с архитектурой RISC-V, спецификой компиляции, запуска операционных систем и приложений, а также анализа производительности в RISC-V окружении.
Практическая часть проходила на базе совместной лаборатории БГУИР-YADRO, где студенты работали в группах над инженерными задачами под руководством опытных преподавателей и кураторов со стороны компании. В итоге студенты смогли не только успешно выполнить проекты, но и приобрести ценный командный опыт разработки и оптимизации программного обеспечения для открытой архитектуры RISC-V.

Студенты были вовлечены в проектные работы по двум направлениям:

1. Оптимизация программного декодера JPEG-формата для архитектуры RISC-V.
В рамках этого проекта студенты выполняли оптимизацию программной реализации декодера стандарта JPEG для архитектуры RISC-V. Основной задачей проекта являлось повышение производительности работы декодера, что особенно актуально для устройств с ограниченными вычислительными ресурсами.
Ключевой этап проекта заключался в реализации и оптимизации алгоритма дискретного косинусного преобразования (ДКП), который является одной из наиболее вычислительно нагруженных частей процесса декодирования изображений.

Оптимизированный алгоритм ДКП был адаптирован для архитектуры RISC-V с учетом ее особенностей, что позволило ускорить работу всего процесса декодирования стандарта сжатия JPEG. Для проверки корректности работы и оценки производительности было проведено тестирование программного JPEG-декодера на отладочной FPGA-плате, где RISC-V был реализован в виде soft-процессора.
В рамках работы над данным проектом студенты углубили свои знания в области цифровой обработки изображений, приобрели практический опыт оптимизации и отладки алгоритмов, а также базовые навыки использования набора программных средств для генерации исполняемых файлов для процессоров с архитектурой RISC-V. Отдельно стоит отметить приобретенный практический опыт работы с ассиметричными многопроцессорными системами.

2. Реализация программного генератора случайных числовых последовательностей с использованием DRAM PUF на RISC-V.
В рамках второго проекта студенты реализовывали аппаратно-программное средство генерирования случайных числовых последовательностей, основанных на свойствах физически неклонируемой функции (PUF, Physically Unclonable Function) динамической памяти (DRAM) при включении питания. Проект состоял из нескольких стадий: 1) проверка гипотезы о случайности начальных состояний ячеек DRAM, программной реализации одноканального источника шума; 2) проверка на "живучесть" источника при помощи базовых тестов по рекомендации NIST; 3) программная реализация средств постобработки случайных данных для обеспечения их равномерности; 4) измерение производительности аппаратно-программного генератора случайных данных.
Для оценки уровня случайности как исходных данных, так и данных после обработки, студенты применяли различные подходы - вычисление информационной энтропии по Шеннону, построение гистограмм распределения символов последовательностей, графический тест "распределение на плоскости" и др. Для проверки невоспроизводимости источника шума использовалась нормированная метрика уникальности и графические тесты 1D(2D)-Random Walk.

Особую сложность для студентов вызвала программная реализация методов постобработки исходных шумящих данных, основанных на одно- и многоканальном сигнатурном анализаторе совместно со схемой корректора Фон Неймана. Собрав исходные данные с реальной DRAM-памяти, студенты произвели моделирование и прототипирование всех необходимых тестов и программных модулей, с дальнейшей их реализацией на RISC-V soft-процессоре и оценкой производительности.

Таким образом, благодаря участию в проектах Зимней Школы, студенты БГУИР изучили особенности использования и программирования RISC-V, познакомились с регистровой моделью и организацией памяти RISC-V, получили опыт работы с компилятором GCC и инструментами для сборки "bare-metal"-программ для RISC-V.

Особенностью проведения Зимней Школы в БГУИР явилось то, что студенты работали с soft-процессорным ядром RISC-V, реализованным на отладочной FPGA-плате, благодаря чему получили опыт работы с мультипроцессорной асимметричной вычислительной системой и уникальной реализацией RISC-V процессора
Кроме технических знаний и навыков, участники Зимней школы приобрели опыт анализа полученных результатов, подготовки и защиты презентации перед аудиторией.