La durée de vie de la mémoire flash

Une des remarques que l’on voit le plus dès que l’on parle de la mémoire flashPuce de mémoire qui à la différence de la mémoire vive (DRAM) a la particularité de conserver les données en permanence après leur écriture, même en c..., c’est sa durée de vie. Nous allons expliquer la raison de cette durée de vie limitée, et pourquoi ce n’est pas véritablement un problème actuellement.

Pourquoi la durée de vie est-elle limitée ?

Il y a deux raisons à la durée de vie limitée de la mémoire flash. La première vient de l’oxyde utilisé pour séparer les grilles. Comme nous l’avons vu, les électrons doivent traverser cet oxyde pour passer dans la grille flottante ou en sortir. De temps, il peut arriver que des électrons restent captifs de cet oxyde, et soient relâchés plus tard, ce qui peut perturber les écritures et la lecture.

La deuxième vient de la structure de la grille flottante elle-même : avec le temps, les tensions élevées peuvent l’endommager, ce qui à terme va la rendre inutilisable. On considère généralement qu’une cellule de mémoire SLC peut subir environ 100 000 écritures avant destruction, et que la mémoire MLCMulti-Level Cell. Technologie qui permet d’obtenir des puces de mémoire flash NAND de capacité élevée. Dans une puce mémoire classique (Single-Level C... est moins endurante : environ 10 000 écritures.

Comment remédier au problème ?

La majorité des dispositifs utilisant de la mémoire flash disposent d’un contrôleur interne, qui va gérer les accès à la mémoire. Il est utilisé pour les transferts de données, mais aussi pour vérifier que le dispositif fonctionne bien. La puissance nécessaire peut être importante, et Samsung utilise par exemple un processeurLe CPU, encore appelé processeur, est l’acronmye de « Central processing unit », en anglais. Ont pourrait traduire ce terme par unité centra... de type ARMArchitecture de processeurs très utilisés dans les ordinateurs de poche, smartphones et appareils embarqués. ARM (Advanced Risc Machine) est une archi... pour cet usage.

SSD Samsung : le CPU ARM

Ce contrôleur vérifie automatiquement les écritures en relisant la dernière donnée écrite. S’il lui est impossible de la relire, le bloc complet est déterminé comme défectueux et l’écriture est relancée sur un autre bloc. Donc sauf si la mémoire flash est entièrement utilisée ou défectueuse, les données seront écrites sur le support.

La deuxième vérification s’effectue aussi durant l’écriture, avec la correction d’erreur ECCError Correcting Code. Type de barrette mémoire particulièrement fiable destiné à des applications critiques comme les serveurs. La mémoire ECC est un.... Toutes les puces de mémoire flash disposent de bits de contrôle, qui servent à la vérification des données écrites. En général, le contrôle ECC permet de corriger les erreurs de 1 bit et de détecter les erreurs sur 2 bits. Dans ce deuxième cas, le bloc est indiqué comme défectueux et l’écriture relancée sur un autre bloc.

SSD : schéma d'une écriture

Une petite explication sur le fonctionnement. On dispose de 3 octets d’ECC par bloc de 512 octets (donc 24 bits). À chaque écriture, le code ECC est calculé et écrit dans la zone inutilisée des blocs de données. Pendant la relecture, le code ECC des données est calculé et comparé au code ECC de départ (celui calculé à l’écriture). Si les deux codes sont identiques, le travail continue. Le premier cas intervient s’il y a une erreur sur 1 bit, à ce moment-là c’est corrigé et l’écriture continue. Enfin, il se peut qu’il y ait une erreur de 2 bits, ou une erreur dans le code ECC lui-même. Ces deux cas spécifiques ne sont pas corrigibles, et l’écriture est relancée sur un autre bloc.


Annonces Google
Commentaires

turlupin en ptard 18/05/2007 09:14
Masquer
-0+
turlupin en ptard
Clair et complet. J'aimerais avoir une paire de mains supplémentaires pour applaudir plus fort !

[:mavie] :bounce:

edit : pourquoi le nom de l'auteur n'est-il pas le même sur l'article et sur le forum ? :??:

re-edit : laisse béton, j'ai pigé. :sarcastic: [:patch] [:av68]
CinPoU 18/05/2007 09:42
Masquer
-0+
CinPoU
Je suis d'accord pour preter les miennes!!
Un article de référence en la matière.
Merci!
christophe_d13 18/05/2007 10:10
Masquer
-0+
christophe_d13
2 choses :
- Les disques durs écrivent eux aussi par bloc, mais ils sont tout petit (512 octets)
- Dommage qu'il n'est pas été possible de faire un test en RAID5 par exemple avec 4 disques 32Go (total de 96Go). Mais en extrapolant, on peut précalculer un débit de 150Mo/s.

A noter : Un système RAID utilise également des blocs assez gros, en moyenne 32Ko, mais souvent poussés à 128Ko selon les usages.
Dandu 18/05/2007 10:30
Masquer
-0+
Dandu
Pour le RAID, c'est assez compliqué à mettre en oeuvre (contrôleur RAID ATA, trouver des SSD, tout ça).

Mais en RAID0 avec de la flash, on double bien les perfs.
GoO 18/05/2007 11:20
Masquer
-0+
GoO
Tres bon article, néanmoins je "sature" sur une explication ^^

Djlauby a écrit :

L’effet Fowler-Nordheim implique qu’une partie des électrons qui passent entre les électrodes va se déplacer vers la grille flottante, à travers l’oxyde. Une fois la grille saturée avec des électrons, elle devient isolante et est considérée comme un 0 binaire.




Je ne comprend pas l'histoire de la grille saturée :pt1cable: , la grille n'est pas l'étage de commande dans un transistor ? si c'est bien le cas c'est entre le drain et la source que c'est saturé. de plus le terme saturé signifie que c'est équivalent à un fil, et non une resistance infinie ( comme un isolant ), je suis perdu :??: :??: :pt1cable:
Si quelqu'un peut m'eclairer svp :)

