Què és el bloc Nand Flash i Bad?
Oct 25, 2022
1 NAND FLASH
1.1 Introducció de la memòria NAND FLASH
NAND FLASH Memory, memòria flash de nom xinès. Rep el seu nom per la seva ràpida velocitat d'esborrat.
NAND FLASH va ser inventat pel Sr. Fujio Masuoka del grup Toshiba del Japó. A diferència d'altres dispositius d'emmagatzematge, les línies de dades NAND FLASH i les línies d'adreces es multiplexen i les línies d'adreces no es poden utilitzar per a l'adreçament aleatori. Per tant, NAND FLASH utilitza les pàgines de la pàgina com a unitat de lectura (generalment una única pàgina és de 2K bytes) i els blocs com a unitat d'esborrat. (En general, un sol bloc té 128 KB o 256 KB). Després d'enviar una ordre d'esborrar, NAND FLASH esborra tots els blocs a 1 alhora i tot el contingut es converteix en 0xFF. Com que el temps d'esborrat és molt curt, és tan ràpid com un llamp. Així que anomenem aquesta memòria memòria FLASH.
1.2 Mecanisme d'implementació de maquinari de NAND FLASH
La unitat bàsica de NAND FLASH és un MOSFET amb una porta flotant.
Les dades s'emmagatzemen en forma de càrrega elèctrica a les cèl·lules de memòria flash. La quantitat de càrrega emmagatzemada depèn de la tensió aplicada a la porta externa. La representació de les dades es representa per si la tensió de la càrrega emmagatzemada supera un llindar específic Vth, i si la càrrega emmagatzemada és suficient i supera el llindar Vth, representa 1. Per escriure 0, és per descarregar i la càrrega es redueix a menys de Vth, que significa 0.
2 Bloc dolent
2.1 Definició de bloc dolent
Com que el procés de NAND Flash no pot garantir la fiabilitat del rendiment de la matriu de memòria NAND durant el seu cicle de vida, es produiran blocs dolents durant la producció i l'ús de NAND. Les característiques dels blocs defectuosos són: en programar/esborrar aquest bloc, alguns bits no es poden tirar alt, la qual cosa provocarà errors en les operacions de programa de pàgina i d'esborrat de blocs.
2.2 Classificació dels blocs dolents: bloc dolent FBB de fàbrica i bloc dolent GBB utilitzat
(1) FBB: Factory Bad Block, el bloc dolent de fàbrica, el bloc dolent que acaba de sortir de la fàbrica, s'anomena Bloc dolent emmascarat o bloc inicial dolent/no vàlid. Quan NAND Flash surti de la fàbrica, hi haurà una certa quantitat de blocs dolents a causa del procés de fabricació. Al mateix temps, la fàbrica original provarà el NAND FLASH abans de sortir de la fàbrica, i els blocs utilitzats per a la prova també poden ser marcats com a blocs dolents per la fàbrica original.
Abans de sortir de la fàbrica, la fàbrica original marcarà els blocs dolents. La marca específica és que per al flaix NAND comú amb una mida de pàgina de 2K, per al flaix NAND, la marca de bloc dolent es troba generalment a la primera pàgina de cada bloc. El primer byte de l'àrea de recanvi de la pàgina. Concretament, podeu consultar el full de dades de diferents productes. Si no és 0xFF, vol dir que és un bloc dolent. En conseqüència, tots els blocs normals, els bons i totes les dades que contenen són 0xFF.
(2) GBB: Grown Bad Block, utilitzant blocs dolents. Durant l'ús de NAND Flash, com que la vida útil d'esborrat i d'escriptura de NAND Flash és limitada (generalment no més d'100,000 vegades), també es produiran blocs defectuosos després d'un determinat període d'ús. . Si es troba un error d'esborrat de bloc o de programa de pàgina, el bloc es pot marcar com a bloc incorrecte. Per tal de ser coherent amb la informació de bloc incorrecta inherent, el primer byte (byte) de l'àrea de recanvi també es marcarà amb altres valors diferents de 0xFF.
2.3 Taula de blocs dolents:
El primer bloc d'un flaix ha de ser bo quan surti de fàbrica, en cas contrari vol dir que no es pot utilitzar tot el flaix. Perquè, generalment, el primer bloc s'utilitzarà per desar la taula de blocs dolents (BBT, Bad Block Table). A causa del mecanisme de funcionament de la mala gestió de blocs (Bad Block Management) al controlador NAND Flash sota l'arquitectura MTD del nucli Linux i al controlador NAND Flash d'UBOOT, després de carregar el controlador, si no afegiu paràmetres, demaneu activament saltar-lo. l'escaneig de blocs dolents. Si és així, buscarà activament els blocs dolents i establirà el BBT necessari per a una gestió posterior de blocs dolents.
2.4 Nombre i ubicació dels blocs defectuosos
La fàbrica NAND FLASH original tindrà un estàndard per al nombre i la ubicació dels blocs defectuosos. La fàbrica original en general promet que el nombre de blocs dolents no supera el 2 per cent, però la ubicació dels blocs dolents no està garantida (però el primer bloc ha de ser bo quan surti de la fàbrica, perquè el primer s'utilitzarà per botiga BTT). Per exemple, un xip NAND té 2048 blocs, 2048*0.02=40,96, de manera que el nombre de blocs dolents no superarà els 40. Però on apareixen els blocs dolents, tant si són continus. o aleatòria, no hi ha cap garantia.
2.5 L'impacte dels blocs dolents sobre els blocs bons
Un bloc dolent no afecta el rendiment dels blocs bons perquè està aïllat de les línies de bits per portes seleccionades)
2.6 Detecció de blocs defectuosos
Es realitza una operació d'"esborrat" en aquests blocs marcats com a "blocs dolents". Si es produeix l'error d'esborrat de blocs, demostra que el bloc és un bloc realment dolent.
2.7 Notes sobre l'operació d'esborrat
De fet, també podem esborrar els blocs defectuosos marcats. Després d'esborrar-se per la força d'aquesta manera, la informació del bloc dolent ja no existeix. Per als blocs de fàbrica incorrectes, generalment no es recomana esborrar la informació marcada.
Hi ha una ordre a UBOOT anomenada "nand scrub", que esborra tot el contingut del bloc, inclosa la marca de bloc dolent, tant si es tracta de la fàbrica com de la nova marca que apareix en el procés d'ús posterior. En general, no es recomana utilitzar-lo. Quan es produeix la fàbrica NAND FLASH, els blocs defectuosos NAND es posen a prova i es marquen en un rang de temperatura i tensió relativament ampli. Aquests blocs dolents encara poden funcionar sota una determinada temperatura o tensió, però es poden canviar en un altre moment quan canviïn les condicions. fracàs, convertint-se en una potencial bomba de rellotgeria. Si s'esborren els blocs defectuosos marcats per la fàbrica original, és fàcil trobar-se amb el problema de la pèrdua de dades en escriure i desar dades.
És millor utilitzar "nand erase" per esborrar només blocs bons, per als blocs ja marcats blocs dolents, no esborreu.
3 Mala gestió de blocs
El controlador del dispositiu o FLASH gestionarà els blocs dolents, que és BBM (Bad Block Management). Això ho afegirem més endavant.
Observació
1 Per què un bon bloc està marcat amb 0xff: com que l'esborrat de Nand Flash és canviar tots els bits del bloc corresponent a 1, durant l'operació d'escriptura, cada bit del xip només es pot canviar d'1 a 0, però no. Canvieu de 0 a 1. 0XFF significa que es poden esborrar tot a 11111111. Indica que es pot esborrar correctament i és un bon bloc.
———————————————
Declaració de drets d'autor: aquest article és un article original del blogger de CSDN "Alexander{{0}}Lai" i segueix l'acord de drets d'autor CC 4.0 BY-SA. Si us plau, adjunteu l'enllaç de la font original i aquesta declaració per a la reimpressió.







