Курс про эту вашу архитектуру
Цели, мотивация
- На ВМК не рассматриваются достижения в железостроении последних, like, 30 лет. А еслии рассматриваются (например, на курсах ВТ и ПОД), то весьма невнятно (личное суждение).
- Хочется этот пробел восполнить, рассказав студентам про то, что есть. А то люди кроме x86 ничего и не знают обычно, равно как нарисовать схему строения современной ВС не могут (да и не современной, обычно, тоже).
prerequisites
Считается, что студенты прослушали как минимум курс Архитектуры ЭВМ. Также желательны (но необязательны) прослушанные курсы ОС, БД, ВТ и ПОД (3 поток).
По форме
Есть мысль, что по объёму тут довольно много. Поэтому есть идея разбить это на две части: более обязательную и менее обязательную. В более обяхательную включать концепции, понятия и прочее, а в менее обязательную — все примеры и прочие вкусности. Так и читать, по три часа — первые полтора часа для энтузиастов (курс-то необязательный, и не факт, что вообще будет официальным матс/к), вторые полтора часа — для фанатов.
По таймлайну
Читать его, видимо, надо весной 2012. Оно более-менее совпадает со второй частью цикла курсов про этот ваш Linux, и является частично базой для курса по ядру, потому что много знаний из этого курса там потребуются.
Структура курса
- Представление, передача и хранение информации в рамках вычислительных систем. Краткий обзор архитектур ВС.
- Вопрос кодирования информации; различимость состояний, передача состояний, храненние состояний
- Механическое представление
- Реле
- Логические операции
- Генератор тактовой частоты
- Вентили
- Библиотека стандартных компонент
- Реализация памяти
- Полупроводниковые транзисторы
- Изготовление ИС и печатных плат
- Особенности передачи электрических сигналов
- Понятие программы, архитектура ВС
- Обзор различных архитектур ВС
Любые классификации и систематизации условны; это скорее аспекты (базисные вектора)
Само разделение на процессор, чипсет, whatever тоже условно - есть схемы, которые по входу дают выход и хранят состояние; далее можно рассматривать функциональность отдельных частей и целого - особенно это хорошо видно на примере первых эвм с низкой интеграцией
Собственно, рассмотреть структуру вс на базе sparc, power, arm, mips, x86, ia-64, alpha, cell; soc, микроконтроллеры, dsp
- Организация программируемых вычислительных устройств (процессоров)
- Общая схема работы
- Особенности различных архитектур: микрокоманды, конвейер, кэш данных, кэш команд, prefetch, branch prediction/спекулятивое исполнение, векторные команды
- Обзор различных архитектур процессоров
- Организация запоминающих устройств с произвольным доступом (память)
- Общее устройство памяти, виды памяти (SRAM, DRAM), общая схема работы. Характеристики памяти.
Ширина, глубина, задержки, количество портов/ассоциативность
- Взаимодействие процессора и памяти
- Контроллер памяти
- Кэширование
- Full buffering
- Взаимодействие памяти и иных устройств (PIO, DMA)
- ECC
- Обзор различных видов памяти.
- Общее устройство памяти, виды памяти (SRAM, DRAM), общая схема работы. Характеристики памяти.
- Адресация
- Организация адресации памяти. Адресное пространство.
- Страничная адресация памяти. MMU. Таблицы страниц. PAE.
- Отображение памяти устройств, shadowing. IOMMU.
- Схема организации и адресации памяти в различных архтектурах
- Процесс начальной загрузки
- Последовательность действий при появлении питания.
- Особенности организации начальной загрузки в x86. BIOS, POST.
- EFI.
- Периферийные устройства
- Взаимодействие устройств
- Порты ввода/вывода
- Отображение адресного пространства
- DMA
- Взаимодействие между устройствами
- Прерывания
- Обзор различных интерфейсов подключения периферийных устройств
- Интерфейсы COM и LPT
- Интерфейсы IDE, SCSI, SATA
USB, FireWire, displayport
- ISA, PCI, PCIe
что характерно, тут нет ни видео (хотя оно будет в разделе пр PCI упомянуто), ни всяких езернетов с инфинибендами и FC. А всё потому, что оно в итоге подключается по одному из вышеозначенных интерфейсов
- Взаимодействие устройств
- Видеоподсистема
- Схема организации работы видеопосистемы
- GPU как вычислитель. Архитектура, принципы работы.
- многопроцессорные и многоузловые системы
- Взаимодействие ядер, процессоров, узлов
- RDMA
- Обзор многопроцессорных и многоузловых архитектур
- Особенности организации встраиваемых систем. Переменная тактовая частота, power states, обзор архитектур.
- Особенности организации отказоустойчивости. Поддержка hotswap, организация redundancy.