sexta-feira, 29 de outubro de 2010

Memória Cache

Na área da computação, cache é 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 vantagem principal na utilização de uma cache consiste em evitar o acesso ao dispositivo de armazenamento - que pode ser demorado -, armazenando os dados em meios de acesso mais rápidos.

-Com os avanços tecnológicos, vários tipos de cache foram desenvolvidos. 

Actualmente há cache em processadores, discos rígidos, sistemas, servidores, nas placas-mãe, entre outros. Qualquer dispositivo que requeira do usuário uma solicitação/requisição a algum outro recurso, seja de rede ou local, interno ou externo a essa rede, pode requerer ou possuir de fábrica o recurso de cache.


Por ser mais caro, o recurso mais rápido não pode ser usado para armazenar todas as informações. Sendo assim, usa-se a cache para armazenar apenas as informações mais frequentemente usadas. 
Nas unidades de disco  também conhecidas como disco rígido ou Hard Drive (HD), também existem chips de cache nas placas electrónicas que os acompanham. 

-Como exemplo, a unidade Samsung  de 160 GB  tem 8 MBytes  de cache.
Memória Cache em esquema

Cache em disco

O cache de disco é uma pequena quantidade de memória incluída na placa lógica do HD. Tem como principal função armazenar as últimas trilhas lidas pelo HD. 
Esse tipo de cache evita que a cabeça de leitura e gravação passe várias vezes pela mesma trilha, pois como os dados estão no cache, a placa lógica pode processar a verificação de integridade a partir dali, acelerando o desempenho do HD, já que o mesmo só requisita a leitura do próximo sector assim que o último sector lido seja verificado.

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 a memória é tão grande que são necessários caches grandes com velocidades altíssimas de transferência e baixas latências.
Sendo 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). A partir do Intel 486, começou a se colocar a L1 no próprio chip [processador]. Geralmente tem entre 16KB e 128KB; hoje já encontramos processadores com até 16MB de cache.
  • Cache L2- Possuindo o Cache L1 um tamanho reduzido e não apresentando uma solução ideal, foi desenvolvido o cache L2, que contém muito mais memória que o cache L1. Ela é mais um caminho para que a informação requisitada não tenha que ser procurada na lenta memória principal. Alguns processadores colocam essa cache fora do processador, por questões económicas, pois uma cache grande implica num custo grande, mas há excepções, como no Pentium II, por exemplo, cujas caches L1 e L2 estão no mesmo cartucho que está o processador.
  • 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 a complexidade dos processadores actuais, com suas áreas chegando a milhões de transístores por micrómetros ou picó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.
Tamanho da Cache

Quando é feita a implementação da memória cache, alguns aspectos são analisados em relação a seu tamanho:
  •  A relação acerto/falha
  • Tempo de acesso a memória principal
  • O custo médio, por bit, da memória principal, da cache L1 e L2
  • O tempo de acesso da cache L1 ou L2
  • A natureza do programa a ser executado no momento

Tipos de Memória

DRAM

DRAM(Dynamic random access memory) é um tipo de memória RAM de acesso direto que armazena cada bit de dados num condensador ou Capacitor.
O número de elétrons armazenados no condensador determina se o bit é considerado 1 ou 0. Como vai havendo fuga de elétrons do condensador, a informação acaba por se perder, a não ser que a carga seja refrescada periodicamente.



DRAM
Tipos de DRAM
SIPP foi um tipo de memória de acesso aleatório.O seu nome significa Single Inline Pin Package
Ela consiste de uma pequena placa de circuito impresso sobre a qual foram montados um conjunto de chips de memória. Ele tem 30 pinos em uma borda que acasalaram com correspondência furos na placa-mãe do computador.

SIPP

Um DIMM, ou módulo de memória dual in-line, inclui uma série de circuitos dinâmica de acesso aleatório de memória integrado. Estes módulos são montados em uma placa de circuito impresso e projetado para uso em computadores pessoais, workstations e servidores. DIMMs começaram a substituir os SIMMs (módulos de memória em linha única) como o tipo predominante de módulo de memória dos processadores Intel Pentium P5-base começou a ganhar quota de mercado.
DIMM

SDRAM memória de acesso aleatório dinâmica síncrona  é a memória de acesso aleatório dinâmico (DRAM), que tem uma interface síncrona.
Tradicionalmente, a memória de acesso aleatório dinâmico (DRAM) tem uma interface assíncrona, o que significa que ela responda o mais rápido possível às mudanças em entradas de controle.
SRAM



DDR SDRAM double Data Rate memória de acesso aleatório dinâmica síncrona é uma classe de circuitos integrados de memória usados em computadores.
Em comparação com a taxa única de dados (SDR) SDRAM, DDR SDRAM a interface possibilita taxas de transferência mais possível um controle mais rigoroso do calendário dos dados elétricos e sinais de clock. Implementações muitas vezes tem que usar programas como fase de loops fechados e auto-calibração para alcançar a precisão de tempo necessário.
DDR SDRAM

VRAM tem dois conjuntos de pinos de saída de dados e, assim, duas portas que podem ser usados simultaneamente. A primeira porta, a porta de DRAM, é acessada pelo computador host, de forma muito semelhante à DRAM tradicionais. A segunda porta, a porta de vídeo, geralmente é somente leitura e é dedicado a fornecer uma alta largura de banda do canal de dados para o chipset gráfico.

VRAM
Um SO-DIMM ou esquema pequeno módulo de memória dual in-line, é um tipo de memória de computador construído usando circuitos integrados.SO-DIMM (também escrito SODIMMs) são uma alternativa a um menor DIMM, sendo que aproximadamente metade do tamanho de DIMMs regular. SO-DIMMs são frequentemente utilizados em sistemas que possuem restrições de espaço, como notebooks, PCs de tamanho reduzido (como aqueles com uma placa-mãe Mini-ITX), high-end impressoras de escritório actualizável, e hardware de rede como roteadores.
SO-DIMM

SRAM

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 precisando que as células que armazenam os bits sejam refrescadas, como é o caso das memórias DRAM.
SRAM