рефераты конспекты курсовые дипломные лекции шпоры

Реферат Курсовая Конспект

Организация КЭШ-памяти

Организация КЭШ-памяти - раздел Философия, Организация памяти компьютеров Быстродействие Компьютера В Наибольшей Мере Зависит От Быстродействия Ядра Ко...

Быстродействие компьютера в наибольшей мере зависит от быстродействия ядра компьютера – процессора и оперативной памяти. Такт работы процессора составляет обычно 1 – 5 наносекунд и команда выполняется процессором примерно за десяток тактов. Однако для выполнения команды надо несколько раз обратиться к оперативной памяти, например, для выборки из оперативной памяти команды и для выборки операнда. Цикл обращения к оперативной памяти значительно больше такта работы процессора и составляет обычно 5 – 20 наносекунд. Таким образом, для большинства команд основная доля времени выполнения команды приходится на обращение к оперативной памяти. количество обращений к оперативной памяти можно уменьшить, если между процессором и оперативной памятью встроить сверхоперативное запоминающее устройство – кэш-память. Кэш память имеет незначительную емкость, например 256 – 2048 Кбайт, ограниченность которой позволяет обеспечить ее высокое быстродействие – длительность цикла обращения на уровне 1 –2 тактов работы процессора, т.е. в 5 – 10 раз меньше длительности цикла обращения к оперативной памяти. В ячейках кэш-памяти должны размещаться команды и слова данных, наиболее интенсивно используемые на каждом этапе решения задачи. Когда процесс обращается к ячейке памяти с адресом А, кэш должен определить наличие слова с адресом А в ячейках кэш и сформировать осведомительный сигнал x = 1, если слово с адресом А хранится в кэш. В таком случае слово будет выбрано из кэш. Если слово с адресом А в кэш отсутствует (x = 0), то необходимо обратиться к ячейке А оперативной памяти, и прочитанное слово передать в процессор и одновременно в кэш. Последующие обращения к слову с адресом А будут обслужены уже кэш без предварительного обращения к оперативной памяти. Таким образом ячейки кэш временно подменяют ячейки оперативной памяти, и кэш обслуживает обращения со стороны процессора за время меньшее, чем оперативная память. Естественно, что чем больше емкость кэш, тем выше вероятность наличия в нем слова с адресом А, т.е. тем большая доля обращений к оперативной памяти будет обслужена кэш. В результате этого быстродействие компьютера возрастает пропорционально доли обращений к памяти, обслуживаемых кэш без обращения к оперативной памяти. Кэш является прозрачным для программ, исполняемых компьютером, и абсолютно не влияет на логику построения программы. Включение и выключение кэш никак не сказывается на процессе выполнения программы и влияет только на время ее выполнения.

Конструктивно кэш память может быть встроена в процессор и работать на частоте процессора, а может быть размещена как внешняя по отношению к процессору кэш-память, работающая на частоте общей шины процессора. К сожалению, емкость кэша, всегда ограничена сложностью схем процессора, обеспечивающих хранение большого числа слов, суперскалярную обработку команд и т.д. Обычно в процессор встраивается кэш команд и кэш данных, имеющие емкость от 128 байт до 16 Кбайт каждый и называемые кэшем 1 уровня. Для увеличения производительности компьютера используется кэш 2 уровня - внешний по отношению к процессору и имеющий емкость до 2 Мбайт. В этом кэше хранятся и команды, и данные.

В кэш – памяти могут использоваться различные способы подмены ячеек оперативной памяти ячейками кэша. Наиболее часто используются два способа: кэш память с прямым отображением и кэш – память с множественным доступом.

Кэш с прямым отображением. Кэш с прямым отображением – сверхоперативное запоминающее устройство, в котором данные идентифицируются старшими разрядами адреса слова, а адрес ячейки кэша определяется младшими разрядами слова. Схема кэша, обеспечивающего преобразование 32 – разрядного адреса в физический адрес ячейки кэша, представлена на рис. 5.6.

 

 

Данный кэш обеспечивает хранение 65536 слов длиной в 32 бита, т.е. имеет емкость 256 Кбайт. Для организаций обращений к кэшу 32-х разрядный адрес разделен на три поля: поле В, адресуемое 16-ю разрядами адреса, определяет адрес ячейки кэша, в которой может хранится слово с адресом А; поле С адреса используется как признак (тэг) слова с адресом А; Младшие два бита определяют адрес байта в слове. Каждая ячейка кэша состоит из трех полей:

управляющего поля УП, в котором хранится признак наличия информации в ячейке В кэша; адресного поля АП, в котором размещается признак С слова, хранимого в ячейке В кэша; поля данных ПД, в котором хранится слово D.

Адрес А операнда, сформированный процессором на основе данных в адресной части команды, обрабатывается следующим образом. Значение в поле В определяет адрес ячейки кэша, по которому производится обращение к кэш – памяти. Из ячейки В кэша выбираются: из управляющего поля признак наличия информации dВ в ячейке; из адресного поля признак слов СВ хранимый в ячейке В; Схема сравнения сравнивает значения поля С адреса А со значением признака СВ. Если С = СВ , схема сравнения формирует сигнал 1, поступающий на элемент U, который формирует сигнал x = 1, если dВ = 1. При x = 1 слово данных D, выбранное из поля данных ПД, поступает в процессор в качестве операнда. Таким образом при наличии в ячейке В кэша обращение к памяти обслуживается в кэше без обращения к оперативной памяти.

