
- •1. Основные параметры и характеристики вычислительных систем.
- •7. Иерархическая организация системы памяти.
- •8. Память с произвольным доступом. Структура.
- •9. Память с произвольным доступом. Функционирование.
- •10. Озу статического типа.
- •11. Dram (асинхронная).
- •12. Синхронная dram.
- •13. Регенерация.
- •14. Ddr dram.
- •15. Многопортовая память.
- •16. Память с адресацией по содержанию.
- •17. Организация кэш-памяти.
- •18. Режимы работы кэш-памяти.
- •21. Внешняя память. Параметры. Характеристики.
- •22. Структура накопителей на основе жестких магнитных дисков.
- •23. Физическая и логическая структуры жестких магнитных дисков.
- •24. Дисковые системы raid.
- •25. Процессор. Классификация процессоров.
- •26. Система Команд Процессора.
- •27. Методы Адресации.
- •28. Форматы команд процессора.
- •2.Двухадресные команды
- •3.Одноадресные команды
- •29. Структура процессора.
- •30. Функционирование процессора.
- •1.Архитектура фон Неймана
- •2.Суперскалярная архитектура
- •3.Конвейерная архитектура
- •31. Конфликты конвейера процессора.
- •32. Устранение конфликтов конвейера процессора .
- •33. Обобщенная структура микропроцессора.
- •34. Структура регистров процессора ia-32 Pentium.
- •35. Команды. Форматы команд процессора архитектура ia-32.
- •36. Многоядерная структура современных процессоров.
- •Архитектура многоядерных систем
- •Производительность
- •37. Видеоконтроллер. Параметры. Структура.
- •Типы видеоконтроллеров
- •38. Прерывания. Структура. Функционирование.
- •39. Режим прямого доступа к памяти. Структура. Функционирование.
- •40. Многопроцессорные вычислительные системы.
- •41. Память многопроцессорных вс
- •42 Топологии вычислительных систем
18. Режимы работы кэш-памяти.
При кэш-попадании возможны следующие процедуры записи:
сквозная запись,
обратная запись.
Процедура сквозной записи. Запись данных производится в оперативную память и, одновременно, в строку кэш-памяти. При этом строки (в кэш-памяти и оперативной памяти) помечаются битом "модифицированные". Эти признаки учитываются при удалении страниц из строки кэш-памяти (в оперативную память) или страницы из оперативной памяти (в накопитель на магнитных дисках). Сквозная запись гарантирует нахождение в оперативной памяти "более свежей" копий данных, но, без использования буферизации данных, приводит к задержкам процессора.
Процедура обратной записи
При обратной записи запись данных производится только в строки кэш-памяти. Обновление данных в оперативной памяти по адресам записи откладывается до замещения модифицированной строки. Замещение строки производится, если страница признается "устаревшей" алгоритмом "листания".
Обратная запись уменьшает количество обращений к памяти по записи. Запись производится построчно, т.е. одновременно по всем блокам оперативной памяти с расслоением, и записываются только самые последние копии данных. Недостатком обратной записи является нарушение когерентности данных в оперативной памяти и в кэш-памяти. Это затрудняет работу в многопроцессорных системах с общей оперативной памятью, но с разделенными (индивидуальными) блоками кэш-памяти для каждого процессора.
При кэш-промахах возможны следующие процедуры записи:
сквозная,
сквозная с размещением,
Сквозная запись
При кэш-промахе, размещение новой информации связано с освобождением одной из строк (признанной устаревшей) кэш-памяти. Чтение записываемых данных в ближайший промежуток времени после их записи маловероятен. Сквозная запись производится, минуя записи в кэш-память. Записанная информация становится доступной при чтении, через кэш-промах при чтении и обновлении информации в кэш-памяти. Сквозная запись не затрагивает кэш-память и оптимизирует очередь обращений к ней.
Обычно, в кэш-памяти со сквозной записью при промахе используется и сквозная запись при кэш-попадании.
Сквозная запись с размещением (в кэш-памяти)
Запись производится в кэш-память и в оперативную память. Этот вид записи может быть полезен в многопроцессорных многозадачных системах с общей оперативной памятью, но разделенными системами кэш-памяти.
19. КЭШ-память прямого отображения.
Самый простой тип кэш-памяти — это кэш-память прямого отображения.
Данная кэш-память содержит 2048 элементов. Каждый элемент (ряд) может вмещать ровно одну строку из основной памяти. Если размер строки кэш-памяти 32 байта (для этого примера), кэш-память может вмещать 64 Кбайт. Каждый элемент кэш- памяти состоит из трех частей:
1. Бит достоверности указывает, есть ли достоверные данные в элементе или нет.
Когда система загружается, все элементы маркируются как недостоверные.
2. Поле ≪Тег≫ состоит из уникального 16-битного значения, указывающего
соответствующую строку памяти, из которой поступили данные.
3. Поле ≪Данные≫ содержит копию данных памяти. Это поле вмещает одну
строку кэш-памяти в 32 байта.
В кэш-памяти прямого отображения данное слово может храниться только в одном месте. Если дан адрес слова, то в кэш-памяти его можно искать только в одном месте. Если его нет на этом определенном месте, значит, его вообще нет в кэш-памяти. Для хранения и удаления данных из кэш-памяти адрес разбивается на 4 компонента, как показано на рис.
1. Поле ≪ТЕГ≫ соответствует битам, сохраненным в поле ≪Тег≫ элемента кэш-памяти.
2. Поле ≪СТРОКА≫ указывает, какой элемент кэш-памяти содержит соответствующие данные, если они есть в кэш-памяти.
3. Поле ≪СЛОВО≫ указывает, на какое слово в строке производится ссылка.
4. Поле ≪БАЙТ≫ обычно не используется, но если требуется только один байт, поле сообщает, какой именно байт в слове нужен. Для кэш-памяти, поддерживающей только 32-битные слова, это поле всегда будет содержать 0.
20. КЭШ-память с ассоциативным доступом.
Кэш-память с n возможными элементами для каждого адреса называется n-входовой ассоциативной кэш-памятью. Четырех-входовая ассоциативная кэш-память изображена на рис 27.
Ассоциативная кэш-память с множественным доступом по сути гораздо сложнее, чем кэш-память прямого отображения, поскольку хотя элемент кэш-памяти и можно вычислить из адреса основной памяти, требуется проверить n элементов кэш-памяти, чтобы узнать, есть ли там нужная нам строка. Тем не менее практика показывает, что двувходовая или четырехвходовая ассоциативная кэш-память дает хороший результат, поэтому внедрение этих дополнительных схем вполне оправданно. Использование ассоциативной кэш-памяти с множественным доступом ставит разработчика перед выбором. Если нужно поместить новый элемент в кэш-память, какой именно из старых элементов нужно убрать?
Для многих целей хорошо подходит алгоритм LRU (Least Recenly Used — алгоритм удаления наиболее давно использовавшихся элементов). Имеется определенный порядок каждого набора ячеек, которые могут быть доступны из данной ячейки памяти. Всякий раз, когда осуществляется доступ к любой строке, в соответствии с алгоритмом список обновляется и маркируется элемент, к которому произведено последнее обращение. Когда требуется заменить какой-нибудь элемент, убирается тот, который находится в конце списка, то есть тот, который использовался давно по сравнению со всеми другими. Возможна также 2048-входовая ассоциативная кэш-память, которая содержит один набор из 2048 элементов. Здесь все адреса памяти располагаются в этом наборе, поэтому при поиске требуется сравнивать нужный адрес со всеми 2048 тегами в кэш-памяти.
Отметим, что для этого каждый элемент кэш-памяти должен содержать специальную логическую схему. Поскольку поле «СТРОКА» в данный момент имеет длину 0, поле «ТЕГ» — это весь адрес за исключением полей «СЛОВО» и «БАЙТ». Более того, когда строка кэш-памяти замещается, все 2048 ячеек являются возможными кандидатами на смену. Для сохранения упорядоченного списка потребовался бы громоздкий учет использования системных ресурсов, поэтому применение алгоритма LRU становится недопустимым. (Помните, что этот список следует обновлять при каждой операции с памятью.) Интересно, что кэш-память с высокой ассоциативностью часто не сильно превосходит по производительности кэш-память с низкой ассоциативностью, а в некоторых случаях работает даже хуже. Поэтому ассоциативность выше четырех встречается редко.
Наконец, особой проблемой для кэш-памяти является запись. Когда процессор записывает слово, а это слово находится в кэш-памяти, он, очевидно, должен или обновить слово, или отбросить данный элемент кэш-памяти. Практически во всех разработках используется обновление кэш-памяти. А что же можно сказать об обновлении копии в основной памяти? Эту операцию можно отложить на потом до того момента, когда строка кэш-памяти будет готова к замене алгоритмом LRU. Выбор труден, и ни одно из решений не является предпочтительным. Немедленное обновление элемента основной памяти называется сквозной записью. Этот подход обычно гораздо проще реализуется, и к тому же, он более надежен, поскольку современная память всегда может восстановить предыдущее состояние, если произошла ошибка. К сожалению, при этом требуется передавать больший поток информации к памяти, поэтому в более сложных проектах стремятся использовать альтернативный подход — обратную запись.