Você está na página 1de 14

Memrias RAM e ROM

Introduo
No que se refere ao hardware dos computadores, entendemos como memria os dispositivos que armazenam os dados com os quais o processador trabalha. H, essencialmente, duas categorias de memrias: ROM (Read-Only Memory), que permite apenas a leitura dos dados e no perde informao na ausncia de energia; e RAM (Random-Access Memory), que permite ao processador tanto a leitura quanto a gravao de dados e perde informao quando no h alimentao eltrica. Neste artigo, o InfoWester apresenta os principais tipos de memrias ROM e RAM, assim como mostra as caractersticas mais importantes desses dispositivos, como frequncia, latncia, encapsulamento, tecnologia, entre outros.

Memria ROM
As memrias ROM (Read-Only Memory - Memria Somente de Leitura) recebem esse nome porque os dados so gravados nelas apenas uma vez. Depois disso, essas informaes no podem ser apagadas ou alteradas, apenas lidas pelo computador, exceto por meio de procedimentos especiais. Outra caracterstica das memrias ROM que elas so do tipo no volteis, isto , os dados gravados no so perdidos na ausncia de energia eltrica ao dispositivo. Eis os principais tipos de memria ROM: - PROM (Programmable Read-Only Memory): esse um dos primeiros tipos de memria ROM. A gravao de dados neste tipo realizada por meio de aparelhos que trabalham atravs de uma reao fsica com elementos eltricos. Uma vez que isso ocorre, os dados gravados na memria PROM no podem ser apagados ou alterados; - EPROM (Erasable Programmable Read-Only Memory): as memrias EPROM tm como principal caracterstica a capacidade de permitir que dados sejam regravados no dispositivo. Isso feito com o auxlio de um componente que emite luz ultravioleta. Nesse processo, os dados gravados precisam ser apagados por completo. Somente depois disso que uma nova gravao pode ser feita; - EEPROM (Electrically-Erasable Programmable Read-Only Memory): este tipo de memria ROM tambm permite a regravao de dados, no entanto, ao contrrio do que acontece com as memrias EPROM, os processos para apagar e gravar dados so feitos eletricamente, fazendo com que no seja necessrio mover o dispositivo de seu lugar para um aparelho especial para que a regravao ocorra; - EAROM (Electrically-Alterable Programmable Read-Only Memory): as memrias EAROM podem ser vistas como um tipo de EEPROM. Sua principal caracterstica o fato de que os dados gravados podem ser alterados aos poucos, razo pela qual esse tipo geralmente utilizado em aplicaes que exigem apenas reescrita parcial de informaes;

- Flash: as memrias Flash tambm podem ser vistas como um tipo de EEPROM, no entanto, o processo de gravao (e regravao) muito mais rpido. Alm disso, memrias Flash so mais durveis e podem guardar um volume elevado de dados. possvel saber mais sobre esse tipo de memria no artigo Cartes de memria Flash, publicado aqui no InfoWester; - CD-ROM, DVD-ROM e afins: essa uma categoria de discos pticos onde os dados so gravados apenas uma vez, seja de fbrica, como os CDs de msicas, ou com dados prprios do usurio, quando o prprio efetua a gravao. H tambm uma categoria que pode ser comparada ao tipo EEPROM, pois permite a regravao de dados: CD-RW e DVD-RW e afins.

