Le SPD : Configuration des modules de mémoires | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
By The Mad | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Le SPD
III ) Le Contenu Bon, c'est bien interresant de pouvoir modifier les octets
contenus dans le SPD, mais encore faut-il savoir lesquels modifier et
coment les modifier... et c'est la qu'arrive la longue liste ci-dessous
qui recapitule TOUT les octets un par un, leurs significations et la
facon de les modifier... Avouez que c'est du boulot :)
1) Cet octet représente le nombre total d'octet que le constructeur de la barette a écrit dans l'EEPROM du SPD lors de sa construction. Cette valeur est bien entendu en hexadécimal. La valeur standard dans ce cas est generalement 80h donc 128 octet 2) Cet octet represente la taille de l'EEPROM qui constitue le SPD. cette EEPROM est toujours de type 24C02 donc sa capacité est de 2048 bits ( 256 ko ). la valeur qui se trouve ici doit etre 08h ( 01h = 2 octets, 02h = 4 octets, 03h = 8 octets.....0Dh = 8192 octets) 3) Cet octet descrit le type de mémoire utilisé.
4) Bon, la franchement, ces parametres sont dépendants de l'organisation interne des modules de DRAM mais si vous voulez en savoir plus, lisez les datasheets parceque ce n'est vraiment pas facile a expliquer et de toute facon, ce parametre ne doit surtout pas etre modifié 5) Cet octet décrit le nombre de banque physique de la barette de RAM ( le nombre de banque logique se trouve a l'octet 17 ). En gros, si votre barette est simple face, cet octet est a 01h, si c'est de la double face, il est a 02h 6) Cet octet décrit la taille du bus de donnée de la mémoire, la taille du bus est quasiment toujours de 64 bits (40h), les valeurs 48h ( 72 bits ) ou 50h ( 80 bits ) peuvent etre utilisée en cas de mémoires ECC ou avec parité. 7) Cet octet represente le type de tension utilisé
par le module suivant la table suivante :
8) Cet octet décrit le temps d'accés d'un cycle au plus haut CAS Latency ( Ex : si la mémoire supporte la CAS 2 et le CAS 3, c'est le temps d'acces d'un cycle en CAS 3). La conversion est assez simple : pour A0h pour 10ns, 75h pour 7.5 ns ou 70h pour 70ns. Bien entendu, plus elle est faible, plus la mémoire est rapide 9) en anglais : "SDRAM Access time from Clock ( t AC )". Dependant du parametre ci-dessus, plus il est faible, plus la mémoire est rapide 10) Type de controle d'erreur utilisé par le module : 00h pour aucun, 01h pour Parité et 02h pour ECC 11) Cet octet indique la frequence de rafraichissement de la RAM ainsi que le type du rafraichissement ( Auto rafraichissement ou pas ). Voir le tableau ci dessous pour les valeurs :
12) Cet octet represente le nombre de bits utilisé pour la gestion du controle d'erreur, si celui-ci est present 13) Cet octet defini le "Minimum Clock Delay for Back-to-Back Random Column Access", parametre absolument intraduisible en francais, en gros, il est toujours au minimum, c'est a dire 1... 14) Cet octet défini le type de "burst lenght" pour la mémoire. ce pamaretres etant toujours sur sa valeur maximale, c'est a dire Burst lenght suportés = 1,2,3,4,8,page. 15)hehehe, la ca devient tres interessant, cet octet defini les CAS latency supporté par la barettes de RAM. l'octet etant composé de 8 bits, chaque bit défini si oui ou non, le CAS en question est supporté :
Notes : une valeur de 06h ( 00000110 ) signifie que CAS 3 et CAS
2 sont supportés 16 ) ces deux octets, positionné a 01h par defaut, c'est a dire latency = 0 peuvent etre augmentés pour stabiliser la mémoire. Néanmoins, ils provoqueront dans ce cas, une baisse de la rapidité de la RAM 17)Ces octets definis les parametres d'exploitation du module de mémire.
Ce parametre est surtout interessant pour les personnes qui ont de la RAM "Registered". En effet, les RAM "Registered" et "Buffered" sont exactement les memes modules, mais exploités differemment ( voir l'article sur la RAM pour plus de precision ). On peut donc, grace a ce parametre, transformer une RAM "Registered" en RAM "Buffered" qui est 5 à 10% plus rapide.. 18) Cet octet contient des bits de configuration general sur le support de differents parametres par le module :
La valeur standard est 0Eh ( 00001110 ) donc Tolerances a 10% et support du Wrte/Read Burst, de l'Auto-Precharge et du Precharge All, mais pas du Early RAS Precharge qui permet une augmentation des performances : Pour l'activer, il faudrait passer cette valeur a 0Fh ( 00001111 ) 19)Ces 4 octets sont identiques aux octets 9 et 10, mais ils correpondent aux autres CAS : je m'explique : Si une mémoire supporte le CAS 2 et le CAS 3, les parametres d'acces pour le CAS 2 se situe sur les octets 23 et 24 alors que ceux pour le CAS 3 se situent sur l'octet 9 et 10. Les octets 25 et 26 ne sont pratiquement jamais utilisé, uniquement si la mémoire supporte 3 CAS differents ( CAS 1, CAS 2 et CAS 3 par exemple ) 20)quatres octets qui definissent differents des temps de reponse de la RAM, ils sont codés en hexadecimal et ils ont generalement pour valeur 14h (20 ns) , 0Fh (15 ns) et 14h (20ns). Pour le dernier, il prends la valeur 32h (50 ns) pour de la PC100 et 2Dh ( 45ns ) pour de la PC133. Pour plus d'info, consultez les Datasheets 21)Cet octet defini la taille d'une banque de mémoire : Exemple, si vous avez une barette de 128 Mo Simple-Face, il n'y a qu'une banque de 128 Mo. La valeur sera donc 20h (00100000). Si vous avez une barette de 128 Mo Double-face. Il y a deux banques de 64 Mo. La valeur devra donc etre 10h (00010000).
22) Et encore des parametres qui influe sur les temps d'acces de la RAM...j'ai regroupé dans le tableau ci-dessous les valeurs standard pour de la PC100 et de la PC133
23)Cet octet represente la version du SPD, on est actuellement a la version 1.2 donc 12h 24)Bon, la ca devient complexe :) le
SPD inclus un checksum afin d'empecher les petits malins de modifiers
les données qu'il contient. mais j'ai reussi a denicher l'algorithme
du cheksum que j'explique ci-dessous :
25)Cette valeur est une norme definie par Intel, elle est de 66h pour de la PC66, 64h pour de la PC100 et 85h pour de la PC133 (parfois 64h comme la PC100 pour les premieres barettes PC133 ) 26)Ce parametre, inclu par Intel, defini le CAS du module : 06h pour CAS 2 et 04h pour CAS 3. IV ) Datasheets Vous trouverez ici des datasheets detaillés sur le SPD, en anglais bien sur, mais qui peuvent vous apporter des precisions consernant cette article ainsi que des explications supplementaires :
|