Выравнивание износа (также пишется как выравнивание износа ) — это метод [1] продления срока службы некоторых видов стираемых компьютерных носителей информации, таких как флэш-память , которая используется в твердотельных накопителях (SSD) и USB-флеш-накопителях , а также память с изменением фаз . Существует несколько механизмов выравнивания износа, которые обеспечивают различные уровни повышения долговечности в таких системах памяти. [2] [3]
Термин «упреждающее выравнивание износа» (PWL) используется компанией Western Digital для описания своей технологии сохранения, применяемой на жестких дисках (HDD), предназначенных для хранения аудио- и видеоданных. [4] Однако в контексте данной статьи жесткие диски, как правило, не являются устройствами с выравниванием износа.
EEPROM и флэш-память имеют индивидуально стираемые сегменты, каждый из которых может пройти через ограниченное количество циклов стирания, прежде чем станет ненадежным. Обычно это около 3000/5000 циклов [5] [6] , но многие флэш-устройства имеют один блок со специально увеличенным сроком службы 100000+ циклов, который может использоваться контроллером флэш-памяти для отслеживания износа и перемещения данных по сегментам. Стираемые оптические носители , такие как CD-RW и DVD-RW, рассчитаны на 1000 циклов (100000 циклов для носителей DVD-RAM ).
Выравнивание износа пытается обойти эти ограничения, упорядочивая данные таким образом, чтобы стирания и перезаписи были равномерно распределены по всему носителю. Таким образом, ни один блок стирания не выходит из строя преждевременно из-за высокой концентрации циклов записи. [7] Во флэш-памяти один блок на чипе рассчитан на более длительный срок службы, чем другие, чтобы контроллер памяти мог хранить рабочие данные с меньшей вероятностью их повреждения. [3] [8]
Обычные файловые системы, такие как FAT , UFS , HFS / HFS+ , EXT и NTFS, изначально были разработаны для магнитных дисков и, как таковые, перезаписывают многие из своих структур данных (например, их каталоги) многократно в одну и ту же область. Когда эти системы используются на носителях флэш-памяти, это становится проблемой. Проблема усугубляется тем фактом, что некоторые файловые системы отслеживают время последнего доступа, что может привести к постоянной перезаписи метаданных файла на месте. [9]
В устройствах флэш-памяти используются три основных типа механизмов выравнивания износа: [2]
Система хранения флэш-памяти без выравнивания износа не прослужит долго, если данные записываются во флэш-память. Без выравнивания износа базовый контроллер флэш-памяти должен постоянно назначать логические адреса из операционной системы (ОС) физическим адресам флэш-памяти. Это означает, что каждая запись в ранее записанный блок должна быть сначала прочитана, стерта, изменена и перезаписана в то же место. Такой подход требует очень много времени, и часто записываемые места быстро изнашиваются, в то время как другие места вообще не будут использоваться. Как только несколько блоков достигают конца своего срока службы, такое устройство становится неработоспособным. [2]
Первый тип выравнивания износа называется динамическим выравниванием износа , и он использует карту для связывания адресов логических блоков (LBA) из ОС в физическую флэш-память. Каждый раз, когда ОС записывает заменяющие данные, карта обновляется, поэтому исходный физический блок помечается как недействительные данные, и новый блок связывается с этой записью карты. Каждый раз, когда блок данных перезаписывается во флэш-память, он записывается в новое место. Однако блоки флэш-памяти, которые никогда не получают заменяющие данные, не будут подвергаться дополнительному износу, поэтому название происходит только от динамических данных, которые перерабатываются. Такое устройство может прослужить дольше, чем устройство без выравнивания износа, но есть блоки, которые все еще остаются активными, даже если устройство больше не работает. [2] [3]
Другой тип выравнивания износа называется статическим выравниванием износа , которое также использует карту для привязки LBA к физическим адресам памяти. Статическое выравнивание износа работает так же, как и динамическое выравнивание износа, за исключением того, что статические блоки, которые не изменяются, периодически перемещаются, так что эти ячейки с низким использованием могут использоваться другими данными. Этот эффект вращения позволяет SSD продолжать работать до тех пор, пока большинство блоков не приблизятся к концу срока службы. [2] [3]
Как динамическое, так и статическое выравнивание износа реализуется на локальном уровне. Это просто означает, что в многочиповом продукте каждый чип управляется как единый ресурс. Количество дефектных блоков в разных чипах во флэш-памяти NAND различается: у одного чипа все блоки данных могут быть изношены, в то время как у другого чипа в том же устройстве все блоки могут быть все еще активны. Глобальное выравнивание износа решает эту проблему, управляя всеми блоками из всех чипов во флэш-памяти вместе — в одном пуле. Оно гарантирует, что все ячейки во всех чипах в продукте изнашиваются равномерно. [10] [11]
В следующей таблице сравнивается статическое и динамическое выравнивание износа: [3]
Существует несколько методов продления срока службы носителя:
На картах Secure Digital и USB-флеш-накопителях [ 12] методы реализованы на аппаратном уровне с помощью встроенного микроконтроллера . На таких устройствах выравнивание износа прозрачно , и на них можно использовать обычную файловую систему, такую как FAT , как есть.
Выравнивание износа также может быть реализовано в программном обеспечении с помощью специализированных файловых систем, таких как JFFS2 и YAFFS на флэш-носителях или UDF на оптических носителях. Все три являются файловыми системами с журнальной структурой , поскольку они рассматривают свои носители как циклические журналы и записывают на них данные в последовательных проходах. Файловые системы, реализующие стратегии копирования при записи , такие как ZFS , также реализуют форму выравнивания износа.