Как происходит запись на ssd диск

Обновлено: 08.07.2024

Аббревиатура SSD расшифровывается как Solid-State Drive. Что, собственно, так и переводится — твердотельный накопитель. Особенность его заключается в том, что он не содержит подвижных механических частей: внутри находятся лишь платы и микросхемы, с помощью которых и происходят запись, хранение и чтение информации. История SSD началась довольно давно.

Впервые какое-то подобие смогла реализовать StorageTek в 1985 году. Но в то время высокая стоимость и невысокая технологичность комплектующих не позволяли массово внедрять решения в массы, да и особо не было ответа, для чего нужен в компьютере быстрый SSD диск, если интерфейсы и периферия все равно работала медленно. Зато в начале 2010-х годов популярность SSD сильно возросла. Сейчас практически каждый новый ноутбук поставляется с SSD либо гибридной конфигурацией с жестким диском. Далее мы рассмотрим, что это такое — SSD в ноутбуке или стационарном компьютере.

Для чего нужен SSD-накопитель в компьютере

SSD по своему назначению ничем не отличается от HDD. Он призван выполнять ту же функцию — хранить данные, операционную систему, файлы подкачки и тому подобное. Естественно, что эта замена более дорогая, если переводить рассчитывать в отношении гигабайт/рубль. Более чем вероятно, что в недалеком будущем ситуация изменится.

Устройство жесткого диска SSD ноутбука и в компьютере

Никакой разницы между тем, что такое SSD в ноутбуке и стационарном компьютере по сути нет. Внешне устройство может представлять собой похожий на HDD корпус, или же быть выполнено в виде платы для установки в разъем типа М.2. Если разобрать SSD или посмотреть на плату, то она очень похожа конструкцией на обычную флешку. В целом, SSD и есть большая флешка, с тем же принципом работы. Так выглядит SSD без одежды Управляет всем устройством контроллер, который распределяет данные по ячейкам, следит за их состоянием, удалением и в целом выполняет все функции, аналогичные функциям процессора в компьютере. Сама память представляет собой флеш-память, такую же, как на флешках. В SSD используется тип NAND, который характеризует собой трехмерную компоновку проводников, где на пересечениях используется ряд ячеек. несколько одинаковых чипов на плате — NAND-память По методу записи данных в ячейку различают два вида реализации: SLC – Single-level Cell и MLC – Multi-level Cell. Как можно догадаться, в первом случае в одну ячейку пишется всего один бит, в втором — несколько. Сейчас из MLC вышел еще один тип, название которого устоялось в обиходе, хотя и входит в подмножество этого типа — TLC, Triple-level Cell.

Принцип работы SSD-диска

Внутреннее убранство HDD и SSD

Наверное, многие знают, как работает обычный жесткий диск — магнитная головка бегает от начала к краю вращающегося диска и читает с дорожек данные. Основная проблема магнитных дисков — слишком много времени уходит на позиционирование головки на участке с нужными данными. А если файл еще и разбит на несколько кусков по разным участкам, то время процесса чтения или записи и вовсе увеличивается в разы. Внутреннее убранство HDD и SSD Чтобы понять, что такое ССД диск, нужно знать принцип его действия. Для доступа к данным для чтения или ячейкам для записи системе нужно лишь знать адрес. Затем контроллер просто возвращает блоки данных. Время тратится лишь на поиск адреса и передачу данных — буквально миллисекунды.

Виды жестких твердотельных дисков

По видам SSD можно характеризовать по форм-фактору и типу интерфейса. Форм-факторов встречается три основных:

  • 2,5”. Диск облачен в корпус размером 2,5 дюйма. Обеспечивает совместимость практически между всеми видами систем: ноутбуки, серверы, ПК.

Компактный формат 2,5” от Crucial

Компактный формат 2,5” от Crucial

  • Как отдельная плата для слота PCIe. Обеспечивает неплохую скорость и надежность, использует интерфейс PCI Express.

Отдельная плата SSD от Intel

Отдельная плата SSD от Intel

  • М.2. Относительно новый формат, представленный в основном в виде платы, которая устанавливается прямо на материнскую плату в разъем М.2, что весьма компактно. Такой SSD может встречаться в трех разных исполнениях в зависимости от длины: 2242, 2260, 2280. Последние две цифры означают длину в мм.

Сравнение размеров М.2

Сравнение размеров М.2 Существуют еще несколько форматов, которые встречаются редко и нужны для узкого спектра задач, например 1,8”, 3,5” или mSata. В интерфейсах разобраться сложнее. Здесь — каша в стандартах и спецификациях. Начнем с самого ходового — SATA. На сегодняшний день имеются три основных ревизии и две дополнительных. SATA — поддерживает до 1,5 Гбит/с. Сейчас встречается все реже и реже. SATA II — до 3 Гбит/с. SATA III — до 6 Гбит/с. Ревизия SATA 3.2 получила дополнительно приставку Express.