Memria RAM
As memrias RAM (Random-Access Memory - Memria de Acesso Aleatrio) constituem uma das partes mais importantes dos computadores, pois so nelas que o processador armazena os dados com os quais est lidando. Esse tipo de memria tem um processo de gravao de dados extremamente rpido, se comparado aos vrios tipos de memria ROM. No entanto, as informaes gravadas se perdem quando no h mais energia eltrica, isto , quando o computador desligado, sendo, portanto, um tipo de memria voltil. H dois tipos de tecnologia de memria RAM que so muitos utilizados: esttico e dinmico, isto , SRAM e DRAM, respectivamente. H tambm um tipo mais recente chamado de MRAM. Eis uma breve explicao de cada tipo: - SRAM (Static Random-Access Memory - RAM Esttica): esse tipo muito mais rpido que as memrias DRAM, porm armazena menos dados e possui preo elevado se considerarmos o custo por megabyte. Memrias SRAM costumam ser utilizadas como cache (saiba mais sobre cache neste artigo sobre processadores); - DRAM (Dynamic Random-Access Memory - RAM Dinmica): memrias desse tipo possuem capacidade alta, isto , podem comportar grandes quantidades de dados. No entanto, o acesso a essas informaes costuma ser mais lento que o acesso s memrias estticas. Esse tipo tambm costuma ter preo bem menor quando comparado ao tipo esttico; - MRAM (Magnetoresistive Random-Access Memory - RAM Magneto-resistiva): a memria MRAM vem sendo estudada h tempos, mas somente nos ltimos anos que as primeiras unidades surgiram. Trata-se de um tipo de memria at certo ponto semelhante DRAM, mas que utiliza clulas magnticas. Graas a isso, essas memrias consomem menor quantidade de energia, so mais rpidas e armazenam dados por um longo tempo, mesmo na ausncia de energia eltrica. O problema das memrias MRAM que elas armazenam pouca quantidade de dados e so muito caras, portanto, pouco provavelmente sero adotadas em larga escala.

Aspectos do funcionamento das memrias RAM


As memrias DRAM so formadas por chips que contm uma quantidade elevadssima de capacitores e transistores. Basicamente, um capacitor e um transistor, juntos, formam uma clula de memria. O primeiro tem a funo de armazenar corrente eltrica por um certo tempo, enquanto que o segundo controla a passagem dessa corrente. Se o capacitor estiver armazenamento corrente, tem-se um bit 1. Se no estiver, tem-se um bit 0. O problema que a informao mantida por um curto de perodo de tempo e, para que no haja perda de dados da memria, um componente do controlador de memria responsvel pela funo de refresh (ou refrescamento), que consiste em regravar o contedo da clula de tempos em tempos. Note que esse processo realizado milhares de vezes por segundo. O refresh uma soluo, porm acompanhada de "feitos colaterais": esse processo aumenta o consumo de energia e, por consequncia, aumenta o calor gerado. Alm disso, a velocidade de acesso memria acaba sendo reduzida. A memria SRAM, por sua vez, bastante diferente da DRAM e o principal motivo para isso o fato de que utiliza seis transistores (ou quatro transistores e dois resistores) para formar uma clula de memria. Na verdade, dois transistores ficam responsveis pela tarefa de controle, enquanto que os demais ficam responsveis pelo armazenamento eltrico, isto , pela formao do bit. A vantagem desse esquema que o refresh acaba no sendo necessrio, fazendo com que a memria SRAM seja mais rpida e consuma menos energia. Por outro lado, como sua fabricao mais complexa e requer mais componentes, o seu custo acaba sendo extremamente elevado, encarecendo por demais a construo de um computador baseado somente nesse tipo. por isso que sua utilizao mais comum como cache, pois para isso so necessrias pequenas quantidades de memria. Como as memrias DRAM so mais comuns, eles sero o foco deste texto a partir deste ponto.

CAS e RAS
O processador armazena na memria RAM as informaes com os quais trabalha, portanto, a todo momento, operaes de gravao, eliminao e acesso aos dados so realizadas. Esse trabalho todo possvel graas ao trabalho de um circuito j citado chamado controlador de memria. Para facilitar a realizao dessas operaes, as clulas de memria so organizadas em uma espcie de matriz, ou seja, so orientadas em um esquema que lembra linhas e colunas. O cruzamento de uma certa linha (tambm chamada de wordline), com uma determinada coluna (tambm chamada de bitline) forma o que conhecemos como endereo de memria. Assim, para acessar o endereo de uma posio na memria, o

controlador obtm o seu valor de coluna, ou seja, o valor RAS (Row Address Strobe) e o seu valor de linha, ou seja, o valor CAS (Column Address Strobe).

Temporizao e latncia das memrias


