Ir ao conteúdo
  • Cadastre-se

Tudo o que você precisa saber sobre as temporizações das memórias RAM


         752.957 visualizações    Memória    26 comentários
Tudo o que você precisa saber sobre as temporizações das memórias RAM

Introdução

As memórias DDR, DDR2, DDR3 e DDR4 são classificadas de acordo com a velocidade máxima que conseguem operar, bem como suas temporizações. Temporizações são números como 3-4-4-8, 5-5-5-15, 7-7-7-21 ou 9-9-9-24. Quanto menor forem esses números, melhor. Neste tutorial explicaremos a você o significado de cada um desses números.

As memórias construidas com tecnologia DDR (quando falarmos “tecnologia DDR”, aplica-se para todas as suas variações, como DDR4, DDR3, etc.) seguem a seguinte classificação: DDRxxx/PCyyyy. A propósito, se você está interessado em saber a diferença entre as memórias DDR, DDR2, DDR3 e DDR4, não deixe de ler nosso tutorial sobre o assunto.

O primeiro número (xxx) indica o clock máximo que os chips da memória suportam. Por exemplo, as memórias DDR3-1333 podem trabalhar a até 1.333 MHz e as memórias DDR4-2133 podem trabalhar até 2.133 MHz. É importante notar que este não é o clock real das memórias. O clock real das memórias com tecnologia DDR é metade do clock rotulado. Por exemplo, o clock real das memórias DDR3-1333 é 666 MHz, não 1.333 MHz, e o clock real das memórias DDR4-2133 é 1.067 MHz e não 2.133 MHz.

O segundo número (yyyy) indica a taxa de transferência máxima teórica da memória (também conhecida como largura de banda), medida em MB/s. A taxa de transferência de dados das memórias DDR400 é de no máximo 3.200 MB/s, e por isso que elas são rotuladas como PC3200. A taxa de transferência das memórias DDR2-800 é de 6.400 MB/s, e por isso que elas são rotuladas como PC2-6400. Já a taxa de transferência das memórias DDR3-1333 é de 10.664 MB/s, e por isso elas são rotuladas como PC3-10600 ou PC3-10666. E a largura de banda das memórias DDR4-2133 é de 17.064 MB/s e elas são rotuladas como PC4-17000. Como você pode ver, usamos os números “2”, “3” ou “4” após os nomes “DDR” ou “PC” para indicar que estamos falando das memórias DDR2, DDR3 ou DDR4, e não das memórias DDR.

A primeira parte da classificação, DDRxxx, é o padrão usado para classificar os chips de memória, enquanto que a segunda parte, PCyyyy, é usada para classificar os módulos de memórias. Na Figura 1 você pode ver um módulo de memória PC3-10666, que utiliza chips DDR3-1333. Preste atenção nas temporizações (7-7-7-18) e na tensão de alimentação (1,5 V).

Memória DDR3-1333
Figura 1: um módulo de memória DDR3-1333/PC3-10666

A taxa de transferência máxima teórica dos módulos de memórias pode ser calculada através da seguinte fórmula:

Largura de banda = clock x Número de Bits / 8

Como os módulos de memória DIMM transferem 64 bits por vez, o “número de bits” da fórmula é 64. Como 64 / 8 é igual a 8, podemos simplificar esta fórmula para:

Largura de banda = clock x 8

Se você instalar um módulo de memória em um computador onde o seu barramento de memória esteja rodando com um clock inferior, a taxa de transferência que o módulo de memória alcançará será menor do que a sua taxa de transferência máxima teórica. Aliás, este é um erro de interpretação muito comum.

Por exemplo, digamos que você comprou um par de memórias DDR3-2133/PC3-17000. Apesar de elas serem rotuladas como DDR3-2133 isto não significa que elas trabalharão efetivamente a 2.133 MHz em seu computador. Este é o clock máximo suportado pelos chips de memória. Se você instalar essas memórias em um computador comum com suporte para memórias DDR3, pode ser que elas sejam acessadas a 1.333 MHz (DDR3-1333) – que é a velocidade máxima oficial das memórias DDR3 –, obtendo uma taxa de transferência máxima teórica de 10.664 MB/s (ou 21.328 MB/s se elas estiverem trabalhando no modo de dois canais, leia o nosso tutorial sobre o assunto para mais informações). Logo, pode ser que essas memórias não trabalharão a 2.133 MHz e muito menos alcançarão a taxa de transferência de 17.000 MB/s.

Por que alguém compraria esses módulos? Para overclock: como o fabricante garante que esses módulos trabalham a até 2.133 MHz, você sabe de antemão que pode aumentar o clock do barramento de memória para até 1.066 MHz para aumentar o desempenho do seu computador. No entanto, sua placa-mãe deve suportar este tipo de overclock (leia nosso tutorial sobre o assunto para mais informações). Por isso, comprar um módulo de memória com um clock rotulado maior do que o barramento de memória do seu computador suporta é inútil se você não pretende fazer um overclock.

