Литмир - Электронная Библиотека
A
A
Журнал "Компьютерра" N733 - pic_41.jpg

Разработчики во главе с упомянутым Фуджио Масуокой решили, что раз потребление при записи удалось снизить, то можно записывать ячейки не индивидуально, а целыми блоками - и тем быстрее, чем крупнее блок. В этой схеме некий массив данных готовится заранее (помещается в специальный временный буфер SRAM, который обычно имеется на том же кристалле, что и основная память), затем все нужные ячейки разом стираются, и разом же в них записывается информация из буфера. Недостатком этого метода стала необходимость перезаписи целого блока, даже если нужно изменить только один бит в одной-единственной ячейке. Но на практике это не вырастает в проблему - основные задачи, которые выполняет энергонезависимая память в современном мире, как раз и заключаются в записи сразу огромных массивов потоковым методом. Вот такая разновидность EEPROM и получила название "flash" - за многократно выросшую скорость записи информации, которая стала сравнима со скоростью чтения.

NAND и NOR

NAND и NOR - англоязычный эквивалент логических функций "И-НЕ" и "ИЛИ-НЕ". Пришедшие из схемотехники, эти термины описывают два разных принципа логического соединения ячеек - отсюда существенная разница и в устройстве, и в функционировании модулей памяти. Первая микросхема flash-памяти, выведенная на рынок компанией Intel в 1988 году (емкостью 32 Кбайт, примерно по $20 за штуку), имела организацию NOR (рис. 4 слева). Все ранние типы EPROM тоже имели подобную структуру. Здесь все просто, как и в DRAM: ячейки в строках матрицы соединены управляющими затворами ("линии слов"), а в столбцах - считывающими линиями, которые здесь носят наименование "линии бит".

В 1989 году Toshiba вывела на рынок первую flash-память NAND-разновидности. Ее структура показана на рис. 4 справа и, как видите, значительно отличается от NOR. Ячейки здесь хоть и содержат все тот же транзистор с плавающим затвором, построены иначе. С точки зрения производства, NAND проще и занимает заметно меньше места, чем NOR. Транзисторов-ячеек в каждой конструкции NAND может быть от 16 до 32 штук, но обычно их объединяют в блоки по 256 или 512 байт, которые читаются и записываются только целиком (512 байт - обычная величина сектора на жестком диске). Иногда блоки имеют нестандартную емкость - например, 264 байта ("лишние" 8 байт могут использоваться для хранения контрольной суммы, с целью повышения надежности операций чтения). Блоки могут объединяться и в большие образования - страницы.

Все это сразу указывает на основное назначение NAND-технологии - для построения систем хранения файлов. В последнее время даже Intel, стойко придерживавшаяся линии на усовершенствование NOR-разновидности, сдалась и совместно с Micron занялась разработкой карт на основе NAND-чипов. NAND сейчас доминирует в области скоростных и емких карт памяти, но и NOR в некоторых областях живет и здравствует (она незаменима, если требуется быстрое выборочное чтение, а акты перезаписи сравнительно редки - во flash-BIOS, SIM-картах, встроенной памяти программ микроконтроллеров и тому подобных применениях).

Дальше, выше, быстрее

Со времен Фуджио Масуоки принципиальная придумка в области технологий была только одна: разработчики воспользовались тем, что в ячейке информация хранится, по сути, в аналоговой форме - в виде некоторого количества электронов (кстати, всего лишь около тысячи штук). Если поделить это количество на несколько градаций и строго дозировать электроны при записи, то в одной ячейке можно хранить не один, как в классической схеме, а сразу много бит информации. Так появились многоуровневые ячейки (multi-level cells, MLC). И хотя схемотехника и изготовление такой flash-памяти гораздо сложнее, но выигрыш очевиден - плотность упаковки возрастает многократно. Кроме того, можно применить так называемую многочиповую упаковку (multi-chip packages, MCP), в чем особенно преуспела Samsung.

Но конечного пользователя, кроме емкости устройств, очень волнует скорость чтения/записи. Собственно, оставаясь в рамках классической компоновки, даже для наиболее быстрой в плане чтения NOR-разновидности невозможно достичь скоростей, превышающих 10-20 Мбайт/с (при этом запись будет осуществляться куда медленнее). С ужесточением технологических норм (а сейчас flash-память делают уже по 60-нанометровой технологии) скорость может еще вырасти, но сами понимаете, это не принципиальный выход. Эти скорости, конечно, приближают flash к уровню жестких дисков и приемлемы для записи объемов информации сегодняшних гаджетов (завтра, ясное дело, уже будет не хватать), но для того, чтобы заменить жесткие диски, и тем более обогнать их по производительности, этого решительно недостаточно.

Потому производители и собственно чипов памяти, и конечных продуктов идут на все новые и новые ухищрения - увеличение числа параллельных каналов передачи данных только одно из них. Другое направление повышения скорости обмена - технология OneNAND фирмы Samsung. Объединив на кристалле flash-память типа NAND (притом упакованную по технологии MCP) с буфером на основе высокоскоростной SRAM и добавив некие логические схемы, компания добилась беспрецедентной скорости чтения: 108 Мбайт/с. Скорость записи, впрочем, на порядок ниже и, по разным источникам, составляет от 9,3 до 10 Мбайт/с - что тоже очень здорово (примерно в шестьдесят раз быстрее классической NOR), но все же далеко от идеала. Дабы повысить скорость записи, приходится снабжать карты и flash-диски большими объемами буферной SRAM и специальными контроллерами, управляющими всем этим процессом.

Современные SSD в среднем сравнялись по быстродействию с магнитными дисками (типовые скорости обмена - 60-100 Мбайт/с), и хотя карты памяти и USB-накопители все еще отстают от самых передовых конструкций жестких дисков с интерфейсами SATA и SAS, у твердотельных накопителей есть одно огромное преимущество, которое и позволяет, например, Microsoft говорить об увеличении быстродействия в Vista с дополнительной flash-карточкой. Время доступа к произвольному месту массива у магнитных дисков зависит от поворотливости головок и за последние пятнадцать лет снизилось всего лишь вдвое - типичная величина составляет 8 мс. А у flash-дисков типичное время доступа равно 0,1 мс. Как следствие - у flash-устройств, особенно специализированных, типа SSD, минимальная, максимальная и средняя скорость чтения, в отличие от обычных дисков, практически не отличаются. Потому flash-диски гораздо быстрее традиционных при выборочном чтении, что действительно ускоряет работу, особенно при дефрагментированных данных - в частности, и при взаимодействии со своп-файлом.

37
{"b":"87949","o":1}