Карманные гектары. Часть 3

 | 10.27

Кукушка-кукушка, сколько флэшке жить осталось?

В первой части «Карманных гектаров» мы рассмотрели устройство типичной ячейки в матрице flash-микросхемы, так что особо повторяться не буду. Просто напомню, что основной принцип записи сводится к подаче разнополярных напряжений на управляющий затвор. Между управляющим затвором и токопроводящей основой в слое диэлектрика находится «плавающий» затвор, не имеющий непосредственного контакта с линиями, по которым подаётся напряжение. Но при появлении на управляющем затворе положительного поля электроны преодолевают (туннелируют) слой диэлектрика и накапливаются на плавающем затворе при процессе записи. Точно так же при появлении отрицательного поля на управляющем затворе электроны с плавающего затвора успешно покидают его и таким образом происходит стирание ячейки.

Собственно, этот небольшой участок диэлектрика, через который электроны шастают туда-сюда, и является самым узким местом технологии flash-памяти. Очевидно, что при многократном повторении процессов записи и стирания со временем структура диэлектрика нарушается, изменяя уровень управляющего напряжения, необходимого для прохождения каждого описанных из процессов. Физически такие дефекты сводятся к нарушениям кристаллической решётки диэлектрика (то есть к разрыву связей молекул кремния с молекулами кислорода и так называемых дислокаций), а также ускорению диффузии ионов, находящихся в диэлектрике. Первый дефект вызывается непосредственно «бродящими» на плавающий затвор и обратно элеуктронами, а второй – повышенными температурами, неизбежно возникающими в этом процессе. И, как вы понимаете, работоспособность ячейки критически зависит от состояния диэлектрика, поскольку… Тут, пожалуй стоит упомянуть ещё раз о том, что на плавающем затворе невозможно накопить более-менее точное количество электронов. Поэтому при работе с ячейкой flash-памяти контроллер допускает некоторые «окна», необходимые для разделения состояний «зипсано-стёрто». То есть, между минимально допустимым напряжением, при котором ячейка считается записанной, и максимально допустимым, при котором ячейка считается стёртой, имеется «мёртвая зона» неопределённого напряжения, называемая окном перекрытия. При записи и стирании напряжение на плавающем затворе обязательно должно получиться либо выше, либо ниже этого промежутка, иначе неизбежно возникнут ошибки.

Если учесть то, что поток электронов, проходящих через диэлектрик, имеет экспоненциальную зависимость от напряжения на управляющем затворе, становится понятно, насколько важной является однородность и чистота диэлектрической прослойки. Небольшие дефекты в структуре, либо же просто неодинаковая толщина диэлектрика приводят к тому, что для записи-стирания ячейки нужно применять гораздо большее напряжение, чем в идеальном случае. Но нагрузка на «нормальные» и более тонкие участки диэлектрика при этом возрастает по всё той же экспоненте, значительно уменьшая срок их службы при постоянных циклических нагрузках.

Над проблемой создания максимально однородных и точных структур микросхем работает не один десяток лабораторий по всему миру. Причём это относится не только к флэш-памяти, но и вообще ко всем изделиям на полупроводниковой основе. Борьба с «токами утечки» и дефектами микроструктур раз за разом упоминается в отчётах лидеров процессорного рынка. И эта проблема становится актуальнее с каждым новым переходом на меньший техпроцесс, что, в общем-то, неудивительно. Как правило, появление большого числа дефектных элементов (тех ячеек или транзисторов, в которых те или иные участки имеют неподходящую толщину, нарушенную структуру или посторонние примеси) и является основной причиной появления большего числа брака в изделиях на новых техпроцессах. Кому-то удаётся решать эти проблемы быстро и эффективно, а кому-то – нет (например, седьмая серия GeForce от компании nVidia, сменившая техпроцесс в период своего существования с 110 нм в G70 (GeForce 7800) на 90 нм в G71 со всеми его производными (7300/7600/7900), ещё надолго запомнится своим низким тепловыделением и разгонными способностями. А вот у ATI переход на те же 90 нм прошёл не так гладко, как у конкурента, поэтому несмотря на все достоинства карт с GPU R520 и его ближайшими родственниками (а это серия X1300/1600/1800 и промежуточные между ними) экономичностью и «хладнокровием» они похвастать не могут, несмотря на тот же 90 нм техпроцесс. Впрочем, архитектура самого ядра тут тоже играет заметную роль, о чём вы можете почитать в большом материале от Refouler’а, который должен быть напечатан где-то тут рядом , но в эти джунгли мы забираться не будем – своих хватает).