Os parmetros de temporizao e latncia indicam quanto tempo o controlador de memria gasta com as operaes de leitura e escrita. Em geral, quanto menor esse valores, mais rpidas so as operaes. Para que voc possa entender, tomemos como exemplo um mdulo de memria que informa os seguintes valores em relao latncia: 5-4-4-15-1T. Esse valor est escrito nesta forma: tCL-tRCD-tRP-tRAS-CR. Vejamos o que cada um desses parmetros significa: - tCL (CAS Latency): quando uma operao de leitura de memria iniciada, sinais so acionados para ativar as linhas (RAS) e as colunas (RAS) correspondentes, determinar se a operao de leitura ou escrita (CS - Chip Select) e assim por diante. O parmetro CAS Latency indica, em ciclos de clock (saiba mais sobre clock nesta matria sobre processadores), qual o perodo que h entre o envio do sinal CAS e a disponibilizao dos respectivos dados. Em outras palavras, o intervalo existente entre a requisio de um dado pelo processador e a entrega deste pela memria. Assim, no caso do nosso exemplo, esse valor de 5 ciclos de clock; - tRCD (RAS to CAS Delay): esse parmetro indica, tambm em ciclos de clock, o intervalo que h entre a ativao da linha e da coluna de um determinado dado. No exemplo acima, esse valor corresponde a 4; - tRP (RAS Precharge): intervalo em clocks que informa o tempo gasto entre desativar o acesso a uma linha e ativar o acesso a outra. Em nosso exemplo, esse valor de 4 ciclos;

- tRAS (Active to Precharge Delay): esse parmetro indica o intervalo, tambm em clocks, necessrio entre um comando de ativar linha e a prxima ao do mesmo tipo. Em nosso exemplo, esse valor de 15 ciclos de clock; - CR (Command Rate): intervalo que h entre a ativao do sinal CS e qualquer outro comando. Em geral, esse valor de 1 ou 2 ciclos de clock e acompanhado da letra T. No nosso exemplo esse valor de 1 ciclo. Esses parmetros costumam ser informados pelo fabricante em um etiqueta colada ao pente de memria (muitas vezes, o valor de CMD no informado). Quando isso no ocorre, possvel obter essa informao atravs de softwares especficos (como o gratuito CPU-Z, para Windows, mostrado abaixo) ou mesmo pelo setup do BIOS.

CPU-Z exibindo dados sobre memria Os parmetros de temporizao fornecem uma boa noo do tempo de acesso das memrias. Note que, quando falamos disso, nos referimos ao tempo que a memria leva para fornecer os dados requisitados. O que no foi dito acima que esse tempo medido em nanossegundos (ns), isto , 1 segundo dividido por 1.000.000.000. Assim, para se ter uma noo de qual a frequncia mxima utilizada pela memria, basta dividir 1000 pelo seu tempo de acesso em nanossegundos (essa informao pode constar em uma etiqueta no mdulo ou pode ser informada atravs de softwares especiais). Por exemplo: se um pente de memria trabalha com 15 ns, sua frequncia de 66 MHz, pois 1000/15=66.

Outros parmetros
Algumas placas-me atuais ou direcionadas ao pblico que faz overclock (em poucas palavras, prtica onde dispositivos de hardware so ajustados para que trabalhem alm das especificaes de fbrica) ou, ainda, softwares que detalham as caractersticas do hardware do computador, costumam informar outros parmetros, alm dos mencionados acima. Geralmente, estes parmetros adicionais so informados da seguinte forma: tRCtRFC-tRRD-tWR-tWTR-tRTP (por exemplo: 22-51-3-6-3-3), tambm considerando ciclos de clock. Vejamos o que cada um significa: - tRC (Row Cycle): consiste no tempo necessrio para que se complete um ciclo de acesso a uma linha da memria; - tRFC (Row Refresh Cycle): consiste no tempo necessrio para a execuo dos ciclos de refresh da memria; - tRRD (Row To Row Delay): semelhante ao tRP, mas considera o tempo que o controlador necesita esperar aps uma nova linha ter sido ativada; - tWR (Write Recovery): informa o tempo necessrio para que o controlador de memria comece a efetuar uma operao de escrita aps realizar uma operao do mesmo tipo; - tWTR (Write to Read Delay): consiste no tempo necessrio para que o controlador de memria comece a executar operaes de leitura aps efetuar uma operao de escrita; - tRTP (Read to Precharge Delay): indica o tempo necessrio entre uma operao de leitura efetuada e ativao do prximo sinal.

