quinta-feira, 13 de setembro de 2012

Como funcionam as memórias Rambus

As memórias Rambus não deixam de ser uma arquitectura bastante interessante, afinal, projectar um módulo de memória capaz de operar a 800 MHz tem os seus méritos.

A grande diferença entre um módulo de memória Rambus e um de memória DDR, e justamente o que permite aos módulos RDRAM atingir frequências de operação altíssimas, é o facto de serem divididos num número muito maior de bancos de memória. Com mais bancos, é possível manter mais bancos transferindo dados ao mesmo tempo, obtendo frequências de operação mais altas.

Isto leva à segunda característica, que é ao mesmo tempo uma vantagem e desvantagem: o facto dos módulos transmitirem apenas 16 de dados bits por ciclo, enquanto os módulos DDR transmitem 64 bits.

Esta limitação surge em decorrência da frequência de operação mais alta. Se cada via de dados realiza mais transferências de dados por segundo, consequentemente também gerará mais ruído eletromagnético, ou seja, gerará mais interferência. Com isto, as vias de dados precisarão ficar mais distantes umas das outras. Já que o espaço num módulo de memória é muito restrito, a única solução foi diminuir o número de vias de dados, de 64 para apenas 16.
Por outro lado, isto pode ser vantajoso do ponto de vista dos fabricantes de placas mãe, pois se os módulos de memória possuem apenas 16 vias de dados, será preciso usar menos trilhas na placa mãe, o que significa custos de desenvolvimento e produção mais baixos. Existe inclusive a possibilidade de aumentar o número de vias, de 16 para 32 e aceder a dois módulos ao mesmo tempo. Com isto a velocidade de acesso à memória duplica.

Cada módulo transmite dados (limite teórico) a 1.6 GB/s, então dois módulos juntos transmitirão pares. Mais dores de cabeça, mais gastos, porém acesso à memória mais rápido. Estes 3.2 GB/s de barramento com a memória são um dos principais motivos para o Pentium 4 ser muito rápido no Quake 3, um jogo que depende muito da velocidade do acesso à memória, mas não ajuda tanto em outras aplicações.

O uso de mais bancos de memória traz um efeito colateral, que é a necessidade de usar um circuito de controle mais complexo, e mais caro. Este circuito de controle é um dos factores que faz os módulos RDRAM serem mais caros, e é o culpado pelos tempos de latência mais altos.

A organização mais complexa e o circuito de controle mais lento, faz com que os acessos demorem muito mais tempo. O primeiro acesso à memória demora muito mais que num módulo DDR, apesar dos seguintes demorarem apenas um ciclo cada.

Isto explica por que um Pentium III instalado numa placa mãe com o chipset i820, que usa memórias Rambus, é mais lento que um Pentium III usando memórias PC-100 comuns em muitas aplicações, ganhando noutras. Apesar de transferir mais dados por ciclo, os módulos RDRAM demoram mais para começar a transferir dados, o que significa mais ciclos de processamento desperdiçados.

Aplicações que realizam vários acessos a memória, transferindo um número pequeno de dados por acesso, acabam apresentando um desempenho inferior do que apresentariam com memórias PC-100 comuns, enquanto aplicações que manipulam grandes quantidades de dados são beneficiadas. É uma faca de dois gumes.
in Manual de Hardware Completo
de Carlos E Marimoto

Sem comentários: