Различия между версиями 5 и 6
Версия 5 от 2011-12-21 09:32:56
Размер: 5585
Редактор: eSyr
Комментарий:
Версия 6 от 2012-01-20 03:35:52
Размер: 9913
Редактор: eSyr
Комментарий:
Удаления помечены так. Добавления помечены так.
Строка 24: Строка 24:
 * Основные задачи: представить, передавать и хранить информацию.
  * Вопрос кодирования информации; различимость состоний, передача состояний, храненние состояний
  * Механическое представление (шестерёнки)
  * Реле
  * Полупроводниковые транзисторы
   * Логические операции
   * Библиотека стандартныхх компонент
   * Реализация памяти
  * немного о передаче электрических сигналов
  * Понятие программы, архитектура
  * Обзор различных архитектур ВС
   * Любые классификации и систематизации условны; это скорее аспекты (базисные вектора)
   * Само разделение на процессор, чипсет, whatever тоже условно - есть схемы, которые по входу дают выход и хранят состояние; далее можно рассматривать функциональность отдельных частей и целого - особенно это хорошо видно на примере первых эвм с низкой интеграцией
   * Собственно, рассмотреть структуру вс на базе sparc, power, arm, mips, x86, ia-64, alpha, cell; soc, микроконтроллеры, dsp
 * Процессор (программируемый исполнителя)
  * Общая схема работы
  * Различные улучшения: микрокоманды, конвейер, кэш данных, кэш команд, prefetch, branch prediction/спекулятивое исполнение, векторные команды
  * Обзор различных архитектур процессоров
 * Память
  * Общее устройство памяти, виды памяти (sram, dram, а также прочие nand), схема работы
   * Ширина, глубина, задержки, количество портов/ассоциативность
  * Взаимодействие исполнителя и памяти
   * банки памяти
   * кеши
   * full buffered
  * Взаимодействие памяти и иных устройств (pio, dma)
  * Особенности: ecc
  * История: какая память была и бывает (sdram, ddr, rambus)
 * Адресация
  * Собственно, адресация памяти
  * таблицы страниц
  * PAE
  * отображение памяти устройств, mmu, резервирование, shadowing.
 * Процесс начальной загрузки
  * что происходит, когда появляется питание.
  * x86: bios, efi. post.
 * устройства
  * взаимодействие устройств
   * порты ввода/вывода
   * отображение адресного пространства
   * dma
   * взаимодействие между устройствами
   * прерывания
  * интерфейсы подключения (обзор)
  * COM
  * LPT
  * ATA
  * SCSI
  * USB, SATA
  * FireWire, displayport
  * ISA, PCI, PCIe
  * HT
  * qpi
  * что характерно, тут нет ни видео (хотя оно будет в разделе пр PCI упомянуто), ни всяких езернетов с инфинибендами и FC. А всё потому, что оно в итоге подключается по одному из вышеозначенных интерфейсов
 * Всякое
  * GPU: собственные процессоры, особенности работы
  * многопроцессорные системы
  * ethernet, ib
  * особенности embedded (переменная частота, power states, специфические шины, обзор архитектур)
  * ha: hotswap, redundancy
  
  

Курс про эту вашу архитектуру

Цели, мотивация

  • На ВМК не рассматриваются достижения в железостроении последних, like, 30 лет. А еслии рассматриваются (например, на курсах ВТ и ПОД), то весьма невнятно (личное суждение).
  • Хочется этот пробел восполнить, рассказав студентам про то, что есть. А то люди кроме x86 ничего и не знают обычно, равно как нарисовать схему строения современной ВС не могут (да и не современной, обычно, тоже).

prerequisites

Считается, что студенты прослушали как минимум курс Архитектуры ЭВМ. Также желательны (но необязательны) прослушанные курсы ОС, БД, ВТ и ПОД (3 поток).

По форме

Есть мысль, что по объёму тут довольно много. Поэтому есть идея разбить это на две части: более обязательную и менее обязательную. В более обяхательную включать концепции, понятия и прочее, а в менее обязательную — все примеры и прочие вкусности. Так и читать, по три часа — первые полтора часа для энтузиастов (курс-то необязательный, и не факт, что вообще будет официальным матс/к), вторые полтора часа — для фанатов.

По таймлайну

Читать его, видимо, надо весной 2012. Оно более-менее совпадает со второй частью цикла курсов про этот ваш Linux, и является частично базой для курса по ядру, потому что много знаний из этого курса там потребуются.

