Je ne trouve aucune information fiable à ce sujet. Je n'ai pas toutes les spécifications du matériel de la carte SD / MMC.
Est-ce vrai? Mon application de haut niveau n'a pas besoin de se préoccuper du nivellement de l'usure lorsque je travaille avec ces cartes?
MODIFIER
Quelqu'un pourrait-il confirmer que le nivellement par l' usure est garanti par la spécification SD? Je veux en être sûr, car il semble que la plupart des fournisseurs le fassent, mais cela n'est pas requis par la spécification.
Réponses:
Je travaille pour une société qui était membre de l'association SD, nous connaissons les spécifications 2.0 (SDHC). La spécification de la carte SD n'a AUCUNE entrée pour le nivellement d'usure. Cela dépend entièrement du fabricant SD pour gérer cela s’ils le souhaitent. Nous avons vu que certains le font probablement, alors que d'autres pas (méfiez-vous des cartes SD imbriquées à très bon marché). SDXC a peut-être changé cela pour inclure le nivellement d'usure, mais je n'en suis pas certain. Malheureusement, la seule façon de vraiment montrer cela est de mettre la main sur les spécifications officielles. Vous pouvez le trouver en ligne très probablement, mais l’association SD souhaite vraiment que vous payiez pour cela.
En passant, prendre une carte de 2 Go et l’écrire en commençant à la fin revient en moyenne à environ 10 To avant que la carte ne soit morte et qu’elle ne puisse plus écrire. De plus, les cartes SD ne vous préviendront pas lorsque les données sont mauvaises, c’est-à-dire qu’elles ne renverront pas d’erreur I / O comme le ferait un disque dur PC. Ce n'est peut-être pas un problème pour les conceptions intégrées, car 10 To représente beaucoup de données, mais cela pourrait être un facteur pour quelqu'un.
la source
C'est vrai! Les cartes MicroSD contiennent une puce flash NAND liée à un microcontrôleur (ARM) encapsulé dans du plastique noir. http://www.bunniestudios.com/blog/?p=898 explique.
À la fin du post de suivi http://www.bunniestudios.com/blog/?p=918, Bunnie affirme que l'intégration du contrôleur coûte probablement moins que de tester le flash à l'avance.
Citant le manuel produit de la carte SD de SanDisk: "1.9. Nivellement de l'usure. Le nivellement de l'usure fait partie intégrante de la fonctionnalité de regroupement d'effacements de la carte SD, qui utilise la mémoire NAND." Vous pouvez lire le tout dans la fiche technique d'une carte de marque SanDisk .
la source
Oui, les cartes SD / MMC ont des contrôleurs qui nivellent l’usure. S'ils ne le faisaient pas, vous pourriez en détruire un en quelques minutes avec de mauvais modèles d'écriture.
C'est en fait un problème pour certains projets intégrés. Il n’ya absolument aucun moyen (apparemment) de savoir quels secteurs sont susceptibles d’être nivelés à tout moment, donc un cycle d’alimentation au mauvais moment peut détruire les données n’importe où sur la carte, où que vous pensiez. (ne demandez pas comment je sais :))
Les cartes SD doivent être utilisées avec un système garantissant un arrêt complet du système (ou au moins, que l'écriture est autorisée à se terminer), sans quoi une perte de données en résulterait (éventuellement).
MODIFIER
Le problème est que le processus de nivellement d'usure est entièrement caché. N'IMPORTE QUEL secteur sur le disque peut être déplacé à tout moment (échangé avec la page écrite), et en cas de panne de courant au milieu de ce processus, ce secteur aléatoire pourrait être corrompu.
Bien qu'il existe des moyens raisonnablement sûrs d'implémenter ce mouvement, il ne figure dans aucune spécification et vous ne pouvez donc pas vous assurer que la carte le fera. Vous pouvez tester une carte, le faire fonctionner, puis le fabricant peut modifier la mise en oeuvre sans changer le numéro de pièce et vous êtes foutu.
Lors des tests, le contrôleur de ma carte SD ne le fait PAS du tout de manière sûre.
Je peux regarder dans une carte SD "haute fiabilité" que j'ai vu annoncée spécifiquement pour la tolérance de panne de courant ... mais alors vous devez faire confiance au fabricant pour le faire correctement, et je ne le fais pas. Je veux vraiment un contrôle direct sur les pages effacées. J'essaie encore de comprendre celui-ci.
la source
N'importe quel type de carte SD utilisant n'importe quel type de mémoire flash NAND conventionnelle va devoir utiliser un type de virtualisation de secteur, car aucun périphérique flash NAND conventionnel ne peut prendre en charge l'effacement de secteurs individuels de 512 octets et aucun périphérique flash NAND conventionnel de taille significative. serait capable d’obtenir des performances proches de l’ordre de grandeur si chaque tentative d’écriture d’un secteur obligeait le périphérique à copier tous les secteurs du bloc d’effacement de ce secteur (même en RAM), puis d’effacer le bloc et d’écrire tous les secteurs en arrière. La plupart des techniques de virtualisation de secteur impliquent en quelque sorte un nivellement par l'usure. Je m'attendrais à ce que le plus gros problème de variance entre les appareils de qualité et les imitations soit le degré auquel un appareil essaie activement de niveler la mise à niveau entre les blocs, par rapport à l'utilisation simplement d'allocation de blocs pseudo-aléatoire et à l'espoir d'obtenir des résultats acceptables, proches de l'uniformité. En pratique, je m'attendrais à ce que même une allocation aléatoire / espoir-pour-le-meilleur convienne dans la plupart des cas.
la source
Sandisk a un livre blanc qui explique la logique de mise à niveau des cartes dans ses cartes, puis donne une estimation de la durée de vie de la carte selon plusieurs scénarios. Résumé: à moins que vous ne marteliez la carte sans arrêt, elle durera des décennies.
la source
Il est intéressant de noter que malgré cela, de nombreux périphériques corrompent les cartes SD et microSD, notamment celles à haute densité, si la batterie est faible ou si le téléphone se bloque / s’éteint / etc. Je soupçonne que le problème est une régulation inadéquate de l’alimentation en tension, car il est bien connu sur certaines cartes (toux Ad t / toux) d’entraîner le phénomène d’une carte illisible sur certains lecteurs externes mais fonctionne bien sur la micro-variété fournie par certains magasins d'informatique.
Je suis en train de récupérer une carte en ce moment avec cette erreur. Étrangement, la plupart des données sont récupérables, mais certains secteurs ne le sont pas, même si cela change à chaque tentative. L'usure de nivellement elle-même pourrait-elle être en cause? (oui essayé plusieurs lecteurs, même faute!)
la source
Également eu un certain succès "nuking" cartes de zombies, à savoir ceux qui ne compléteront pas un format ou sont en lecture seule. Ne fonctionne que sur un petit pourcentage mais ils sont beaucoup plus sensibles que la plupart des directives "officielles" à cet effet.
Une carte de test ainsi traitée a duré quatre mois complets avant d’échouer de nouveau. Sans l’appareil utilisé pour fournir une tension bruyante, sa durée de vie aurait peut-être été plus longue.
la source