Atenção

Blog em construção... Se tiver sugestões, serão bem vindas !!!

domingo, 10 de outubro de 2010

A memória viva (RAM ou memória PC)

Tipos de memórias vivas

Distinguem-se geralmente duas grandes categorias de memórias vivas:
  • As memórias dinâmicas (DRAM, Dynamic Random Access Module), pouco dispendiosas. São principalmente utilizadas para a memória central do computador;
  • As memórias estáticas (SRAM, Static Random Access Module), rápidas e caras. As SRAM são utilizadas nomeadamente para as memórias esconderijo do processador;

Funcionamento da memória viva


A memória viva é constituída por centena de milhares de pequenos condensadores que armazenam cargas. Quando está carregado, o estado lógico do condensador é igual a 1, no caso contrário é 0, o que significa que cada condensador representa um bit da memória.
Visto que os condensadores se descarregam, é necessário recarregá-los constantemente (o termo exacto é refrescar, em inglês refresh) a intervalos de tempo regulares chamados ciclo de refresco. As memórias DRAM necessitam, por exemplo, de ciclos de refresco de cerca de 15 nanossegundos (ns).
Cada condensador está acoplado a um transistor (de tipo MOS) que permite “recuperar” ou alterar o estado do condensador. Estes transistores são arranjados sob a forma de quadro (matriz), ou seja, acede-se a um compartimento memória (também chamado ponto memória) por uma linha e uma coluna.
représentation d



Cada ponto memória é por conseguinte caracterizado por um endereço, correspondente a um número de linha (em inglês row) e um número de coluna (em inglês column). Ora, este acesso não é instantâneo e efectua-se durante um prazo chamado tempo de latência. Por conseguinte, o acesso a um dado em memória dura um tempo igual ao tempo de ciclo ao qual é necessário acrescentar o tempo de latência.
Assim, para uma memória de tipo DRAM, o tempo de acesso é de 60 nanossegundos (35ns de prazo de ciclo e 25 NS de tempos de latência). Num computador, o tempo de ciclo corresponde ao contrário da frequência do relógio, por exemplo para um computador cadenciado a 200 MHz, o tempo de ciclo é de 5 NS (1 (200*106)).
Por isso, um computador que tem uma frequência elevada e utiliza memórias cujo tempo de acesso é muito mais longo que o tempo de ciclo do processador deve efectuar ciclos de espera (em inglês wait state) para aceder à memória. No caso de um computador cadenciado a 200 MHz que utiliza memórias de tipos DRAM (cujo tempo de acesso é de 60ns), há 11 ciclos de espera para um ciclo de transferência. Os desempenhos do computador são diminuídos na mesma proporção que há ciclos de esperas, por conseguinte é aconselhável utilizar memórias mais rápidas.

Formatos de barras de memória viva

Existem numerosos tipos de memórias vivas. Estas apresentam-se todas sob a forma de barras de memória encaixadas na placa-mãe.
As primeiras memórias apresentavam-se sob a forma de microplaquetas chamadas DIP (Double Inline Package). Doravante, as memórias encontram-se geralmente sob forma de barras, ou seja, cartas encaixadas em conectores previstos para esse efeito. Distinguem-se habitualmente três tipos de barras RAM:
  • as barras em formato SIMM (Individual Inline Memory Module): trata-se de circuitos impressos em que uma das faces possui microplaqueta de memória. Existem dois tipos de barras SIMM, de acordo com o número de conectores:
    • As barras SIMM de 30 conectores (cujas dimensões são 89x13mm) são memórias 8 bits que equipavam as primeiras gerações de PCs (286, 386).

barrette de mémoire SIMM 30 connecteurs



*
    • As barras SIMM de 72 conectores (cujas dimensões são 108x25mm) são memórias capazes de gerir simultaneamente 32 bits de dados. Estas memórias equipam PCs que vão do 386DX ao primeiro Pentium. Nestes últimos, o processador trabalha com um canal de dados de uma amplitude de 64 bits, é a razão pela qual é absolutamente necessário equipar estes computadores com duas barras SIMM. Não é possível instalar barras de 30 pinos em lugares de 72 conectores, na medida em que o encaixe (entalhadura no centro dos conectores) impede o encaixe.