Так неужели никакого выхода нет? Неужели «все йогурты одинаково полезны» и между флэшками на микросхемах одного производителя (а мы уже знаем, что в мире их совсем немного) нет никакой разницы?

Конечно, есть. И заключается она не только во второстепенных (хотя для кого как, конечно) элементах вроде дизайна корпуса и поддерживаемых технологий. Учитывая срок жизни ячеек микросхемы, который так или иначе ограничен, производители используют определённые ухищрения, основная задача которых сводится к максимально равномерному распределению нагрузки по всем ячейкам и предотвращению возможных ошибок из-за выхода ячеек из строя.

Самым распространённым способом продления срока службы флэшки является применение так называемой «трансляции» физических адресов на логические. По самой структуре flash-микросхемы вы уже должна понимать, что принципиальной разницы между блоками, из которых она состоит (говорим о NAND-памяти; напоминаю, что в этом типе флэшек отдельные ячейки прочитать или перезаписать нельзя, работа идёт только с «цельными» блоками от 512 до 2048 байт) нет. Все блоки должны читаться и перезаписываться с примерно одинаковой скоростью, поэтому разделять их на «более выгодные» и «менее выгодные» смысла нет, как в случае с теми же жёсткими дисками, где данные с внешнего радиуса пластин читаются заметно быстрее, чем с внутреннего. Это свойство используется самым простым и логичным способом – физическим блокам микросхемы flash ставятся в соответствие «логические» блоки, которые видны компьютеру либо другому устройству (фотоаппарату, мобилке – чему угодно) на выходе интерфейса. Благодаря специальным алгоритмам блоки меняются местами в зависимости от нагрузки, которая на них приходится. В то же время дефектные блоки просто исключаются из списка доступных и в процессе «трансляции» им не присваивается никаких логических соответствий. Конечно, со временем дефектных блоков появляется всё больше, поэтому самые внимательные владельцы флэшек могли заметить, что их устройства малость «подусохли». Впрочем, за время службы средней флэшки, пока она ещё сохраняет приемлемую работоспособность, эти потери почти незаметны. Главное, что при хорошем алгоритме проверки и трансляции из-за них не возникает ошибок. Ну а когда настаёт судный день для заметного количества блоков, становится не до нескольких сотен килобайт, потерянных в «бэдах».

Суть проблемы, вытекающей из предыдущего ухищрения, заключается в том, что таблицы трансляции тоже нужно где-то хранить. Но в отличие от обычных блоков, которые легко меняются местами, эти таблицы всегда должны быть доступны контроллеру (хоть внешнему, хоть внутреннему), а значит, за ними на микросхеме навсегда остаётся одно и то же место. И как раз в этом месте (из-за постоянного использования таблиц) наблюдается самый большой износ ячеек/блоков памяти. Поэтому, как правило, первыми из строя выходят именно таблицы трансляции, что и приводит к тому, что записанную информацию (даже если она сама по себе в полном порядке) невозможно прочитать.

