В любой ЭВМ данные хранятся в памяти. Функции памяти обеспечиваются запоминающимися устройствами (ЗУ), предназначенными для фиксации, хранения и выдачи информации в процессе работы ВМ. Процесс фиксации информации в ЗУ называется записью, процесс выдачи информации из ЗУ – чтением, в совместно их определяются как процессы обращения к ЗУ,
По месту расположение ЗУ делятся на 3 типа:
1. Процессорные (РОНы, cache-память 1ур.) – в кристалле процессора.
2. Внутренние - на системной плате (cache 2 ур. и выше, ОЗУ, ПЗУ, буферы контроллера шины внешнего ЗУ).
3. Внешние (HDD, гибкие оптич. накопители, магнитные ленты, перфоркарты).
Иерархия памяти (быстродействие уменьшается, объём увеличивается):
РОН – наиболее быстродействующие, работают на частоте процессора, время доступа 10 нс, взаимодействие определяет компилятор и программа, объём до 512байт.
КЭШ1 – работает на частоте процессора, время доступа 10-15 нс, взаимодействие определяет аппаратура, объём до 128 кб.
КЭШ2 – работает на частоте процессорной шины, время доступа 15-30 нс, взаимодействие определяет аппаратура, объём скорость до 1 Мб.
|
|
ОП – строится на базе динамической памяти, время доступа 20-40 мкс, взаимодействие определяет аппаратура, объём до 10Гб.
FIFO –буфер контроллера шины внешнего ЗУ, время доступа до 100мкс, взаимодействие определяет аппаратура, располагается в контролере шины внешнего ЗУ.
БВЗУ – буфер внешнего ЗУ (дисковая cache-память), время доступа 50-100мкс, объём – 8-16Мб.
ВЗУ – внешние ЗУ, время доступа 8-10 мс, объём – (неограничен), взаимодействие определяет аппаратура и ОС.
Основные направления развития подсистемы памяти:
1. Увеличение ёмкости.
2. Увеличение пропускной способности.
3. Повышение надёжности (новые технологии изготовления, новая элементная база схемные решения – RAID-массивы, для ОП – CRC коды).
4. Снижение стоимости.
5. Уменьшение энергопотребления.
6. Уменьшение массы/габаритов.
Основные пути повышения производительности:
1) Повышение размеров кэш-памяти.
2) Многоуровневая организация кэш-памяти.
3) Расширение регистрового файлы.
4) Повышение полосы пропускания системной шины.
5) Увеличение разрядности канала данных памяти.
6) Использование памяти с расслоением (конвейерное обращение к банкам памяти).
КЭШ-память
Cache – «скрытый», «спрятанный».
1965г.
Обычно строится на основе статической памяти (не требует регенерации).
Основная идея, принцип:
При обращении процессора к памяти сначала происходит поиск данных в КЭШ. Если они найдены, то обращения к ОП не происходит. В противном случае при считывании из ОП происходит отображение участка ОП в КЭШ.
|
|
Если при обращении необходимые данные есть в КЭШ – КЭШ-попадание (hit). Если отсутствуют – КЭЩ-промах (miss).
При построении КЭШ-памяти нужно учитывать:
· Стоимость.
· Пропускную способность.
· Объём аппаратных затрат.
· Сбалансированность.
· Размер кэш-строки.
Каждое слово в ОП имеет N-разрядный адрес. По отношению к КЭШ ОП – это M блоков фиксированной длины по K слов в блоке.
Кэш состоит из C блоков (строк).
Размер строки = размеру блока ОП.
С<<M ® Невозможно определённому блоку ОП выделить определённую строку в КЭШ (иначе в чём смысл?!)
Тэг – поле признака (суть – определить, какой из блоков ОП в КЭШе). Часто в качестве тэга используется часть адреса блока ОП.
Коэффициент удачный обращений – должен стремиться к оптимуму.
Зависит от:
- Размеров КЭШа.
- Размера строки КЭШ-памяти.
- Выполняемой программы.
- Алгоритма управления КЭШ-памятью.
- Дисциплины организации КЭШ-памяти (способ отображения, алгоритм согласования).
Типы КЭШ-памяти
3 условия отображения
1) отображение должно обеспечивать быструю проверку КЭШа на наличие в нём блока ОП.
2) Должно обеспечивать быстрое преобразование адреса блока ОП в адреса строки КЭШа.
3) Условия 1) и 2) должны реализовываться более экономичными средствами.
По способу отображения КЭШ: