Алгоритъм за изравняване на износването на NAND флаш
Aug 27, 2022
Тъй като броят на операциите за запис на флаш памет е ограничен, ако 100 000 операции за запис са извършени на някои устройства, надеждността на запис на тези устройства не може да бъде гарантирана и някои устройства може да се повредят. Например, някои системни регистрационни файлове за данни за управление се пренаписват често, докато някои данни от статични файлове почти никога не се презаписват. Ако не се контролира, някои блокове ще бъдат повредени предварително поради повтарящи се изтривания, а някои блокове не са били презаписани. За да се реши този проблем, операциите за запис се разпределят равномерно във всички клетки на флаш паметта, за да се направи баланс като цяло, за да се избегне повреда на отделни клетки. Изравняването на износването е алгоритъм, който се използва широко за решаване на този проблем.
Изравняването на износването е да осигури механизъм за картографиране на блокове за разпределяне на загубата при запис между различни блокове. Това няма да доведе до първо записване на някои блокове и обезсилване на целия SSD диск. Вместо това някои запазени блокове ще заменят блоковете, които се провалят преди очаквания живот. Този алгоритъм прави живота на цялото устройство същия като максималния живот на светкавицата.
Като цяло алгоритъм за съхранение на файлове, базиран на страница, се използва за реализиране на изравняване на износването. Няма едно към едно съответствие между физическия адрес и логическия адрес на флаш паметта. Когато SSD получи заявка за запис на данни, той няма да пише по ред, а ще намери устройството с най-малко запис. Следователно, когато динамично се разпределят физически блокове за запис на данни, съответните приоритети ще бъдат разпределени според използването на всеки блок, така че да се балансира експлоатационният живот на всяка клетка от цялата памет.







