básicamente porque usam estruturas diferentes.. as DDR e DDR2 até têm um slot diferente.. por isso nem as podes usar nas mesmas boards.. depois viriam coisas como a voltagem.. e a propria arquitectura
é como o skt940 e AM2 da AMD.. ambos têm 940 pinos.. mas os CPUs são diferentes..
DDR2:
DDR
DDR3
como vez os encaixes variam.. e isto não é só uma limitação fisica como mesmo no seu funcionamento
Depois a voltagem.. enquanto a DDR1 funcionava por exemplo com 2.5V as DDR2 funcionam a 1.8/2.0, e as DDR3 consomem menos energia usando apenas 1.5v
Em consequencia disto os tipos de memorias mais recentes são mais frescos.
Depois o facto de terem um buffer, a memoria intermedia onde são guardados os dados.. é maior e mais rápido..
Porém um grande inconveniente entre elas é que a versão a seguir surge sempre com latencias superiores á mesma velocidade
uma DDR2 a 800Mhz tende a ser mais rápida que uma DDR3 a 800Mhz porque a CAS Latency é superior nas DDR3, como enunciado aqui:
mas o porque de elas não poderem ser usadas entre boards com suporte de memoria diferente, ou seja usares DDR2 numa board DDR1, está quase sempre ligado a factores de limitação do chipset..
Apesar de DDR1, DDR2 e DDR3 usarem voltagens e buffers diferentes.. quem os controla acabam por ser os chipsets.. e Chipsets hybridos são a unica solução para usar vários tipos de memoria.. apesar que nao podem ser usados ao mesmo tempo.
No caso da AMD o controlador está mesmo no CPU por isso é este que determina a RAM que é compativel com este