barrette de mémoire SIMM 72 connecteurs
  • As barras no formato DIMM (Double Inline Memory Module) são memórias de 64 bits, o que explica porque não é necessário emparelhá-las. As barras DIMM possuem microplaquetas de memória de um lado e outro do circuito impresso e têm igualmente 84 conectores de cada lado, que as dota de um total de 168 pinos. Além das suas dimensões maiores que as barras SIMM (130x25mm) estas barras possuem um segundo encaixe para evitar a confusão

barrette de mémoire SIMM 72 connecteurs
Pode ser interessante notar que os conectores DIMM foram melhorados a fim de facilitar a sua inserção graças a alavancas situadas de um lado e outro do conector.
Existem, além disso, módulos de mais pequena dimensão, chamados SO DIMM (Small Outline DIMM), destinados aos computadores portáteis. As barras SO DIMM comportam unicamente 144 pinos para as memórias 64 bits e 77 para as memórias 32 bits.
  • as barras no formato RIMM (Rambus Inline Memory Module, chamados igualmente RD-RAM ou DRD-RAM) são memórias 64 bits desenvolvidas pela empresa Rambus. Possuem 184 pinos. Estas barras possuem duas entalhaduras de determinação (encaixes), evitando qualquer risco de confusão com os módulos precedentes.Tendo em conta a sua velocidade de transferência elevada, as barras RIMM possuem um filme térmico encarregado de melhorar a dissipação do calor.

Como no caso dos DIMM, existem módulos de mais pequena dimensão, chamados SO RIMM (Small Outline RIMM), destinados aos computadores portáteis. As barras SO RIMM comportam unicamente 160 pinos.

DRAM PM

O DRAM (Dynamic RAM, RAM dinâmico) é o tipo de memória mais divulgado no início do milénio. Trata-se de uma memória cujos transístores estão arrumados numa matriz de acordo com linhas e colunas. Um transístor, acoplado a um condensador dá a informação de uma bit. 1 byte que compreende a 8 bits, uma barra de memória DRAM de 256 Mo conterá por conseguinte 256 * 2^10 * 2^10 = 256 * 1024 * 1024 = 268.435.456 bytes = 268.435.456 * 8 = 2.147.483 648 bits = 2.147.483 648 transistor. Uma barra de 256 Mo possui assim, na realidade, uma capacidade de 268.435.456 bytes, ou seja 268 Mo! São memórias cujo tempo de acesso é de 60 NS.
Por outro lado, o acesso à memória faz-se geralmente sobre dados arrumados consecutivamente em memória. Assim, o modo de acesso em rajada (burst mode) permite aceder aos três dados consecutivos à primeira sem tempo de latência suplementar. Neste modo em rajada, o tempo de acesso ao primeiro dado é igual de tempo de ciclo ao qual é necessário acrescentar o tempo de latência, e o tempo de acesso aos três outros dados é unicamente igual aos tempos de ciclo, nota-se por conseguinte sob a forma x-x-y-y-y-y-X-Y-Y Y os quatro tempos de acesso, por exemplo a notação 5-3-3-3 indica uma memória pela qual 5 ciclos de relógio são necessários para aceder ao primeiro dado e 3 para as seguintes.

DRAM FPM

Para acelerar os acessos ao DRAM, existe uma técnica chamada paginação que consiste em aceder a dados situados numa mesma coluna, alterando unicamente o endereço da linha, o que permite evitar a repetição do número de coluna entre a leitura de cada uma das linhas. Fala-se então de DRAM FPM (Fast Page Mode). O FPM permite obter tempos de acesso de aproximadamente 70 a 80 nanossegundos para uma frequência de funcionamento que pode ir de 25 a 33 Mhz.

DRAM EDO

