О практикуме
Данный лабораторный практикум использует материалы учебных курсов The Linux Foundation:
- Introduction to RISC-V (LFD110x),
- Foundations of RISC-V Assembly Programming (LFD117x),
- RISC-V Toolchain and Compiler Optimization Techniques (LFD113x),
- Building Applications with RISC-V and FreeRTOS (LFD112x),
-
Microcontroller Applications with RISC-V (LFD115x),
распространяемых под лицензией CC BY 4.0. Разработка лабораторного практикума выполнена авторским коллективом (Заславский Марк Маркович, Костичев Сергей Валентинович, Буренева Ольга Игоревна, Морозов Сергей Михайлович, Терехина Софья Анатольевна) по заказу Альянса RISC-V, допускается к использованию под лицензией CC BY 4.0.
Состав практикума
Данный практикум покрывает пять больших тематик:
- Введение в инструменты разработчика RISC-V на примере Syntacore Kit.
- Язык ассемблера для RISC-V.
- Оптимизации по на уровне компилятора и методы отладки для RISC-V.
- Разработка ПО для операционных систем реального времени(ОСРВ) на примере FreeRTOS.
- Программирование для микроконтроллеров на базе RISC-V.
Презентация к Лабораторному практикуму
Организация практикума именно преследует цель - познакомить студента с особенностями архитектуры RISC-V на различных уровнях разработки. Именно для этой цели большое внимание уделяется изучению ассемблера. С точки зрения авторов практикума, понимание архитектуры невозможно без умения самостоятельно составлять программы на данном языке. Остальные темы позволяют получить минимальные необходимые навыки для самых востребованных областей, где применяется RISC-V - микроконтроллеры и встраиваемая разработка.
Для кого предназначен данный практикум
Практикум ориентирован на широкую аудиторию студентов технических вузов, обучающихся по специальностям, связанным с разработкой ПО и информационно-вычислительной техникой. Авторы ориентируют практикум на студентов второго курса, обладающих начальным опытом программирования в объеме первого года занятий. Для освоения практикума желательны, но не обязательны следующие навыки:
- Программирование на языке C.
- Работа в командной строке Linux.
- Базовые представления о многопоточном программировании.
Как адаптировать задания практикума для различных условий
В ряде случаев уровень заданий лабораторных работ из практикума может оказаться простым для сильных групп или студентов, имеющих продвинутые знания по рассматриваемым тема. В таком случае авторы призывают преподавателей вносить изменения в формулировки заданий - например, усложнять требуемое поведения или включать дополнительные шаги. Для ряда лабораторных, где такое усложнение может быть неочевидно, даны прямые указания как именно можно изменить задание.
Рекомендации
Стремительное развитие открытой архитектуры и системы команд RISC-V предлагает новые возможности как для индустрии проектирования и реализации микропроцессоров и электронно-компонентной базы, так и для системного и прикладного программирования. Для комплексного развития данного направления в России необходимо организовать системную подготовку квалифицированных кадров, нацеленных на разработку, внедрение и использование технологий на базе современных микропроцессорных архитектур RISC-V. Актуальными становятся классификация особенностей использования данных технологий в различных областях и разработка рекомендаций по преподаванию соответствующих разделов образовательной программы, в том числе по внедрению доступных образовательных материалов в учебный процесс вузов для профильных направлений подготовки.
Как один из шагов в этом направлении, рабочей группой Академического комитета Альянса RISC-V подготовлен проект рекомендаций по преподаванию технологий RISC-V по областям знаний. Проект основан на перечне разделов направления Computing (Вычисления) рекомендаций Computing Curricula и отражает особенности, связанные со спецификой архитектуры и технологий RISC-V.
Предполагается, что данный документ будет уточняться и дополняться. С замечаниями и предложениями можно обратиться по адресу edu@riscv-alliance.ru.
Дополнительно подготовлен список рекомендованных образовательных ресурсов и материалов по технологиям RISC-V с отсылкой к соответствующим разделам данных рекомендаций.
Области знаний
1. Пользователи и организации
(C-1.1) Социальные аспекты и профессиональные практики
При изучении раздела рекомендуется обратить внимание на следующие аспекты, связанные с применением технологий RISC-V:
- История RISC-V с акцентом на лицензирование и технологические преимущества в "противостоянии платформ".
- Открытость и расширяемость архитектуры
- Перспективы и потенциальные проблемы использования
Примеры учебных курсов и образовательных материалов можно найти в списке рекомендованных источников с пометкой (C-1.1)
(C-1.2) Политики и управление безопасностью
При изучении раздела рекомендуется обратить внимание на следующие аспекты, связанные с применением технологий RISC-V:
- Разработка безопасного ПО для RISC-V-архитектур
Примеры учебных курсов и образовательных материалов можно найти в списке рекомендованных источников с пометкой (C-1.2)
(C-1.3) Управление информационными системами
При изучении раздела рекомендуется обратить внимание на следующие аспекты, связанные с применением технологий RISC-V:
- Возможности для управления гетерогенными системами с единой программной моделью RISC-V
Примеры учебных курсов и образовательных материалов можно найти в списке рекомендованных источников с пометкой (C-1.3)
(C-1.4) Архитектура организации
При изучении раздела рекомендуется обратить внимание на следующие аспекты, связанные с применением технологий RISC-V:
- Доверенные среды исполнения RISC-V
- Промышленные встраиваемые системы на RISC-V
Примеры учебных курсов и образовательных материалов можно найти в списке рекомендованных источников с пометкой (C-1.4)
(C-1.5) Управление проектами
Изучение раздела в настоящий момент не предполагает специфики, связанной с RISC-V технологиями.
(C-1.6) Дизайн взаимодействия с пользователем
Изучение раздела в настоящий момент не предполагает специфики, связанной с RISC-V технологиями
2. Моделирование систем
(C-2.1) Вопросы и принципы безопасности
При изучении раздела рекомендуется обратить внимание на следующие аспекты, связанные с применением технологий RISC-V:
- Примеры логики TPM и/или secure boot (практ. часть)
- Безопасность встраиваемых RISC-V-систем
Примеры учебных курсов и образовательных материалов можно найти в списке рекомендованных источников с пометкой (C-2.1)
(C-2.2) Анализ и проектирование систем
При изучении раздела рекомендуется обратить внимание на следующие аспекты, связанные с применением технологий RISC-V:
- Проектирование решений с учетом многообразия ядер RISC-V, специализированных расширений, инструментария и библиотек
Примеры учебных курсов и образовательных материалов можно найти в списке рекомендованных источников с пометкой (C-2.2)
(C-2.3) Анализ и спецификация требований
Изучение раздела в настоящий момент не предполагает специфики, связанной с RISC-V технологиями.
(C-2.4) Управление данными и информацией
Изучение раздела в настоящий момент не предполагает специфики, связанной с RISC-V технологиями.
3. Системная архитектура и инфраструктура
(C-3.1) Виртуальные системы и сервисы
При изучении раздела рекомендуется обратить внимание на следующие аспекты, связанные с применением технологий RISC-V:
- Изучение гипервизора на примере открытых спецификаций RISC-V
Примеры учебных курсов и образовательных материалов можно найти в списке рекомендованных источников с пометкой (C-3.1)
(C-3.2) Интеллектуальные системы
При изучении раздела рекомендуется обратить внимание на следующие аспекты, связанные с применением технологий RISC-V:
- Специализация наборов команд, портирование, оптимизация и применение библиотек и систем (лекции и практ. часть по тензорным компиляторам, OpenCV, OpenVINO, пакетам машинного и глубокого обучения)
- Обзор имеющихся наработок в области AI на RISC-V и перспективы развития
Примеры учебных курсов и образовательных материалов можно найти в списке рекомендованных источников с пометкой (C-3.2)
(C-3.3) Интернет вещей
При изучении раздела рекомендуется обратить внимание на следующие аспекты, связанные с применением технологий RISC-V:
- Специализированные наборы команд. Обзор текущих наработок, их развитие, польза расширений и специализированные ASIC
- RISC-V-микроконтроллеры в IoT
Примеры учебных курсов и образовательных материалов можно найти в списке рекомендованных источников с пометкой (C-1.1)
(C-3.4) Параллельные и распределенные вычисления
При изучении раздела рекомендуется обратить внимание на следующие аспекты, связанные с применением технологий RISC-V:
- Параллельные вычисления на RISC-V (дополнить практ. часть курсов примерами на RISC-V)
- Анализ производительности и оптимизация программ на RISC-V (дополнить практ. часть примерами оптимизации, специфичными для RISC-V процессоров)
Примеры учебных курсов и образовательных материалов можно найти в списке рекомендованных источников с пометкой (C-3.4)
(C-3.5) Компьютерные сети
Изучение раздела в настоящий момент не предполагает специфики, связанной с RISC-V технологиями.
(C-3.6) Встроенные системы
При изучении раздела рекомендуется обратить внимание на следующие аспекты, связанные с применением технологий RISC-V:
- Разработка встраиваемых систем на платформе RISC-V (практ. часть)
Примеры учебных курсов и образовательных материалов можно найти в списке рекомендованных источников с пометкой (C-3.6)
(C-3.7) Технология интегрированных систем
При изучении раздела рекомендуется обратить внимание на следующие аспекты, связанные с применением технологий RISC-V:
- Создание интегрированных гетерогенных систем с единой программной моделью RISC-V
Примеры учебных курсов и образовательных материалов можно найти в списке рекомендованных источников с пометкой (C-3.7)
(C-3.8) Платформенные технологии
При изучении раздела рекомендуется обратить внимание на следующие аспекты, связанные с применением технологий RISC-V:
- Аппаратная платформа RISC-V, технологические преимущества и ограничения, особенности реализации прикладных решений
Примеры учебных курсов и образовательных материалов можно найти в списке рекомендованных источников с пометкой (C-3.8)
(C-3.9) Безопасность: технология и реализация
При изучении раздела рекомендуется обратить внимание на следующие аспекты, связанные с применением технологий RISC-V:
- Примеры логики TPM или secure boot (практ. часть)
- Криптографические расширения RISC-V ISA
Примеры учебных курсов и образовательных материалов можно найти в списке рекомендованных источников с пометкой (C-3.9)