ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 26.10.2023
Просмотров: 636
Скачиваний: 2
ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
СОДЕРЖАНИЕ
АРХИТЕКТУРЫ, ХАРАКТЕРИСТИКИ, КЛАССИФИКАЦИЯ ЭВМ
3. ФУНКЦИОНАЛЬНАЯ И СТРУКТУРНАЯ
4. ПРИНЦИПЫ ОРГАНИЗАЦИИ ПОДСИСТЕМЫ ПАМЯТИ ЭВМ И ВС
ОРГАНИЗАЦИЯ СИСТЕМНОГО ИНТЕРФЕЙСА И ВВОДА/ВЫВОДА ИНФОРМАЦИИ
МНОГОПРОЦЕССОРНЫЕ И МНОГОМАШИННЫЕ ВЫЧИСЛИТЕЛЬНЫЕ СИСТЕМЫ
Способы организации кэш-памяти Общие сведения
В функциональном отношении кэш-память рассматривается как
буферное ЗУ, размещённое между основной (оперативной) памятью и процессором. Основное назначение кэш-памяти – кратковременное хранение и выдача активной информации процессору, что сокращает число обращений к основной памяти, скорость работы которой меньше, чем кэш-памяти.
За единицу информации при обмене между основной памятью и кэш-памятью принята строка (линейка), причём под строкой понима- ется набор слов, выбираемый из оперативной памяти при одном к ней обращении. Хранимая в оперативной памяти информация представляет- ся, таким образом, совокупностью строк с последовательными адреса- ми. В любой момент времени строки в кэш-памяти представляют собой копии строк из некоторого их набора в ОП, однако расположены они необязательно в такой же последовательности, как в ОП.
Построение кэш-памяти может осуществляться по различным принципам, которые будут рассмотрены ниже. Но общим для всех спо- собов построения кэш-памяти является использование так называемых адресных тегов. Адресный тег – это расширенный адрес, который объ- единяет адреса всех слов, принадлежащих данной строке. Он указывает, какую строку в ОП представляет данная строка в кэш-памяти.
-
Типовая структура кэш-памяти
Рассмотрим типовую структуру кэш-памяти (рис. 4.3), включаю-
щую основные блоки, которые обеспечивают её взаимодействие с ОП и центральным процессором.
Строки, составленные из информационных слов, и связанные с ни- ми адресные теги хранятся в накопителе, который является основой кэш-памяти, остальные блоки относятся к кэш-контроллеру. Адрес тре- буемого слова, поступающий от центрального процессора (ЦП), вводит- ся в блок обработки адресов, в котором реализуются принятые в данной кэш-памяти принципы использования адресов при организации их сравнения с адресными тегами. Само сравнение производится в блоке сравнения адресов (БСА), который конструктивно совмещается с нако- пителем, если кэш-память строится по схеме ассоциативной памяти. Назначение БСА состоит в выявлении попадания или промаха при об- работке запросов от центрального процессора. Если имеет место кэш-
попадание (совпадение теговой части адреса, поступающего от цен- трального процессора, с адресным тегом одной из ячеек кэш-памяти), то в режиме чтения информации соответствующая строка из кэш-памяти переписывается в регистр строк. С помощью селектора из неё выделяет- ся искомое слово, которое и направляется в центральный процессор.
В случае промаха с помощью блока формирования запросов осу- ществляется инициализация выборки из ОП необходимой строки.
Адресация ОП при этом производится в соответствии с информаци- ей, поступившей от центрального процессора. Выбираемая из памяти строка вместе со своим адресным тегом помещается в накопитель и ре- гистр строк, а затем искомое слово передается в центральный процессор.
В режиме записи информации в память адрес обрабатывается так-
же, как и при чтении. Само же слово информации из ЦП проходит через демультиплексор и заносится в регистр строк. Далее, в зависимости от выбранного способа записи оно может загрузиться в накопитель строк кэш-памяти и в ОП или только в кэш-память.
Для высвобождения места в кэш-памяти с целью записи выбирае- мой из ОП строки одна из строк удаляется. Определение удаляемой строки производится посредством блока замены строк, в котором хра- нится информация, необходимая для реализации принятой стратегии обновления находящихся в накопителе строк.
- 1 ... 57 58 59 60 61 62 63 64 ... 76
Способы размещения данных в кэш-памяти
Существует три основных способа размещения данных в кэш- памяти: прямое распределение (отображение), полностью ассоциатив- ное распределение и частично ассоциативное распределение. Ниже по- дробно описан каждый способ размещения и его механизм преобразо- вания адресов. Для того чтобы конкретизировать описание, положим, что кэш-память может содержать 128 строк, размер строки – 16 слов, а основная память может содержать 16384 строк. Для адресации основной памяти используется 18 бит.
Из них старшие 14 показывают адрес строки, а младшие 4 бит – ад- рес слова внутри этой строки. При одном обращении к памяти выбира- ется одна строка; 128 строк кэш-памяти указываются 7-разрядными ад- ресами.
169
Основная ОП
Адресация ОП
ЦП
Блок замены строк
Адрес от ЦП
Слово к ЦП
Кэш-память
Рис. 4.3. Типовая структура кэш-памяти
Прямое распределение
При прямом распределении место хранения строк в кэш-памяти
однозначно определяется по адресу строки (рис. 4.4). Адрес строки под- разделяется на тег (старшие 7 бит) и индекс (младшие 7 бит).
Для того чтобы поместить в кэш-память строку из основной памяти с адресом bn, выбирается область внутри кэш-памяти с адресом bm, ко- торый равен 7 младшим битам адреса строки bn. Преобразование из bn в bm сводится только к выборке младших 7 бит адреса строки. По адресу bm в кэш-памяти может быть помещена любая из 128 строк основной памяти, имеющих адрес, 7 младших битов которого равны адресу bm. Для того чтобы определить, какая именно строка хранится в данное время в кэш-памяти, используется память ёмкостью 7 бит × 128 слов, в которую помещается по соответствующему адресу в качестве тега 7 старших битов адреса строки, хранящейся в данное время по адресу bmкэш-памяти. Это специальная память, называемая теговой памятью. Память, в которой хранятся строки, помещенные в кэш, называются памятью данных. В качестве адреса теговой памяти используются младшие 7 битов адреса строки.
При выполнении операции чтения (записи данных) из теговой па- мяти считывается тег. Параллельно этому осуществляется доступ к па- мяти данных с помощью 11 младших битов адреса основной памяти (используется 7 разрядов индекса и 4 разряда адреса слова внутри стро- ки). Если считанный из теговой памяти тег и старшие 7 бит адреса ос- новной памяти совпадают, то это означает, что данная строка существу- ет в памяти данных, т.е. осуществляется кэш-попадание. В этом случае при чтении в процессор передается содержимое выбранной ячейки кэш- памяти, а при записи – в выбранную ячейку кэш-памяти загружается новая строка данных.
Если выбранный тег отличается от старших 7 бит (кэш-промах), то из основной памяти считывается соответствующая строка, а из кэш- памяти удаляется строка, определяемая 7-ю младшими разрядами адре-