Если же признак наличия информации в ячейке dB = 0 или ССВ, сигнал х = 0 осведомляет процессор об отсутствии в кэше слова с адресом А. В этом случае процессор должен обратиться к оперативной памяти по адресу А[31:2]. Если выполняется чтение операнда, то по окончании цикла обращения к ячейке А[31:2] слово из оперативной памяти поступает в процессор и одновременно в ячейку В кэша. Это гарантирует, что последующее обращение процессора к слову с адресом А будет обслужено кэш памятью без обращения к оперативной памяти.

При записи операндов в память необходимо обеспечить тождественность слов, хранимых в оперативной памяти, и слов, хранимых в ячейках кэша. По этой причине при записи каждого операнда слово записывается и в ячейку В кэш-памяти, и в ячейку оперативной памяти. В этом случае повторное обращение к операнду для его чтения будет обслужено кэш-памятью при сохранении идентичности данных, хранимых в оперативной памяти и кэш-памяти.

Степень увеличения быстродействия процессора за счет наличия кэш-памяти зависит от емкости кэша. Чем больше емкость кэша, тем выше вероятность того, что требуемое слово хранится в кэш памяти и, следовательно, тем меньшее количество обращения к оперативной памяти будет обслуживаться оперативной памятью. Вместе с тем, доля обращений к оперативной памяти связана со степенью локальности обращения к памяти: если компактная группа данных многократно участвует в операциях и обработка данных проходит по компактной группе команд, размещаемых в ограниченном адресном пространстве, то об ращения к данным и командам будут обслуживаться в основном кэшем. В первом приближении можно предполагать, что доля обращений, обслуживаемых кэшем, пропорциональна отношению емкости оперативной памяти к емкости кэша. Так, если емкость кэша составляет 10% от емкости оперативной памяти, то кэш обслуживает не менее 90% обращений, а оперативная память не более 10%. Таким образом, кэш память существенно буферизует количество обращений к оперативной памяти и существенно влияет на быстродействие процессора.

Количество обращений к оперативной памяти можно снизить еще более, если ввести в управляющее поле УП (см. рис. 5.6.) еще один признак – признак записи слова в кэш wB. При загрузке слова из оперативной памяти в кэш значение признака записи слова в ячейку В кэша принимается равным нулю. Если происходит запись результата процессорной обработки в кэш, то признак записи результата wB = 1. Это означает, что копия записанного в кэш результата отсутствует в настоящее время в оперативной памяти. Естественно, что все измененные при записи результатов слова должны быть записаны в оперативную память для обеспечения тождественности состояния кэша и оперативной памяти.

 

Кэш с множественным доступом. Можно ожидать, что с увеличением числа слов, представляемых в кэш за одно обращение к оперативной памяти, повысится производительность процессора, поскольку чтение из оперативной памяти сразу двух или четырех слов уменьшит количество обращений к памяти до двух или четырех раз. Эта идея, основанная на использовании кэша с множественным доступом, иллюстрируется укрупненной

схемой, представленной на рисунке 5.7. В данной схеме процессор обрабатывает 32 –

разрядные слова, а оперативная память за одно обращение читает и записывает 128 – разрядные слова. Если при обращении к кэшу сформирован сигнал промаха кэша х = 0, то происходит обращение к оперативной памяти, из которой при чтении будет выбрано128 – разрядное слово, поступающее в кэш и называемое строкой кэша. Для 32 – разрядного слова, поступающего в процессор, служит мультиплексор, который реагирует на сигнал уi = 1, формируемый управлением кэша, и передает 32 – разрядное слово в процессор. Если процессор должен записать слово в кэш и управление кэша выдает сигнал промаха х = 0, то перед записью слова в кэш должна быть загружена 128 – разрядная строка, в которую будет внесено записываемое слово. Для формирования управляющего сигнала yi, i = 0, …, 3, поступающего в мультиплексор используются разряды 2 и 3 адреса, формируемого процессором, которые определяют номер слова в строке кэша.

Кэш с множественным доступом устроен также, как и кэш с прямым отображением. Однако оперативная память может быть 64 – разрядной, и читать строку кэша за два обращения. Как и в кэше с прямым отображением, в управляющем поле кэша с множественным доступом могут использоваться признаки записи результатов из кэша в оперативную память.

– Конец работы –

Эта тема принадлежит разделу:

Организация памяти компьютеров

Дополнительными разрядами контролирующими корректность записанного кода При чтении зеркальных копий обращение производится сразу к двум дискам... Уровень RAID основан на использовании алгоритма Хемминга для проверки и... Хемминга позволяет устранить одну ошибку в любом секторе диска По этой причине стремятся уменьшить количество...

Если Вам нужно дополнительный материал на эту тему, или Вы не нашли то, что искали, рекомендуем воспользоваться поиском по нашей базе работ: Организация КЭШ-памяти

Что будем делать с полученным материалом:

Если этот материал оказался полезным ля Вас, Вы можете сохранить его на свою страничку в социальных сетях:

Все темы данного раздела:

Организация виртуальной памяти
В 1961 году группа исследователей из Манчестера (Англия) предложила способ автоматического перемещения сегментов программ и данных между оперативной и внешней памятью компьютера, т.е. между полупро

Организация RAID – массивов
В 1988 году исследователей из США предложила ряд способов построения системы из большого числа накопителей на жестких магнитных дисках, которые начали называться RAID (Redundant Array of Inexpensiv

Хотите получать на электронную почту самые свежие новости?
Education Insider Sample
Подпишитесь на Нашу рассылку
Наша политика приватности обеспечивает 100% безопасность и анонимность Ваших E-Mail
Реклама
Соответствующий теме материал
  • Похожее
  • Популярное
  • Облако тегов
  • Здесь
  • Временно
  • Пусто
Теги