Обладает скоростью до 8 Гбит/с и обратно совместим с другими SATA, а также, что самое интересное, в основе имеет интерфейс PCI Express. Интерфейс может быть реализован как в форм-факторах 2,5 дюйма, так и в М.2. С PCI-E интерфейсом немного проще. Реализуется он в основном в М.2 у SSD. Стоит обратить внимание, что PCI может быть многоканальным. Чем больше каналов — тем быстрее скорость передачи данных.

Общие характеристики SSD (Solid State Disk)

Давайте рассмотрим базовые характеристики, по которым можно идентифицировать SSD, разберем, что это такое, и сравним с HDD.

Интерфейс и форм-фактор

Об этом мы уже немного рассказывали. Теперь рассмотрим это в контексте выбора и актуальности для разных систем. С интерфейсами все просто — наиболее производительным сейчас считается eSATA, который в спецификациях в некоторых магазинах и у производителей может быть обозначен как PCI-E. На сегодняшний день это наиболее быстрый интерфейс. Форм-фактор же нужно выбирать в зависимости от типа ПК — ноутбук или стационарный.

В стационарном для компактности можно использовать М.2, который займет немного места на плате и не требует дополнительного питания. Новые ноутбуки тоже поддерживают М.2. Для старых актуален форм-фактор 2,5 дюйма.

Емкость и скорость диска

Емкости SSD — довольно дорогие. Самый бюджетный вариант SSD на 32 Гб можно купить примерно за 1500 рублей, в то время как HDD за те же деньги уже будет иметь объем от 160 Гб. Что касается скорости, то тут все не так однозначно. Очень часто скорости чтения и записи данных в спецификациях к дискам сильно завышены. Причем не обязательно лишь у малоизвестных маленьких компаний, а даже и у именитых брендов. Поэтому ориентироваться приходится на обзоры и замеры авторитетных сервисов и тестеров.

Тип микросхем памяти

Интересно, что сейчас оба типа памяти — MLC и SLC — практически одинаковы и по производительности, и по ресурсу записи/перезаписи. Многое зависит от реализации конкретного производителя. Перед покупкой каждой конкретной модели мы бы рекомендовали посмотреть тесты и обзоры на эти гаджеты.

Ведущие производители SSD дисков для ПК

В топе находятся известные производители накопителей. Чем-то особенным их реализации не отличаются. Более того, контроллеры производства Samsung или Intel можно встретить не только в их собственных накопителях, но и в устройствах брендов-конкурентов. Основные имена в топе:

  • Samsung. Производят SSD широкого спектра для самых разных задач;
  • Western Digital. Один из старейших производителей носителей. Выпускает три разных линейки накопителей — Green, Blue и Black;
  • Intel. Тут все понятно. Надежность и качество;
  • Transcend. Известна в основном своими флешками. Теперь выпускаеи и полноценные SSD.

Какой SSD диск лучше купить

Samsung MZ-75E250BW в формате 2,5“

Если бюджет не ограничен, то никаких проблем нет. Если же каждый рубль на счету, то лучше подойти к вопросу основательно. Давайте рассмотрим пару моделей, на которые стоит обратить внимание. В категории до 5000 рублей можно посмотреть в сторону Samsung MZ-75E250BW. Samsung MZ-75E2 в формате 2,5“ Тип памяти в нем используется типа TLC. Заявленная скорость чтения/записи составляет 540/520 Мб/с. Общий объем накопителя равен 120 ГБ. Суммарно на диск можно записать 75 ТБ данных.

В среднем пользователи записывают на свой диск от 5 до 30 ГБ в сутки, что дает примерно 10 ТБ в год. Таким образом, ресурса этого SSD должно хватить примерно на 7,5 лет. Для подключения используется интерфейс SATA. Купить диск можно за 3600 рублей. А его форм-фактор 2,5 дюйма позволит использовать его и в «стационарнике», и в ноутбуке.

Intel SSDPEKKW128G8XT с разъемом М.2

Если же на первом месте стоит компактность и экономия места, то можно рассмотреть SSD с М.2. В пределах 5000 рублей можно купить Intel SSDPEKKW128G8XT. Intel SSDPEKKW128G8XT с разъемом М.2 Это диск с разъемом М.2 и размером 2280. Надо учесть, что свободного места от разъема до ближайшего компонента должно быть больше 80 мм. Тип памяти — TLC. Общий размер диска — 120 Гб.

Этот диск интересен тем, что подключается с помощью интерфейса PCI-E с 4-мя каналами через разъем М.2. А это означает, что шина не ограничивает возможности SSD и в полной мере позволяет выдавать отличную скорость записи и чтения — которые, кстати, заявлены производителем в 650 МБ/с для записи и 1640 МБ/с для чтения. Общий ресурс составляет 72 ТБ данных. Стоит устройство 4290 рублей.

В целом, цены более 5000 рублей по своей сути не подразумевают больших скачков в плане производительности. Меняется лишь общий объем диска. Кстати, для SSD показатель объема влияет и на долговечность. Например, диск в 120 ГБ при ежедневной записи в 30 ГБ прослужит примерно 7,5 лет. При таком же ритме записи устройство с объемом в 500 ГБ должно прослужить в 4 раза дольше.