Voltagem
Em comparao com outros itens de um computador, as memrias so um dos componentes que menos consomem energia. O interessante que esse consumo diminuiu com a evoluo da tecnologia. Por exemplo, mdulos de memria DDR2 (tecnologia que ainda ser abordada neste texto), em geral, exigem entre 1,8 V e 2,5 V. possvel encontrar pentes de memria DDR3 (padro que tambm ser abordado neste artigo) cuja exigncia de 1,5 V. Mdulos de memria antigos exigiam cerca de 5 V. Algumas pessoas com bastante conhecimento no assunto fazem overclock nas memrias aumentando sua voltagem. Com esse ajuste, quando dentro de certos limites, possvel obter nveis maiores de clock.

SPD (Serial Presence Detect)

O SPD um pequeno chip (geralmente do tipo EEPROM) inserido nos mdulos de memria que contm diversas informaes sobre as especificaes do dispositivo, como tipo (DDR, DDR2, etc), voltagem, temporizao/latncia, fabricante, nmero de srie, etc.

Chip SPD Muitas placas-me contam com um setup de BIOS que permite uma srie de ajustes de configurao. Nesses casos, um usurio experimente pode definir os parmetros da memria, no entanto, quem no quiser ter esse trabalho, pode manter a configurao padro. Algumas vezes, essa configurao indicada por algo relacionado ao SPD, como mostra a imagem abaixo:

Exemplo de ajuste de memria em setup de BIOS baseado em SPD

Deteco de erros
Alguns mecanismos foram desenvolvidos para ajudar na deteco de erros da memria, falhas essas que podem ter vrias causas. Esses recursos so especialmente teis em aplicaes de alta confiabilidade, como servidores de misso crtica, por exemplo. Um desses mecanismos a paridade, capaz apenas de ajudar a detectar erros, mas no de corrig-los. Nesse esquema, um bit adicionado a cada byte de memria (lembre-se: 1 byte corresponde a 8 bits). Esse bit assume o valor 1 se a quantidade de bits 1 do byte for par e assume o valor 0 (zero) se a referida quantidade por mpar (o contrrio tambm pode acontecer: 1 para mpar e 0 para par). Quando a leitura de dados for feita, um circuito verificar se a paridade corresponde quantidade de bits 1 (ou 0) do byte. Se for diferente, um erro foi detectado. A paridade, no entanto, pode no ser to precisa, pois um erro em dois bits, por exemplo, pode fazer com que o bit de paridade corresponda quantidade par ou mpar de bits 1 do byte. Assim, para aplicaes que exigem alta preciso dos dados, pode-se contar com memrias que tenham ECC (Error Checking and Correction), um mecanismo mais complexo capaz de detectar e corrigir erros de bits.

Tipos de encapsulamento de memria


O encapsulamento correspondente ao artefato que d forma fsica aos chips de memria. Eis uma breve descrio dos tipos de encapsulamento mais utilizados pela indstria: - DIP (Dual In-line Package): um dos primeiros tipos de encapsulamento usados em memrias, sendo especialmente popular nas pocas dos computadores XT e 286. Como possui terminais de contato - "perninhas" - de grande espessura, seu encaixe ou mesmo sua colagem atravs de solda em placas pode ser feita facilmente de forma manual;

Encapsulamento DIP - Imagem por Wikipedia - SOJ (Small Outline J-Lead): esse encapsulamento recebe este nome porque seus terminais de contato lembram a letra 'J'. Foi bastante utilizado em mdulos SIMM

(vistos mais frente) e sua forma de fixao em placas feita atravs de solda, no requerendo furos na superfcie do dispositivo;

Encapsulamento SOJ - TSOP (Thin Small Outline Package): tipo de encapsulamento cuja espessura bastante reduzida em relao aos padres citados anteriormente (cerca de 1/3 menor que o SOJ). Por conta disso, seus terminais de contato so menores, alm de mais finos, diminuindo a incidncia de interferncia na comunicao. um tipo aplicado em mdulos de memria SDRAM e DDR (que sero abordados adiante). H uma variao desse encapsulamento chamado STSOP (Shrink Thin Small Outline Package) que ainda mais fino;

Encapsulamento TSOP - CSP (Chip Scale Package): mais recente, o encapsulamento CSP se destaca por ser "fino" e por no utilizar pinos de contato que lembram as tradicionais "perninhas". Ao

invs disso, utiliza um tipo de encaixe chamado BGA (Ball Grid Array). Esse tipo utilizado em mdulos como DDR2 e DDR3 (que sero vistos frente).

Encapsulamento CSP