O DRAM EDO (Extended Data Out, ou seja Saída dos dados melhorada, às vezes igualmente chamado “hiperpágina”) apareceu em 1995. A técnica utilizada com este tipo de memória consiste em contactar a coluna seguinte durante a leitura dos dados de uma coluna. Isto cria uma sobreposição dos acessos que permite ganhar tempo em cada ciclo. O tempo de acesso à memória EDO é por conseguinte de cerca de 50 a 60 nanossegundos para uma frequência de funcionamento que vai de 33 a 66 Mhz.

Assim, RAM EDO, quando é utilizada em modo rajada, permite obter ciclos da forma 5-2-2-2, ou seja um ganho de 4 ciclos sobre o acesso a 4 dados. Na medida em que a memória EDO não aceita frequências superiores a 66 Mhz, desapareceu em detrimento do SDRAM.

SDRAM

O SDRAM (Synchronous DRAM, ou RAM sincrónico), aparecido em 1997, permite uma leitura dos dados sincronizada com o canal da placa-mãe, contrariamente às memórias EDO e FPM (qualificadas de assíncronas) que possuem o seu próprio relógio. O SDRAM permite por conseguinte livrar-se dos tempos de espera devidos à sincronização com a placa-mãe. Esta permite obter um ciclo em modo rajada da forma 5-1-1-1, ou seja um ganho de 3 ciclos em relação RAM EDO. Desta maneira, o SDRAM é capaz de funcionar com um ritmo que vai até 150 Mhz, que lhe permite obter tempos de acesso de cerca de 10 NS.

DR-SDRAM (Rambus DRAM)

O DR.-SDRAm (Direct Rambus DRAM ou ainda RDRAM) é um tipo de memória que permite transferir os dados sobre um canal de 16 bits de amplitude um ritmo de 800Mhz, que lhe confere uma banda concorrida de 1,6 Go/s. Como o SDRAM, este tipo de memória está simcronizada com o relógio do canal para melhorar as trocas de dados. Por outro lado, a memória RAMBUS é uma tecnologia proprietário, o que significa que qualquer empresa que deseja construir barras RAM de acordo com esta tecnologia deve pagar os direitos (royalties) às empresas RAMBUS e Intel.

DDR-SDRAM

A DDR-SDRAm (Double Data Rate SDRAM) é uma memória baseada na tecnologia SDRAM, permitindo duplicar a taxa de transferência do SDRAM a frequência igual.
A leitura ou a escrita de dados em memória é realizada com base num relógio. As memórias DRAM standard utilizam um método chamado SDR (Single Data rate) que consiste em ler ou escrever um dado em cada frente ascendente.
SDR - Single Data Rate



A DDR permite duplicar a frequência das leituras/escritas, com um relógio cadenciado à mesma frequência, enviando os dados a cada frente ascendente, bem como cada frente descendente.
DDR - Double Data Rate




As memórias RDA possuem geralmente uma denominação comercial do tipo PCXXXX em que “XXXX” representa o débito em Mo/s.

DDR2-SDRAM

A memória DDR2 (ou RDA-Ii) permite atingir débitos duas vezes mais elevados que a RDA de frequência externa igual.
Fala-se de QDR (Quadrúplo Data rate ou quad-pumped) para designar o método de leitura e de escrita utilizada. A memória DDR2 utiliza com efeito dois canais separados para a leitura e para a escrita, de modo que é capaz de enviar ou receber duas vezes mais dados que a RDA.
QDR - Quad Data Rate



O DDR2 possui igualmente um maior número de conectores que a RDA clássica (240 para o DDR2 contra 184 para a RDA).

quadro sumário

