Чему вы научитесь
- Базовое понимание архитектуры и ABI RISC-V — назначение регистров, система команд, способы адресации.
- Умение использовать тулчейн для кросс-компиляции и отладки программ RISC-V.
- Базовое понимание системы расширений RISC-V.
- Базовое понимание логики выполнения ассемблерных программ и способов их структурирования.
- Умение читать и понимать ассемблерные программы, понимать результат их действия.
- Умение писать простые программы на ассемблере RISC-V.
- Умение применять расширение V.
- Умение использовать RIPES для визуализации работы программ.
О курсе
У данного курса две задачи - дать общее представление о низкоуровневой разработке и познакомить слушателей с архитектурой RISC-V на примере языка ассемблер данной архитектуры.
Вы узнаете:
- Что такое RISC-V и чем он отличается от других архитектур?
- Как начать разработку на RISC-V не имея под рукой физического устройства?
- Как использовать открытые инструменты разработчика?
- Как программы исполняются на самом низком уровне?
- Как пишутся программы на языке ассемблера?
- Что такое регистры, типы адресации?
- Как программируются доступные устройства RISC-V?
- Что такое расширения RISC-V?
Теоретические знания будут закреплены практикой в автоматизированном практикуме - легковесном программном обеспечении, которое предоставляет вам среду для разработки на RISC-V и позволяет решать задачи данного курса.
Внимание: курс находится в разработке и будет постепенно дополнятся новыми уроками и модулями. На этом этапе проводится оценка эффективности учебного материала, удобства интерфейса, качества заданий и реакции обучающихся. Все замечания и предложения от участников будут учтены для улучшения курса перед его официальным запуском. Комментарии, замечания и предложения просьба оставлять в комментариях к урокам или отправлять на адрес riscv-course-feedback (at) moevm (dot) info.
Для кого этот курс
Начальные требования
-
Базовый навык программирования на любом относительно популярном языке высокого уровня
-
Базовое понимание работы вычислительных систем
Желательно иметь хотя бы начальный навык работы в командной строке и любой опыт с Linux.
Для решения задач вам потребуется установить у себя на компьютере автоматизированный практикум (инструкция дается в курсе).
Наши преподаватели
Как проходит обучение
Материал курса состоит из текстовых конспектов, видео-роликов с объяснением ключевых аспектов и демонстрацией использования инструментов разработчика, а также задач на программирование и отладку, использующих автоматизированный практикум.
Программа курса
Что вы получаете
- Общее представление о низкоуровневом программировании.
- Знание архитектуры RISC-V.
- Навыки работы с тулчейнами кросс-компиляции RISC-V.
- Понимание, как ваша программа на высокоуровневом языке превращается в действия, исполняемые процессором.