Ir ao conteúdo
  • Cadastre-se

Como os Processadores Funcionam


     575.964 visualizações    Processadores    8 comentários
Como os Processadores Funcionam

Memória Cache

Memória cache é um tipo de memória de alto desempenho, também chamada memória estática. O tipo de memória usado na memória RAM principal do computador é chamado memória dinâmica. A memória estática consome mais energia, é mais cara e é fisicamente maior que a memória dinâmica, mas é muito mais rápida. Ela pode trabalhar no mesmo clock do processador, o que a memória dinâmica não é capaz de fazer.

Já que ir ao “mundo exterior” para buscar dados faz com que o processador trabalhe a uma taxa de clock inferior, a técnica da memória cache é usada. Quando o processador carrega um dado de uma certa posição da memória, um circuito chamado controlador de memória cache (não desenhado na Figura 6 em prol da simplicidade) carrega na memória cache um bloco inteiro de dados abaixo da atual posição que o processador acabou de carregar. Como normalmente os programas rodam de maneira seqüencial, a próxima posição de memória que o processador irá requisitar será provavelmente a posição imediatamente abaixo da posição da memória que ela acabou de carregar. Como o controlador de memória cache já carregou um monte de dados abaixo da primeira posição de memória lida pelo processador, o próximo dado estará dentro da memória cache, portanto o processador não precisa “sair” para buscar os dados: eles já estão carregados na memória cache embutida no processador, os quais ela pode acessar à sua taxa de clock interna.

O controlador de cache está sempre observando as posições de memória que estão sendo carregadas e carregando dados de várias posições de memória depois da posição de memória que acaba de ser lida. Para darmos um exemplo real, se o processador carregou dados armazenados no endereço 1.000, o controlador de cache carregará dados do endereço “n” após o endereço 1.000. Esse número “n” é chamado página; se um dado processador está trabalhando com páginas de 4 KB (que é um valor típico), ele carregará dados de 4.096 endereços abaixo da atual posição de memória que está sendo carregada (endereço 1.000 em nosso exemplo). A propósito, 1 KB é igual a 1.024 bytes, por isso 4 KB é igual a 4.096 e não 4.000. Na Figura 7 nós ilustramos esse exemplo.

Como funciona o controlador de memória cache

Figura 7: Como funciona o controlador de memória cache.

Quanto maior a memória cache, maiores são as chances de que a informação necessária ao processador já esteja lá, então o processador precisará acessar diretamente a memória RAM com menos freqüência, e assim aumentando o desempenho do sistema (apenas lembre-se que toda vez que o processador precisa acessar a memória RAM diretamente, ele precisa diminuir sua taxa de clock para essa operação).

Chamamos de “acerto” (“hit”) quando o processador carrega uma informação requisitada do cache, e de “erro” (“miss”) se a informação requisitada não está lá e o processador precise acessar a memória RAM do sistema.

L1 e L2 significam “nível 1” (Level 1) e “nível 2” (“Level 2”), respectivamente, e referem-se à distância em que se encontram do núcleo do processador (unidade de execução). Uma dúvida comum é porque ter três memórias cache distintas (cache de dados L1, cache de instrução L1 e L2). Preste atenção na Figura 6 e você verá que o cache de instrução L1 funciona como “cache de entrada”, enquanto o cache de dados L1 funciona como “cache de saída”. O cache de instrução L1 – que é geralmente menor que o cache L2 – é particularmente eficiente quando o programa começa a repetir uma pequena parte dele (loop), porque as instruções requisitadas estarão mais próximas da unidade de busca.

Na página de especificações de um processador o cache L1 pode ser encontrado com diferentes tipos de representação. Alguns fabricantes listam duas memórias cache L1 separadamente (algumas vezes chamando o cache de instrução de “I” e o cache de dados de “D”), alguns acrescentam a soma dos dois e escrevem “separados” – então “128 KB, separados” significa 64 KB cache de instrução e 64 KB de cache de dados –, e alguns simplesmente somam os dois e você tem que adivinhar que o número é o total e que você deve dividi-lo por dois para saber a capacidade de cada cache. A exceção, entretanto, fica com os processadores Pentium 4 e os Celeron mais novos, baseados nos soquetes 478 e 775.

Os processadores Pentium 4 (e processadores Celeron soquetes 478 e 775) não possuem cache de instrução L1. Em vez disso eles possuem cache de rastreamento de execução, que é um cache localizado entre a unidade de decodificação e a unidade de execução. Portanto, o cache de instrução L1 está lá, mas com nome e lugar diferentes. Estamos falando isso porque esse é um erro muito comum, pensar que processadores Pentium 4 não possuem cache de instrução L1. Então, quando comparam o Pentium 4 com outros processadores, alguns podem achar que seu cache L1 é muito menor, porque estão contando apenas o cache de dados L1 de 8 KB. O cache de rastreamento de execução dos processadores Pentium 4 e Celeron é de 150 KB e deve ser levado em conta, é claro.

  • Curtir 2
  • Amei 2

Artigos similares


Comentários de usuários

Respostas recomendadas

Excelente.

Como li o livro "Hardware Curso Completo" este assunto já estava mais ou menos entendido, agora com a inclusão das novas tecnologias (exemplo memórias DDR e GDR) e a forma simplificada / resumida como foi explanada, ficou mais claro.

Acho que poderia continuar para os demais artigos, como esta escrito no livro "...este site é uma prolongação direta do livro", na questão de atualizações das novas tecnologias.

É bom ter conhecimento destes conceitos "basicos" para poder entender as novas tecnologias e em que elas implicam, além de podermos compararmos as diferenças entre AMD e Intel e poder formar uma opinião própria de qual é o melhor ou mais eficiente para uma determinada tarefa, aplicação ou aplicativo.

Link para o comentário
Compartilhar em outros sites

excelente artigo!!!

foi um pouco complicado pra mim mas consegui entender muito sobre!!!

com certeza me ajudou a compreender como o "cérebro" da máquina funciona!!!

me ajudou a ver que o cpu é td um conjunto não apenas ghz pra poder ser eficiente!!!

Parabéns!!!

Quem ficou com o cérebro doendo agora fui eu!!

auhauauhauhau

show!!!

Link para o comentário
Compartilhar em outros sites



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 conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...