- •Глава 1. Основные понятия 9
- •Глава 8. Организация виртуальной памяти 227
- •Глава 9. Организация кэш-памяти 246
- •Глава1. Основные понятия
- •1.1. Система программно-аппаратных средств обработки информации
- •1.2.Традиционная классификация эвм
- •1.3. Структуры эвм
- •1.4. Многомашинные комплексы и многопроцессорные системы
- •1.5. Эволюция режимов работы эвм
- •1.5. Особенности построения и эксплуатации современных многопроцессорные и многомашинных комплексов.
- •Глава 2. Программная модель процессора
- •2.1. Общие понятия
- •2.2. Виды используемых структур памяти по принципам размещения и поиска информации
- •2.3. Организация оперативной памяти
- •2.3.1. Оперативная память и адресные пространства процессора
- •2.3.2. Адресация многобайтовых объектов в оперативной памяти
- •2.3.3. Структура и типы команд
- •2.4. Режимы адресации
- •2.5. Типы машинных арифметик
- •2.6. Управление потоком команд.
- •2.7. Контекст программы
- •2.8. Команды cisc- и risc-архитектуры
- •Глава 3. Программная модель мп Intel
- •3.1. Режимы работы
- •3.2. Программная модель 16-ти битового микропроцессора мп ia-16
- •3.2.1. Модель памяти
- •3.2.2. Порты ввода/вывода
- •2.2.3. Регистровый файл
- •3.2.4. Структура команд
- •3.3. Программная модель 32-битового микропроцессора
- •3.3.1. Основные особенности организации
- •3.3.2. Модель памяти
- •3.3.3. Регистровый файл
- •3.3.4. Структура команд и режимы адресации
- •3.3.5. Структура данных
- •Глава 4. Программные модели мп корпорации dec
- •4.1. Программная модель процессоров семейства pdp-11
- •4.2. Программная модель процессоров эвм vax-11 (см 1700)
- •Глава 5. Система прерывания
- •5.1.Функции системы прерывания и общие решения по реализации
- •5.2. Система прерывания в мп intel
- •5.2.1. Система прерывания в мп ia-16
- •5.2.2. Особенности системы прерывания в мп ia-32
- •5.2.3. Организация системы прерывания в pdp 11
- •Глава 6. Организация ввода-вывода
- •6.1. Система ввод/вывода
- •6.2.Теоретические основы операций ввода/вывода
- •6.3. Синхронизация передачи данных при вводе/выводе
- •6.3.1. Ввод/вывод с проверкой готовности
- •6.3.2. Ввод/вывод с использованием системы прерывания
- •6.3.3. Ввод/вывод с использованием устройств прямого доступа к памяти
- •Глава 7. Шинные интерфейсы
- •7.1. Общие положения
- •7.2. Асинхронный системный интерфейс "Общая шина"
- •7.3. Системные интерфейсы мп ia
- •7.4. Локальный интерфейс микропроцессора i80386
- •7.4.1. Особенности локального интерфейса i80386
- •7.4.2. Диаграммы работы локального интерфейса мп i80386
- •7.4.3. Модель функционирования локального интерфейса мп i80386. (интерфейс с конвейерной передачей данных)
- •7.4.4. Специальные циклы
- •7.5. Локальный интерфейс микропроцессора i486 (интерфейс с пакетной передачей данных)
- •7.5.1. Особенности локального интерфейса i486
- •7.5.2. Диаграммы работы локального интерфейса мп i486
- •7.5.3. Модель функционирования локального интерфейса мп i486
- •7.6. Локальный интерфейс мп Pentium (интерфейс с пакетной передачей данных и конвейеризацией передачи адреса)
- •7.7. Интерфейсы с расщепленными транзакциями
- •Глава 8. Организация виртуальной памяти
- •8.2. Основные задачи виртуальной памяти
- •8.3. Страничная организации виртуальной памяти
- •8.3.1. Страничная организация памяти
- •8.3.2. Виртуальная память на основе таблицы математических страниц
- •8.3.3. Упрощенная схема виртуальной памяти на основе таблицы физических страниц
- •8.3.4. Схема виртуальной памяти на основе таблицы физических страниц.
- •Глава 9. Организация кэш-памяти
- •9.1. Назначение и общая схема подключения кэш-памяти
- •9.2. Системы адресации кэш-памяти
- •9.3. Режимы работы кэш-памяти
- •9.4. Иерархическая структура кэш-памяти и средства управления кэш-памятью
- •9.5. Организация когерентности системы кэш-памяти в многопроцессорных системах с общей оперативной памятью.
- •Основные переходы. При запросах на чтение (r):
- •Чтение (sr2):e в s. При запросах на запись (w):
- •Глава 10. Организация системы памяти на жестких дисках
- •10.1.Дисковые массивы и уровни raid
- •125Стр. Из 292
Основные переходы. При запросах на чтение (r):
Чтение (R1): М в М. Запрос на чтение приводит к кэш-попаданию, данные находятся в кэш-памяти и передаются в процессор.
Чтение (R2) :Е в Е. Как и в предыдущем случае, запрос на чтение приводит к кэш-попаданию, данные находятся в кэш-памяти и передаются в процессор.
Чтение (R3):S в S. Запрос на чтение приводит к кэш-попаданию, данные находятся в кэш-памяти и передаются в процессор. Суммируя эти случаи, можно сказать, что, согласно принципу организации кэш-памяти, кэш-попадание при запросе на чтение не влияет на состояние кэш-памяти и не изменяет хранящуюся в памяти информацию.
Чтение (R4):I в E. Запрос на чтение приводит к кэш-промаху, данных в кэш-памяти нет. Кэш-контроллер запускает внешний цикл чтения для того, чтобы прочитать строку из памяти и заполнить строку кэш -памяти. (Строка кэш-памяти заполняется только про кэш промахах). При этом адрес внешнего цикла чтения доступен контролерам всех устройств кэш-памяти. При этом возможны случаи попадания (в других КЭШах в строки в состояниях M, E или S). При отрицательных результатах просмотров производится операция заполнения кэш-строки и при WT = 0 (Установлен режим обратной записи) состояние строки определяется как E. Запись производится и в строку кэш-памяти, и в строку основной памяти.
Чтение (R5): I в S. Как и в предыдущем случае, запрос на чтение приводит к кэш-промаху, данных в кэш-памяти нет. Кэш-контроллер запускает внешний цикл чтения для того, чтобы прочитать строку из памяти и заполнить строку КЭШ. При этом адрес внешнего цикла чтения также доступен контролерам всех КЭШей. При этом возможны случаи попадания (в других КЭШах в строки в состояниях M, E или S). При любых результатах просмотров при WT = 1 (режим сквозной записи) производится чтение памяти с отправкой данных в процессор, а состояние строки КЭШ определяется как S.
При попаданиях в режимах просмотров других кэшей в состояниях: M или E производится сохранение данных этих строк в памяти и определение их состояний, как S.
Чтение (SR1):М вS.
Чтение (sr2):e в s. При запросах на запись (w):
Запись (W1): М в М запрос на запись приводит к кэш-попаданию, данные находятся в кэш-памяти и перезаписываются. Согласно протоколу MESI, это соответствует стратегии кэш-памяти с отложенной записью, поэтому на внешнюю шину не посылается запрос на выполнение цикла отложенной записи.
Запись (W2): Е в М как и в предыдущем случае, запрос на запись приводит к кэш-попаданию, благодаря чему перезапись кэш-строки не требуется. Кэш-контроллер перезаписывает кэш-строку и отмечает ее как модифицированную. Согласно протоколу MESI, этот случай также соответствует стратегии кэш-памяти с отложенной записью, поэтому запрос на выполнение цикла отложенной записи на внешнюю шину не посылается.
Запись (W3): S в E запрос на запись приводит к кэш-попаданию. Поскольку исходная строка помечена как разделяемая, она может храниться и в других кэш-блоках. Согласно протоколу MESI, разделяемые строки в кэшах других процессоров должны быть объявлены недействительными. Кэш-контроллер обновляет кеш-строку своего процессора и при WT = 0 определяет ее как E, запускает цикл записи на внешнюю шину для перевода кэш-строк других процессоров, опознавших адрес строки записи, в состояние I и обновления оперативной памяти.
Запись (SW3): S в I.
При попаданиях в режимах просмотров других блоков кэш-памяти в состояниях S производится изменение их состояния на I.
Запись (W4): S в S в этом случае запрос на запись тоже приводит к кэш-попаданию. Поскольку исходная строка помечена как разделяемая, она может храниться и в других блоках кэш-памяти. Согласно протоколу MESI, разделяемые строки в блоках кэш- памяти других процессоров должны быть объявлены недействительным. Кэш-контроллер обновляет кеш-строку своего процессора и при WT = 1 определяет ее как S, запускает цикл записи на внешнюю шину для перевода кэш-строк других процессоров, опознавших адрес строки записи, в состояние I и обновления оперативной памяти.
Запись (SW4): S в I.
При попаданиях в режимах просмотров других кэшей в состояниях: S производится определение их состояний, как I.
Запись (W5):I в I: запрос на запись приводит к кэш-промаху, данных в кэш-памяти нет. Протокол MESI не включает в себя стратегию записи с размещением. По этой причине нужный элемент данных из основной памяти пересылается в процессор, но в кэш-память не загружается. Кэш-строка остается недействительной.
Вопросы для самопроверки:
1. Состояния строки М (модифицированная),
2. Состояния строки E (единственная),
3. Состояния строки S (разделяемая),
4. Состояния строки I (недействительная),
5. Ситуации перехода строки в состояние I (все варианты),
6. Ситуации перехода строки в состояние S (все варианты),
7. Ситуации перехода строки в состояние Е (все варианты),
8. Ситуации перехода строки в состояние М (все варианты),
9. Механизм управления блокировки состояний Е и М битом WT,