Кэш-память процессоров L1, L2 и L3 состоит из SRAM?

Кэш-память процессоров L1, L2 и L3 состоит из SRAM?

Все ли кэши процессора L1, L2 и L3 сделаны из SRAM? Если это правда, то почему L1 быстрее, чем L2, а L2 быстрее, чем L3? Я не понял эту часть, когда читал о них.

решение1

В общемвсе они реализованы с использованием SRAM.

(В чипах IBM POWER и zArchitecture для L3 используется память DRAM. Это называется встроенной DRAM, поскольку она реализована по тому же типу технологического процесса, что и логика, что позволяет интегрировать быструю логику в тот же чип, что и DRAM. В POWER4 внешняя память L3 использовала eDRAM; в POWER7 L3 находится на том же чипе, что и ядра обработки.)

Хотя они используют SRAM, не все они используюттакой жеКонструкция SRAM. SRAM для L2 и L3 оптимизированы дляразмер(для увеличения емкости при ограниченном технологическом размере кристалла или снижения стоимости заданной емкости), в то время как SRAM для L1, скорее всего, будет оптимизирована для скорости.

Что еще более важно, время доступа связано с физическим размером хранилища. При двумерной компоновке можно ожидать, что задержка физического доступа будетгрубопропорционально квадратному корню емкости. (Неравномерная архитектура кэша использует это для предоставления подмножества кэша с меньшей задержкой. Слайсы L3 последних процессоров Intel имеют аналогичный эффект; попадание в локальный слайс имеет значительно меньшую задержку.) Этот эффект может сделать кэш DRAM быстрее, чем кэш SRAM при высокой емкости, поскольку DRAM физически меньше.

Другим фактором является то, что большинство кэшей L2 и L3 используют последовательный доступ к тегам и данным, тогда как большинство кэшей L1 получают доступ к тегам и данным параллельно. Это оптимизация энергопотребления (частота промахов L2 выше, чем частота промахов L1, поэтому доступ к данным, скорее всего, будет пустой работой; доступ к данным L2 обычно требует больше энергии — в зависимости от емкости —; и кэши L2 обычно имеют более высокую ассоциативность, что означает, что больше записей данных придется считывать спекулятивно). Очевидно, что необходимость ожидания сопоставления тега перед доступом к данным увеличит время, необходимое для извлечения данных. (Доступ L2 также обычно начинается только после подтверждения промаха L1, поэтому задержка обнаружения промаха L1 добавляется кобщийзадержка доступа L2.)

Кроме того, кэш L2 физически более удален от механизма выполнения. Размещение кэша данных L1 близко к механизму выполнения (чтобы общий случай попадания L1 был быстрым) обычно означает, что L2 должен быть размещен дальше.

Связанный контент