O quadro abaixo dá a correspondência entre a frequência da placa-mãe (FSB), a da memória (RAM) e o seu débito:
MemóriaDenominação Frequência (RAM)<th align="center"> Frequência (FSB)</th>Débito
DDR200 PC1600<td align="center"> 200 MHz 100 MHz1,6 Go/s
DDR266 PC2100<td align="center"> 266 MHz 133 MHz2,1 Go/s
DDR333 PC2700<td align="center"> 333 MHz 166 MHz2,7 Go/s
DDR400 PC3200<td align="center"> 400 MHz 200 MHz3,2 Go/s
DDR433 PC3500<td align="center"> 433 MHz 217 MHz3,5 Go/s
DDR466 PC3700<td align="center"> 466 MHz 233 MHz3,7 Go/s
DDR500 PC4000<td align="center"> 500 MHz 250 MHz4 Go/s
DDR533 PC4200<td align="center"> 533 MHz 266 MHz4,2 Go/s
DDR538 PC4300<td align="center"> 538 MHz 269 MHz4,3 Go/s
DDR550 PC4400<td align="center"> 550 MHz 275 MHz4,4 Go/s
DDR2-400 PC2-3200<td align="center"> 400 MHz 100 MHz3,2 Go/s
DDR2-533 PC2-4300<td align="center"> 533 MHz 133 MHz4,3 Go/s
DDR2-667 PC2-5300<td align="center"> 667 MHz 167 MHz5,3 Go/s
DDR2-675 PC2-5400<td align="center"> 675 MHz 172,5 MHz5,4 Go/s
DDR2-800 PC2-6400<td align="center"> 800 MHz 200 MHz6,4 Go/s

Sincronização (timings)

Não é raro ver notações do tipo 3-2-2-2 ou 2-3-3-2 para descrever a parametrização da memória viva. Esta sequência de quatro números descreve a sincronização da memória (em inglês timing), ou seja a sucessão de ciclos de relógio necessários para aceder a um dado armazenado em memória viva. Estes quatro números correspondem geralmente, na ordem, aos valores seguintes:
  • CAS delay ou CAS latency (CAS significa Column Address Strobe): trata-se do número de ciclos de relógio que passam entre o envio do comando de leitura e a chegada efectiva do dado. Noutros termos, trata-se do tempo de acesso a uma coluna.
  • RAS Precharge Time (ou tRP, RAS significa Row Address Strobe): trata-se do número de ciclos de relógio entre duas instruções RAS, ou seja entre dois acessos a uma linha. operação.
  • RAS to CAS delay (notados às vezes tRCD): trata-se do número de ciclos de relógio que correspondem ao tempo de acesso de uma linha a uma coluna.
  • RAS active time(ou tRCD) : trata-se do número de ciclos de relógio que correspondem ao tempo de acesso a uma linha.



As cartas memórias estão equipadas com um dispositivo chamado SPD (Serial Presence Detect), permitindo ao BIOS conhecer os valores nominais de ajustamento definidos pelo fabricante. Trata-se de um EEPROM cujos dados serão carregados pelo BIOS se o utilizador escolher o ajustamento “auto”.

A correcção de erros

Certas memórias possuem mecanismos que permitem paliar os erros a fim de garantir a integridade dos dados que contêm. Este tipo de memória é utilizado geralmente em sistemas que trabalham sobre dados críticos, é a razão pela qual se encontra este tipo de memória nos servidores.

Bit de paridade

As barras com bit de paridade permitem garantirque os dados contidos na memória são efectivamente os que deseja. Para o efeito, uma das bits de cada byte armazenado em memória serve para conservar a soma das bits de dados.
A bit de paridade vale 1 quando a soma das bits de dados é ímpar e 0 no caso contrário.
Desta maneira, as barras com bit de paridade permitem verificar a integridade dos dados mas não permitem corrigir os erros. Além disso, para 9 Mo de memória, apenas 8 servirão para armazenar dados, na medida em que a última megabyte conservará as bits de paridade.

Barras ECC

As barretes de memória ECC (Error Correction Coding) são memórias que possuem várias bits dedicadas à correcção de erro (chamam-se assim bits de controlo). Estas barras, utilizadas principalmente nos servidores, permitem detectar os erros e corrigi-los.

Dual Channel

Certos controladores de memória propõem um duplo canal (em inglês Dual Chanel) para a memória. Trata-se de explorar os módulos de memória por par a fim de acumular a banda concorrida e assim explorar ao máximo as capacidades do sistema. É essencial, aquando da utilização do Duplo Chanel, utilizar barras idênticas por par (frequência, capacidade e de preferência da mesma marca).

Nenhum comentário:

Postar um comentário