View on GitHub

ITMO-PE

My study notes about Program Engineering at University ITMO

Архитектура компьютера

Лекция 1

Введение. Вычислительные платформы. Курс

Пенской А.В., 2022


План лекции


Ссылки


Telegram чат

Telegram чат

Telegram


Материалы курса

Материалы

Gitlab SE ITMO


Бот

бот

@the_2022_csa_course_bot


Рационализация.
Точка зрения

Хороший разработчик – тот, кто умеет делать правильные предположения:

Цель курса: дать базу и кругозор для таких предположений.


Последствия

Не пытаемся подготовить

Уточним заголовок


Вычислительная платформа

Platform-based Methodology

Design Process in Platform-based Methodology

Zeng, Haibo, Vishal Shah, Douglas Densmore, and Abhijit Davare. Simple Case Study in Metropolis. Vol. 4. Technical Memorandum UCB/ERL.


Иерархия уровней абстракции


Иерархия платформ для карьеры

"OSI Layers" for Coding Careers

OSI Layers for Coding Careers, swyx


Тенденции

Внутри одного компьютера:

За пределами одного компьютера:

Вопрос: дополнения?


Содержание курса

(предварительное)

Компьютерные системы в целом. Предпосылки


General-Purpose Computer. Проклятие фон Неймана


За пределами одного компьютера

Известные темы?


Оценивание

  баллы
Лаб. 1 $\Sigma 30$
Лаб. 2 $\Sigma 21$
Лаб. 3 $\Sigma 30$
Экзамен 40
Побочные квесты индивидуально
  $\Sigma 121$

Внимание: у вас нет возможности пересдать/досдать в течение семестра.


Лабораторные работы

Трудности формирования лабораторного курса:

Решение:

Примечание: полные версии заданий смотрите в материалах курса


Лабораторная работа 1.
Разбор полётов

Murphy’s law :: Anything that can go wrong will go wrong.

Цель: ознакомить учащегося с примером совокупности принятых решений и обстоятельств, которые привели к негативным последствиям.

Задачи:

  1. Поиск инцидента для анализа.
  2. Согласование инцидента.
  3. Подготовка доклада о выбранном случае.
  4. Выступление в форме диалога.
  5. Добавление вашего отчёта в репозиторий и согласование вопроса на экзамен по вашему докладу.

Оценка лабораторной работы 1

Общая

  баллы
Лаб. 1  
- Преподаватель 14
- Студенты 6
- Участие 10
  $\Sigma 30$

Студенты

Кол-во докладов I II III место остальные
1 1 0 0 0
2 10 5 0 0
3 и более 15 10 5 0

Примечание: размеры групп лучше нормализовать. Хорошая практика: выделить “излишки” в “группу Четверга” для самых больших.


Лабораторная работа 2.
Архитектурные принципы

Цели: ознакомить с принципами, не вошедшими в лекционный курс, а также продемонстрировать разное восприятие материала.

Задачи (для каждой темы/эссе):

  1. Ознакомление с материалами.
  2. Написание эссе в свободной форме, включающее:
    • основные мысли материалов;
    • характеристику значимости материала;
    • ваше рассуждение на тему.
  3. Загрузка эссе в информационную систему.
  4. Рецензирование чужих эссе. Double blind.

Оценка лабораторной работы 2

  max
Лаб. 2  
- Эссе 1 4
- Эссе 2 4
- Эссе 3 4
- Отзывы $9 = (1+2)*3$
  $\Sigma 21$

Примечание: сроки загрузки эссе – жёсткие,
пропустили $\rightarrow$ только на допсе.


(предварительные темы эссе, обновления в орг. чате)

Эссе 1

Эссе 2

Эссе 3


Лабораторная работа 3.
На кончиках пальцев

Цель:


Состав лабораторной работы №3

  1. Спецификация языка программирования
  2. Транслятор
  3. Спецификация системы команд
  4. Модель процессора
  5. Реализация алгоритма(-ов)

Варианты

Вариант определяется:

| Особенность              | 1.                 | 2.                  | 3.     | 4.   |
| ------------------------ | ------------------ | ------------------- | ------ | ---- |
| ЯП. Синтаксис похож на   | Java[Script]/C     | assembler           | forth  | lisp |
| ЯП. Процедуры            | нереентерабельные  | реентерабельные     | нет    |      |
| Проц. Поддержка стека    | есть               | нет                 |        |      |
| Организация памяти       | Принстонская       | Гарвардская         |        |      |
| Архитектура процессора   | CISC               | RISC                | Stack  |      |
| Внутреннее устройство    | microcode          | pipeline            | tagged | нет  |
| Представление маш. кода  | structured+binary  | structured          |        |      |
| Ввод-вывод               | SPI без прерываний | SPI прерывания      | слово  |      |
| Ввод-вывод (ISA)         | memory-mapped      | port-mapped         |        |      |
| Параллелизм              | SISD               | SISD                | SIMT   |      |
| Сторожевой таймер        | есть               | нет                 |        |      |

Оценка лабораторной работы №3 (требуется детализация)

  max
Лаб. 3  
  $\Sigma 30$

Текущее тестирование


Визуализация расчёта cut-of-score


Побочные квесты

Возможность получить дополнительные баллы. Примеры:

Примечание:


Merge request policy



Экзамен

Устный групповой экзамен. Сдаётся группами лабораторной работы №1. Включает два вопроса каждому:

Оценка:

Значительное внимание оказывает ваше участие в дискуссии (как положительное, так и отрицательное).


Автомат

Если у вас 60+ баллов и вам достаточно.

Упрощённый экзамен

Сдача долгов, допса

Осуществляется за пределами семестра путём формирования “виртуальной группы”, для которой воспроизводится лабораторный курс целиком.