Как работает твердотельный накопитель (SSD), контроллер и Flash (Nand) память
SSD очень быстрое запоминающее устройство и если разобрать его, то можно увидеть что он представляет собой печатную плату, с множеством чипов Flash памяти, типа NAND, именно они хранят информацию, а рядом с ними распаиваются контроллер и dram память. Контроллер отвечает за связь накопителя с компьютером и осуществляет операции чтения/записи, а DRAM служит как небольшой кэш и ускоряет доступ к данным.
В некоторых SSD на обратной стороне или на отдельной плате размещаются дополнительные чипы памяти и ряд ёмких конденсаторов, они позволяют безопасно выключить устройство при резком отключении питания. (Аппаратный PLP)
Другие твердотельные накопители, такие как usb-накопители и карты памяти имеют похожее строение, только в них нет dram, меньше чипов памяти и устанавливается менее производительный контроллер.
Чтобы более детальней понять их работу, нужно рассмотреть как работает чип Flash памяти. Разобрав его, видно что состоит он из множества кристаллов,
если подробней рассмотреть один из них, то видно что большую часть кристалла занимает массив ячеек и лишь небольшая область отводится под буфер и логику.
Если проникнуть внутрь кристалла, то видно что он имеет трёхмерную структуру, состоящую из рядов вертикально уложенных ячеек Флеш памяти,
если разобрать одну отдельную ячейку, то её строение покажется запутанным, к тому же у разных производителей, принцип работы может отличаться по способу подачи тока и чтения данных из ячейки.
Так что лучше представить её в виде схемы, так легче понять что ячейка представляет собой транзистор с двумя изолированными затворами: управляющим и "плавающим". Плавающий затвор способен удерживать внутри себя электроны, тем самым делая из транзистора ячейку памяти.
Чтобы записать информацию, на сток и управляющий затвор подается высокое напряжение, это позволяет электронам пройти сквозь диэлектрик и остаться на плавающем затворе.
Для удаления заряда, на управляющий затвор подается высокое отрицательное напряжение, а на исток — положительное.
Каждый такой цикл записи и стирания разрушает слой диэлектрика, так что число перезаписи на ячейку ограничено.
Считывание не приводит к этому эффекту и проверять что записано в ячейке, ноль или единица, можно сколько угодно раз для этого, на управляющий затвор подаётся напряжение и проверяется, может ли идти ток по транзистору:
Если на плавающем затворе много электронов, то ток идти не будет, значит это единица. Если их немного, то ток пойдет, значит это ноль.
(у некоторых производителей, ячейка может считываться наоборот)
Так считываются одноуровневые ячейки SLC, если же материал плавающего затвора способен захватить много электронов, а электроника способна размещать на плавающем затворе разные уровни зарядов и распознать несколько пороговых напряжений, то такая ячейка может хранить несколько бит информации. Например QLC ячейки могут хранить 4 бита информации, но для этого нужно различать 16 пороговых напряжений.
(Информация с SLC ячеек считывается и отправляется на контроллер почти без задержек. Чипы с QLC ячейками имеют внутреннею задержку в связи с необходимостью формирования специального сигнала для каждой ячейки и распознавания его)
Ко всему этому, чтобы уместить на кристалл как можно больше ячеек, их группируют соединяя последовательно и с обоих сторон подключают обычные транзисторы, принципиальная схема массива выглядит примерно так,
но в самом кристалле, массив имеет трёхмерную структуру. Ячейки, находящиеся на одной разрядной линии, образуют страницу размером в 4 килобайта, это минимальная область с которой можно считать или записать данные
Множество страниц формируют блок, размером 512 килобайт, это минимальная область которая может быть стёрта. То есть, если нужно переписать информацию всего лишь одной страницы, придётся стирать данные аж с целого блока и потом снова записывать.
Такие ограничения существует из-за архитектуры nand памяти, а так как таких блоков очень много, всеми операциями чтения записи руководит контроллер, он управляет структурой размещения данных и контролирует состояние ячеек, распределяя данные так чтобы одни ячейки не использовались чаще других, тем самым увеличивая срок службы накопителя.
Если посмотреть на блок схему типичного контроллера, то видно что он состоит из 32 битного RISC процессора который выполняет инструкции микропрограммы и может иметь до 4 ядер. Так же есть ddr контроллер отвечающий за работу с внешним DRAM-буфером, есть блок ecc, отвечающий за обнаружение и коррекцию ошибок, есть блоки интерфейсов отвечающие за обмен данными с чипами памяти и внешними интерфейсами и есть блоки отвечающие за шифрование и другие функции, которые могут меняться в зависимости от необходимого функционала.
Помимо контроллера, на скорость накопителя влияет интерфейс подключения. Существует множество форм-факторов SSD с разными интефейсами подключения и разной скоростью, но чаще всего в обычных компьютерах используются 2,5-дюймовые SSD или формата m2.
2,5-дюймовые SSD имеют интерфейс SATA, третьего поколения, такой интерфейс обеспечивает пропускную способность до 600 Мбайт/с. Накопители mSATA (mini-SATA) имеют такой же интерфейс.
В SSD M.2 используется один из двух интерфейсов: SATA3 или PCIe. В зависимости от количества выделенных линий и версии PCIe скорость может отличаться. Например PCI-E третей версии и с четырьмя выделенными линиями имеет пропускную способность до 4ГБ/с.
Так же такие накопители имеют несколько вариантов ключей. Есть накопители с B, M и B+M коннекторами.
В SSD M.2 используется один из двух интерфейсов: SATA3 или PCIe. В зависимости от количества выделенных линий и версии PCIe скорость может отличаться. Например PCI-E третей версии и с четырьмя выделенными линиями имеет пропускную способность до 4ГБ/с.
Так же есть SSD в виде платы расширения которые подключаются напрямую в PCI-Express слот материнской платы. Некоторые модели таких накопителей могут использовать 8 и даже 16 линий слота PCIe, что даёт пропускную способность выше 6ГБ/с.
Кроме этого есть ещё много разных форм факторов, например U2, U3, NF1, и другие (EDSFF, 1.8 дюймовые), но ничем серьёзным, кроме размеров и коннекторов они не отличаются, да и используются они в основном в серверах и рабочих станциях.
Так же, хочется сказать что существует ещё один вид SSD накопителей, в которых вместо чипов Flash памяти используются чипы с технологией 3D crosspoint, в них в качестве ячеек не используются транзисторы с плавающим затвором и такие накопители быстрей обычных, но к сожалению у меня мало информации про эту технологию, так что на этом у меня всё.
#3d #ssd #pc #железо #память #hardware #компьютеры #flash #разбор #nand #art
Крутой материал. Кратко, по делу, с красивыми картинками.
Пикабу завирусился:
Комментарий недоступен
Когда это читаешь, чувствуешь себя, по уровню развития, майским жуком. Бля, как это всё придумали, как додумались. Компы считают хулиарды инфы за доли секунды блять. А тут сидишь как манда и пытаешься въехать в джаву, хотя это уже высокоуровневая вещь, а чтобы она работала, вырабатывается ток электростанциями, идёт в хату, тут комп в котором используется технологии и материалы, которые без микроскопа и не увидишь, и всё работает. Это просто пиздец. Жалко, что человек такое существо, что привыкает и перестаёт ценить и восхищаться пройденным путём.
А ведь это столько поколений людей, которые двигали науку, чтобы мы в настоящем, могли всем этим пользоваться и опираться на труды коллег.
сиди манда дальше и охуевай.
Комментарий недоступен