Edit : Voila a quoi je pensai : ( fonctionnement d'un transistor de type mos )

boub popsyteam 18/05/2007 12:35
Masquer
-0+
boub popsyteam
Le test est sponsorisé par Dell (au vu des configs ...) ??
Dandu 18/05/2007 12:43
Masquer
-0+
Dandu
GoO : la grille flotante a une limite en électron "stocké". Donc si on a le maximum d'électron dans la grille, on ne peut plus en faire passer entre la grille de contrôle et la source, vu que la grille flottante est "pleine"

boubpopsyteam : non, pas spécialement, c'est juste que c'est les deux machines que j'avais pour le test et qui convenaient
David Civera 18/05/2007 14:03
Masquer
-0+
David Civera
Bravo l'ami... très beau travail :jap:
GoO 19/05/2007 11:20
Masquer
-0+
GoO
ah oui d'accord, en faite on ne parlait pas de la meme chose, c'est pour ca que je n'avais pas compris :)

oui lorsque c'est saturé : entre la grille et la source c'est isolant, et entre le drain et la source c'est un fil ( enfin 0.2v pour les MOS )

d'ailleur heuresement que c'est isolant, car s'il y avait du courant qui passait, les transistors consommeraient bcp plus ^^

PS : vive PPC qui me fait reviser mon bac électronique :D ^^
Dandu 19/05/2007 12:48
Masquer
-0+
Dandu
t'imagine pas le mal que j'ai eu à capter correctement comment ça marche plus ou moins.

surtout que j'ai pas fait de bac électro, juste quelques cours à la con.

David : Merci.
Caabale 01/06/2007 14:07
Masquer
-0+
Caabale
a écrit :

Tres bon article, néanmoins je "sature" sur une explication ^^



Je ne comprend pas l'histoire de la grille saturée :pt1cable: , la grille n'est pas l'étage de commande dans un transistor ? si c'est bien le cas c'est entre le drain et la source que c'est saturé. de plus le terme saturé signifie que c'est équivalent à un fil, et non une resistance infinie ( comme un isolant ), je suis perdu :??: :??: :pt1cable:
Si quelqu'un peut m'eclairer svp :)