Структура курса

  • Основные задачи: представить, передавать и хранить информацию.
    • Вопрос кодирования информации; различимость состоний, передача состояний, храненние состояний
    • Механическое представление (шестерёнки)
    • Реле
    • Полупроводниковые транзисторы
      • Логические операции
      • Библиотека стандартныхх компонент
      • Реализация памяти
    • немного о передаче электрических сигналов
    • Понятие программы, архитектура
    • Обзор различных архитектур ВС
      • Любые классификации и систематизации условны; это скорее аспекты (базисные вектора)
      • Само разделение на процессор, чипсет, whatever тоже условно - есть схемы, которые по входу дают выход и хранят состояние; далее можно рассматривать функциональность отдельных частей и целого - особенно это хорошо видно на примере первых эвм с низкой интеграцией
      • Собственно, рассмотреть структуру вс на базе sparc, power, arm, mips, x86, ia-64, alpha, cell; soc, микроконтроллеры, dsp
  • Процессор (программируемый исполнителя)
    • Общая схема работы
    • Различные улучшения: микрокоманды, конвейер, кэш данных, кэш команд, prefetch, branch prediction/спекулятивое исполнение, векторные команды
    • Обзор различных архитектур процессоров
  • Память
    • Общее устройство памяти, виды памяти (sram, dram, а также прочие nand), схема работы
      • Ширина, глубина, задержки, количество портов/ассоциативность
    • Взаимодействие исполнителя и памяти
      • банки памяти
      • кеши
      • full buffered
    • Взаимодействие памяти и иных устройств (pio, dma)
    • Особенности: ecc
    • История: какая память была и бывает (sdram, ddr, rambus)
  • Адресация
    • Собственно, адресация памяти
    • таблицы страниц
    • PAE
    • отображение памяти устройств, mmu, резервирование, shadowing.
  • Процесс начальной загрузки
    • что происходит, когда появляется питание.
    • x86: bios, efi. post.
  • устройства
    • взаимодействие устройств
      • порты ввода/вывода
      • отображение адресного пространства
      • dma
      • взаимодействие между устройствами
      • прерывания
    • интерфейсы подключения (обзор)
    • COM
    • LPT
    • ATA
    • SCSI
    • USB, SATA
    • FireWire, displayport

    • ISA, PCI, PCIe
    • HT
    • qpi
    • что характерно, тут нет ни видео (хотя оно будет в разделе пр PCI упомянуто), ни всяких езернетов с инфинибендами и FC. А всё потому, что оно в итоге подключается по одному из вышеозначенных интерфейсов
  • Всякое
    • GPU: собственные процессоры, особенности работы
    • многопроцессорные системы
    • ethernet, ib
    • особенности embedded (переменная частота, power states, специфические шины, обзор архитектур)
    • ha: hotswap, redundancy
  • Обзор предметной области, о чём будет рассказываться
    • Структура ВС
    • Архитектуры процессоров
    • Память
    • Периферия и интерконнект
  • Исторический экскурс
    • Так как это классика ВМК — каждый курс начинать с подобного, то нужно рассказать ровно про то, про что в остальных курсах в рамках этой части не рассказывают.
    • Можно поднять книжку Королёва, но реально, видимо, стоит акцентировать внимание на power'ах, arm'ах и прочих mips'ах. Вообще, это такое краткое введение, которое должно больше показать, откуда что берётся
  • Идеология
    • Код Петцольда
  • Структура ВС
    • How to make things work
    • Процесс загрузки системы и что для него требуется
    • Что бывает
      • x86 испокон веков до наших дней
      • embedded (!!!)
      • Всякое интырпрайзное (power, sparc, system 360+?)
  • Архитектуры процессоров
    • Чем занимается процессор
    • Исполнение команд
      • Тут особо смысла задерживаться нет — довольно подробно это рассматривается на Архитектурах ЭВМ. Хотя, конкретные примеры, типа армов-альф-мипсов-эпиков-паверов-спарков рассмотреть таки можно, равно как и современный IA-32, дабы показать его уродливость.
  • Память
    • Какая бывает. Как устроена современная память.
    • Работа процессоров разных архитектур с памятью, механизмы защиты памяти.
  • Периферия
    • какая периферия бывает. Просто обзор, подробно далее
    • Общие концепции работы процессора с периферией. Собственно, все сводится к двум вещам:
      • Управление периферией процессором.
      • Работа с памятью. Сюда всякое PIO-DMA-MMU.
    • COM
    • LPT
    • ATA
    • SCSI
    • USB, SATA
    • FireWire

    • ISA, PCI, PCIe
    • HT
    • что характерно, тут нет ни видео (хотя оно будет в разделе пр PCI упомянуто), ни всяких езернетов с инфинибендами и FC. А всё потому, что оно в итоге подключается по одному из вышеозначенных интерфейсов
  • Всякое
    • GPU: собственные процессоры, особенности работы

eSyr/ArchitectureCoursePlan (последним исправлял пользователь eSyr 2012-08-09 11:38:14)