Para a maioria dos usuários, isto é tudo o que temos que saber sobre as memórias DDR, DDR2, DDR3 e DDR4. Para usuários avançados, existe ainda outra característica: a temporização da memória, também chamada latência, que é o assunto principal deste tutorial.

  • Curtir 5
  • Obrigado 1

Artigos similares


Comentários de usuários

Respostas recomendadas



  • Administrador

@Japz não. Ambas terão a mesma velocidade máxima teórica (largura de banda). A com menor latência começará a entregar os dados antes. É mais ou menos como comparar dois carros a 100 km/h, mas um saiu antes do outro. O que saiu antes chegará primeiro, mesmo ambos tendo a mesma velocidade.

  • Curtir 4
Link para o comentário
Compartilhar em outros sites

Meio atrasado para discutir sobre o artigo. hehe
Muito bom as explicações, me tirou algumas dúvidas sobre como funcionam as memórias.
Então pode se dizer que o CL da RAM seria como um IPC do processador? E neste caso, devido a limitação de frequência que pode haver na placa-mãe, que por exemplo limitaria para 1333Mhz, seria melhor um pente de 1333Mhz CL 9 do que um pente 1600Mhz CL 10? E na mesma situação, o segundo pente se tornaria na prática 1333Mhz CL 10?

Link para o comentário
Compartilhar em outros sites

  • Administrador

@Walpurgis Knight Cada módulo de memória tem uma "tabelinha" de frequencias e temporizações. Então uma memória de 1600 MHz e CL10 pode ser que rode a 1333 MHz com CL9. O CL não é fixo para todas as frequências. O CL divulgado é para a frequência rotulada do módulo. Foi isso que o @Japz tentou explicar acima. Espero ter esclarecido.

  • Curtir 4
Link para o comentário
Compartilhar em outros sites

 Olá Gabriel, estou impressionado com a qualidade e a profundidade que você fez este artigo, trabalho com computadores a muitos anos mas esta explicação foi sem dúvida a melhor que já li! Mas tenho uma pergunta, já que você é o portador de um conhecimento vasto em memorias, neste artigo, gostaria de saber o seguinte, temos clocks maiores e timings menores, eu li a muito tempo atrás que deveríamos nos atentar com o aumento do clock e o atraso causado pelos timings da memória, pois pode valer mais a pena ter uma memoria com clock baixo mas timings rapidos. Qual seria uma equação ou uma formula para que eu possa achar o ponto de equilíbrio entre os dois aspectos, se aplicar mesmo este conhecimento!

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

  • Membro VIP
1 hora atrás, ferreguetti disse:

 Olá Gabriel, estou impressionado com a qualidade e a profundidade que você fez este artigo, trabalho com computadores a muitos anos mas esta explicação foi sem dúvida a melhor que já li! Mas tenho uma pergunta, já que você é o portador de um conhecimento vasto em memorias, neste artigo, gostaria de saber o seguinte, temos clocks maiores e timings menores, eu li a muito tempo atrás que deveríamos nos atentar com o aumento do clock e o atraso causado pelos timings da memória, pois pode valer mais a pena ter uma memoria com clock baixo mas timings rapidos. Qual seria uma equação ou uma formula para que eu possa achar o ponto de equilíbrio entre os dois aspectos, se aplicar mesmo este conhecimento!

 

Se me permite a intromissão, a resposta é: depende.

 

Tem arquiteturas e aplicações que se beneficiam de clocks maiores, outros que se beneficiam de latências mais baixas, e outros que não ligam pra isso.

Tem que ver caso a caso..

Por exemplo, programas de compactação e descompactação de arquivos usam as memórias com grande intensidade e avidez, já jogos não costumam ter tanta influencia no desempenho por causa disso.

Link para o comentário
Compartilhar em outros sites

  • Administrador

@ferreguetti Obrigado pelos elogios. O Evandro respondeu aí acima a parte prática da coisa. Expandindo o que o Evandro falou, o Rafael Coelho já fez alguns testes sobre o assunto:

Disto isto, a parte teórica que você pergunta é simples.

 

A latência é medida em pulsos de clock. O período de cada pulso de clock é o inverso da frequência usada, pela fórmula:

 

T = 1/f

 

Assim, basta multiplicar o período pelo número de pulsos de clock (ex: CL=9, multiplicar o valor por nove) para ter o valor do atraso.

 

