Архитектура ЭВМ и язык Ассемблера
Проект курса 2 семестра обучения на ВМК МГУ.
Предполагается 72 аудиторных часа: 48 часов лекций и 24 часа практикума. Также возможно 24 дополнительных часа СРС в виде домашних заданий.
Каждая тема рассчитана на двухчасовую лекцию. Часть тем воспроизводят курс Архитектура и язык ассемблера RISC-V, возможно, в несколько большем объёме.
Терминология курса и учебные машины
В этом разделе изучается архитектура т. н. «Учебной машины» — максимально упрощённого центрального процессора, аналогичного ЭВМ первого поколения без периферии. Рассматриваются несколько вариантов организации и необходимые дополнения (регистры, режимы адресации и т. п.). Параллельно изучаются базовые приёмы низкоуровневого программирования. Раздел базируется на Эмуляторе модельных машин.
Введение. От вычислителя к ЭВМ (получасовое введение)
Литература по разделу доступна на сайте кафедры АЯ и cmc@msu (в частности, Модельные ЭВМ. Учебное пособие для студентов 1 курса, Архитектура ЭВМ. Учебные машины. Методическое пособие)
Архитектура и язык ассемблера RISC-V
В этом разделе изучаются основные принципы организации современных ЭВМ на примере архитектуры RISC-V. Темы этого раздела полностью включают в себя спекцурс Архитектура и язык ассемблера RISC-V. Часть тем освещается более полно, чем в спецкурсе. Главная особенность этого (и предыдущего) разделов — поддержка соответствующих тем практикумом. По состоянию на 2024-06-23 курс базируется на эмуляторах RARS (основной) и Ripes (демонстрация конвейера).
Современные надстройки классической архитектуры
В этом разделе изучается (на примере RISC-V) аппаратные дополнения «классической» архитектуры, которые повышают эффективность использования ЭВМ на современных задачах. Сюда входят примитивы асинхронного взаимодействия (исключения и прерывания) и практика работы с ними, базовые средства повышения быстродействия (конвейер и предсказание перехода), а также обзор про инструментов изоляции (виртуальная память и виртуализация) и экстенсивного расширения платформы (векторные операции, многоядерность и многопроцессорность)
TODO Механизмы защиты памяти. Виртуальная память. Уровни выполнения RISC-V
TODO векторные операции, многоядерные и многопроцессорные системы, аппаратная вирутализация
В качестве литературы по разделу рекомендуются классические труды по архитектуре ЭВМ в адаптации к RISC-V, документация самого RISC-V (эти документы были написаны в расчёте на то, что их действительно будут читать!), а также руководства по программированию под RISC-V.
David A. Patterson, John L. Hennessy «Computer Organization and Design RISC-V Edition»
Харрис Д., Харрис С. «Цифровая схемотехника и архитектура компьютера: RISC-V»
Копия части документации на uneex.org (для ссылок)
TODO PIC и GOT/PLT отсюда
TODO Взаимодействие процессор-память + DMA отсюда
TODO См. первые две ссылки ниже