Общий совет по выбору можно дать такой: нужен диск только для системы и программ — можно выбрать поменьше, 60 или 120 ГБ, а на другом HDD хранить все данные, фильмы, картинки и прочее. Если планируется хранить все на одном SSD, лучше сразу выбрать его побольше. Интерфейсы PCI-E пока стоят дороже SATA, зато не ограничивают в скорости, поэтому, если позволяет бюджет, лучше выбрать интерфейс PCI-E.

Ответы на часто задаваемые вопросы о диске SSD

За время своего существования SSD успели обрасти мифами и легендами, а также постоянными вопросами. Несколько из них мы рассмотрим.

Особые правила эксплуатации

Многие уверены, что при правильном использовании диска можно увеличить его срок службы. Сюда входят различные оптимизации — отключение кэшей, индексирования, файла подкачки, выполнение дефрагментирования. На самом деле, в значительной степени эти действия на ресурс SSD не повлияют. Скорее, снижение общей производительности за счет отключения функционала будет менее оправдано, нежели увеличенный на пару десятков гигабайт общий ресурс.

Единственное, что можно посоветовать — делать бэкапы: сохранять свои важные данные на альтернативных носителях — облаке или другом диске. Хотя этот совет применим ко всем носителям в принципе.

Чем SSD отличается от HDD

Скорость чтения и записи, ударо- и вибростойкость, уровень шума, потребление энергии и вес. Это главные преимущества SSD перед HDD.

Что такое TRIM в SSD

TRIM – инструкция для интерфейсов ATA, которая позволяет операционной системе сообщать диску о том, какие блоки памяти можно не использовать и считать пустыми. Зачем она нужна SSD накопителям? Введена она была в связи со спецификой работы твердотельных дисков. При записи новых данных в ячейку, SSD не может просто взять и заменить старые данные на новые.

Ему приходится сначала считать данные в кэш, очищать ячейку, а затем уже записывать — при этом скорость доступа уменьшается в разы. TRIM решила эту проблему. Система и накопитель постоянно обмениваются информацией о том, какие ячейки больше не нужны, и по сигналу TRIM производит обнуление этих ячеек. При следующей записи SSD уже просто сразу спокойно пишет в нее данные.

Нужен ли SSD для игр

Тут тоже не все так просто. Во-первых, значимого прироста FPS в играх от использования SSD можно не ждать. Актуальным твердотельный накопитель будет при стартовых загрузках миров и уровней — локации будут грузиться быстрее. Есть вероятность, что ССД накопитель может помочь в случаях, когда производительность упирается в объем оперативной памяти, когда эти данные скидываются в файл подкачки. Но менять в такой ситуации HDD на SSD вместо наращивания «оперативки» — сомнительное удовольствие. Кстати, есть интересное видео тестирования популярных игр на разных дисках:

Если у вас есть опыт обращения с SSD, то вы можете поделиться им с другими пользователями в комментариях.

Как устроен SSD — разбираемся в деталях

SSD-накопители стали логичным продолжением эволюции устройств для хранения информации. Новые требования к производительности не могли не сказаться на техническом устройстве SSD-накопителей. Их внутреннее наполнение кардинально изменилось по сравнению с привычным жестким диском.

Корпус


Корпус устройства — неотъемлемая часть накопителя, которая призвана защитить хрупкие внутренние детали. В зависимости от используемого форм-фактора накопителя его внешняя оболочка может кардинально различаться. Так устройства форм-фактора M.2 могут иметь в своем арсенале лишь бумажную или металлизированную наклейку, нанесенную поверх компонентов, или же цельный металлический радиатор как и модели с физическим интерфейсом PCI-E. Основной упор в этом случае возлагается на снижение температуры SSD, а его физическая защита уходит на второй план.


Что касается накопителей форм-фактора 2.5, ситуация диаметрально противоположная. В основном, они поставляются в стандартных пластиковых кейсах, которые защищают внутренности накопителя при неаккуратном обращении. И даже падение устройства не станет для него фатальным в отличие от тех же жестких дисков. Устройствам с интерфейсом SATA свойственен невысокий нагрев, поэтому производители зачастую пренебрегают добавлением каких-либо термопрокладок. Единственным теплоотводом служит непосредственно корпус.

У пользователя, впервые увидевшего разобранный SSD 2.5, может возникнуть резонный вопрос: для чего такой большой корпус, если SSD такой мальенький? Виной тому унификация устройства. Этот формат позволяет устанавливать SSD-накопители в старые ноутбуки или системные блоки, в посадочные места, предназначенные для жестких дисков форм-фактора 2.5. Это позволяет пользователю модернизировать свой ПК минимальными средствами. Также производители получают некоторый «карт-бланш» для размещения внутренних компонентов SSD, так как остается запас пространства для увеличения печатной платы. Различие между разными моделями SSD кроме внутренних компонентов сводится к наклейке, нанесенной на корпус. Она содержит в себе техническую информацию и служит гарантийной пломбой.

Снятие наклейки лишает возможности гарантийного обслуживания.

Интерфейс подключения


