Флеш-пам'ять
ФЛЕШ -ПАМ'ЯТЬ
1. Загальна характеристика флеш-пам’яті як засобу зберігання інформації
Флеш - пам’ять - особливий вид незалежної напівпровідникової пам'яті.
- Незалежна – пам’ять, яка не потребує додаткової енергії для зберігання даних (енергія потрібна лише для запису).
- пам'ять, яку можна перезаписати - допускає зміну (перезапис) даних, що зберігаються в ній.
- Напівпровідникова (твердотільна) - що не містить механічно рухомих частин (як звичні жорсткі диски або CD), побудована на основі інтегральних мікросхем (IC-Chip).
На відміну від багатьох інших типів напівпровідникової пам'яті, комірка флеш - пам’яті не містить конденсаторів – типова комірка флеш - пам’яті складається усього-на-всього з одного транзистора особливої архітектури. Комірка флеш - пам’яті чудово змінює масштаб, що досягається не лише завдяки успіхам в мініатюризації розмірів транзисторів, але і завдяки конструктивним знахідкам, що дозволяють в одної комірці флеш - пам’яті зберігати декілька біт інформації.
Флеш - пам’ять історично походить від ROM (Read Only Memory) пам'яті, і функціонує подібно RAM (Random Access Memory). Дані флеш зберігає в елементах пам'яті, схожих на комірки в DRAM. На відміну від DRAM, при відключенні живлення дані з флеш - пам’яті не пропадають.
Заміни пам'яті SRAM і DRAM флэш-пам'яттю не відбувається через дві особливості флеш - пам’яті : флеш працює суттєво повільніше і має обмеження по кількості циклів перезапису (від 10.000 до 1.000.000 для різних типів).
Надійність/довговічність: інформація, записана на флеш - пам’ять, може зберігатися дуже тривалий час (від 20 до 100 років), і здатна витримувати значні механічні навантаження (в 5-10 разів перевищуючі гранично допустимі для звичайних жорстких дисків).
Основна перевага флеш - пам’яті перед жорсткими дисками і носіями CD-ROM полягає у тому, що флеш - пам’ять споживає значно (приблизно у 10-20 і більше разів) менше енергії під час роботи. У пристроях CD-ROM, жорстких дисках, касетах і інших механічних носіях інформації, велика частина енергії йде на приведення в рух механіки цих пристроїв. Крім того, флеш - пам’ять більш компактна ніж інші механічні носії.
Завдяки низькому енергоспоживанню, компактності, довговічності і відносно високій швидкодії, флеш - пам’ять ідеально підходить для використовування як накопичувач в таких портативних пристроях, як: цифрові фото- і відео камери, стільникові телефони, портативні комп'ютери, MP3-плеери, цифрові диктофони, і т.п.
У даному конспекті розглядається лише "чиста" флеш - пам’ять з числом циклів читання/запису більше 10000. Окрім "чистого" flash існують OTP (One Time Programmable) - пам'ять з єдиним циклом запису, і MTP (Multiple Time Programmable) - до 10000 циклів. Окрім кількості допустимих циклів запису/стирання принципової різниці між MTP і Flash немає. OTP суттєво відрізняється від цих типів архітектурно.
2. ROM і Flash
Флеш - пам’ять історично відбулася від напівпровідникового ROM, проте ROM-пам'яттю не є, а всього лише має схожу на ROM організацію. Безліч джерел (як вітчизняних, так і зарубіжних) часто помилково відносять флеш - пам’ять до ROM. Флеш ніяк не може бути ROM хоча б тому, що ROM (Read Only Memory) переводиться як "пам'ять лише для читання". Ні про яку спроможність перезапису в ROM мові бути не може!
Серед напівпровідникової пам'яті лише два типи відносяться до "чистого" ROM - це Mask-ROM і PROM. На відміну від них EPROM, EEPROM і Flash відносяться до класу незалежної пам'яті (англійський еквівалент - nonvolatile read-write memory або NVRWM).
Різні джерела по-різному розшифровують абревіатуру EPROM - як Erasable Programmable ROM або як Electrically Programmable ROM (стирані програмовані ПЗП або електричне програмовані ПЗП). У EPROM перед записом необхідно провести стирання (відповідно з'явилася Спроможність перезаписувати вміст пам'яті). Стирання комірок EPROM виконується відразу для всієї мікросхеми за допомогою опромінювання чипа ультрафіолетовим або рентгенівським промінням протягом декількох хвилин. Мікросхеми, стирання яких проводиться шляхом опромінювання ультрафіолетом, були розроблені Intel в 1971 році, і носять назву UV-EPROM (приставка UV (Ultraviolet) - ультрафіолет). Вони містять віконця з кварцового скла, які після закінчення процесу стирання заклеюють.
EPROM від Intel була заснована на МОП-транзисторах з лавинною інжекцією заряду (FAMOS - Floating Gate Avalanche injection Metal Oxide Semiconductor, російський еквівалент - ЛІЗМОП). У першому наближенні такий транзистор є конденсатором з дуже малим витоком заряду. Пізніше, в 1973 році, компанія Toshiba розробила комірки на основі SAMOS (Stacked gate Avalanche injection MOS, за іншою версією - Silicon and Aluminum MOS) для EPROM пам'яті, а в 1977 році Intel розробила свій варіант SAMOS.
У EPROM стирання приводить всі біти області, що стирається в один стан (звично у всі одиниці, рідше - у всі нулі). Запис на EPROM, як і в PROM, також здійснюється на програматорах (проте відмінних від програматорів для PROM). В даний час EPROM практично повністю витиснена з ринку EEPROM і Flash.
Переваги: Спроможність перезаписувати вміст мікросхеми
Недоліки:
1. Невелика кількість циклів перезапису.
2. Неможливість модифікації частини даних, що зберігаються.
3. Висока вірогідність "не стерти" (що зрештою приведе до збоїв) або перетримати мікросхему під УФ-світлом (т.з. overerase - ефект надмірного видалення, "перепал"), що може зменшити термін служби мікросхеми і навіть привести до її повної непридатності.
EEPROM (E?PROM або Electronically EPROM) - ППЗУ були розроблені в 1979 році в тій же Intel. У 1983 році вийшли перші 16Кбіт зразків, виготовлених на основі FLOTOX-транзисторів (Floating Gate Tunnel-OXide - "плаваючий" затвор з туннелюванням в оксиді). Головною відмітною особливістю EEPROM (в т.ч. Flash) від раніше розглянутих нами типів незалежної пам'яті є спроможність перепрограмування при підключенні до стандартної системної шини мікропроцесорного пристрою. У EEPROM з'явилася спроможність виробляти стирання окремої комірки за допомогою електричного струму. Для EEPROM стирання кожної комірки виконується автоматично при записі в неї нової інформації, тобто можна змінити дані в будь-якїй комірці, не зачіпаючи інші. Процедура стирання звичайно суттєво довша процедури запису.
Переваги EEPROM в порівнянні з EPROM:
Збільшений ресурс роботи.
Простіша в обігу.
Недолік: Висока вартість
Винахід флеш - пам’яті часто незаслужено приписують Intel, називаючи при цьому 1988 рік. Насправді пам'ять вперше була розроблена компанією Toshiba в 1984 році, і вже наступного року було почате виробництво 256Кбіт мікросхем flash-пам'яті в промислових масштабах. У 1988 році Intel розробила власний варіант флеш - пам’яті .
У флеш - пам’яті використовується дещо відмінний від EEPROM тип комірки-транзистора. Технологічно флеш - пам’ять споріднена як EPROM, так і EEPROM. Основна відмінність флеш - пам’яті від EEPROM полягає у тому, що стирання вмісту комірок виконується або для всієї мікросхеми, або для певного блоку (кластера, кадру або сторінки). Звичний розмір такого блоку складає 256 або 512 Байт, проте в деяких видах флеш - пам’яті об'єм блоку може досягати 256КБ. Слід помітити, що існують мікросхеми, що дозволяють працювати з блоками різних розмірів (для оптимізації швидкодії). Стирати можна як блок, так і вміст всієї мікросхеми відразу. Таким чином, в загальному випадку, для того, щоб змінити один байт, спочатку в буфер прочитується весь блок, де міститься належний зміні байт, стирається вміст блоку, змінюється значення байта в буфері, після чого проводиться запис зміненого в буфері блоку. Така схема суттєво знижує швидкість запису невеликих об'ємів даних в довільні області пам'яті, проте значно збільшує швидкодію при послідовному записі даних великими порціями.
Переваги флеш - пам’яті в порівнянні з EEPROM:
- Вища швидкість запису при послідовному доступі за рахунок того, що стирання інформації у флеш проводиться блоками.
- Собівартість виробництва флеш - пам’яті нижча за рахунок простішої організації.
Недолік: Повільний запис в довільні ділянки пам'яті.
3. Організація flesh-пам’яті
Комірки флеш - пам’яті бувають як на одному, так і на двох транзисторах. У простому випадку кожна комірка зберігає один біт інформації і складається з одного польового транзистора із спеціальною електрично ізольованою областю ("плаваючим" затвором - floating gate), здатною зберігати заряд багато років. Наявність або відсутність заряду кодує один біт інформації.
Рисунок 1 – Внутрішня організація флеш-пам'яті
При запису заряд поміщається на плаваючий затвор одним з двох способів (залежить від типу комірці): методом інжекції "гарячих" електронів або методом туннелювання електронів. Стирання вмісту комірці (зняття заряду з "плаваючого" затвора) проводиться методом туннелювання.
Як правило, наявність заряду на транзисторі розуміється як логічний "0", а його відсутність - як логічна "1".
Сучасна флеш - пам’ять звичайно виготовляється по 0,13- і 0,18-мікронному процесу.
Загальний принцип роботи комірки флеш - пам'яті.
Розглянемо просту комірку флеш - пам’яті на одному n-p-n транзисторі. Комірки подібного типу найчастіше застосовувалися в flash-пам'яті з NOR архітектурою, а також в мікросхемах EPROM.
Поведінка транзистора залежить від кількості електронів на "плаваючому" затворі. "Плаваючий" затвор виконує ту ж роль, що і конденсатор в DRAM, тобто зберігає запрограмоване значення.
Переміщення заряду на "плаваючий" затвор в такій комірці проводиться методом інжекції "гарячих" електронів (CHE - channel hot electrons), а зняття заряду здійснюється методом квантомеханічного туннелювання Фаулера-Нордхейма (Fowler-Nordheim [FN]).
Таблиця 1 – Принцип дії пам'яті
При читанні, у відсутності заряду на "плаваючому" затворі, під впливом позитивного поля на управляючому затворі, утворюється n-канал в підкладці між витоком і стоком, і виникає струм. |
|
Наявність заряду на "плаваючому" затворі міняє вольт-амперні характеристики транзистора таким чином, що при звичній для читання напрузі канал не з'являється, і струму між витоком і стоком не виникає. |
|
При програмуванні на стік і управляючий затвор подається висока напруга (причому на управляючий затвор напруга подається приблизно в два рази вище). "Гарячі" електрони з каналу рухаються на плаваючий затвор і змінюють вольт-амперні характеристики транзистора. Такі електрони називають "гарячими" за те, що володіють високою енергією, достатньою для подолання потенційного бар'єру, створюваного тонкою плівкою діелектрика. |
|
При стиранні висока напруга подається на витік. На управляючий затвор подається висока негативна напруга. Електрони виходять на витік. |
Ефект тунелювання - один з ефектів, що використовують хвильові властивості електрона. Сам ефект полягає в подоланні електроном потенційного бар'єру малої "товщини". Для наочності уявимо собі структуру, що складається з двох провідних областей, розділених тонким шаром діелектрика (збіднена область). Подолати цей шар звичайним способом електрон не може - не вистачає енергії. Але при створенні певних умов (відповідна напруга і т.п.) електрон проскакує шар діелектрика (туннелює крізь нього), створюючи струм.
Важливо відзначити, що при тунелюванні електрон виявляється "по іншу сторону", не проходячи через діелектрик. Така ось "телепортація".
Відмінності методів тунелювання Фаулера-Нордхейма (FN) і методу інжекції "гарячих" електронів:
-Channel FN tunneling - не вимагає великої напруги. Комірки, що використовують FN, можуть бути менше комірок, що використовують CHE.
-CHE injection (CHEI) - вимагає вищої напруги, в порівнянні з FN. Таким чином, для роботи пам'яті потрібна підтримка подвійного живлення.
- програмування методом CHE здійснюється швидше, ніж методом FN.
Слід помітити, що, окрім FN і CHE, існують інші методи програмування і стирання комірці, які успішно використовуються на практиці, проте два описаних нами застосовуються найчастіше.
Процедури стирання і запису сильно зношують комірку флеш - пам’яті , тому в новітніх мікросхемах деяких виробників застосовуються спеціальні алгоритми, що оптимізують процес стирання-запису, а також алгоритми, що забезпечують рівномірне використовування всіх комірок в процесі функціонування.
Деякі види комірок флеш - пам’яті на основі МОП-транзисторів з "плаваючим" затвором:
-Stacked Gate Cell - комірка з багатошаровим затвором. Метод стирання - Source-Poly FN Tunneling, метод запису - Drain-Side CHE Injection.
-SST Cell, або SuperFlash Split-Gate Cell (Silicon Storage Technology - компанія-розробник технології) - комірка з розщепленим затвором. Метод стирання - Interpoly FN Tunneling, метод запису - Source-Side CHE Injection.
-Two Transistor Thin Oxide Cell - двохтранзисторна комірка з тонким шаром оксиду. Метод стирання - Drain-Poly FN Tunneling, метод запису - Drain FN Tunneling.
Інші види комірок:
Окрім комірок, що найчастіше зустрічаються, з "плаваючим" затвором, існують також комірки на основі SONOS-транзисторів, які не містять плаваючого затвора. SONOS-транзистор нагадує звичний МНОП (MNOS) транзистор. У SONOS-осередках функцію "плаваючого" затвора і оточуючого його ізолятора виконує композитний діелектрик ONO. Розшифровується SONOS (Semiconductor Oxide Nitride Oxide Semiconductor) як Папівпровідник – Діелектрик – Нітрид – Діелектрик -Напівпровідник. Замість того, що дав назву цьому типу комірці нітріда в майбутньому планується використовувати полікрісталічний кремній.
Багаторівневі комірки (MLC - Multi Level Cell).
Останнім часом багато компаній почали випуск мікросхем флеш - пам’яті , в яких один комірка зберігає два біти. Технологія зберігання двох і більш біт в одній комірці одержала назву MLC (multilevel cell - багаторівневий комірка). Достовірно відомо про успішні тести прототипів, що зберігають 4 біти в одній комірці. В даний час багато компаній знаходяться у пошуках граничного числа біт, яке здатна зберігати багаторівневий комірка.
Рисунок 2 – Інші види комірок
У технології MLC використовується аналогова природа елементу пам'яті. Як відомо, звичний бітовий елемент пам'яті може приймати два стани - "0" або "1". У флеш - пам’яті ці два стани розрізняються по величині заряду, поміщеного на "плаваючий" затвор транзистора. На відміну від "звичної" флеш - пам’яті , MLC здатна розрізняти більше двох величин зарядів, поміщених на "плаваючий" затвор, і, відповідно, більше число станів. При цьому кожному стану у відповідність ставиться певна комбінація значень біт.
Під час запису на "плаваючий" затвор поміщається кількість заряду, відповідна необхідному стану. Від величини заряду на "плаваючому" затворі залежить порогова напруга транзистора. Порогову напругу транзистора можна зміряти при читанні і визначити по ньому записаний стан, а значить і записану послідовність битий.
Основні переваги MLC мікросхем:
- Нижче співвідношення $/МБ
- При рівному розмірі мікросхем і однаковому техпроцесі "звичної" і MLC-пам'яті, остання здатна зберігати більше інформації (розмір комірці той же, а кількість біт, що зберігаються в ній, - більше)
На основі MLC створюються мікросхеми більшого, ніж на основі одно бітових комірок, об'єму.
Основні недоліки MLC:
- Зниження надійності, в порівнянні з одно бітовими комірками, і, відповідно, необхідність вбудовувати складніший механізм корекції помилок (ніж більше біт на комірка - тим складніший механізм корекції помилок)
- Швидкодія мікросхем на основі MLC часто нижча, ніж у мікросхем на основі одно бітових комірок
- Хоча розмір MLC-комірці такий же, як і у одно бітової, додатково витрачається місце на специфічні схеми читання/запису багаторівневих комірок
Після появи MLC, "звичні" однобайтні комірки класифікували як одно рівневі комірки - Single Level Cell (SLC). SONOS-комірки можуть також зберігати два біти, проте принципово відмінним від описаного нами способу.
Технологія багаторівневих комірок від Intel (для NOR-пам'яті) носить назву StrtaFlash, аналогічна від AMD (для NAND) – MirrorBit.
3. Архітектура флеш - пам’яті
Існує декілька типів архітектури (організацій з'єднань між комірками) флеш - пам’яті . Найпоширенішими в даний час є мікросхеми з організацією NOR і NAND.
Таблиця 2 – Архітектура флеш - пам’яті
NOR (NOT OR, ИЛИ –НЕ) |
|
Комірки працюють схожим з EPROM способом. Інтерфейс паралельний. Довільне читання і запис. Переваги: швидкий довільний доступ, Спроможність побайтного запису. Недоліки: відносно повільний запис і стирання. З перерахованих тут типів має найбільший розмір комірці, а тому погано масштабується. Єдиний тип пам'яті, працюючий на двох різних напругах. Ідеально підходить для зберігання коду програм (PC BIOS, стільникові телефони), ідеальна заміна звичному EEPROM. |
|
Основні виробники: AMD, Intel, Sharp, Micron, Ti, Toshiba, Fujitsu, Mitsub>ishi, SGS-Thomson, STMicroelectronics, SST, Samsung, Winbond, Macronix, NEC, UMC. |
|
Програмування: методом інжекції "гарячих" електронів Стирання: тунелюваннєм FN |
|
NAND (NOT AND, И-НЕ) |
|
NAND (NOT AND, И-НЕ) |
|
Доступ довільний, але невеликими блоками (на зразок кластерів жорсткого диска). Послідовний інтерфейс. Не так добре, як AND пам'ять підходить для задач, що вимагають довільного доступу. Переваги: швидкий запис і стирання, невеликий розмір блоку. Недоліки: відносно повільний довільний доступ, неможливість побайтного запису. Найбільш відповідний тип пам'яті для додатків, орієнтованих на блоковий обмін: MP3 плеєрів, цифрових камер і як замінник жорстких дисків. |
|
Основні виробники: Toshiba, AMD/Fujitsu, Samsung, National |
|
Програмування: туннеллірованієм FN Стирання: туннелюванням FN |
|
AND (И) |
|
AND (И) |
|
Доступ до елементів пам'яті послідовний, архітектурно нагадує NOR і NAND, комбінує їх кращі властивості. Невеликий розмір блоку, можливо швидке мультиблочне стирання. Підходить для потреб масового рінку. |
|
Основні виробники: Hitachi і Mitsub>ishi Electric. |
|
Програмування: туннелюванням FN Стирання: туннелюванням FN |
|
DiNOR (Divided bit-line NOR, ИЛИ-НЕ з розділеними розрядними лініями) |
|
DiNOR (Divided bit-line NOR, ИЛИ-НЕ с разділеними розрядними лініями) |
|
Тип пам'яті, який комбінує властивості NOR і NAND. Доступ до комірок довільний. Використовує особливий метод стирання даних, який оберігає комірки від перепалу (що сприяє більшій довговічності пам'яті). Розмір блоку в DiNOR всього лише 256 байт. |
|
Основні виробники: Mitsub>ishi Electric, Hitachi, Motorola. |
|
Програмування: туннелюванням FN Стирання: : туннелюванням FN |
|
Примітки: В даний час найчастіше використовуються пам'ять з архітектурою NOR і NAND. Hitachi випускає багаторівневу AND-память з NAND-итерфейсом (SuperAnd або AG-AND [Assist Gate-AND]) |
Доступ до флеш - пам’яті
Існує три основні типи доступу:
- звичний (Conventional): довільний асинхронний доступ до елементів пам'яті.
- пакетний (Burst): синхронний, дані читаються паралельно, блоками по 16 або 32 слова. Лічені дані передаються послідовно, передача синхронізується. Перевага перед звичним типом доступу - швидке послідовне читання даних. Недолік - повільний довільний доступ.
- сторінковий (Page): асинхронний, блоками по 4 або 8 слів. Переваги: дуже швидкий довільний доступ в межах поточної сторінки. Недолік: відносне повільне перемикання між сторінками.
Останнім часом з'явилися мікросхеми флеш - пам’яті , що дозволяють одночасний запис і стирання (RWW - Read While Write або Simultaneous R/W) в різні банки пам'яті.