Mdulos de memria
Entendemos como mdulo ou, ainda, pente, uma pequena placa onde so instalados os encapsulamentos de memria. Essa placa encaixada na placa-me por meio de encaixes (slots) especficos para isso. Eis uma breve descrio dos tipos mais comuns de mdulos: - SIPP (Single In-Line Pins Package): um dos primeiros tipos de mdulos que chegaram ao mercado. formato por chips com encapsulamento DIP. Em geral, esses mdulos eram soldados na placa-me; - SIMM (Single In-Line Memory Module): mdulos deste tipo no eram soldados, mas encaixados na placa-me. A primeira verso continha 30 terminais de contato (SIMM de 30 vias) e era formada por um conjunto de 8 chips (ou 9, para paridade). Com isso, podiam transferir um byte por ciclo de clock. Posteriormente surgiu uma verso com 72 pinos (SIMM de 72 vias), portanto, maior e capaz de transferir 32 bits por vez. Mdulos SIMM de 30 vias podiam ser encontrados com capacidades que iam de 1 MB a 16 MB. Mdulos SIMM de 72 vias, por sua vez, eram comumente encontrados com capacidades que iam de 4 MB a 64 MB; - DIMM (Double In-Line Memory Module): os mdulos DIMM levam esse nome por terem terminais de contatos em ambos os lados do pente. So capazes de transmitir 64 bits por vez. A primeira verso - aplicada em memria SDR SDRAM - tinha 168 pinos. Em seguida, foram lanados mdulos de 184 vias, utilizados em memrias DDR, e mdulos de 240 vias, utilizados em mdulos DDR2 e DDR3. Existe um padro DIMM

de tamanho reduzido chamado SODIMM (Small Outline DIMM), que so utilizados principalmente em computadores portteis, como notebooks; - RIMM (Rambus In-Line Memory Module): formado por 168 vias, esse mdulo utilizado pelas memrias Rambus, que sero abordadas ainda neste artigo. Um fato curioso que para cada pente de memria Rambus instalado no computador necessrio instalar um mdulo "vazio", de 184 vias, chamado de C-RIMM (ContinuityRIMM).

Mdulo de memria inserido em um slot

Tecnologias de memrias
Vrias tecnologias de memrias foram (e so) criadas com o passar do tempo. graas a isso que, periodicamente, encontramos memrias mais rpidas, com maior capacidade e at memrias que exigem cada vez menos energia. Eis uma breve descrio dos principais tipos de memria RAM: - FPM (Fast-Page Mode): uma das primeiras tecnologias de memria RAM. Com o FPM, a primeira leitura da memria tem um tempo de acesso maior que as leituras seguintes. Isso porque so feitos, na verdade, quatro operaes de leitura seguidas, ao invs de apenas uma, em um esquema do tipo x-y-y-y, por exemplo: 3-2-2-2 ou 6-3-3-3. A primeira leitura acaba sendo mais demorada, mas as trs seguintes so mais rpidas. Isso porque o controlador de memria trabalha apenas uma vez com o endereo de uma linha (RAS) e, em seguida, trabalha com uma sequncia de quatro colunas (CAS), ao invs de trabalhar com um sinal de RAS e um de CAS para cada bit. Memrias FPM utilizavam mdulos SIMM, tanto de 30 quanto de 72 vias; - EDO (Extended Data Output): a sucessora da tecnologia FPM a EDO, que possui como destaque a capacidade de permitir que um endereo da memria seja acessado ao

mesmo tempo em que uma solicitao anterior ainda est em andamento. Esse tipo foi aplicado principalmente em mdulos SIMM, mas tambm chegou a ser encontrado em mdulos DIMM de 168 vias. Houve tambm uma tecnologia semelhante, chamada BEDO (Burst EDO), que trabalhava mais rapidamente por ter tempo de acesso menor, mas quase no foi utilizada, pois tinha custo maior por ser de propriedade da empresa Micron. Alm disso, foi "ofuscada" pela chegada da tecnologia SDRAM;