HOST Interface — часть накопителя, отвечающая за подключение устройства к системе. SSD-накопители форм-фактора 2.5 имеют стандартные разъемы, свойственные жестким дискам. Для подключения используются два привычных SATA-разъема. Это семиконтактный разъем для подключения шины данных и пятнадцатиконтактный — для подключения питания. Передача данных осуществляется от контроллера к системе и обратно путем использования двух каналов передачи данных. Этот тип подключения имеет ограничение пропускной способности в 6 Гбит/с. Преимущество разъемов SATA — обратная совместимость SATA III и SATA II. Это позволяет подключить современный накопитель к плате, которой уже немало лет.


Для подключения SSD-накопителей форм-фактора M.2 используется современный интерфейс, разработанный как компактная альтернатива SATA-разъему. Все необходимое питание для работы устройства обеспечивается материнской платой. Данный интерфейс имеет в своем распоряжении 75 позиций контактов. В зависимости от конкретной модели часть этих позиций удалена слева, справа или с обеих сторон, образуя соответствующие разрезы. Эти разрезы обозначают ключ, используемый в накопителе: B, M или B&M. Накопители форм-фактора M.2 могут подключаться посредством интерфейса SATA или PCI-Express.

Печатная плата


Печатная плата — базовая основа, на которой располагаются элементы внутренней начинки накопителя. Она представляет собой пластину из диэлектрика с электропроводящими цепями электронной схемы. Компоненты на плате соединены посредством проводящего рисунка и пайки. Размер печатной платы может варьироваться в зависимости от конкретной модели и исполнения. В свою очередь размещение микросхем может быть произведено как лишь на одной стороне платы, так и с обеих сторон.

Контроллер памяти


NAND-controller — «сердце» SSD-накопителя, от которого напрямую зависит производительность устройства. Этот чип — связующее звено между флэш-памятью и непосредственно системой. С помощью него осуществляется обмен данными, операции чтения и записи, шифрование файлов, исправление ошибок и многое другое. Для работы контроллера с завода в него вшита микропрограмма, для которой периодически выпускаются обновления. Служат они для более стабильной и оптимизированной работы устройства. Зачастую производители намеренно не указывают модель установленного контроллера в устройстве, так как он может меняться в зависимости от ревизии. Пользователю остаются лишь программные методы идентификации используемой начинки или снятие наклейки на свой страх и риск.

Флэш-память


Микросхемы флэш-памяти, как правило, занимают подавляющую часть печатной платы и могут иметь разнообразнейшую компоновку. И это неудивительно, ведь они хранят в себе всю информацию, которую пользователь записывает на SSD-накопитель. Самой массовой вариацией флэш-памяти, используемой в накопителях, является 3D NAND с многослойной структурой ячеек памяти. А от типа памяти NAND напрямую зависит долговечность накопителя и его характеристики. Существуют четыре типа NAND памяти: SLC, MLC, TLC и QLC. Различаются они количеством бит информации, хранящихся в одной ячейке, — соответственно от одного до четырех. И правило «чем больше, тем лучше» здесь не работает. Более высокая плотность информации в ячейке ведет к ухудшенным характеристикам памяти и снижению ресурса накопителя.

DRAM кэш и конденсаторы


DRAM кэш представляет собой отдельную микросхему, которая по функционалу напоминает оперативную память компьютера. Она ускоряет работу накопителя, используя некоторый объем памяти для временного хранения данных. Такой подход позволяет ускорить доступ к файлам и стабилизировать износ памяти. Этот чип отсутствует в большинстве бюджетных решений.

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

Как работает SSD-диск?

Мы очень часто обсуждаем разницу между разными типами NAND- структур - вертикальных NAND и плоскостных, многоуровневых ячеек (MLC) и трехуровневых ячеек (TLC). Но мы еще ни разу не сели и не поговорили о более простом и фундаментально уместном вопросе: как, в первую очередь, работает SSD?

Чтобы понять, чем отличаются SSD от вращающихся дисков, нам нужно немного поговорить о жестких дисках. Жесткий диск хранит данные на вращающихся магнитных дисках, называющихся пластинами. Там есть манипулятор на электроприводе с прикрепленными головками чтения/записи. Этот манипулятор направляет головки над нужным участком диска для чтения или записи информации.

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

С самого начала было понятно, что жесткие диски не смогут предоставить необходимую скорость для мгновенной скорости работы компьютера. Задержка HDD измеряется в миллисекундах, в то время, как задержка работы процессора измеряется в наносекундах. Одна миллисекунда это 1,000,000 наносекунд, а у жесткого диска уходит около 10-15 миллисекунд на то, чтобы найти данные и начать их считывать. Индустрия жестких дисков представила более маленькие пластины, дисковое пространство, более высокую скорость вращения, чтобы хоть как-то ускорить работу диска, но есть предел скорости работы таких дисков. Семейство VelociRaptor от Western Digital вращается со скоростью 10,000 оборотов в секунду, а это самый быстрый диск за всю историю потребительского рынка (некоторые корпоративные могут разгоняться и до 15,000). Проблема в том, что несмотря на скорость вращения, диск все еще значительно медленней, чем процессор.

Чем отличается SSD

"Если бы я спросил, чего хотят люди, они бы сказали, что более быстрых лошадей". Генри Форд.