Edit : Voila a quoi je pensai : ( fonctionnement d'un transistor de type mos )

http://img225.imageshack.us/img225/531/15869jo8.jpg




En fait, il y a deux grilles : une grille "de commande", celle qu'on connait, et une grille "flottante", situe juste en dessous, et qui n'est relie a rien, et qui va faire comme un condensateur avec la grille de commande. En etat "normal", tu n'as qu'un cote connecte, sur ce condensateur (cote grille de commande), donc la charge ne varie pas. En etat d'ecriture, les fortes tensions vont creer un effet tunnel du cote grille flottante, qui va charger ou decharger ce condensateur. A la lecture, la tension que tu applique sur la grille va etre modifiee par la tension au bornes du condensateur : decharge, on applique la tension telle quelle, le transistor est passant, chargee, la tension est trop faible, le transistor n'est pas passant.


2 remarques :
- MTBF = Mean Time Before Failure, pas between
- Le 8Go consomme 170mA contre 200mA pour le 32Go, les resultats sont donc moins bons pour le 8Go, en terme de mA/Go. Ce qui parait d'ailleurs assez logique.
Mictateur 01/06/2007 16:30
Masquer
-0+
Mictateur
a écrit :

- MTBF = Mean Time Before Failure, pas between



Ca doit être une erreur très courante, parce qu'en IUT, on m'a appris avec le 'between', ce qui a beaucoup moins de sens qu'avec le 'before'. :)
turlupin en ptard 01/06/2007 16:38
Masquer
-0+
turlupin en ptard
a écrit :

- Le 8Go consomme 170mA contre 200mA pour le 32Go, les resultats sont donc moins bons pour le 8Go, en terme de mA/Go. Ce qui parait d'ailleurs assez logique.



Il y a toujours une électronique de commande dont la consommation ne doit pas beaucoup varier selon la capacité.
christophe_d13 04/06/2007 09:56
Masquer
-0+
christophe_d13
a écrit :

Ca doit être une erreur très courante, parce qu'en IUT, on m'a appris avec le 'between', ce qui a beaucoup moins de sens qu'avec le 'before'. :)



ça a toujours été between et pas before. l'utilisation de before est un abus de language, mais c'est pour mieux comprendre le sens de MTBF.
Caabale 05/06/2007 19:49
Masquer
-0+
Caabale
a écrit :

Il y a toujours une électronique de commande dont la consommation ne doit pas beaucoup varier selon la capacité.




Peut-être, mais ça n'empêche que si tu veux faire 32Go avec les disques 8Go, tu vas consommer 680mA au lieu de 200...

athon99 a écrit :

ça a toujours été between et pas before. l'utilisation de before est un abus de language, mais c'est pour mieux comprendre le sens de MTBF.




Ah ouais :??: C'est marrant, j'ai toujours entendu "before". Enfin, ça a pas non plus énormément d'importance...
zeb 04/04/2008 13:39
Masquer
-0+
Profil Supprimé 27/05/2008 16:46
Masquer
-0+
super article, un point non evoqué lors de l article il me semble est la solidité de ce type de produit par rapport à un disque dur classique

en cas de chute ca casse bien moins facilement
Profil Supprimé 27/05/2008 17:49
Masquer
-0+
BRAVO remarquable article !

tomazzi5959, tu trouveras page 6, c'est à dire dans la page consacrée à la mémoire Samsung, le paragraphe qui parle de résistance aux chocs et aussi du fonctionnement à des températures extrêmes :

Une petite particularité des SSD qui pourra intéresser certains (...) là où un disque dur se contente de 5° à 55°.

Bon, c'est certain que le paragraphe en question aurait pu être situé dans les pages généralistes (1 à 5) sur la mémoire flash.

Kingkeos 28/05/2008 18:33
Masquer
-0+
Kingkeos
Il est à noter qu'un montage avec une compact flash bien choisie (8Go haut de gamme, 266x, transcend ou Adata) et un adaptateur pour le brancher en PATA (5?) est aussi performant que le ssd transcend.. c'est un tel matériel qui équipe mon pc depuis presque 1 an, et ça m'a couté moins de 100? à l'époque!
Izak44 04/06/2008 10:50
Masquer
-0+
Izak44
Chapeau l'artiste.... Mais j'ai un problème j'arrive pas à trouver comment est organisé les blocs et la relation entre blocs de mémoire flash.
fredtonton225 07/06/2008 18:33
Masquer
-0+
fredtonton225
pour Kingkeos ou tu as trouvé le matos et ou le brancher sur les ports de la carte mére merçi du tuyaux

A savoir Vous allez poster en tant qu'utilisateur anonyme.



Annonces Google