Agora, respondendo exatamente ao que você pergunta, você poderia pegar este valor do atraso e invertê-lo (f  = 1/T) para obter o clock equivalente, isto é, para ver a que clock o atraso equivale. Seguindo esta linha de pensamento, a memória na verdade, por conta do atraso, teria um desempenho equivalente a uma memória rodando a este clock. Porém esta linha de raciocínio está errada. Pois a latência só existe para o acesso ao primeiro dado da primeira linha da memória (internamente a memória organiza suas células em linhas e colunas). O acesso aos demais dados sequenciais, armazenados na mesma linha, é feito imediatamente, sem latência (ou melhor, latência de apenas um pulso de clock). Então esta coisa de atraso causado pela latência é relativa: só há atraso no acesso ao primeiro dado de uma linha, os demais dados sequenciais na mesma linha são entregues sem atraso.

 

Bem, não sei se consegui explicar, e para um entendimento mais aprofundado recomendo ler o meu livro...  (Ele está esgotado no momento mas será re-editado em maio)

 

Abraços!

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

  • Membro VIP

@Gabriel Torres esse tempo de atraso é o "tempo de resposta" de uma memória?

Porque eu não consigo entender como uma memória dobra o clock e dobra a latência junto (onde ambas fariam as operações no mesmo tempo, no final das contas) e é mais rápida.

Link para o comentário
Compartilhar em outros sites

  • Administrador

@Evandro Isso, latência, atraso, tempo de acesso e tempo de resposta são sinônimos. Como eu expliquei, o tempo de atraso só entra em ação na leitura do primeiro dado da linha, acessos subsequentes não têm atraso, então mesmo aumentando a latência, o aumento de clock acaba sendo mais importante e daí o maior desempenho.

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

  • Membro VIP

Galera, deixa ver se entendi bem isso do timing do CAS. Imagine uma ddr4 3200, com burst de 8, por ser ddr, leva 4 ciclos e um CAS de 10, por exemplo. O clock real é de 1600. Com um CAS de 6,25ns. Então a cada burst eu tenho um acesso de 6,25ns. Com 1600, vou ter 400 leituras de burst, isso multiplicado por 6,25 da 2,5x10^-6s. Então essa memória iria transferir 25600mb em 1,0000025s.

Entendi corretamente? 

Link para o comentário
Compartilhar em outros sites

  • Membro VIP

@Gabriel Torres, mas essa é minha dúvida, um processador pede para ler ou gravar um dado, geralmente de 64 bits ou 8 bytes. A CAS será o tempo que a memória irá iniciar essa leitura ou gravação, porém temos o burst, que tanto na ddr3 como na ddr4 possuem um tamanho de 8, ocupando 4 ciclos. Então, no momento que o processador solicita um dado da memória, para escrita ou gravação, teremos uma latência até o dado ficar disponível e depois um burst de 4 ciclos de clock, por ser DDR. Assim, supondo um cas de 10 ciclos, teríamos 10-1-1-1, em que o primeiro dado de 8 bytes demoraria 10 ciclos e os 3 outros bytes demorariam 1 ciclo cada. Não seria isso? Então onde está a diferença para a taxa de transferência? não entendi bem.

Link para o comentário
Compartilhar em outros sites

  • Administrador

@f. tenorio Já explicado na minha mensagem anterior (post #19). Sua lógica está incorreta. A temporização diz respeito a quando os dados ficarão disponíveis (medida em pulsos de clock) não a taxa de transferência que a memória transferirá esses dados (medida em bytes por segundo).

Link para o comentário
Compartilhar em outros sites

  • Administrador

@f. tenorio Talvez eu tenha interpretado a sua colocação de maneira equivocada, você colocou muitos números ali e devo ter me confundido. Mas é isso, uma memória com um CL de 18 demorará 18 pulsos de clock para entregar o primeiro dado, mas entragará os dados seguintes que estejam armazenados em endereço sequencial dentro de uma mesma linha a apenas 1 pulso a mais. Note que se o segundo dado estiver em outro local da memória (endereço não sequencial e/ou presente em outra linha), o CL voltará a ser 18.

Link para o comentário
Compartilhar em outros sites

  • Membro VIP

aah, então é isso mesmo @Gabriel Torres, como as DDR3 e DDR3 usam um burst (rajada), de 8, ela demorará 18 ciclos para entregar o primeiro dado e mais 4 ciclos para os 8 bits restantes, já que é uma DDR. Obrigado pelos esclarecimentos. Ah! uma sugestão de artigo: Como funcionam as DDR4, pois são complicadas de entender. Uma DDR3 tem uma pré-busca de 8n, já que internamente ela trabalha a 100-266mhz, então essa pré-busca de 8 bits é feita em paralelo e multiplexada (paralelo/serial), quadruplicando a velocidade (por exemplo, internamente a 100mhz, o bus de e/s vai para 400), como é uma DDR3, temos 1 bit na subida e outro na descida do clock, gerando um clock efetivo de 800mhz. Porém, nas DDR4 elas usam o conceito de grupos de bancos, com duas pré-buscas de 8n em paralelo e multiplexando essa saída para um burst de 8 mais rápido. Ai está a complicação em entender seu funcionamento.

Link para o comentário
Compartilhar em outros sites




Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...