Для продления сроков службы таблиц трансляции тоже можно применять кое-какие ухищрения. Например, использовать дублирующие схемы наподобие RAID 1 в мини-варианте… Но возможности «организационного» продления сроков жизни трансляционных таблиц не так уж и велики по сравнению с обычными блоками. Впрочем, после «гибели» трансляционных таблиц на многих флэшках имеется возможность восстановить работоспособность при помощи форматирования специальными утилитами. Бэд-блоки, как и положено, исключаются из рабочего цикла, ну а оставшиеся продолжают исправно трудиться, пока не наступит и их черёд. Вот только информация, которая оставалась на флэшке, будет утеряна безвозвратно.

В большинстве случаев управление процессом трансляции адресов возлагается на плечи контроллера, входящего в состав конструкции флэшки. Но иногда (как, например, в случае с карточками для фотоаппаратов Olympus и Fuji– SmartMedia (старый формат) и xD (новый)) через интерфейс передаются реальные адреса, а равномерное распределение нагрузки на них возлагается на плечи ПО, работающего в самом устройстве. Оба варианта имеют вполне очевидные достоинства и недостатки. Но общий принцип таков, что внутренний контроллер занимается трансляцией в основном на универсальных накопителях, а ПО устройства – на специализированных.

И ещё один момент, вытекающий из всего вышенаписанного – старайтесь минимизировать непосредственное использование flash-носителей в работе. Если, допустим, открыть прямо с флэшки .doc файл, Word будет постоянно сохранять временные копии документа в ту же папку. Точно так же и с другими файлами, которые обновляются – работа непосредственно с flash-носителем многократно уменьшает срок его службы. Это, кстати, является одним из заметных недостатков технологии U3, но разработчики ПО стараются обойти его, минимизируя запись/перезапись данных в ходе работы.


Что ломается, чем лечат

Проблемы с flash-накопителями можно разделить на три основных группы.

С механическими повреждениями всё просто – если микросхема, в которой хранится информация, не пострадала (а повреждена, допустим, только текстолитовая плата, на которой она располагается), в специализированном сервисном центре данные восстановить можно в большинстве случаев. Если же пострадала именно микросхема, то о данных можно забыть.

Электрические повреждения могут относиться к трём основным жизненно важным элементам flash-драйва. «Сгореть» может либо стабилизатор напряжения, либо микросхемы контроллера и сама flash-память. Как и в предыдущем случае, если flash-микросхема уцелела, данные скорее всего вам восстановят.

Логические нарушения чаще всего связаны с износом ячеек памяти, ошибками ПО и неправильным извлечением устройства. Тут помогают традиционные программные методы восстановления, применяемые к CD-DVD или HDD носителям. Если же они не приносят должного результата, то и в сервисном центре вам вряд ли помогут.

Распознать тип повреждения несложно. Как правило, при логических нарушениях флэшка распознаётся и с ней можно работать, но сами файлы при этом содержат ошибки. Электрические повреждения приводят к тому, что работа с флэшкой невозможна, и ОС не распознаёт её при подключении. С механическими повреждениями, надеюсь, никаких вопросов у вас не возникнет .

Итак, если с flash-микросхемой всё в порядке, в сервисном центре могут приступить к восстановлению данных. В принципе, простому пользователю об этом процессе много знать не нужно, в домашних условиях его не повторишь. Поэтому, как Путин, буду краток.

Первым делом сервисники пытаются восстановить работоспособность устройства в целом. На самом деле это – самый лучший вариант. Тогда и данные можно восстановить, просто скопировав их с флэшки в обычном порядке, да и само устройство, возможно, прослужит ещё некоторое время. Если же устройство восстановить не удалось, микросхема flash отпаивается и все данные с неё на специальном устройстве-программаторе считываются в виртуальный образ. Тут-то и начинается самая «весёлая» часть восстановления данных, поскольку, как вы уже знаете, физические адреса транслируются в логические только по своим алгоритмам, заложенным в контроллере. И у каждого производителя они свои (и даже варьируются от модели к модели), а без знания этих алгоритмов образ с флэшки – просто беспорядочный набор блоков данных. Инженер-восстановитель должен чуть ли не вручную восстанавливать логическую структуру флэшки.


