Как работает твердотельный накопитель (SSD), контроллер и Flash (Nand) память

Как работает ССД (Видео)

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

Устройство SSD
Устройство SSD

В некоторых SSD на обратной стороне или на отдельной плате размещаются дополнительные чипы памяти и ряд ёмких конденсаторов, они позволяют безопасно выключить устройство при резком отключении питания. (Аппаратный PLP)

Обратная сторона платы
Обратная сторона платы

Другие твердотельные накопители, такие как usb-накопители и карты памяти имеют похожее строение, только в них нет dram, меньше чипов памяти и устанавливается менее производительный контроллер.

Твердотельные накопители
Твердотельные накопители

Чтобы более детальней понять их работу, нужно рассмотреть как работает чип Flash памяти. Разобрав его, видно что состоит он из множества кристаллов,

Кристаллы 3D NAND
Кристаллы 3D NAND

если подробней рассмотреть один из них, то видно что большую часть кристалла занимает массив ячеек и лишь небольшая область отводится под буфер и логику.

Устройство кристалла
Устройство кристалла

Если проникнуть внутрь кристалла, то видно что он имеет трёхмерную структуру, состоящую из рядов вертикально уложенных ячеек Флеш памяти,

Внутри кристалла
Внутри кристалла

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

Устройство ячейки V-NAND
Устройство ячейки V-NAND

Так что лучше представить её в виде схемы, так легче понять что ячейка представляет собой транзистор с двумя изолированными затворами: управляющим и "плавающим". Плавающий затвор способен удерживать внутри себя электроны, тем самым делая из транзистора ячейку памяти.

Схематичное устройство ячейки nand памяти
Схематичное устройство ячейки nand памяти

Чтобы записать информацию, на сток и управляющий затвор подается высокое напряжение, это позволяет электронам пройти сквозь диэлектрик и остаться на плавающем затворе.

Запись в ячейку
Запись в ячейку

Для удаления заряда, на управляющий затвор подается высокое отрицательное напряжение, а на исток — положительное.

Удаление заряда с ячейки
Удаление заряда с ячейки

Каждый такой цикл записи и стирания разрушает слой диэлектрика, так что число перезаписи на ячейку ограничено.

Считывание не приводит к этому эффекту и проверять что записано в ячейке, ноль или единица, можно сколько угодно раз для этого, на управляющий затвор подаётся напряжение и проверяется, может ли идти ток по транзистору:

Считывание ячейки nand памяти (нет заряда)
Считывание ячейки nand памяти (нет заряда)

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

(у некоторых производителей, ячейка может считываться наоборот)

Считывание ячейки nand памяти (есть заряд)
Считывание ячейки nand памяти (есть заряд)

Так считываются одноуровневые ячейки SLC, если же материал плавающего затвора способен захватить много электронов, а электроника способна размещать на плавающем затворе разные уровни зарядов и распознать несколько пороговых напряжений, то такая ячейка может хранить несколько бит информации. Например QLC ячейки могут хранить 4 бита информации, но для этого нужно различать 16 пороговых напряжений.

(Информация с SLC ячеек считывается и отправляется на контроллер почти без задержек. Чипы с QLC ячейками имеют внутреннею задержку в связи с необходимостью формирования специального сигнала для каждой ячейки и распознавания его)

Пороговые напряжения
Пороговые напряжения

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

Матрица ячеек
Матрица ячеек

но в самом кристалле, массив имеет трёхмерную структуру. Ячейки, находящиеся на одной разрядной линии, образуют страницу размером в 4 килобайта, это минимальная область с которой можно считать или записать данные

Страница в 4 килобайта
Страница в 4 килобайта

Множество страниц формируют блок, размером 512 килобайт, это минимальная область которая может быть стёрта. То есть, если нужно переписать информацию всего лишь одной страницы, придётся стирать данные аж с целого блока и потом снова записывать.

Блок размером 512 килобайт
Блок размером 512 килобайт

Такие ограничения существует из-за архитектуры nand памяти, а так как таких блоков очень много, всеми операциями чтения записи руководит контроллер, он управляет структурой размещения данных и контролирует состояние ячеек, распределяя данные так чтобы одни ячейки не использовались чаще других, тем самым увеличивая срок службы накопителя.

