Научная литература
booksshare.net -> Добавить материал -> Физика -> Александров Е.К. -> "Микропроцессорные системы" -> 143

Микропроцессорные системы - Александров Е.К.

Александров Е.К., Грушвицкий Р.И., Купрянов М.С., Мартынов О.Е. Микропроцессорные системы — Спб.: Политехника, 2002. — 935 c.
ISBN 5-7325-0516-4
Скачать (прямая ссылка): mikroprocessorniesistemi2002.djvu
Предыдущая << 1 .. 137 138 139 140 141 142 < 143 > 144 145 146 147 148 149 .. 528 >> Следующая

Рис. 3.2. Разделение пространства ОП на блоки (Т-значение тега блока; I -
значение ! ' индекса блока; К - адрес байта внутри блока) '
ИСПОЛЬЗОВАНИЕ КЭШ-ПАМЯТИ И ОРГАНИЗАЦИЯ ОСНОВНОЙ ПАМЯТИ
Итак, индекс и тег однозначно задают место блока в памяти ЭВМ. Все блоки
одного столбца имеют одинаковый индекс, но разные теги, и наоборот - у
всех блоков одной строки одинаковый тег, но разные индексы (рис. 3.2).
Поскольку число строк, столбцов и размер блока кратны степени 2, двоичный
адрес памяти представляется совокупностью полей.
3.1.2. МЕХАНИЗМ КЭШ-ПАМЯТИ С ПРЯМЫМ ОТОБРАЖЕНИЕМ ДАННЫХ
Во всех механизмах кэш-памяти она представляет собой две сверхоперативные
памяти (СОП): память отображения данных и память тегов. В случае кэш-
памяти прямого отображения данных память отображения имеет объем одной
строки памяти. Размер ее ячейки достаточен для размещения одного блока.
Память значений тегов имеет тот же объем, что и память данных, а размер
ее ячейки достаточен для представления в ней значения тега.
Из рис. 3.3 следует, что если блок ОП с адресом ТЮ скопирован в кэш-
памяти прямого отображения, то в ячейке I СОП данных находится
скопированный блок.
А
Блок с адресом Р00
7~ s' СОП прямого отображения
/ 2т_1 блоков
1 Блок ТЮ Блок L2m-10
Р Т L СОП значений тегов блоков
2гп_-| в СОП отображения данных
Рис. 3.3. Кэш-память прямого отображения данных
С учетом сказанного общий алгоритм использования кэш-памяти прямого
отображения следующий. При обращении ЦП к памяти по адресу TIK вначале
проверяется по Т и I присутствие блока, содержащего байт с этим адресом в
кэш-памяти. Если копия блока в кэшпамяти, то искомое данное с адресом TIK
быстро читается или записывается в кэш-память (кэш-попадание). В случае
кэш-промаха происходит обращение к ОП с параллельной записью блока в
ячейку I СОП данных и тега Т в ячейку СОП тегов. При этом предполагается,
что велика вероятность последующих кэш-попаданий.
3.1.3. МЕХАНИЗМ КЭШ-ПАМЯТИ С АССОЦИАТИВНЫМ ОТОБРАЖЕНИЕМ ДАННЫХ
Наряду с описанной в предыдущем разделе кэш-памятью прямого отображения
данных в МП системах применяется и кэш-память ассоциативного отображения
данных. Такая кэш-память, как и в предыдущем случае, состоит из двух СОП:
СОП данных и СОП тегов. Но обе эти памяти содержат по нескольку "строк".
Число строк кэш-памяти может быть разным в разных ЭВМ, но обычно кратно
степени 2. Известны кэш-памяти на 2,4,8 строк. Однако число строк
отображения данных и число строк тегов обязательно равны, так что каждой
строке данных однозначно соответствует определенная строка тегов.
242
ОБЩИЕ ПРИНЦИПЫ ОРГАНИЗАЦИИ КЭШ-ПАМЯТИ
L,0,0 Кэш-блок Кэш-блок Кэш-блок
Ассоциативный поиск по Т в столбце I
Рис. 3.4. Кэш-память с ассоциативным отображением данных
Первая строка СОП данных однозначно соответствует первой строке СОП
тегов, вторая-второй.
На рис. 3.4 приведен пример КЭШ-памяти с ассоциативным отображением
данных. В примере скопированы блоки ОП с адресами L, 0, 0; Т2, И, 0;...;
Р, 12, 0;...; Т1, 2т-1, 0; Р00; ...;Т1,11,0; Т2,12, 0;...; L, 2т-1, 0.
Обращение к ОП по адресу Т, I, К происходит следующим образом.
Проверяется, нет ли блока TI в кэш-памяти. По ассоциативному признаку Т
адреса обращения осуществляется ассоциативный поиск в СОП тегов в столбце
с индексом I из адреса обращения.
Если значение Т совпадает с одним из значений, записанных в памяти тегов,
то фиксируется кэш-попадание и обращение реализуется через обращение к
СОП данных кэш-памяти по значению I адреса обращения из соответствующей
строки. В нашем примере-из первой или второй строки в зависимости от
того, в какой строке совпали теги.
Копирование блока в кэш-память осуществляется путем записи блока и тега,
ему соответствующего, в любую свободную строку; если таковой нет, то в
соответствии с принятым алгоритмом обновления на место прежней копии
записывается новый блок. Для управления перезаписью блоков используются
различные алгоритмы, основанные на учете статистики кэш-попаданий за
некоторый интервал наблюдения. При этом обычно в ячейку СОП тегов
вводятся дополнительные разряды, учитывающие частоту кэш-попаданий. Чем
меньше кэш-попаданий, тем скорее последует перезапись блока.
3.1.4. ОБНОВЛЕНИЕ ИНФОРМАЦИИ В КЭШ-ПАМЯТИ
При работе с кэш-памятью одновременно могут существовать две копии одних
и тех же данных: одна в кэш-памяти, другая - в основной памяти. Если
изменяется только одна из этих копий, то по одному и тому же адресу будут
существовать два набора информации, которые отличаются друг от друга. Для
того чтобы согласовать содержимое кэш-памяти и основной памяти,
используется три метода: сквозная запись, буферизованная сквозная запись
и обратная запись.
ИСПОЛЬЗОВАНИЕ КЭШ-ПАМЯТИ И ОРГАНИЗАЦИЯ ОСНОВНОЙ ПАМЯТИ
Сквозная запись. При использовании этого метода кэш-контроллер
одновременно с записью в кэш-память обновляет и содержимое ОП, которая
таким образом отражает текущее содержимое кэш-памяти. Быстрое обновление
Предыдущая << 1 .. 137 138 139 140 141 142 < 143 > 144 145 146 147 148 149 .. 528 >> Следующая

Реклама

c1c0fc952cf0704ad12d6af2ad3bf47e03017fed

Есть, чем поделиться? Отправьте
материал
нам
Авторские права © 2009 BooksShare.
Все права защищены.
Rambler's Top100

c1c0fc952cf0704ad12d6af2ad3bf47e03017fed