- •17 Базовые типы операндов: данные логического типа, строки, адреса
- •18 Базовые типы операндов: числа, разрядность основных форматов, размещение в памяти
- •19, 20 Данные символьного типа: общие сведения, принципы кодирования, стандарты ascii и iso 8859, кодовые страницы, юникод.
- •21. Архитектура на основе общей магистрали. Характеристики системной магистрали.
- •22. Алгоритм функционирования системной магистрали. Взаимодействие устройств.
- •23. Иерархия магистралей: двух- и трехшинная архитектура.
- •24. Шинный арбитраж: предпосылки введения, схемы приоритетов.
- •25. Шинный арбитраж: алгоритмы динамического изменения приоритетов.
- •26. Централизованный параллельный и многоуровневый арбитраж шины.
- •27. Централизованный последовательный арбитраж.
- •28. Децентрализованный арбитраж шин.
- •29. Опросные схемы арбитража шин.
- •30. Протокол шины: понятие, виды протоколов. Транзакции синхронной шины.
- •31. Асинхронные протоколы шины: транзакции, тайм-ауты.
- •32. Пакетный режим пересылки информации. Конвейеризация транзакций.
- •33. Расщепление транзакций. Увеличение полосы пропускания шины.
- •Локализация данных;
- •Управление и синхронизация
- •Обмен информацией
- •Буферизация данных
- •Обнаружение ошибок
- •36. Структурная организация модуля ввода-вывода.
- •37. Алгоритм обмена информацией между центральным процессором и внешним устройством.
- •38 Способы организации ввода-вывода. Программно управляемый ввод-вывод.
- •39. Команды, используемые при программно управляемом вводе-выводе.
- •40. Механизм ввода-вывода по прерываниям
- •41. Методы идентификации устройств, запрашивающих прерывание.
- •42. Векторные прерывания: принципы реализации, виды.
- •43 Приоритеты прерываний. Отличие последовательной обработки прерываний от обработки вложенных прерываний.
- •44. Контроллер прямого доступа к памяти: состав и назначение компонентов, инициализация.
- •45. Алгоритм обмена на основе пдп. Буферизация данных.
- •Варианты реализации механизма пдп. Достоинства и недостатки.
- •Понятия канала ввода-вывода и процессора ввода-вывода.
- •Канальная программа. Управляющее слово канала.
- •Алгоритм функционирования канала ввода-вывода. Способы организации взаимодействия ву с каналом.
- •Режимы канала ввода-вывода.
- •Методы доступа к данным в памяти компьютера.
- •Параметры оценки быстродействия памяти.
- •Иерархическая архитектура памяти компьютера: предпосылки внедрения, принципы реализации и функционирования.
- •Локальность по обращению: виды, использование в архитектурных решениях.
- •Иерархия памяти компьютера: характеристики, описание уровней.
- •Основная память компьютера: назначение, типы запоминающих устройств, способы организации.
- •57 Адресная организация памяти
- •58. Блочная организация памяти: назначение, виды, факторы эффективности применения
- •59. Расслоение памяти и чередование адресов: назначение, принцип реализации
- •60. Ассоциативная память: логическая организация, функционирование
- •63 Логическая и функциональная организация кэш-памяти прямого отображения.
- •64 Логическая и функциональная организация полностью ассоциативной кэш-памяти.
- •65 Логическая и функциональная организация множественно-ассоциативной кэш-памяти.
- •66 Алгоритмы замещения информационных блоков в кэш-памяти: назначение, виды, реализация.
- •67 Согласование содержимого кэш-памяти и оп. Стратегии записи в кэш-памяти.
- •68 Многоуровневая кэш-память. Принстонская и гарвардская архитектуры кэш-памяти.
- •69 Виртуализация памяти компьютеров: предпосылки внедрения, принцип реализации, виды виртуальной памяти.
- •70 Концепция страничной организации памяти. Взаимодействие виртуальной памяти с кэш-памятью.
- •71 Варианты реализации страничной таблицы. Tlb.
- •72 Ограничения страничной организации памяти. Сегментация памяти.
- •73 Проблемы динамического распределения памяти при сегментации. Сегментно-страничная организация памяти.
- •74 Метод колец защиты памяти.
- •75 Метод граничных регистров памяти.
- •76 Защита памяти по ключам.
- •Концепция raid: принципы построения массивов дисковой памяти, назначение, способы реализации.
- •78. Дисковые массивы raid уровней 0, 1, 10: назначение, принципы реализации, свойства.
- •79. Дисковые массивы raid уровней 5, 6: назначение, принципы реализации, свойства.
- •81. Прерывания: фаза прерывания, поток данных, классы прерываний.
- •82. Арифметический конвейер: назначение, принципы реализации. Понятие суперковейера.
- •83. Конвейерная обработка данных: предпосылки внедрения, принципы реализации, способы синхронизации ступеней.
- •1. Синхронный конвейер
- •2. Асинхронный конвейер
- •84. Синхронный конвейер: реализация 6-ступенчатого конвейера, метрики эффективности, оценка выигрыша от внедрения.
- •Ускорение
- •2. Эффективность
- •3 . Пропускная способность (производительность)
- •85. Виды рисков синхронного конвейера.
- •86. Методы снижения приостановок конвейера.
- •88. Risc-архитектура: средства оптимизации использования регистров.
- •89. Параллелизм уровня команд. Концепция vliw-архитектуры.
- •90. Суперскалярные компьютеры: принципы построения, структура процессора.
- •1) Преобразовать выражение в постфиксную форму;
- •2) Показать последовательность стековых операций при использовании полиз.
81. Прерывания: фаза прерывания, поток данных, классы прерываний.
Фаза прерывания
Прерывания – механизм, с помощью которого другие модули могут прервать нормальный процесс выполнения программы пользователя.
Фаза прерывания может* следовать после фазы выполнения команды, перед началом следующего цикла.
Последовательность действий:
сохранение текущего состояния процесса;
переход к процедуре обслуживания прерывания.
*Если прерывания разрешены и имеется запрос прерывания.
Классы прерываний
Программные – исключительные ситуации при выполнении команд (арифметическое переполнение, деление на нуль, попытка выполнения команды с несуществующим кодом операции, обращения по адресу, выходящему за пределы физического адресного пространства компьютера, и т.п.).
Аппаратные – генерируются специальными средствами контроля работоспособности аппаратуры при обнаружении сбоев (пропадание питания, ошибка контроля памяти по четности и т.п.).
Ввода-вывода – генерируются контроллером ввода-вывода (завершение текущей операции ввода-вывода, возникновение ошибки процедуры ввода-вывода).
Прерывная по таймеру – генерируются таймером процессора и используются ОС для переходов в многозадачном режиме.
Поток данных в цикле прерывания
В ПС вместо текущего адреса прерванной программы загружается начальный адрес подпрограммы обработки прерывания.
Текущее содержимое ПС сохраняется (в стеке), что позволяет в дальнейшем возобновить выполнение прерванной программы с той же точки.
82. Арифметический конвейер: назначение, принципы реализации. Понятие суперковейера.
Синоним: магистральный конвейер.
В устройствах, выполняющих содержательную обработку информации (АЛУ).
Магистральные конвейерные линии могут быть:
в нескольких экземплярах в одном процессоре;
ориентированы (каждая) на определенные операции с данными.
Пример арифметического конвейера
Конвейер с дополнительными функциональными устройствами
Функциональное устройство |
Задержка |
Скорость повторения |
Целочисленный блок |
1 |
1 |
Блок сложения с ПТ |
4 |
2 |
Блок умножения |
6 |
3 |
Блок деления |
15 |
15 |
Конвейер с дополнительными функциональными устройствами
Проблемы «длинного» конвейера
структурные конфликты (выдача команд приостанавливается):
устройства не являются полностью конвейерными;
устройства имеют разные времена выполнения (количество записей в регистровый файл в каждом такте может быть больше 1);
конфликты WAW (т.к. команды больше не поступают на ступень WB в порядке их выдачи для выполнения); конфликты типа WAR невозможны (чтение регистров осуществляется на ступени ID);
проблемы с реализацией прерываний (команды могут завершаться не в том порядке, в котором они поступали).
Временная диаграмма синхронного конвейера (k = 5)
Команда |
Такты |
|||||||||
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
|
MULTD F0,F4,F6 |
IF |
ID |
EX11 |
EX12 |
EX13 |
EX21 |
EX22 |
EX23 |
MA |
WB |
. . . |
|
IF |
ID |
EX |
MA |
WB |
|
|
|
|
ADDD F2,F4,F6 |
|
|
IF |
ID |
EX11 |
EX12 |
EX21 |
EX22 |
MA |
WB |
. . . |
|
|
|
IF |
ID |
EX |
MA |
WB |
|
|
. . . |
|
|
|
|
IF |
ID |
EX |
MA |
WB |
|
LD F8,0(R2) |
|
|
|
|
|
IF |
ID |
EX |
MA |
WB |
Суперконвейер
Общие сведения
Superpipeline (1988 г.).
Увеличение количества ступеней конвейера путем:
добавления новых ступеней;
дробления имеющихся ступеней на несколько простых подступеней.
Основные требования:
возможность реализации операции в каждой подступени наиболее простыми техническими средствами (с минимальными затратами времени);
одинаковость задержки во всех подступенях.
Практическая реализация
Первая реализация – процессор MIPS R4000 (1991 г.):
(MIPS – Microprocessor without Interlocked Pipeline Stages (микропроцессор без блокировок в конвейере))
разбиение этапов выборки команды и выборки операнда;
введение в конвейер дополнительного этапа проверки тега.
Микропроцессор |
Кол-во ступеней |
MIPS R4400 |
8 |
UltraSPARC I |
9 |
Pentium III |
10 |
Itanium |
10 |
UltraSPARC III |
14 |
Pentium 4 |
20 |
Недостатки суперконвейера
усугубление проблем, характерных для любого конвейера:
возрастает вероятность конфликтов;
высокий штраф за ошибку предсказания перехода;
усложнение логики взаимодействия ступеней конвейера.