Куда пакуем?

Особенности Flash-памяти располагают к тому, чтобы использовать её в огромном количестве разнообразных мобильных (и не очень) устройств. При этом флэшки не требуют особо сложных устройств для работы с ними – небольшой дешёвый контроллер обеспечит адаптацию практически к любому интерфейсу передачи данных. Поэтому различных стандартов упаковки flash со времени его появления набралось немало.

Первым повсеместно распространённым форматом был PCMCIA или PC-Card. Изначально этот интерфейс создавался для подключения внешних накопителей обычного типа, поэтому при работе PCMCIA-flash выглядит в системе как обычный винчестер. Всего PCMCIA существует три типа – Type I, II и III. Отличаются они, в принципе, разве что толщиной слота, а сам разъём одинаков для всех. Поэтому обратная совместимость сохраняется – Type I спокойно станет в слот Type III. Но Type III в слот Type I вставить не получится просто физически, поскольку карты Type III имеют толщину 10.5 мм, а Type I – всего 3.3 мм (хотя, конечно, всё зависит от силы вставляющего). На данный момент такой форм-фактор редко используется в качестве упаковки для flash – крупноват и не очень удобен. Хотя, например, профессиональный фотоаппарат Nikon D3 поддерживает такие карты. Но в подавляющем большинстве нынешние PCMCIA-устройства – это аналоги PCI-устройств, адаптированные для ноутбуков. Просто PCMCIA-слот имеется практически в каждом ноуте, а со времени своего внедрения (1991 год) он настолько хорошо стандартизирован, что все необходимые драйвера присутствуют даже в древней Windows 98.

Впрочем, появление SSD-дисков может вернуть flash в PCMCIA-слоты, они для этого всё ещё вполне годятся.

Второй по времени появления формат – Compact Flash. Датой рождения этого формата можно считать 1994 год, когда были выпущены первые флэшки от SanDisk, хотя CFA (Compact Flash Association) уже на тот момент насчитывала более 10 участников. Перечислять их смысла нет, а уж нынешних – и подавно. Compact Flash до сих пор отлично подходит для использования в профессиональных фотоаппаратах и наладонниках, а его крупноватые по нынешним меркам габариты в этих устройствах – не проблема, там есть другие факторы, сдерживающие миниатюризацию. Зато при прочих равных Compact Flash получается дешевле любой другой карточки. Единственным заметным недостатком CF можно назвать неудачный разъём «с ножками», которые при неосторожном обращении с карточкой легко повредить.

CF тоже бывает двух типов, которые тоже отличаются только размерами. CF Type I преимущественно используется именно для карт памяти, а Type II – как мобильная замена слота PCI. Хотя никто не помешает вставить в CF Type II карту памяти – работать будет.

Формат CF не стоял на месте всё это время. Например, карты снизили своё энергопотребление с 5 до 3.3В в угоду требованиям длительности автономной работы устройств, при этом сохранилась полная совместимость слотов – напряжение распознаётся автоматически… Но с CF произошла и такая себе «обратная мутация» — в этом форм-факторе появились достаточно популярные «мини-винчестеры» Microdrive. Собственно, говорить тут особо нечего, винчестер – он винчестер и есть. Никакой экономии заряда батарей, острая восприимчивость к механическим повреждениям, но зато и объёмы соответствующие. Microdrive очень популярен у профессиональных студийных фотографов, которые за одну сессию запросто «нащёлкивают» несколько гигабайт фотографий.

Разработанный в 1995 году стандарт SmartMedia рассматривать стоит разве что «для порядка», поскольку на сегодняшний день он полностью вышел из обихода. Интересно лишь отметить, что по спецификации компании-разработчика (Toshiba) он называется Solid State Floppy Disk Card (SSFDC) – в переводе не нуждается. Отличительной чертой SM является то, что (как уже говорилось ранее) эти карты не имеют встроенного контроллера. По идее, это должно было сделать их дешевле, но с обратной стороны – добавило несколько проблем при эксплуатации. В частности, непринципиальное для CF ограничение на максимальный объём карточки, поддерживаемый устройством – на сколько рассчитан контроллер, столько и вставишь. Больше не получится.