Твердотельные накопители названы так потому, что не полагаются на подвижные части вращающихся дисков. Вместо этого, данные сохраняются в пул NAND памяти. Память NAND сама по себе состоит из так называемых транзисторов с плавающим гейтом. В отличие от транзисторных конструкций, которые используются в DRAM, нуждающемуся в обновлении несколько раз в секунду, память NAND разработана для удержания прежнего заряда даже если питания нет. Это делает NAND памятью, независимой от энергии.

Как работает SSD-диск?

Диаграмма выше показывает дизайн простой флеш-ячейки. Электроны, хранящиеся на плавающем гейте, который впоследствии считывает заряженный транзистор как "1", а не заряженный как "0". И да, в NAND памяти 0 означает наличие информации, в отличие от классической двоичной системы. NAND память образует сетку. Весь макет сетки называется блоком, а отдельные строки, которые составляют сетку, называются страницами. Обычно страницы бывают таких размеров: 2К, 4К, 8К, и 16К, а на каждом блоке по 128 или 256 страниц. Размер блока колеблется от 256КБ до 2Мб.

Одно из преимуществ этой системы должно сразу бросаться в глаза. Из-за того, что в SSD нет подвижных частей, они могут работать на скоростях, недоступных для обычного HDD. На таблице показана задержка доступа на обычном носителе в миллисекундах.

Как работает SSD-диск?

NAND даже рядом не стоит с основной памятью, но она на несколько порядков быстрей, чем обычный жесткий диск. В то время, как задержки NAND памяти при записи значительно больше задержек при чтении, они все еще опережают обычный диск.

В таблице выше можно заметить две вещи. Во-первых, обратите внимание, как добавив больше бит в ячейку, NAND оказывает существенное влияние на производительность памяти. Записывает, впрочем, хуже, чем читает - типичная трехуровневая ячейка (TLC) в 4 раза хуже в сравнении с одноуровневой ячейкой (SLC) NAND при чтении, и в 6 раз хуже при записи. Задержка при вытирании также сильно снижена. Воздействие не пропорционально, TLC NAND почти в два раза медленней, чем MLC NAND, несмотря на удержание всего на 50% больше данных (три бита на ячейку вместо двух).

Как работает SSD-диск?

Напряжение TLC NAND

Причина такой низкой скорости TLC NAND в сравнении с MLC или SLC заключается в том, как данные перемещаются с/на ячейку NAND. C SLC NAND, контроллеру нужно только знать, чему равен бит - 0 или 1. С MLC NAND, ячейка может иметь четыре значения - 00, 01, 10, или 11. С TLC NAND, ячейка может иметь уже восемь значений. Чтение правильного значения с ячейки требует от контроллера памяти использования очень точного напряжения, чтобы удостовериться в заряженности ячейки.

Чтение, запись, cтирание

Одно из функциональных ограничений SSD заключается в том, что чтение и запись с/на пустой диск происходит очень быстро, а вот перезапись информации в разы медленней. Это из-за того, что когда SSD читает информацию на уровне страницы (в значении отдельных строк в памяти типа NAND) и могут записывать тоже на уровне страницы, предполагая, что окружающие ячейки пусты, они могут удалять данные только на уровне блоков. Это потому, что акт стирания NAND памяти требует большого напряжения. Хотя теоретически вы можете стереть NAND память на уровне страниц, объем требуемого напряжения устанавливается запросом отдельных ячеек вокруг ячейки, которая переписывается. Стирание данных на уровне блока помогает смягчить эту проблему.

Единственный способ для SSD обновить существующие страницы - просто скопировать содержимое всего блока в память, стереть блок, а затем записать содержимое блока назад + обновленные страницы. Если диск полон, и нет доступных пустых страниц, SSD сначала должен просканировать блоки, которые помечены для удаления, но еще не были удалены, вытереть их, и записать на их место новые данные. Вот почему SSD со временем становятся медленней - по сути, пустой диск полон блоков, которые могут быть мгновенно переписаны, а почти полный диск более вероятно будет вынужден пройти всю последовательность программы "вытри-запиши".

Если вы пользовались SSD, вы, вероятно слышали о чем-то под названием "накопление мусора". Мусор - это фоновой процесс, который позволяет диску смягчать влияние на производительность цикла "вытри-запиши" путем выполнения определенной задачи в фоновом режиме. На изображении показывается процесс накомления мусора.

Как работает SSD-диск?

Обратите внимание, что на этом примере привод пользуется тем, что он может писать очень быстро, опустошая страницы и записывая новые значения для первых четырех блоков (A-D). Он также записал два новых блока - Е и Н. Блоки A-D теперь отмечены как устаревшие, а это означает, что они хранят информацию, которая значится в памяти диска как "устаревшая". Во время неактивного периода, SSD будет двигать новые страницы в новый блок, вытирая старый блок, и помечая его как пустое место. Это означает, что в следующий раз, когда SSD понадобится произвести запись, он может записать прямо на уже пустой блок Х, вместо того, чтобы произвести цикл "вытри-запиши".

Следующая концепция, которую следует упомянуть, это TRIM. Когда вы удаляете файл с Windows на простом диске, файл удаляется не мгновенно. Вместо этого, операционная система сообщает диску, что он может перезаписать физическое место на диске, где был файл в следующий раз, когда ему понадобится место. Вот почему можно восстановить файлы (и именно потому удаление файлов не освобождает место на диске, пока вы не очистите корзину). С традиционным HDD, ОС не нужно следить за тем, куда записывается информация, или какое относительное состояние блоков и страниц. С SSD, это важно.

Команда TRIM позволяет операционной системе говорить SSD, что он может пропустить перезапись некоторых данных в следующий раз, когда будет производить очистку блока. Это уменьшает общее количество данных, которые диск записывает и повышает долговечность SSD. Чтение и запись повреждают NAND память, но запись наносит гораздо больше вреда, чем чтение. К счастью, долговечность на блочном уровне не была проблемой для современных NAND носителей. Больше информации о долговечности SSD любезно предоставлено вот здесь.

Последние две концепции, о которых стоит упомянуть - выравнивание износа и усиление записи. Поскольку SSD записывают данные на страницы, но удаляют блоками, количество данных, записанных на носитель, всегда больше, чем фактическое обновление. Если вы вносите изменение в 4Кб файл, например, весь блок, который занимает этот файл, будет вытерт и переписан с обновлением. В зависимости от количества страниц на блок и размер каждой из них, вы можете вытереть целых 4Мб данных, чтобы просто обновить несчастные 4Кб. Сборка мусора понижает влияние на увеличение объема записи, как это делает и команда TRIM. Сохраняя значительную часть диска свободной, и/или заводское избыточное выделение ресурсов также может снизить влияние на увеличение объема записи.

Выравнивание износа относится к практике обеспечения того, чтобы определенные блоки памяти NAND не записывались/стирались чаще, чем другие. Во время выравнивания износа, в равной степени увеличивается продолжительность жизни и надежность записи на памяти NAND, что, фактически, может увеличить прирост объема записи. В другом случае, при распределении операции записи равномерно по всему диску, иногда необходимо программировать и вытирать блоки даже если их содержимое никогда не обновлялось. Хороший алгоритм выравнивания износа направлен на поиск этого баланса.

Контроллер SSD

Как работает SSD-диск?

Типичный контроллер SDD

SDD контроллеры, как бы там ни было, нами представляют свой класс. Они часто снабжены пулом DDR3 памяти, чтобы помочь NAND разбираться самой с собой. Много дисков также включают одноуровневые ячейки кэша, которые действуют как буферы, повышая производительность диска путем выделения быстрой NAND-памяти для чтения/записи циклов. Из-за того, что NAND память в SSD очень часто связана с контроллером посредством серии параллельных каналов памяти, вы можете подумать, что контроллер диска выполняет функции балансира в высокопроизводительном массиве памяти. SSD не развертывают RAID внутренне, но технология выравнивания износа, накопление мусора и управление кэшем SLC имеют аналоги в большом железном мире.

Некоторые диски также используют алгоритмы сжатия данных для уменьшения общего числа операций записи и улучшения продолжительности жизни привода. Контроллер SSD обрабатывает коррекци ошибок и алгоритмы управления для однобитных ошибок, по прошествии определенного времени, становятся все более сложными.

К сожалению, мы не можем вдаваться в подробности устройства контроллеров SSD, так как разные компании по-своему скрывают свои секреты. Большая часть производительности NAND памяти определяется базовым контроллером, и компании не готовы слишком уж срывать завесу таинственности со своей техники, чтобы не вручить конкуренту преимущество прямо в руки.

Дорога впереди

Память NAND предлагает огромный прирост производительности по сравнению с жесткими дисками, но не без собственных недостатков и проблем. Емкость дисков и цена за гигабайт, как ожидается, будут повышаться и падать соответственно, но вероятность того, что SSD догонит HDD по этим параметрам, крайне мала. Усадка узлов это серьезная проблема для памяти NAND, в то время, как большинство аппаратного обеспечения улучшается с уменьшением узла, NAND становится все более хрупкой. Время сохранения данных и производительность записи неразрывно ниже для 20нм NAND, в сравнении с 40нм NAND, даже если плотность и суммарная мощность значительно улучшена.

К настоящему времени, производители SSD добились лучшей производительности, приняв более быстрые стандарты информации, высокую пропускную способность, и больше каналов на каждый контроллер, плюс, использование SLC кэша, о котором говорилось ранее. Тем не менее, в долгосрочной перспективе, предполагается, что NAND будет заменена на что-то совершенно другое.

А на что это "другое" будет похоже пока что остается темой для обсуждения. И магнитные RAM и память с изменением фазы обе зарекомендовали себя как возможные кандидаты, хотя обе технологии находятся на ранней стадии разработки, и должны преодолеть множество трудностей, чтобы конкурировать в качестве замены NAND-памяти. Заметит ли потребитель разницу - вопрос открытый. Если вы обновились с NAND на SSD, а затем прикупили более быстрый SSD, вы знаете, что разрыв между HDD и SSD гораздо больше, чем между SSD и SSD, даже при переходе со сравнительно более скромного носителя. Улучшение времени доступа с миллисекунд до микросекунд имеет большое значение, но прыжок с миллисекунд на наносекунды едва ли можно засечь человеческим разумом.

Сейчас NAND-память является царем горы, и будет оставаться таковой еще лет 5, как минимум.

Как работает диск SSD и как он конкурирует с новейшими технологиями, такими как технология энергонезависимого хранения Intel Optane ?

Чтобы понять, чем и почему SSD-диски отличаются от вращающихся, необходимо сказать несколько слов о диске HDD . Жесткий диск хранит данные на нескольких вращающихся магнитных дисках, называемых пластинами. К нему прикреплен рычаг привода с головками чтения/записи. Этот рычаг позиционирует головки над правильной областью привода для чтения или записи информации.

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

С самого начала было ясно, что жесткие диски не смогут соответствовать скоростям, на которых могут работать процессоры. Задержка в жестких дисках измеряется в миллисекундах по сравнению с наносекундами для типичного процессора. Одна миллисекунда составляет 1 000 000 наносекунд, и обычно на жесткий диск уходит 10-15 миллисекунд, чтобы найти данные на диске и начать их чтение. Производители жестких дисков совершенствуют технологии для увеличения быстродействия: делают меньше размер пластины, устанавливают дополнительную кэш-память на диске и увеличивают скорости вращения шпинделя. Линейка продуктов VelociRaptor компании Western Digital имеет скорость вращения 10 000 об/мин, что является самой быстрой скоростью вращения шпинделя на потребительском рынке HDD. Некоторые диски для корпоративных целей вращаются со скоростью до 15 000 об/мин. Однако, даже самый быстрый вращающийся диск с самыми большими кэшами и самыми маленькими жесткими дисками все еще мучительно медленен для процессора.

Чем отличаются SSD

Твердотельные накопители называются именно так, потому что они не зависят от движущихся частей или вращающихся дисков. Вместо этого, данные сохраняются в пул флеш-памяти NAND. Сама NAND состоит из так называемых транзисторов с плавающим затвором. В отличие от конструкции транзисторов, используемых в DRAM, которые должны обновляться несколько раз в секунду, флеш-память NAND предназначена для сохранения информации даже при отсутствии питания. Это делает NAND типом энергонезависимой памяти.

Диаграмма выше показывает простой дизайн флеш-ячейки. Электроны хранятся в плавающем затворе, который затем читается как заряженный «0» или незаряженный «1». Именно так, во флеш-памяти NAND «0» означает, что данные хранятся в ячейке, это противоположно тому, как мы обычно думаем о «0» или «1». NAND flash организован в виде сетки. Весь макет сетки называется блоком, а отдельные строки, составляющие сетку, называются страницами. Типичные размеры страниц: 2 КБ, 4 КБ, 8 КБ или 16 КБ, от 128 до 256 страниц на блок. Поэтому размер блока обычно варьируется от 256 КБ до 4 МБ.

В приведенной выше таблице есть две вещи, на которые следует обратить внимание. Во-первых, обратите внимание, как добавление большего количества бит на ячейку NAND оказывает существенное влияние на производительность памяти. Причем, влияние на задержку записи больше, чем на задержку чтения. Типичная задержка трехуровневой ячейки (TLC) в 4 раза больше по сравнению с NAND одноуровневой ячейки (SLC) для чтения и в 6 раз больше для записи. Задержки стирания также значительно различаются. Влияние также не пропорционально - TLC NAND почти в два раза медленнее, чем MLC NAND, несмотря на то, что он содержит только на 50% больше данных (три бита на ячейку вместо двух). Это также верно для приводов QLC, которые хранят еще больше битов при разных уровнях напряжения в одной ячейке.

Причина, по которой TLC NAND медленнее, чем MLC или SLC, связана с тем, как данные перемещаются в ячейку NAND и выходят из нее. При использовании SLC NAND контроллер должен знать только, является ли бит 0 или 1. При использовании MLC NAND ячейка может иметь четыре значения - 00, 01, 10 или 11. При использовании TLC NAND ячейка может иметь восемь значений и QLC имеет 16 значений. Для считывания правильного значения из ячейки контроллер памяти должен использовать точное напряжение для определения того, заряжена ли какая-либо конкретная ячейка.

Чтение, запись и стирание

Одним из функциональных ограничений твердотельных накопителей является то, что перезапись данных происходит намного медленнее, чем считывание и запись на пустой диск. Это связано с тем, что твердотельные накопители считывают данные на уровне страницы (т.е. из отдельных строк в сетке памяти NAND) и могут записывать на уровне страницы, если соседние ячейки пусты. Но стирать данные они могут только на уровне блоков. Для стирания NAND флеш–памяти требуется высокое напряжение. Хотя теоретически можно стереть NAND на уровне страницы, требуемая величина напряжения воздействует на соседние ячейки вокруг перезаписываемых. Стирание данных на уровне блоков помогает избежать этой проблемы.

