Устройства ЭВМ: КЭШ-память
Реферат ученика 8Г класса Гринченко Евгения
Москва, Гимназия №1567
Сентябрь 2004 г.
Кэш-память – это высокоскоростная память произвольного доступа, используемая процессором компьютера для временного хранения информации. Она увеличивает производительность, поскольку хранит наиболее часто используемые данные и команды «ближе» к процессору, откуда их можно быстрее получить.
Кэш-память напрямую влияет на скорость вычислений и помогает процессору работать с более равномерной загрузкой. Представьте себе массу информации, используемой в школе. Небольшие объемы информации, необходимой в первую очередь, висят на стене над столом. Точно так же вы храните под рукой информацию по текущим урокам. Реже используемые справочники лежат на полке, рядом со столом. Литература, к которой вы обращаетесь совсем редко, занимает полки книжного шкафа.
Компьютеры хранят данные аналогично. Когда приложение начинает работать, данные и команды переносятся с медленного жесткого диска в оперативную память произвольного доступа, откуда процессор может быстро их получить. Оперативная память выполняет роль кэша для жесткого диска.
Существует два типа кэш-памяти: внутренняя (от 8 до 64 Кбайт) – размещается внутри процессора и внешняя ( от 256 Кбайт до 1Мбайт устанавливается на системной плате.
Хотя оперативная память намного быстрее диска, тем не менее и она не успевает за потребностями процессора. Поэтому данные, которые требуются часто, переносятся на следующий уровень быстрой памяти, называемой кэш-памятью второго уровня. Она может располагаться на отдельной высокоскоростной микросхеме статической памяти, установленной в непосредственной близости от процессора ( в новых процессорах кэш-память второго уровня интегрирована непосредственно в микросхему процессора.)
На более высоком уровне информация, используемая чаще всего, хранится в специальной секции процессора, называемой кэш-памятью первого уровня. Это самая быстрая память.
Процессор Pentium III имеет кэш-память первого уровня емкостью 32 Кбайт на микросхеме процессора и либо кэш-память второго уровня емкостью 256 Кбайт на микросхеме, либо кэш-память второго уровня емкостью 512 Кбайт, не интегрированную с процессором.
Когда процессору нужно выполнить команду, он сначала анализирует состояние своих регистров данных. Если необходимых данных в регистрах нет, он обращается к кэш-памяти первого уровня, а затем – кэш-памяти второго уровня. Если данных нет ни в одной кэш-памяти, процессор обращается к оперативной памяти. И только в том случае, если нужных данных нет и там, он считывает данные с жесткого диска.
Когда процессор обнаруживает данные в одном из КЭШей, это называют «попаданием», неудачу называет «промахом». Каждый промах вызывает задержку, поскольку процессор будет пытаться обнаружить данные на другом, более медленном уровне. В хорошо спроектированных системах с программными алгоритмами, которые выполняют предварительную выборку данных до того, как они потребуются, процент «попаданий» может достигать 90.
Частота промахов при обращении к кэш-памяти может быть значительно снижена за счет увеличения емкости КЭШа. Но большая кэш-память требует больше энергии, генерирует больше тепла и увеличивает число бракованных микросхем при производстве.
Один из способов обойти эти трудности – передача логики управления кэш-памятью от аппаратного обеспечения к программному.
Управляемая программным образом кэш-память сейчас существует лишь в исследовательских лабораториях.