ct

    Memória RAM

    Tutoriais

    Conheças as tecnologias de memória RAM, suas características, vantagens, desvantagens, aplicações e funcionamento. Abrange todas as tecnologias de memória RAM, incluindo as memórias DDR e Rambus.Carlos E. Morimoto
    06/08/2001


    Se o processador é o principal componente de qualquer computador, a memória RAM é a sua principal ferramenta de trabalho. Desde uma calculadora xing-ling, até um grande mainframe, não existe nenhum tipo que computador que não utilize memória RAM. O processador utiliza a memória RAM para armazenar programas e dados que estão em uso e fica impossibilitado de trabalhar sem ter pelo menos uma quantidade mínima dela. Aliás, nos computadores atuais, a velocidade de acesso à memória RAM é um dos principais determinantes da performance, daí a vital importância do uso da memória cache.

    A sigla "RAM" significa "Ramdom Access Memory" ou "memória de acesso aleatório". Este nome é mais do que adequado, pois a principal característica da memória RAM é a capacidade de fornecer dados anteriormente gravados, com um tempo de resposta e uma velocidade de transferência centenas de vezes superior à dos dispositivos de memória de massa, como o disco rígido.

    Mais uma característica marcante da memória RAM é o fato dela ser volátil: precisa ser constantemente reenergizada para conservar os dados gravados. Como numa calculadora, perdemos todos os dados nela armazenados quando desligamos o micro. Se, por exemplo, você estiver escrevendo uma carta no Word e, de repente, houver um pico de tensão e o micro reinicializar, sem lhe dar tempo de salvar a carta no disco rígido, você perderá todo seu trabalho.

    Existem claro, tipos de memória RAM não voláteis, como por exemplo as memórias Flash, que são utilizadas nos Palm Pilots e em outros computadores de mão, celulares, etc. O problema das memórias Flash é o preço. Enquanto escrevo, é possível comprar um módulo de memória SDRAM de 256 MB por R$ 200, com o dólar nas cucuias como está, isso corresponde a menos de 80 dólares, a preços de Brasil. Isso dá pouco mais de 30 centavos por megabyte. As memória Flash já são bem mais caras que isso, custam entre 5 e 10 dólares por megabyte, dependendo da aplicação. Isso sem contar o fato delas serem bem mais lentas.

    Na verdade, pode ser que no futuro algum tipo de memória não volátil venha a definitivamente substituir a memória RAM. A IBM por exemplo vem desenvolvendo as memórias MRAM, que armazenam dados na forma de sinais magnéticos. A promessa é que além de conservarem os dados gravados por anos a fio, elas sejam tão rápidas e baratas quanto as memórias atuais. Normalmente as promessas dos fabricantes são tão confiáveis quanto as promessas dos políticos em campanha, mas sempre existe uma esperança :-)

    Já que vamos continuar usando memória RAM volátil durante mais alguns (ou vários) anos, que tal estudarmos sua história e as tecnologias se memória disponíveis atualmente? Puxe uma cadeira e seja meu convidado.


    Preço x quantidade

    Antigamente, os módulos de memória RAM custavam muito caro. Há poucos anos atrás, pagávamos mais de 40 dólares por megabyte. Em pleno início da década de 90, o preço da memória chegou a bater a marca dos 100 dólares por megabyte.

    Com a memória custando este fortuna, é compreensível que a grande maioria dos PCs 386 e 486 viessem equipados com apenas 8 ou mesmo 4 MB de memória, sendo que o recomendável para rodar sistemas gráficos como o Windows 95, ou mesmo o XFree86 do Linux seriam pelo menos 16.

    Felizmente, tivemos nos últimos anos uma queda vertiginosa no preço das memórias. Assim como os processadores evoluem, incorporando mais transístores, operando a frequências maiores e ainda assim custando cada vez mais baratos, com o passar do tempo os fabricantes de memória conseguem produzir chips de memória com transístores cada vez menores. Com isto, é possível aumentar a quantidade de memória em cada chip e o preço por megabyte despenca.

    Voltando ao ramo dos processadores, um 486 tinha apenas 1.200.000 transístores, enquanto um Athlon Thunderbird tem 37 milhões. Mesmo assim, um Athlon custa hoje bem menos que um 486 custava na época em que era novidade. A chave para este salto é a miniaturização dos transístores.

    Na memória RAM, cada transístor representa um bit de dados. Um módulo de memória com 64 MB é formado por cerca de 512 milhões de transístores. Conforme os fabricantes desenvolvem novas tecnologias, passam a ser capazes de produzir transístores menores. Com isso é possível incluir mais transístores, e consequentemente mais memória em cada chip. Os primeiros chips de memória RAM tinham apenas 1 Kb (um Kbit e não um Kbyte, preste atenção no B minúsculo :-), enquanto atualmente a moda é produzir chips com 128 Mb (megabits). Juntando 8 chips temos um pente de memória com 128 MB, juntando 16 temos um módulo de 256 MB e assim por diante. Chegamos assim aos 30 centavos por megabyte.

    Os módulos de memória ainda não dão em árvore, mas estão perto disso, pelo menos em termos de preço.

    O baixo preço atual, justifica o uso de 128 ou mesmo 256 MB de memória. Alguns usuários de aplicativos mais pesados já vão mais além, definindo 512 MB como o ideal. A quantidade e velocidade das memórias são mais importantes que a própria velocidade do processador, principalmente para quem costuma trabalhar com vários aplicativos abertos ao mesmo tempo, ou trabalha com arquivos pesados, imagens, vídeo, etc..

    A equação é simples. Qualquer programa ou arquivo em uso precisa ser armazenado na memória. O processador começa a usar a memória RAM que é razoavelmente rápida, o suficiente para que (com a ajuda do cache) o processador possa usar todo o seu potencial. Mas, e quando a memória RAM se esgota? Bem, o que você prefere, ver uma mensagem de "não há memória suficiente", ou ver o aplicativo rodando, mesmo que lentamente? Se você ficou com a segunda opção, agradeça ao engenheiro da Intel que trabalhou para incluir o recurso de memória virtual a partir 386.

    A memória virtual é só um quebra galho. Serve para permitir que o processador simule mais memória RAM criando um arquivo no disco rígido e armazenando nele os dados que não couberam na memória. O problema é que o processador processa bilhões de instruções por segundo, enquanto um HD rápido tem tempos de acesso em torno de 10 milésimos de segundo.

    Como o processador não pode fazer nada se não tiver dados para processar, precisa esperar até que o disco rígido possa lhe entregar o trabalho a ser feito. De nada adianta ter um processador muito rápido, se por falta de memória RAM ele é subtilizado devido ao uso de memória virtual, ficando limitado à performance do disco rígido.

    Para você ter uma idéia do quanto a quantidade de memória RAM é importante, um simples 486DX4-100, com uma quantidade razoável de memória RAM (32 MB ou mais) é capaz de rodar o Windows 95/98 e a maioria dos aplicativos mais rápido do que um Pentium III de 1 GHz equipado com apenas 8 MB de memória. Afinal, o que é mais rápido, um processador 486, ou o disco rígido usado no Pentium III? :-)

    Claro que o ideal é sempre termos um sistema equilibrado; não adianta também querer instalar 64 MB de memória RAM em um 386.


    Como funciona

    Os chips de memória RAM possuem uma estrutura extremamente simples. Para cada bit 1 ou 0 a ser armazenado, temos um minúsculo capacitor; quando o capacitor está carregado eletricamente temos um bit 1 e quando ele está descarregado temos um bit 0. Para cada capacitor temos um transístor, encarregado de ler o bit armazenado em seu interior e transmiti-lo ao controlador de memória. A memória RAM é volátil justamente devido ao capacitor perder sua carga muito rapidamente, depois de poucos milésimos de segundo.

    A produção de chips de memória é similar ao de processadores: também utilizamos um waffer de silício como base e um laser para marcá-lo. A diferença é que os chips de memória são compostos basicamente de apenas uma estrutura básica: o conjunto capacitor/transístor, que é repetida alguns milhões de vezes, enquanto os processadores são formados por estruturas muito mais complexas. Devido a esta simplicidade, um chip de memória é muito mais barato de se produzir do que um processador. Um módulo de 128 MB tem pouco mais de 1 bilhão de transístores, quase 40 vezes mais que um processador Pentium III Coppermine. Apesar disso, o módulo de memória é mais barato.


    Acesso a dados

    Para ler e gravar dados na memória, assim como controlar todo o trânsito de dados entre a memória e os demais componentes do micro, é usado mais um circuito, chamado controlador de memória, que faz parte do chipset localizado na placa mãe.

    Para facilitar o acesso a dados, dividimos os módulos de memória em linhas e colunas. Para acessar um determinado transístor (seja para gravar ou ler dados), o controlador de memória primeiro gera o valor RAS (Row Address Strobe), ou o número da linha da qual o transístor faz parte, sendo gerado em seguida o valor CAS (Collum Address Strobe), que corresponde à coluna.

    gdh1

    Formato

    Os chips de memória são frágeis placas de silício, que precisam ser encapsulados em alguma estrutura mais resistente antes de serem transportados e encaixados na placa mãe. Assim como temos vários tipos de encapsulamento diferentes para processadores, (SEPP e PPGA por exemplo) temos vários formatos de módulos de memória. Inicialmente os chips são encapsulados em módulos DIP, que os protegem e facilitam a dissipação do calor gerado pelos chips. Estes por sua vez são soldados em placas de circuito, formando os módulos de memória. Existem atualmente 3 tipos de módulos de memória: os módulos SIMM de 30 vias, os módulos SIMM de 72 vias e, finalmente, os módulos DIMM de 168 vias.


    Módulos DIP

    Os módulos DIP são encapsulamentos de plástico ou cerâmica, que protegem os chips de memória, facilitam a dissipação do calor gerado durante seu funcionamento, e tornam mais acessíveis seus terminais, facilitando o encaixe ou a soldagem. O encapsulamento DIP também é usado em vários outros tipos de componentes.

    Em PCs antigos, principalmente XTs, 286s e os primeiros 386s, os módulos DIP eram soldados diretamente à placa mãe, ou em alguns casos, encaixados individualmente em soquetes disponíveis na placa. Este era um sistema antiquado, que trazia várias desvantagens, por dificultar upgrades de memória ou a substituição de módulos com defeito. Imagine você, fazendo um upgrade de memória numa placa como a da foto abaixo:

    gdh2

    Módulos SIMM de 30 vias

    Não é só você que não achou muito atraente a idéia de ficar catando chips de memória um a um. Foi questão de tempo até que alguém aparecesse com uma alternativa mais prática, capaz de tornar a instalação fácil até mesmo para usuários inexperientes.

    Os módulos de memória são pequenas placas de circuito onde os chips DIP são soldados, que são encaixados em soquetes disponíveis na placa mãe.

    Os primeiros módulos de memória criados são chamados de módulos SIMM, sigla que significa "Single In Line Memory Module", justamente por que existe uma única via de contatos. Apesar de existirem contatos também na parte de trás do módulo, eles servem apenas como uma extensão dos contatos frontais, existindo apenas para aumentar a área de contato com o soquete. Examinando o módulo, você verá um pequeno orifício em cada contato, que serve justamente para unificar os dois lados.

    Os primeiros módulos SIMM possuíam 30 vias e eram capazes de transferir 8 bits por ciclo. Estes módulos foram utilizados em micros 386 e 486, e foram fabricados em varias capacidades, os mais comuns foram os módulos de 512 KB, 1MB e 4 MB, apesar de terem existido módulos de até 16 MB, raros e caríssimos. (lembra-se dos 45 dólares por megabyte? ;-)

    Como tanto o 386 quanto o 486 são processadores que acessam a memória usando palavras de 32 bits, é preciso combinar 4 módulos de 30 vias para formar cada banco de memória. Basicamente, o processador acessa os 4 módulos como se fossem um só, obtendo os 32 bits por acesso de que precisa.

    Temos então que usar estes módulos em quartetos: 4 módulos ou 8 módulos, mas nunca um número quebrado. Nos micros equipados com processadores 386SX são necessários apenas 2 módulos, já que o 386SX acessa a memória usando palavras de 16 bits (para manter compatibilidade com os componentes de placas de 286, usados para baratear os PCs equipados com o 386SX).

    gdh3

    Módulo SIMM de 72 vias

    Apesar de serem muito mais práticos do que os chips DIP, os módulos SIMM de 30 vias ainda eram bastante inconvenientes, já que era preciso usar 4 módulos idênticos para formar cada banco de memória. Quem os criou devia achar que os processadores de 8 bits eram o futuro...

    Para solucionar este problema, os fabricantes criaram um novo tipo de módulo de memória SIMM, de 32 bits, que possui 72 vias. Esse tipo de memória foi usado em micros 486 mais modernos e tornou-se padrão em micros Pentium, deixando de ser utilizados apenas depois do advento dos módulos de 168 vias, os mais usados atualmente.

    Ao invés de quatro módulos, é preciso apenas um módulo SIMM de 72 vias para formar cada banco de memória nos micros 486. Como o Pentium acessa a memória usando palavras de 64 bits, são necessários 2 módulos em cada banco.

    gdh4
    Na verdade, depois do Pentium, praticamente todos os processadores acessam a memória a 64 bits. Apesar do Pentium II, Pentium III, Celeron, Athlon, Duron, etc. serem todos processadores de 32 bits, acessar 64 bits por vez na memória ajuda a melhorar o desempenho. O processador é tão mais rápido que a memória RAM, que depois de esperar vários ciclos para poder acessá-la, o melhor a fazer é pegar a maior quantidade de dados possível e guardar tudo no cache. Naturalmente os dados serão processados em blocos de 32 bits, mas a poupança ajuda bastante. Não é à toa que quase dois terços dos transístores de um Pentium III Coppermine são usados nos caches L1 e L2.


    Módulo DIMM de 168 vias

    Ao contrario dos módulos SIMM de 30 e 72 vias, os módulos DIMM possuem contatos em ambos os lados do módulo, o que justifica seu nome, "Double In Line Memory Module" ou "módulo de memória com duas linhas de contato". Como Os módulos DIMM trabalham com palavras binárias de 64 bits, um único módulo é suficiente para preencher um banco de memória em um micro Pentium ou superior, dispensando seu uso em pares. Caso você deseje instalar 64 MB de memória em um Pentium II, por exemplo, será preciso comprar apenas um único módulo DIMM de 64 MB.

    Os módulos DIMM de 168 vias são os únicos fabricados atualmente. Você dificilmente encontrará módulos de 72 vias, ou placas mãe novas que os suportem à venda, apenas componentes usados. Veja na foto abaixo as diferenças de formato e tamanho entre os três formatos:

    gdh5

    Bancos de Memória

    Um processador x86 pode trabalhar com qualquer quantidade de memória, a partir de um mínimo de 64 KB. Porém, é preciso que exista um barramento de dados suficiente. Uma quantidade qualquer de memória, que atenda às exigências do processador quanto à largura de barramento é chamada de banco de memória.

    No Pentium, cada banco de memória deve ser capaz de permitir o acesso de 64 bits de dados por vez, enquanto nos processadores 386 e 486 é necessário um barramento de 32 bits. Caso o módulo de memória possua um barramento de dados mais estreito que o necessário, é preciso combinar dois ou mais módulos para formar cada banco.

    Como os módulos SIMM de 30 vias possuem um barramento de apenas 8 bits, são necessários 4 módulos para formar um banco de memória em um micro 386 ou 486. Se estes módulos antigos chegassem a ser utilizados em micros Pentium, seriam necessários 8 módulos para formar cada banco.

    Os módulos SIMM de 72 vias já possuem um barramento de 32 bits, sendo um único módulo suficiente para completar um banco de memória em um 486, e 2 módulos necessários para completar os 64 bits exigidos pelo Pentium.

    Finalmente, os módulos DIMM possuem um barramento de 64 bits, sendo necessário apenas um módulo para formar um banco em micros equipados com processadores Pentium ou superiores.

    Dentro de um banco, todos os módulos são acessados ao mesmo tempo, como se fossem um só. Por isso, é necessário que todos os módulos sejam capazes de responder aos chamados do controlador de memória sincronizadamente, como uma orquestra. A mínima falta de sincronia entre os módulos irá causar instabilidade no sistema, que poderá levar a travamentos. Por isso, é altamente recomendável que sejam utilizados sempre módulos idênticos dentro de um mesmo banco (mesma marca, mesma capacidade, mesmo tempo de acesso, etc.), de preferência comprados juntos.

    Geralmente temos numa placa mãe, dois ou três bancos de memória, que são numerados a partir de 0 (banco 0, banco 1, banco 2, etc.). Não existe problema em usar módulos de memória diferentes em bancos diferentes. Você pode até mesmo misturar módulos de diferentes velocidades, de 70 e 60 nanos, por exemplo, desde que configure os tempos de espera no Setup para a velocidade do módulo mais lento.

    Uma curiosidade é que algumas placas mãe para Pentium, podem trabalhar com apenas um módulo de 72 vias. Neste caso, a placa engana o processador, fazendo dois acessos de 32 bits consecutivos, e entregando os dados de uma só vez para o processador. Apesar de funcionar, este esquema reduz bastante a velocidade do micro, pois a velocidade de acesso à memória fica reduzida à metade.

    Página 01 de 03
        



    Blog:

    Add to Google

    » Gostou do texto? Veja nossos livros impressos:
    Hardware | Redes | Servidores | Kurumin 7

    ... ou encontre o que procura usando a busca:

cb
Livros de Carlos E. Morimoto HOME