В 2002 году на замену SM компании Olympus и Fuji приняли формат xD Picture Card, который, по сути, является той же SM, только в другом корпусе. В этом можно убедиться хотя бы по конструкции фотоаппаратов обоих фирм того времени – слоты xD и SM были сомещены в один с общими контактами. Собственно, проблемы xD остались в наследство от SM, но и преимущества никуда не делись. А основным из них является компактность при большом (теоретическом) объёме памяти. Впрочем, отсутствие встроенного контроллера всё равно не позволит xD получить такое распространение, как SD/MMC картам.

Очень популярный в недавнем прошлом формат MMC (Multimedia Card) был разработан в 1997 году опять-таки при участии огромного количества компаний. Его основной задачей была замена CF в сверхкомпактных устройствах, где Compact Flash размещать было просто негде. Кроме того напряжение питания удалось снизить ещё сильнее (существуют варианты MMC на 3.3 и 2.7 В). Впрочем, чуть позже разработчики поняли, что «перестарались» и выпустили стандарт SD-Card (Secure Digital), который был на 0.7 мм толще. Это позволило увеличить максимальный объём памяти по сравнению с MMC. Кроме того появилось два дополнительных контакта, благодаря которым можно было реализовать защиту цифрового контента. Ну и защёлку для защиты от перезаписи добавили. В принципе, совместимость должна быть стопроцентной, но на самом деле это относится только к MMC-картам, которые работают в любом SD или MMC разъёме. А вот SD могут и отказаться функционировать в устро1йстве, рассчитанном только на MMC (хотя и не должны вроде бы). Из личного опыта добавлю, что подобный феномен мною лично наблюдался у фотокамер UFO, в то время как с Canon’ами с теми же спецификациями те же карты работали отлично. Так что не брезгуйте проверкой совместимости карты перед покупкой.

О появившихся не так давно форматах RS-MMC, MMCmicro, MMCmobile и Mini-SD добавить особо нечего. Те же карточки, только в ещё более компактных корпусах. Совместимость – полная, обеспечивается обычным пассивным переходником. Иногда, правда, различаются способы форматирования, но это уже лежит на совести устройств. Сами по себе карточки должны работать в любом из подходящих слотов.

Пару слов надо бы сказать и о формате Sony Memory Stick, разработанном сами знаете какой компание в 1998 году. По сути ничего особенного в MS нет, флэшка, как флэшка. Присутствует та же защёлка для предотвращения перезаписи, что и на SD, но защита цифрового контента реализована только в модификациях Magic Gate (впрочем, простому пользователю от этой защиты ни холодно ни жарко). Возможно, MS и стала бы всеобщим стандартом, но Sony рьяно хранит все права на свою разработку. Поэтому покупая технику этой компании вам придётся пользоваться именно Memory Stick, но по сравнению с SD/MMC вы потеряете разве что повсеместную совместимость (всё-таки SD/MMC распространены гораздо больше). Да и сама Sony не удержалась и «наплодила» массу вариантов своей карточки – MS, MS Pro, MS Duo и MS DUO Pro. Модификации DUO отличаются прежде всего размерами – они на две трети короче обычной MS. Но совместимость с пассивным переходником сохраняется. Версии Pro отличаются большей скоростью…

Кстати, о скорости. Сейчас стало модным маркировать скорость флэшки «иксами». Чаще всего работает формула 1х=150 кбит/с. Получается, что 25х флэшка работает на скорости 3.75 Мб/с и так далее.

На этом, пожалуй, будем заканчивать. До новых встреч!

Robo User
Web-droid editor

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *