Введение в архитектуру персонального компьютера. Соппа И.В. - 87 стр.

UptoLike

Составители: 

памяти, или информация в строке должна быть заменена. Разумеется, в случае ее замены меняется
и значение ее тега.
Преимуществом реализации такого типа архитектуры являются довольно низкие затраты,
поскольку, по сути, требуется всего лишь одна операция сравнения (для тегов). Недостатки ее,
впрочем, также очевидны. Например, если два блока данных основной памяти, используемые
одинаково часто, претендуют на одну и ту же строку в КЭШе. К недостаткам также можно
отнести большой объем пересылок данных в случае частых обращений к различным частям
главной памяти. В среднем производительность систем на базе КЭШа с прямым отображением
имеет коэффициент удачных обращений от 0,41 для емкости КЭШа 1 Кбайт, до 0,89 для 128
Кбайт, при условии, что разрядность КЭШа равна 4 Кбайт. Внешняя КЭШ-память с прямым
отображением используется, например, вместе с 80386 процессорами (КЭШ-контроллер i82385), а
внутренняяв микропроцессоре DEC Alpha 21064.
Другим типом организации КЭШ-памяти является полностью ассоциативная. В этом
случае между блоками данных не существует взаимосвязи, т.е. любой блок памяти может
занимать любую строку КЭШа (рис. 4.3).
От процессора
Тег Смещение
0010001 100
4
1
2
3
4
5
6
7
0
123 45670Тег
К процессору
Данные
КЭШ
17
79
63
17
45
Рис. 4.3. Организация полностью ассоциативного КЭШа
Полный адрес памяти делится только на две части: младшие разрядысмещение в строке
и старшие разрядыинформация о теге. В этой архитектуре решена проблема конфликтов
адресов, однако сама КЭШ-память требует для своей реализации больших аппаратных затрат,
поскольку значения тэгов должны уже сравниваться для всех линий КЭШа. Данная архитектура не
нашла широкого применения. Тем не менее, процессор 686 фирмы Cyrix имеет вторичную
встроенную 256-байтную КЭШ-память для команд, которая имеет полностью ассоциативную
организацию.
Третий тип организации КЭШаэто множественный ассоциативный КЭШ, который
является компромиссом между первыми двумя типами КЭШа. В этом случае несколько линий
(две, четыре, пять, восемь) объединяются в наборы, и средние биты адреса памяти определяют
уже не конкретную линию (как в прямом отображении), набор (рис. 4.4). Сравнение тегов со
значением старших разрядов производится только для линий, входящих в набор. Данный метод
увеличивает коэффициент удачных обращений, и как следствие, эффективность системы.
Множественный ассоциативный КЭШ имеет подавляющее число процессоров, например, 486DX,
486DX2, 486DX4, Pentium и т.д.
памяти, или информация в строке должна быть заменена. Разумеется, в случае ее замены меняется
и значение ее тега.
       Преимуществом реализации такого типа архитектуры являются довольно низкие затраты,
поскольку, по сути, требуется всего лишь одна операция сравнения (для тегов). Недостатки ее,
впрочем, также очевидны. Например, если два блока данных основной памяти, используемые
одинаково часто, претендуют на одну и ту же строку в КЭШе. К недостаткам также можно
отнести большой объем пересылок данных в случае частых обращений к различным частям
главной памяти. В среднем производительность систем на базе КЭШа с прямым отображением
имеет коэффициент удачных обращений от 0,41 для емкости КЭШа 1 Кбайт, до 0,89 для 128
Кбайт, при условии, что разрядность КЭШа равна 4 Кбайт. Внешняя КЭШ-память с прямым
отображением используется, например, вместе с 80386 процессорами (КЭШ-контроллер i82385), а
внутренняя – в микропроцессоре DEC Alpha 21064.
       Другим типом организации КЭШ-памяти является полностью ассоциативная. В этом
случае между блоками данных не существует взаимосвязи, т.е. любой блок памяти может
занимать любую строку КЭШа (рис. 4.3).

      От процессора

      Тег     Смещение
    0010001     100


       17          4


               0       79
               1       63                                                     К процессору
               2
               3       17
               4
               5       45
               6
               7
                       Тег   0   1    2     3        4   5     6     7
                                                Данные
                                          КЭШ

       Рис. 4.3. Организация полностью ассоциативного КЭШа

        Полный адрес памяти делится только на две части: младшие разряды – смещение в строке
и старшие разряды – информация о теге. В этой архитектуре решена проблема конфликтов
адресов, однако сама КЭШ-память требует для своей реализации больших аппаратных затрат,
поскольку значения тэгов должны уже сравниваться для всех линий КЭШа. Данная архитектура не
нашла широкого применения. Тем не менее, процессор 6∗86 фирмы Cyrix имеет вторичную
встроенную 256-байтную КЭШ-память для команд, которая имеет полностью ассоциативную
организацию.
        Третий тип организации КЭШа – это множественный ассоциативный КЭШ, который
является компромиссом между первыми двумя типами КЭШа. В этом случае несколько линий
(две, четыре, пять, восемь) объединяются в наборы, и средние биты адреса памяти определяют
уже не конкретную линию (как в прямом отображении), набор (рис. 4.4). Сравнение тегов со
значением старших разрядов производится только для линий, входящих в набор. Данный метод
увеличивает коэффициент удачных обращений, и как следствие, эффективность системы.
Множественный ассоциативный КЭШ имеет подавляющее число процессоров, например, 486DX,
486DX2, 486DX4, Pentium и т.д.