Como funciona a memória RAM?
Autor: Rubens Rodrigues | Publicado: 2011-09-21T10:23:00-07:00

A memória RAM (Random Access Memory) é a forma mais conhecida de memória de computador.  A memória RAM é considerada de "acesso aleatório" porque é possível  acessar diretamente qualquer célula da memória se você conhece a linha e  a coluna que cruzam essa célula.O tipo de placa e conector usados para a memória RAM nos desktops  evoluíram com o passar dos anos. Os primeiros modelos foram  patenteados, o que significou que os diversos fabricantes de  computadores desenvolveram placas de memória que somente podiam  funcionar com seus sistemas específicos. Então surgiu o SIMM (single in-line memory module).  Essa placa de memória usava um conector de 30 pinos, e seu tamanho era  de aproximadamente 9 x 2 cm. Na maioria dos computadores, você tinha de  instalar os SIMMs em pares com capacidade e velocidade iguais. Isto  porque a largura do barramento é maior que um único SIMM. Por exemplo,  você podia instalar dois SIMMs de 8 megabytes (MB) para conseguir uma  memória total de 16 megabytes de RAM. Cada SIMM podia enviar 8 bits de  dados de uma vez, enquanto o barramento de sistema podia manipular bits  de uma vez. Já as placas SIMM mais modernas, um pouco maiores  (aproximadamente 11 x 2,5 cm), usavam um conector de 72 pinos para  aumentar a capacidade de transferência, o que permitia memórias RAM de  até 256 MB.                                                                                                                           De cima para baixo: módulos de memória SIMM, DIMM e SODIMM                           Conforme os processadores aumentaram em velocidade e capacidade de transferência, a indústria adotou o novo padrão de módulo de memória, o DIMM (dual in-line memory module).  Com um enorme conector de 168 pinos ou 184 pinos e um tamanho de 14 x  2,5 cm, as DIMMs variam em capacidade de 8 MB a 1 GB por módulo e podem  ser instaladas sozinhas (e não em pares). A maioria dos módulos de  memória do PC e os módulos para os sistemas Mac G5 opera com 2,5 volts,  enquanto os sistemas Mac G4 mais antigos, em geral, usam 3,3 volts. Um  outro padrão, o módulo de memória RIMM (Rambus in-line memory module),  é comparável em tamanho e configuração de pinos à DIMM, mas usa um  barramento de memória especial para aumentar muito a velocidade.    Muitas marcas de notebooks usam módulos de memória proprietários, mas vários fabricantes usam a memória baseada na configuração de módulo de memória SODIMM (small outline dual in-line memory module).  As placas SODIMM são pequenas (aproximadamente 5 x 2,5 cm) e têm 144 ou  200 pinos. A capacidade varia de 16 MB a 1 GB por módulo. Para  conservar espaço, o computador Apple iMac usa placas SODIMMs em vez das  tradicionais DIMMs. Os notebooks menores usam até mesmo DIMMs menores,  conhecidas como MicroDIMMs, que têm 144 ou 172 pinos.        A  maioria das memórias disponíveis hoje é altamente confiável. A maioria  dos sistemas possui um controlador de memória que verifica erros ao  iniciar. Em geral, os chips de memória com verificação embutida de erros  usam um método conhecido como paridade para verificar  erros. Os chips de paridade têm um bit extra para cada 8 bits de dados. A  maneira como a paridade funciona é simples. Vamos dar uma olhada na  paridade par primeiro.    Quando os 8 bits em um byte recebem  dados, o chip contabiliza o número total de 1s. Se o número total de 1s é  ímpar, o bit de paridade é definido como 1. Se o total é par, o bit de  paridade é 0. Quando os dados são lidos de volta dos bits, o total é  contabilizado novamente e comparado com o bit de paridade. Se o total é  ímpar e o bit de paridade for 1, então os dados são admitidos como  válidos e enviados para a CPU. Mas se o total é ímpar e o bit de  paridade é 0, o chip reconhece que há um erro em algum lugar nos 8 bits e  descarta os dados. A paridade ímpar funciona do mesmo modo, mas o bit de paridade é definido como 1 quando o número total de 1s no byte é par.    O  problema com a paridade é que ela descobre erros, mas não faz nada para  corrigi-los. Se um byte de dados não combina com seu bit de paridade,  então os dados são descartados e o sistema tenta novamente. Os  computadores em aplicações críticas necessitam de um nível mais elevado  de tolerância de erros. Os servidores de alto desempenho freqüentemente têm uma forma de verificação de erros conhecida como ECC  (error-correction code). Como a paridade, o ECC usa bits extras para  verificar os dados em cada byte. A diferença é que o ECC usa vários bits  para a verificação de erros (a quantidade depende da largura do  barramento) em vez de um. A memória de ECC usa um algoritmo  especial não somente para detectar erros de bit isolados, mas, na  verdade, para corrigi-los também. A memória ECC também detecta  ocorrências quando mais que um bit de dado falha em um byte. Essas  falhas são muito raras e não são corrigíveis, mesmo com a memória ECC.    A  maioria dos computadores vendidos hoje usa chips de memória sem  paridade. Esses chips não possuem qualquer tipo de verificação de erro  embutido, mas, em vez disso, se apóiam no controlador de memória para a  detecção de erros. ­