ВУЗ:
Составители:
71
ассоциативная кэш-память, а полностью ассоциативная кэш-память с m
блоками может быть названа m-канальной множественно-ассоциативной. В
современных процессорах как правило используется либо кэш-память с
прямым отображением, либо двух- (четырех-) канальная множественно-
ассоциативная кэш-память.
У каждого блока в кэш-памяти имеется адресный тег, указывающий,
какой блок в основной
памяти данный блок кэш-памяти представляет. Эти теги
обычно одновременно сравниваются с выработанным процессором адресом
блока памяти.
Кроме того, необходим способ определения того, что блок кэш-памяти
содержит достоверную или пригодную для использования информацию.
Наиболее общим способом решения этой проблемы является добавление к тегу
так называемого бита достоверности (valid bit).
Адресация множественно-ассоциативной
кэш-памяти осуществляется
путем деления адреса, поступающего из процессора, на три части: поле
смещения используется для выбора байта внутри блока кэш-памяти, поле
индекса определяет номер множества, а поле тега используется для сравнения.
Если общий размер кэш-памяти зафиксировать, то увеличение степени
ассоциативности приводит к увеличению количества блоков в множестве,
при
этом уменьшается размер индекса и увеличивается размер тега.
При возникновении промаха, контроллер кэш-памяти должен выбрать
подлежащий замещению блок. Польза от использования организации с прямым
отображением заключается в том, что аппаратные решения здесь наиболее
простые. Выбирать просто нечего: на попадание проверяется только один блок
и только этот блок может быть
замещен. При полностью ассоциативной или
множественно-ассоциативной организации кэш-памяти имеются несколько
блоков, из которых надо выбрать кандидата в случае промаха. Как правило для
замещения блоков применяются две основных стратегии: случайная и LRU.
В первом случае, чтобы иметь равномерное распределение, блоки-
кандидаты выбираются случайно. В некоторых системах, чтобы получить
воспроизводимое поведение,
которое особенно полезно во время отладки
аппаратуры, используют псевдослучайный алгоритм замещения.
Во втором случае, чтобы уменьшить вероятность выбрасывания
информации, которая скоро может потребоваться, все обращения к блокам
фиксируются. Заменяется тот блок, который не использовался дольше всех
(LRU - Least-Recently Used).
Достоинство случайного способа заключается в том, что его проще
реализовать в аппаратуре. Когда количество
блоков для поддержания трассы
увеличивается, алгоритм LRU становится все более дорогим и часто только
приближенным.
При обращениях к кэш-памяти на реальных программах преобладают
обращения по чтению. Все обращения за командами являются обращениями по
чтению и большинство команд не пишут в память. Обычно операции записи
ассоциативная кэш-память, а полностью ассоциативная кэш-память с m
блоками может быть названа m-канальной множественно-ассоциативной. В
современных процессорах как правило используется либо кэш-память с
прямым отображением, либо двух- (четырех-) канальная множественно-
ассоциативная кэш-память.
У каждого блока в кэш-памяти имеется адресный тег, указывающий,
какой блок в основной памяти данный блок кэш-памяти представляет. Эти теги
обычно одновременно сравниваются с выработанным процессором адресом
блока памяти.
Кроме того, необходим способ определения того, что блок кэш-памяти
содержит достоверную или пригодную для использования информацию.
Наиболее общим способом решения этой проблемы является добавление к тегу
так называемого бита достоверности (valid bit).
Адресация множественно-ассоциативной кэш-памяти осуществляется
путем деления адреса, поступающего из процессора, на три части: поле
смещения используется для выбора байта внутри блока кэш-памяти, поле
индекса определяет номер множества, а поле тега используется для сравнения.
Если общий размер кэш-памяти зафиксировать, то увеличение степени
ассоциативности приводит к увеличению количества блоков в множестве, при
этом уменьшается размер индекса и увеличивается размер тега.
При возникновении промаха, контроллер кэш-памяти должен выбрать
подлежащий замещению блок. Польза от использования организации с прямым
отображением заключается в том, что аппаратные решения здесь наиболее
простые. Выбирать просто нечего: на попадание проверяется только один блок
и только этот блок может быть замещен. При полностью ассоциативной или
множественно-ассоциативной организации кэш-памяти имеются несколько
блоков, из которых надо выбрать кандидата в случае промаха. Как правило для
замещения блоков применяются две основных стратегии: случайная и LRU.
В первом случае, чтобы иметь равномерное распределение, блоки-
кандидаты выбираются случайно. В некоторых системах, чтобы получить
воспроизводимое поведение, которое особенно полезно во время отладки
аппаратуры, используют псевдослучайный алгоритм замещения.
Во втором случае, чтобы уменьшить вероятность выбрасывания
информации, которая скоро может потребоваться, все обращения к блокам
фиксируются. Заменяется тот блок, который не использовался дольше всех
(LRU - Least-Recently Used).
Достоинство случайного способа заключается в том, что его проще
реализовать в аппаратуре. Когда количество блоков для поддержания трассы
увеличивается, алгоритм LRU становится все более дорогим и часто только
приближенным.
При обращениях к кэш-памяти на реальных программах преобладают
обращения по чтению. Все обращения за командами являются обращениями по
чтению и большинство команд не пишут в память. Обычно операции записи
71
Страницы
- « первая
- ‹ предыдущая
- …
- 69
- 70
- 71
- 72
- 73
- …
- следующая ›
- последняя »
