Comment fonctionnent les écritures en mémoire flash NAND?

14

Vous trouverez ci-dessous une image de ma compréhension du fonctionnement de la mémoire flash NAND.

Le flash NAND fonctionne en effaçant d'abord toutes les cellules dans un seul bloc (en le définissant essentiellement sur «1»), puis en écrivant de manière sélective des 0. Ma question est- Étant donné que la ligne de mots est partagée entre toutes les cellules d'une même page, comment le programmateur du contrôleur NAND a-t-il un 0 dans des cellules spécifiques d'une page?

Pour le flash NOR, il est facile de voir qu'une cellule spécifique peut être programmée en utilisant l'injection d'électrons chauds (application d'une haute tension à travers une cellule). Mais avec NAND, ce n'est pas possible de le faire car les cellules NAND sont en série les unes avec les autres, et il n'est pas possible d'appliquer une haute tension à des cellules spécifiques. Donc, ce qui est fait dans le NAND est un tunnel quantique, où la ligne Word reçoit une haute tension pour écrire un 0. Ce qui n'est pas clair pour moi, c'est comment cette tension peut être rendue sélective (en d'autres termes, puisque les lignes de mots sont partagées entre les cellules dans un page, la haute tension pour programmer un seul bit à 0 ne devrait pas également mettre à 0 les autres bits d'une page).

Organisation de la baie de mémoire NAND

Joel Fernandes
la source

Réponses:

10

L'image ci-dessous est la version plus détaillée de votre organisation de barrettes de mémoire NAND FLash dans la question. La matrice de mémoire flash NAND est partitionnée en blocs qui sont à leur tour subdivisés en pages . Une page est la plus petite granularité de données qui peut être traitée par le contrôleur externe .

Une matrice de mémoire flash NAND - Figure 2.2 de la thèse de maîtrise liée ci-dessous

L'image ci-dessus est la figure 2.2 "Un réseau de mémoire flash NAND" de: Vidyabhushan Mohan . Modélisation des caractéristiques physiques de la mémoire flash NAND . La thèse de master. Université de Virginie, Charlottesville. Mai 2010.

Pour effectuer une opération de programme , c'est-à-dire écrire " 0 " dans les cellules souhaitées, le contrôleur de mémoire externe doit déterminer l'adresse physique de la page à programmer. Pour chaque opération d'écriture, une page valide gratuite doit être choisie car le flash NAND n'autorise pas l'opération de mise à jour sur place. Le contrôleur transmet ensuite la commande de programme , les données à programmer et l'adresse physique de la page à la puce.

Lorsqu'une demande d'opération de programme arrive du contrôleur, une ligne de la matrice de mémoire ( correspondant à la page demandée ) est sélectionnée et les verrous dans le tampon de page sont chargés avec les données à écrire. Le SST est alors activé tandis que le GST est désactivé par l'unité de contrôle. Pour qu'un tunnel FN se produise, un champ électrique élevé est nécessaire à travers la grille flottante et le substrat. Ce champ électrique élevé est obtenu en réglant la grille de commande de la ligne sélectionnée sur une tension élevée Vpgm et en polarisant les lignes de bits correspondant au "0" logique à la masse.

Cela crée une différence de potentiel élevée à travers la grille flottante et le substrat, provoquant un tunnel d'électrons du substrat sur la grille flottante. Pour la programmation « 1 » (qui est essentiellement sans programmation), la cellule de mémoire doit rester dans le même état qu'avant l'opération de programme. Alors que différentes techniques sont adoptées pour empêcher la tunnelisation des électrons pour de telles cellules, nous supposons que le programme auto-amplifié inhibe le fonctionnement.

Cette technique fournit la tension d'inhibition de programme nécessaire en entraînant les lignes de bits correspondant à l'état logique « 1 » à Vcc et par rotation sur le protocole SSL et d' éteindre le GSL . Lorsque la ligne de mots de la ligne sélectionnée s'élève à Vpgm , la capacité série à travers la grille de commande, la grille flottante, le canal et le volume est couplée, augmentant automatiquement le potentiel du canal et empêchant la tunnellisation FN.


Ces informations ont été prises et résumées à partir d' ici et plus de détails sur la programmation de la mémoire Flash NAND peuvent également être trouvés à partir de cette source.

gbudan
la source
Merci d'avoir résumé la thèse que vous avez mentionnée. Pourriez-vous expliquer un peu plus en termes plus simples comment les cellules qui doivent être laissées à «1» ne sont pas affectées par le tunneling qui se produit sur la ligne de mots partagée? D'après ce que j'ai compris dans l'extrait que vous avez publié, tous les bits qui ont la même ligne de mots partagée sont également affectés de la même tension aux bits correspondants. Pour cette raison, le champ électrique à travers la grille flottante pour de tels transistors est suffisamment faible pour que leur valeur soit maintenue à «1». Aussi, pourquoi GSL est-il désactivé, comment GSL aide-t-il?
Fondamentalement, en termes simples, la présence ou l'absence de charges à l'intérieur du FGT provoque un décalage du seuil V du FGT qui est utilisé pour distinguer un "1" logique d'un "0" logique. Un seul FGT n'est jamais programmé seul. Seul un groupe de FGT est programmé à la fois; ce groupe de FGT correspond à une page dans ce cas, et cela explique pourquoi la NAND est adressée par bloc plutôt que par bit. J'espère que c'est clair.
gbudan
Vous dites "en activant le SSL" mais il n'y a rien sur le schéma appelé SSL. De plus, votre "ici pour plus de détails" est un lien mort.
Steev
@Steev - Merci d'avoir souligné que les liens d'origine étaient morts. J'ai trouvé un lien de travail vers la thèse qui a été utilisée comme base de cette réponse et mis à jour les liens ci-dessus. Voir ici pour la page de l'auteur de la thèse, qui comprend cette thèse.
SamGibson