Контроллер SSD
Контроллер SSD

Если посмотреть на блок схему типичного контроллера, то видно что он состоит из 32 битного RISC процессора который выполняет инструкции микропрограммы и может иметь до 4 ядер. Так же есть ddr контроллер отвечающий за работу с внешним DRAM-буфером, есть блок ecc, отвечающий за обнаружение и коррекцию ошибок, есть блоки интерфейсов отвечающие за обмен данными с чипами памяти и внешними интерфейсами и есть блоки отвечающие за шифрование и другие функции, которые могут меняться в зависимости от необходимого функционала.

Блок-схема контроллера ССД
Блок-схема контроллера ССД

Помимо контроллера, на скорость накопителя влияет интерфейс подключения. Существует множество форм-факторов SSD с разными интефейсами подключения и разной скоростью, но чаще всего в обычных компьютерах используются 2,5-дюймовые SSD или формата m2.

Интерфейсы накопителей
Интерфейсы накопителей

2,5-дюймовые SSD имеют интерфейс SATA, третьего поколения, такой интерфейс обеспечивает пропускную способность до 600 Мбайт/с. Накопители mSATA (mini-SATA) имеют такой же интерфейс.

Serial ATA (SATA) интерфейс
Serial ATA (SATA) интерфейс

В SSD M.2 используется один из двух интерфейсов: SATA3 или PCIe. В зависимости от количества выделенных линий и версии PCIe скорость может отличаться. Например PCI-E третей версии и с четырьмя выделенными линиями имеет пропускную способность до 4ГБ/с.

M.2 SSD
M.2 SSD

Так же такие накопители имеют несколько вариантов ключей. Есть накопители с B, M и B+M коннекторами.

Варианты ключей M.2
Варианты ключей M.2

В SSD M.2 используется один из двух интерфейсов: SATA3 или PCIe. В зависимости от количества выделенных линий и версии PCIe скорость может отличаться. Например PCI-E третей версии и с четырьмя выделенными линиями имеет пропускную способность до 4ГБ/с.

AiC
AiC

Так же есть SSD в виде платы расширения которые подключаются напрямую в PCI-Express слот материнской платы. Некоторые модели таких накопителей могут использовать 8 и даже 16 линий слота PCIe, что даёт пропускную способность выше 6ГБ/с.

Мало распространённые форм-факторы
Мало распространённые форм-факторы

Кроме этого есть ещё много разных форм факторов, например U2, U3, NF1, и другие (EDSFF, 1.8 дюймовые), но ничем серьёзным, кроме размеров и коннекторов они не отличаются, да и используются они в основном в серверах и рабочих станциях.

3D XPOINT SSD
3D XPOINT SSD

Так же, хочется сказать что существует ещё один вид SSD накопителей, в которых вместо чипов Flash памяти используются чипы с технологией 3D crosspoint, в них в качестве ячеек не используются транзисторы с плавающим затвором и такие накопители быстрей обычных, но к сожалению у меня мало информации про эту технологию, так что на этом у меня всё.
#3d #ssd #pc #железо #память #hardware #компьютеры #flash #разбор #nand #art

298
25 комментариев

Крутой материал. Кратко, по делу, с красивыми картинками.

33
Ответить
11
Ответить

Комментарий недоступен

10
Ответить

Когда это читаешь, чувствуешь себя, по уровню развития, майским жуком. Бля, как это всё придумали, как додумались. Компы считают хулиарды инфы за доли секунды блять. А тут сидишь как манда и пытаешься въехать в джаву, хотя это уже высокоуровневая вещь, а чтобы она работала, вырабатывается ток электростанциями, идёт в хату, тут комп в котором используется технологии и материалы, которые без микроскопа и не увидишь, и всё работает. Это просто пиздец. Жалко, что человек такое существо, что привыкает и перестаёт ценить и восхищаться пройденным путём.
А ведь это столько поколений людей, которые двигали науку, чтобы мы в настоящем, могли всем этим пользоваться и опираться на труды коллег.

10
Ответить

Комментарий недоступен

2
Ответить

Как вообще смогли такое придумать и сделать?У меня такой же вопрос был когда читал про внутреннее устройство CPU и GPU)

3
Ответить