Memória Cache: Tipos, Níveis (L1, L2, L3) e Funcionamento

ComputaçãoAtualizado em 4,64 KB

Resumo

O texto explica o que é a memória cache, sua função de intermediária entre o processador e o armazenamento, e por que ela é dividida em níveis L1, L2 e L3. Também compara a memória SRAM com a DRAM e apresenta exemplos de processadores e tecnologias de memória RAM (DDR1 a DDR4). O estudante aprende os principais conceitos de desempenho, tamanho e custo dessas memórias.

Pontos-chave

  • Cache é um dispositivo de acesso rápido que evita o acesso ao armazenamento mais lento, guardando dados em meios mais rápidos.
  • A SRAM mantém os dados enquanto houver alimentação, não precisa de refresh e é mais rápida, porém mais cara, ocupa mais espaço e consome mais energia que a DRAM.
  • O cache foi dividido em níveis (L1, L2, L3) porque caches grandes e muito rápidos são difíceis e caros de construir.
  • O cache L1 é uma pequena porção de memória estática dentro do processador, geralmente entre 16KB e 128KB; o primeiro a tê-lo foi o i486 com 8KB.
  • O cache L2 é maior que o L1 e é essencial para o bom rendimento do processador, mesmo com clock baixo.
  • O cache L3 é o terceiro nível, inicialmente usado pelo AMD K6-III, e ainda é raro devido à complexidade dos processadores atuais.

Teste-se

O que é Memória SRAM?

Memória SRAM (Static Random Access Memory, que significa memória estática de acesso aleatório em português) é um tipo de memória de acesso aleatório que mantém os dados armazenados desde que seja mantida sua alimentação. Não é necessário que as células que armazenam os bits sejam atualizadas (refrescadas) periodicamente, como é o caso das memórias DRAM.

Embora sejam mais caras e ocupem mais espaço quando comparadas às DRAM, as SRAMs possuem a vantagem de serem bem mais rápidas, justificando seu uso nas memórias cache L1 e L2. Além disso, as memórias estáticas consomem *mais* energia e aquecem *mais* que as DRAM. Memórias estáticas usam circuitos do tipo flip-flop.

O que é Memória Cache?

Cache (também grafado como cachet ou cachê) é um dispositivo de acesso rápido, interno a um sistema, que serve de intermediário entre um operador de um processo e o dispositivo de armazenamento ao qual esse operador acede. A principal vantagem de utilizar um cache consiste em evitar o acesso ao dispositivo de armazenamento (que pode ser demorado), armazenando os dados em meios de acesso mais rápidos.

O uso de memórias cache visa obter uma velocidade de acesso à memória próxima da velocidade de memórias mais rápidas e, ao mesmo tempo, disponibilizar no sistema uma memória de grande capacidade, a um custo similar ao de memórias de semicondutores mais baratas.

Cache em Níveis

Com a evolução na velocidade dos dispositivos, em particular nos processadores, o cache foi dividido em níveis, já que a demanda de velocidade à memória é tão grande que são necessários caches grandes, com altíssimas velocidades de transferência e baixas latências. Como é muito difícil e caro construir memórias caches com essas características, elas são construídas em níveis que se diferem na relação tamanho x desempenho.

Cache L1

Uma pequena porção de memória estática presente dentro do processador. Em alguns tipos de processador, como o Pentium 2, o L1 é dividido em dois níveis: dados e instruções (que "dizem" o que fazer com os dados). O primeiro processador da Intel a ter o cache L1 foi o i486 com 8KB. Geralmente tem entre 16KB e 128KB; hoje já encontramos processadores com até 16MB de cache.

Cache L2

Como o Cache L1 possui um tamanho reduzido e não apresenta uma solução ideal, foi desenvolvido o cache L2, que contém muito mais memória que o cache L1. Ele é mais um caminho para que a informação requisitada não tenha que ser procurada na lenta memória principal. Alguns processadores colocam esse cache fora do processador, por questões econômicas, pois um cache grande implica um custo grande, mas há exceções, como no Pentium II, por exemplo, cujos caches L1 e L2 estão no mesmo cartucho que o processador. A memória cache L2 é, sobretudo, um dos elementos essenciais para um bom rendimento do processador, mesmo que tenha um clock baixo. Um exemplo prático é o caso do Intel Itanium 9152M (para servidores), que tem apenas 1.6 GHz de clock interno e ganha do atual Intel Extreme, pelo fato de possuir uma memória cache de 24MB. Quanto mais alto é o clock do processador, mais este aquece e mais instável se torna. Os processadores Intel Celeron têm um fraco desempenho por possuírem menos memória cache L2. Um Pentium M 730 de 1.6 GHz de clock interno, 533 MHz FSB e 2 MB de cache L2, tem rendimento semelhante a um Intel Pentium 4 2.4 GHz, aquece muito menos e torna-se muito mais estável e rentável do que o Intel Celeron M 440 de 1.86 GHz de clock interno, 533 MHz FSB e 1 MB de cache L2.

Cache L3

Terceiro nível de cache de memória. Inicialmente utilizado pelo AMD K6-III (por apresentar o cache L2 integrado ao seu núcleo), utilizava o cache externo presente na placa-mãe como uma memória de cache adicional. Ainda é um tipo de cache raro devido à complexidade dos processadores atuais, com suas áreas chegando a milhões de transistores por micrômetros ou nanômetros de área. Ela será muito útil; é possível a necessidade futura de níveis ainda mais elevados de cache, como L4 e assim por diante.

Tecnologias de Memória RAM:

  • DDR1: Dobro de transferência em relação à SRAM. A cada pulso do clock, a tecnologia DDR consegue transferir 2 bits.
  • DDR2: Esta tecnologia transfere 4 bits a cada pulso do clock.
  • DDR3: Transfere 8 bits a cada pulso do clock.
  • DDR4: Transfere 16 bits a cada pulso do clock.

Baixar

PDF Word HTML

Perguntas frequentes

O que é memória cache?

É um dispositivo de acesso rápido, interno ao sistema, que serve de intermediário entre o processador e o dispositivo de armazenamento. Seu objetivo é evitar acessos demorados ao armazenamento.

Qual a diferença entre SRAM e DRAM?

A SRAM mantém os dados sem necessidade de refresh periódico e é mais rápida, mas é mais cara e ocupa mais espaço. A DRAM precisa ser atualizada periodicamente, é mais barata e mais compacta.

Por que o cache é dividido em níveis?

Porque a demanda por velocidade é muito grande e construir memórias cache grandes e muito rápidas é difícil e caro. Assim, cada nível equilibra tamanho e desempenho de forma diferente.

Teste-se

Cartões de revisão

Clique em um cartão para ver a resposta.

Teste

1. O que significa a sigla SRAM?
2. Qual é a principal vantagem de usar um cache?
3. Por que as memórias SRAM não precisam ser atualizadas periodicamente?
4. Qual processador da Intel foi o primeiro a ter cache L1, segundo o texto?
5. Qual cache foi inicialmente utilizado pelo AMD K6-III?
6. Quantos bits a tecnologia DDR3 transfere a cada pulso do clock?

Perguntas geradas com IA a partir do documento: verifique as respostas com o texto.