O cache dos processadores L1, L2 e L3 são todos feitos de SRAM?

O cache dos processadores L1, L2 e L3 são todos feitos de SRAM?

Os caches do processador L1, L2 e L3 são todos feitos de SRAM? Se for verdade, por que L1 é mais rápido que L2 e L2 é mais rápido que L3? Não entendi essa parte quando li sobre eles.

Responder1

Em geraltodos eles são implementados com SRAM.

(Os chips POWER e zArchitecture da IBM usam memória DRAM para L3. Isso é chamado de DRAM incorporada porque é implementado no mesmo tipo de tecnologia de processo que a lógica, permitindo que a lógica rápida seja integrada no mesmo chip que a DRAM. Para POWER4, o off- chip L3 usou eDRAM; tem o L3 no mesmo chip que os núcleos de processamento.)

Embora usem SRAM, nem todos usam omesmoProjeto SRAM. SRAM para L2 e L3 são otimizadas paratamanho(para aumentar a capacidade devido ao tamanho limitado do chip fabricável ou reduzir o custo de uma determinada capacidade), enquanto a SRAM para L1 tem maior probabilidade de ser otimizada para velocidade.

Mais importante ainda, o tempo de acesso está relacionado ao tamanho físico do armazenamento. Com um layout bidimensional pode-se esperar que a latência do acesso físico sejaaproximadamenteproporcional à raiz quadrada da capacidade. (A arquitetura de cache não uniforme explora isso para fornecer um subconjunto de cache com latência mais baixa. As fatias L3 dos processadores Intel recentes têm um efeito semelhante; um acerto na fatia local tem latência significativamente menor.) Esse efeito pode tornar um cache DRAM mais rápido. do que um cache SRAM em altas capacidades porque a DRAM é fisicamente menor.

Outro fator é que a maioria dos caches L2 e L3 usam acesso serial de tags e dados, enquanto a maioria dos caches L1 acessa tags e dados em paralelo. Isto é uma otimização de energia (as taxas de falta L2 são mais altas do que as taxas de falta L1, então o acesso aos dados tem maior probabilidade de ser trabalho desperdiçado; o acesso aos dados L2 geralmente requer mais energia - relacionado à capacidade -; e os caches L2 geralmente têm maior associatividade o que significa que mais entradas de dados teriam que ser lidas especulativamente). Obviamente, ter que esperar pela correspondência da tag antes de acessar os dados aumentará o tempo necessário para recuperá-los. (O acesso L2 também normalmente só começa depois que uma falha L1 é confirmada, então a latência da detecção de falha L1 é adicionada aototallatência de acesso de L2.)

Além disso, o cache L2 está fisicamente mais distante do mecanismo de execução. Colocar o cache de dados L1 próximo ao mecanismo de execução (para que o caso comum de acerto de L1 seja rápido) geralmente significa que L2 deve ser colocado mais longe.

informação relacionada