Índice
Índice
- Introdução
- RAM Dinâmica vs. RAM Estática
- História do Cache de Memória nos PCs
- O Cache de Memória
- Cache de Memória L2 nos Processadores Multi-Núcleos
- Como o Cache de Memória Funciona
- Organização do Cache de Memória
- Cache Associativo por Grupos de n-vias
- Configuração do Cache de Memória nos Processadores Atuais
História do Cache de Memória nos PCs
Esta seção é apenas para aqueles interessados nos aspectos históricos do cache de memória. Se você não se interessa por esse assunto sinta-se à vontade para pular para a próxima página.
O cache de memória foi usado pela primeira vez em PCs na época do 386 DX. Apesar deste processador não ter um cache de memória embutido, seu circuito de apoio – ou seja, o chipset – tinha um controlador de memória cache. Portanto, o cache de memória nessa época era externo ao processador e era opcional, ou seja, o fabricante da placa-mãe poderia ou não incluir o cache de memória em suas placas. Se você tivesse uma placa-mãe sem cache de memória seu micro seria muito mais lento do que um que tivesse esse circuito. A quantidade de memória cache disponível também variava dependendo do modelo da placa-mãe e os valores típicos para essa época eram de 64 KB e 128 KB. Nessa época o controlador de memória cache usava uma arquitetura chamada “write-through” (escrita direta), onde para as operações de escrita – ou seja, quando o processador precisa armazenar dados na memória – o controlador de cache de memória atualizava a memória RAM imediatamente.
Com o processador 486 DX a Intel incluiu uma pequena quantidade (8 KB) de memória cache dentro do processador. Este cache de memória interno foi chamado L1 (nível 1) ou “interno”, enquanto que o cache de memória externo era chamado L2 (nível 2) ou “externo”. A quantidade e a existência do cache de memória externo dependia do modelo da placa-mãe. As quantidades típicas para a época eram de 128 KB e 256 KB. Os últimos modelos do 486 passaram a usar a arquitetura do cache chamada “write back” (contra-escrita), que é usada até os dias atuais, onde para as operações de escrita a memória RAM não é atualizada imediatamente, o processador armazena os dados no cache de memória e o controlador de memória atualiza a memória RAM apenas quando ocorrer um erro do cache (quando o processador precisa de um determinado dado e ele não está no cache de memória e o processador precisa buscá-lo na lenta memória RAM dizemos que houve um erro do cache).
Com o primeiro processador Pentium a Intel criou dois circuitos de memória cache separados dentro do processador: um para instruções e outro para dados (na época cada um tinha 8 KB). Esta arquitetura ainda é usada até hoje, e por isso que vemos o cache de memória L1 ser referenciado como 64 KB + 64 KB, por exemplo – isto porque existe um cache L1 de 64 KB para instruções e outro cache L1 de 64 KB para dados. Claro que explicaremos mais adiante qual é a diferença entre os dois. Na época o cache de memória L2 continuava localizado na placa-mãe e sua quantidade dependia do modelo da placa-mãe. Claro que ter um micro sem cache de memória era algo insano. Valores típicos para a época eram 256 KB e 512 KB.
No lado da AMD, os processadores K5, K6 e K6-2 usavam esta mesma arquitetura, com o K6-III tendo um terceiro cache de memória (L3, nível 3).
O problema com o cache de memória L2 sendo acessado externamente é que ele era acessado a um clock menor do que o processador, pois a partir do processador 486DX2 os processadores passaram a usar um clock interno diferente do seu clock externo. Por exemplo, enquanto um Pentium-200 funcionava internamente a 200 MHz, ele acessava seu cache de memória L2 a 66 MHz.
Com a introdução da arquitetura P6 da Intel o cache de memória foi movido da placa-mãe para dentro do processador – o que permitiu ao processador acessá-lo com seu clock interno –, exceto no Pentium II, onde o cache de memória não estava localizado dentro do processador, mas na mesma placa de circuito impresso onde o processador estava soldado (esta placa de circuito impresso estava localizada dentro de um cartucho), trabalhando com a metade do clock interno do processador, e no Celeron-266 e Celeron-300, que não tinham cache de memória (e por isso estes são os processadores com o pior desempenho na história dos PCs).
Esta mesma arquitetura é usada até hoje: tanto o cache de memória L1 quanto o cache de memória L2 estão localizados dentro do processador sendo acessados com o clock interno do processador. Dessa forma, quantidade de memória cache que você pode ter em seu micro dependerá do modelo do seu processador; não existe uma maneira de aumentar a quantidade de memória cache sem trocar o processador.
Respostas recomendadas
Crie uma conta ou entre para comentar
Você precisa ser um usuário para fazer um comentário
Criar uma conta
Crie uma nova conta em nossa comunidade. É fácil!
Crie uma nova contaEntrar
Já tem uma conta? Faça o login.
Entrar agora