Mdulo de memria EDO - SDRAM (Synchronous Dynamic Random Access Memory): as memrias FPM e EDO so assncronas, o que significa que no trabalham de forma sincronizada com o processador. O problema que, com processadores cada vez mais rpidos, isso comeou a se tornar um problema, pois muitas vezes o processador tinha que esperar demais para ter acesso aos dados da memria. As memrias SDRAM, por sua vez, trabalham de forma sincronizada com o processador, evitando os problemas de atraso. A partir dessa tecnologia, passou-se a considerar a frequncia com a qual a memria trabalha para medida de velocidade. Surgiam ento as memrias SDR SDRAM (Single Data Rate SDRAM), que podiam trabalhar com 66 MHz, 100 MHz e 133 MHz (tambm chamadas de PC66, PC100 e PC133, respectivamente). Muitas pessoas se referem a essa memria apenas como "memrias SDRAM" ou, ainda, como "memrias DIMM", por causa de seu mdulo. No entanto, a denominao SDR a mais adequada;

Mdulo de memria SDR SDRAM Observe que neste tipo h duas divises entre os terminais de contato - DDR SDRAM (Double Data Rate SDRAM): as memrias DDR apresentam evoluo significativa em relao ao padro SDR, isso porque elas so capazes de lidar com o dobro de dados em cada ciclo de clock (memrias SDR trabalham apenas com uma operao por ciclo). Assim, uma memria DDR que trabalha frequncia de 100 MHz, por exemplo, acaba dobrando seu desempenho, como se trabalhasse taxa de 200 MHz. Visualmente, possvel identific-las facilmente em relao aos mdulos SDR, porque este ltimo contm duas divises na parte inferior, onde esto seus contatos, enquanto que as memrias DDR2 possuem apenas uma diviso. Voc pode saber mais sobre essa tecnologia na matria Memria DDR, publicada aqui no InfoWester;

- DDR2 SDRAM: como o nome indica, as memrias DDR2 so uma evoluo das memrias DDR. Sua principal caracterstica a capacidade de trabalhar com quatro operaes por ciclo de clock, portanto, o dobro do padro anterior. Os mdulos DDR2 tambm contam com apenas uma diviso em sua parte inferior, no entanto, essa abertura um pouco mais deslocada para o lado. Saiba mais sobre essa tecnologia na matria Memria DDR2, disponibilizada aqui no InfoWester;

Memria DDR2 acima e DDR abaixo Note que a posio da diviso entre os terminais de contato diferente - DDR3 SDRAM: as memrias DDR3 so, obviamente, uma evoluo das memrias DDR2. Novamente, aqui dobra-se a quantidade de operaes por ciclo de clock, desta vez, de oito. Uma novidade aqui a possibilidade de uso de Triple-Channel. Saiba mais sobre esse tipo neste artigo sobre DDR3; - Rambus (Rambus DRAM): as memrias Rambus recebem esse nome por serem uma criao da empresa Rambus Inc. e chegaram ao mercado com o apoio da Intel. Elas so diferentes do padro SDRAM, pois trabalham apenas com 16 bits por vez. Em compensao, memrias Rambus trabalham com frequncia de 400 MHz e com duas operaes por ciclo de clock. Tinham como desvantagens, no entanto, taxas de latncia muito altas, aquecimento elevado e maior custo. Memrias Rambus nunca tiveram grande aceitao no mercado, mas tambm no foram um total fiasco: foram utilizadas, por exemplo, no console de jogos Nintendo 64. Curiosamente, as memrias Rambus trabalham em pares com "mdulos vazios" ou "pentes cegos". Isso significa que, para cada mdulo Rambus instalado, um "mdulo vazio" tem que ser instalado em outro slot. Essa tecnologia acabou perdendo espao para as memrias DDR.

Finalizando
Com o passar do tempo, a evoluo das tecnologias de memrias no somente as torna mais rpidas, mas tambm faz com que passem a contar com maior capacidade de armazenamento de dados. Memrias ROM do tipo Flash, por exemplo, podem armazenar vrios gigabytes. No que se refere s memrias RAM, o mesmo ocorre. Por conta disso, a pergunta natural : quanto utilizar? A resposta depende de uma srie de

fatores, no entanto, a indstria no para de trabalhar para aumentar ainda mais a velocidade e a capacidade desses dispositivos. Portanto, no se espante: quando menos voc esperar, vai ouvir falar de uma nova tecnologia de memria que poder se tornar um novo padro de mercado :) Escrito por Emerson Alecrim - Publicado em 08_07_2009 - Atualizado em 18_08_2011