Александр АЛЕКСЕЕВ
support@k-t-k.ru
Устройства регистрации данных постоянно менялись: сначала, в 1940-х годах — накопители на бумажных перфокартах, электронных лампах и феррито-вых кольцах, затем, в 1950-х — на магнитных лентах и гибких дисках. А когда в 1957 году компания IBM предложила рынку свой первый жесткий диск, наступила эпоха винчестеров. Винчестеры постоянно совершенствуются, но в последнее время их стали вытеснять твердотельные накопители, в которых отсутствуют механические компоненты и магнитные носители, боящиеся ударных нагрузок, вибрации, неблагоприятных условий окружающей среды и нежелательных магнитных полей. Кроме того, одним из необходимых параметров для систем с автономным питанием является малое энергопотребление.
В основном для хранения информации используется NAND флэш-память. Современная промышленность сейчас выпускает два типа такой памяти: это SLC (Single Level Cell) и MLC (Multi Level Cell). MLC позволяет увеличить объем информации за счет того, что каждая ячейка хранит информацию не только о наличии заряда, но и о его величине. То есть различается не 2 состояния — «есть» или «нет», а уже 3, два из них зависят от величины заряда и снимаемого уровня схемой выборки. Но такой способ хранения имеет и существенный недостаток, это пониженная надежность хранения информации и меньшее гарантированное количество циклов стирания. Поэтому в накопителях для высоконадежных применений используют только SLC NAND flash.
Несмотря на неоспоримые преимущества твердотельных накопителей, одним из основ-
Когда надежность, размер и производительность имеют значение. Твердотельные накопители BiTMICRO
В последнее время, благодаря дальнейшей эволюции микросхем флэш-памяти, выполненной по технологии NAND, увеличению объема памяти этих микросхем и значительному снижению их стоимости, Интернет пестрит сообщениями о новых разработках твердотельных накопителей (Solid State Drive — SSD) с применением данной памяти, о новых рекордных объемах, достигнутых такими накопителями, и о возможности в ближайшем будущем замены всех винчестеров, применяемых в компьютерах, на накопители, имеющие в качестве запоминающего устройства NAND флэш-память.
ных факторов, сдерживающих их повсеместное внедрение, остается их высокая стоимость. Но есть области применения, в которых стоимость отодвигается на второй план. Среди первоочередных требований к таким накопителям — высокая надежность, расширенный рабочий диапазон давлений и температур, малые размеры и потребляемая мощность, высокая стойкость к ударным нагрузкам и вибрациям.
Например, в устройствах, предназначенных для космических исследований, где стоимость накопителя абсолютно несоизмерима со стоимостью несохраненных данных в случае его отказа. И к миллиардам долларов, потраченным на организацию исследовательского полета, здесь добавляется фактор времени полета до исследуемого объекта, зачастую измеряемый годами.
Следующая область применения, где необходимы высоконадежные накопители, это так называемые «черные ящики», или системы регистрации параметров полета. Отсутствие достоверных данных, сохраненных в накопителе, зачастую переводит расследование катастрофы в область догадок и предположений и не позволяет достоверно определить причину происшествия. А понимание причин — важный фактор предотвращения гибели пассажиров и экипажа других летательных аппаратов за счет превентивных действий, устраняющих найденные неисправности или ошибки экипажа. Аналогичные требования предъявляются к регистраторам на других видах транспорта, например железнодорожном и водном.
Системы регистрации параметров в научных экспериментах, при испытаниях опытных образцов, зачастую тоже требуют высо-
конадежных и скоростных накопителей, особенно когда велика стоимость эксперимента или нет возможности его повторить, а также в системах управления и контроля технологическим оборудованием с неблагоприятными внешними условиями или критичными к надежности оборудования (например, в ядерной энергетике).
Основная сфера применения таких накопителей — это военная техника, где зачастую от надежности и бесперебойной работы оборудования зависит жизнь множества людей. В данных приложениях дополнительно востребована возможность моментального и гарантированного удаления информации (например, в системах криптографии и засекречивания, хранения и обработки оперативной и тактической информации).
Уже имеется большое количество разработок отечественных производителей, которые применяют NAND флэш-память в устройствах для военных применений и систем, эксплуатируемых на транспорте. Но в большинстве таких систем применяются либо карты памяти стандарта compact-flash, либо свой собственный интерфейс к массиву флэш-памяти. Например, широкий ассортимент таких регистраторов выпускает НПО «Прибор». Это бортовые системы для регистрации параметров полета семейства «БУР», которые успешно вытесняют накопители на основе магнитных лент типа МСРП-64 и аналогичных. Или, например, выпускаемая «Центром речевых технологий» система регистрации речевых переговоров для подводного флота. И таких примеров множество.
Но, проектируя свой собственный интерфейс, разработчик сталкивается с множест-
вом проблем. Одна из основных задач при создании такого флэш-накопителя — это ограниченное количество циклов чтения-записи для современных микросхем NAND флэш-памяти на уровне 100 000 операций.
Можно легко посчитать, что срок службы накопителя объемом 36 Гбайт, без специального алгоритма выравнивания износа блоков памяти микросхем и интеллектуального распределения информации в несколько микросхем, при условии непрерывной передачи информации со скоростью 40,2 Мбит в секунду (что соответствует записи всего 3392 Гбайт в день) составит всего 91 700 000 секунд, или 3,49 года. Разумеется, такое время наработки на отказ не соответствует понятию «высоконадежный накопитель» (хотя уже появилась NAND флэш-память с гарантированным количеством циклов чтения-записи до 1 000 000).
Общая производительность интерфейса будет определяться максимальной скоростью чтения-записи микросхемы флэш. Чтобы обойти эти ограничения, необходимо обеспечить распределение поступающей информации одновременно в несколько микросхем памяти, с учетом износа соответствующих блоков. Кроме того, чтобы устранить хоть и редко, но появляющиеся ошибки в хранении информации и предотвратить ее искажение или разрушение, необходимо применить высокоэффективный механизм выявления и коррекции ошибок (желательно, как в одиночных битах, так и в группах). И получается, что такой проект растягивается на очень приличный срок, или необходимо у сторонней фирмы заказывать разработку и реализацию данных алгоритмов. Но если этот контроллер попытаться реализовать на нескольких микросхемах, то сразу возрастут габариты прибора и мощность, потребляемая конечным устройством. То есть оптимальное решение — это заказ специализированной микросхемы, так называемой ASIC, которая реализует все эти функции.
Применение собственного проприетарного интерфейса ввода/вывода ограничит возможность масштабирования и увеличения емкости такого накопителя, что не позволит на соответствующем этапе улучшить потребительские свойства устройства в целом, когда появятся дополнительные требования к увеличению объема и скорости накопителя.
Для уменьшения износа флэш-микросхем и повышения количества операций ввода/вывода необходимо предусмотреть дополнительный кэш-буфер на микросхемах статической или динамической памяти, как это сделано в обычных винчестерах. Но здесь тоже появляется проблема сохранности данных при пропадании питающего напряжения или некондиционности питания под воздействием внешних факторов. То есть опять необходимо предусмотреть возможность гарантированной перезаписи всех данных из буфера во флэш-микросхемы.
Очевидным решением всех проблем является применение SSD-накопителя со стандартным интерфейсом, выполненного в одном из стандартных форм-факторов, например, готового твердотельного накопителя от компании, специализирующейся на производстве таких продуктов.
Сейчас многие фирмы занялись разработкой и изготовлением таких накопителей. И одна из лидирующих компаний в этом сегменте — BiTMICRO. Ее история насчитывает более 15 лет разработки и выпуска SSD. В ассортименте продукции — накопители практически со всеми наиболее распространенными интерфейсами, такими как SCSI, IDE, SATA, Fiber Channel и т. п. Устройства изготавливаются в стандартных форм-факторах 2,5 и 3,5 дюйма. Кроме устройств для высоконадежных и военных применений компания выпускает накопители для компьютерных приложений и центров (хранилищ) данных. Благодаря накопленному опыту BiTMICRO постоянно лидирует на рынке и разрабатывает передовые устройства в отрасли. Применение накопителей данной компании позволит сократить время разработки устройства в целом, уменьшить его конечную стоимость и за счет этого повысить конкурентную способность конечного продукта, оснащенного таким накопителем.
В своих изделиях компания применяет много запатентованных технологий, таких как FlashBus, PowerGuard, SecureErase.
FlashBus — технология, применяемая во всех внутренних дисках семейства Altima, это специальная шина, позволяющая осуществлять перенос данных между буфером и контроллером доступа к банкам флэш-памяти и передавать по единой шине команды, адреса и данные.
PowerGuard — совокупность программного и аппаратного обеспечения накопителя, которая позволяет сохранять все данные, накопленные в буфере (кэше), в блоки флэш-памяти без потерь и искажений при внезапном пропадании питающего напряжения или гарантированно стирать информацию в соответствии с алгоритмом, выбранным пользователем (возможно задание режима ручного стирания по команде пользователя подачей команды через интерфейс). Используется 3 алгоритма работы системы PowerGuard, по терминологии компании — PowerGuard I, II и III. PowerGuard III использует наибольшее количество алгоритмов защиты, реализуется 3 режима, выбираемых с помощью переключателя, встроенного в накопитель, и активизирующихся по условию пропадания или снижения напряжения питания. Первый режим (save mode) обеспечивает сохранение кэша в микросхемах флэш-памяти. Второй режим — erase mode: все данные гарантированно стираются при проблемах в питании или его пропадании. И третий режим — standby: хранение информации в кэше с возможностью его стирания по нажатию кноп-
ки, при пропадании или нестабильности питающего напряжения. В PowerGuard II используются только режимы save и erase.
SecureErase — технология гарантированного стирания данных без возможности последующего восстановления, даже из отдельных микросхем флэш-памяти. Она предназначена для обеспечения удаления охраняемой информации, такой как коды доступа, шифры и конфиденциальные сведения в случае неавторизованного доступа. Если процедура по каким-то причинам выполнена не полностью, она автоматически запускается при повторной подаче питания, возможна активизация данной процедуры по внешнему сигналу (в виде подачи сигнала с кнопки). Этот режим выгодно отличает SSD-накопители от обычных винчестеров, из которых теоретически можно снять даже затертую информацию (за счет нестабильности положения головки относительно дорожки, правда, наверное, этим больше пугают). Преимущества SSD — гарантированное стирание без возможности восстановления и очень малое время стирания.
DataSentinel — это комплекс аппаратнопрограммных решений, которыми снабжены все диски семейства Altima. Во всех накопителях используется промежуточный буфер — кэш на микросхемах DRAM. Применение этого кэша позволяет не только повысить производительность операций ввода/вывода и общую производительность диска (кэш играет также существенную роль при формировании контрольной суммы и восстановлении одиночных ошибок в ней при чтении), но и вносит некоторые проблемы по сохранности данных при пропадании напряжения или несоответствии характеристик источника питания, которые решает данная технология. DataSentinel содержит стандартные и программируемые пользователем функции:
• Low Voltage Detection — сенсоры в накопителях непрерывно определяют кондиционность напряжения питания и позволяют предотвратить разрушение и искажение данных из-за непредвиденных перебоев в питании. Как только напряжение питания падает ниже определенного порога, все данные из кэша переписываются во флэш-память микросхемы, и дальнейшие пересылки прекращаются до момента стабилизации питания. Это решение предотвращает разрушение файловой структуры диска, FAT-таблицы и запрещает дальнейшую запись на диск. При этом чтение из диска разрешено.
• Redundant Pre-Write — данная функция производит накопление изменений FAT-таблицы в кэше для уменьшения количества изменений в блоках флэш-памяти, хранящих таблицы трансляции.
• Concurrent-Multiple Write — функция, уменьшающая «временное окно» нахождения в состоянии записи, этим предотвращается повреждение FAT-таблицы при понижении напряжения.
• Cache-on-Write Disable — в данном режиме запрещается работа кэша, данные записываются непосредственно во флэш-память; это гарантирует, что при пропадании питающего напряжения вся информация будет сохранена в основной памяти, но отключение кэша резко снижает производительность накопителя.
• Patented Wear Leveling — интеллектуальный алгоритм распределения информации по микросхемам флэш-памяти с учетом предыдущего использования блоков, что позволяет увеличить ресурс накопителя. Этот алгоритм запатентован компанией BiTMICRO и в течение долгого времени показал свою надежность и эффективность. Данная технология обеспечивает работоспособность диска объемом 64 Гбайт при средней ежедневной записи по 100 Гбайт в течение 2360 лет. И в совокупности с технологией ассоциативного кэширования и эффективного механизма коррекции ошибок позволяет увеличить время наработки на отказ в 15 раз.
• Bose-Chaudhuri-Hocquenghem Error Correction Code (BCH-ECC) — коды Боуза-Чоуд-хури-Хокенгема (коды БЧХ). Эффективный метод выявления и коррекции ошибок (более 9 корректируемых и более 10 детектируемых на каждый 528-байтовый блок).
• Sectioning and Flash Pre Erase — технология, направленная на увеличение ресурса флэш-памяти, эффективно распределяет записанную информацию, дополняя неиспользованные секторы с целью уменьшения количества операций стирания.
• Flash Memory Scrubbing — технология, позволяющая выполнить в фоновом режиме поиск и устранение ошибок во всем объеме флэш-памяти.
• Wear-Out Monitor — технология сигнализации об исчерпании ресурса циклов стирания флэш-памяти; предупредительный сигнал при 90% пороге износа, что, конечно же, не означает отказ в работоспособности накопителя, но в особо важных применениях может учитываться как рекомендация к его замене.
• Automatic Bad Block Remapping — технология, аналогичная применяемой в классических HDD, при нахождении сбойного блока памяти он помечается как дефектный и удаляется из адресного пространства, его замещает другой, исправный блок. Все сказанное подтверждает, что, благодаря
большому накопленному опыту компании BiTMICRO, твердотельные накопители семейства Altima — действительно высоконадежные устройства. В этих накопителях применены специально разработанные контроллеры от технологического партнера компании — фирмы CHIP-X, занимающейся разработкой и изготовлением заказных решений на основе ASIC-чипов для применения в военной продукции и высоконадежных системах для промышленности. Это запатентованный чип под названием LUNETA MFI (Logical UNifier of Extensive Transfer Arrays Memory Flash Interface). Кроме данной компании, список технологических партнеров включает много известных фирм, таких как Microsoft, IBM, LinuxWorks, ARM, MoSys, Oracle, WindRiver, QNX и т. д., что подтверждает высокий уровень качества и инновационность разработок BiTMICRO.
В заключение приведем характеристики типового твердотельного накопителя производства BiTMICRO семейства Altima (рисунок) с интерфейсом IDE, выполненного в форм-факторе 2,5 дюйма:
• Время доступа — от 30 до 100 мкс.
Максимальная скорость передачи (ограничена интерфейсом) — 133 Мбит/с. Максимальная установившаяся скорость — более 100 Мбит/с.
Производительность операций ввода/вывода — более 20 000 оп./с.
Размер динамического кэша — более 64 Мбайт.
Диапазон рабочих температур 0...70 °С (-40...+85 °С для промышленного диапазона без внешнего охлаждения). Максимальная скорость изменения температуры (температурный градиент) — 3 °С/мин. Влажность — 5-95%.
Одиночные ударные нагрузки — до 1500 g. Максимальные вибрации — 16,4 g (RMS — среднеквадратическое значение).
Диапазон высот-----1200.. . + 120 000 футов
(-366.+36 576 м).
Напряжение питания — 5 В (±5%).
• MTBF (Mean Time Between Failures)
>1,9 млн часов.
• Коэффициент ошибок (Bit Error Rate) — 10-27.
• Метод коррекции ошибок — BCH-алгоритм, исправление — до 9 ошибок в 528-байтовом блоке и обнаружение 10 и более ошибок.
• Гарантированное время хранения данных — 10 лет.
• Стойкость к перезаписи: для 16 Гбайт SSD — 657 лет в режиме ежедневной записи 100 Гбайт в день.
• Размеры полностью соответствуют промышленным спецификациям: высота от 9,5 до 25,38 мм (в зависимости от объема) и соответственно масса от 83 до 221 г.
Это спецификация стандартного накопителя, выпускаемого серийно; для SSD в специальном исполнении можно заказать опцию: температурный диапазон работы от -65 до +95 °С.
В завершение хочется отметить, что для диагностики, обновления микрокода (встроенного программного обеспечения), получения статистики о работе диска, просмотра серийного номера, разрешения работы кэша и других задач компания разработала программное обеспечение E-Disk Analyzer и E-Disk Manger, что очень важно для анализа работы диска.
В статье приведены характеристики серийно выпускающейся продукции. Компания BiTMICRO готова адаптировать свои изделия под спецификацию заказчика. ■
Литература
1. www.bitmicro.com
2. www.micron.com
3. www.mosys.com
4. www.chipx.com
5. www.supertalent.com