Единственный способ для SSD обновить существующую страницу - скопировать содержимое всего блока в память, стереть блок, а затем записать содержимое старого блока + обновленную страницу. Если накопитель заполнен и нет доступных пустых страниц, твердотельный накопитель должен сначала проверить блоки, помеченные для удаления, но еще не удаленные, стереть их, а затем записать данные на стертую страницу. Вот почему твердотельные накопители могут становиться медленнее по мере заполнения - почти пустой диск заполнен блоками, которые можно записать немедленно, а почти полный диск будет проходить через всю последовательность операций по проверке–копированию–стиранию–записи.

Если вы использовали твердотельные накопители, вы, вероятно, слышали о так называемой «сборке мусора» (garbage collection). Сборка мусора - это фоновый процесс, который позволяет диску снизить влияние на производительность цикла проверка–копирование–стирание–запись, выполняя определенные задачи в фоновом режиме.

Сборка мусора (англ. garbage collection) в программировании — одна из форм автоматического управления памятью. Специальный процесс, называемый сборщиком мусора (англ. garbage collector), периодически освобождает память, удаляя объекты, которые уже не будут востребованы приложениями.

Поговорим о TRIM

TRIM (англ. to trim — подрезать) — команда позволяющая операционной системе уведомить твердотельный накопитель о том, какие блоки данных не несут полезной нагрузки и их можно не хранить физически.

Когда вы удаляете файл из Windows на обычном жестком диске, файл не удаляется сразу. Вместо этого операционная система сообщает жесткому диску, что она может перезаписать физическую область диска, на которой эти данные были сохранены, в следующий раз, когда ей потребуется выполнить запись. Вот почему можно восстановить файлы (и почему удаление файлов в Windows обычно не освобождает много места на физическом диске, пока вы не очистите корзину). С традиционным жестким диском ОС не нужно обращать внимание на то, где записываются данные или каково относительное состояние блоков или страниц. С SSD это важно.

Команда TRIM позволяет операционной системе сообщить SSD, что она может пропустить перезапись определенных данных при следующем удалении блока. Это снижает общий объем данных, которые записывает диск, и увеличивает срок службы SSD. И чтение, и запись повреждают флеш-память NAND, но запись наносит гораздо больший ущерб, чем чтение. К счастью, долговечность на уровне блоков не является проблемой современной флеш-памяти NAND.

Выравнивание износа и усиление записи

Поскольку твердотельные накопители записывают данные на страницы, но стирают данные в блоках, объем данных, записываемых на накопитель, всегда превышает фактическое обновление. Например, если вы вносите изменения в файл размером 4 КБ, весь блок, в котором находится файл 4 КБ, должен быть обновлен и переписан. В зависимости от количества страниц в блоке и размера страниц, может понадобиться записать данные объемом 4 МБ для обновления файла 4 КБ. Сборка мусора уменьшает влияние усиления записи, как и команда TRIM. Сохранение значительной части диска свободной и/или дополнительное выделение ресурсов производителем также может снизить влияние усиления записи.

Усиление записи (Write amplification) является нежелательным явлением, связанным с флеш-памятью и твердотельными накопителями (SSD), когда фактический объем информации, физически записываемый на носитель, превышает объем, предназначенный для записи.

Выравнивание износа используется для обеспечения равномерности записи/стирания блоков NAND, т.е. чтобы одни блоки не записывались и стирались чаще, чем другие. Несмотря на то, что выравнивание износа увеличивает ожидаемый срок службы диска и его долговечность за счет одинаковой записи в NAND, оно может фактически увеличить усиление записи. В других случаях для равномерного распределения записей по диску иногда необходимо записывать и удалять блоки, даже если их содержимое фактически не изменилось. Хороший алгоритм выравнивания износа стремится сбалансировать эти воздействия.

Контроллер SSD

Теперь становится понятно, что твердотельные накопители требуют гораздо более сложных механизмов управления, чем жесткие диски. Однако и у HDD есть свои технологические сложности. Например, механические проблемы, связанные с балансировкой нескольких головок чтения-записи в нанометрах над пластинами, которые вращаются со скоростью от 5400 до 10000 оборотов в минуту. Тот факт, что жесткие диски справляются с этой задачей, просто невероятен. Между тем стоимость HDD остается ниже стоимости SSD.

Контроллеры SSD имеют пул памяти DDR3 или DDR4, чтобы эффективней управлять самой NAND. Многие накопители также содержат одноуровневые кэши ячеек, которые действуют как буферы, увеличивая производительность накопителя, выделяя быстрые NAND для циклов чтения/записи. Некоторые накопители используют алгоритмы сжатия данных для уменьшения общего числа операций записи и увеличения срока службы накопителя. Контроллер SSD исправляет ошибки. Алгоритмы коррекции ошибок совершенствуются.

Производители SSD дисков не разглашают техническую информацию об алгоритмах, применяемых в контроллерах SSD. Большая часть производительности флеш-памяти NAND определяется базовым контроллером, и компании не хотят раскрывать ноу–хау, чтобы не дать конкурентам преимущество.

Интерфейсы

Сначала SSD использовали порты SATA, как и жесткие диски. В последние годы мы наблюдаем переход к дискам M.2 - очень тонким дискам длиной в несколько сантиметров, которые вставляются непосредственно в материнскую плату (или, в некоторых случаях, в монтажный кронштейн на переходной плате PCIe).

Читайте также: