Микросхемы памяти. Микросхемы NAND памяти фирмы HYNIX Датчик движения широкого применения

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

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

Для целей долгосрочного хранения информации в настоящее время используются в основном два вида энергонезависимой памяти — это EEPROM и FLASH (см. рис. 1). И неизменным лидером в производстве микросхем памяти все это время остается компания STMicroelectronics. Рассмотрим варианты EEPROM и FLASH на примере микросхем, выпускаемых этой компанией.

Рис. 1.

Любая микросхема памяти отвечает требованиям быстродействия, времени хранения информации и стоимости. Помимо этого, на выбор того или иного вида памяти влияют несколько моментов:

Порядок запоминания информации:

  • по одному байту информации в нужный момент;
  • большими блоками информации.

Тип доступа к памяти:

  • через параллельную шину;
  • через последовательную шину.

Дополнительные требования:

  • возможность считывать содержимое памяти одновременно с запоминанием информации;
  • обеспечение только авторизованного доступа;
  • большой объем памяти для хранения только данных по наименьшей цене;
  • возможность выполнять код непосредственно из энергонезависимой памяти (XiP).

Существуют микросхемы, которые обладают наилучшими характеристиками, такими как:

  • выполнение кода на месте,
  • высокая степень разбиения массива памяти с множеством поддерживаемых специальных функций (наличие двух портов, защищенный режим работы);
  • энергонезависимая память, но со скоростью, присущей энергозависимым;
  • с напряжением питания меньше 1,8 В;
  • с неограниченным количеством циклов записи/стирания.

Однако цена такого устройства не будет низкой.

Если основным требованием к устройству является хранение ограниченных объемов информации (калибровочные таблицы сенсоров, серийные номера плат, небольшие объемы данных [несколько номеров телефонов для DECT, некоторые параметры статуса, может быть даже несколько строк кода]), то удачное решение для такого случая — EEPROM-память, которая используется почти везде. При этом, как правило, используются EEPROM с последовательным интерфейсом, потому что с параллельным уже практически не выпускаются. Такая память допускает перепрограммирование одного произвольного байта информации без необходимости предварительного стирания. В номенклатуре ST присутствует широкий выбор EEPROM:

  • объемом от 1 Кбит до 1 Мбит;
  • диапазоны питающих напряжений с низким потреблением от 2,5 до 5,5 В и от 1,8 до 5,5 В;
  • три стандартных последовательных шины I 2 C, SPI, MICROWIRE ® ;
  • 1 миллион циклов записи/стирания как стандартное значение;
  • время хранения данных — больше 40 лет;
  • промышленный и автомобильный температурный диапазон;
  • минимальные посадочные площадки, включая MSOP8, TSSOP8 и уникальный по размерам UFDFPN8 (2×3 мм) корпуса.

На табл. 1 приведена номенклатура выпускаемой памяти EEPROM.

Таблица 1. Микросхемы памяти EEPROM

Наименование Тип
интерфейса
Размер, кб Напряжение
питания, В
Диапазон
температур, °С
Типы
корпусов
M24Cxxx I 2 C 1…64 1,8…5,5 2,5…5,5 -40…85
-40…125
DIP8, SO8, MSOP8, TSSOP8
M93Cxxx Microwire 1…16 2,5…5,5 4,5…5,5 -40…125 DIP8, SO8, TSSOP8
M95xxx SPI 1…512 1,8…5,5 2,5…5,5 -40…85
-40…125
SO8, TSSOP8

Если основным требованием является хранение увеличенных объемов информации (большое количество строк кода, большое количество данных), то решение для такого случая — обычная FLASH-память (FLASH NOR). FLASH NOR с параллельным доступом распространена больше, однако последовательная FLASH NOR становится все более популярной в приложениях, где нет специфических требований параллельного доступа (см. рис. 2). Например, производители персональных компьютеров уже выбрали последовательную FLASH NOR, как основную. Эта тенденция распространения последовательной энергонезависимой памяти (EEPROM и FLASH) прослеживается во всех существующих приложениях (так же, как и во многих новых приложениях, например, в цифровой бытовой электронике).

Рис. 2.

Почему последовательный интерфейс?

  • уменьшается стоимость контроллера, меньше выводов;
  • уменьшается занимаемое место на печатной плате, размер корпуса;
  • уменьшается стоимость памяти (в среднем);
  • увеличивается гибкость по плотности памяти (не нужно менять плату, если нужен больший объем памяти, достаточно установить на то же посадочное место кристалл памяти большего объема);
  • содержимое загружается для выполнения в ОЗУ (хранение кода программы).

Основные направления развития последовательной памяти таковы:

  • переход на продукты с высокой плотностью;
  • необходимость в высокоскоростной последовательной передаче данных;
  • миниатюрный, с малым количеством выводов недорогой корпус.

В табл. 2 представлены доступные типы и семейства памяти NOR FLASH.

Таблица 2. Микросхемы памяти NOR FLASH

Название ядра
микросхемы
Интерфейс Размер, Мб Напряжение
питания, В
Темпера-
турный
диапазон,
°С
Тип
корпуса
M29Fxxx Параллельный 1…32 4,5…5,5 -40…85 PLCC32, TSOP32, SO44
M28Wxxx Параллельный 16…64 2,7…3,6 -40…85 TFBGA48, TSOP48
M25Pxxx Последовательный 0,5…128 2,7…3,6 -40…85 SO8, TSSOP8, SO16, VFQFPN8
M45Pexxx Последовательный 1…16 2,7…3,6 -40…85 SO8, VFQFPN8

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

Преимущество этого типа памяти — относительная дешевизна в пересчете на объем доступной памяти. ST производит FLASH NAND объемом от 128 Мбит до 8 Гбит и больше, с различными размерами страниц: 528 байт/264 слова и 2112 байт/1056 слов, с независящим от плотности памяти посадочным местом, питанием 1,8 В и 3 В и в разнообразных корпусах.

NAND FLASH используется также и в картах памяти SD, Compact Flash, MMC, которые также выпускает ST.

Отдельно можно отметить особый тип памяти, который выпускается ST — так называемая NVRAM.

NVRAM — это устройства энергонезависимого (благодаря встроенной литиевой батарее) статического ОЗУ — устройство ZEROPOWER co всеми присущими ему свойствами такими, как скорость записи и неограниченный ресурс (семейство М48Z). Батарея соединяется с корпусом микросхемы посредством технологии SNAPHAT ® — инновационного и дешевого решения для поверхностного монтажа продуктов компании ST.

Кроме этого ST выпускает по той же технологии устройства TIMEKEEPER, которые имеют емкость памяти от 1 кбит до 4 Мбит и включают в себя еще и энергонезависимые часы реального времени (семейство М48Т). Имеются также функционально насыщенные TIMEKEEPER Supervisors, предлагающие такие полезные функции как RTC, POR/LVD, Power-Fail Warning, Battery Monitor, Battery Switchover и Write Protection.

С полным перечнем предлагаемых ST микросхем памяти можно ознакомиться на сайте: http://www.st.com/stonline/products/families/memories/memory/index.htm .

Получение технической информации, заказ образцов, поставка —
e-mail:

Датчик движения широкого применения

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

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

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

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

Цифровой выход, реализованный в виде стандартных интерфейсов SPI/I 2 C (можно выбирать), делает датчик эффективным в использовании и легко интегрируемым в систему.

LIS202DL помещен в миниатюрный пластиковый корпус размерами 5х3х0,9 мм, который можно разместить практически в любом месте, ограниченном малыми размерами.

Микросхемы репрограммируемой постоянной памяти с электрическим стиранием данных, выполненные по технологии FLASH, заняли прочные позиции в электронной и вычислительной технике, потеснив другие виды энергонезависимых запоминающих устройств. Их главное достоинство - возможность перепрограммирования "в системе", не выпаивая микросхему из печатной платы или не вынимая ее из панели. Большое допустимое число циклов перепрограммирования позволяет строить на таких микросхемах "FLASH-диски" объемом в десятки мегабайт, отличающиеся от обычных накопителей на жестких или гибких магнитных дисках полным отсутствием движущихся частей. Благодаря этому они долговечны и способны работать в условиях сильной вибрации, например, на автомобилях и других движущихся объектах. Публикуемая статья посвящена вопросам программирования микросхем FLASH-памяти.

От РПЗУ других типов микросхемы FLASH-памяти отличает наличие непосредственно на кристалле встроенного "программатора" - автомата стирания и записи (АC3). Он освобождает от необходимости в процессе программирования подавать на выводы микросхемы повышенное напряжение, формировать определенные последовательности импульсов. Все это АC3 делает самостоятельно и незаметно для пользователя, которому остается лишь с помощью соответствующей команды сообщить адрес ячейки и код, который следует в нее записать, и ждать завершения операции. Во многих случаях длительную операцию (например, стирание блока данных) можно приостановить, прочитать нужную информацию из другой области памяти, а затем продолжить.

Сегодня многие фирмы (наиболее известные Intel. AMD. Atmel. Winbond) выпускают большой ассортимент микросхем FLASH-памяти объемом до 4 Мбайт. Их внешний интерфейс бывает параллельным или последовательным. Микросхемы с последовательным интерфейсом предназначены в основном для хранения небольших массивов данных в малогабаритных или специализированных устройствах, например, для запоминания фиксированных настроек радиоприемника или программы работы бытового электроприбора.

Далее речь пойдет о "параллельных" FLASH-микросхемах, которые по физическому и логическому устройству интерфейса с процессором ничем не отличаются от обычных ПЗУ за исключением того, что у них, подобно ОЗУ, имеется вход разрешения записи. Именно в таких микросхемах хранят коды BIOS современных компьютеров. Организация данных бывает восьми- или 16-разрядной. Нередко ее можно выбирать, соединяя специально предусмотренный вывод с общим проводом или источником питания. Кроме шин адреса и данных, к микросхемам подводят три управляющих сигнала: выбор кристалла (СЕ), включение выхода (ОЕ) и разрешение записи (WE). Последний - только в случае, если микросхему необходимо программировать. Минимальная длительность цикла чтения - 70... 150 нc.

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

Обычно блоки одинаковы и равноправны, но могут быть и разными. Например, в микросхемах серии 28Fxxx фирмы Intel имеются так называемый загрузочный (boot) блок объемом 16 Кбайт и два блока параметров по 8 Кбайт каждый. Далее следует блок объемом 96 Кбайт, а оставшаяся часть памяти состоит из блоков по 128 Кбайт. Свойства названных блоков несколько различаются. Для загрузочного предусмотрена аппаратная защита от записи и стирания. Ее включают, подав соответствующий логический уровень на специально предусмотренный вывод микросхемы. Блоки параметров предназначены для хранения часто изменяемых данных и выдерживают большее, по сравнению с другими, число циклов стирания/записи.

Каждую из микросхем рассматриваемой серии изготавливают в двух вариантах, различающихся размещением блоков в адресном пространстве. В микросхемах с индексом В (bottom) они расположены, начиная с нулевого адреса, в указанном выше порядке. В изделиях с индексом Т (top) порядок обратный (загрузочный - в области старших адресов).

Выпускаемые в настоящее время микросхемы FLASH-памяти рассчитаны на номинальные напряжения питания от 2.7 до 5 В. Повышенное напряжение (12 В) для них не требуется вовсе или необходимо лишь в некоторых специальных режимах. В пассивном ("невыбранном") состоянии такие микросхемы потребляют от источника питания ток не более 1 мА (в большинстве случаев - в десятки раз меньше). Иногда предусмотрен особый режим полного выключения (sleep mode), в котором потребление пренебрежимо мало. Правда, читать данные из "заснувшей" микросхемы невозможно, а чтобы "разбудить" ее. порой требуется несколько десятков микросекунд. Потребляемый ток в активном режиме - десятки миллиампер, причем, если перевести в пассивное состояние микросхему, АC3 которой выполняет длительную операцию (например, стирает данные), ток не уменьшится до тех пор, пока она не завершится.

Большое внимание уделяют защите хранящихся во FLASH-памяти данных от случайного изменения, особенно под воздействием помех и переходных процессов при включении и выключении питания. В большинстве случаев предусмотрено три вида аппаратной защиты. Первый заключается в том. что на импульсы в цепи WE длительностью менее 15...20 не микросхема не реагирует, второй - в том, что при низком логическом уровне на входе ОE никакие манипуляции сигналами на других входах не могут вызвать запись, третий - в том. что при уменьшении напряжения питания ниже некоторого уровня АC3 отключается. У микросхем разных типов порог отключения находится в пределах 1.5...3.8В.

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

Предусматривается и программная защита. Для изменения содержимого ячейки FLASH-памяти недостаточно, как в обычном ОЗУ. записать один код по одному адресу. Необходима команда, состоящая из нескольких кодов, записываемых по определенным адресам.

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

Перейти в режим чтения идентификаторов можно и без команды, подав на адресный вход А9 напряжение +12 В. Допускаемое отклонение его величины у микросхем разных типов различно. В одних случаях оно не более ±5%. в других достаточно, чтобы напряжение лишь превысило некоторое значение, например 10 В. Идентификаторы читают по указанным выше адресам, устанавливая их без учета разряда А9. Обычно этот способ применяют в универсальных программаторах.

АC3 большинства микросхем FLASH-памяти воспринимают команды, подаваемые в соответствии с так называемым стандартом JEDEC, хотя есть и исключения. Иногда при модернизации микросхем их систему команд дополняют стандартными кодовыми комбинациями, сохраняя, однако, и старые команды (это необходимо для того, чтобы модернизированные кристаллы могли работать в ранее выпущенных устройствах). Свою систему команд применяет фирма Intel.

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

Номера выводов на приводимых ниже схемах стандартны для микросхем памяти объемом 512 Кбайт в наиболее распространенных 32-выводных корпусах PLCC и PDIP. "Цоколевка" микросхем меньшего объема аналогична, но выводы старших разрядов у них не подключены (например, у Am29F010 свободны 30-й и 1 -й).

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

Предполагается, что системная шина данных - восьмиразрядная, адреса - 16-разрядная. ПЗУ отведено в адресном пространстве 32 Кбайт, остальную его часть может занимать ОЗУ Так как объем памяти Am29F040 - 512 Кбайт, предусмотрен регистр страницы FLASH-памяти, управляющий старшими разрядами адреса. Для чтения и записи данных можно воспользоваться следующими простыми процедурами (написанными на языке Pascal):

Если необходимо запрограммировать FLASH-микросхему вне устройства, в котором она будет работать, ее можно подключить к персональному компьютеру. Проще всего это сделать, установив в компьютер дополнительную плату параллельного ввода/вывода. Такие платы, например, PCL-731 фирмы Advantech, DIO-48 фирмы IOP DAS или PET-48DIO фирмы ADLink имеются в продаже. Как правило, у них 48 входов/выходов и работают они аналогично двум микросхемам 8255 (КР5806В55А) в режиме О с теми же информационными и управляющими портами, даже если в действительности таких микросхем в их составе нет. При необходимости плату параллельного ввода/вывода можно изготовить самостоятельно, воспользовавшись статьей Н. Васильева "Расширитель интерфейса PC" ("Радио", 1994, № 6, с. 20, 21).

Для чтения или программирования FLASH-микросхему подключают к портам двух микросхем 8255 по схеме, показанной на рис. 2. Порт РА первой из них использован для ввода/вывода данных, отдельные разряды ее же порта PC - для вывода сигналов управления СЕ, OЕ и WE. Порты РА, РВ и PC второй образуют 24-разрядную шину адреса FLASH-микросхемы. Если достаточна меньшая разрядность этой шины, соответствующее число старших разрядов порта PC не подключают.

Порты платы ввода/вывода и вспомогательные константы должны быть описаны в программе следующим образом:

А описанные выше процедуры обращения к FLASH-памяти заменяют следующими:

Теперь - собственно о программировании FLASH-микросхем. По стандарту JEDEC каждая команда начинается записью кода ОААН по адресу 5555Н. Далее записывают код 55Н по адресу 2АААН и в заключение - код выполняемой операции по адресу 5555Н.

Говоря, например, о команде 40Н, мы будем подразумевать именно такую последовательность с числом 40Н в качестве кода операции.

После включения питания любая FLASH-микросхема автоматически входит в этот режим и устанавливать его специальной командой нет необходимости. Однако она требуется, например, для возврата из режима чтения идентификаторов. Иногда ее называют командой сброса или начальной установки. Для перевода некоторых микросхем в режим чтения массива достаточно одного цикла записи кода 0F0H по любому адресу.

Следующий за командой 0А0Н цикл записи содержит адрес программируемой ячейки и записываемый в нее код. В большинстве случаев для записи в каждую ячейку требуется подать отдельную команду. Имейте в виду, что подобно обычным РПЗУ, в разрядах программируемой ячейки можно лишь заменять логические единицы нулями. Для выполнения обратной операции требуется, как правило, предварительно стереть содержимое целого блока памяти и повторить программирование всех его ячеек. Учтите, что АC3 многих FLASH-микросхем не распознают подобные ошибки и сообщают об успешном выполнении операции. Чтобы убедиться в правильности программирования, необходимо контрольное считывание записанных данных.

В микросхемах фирмы Winbond с блоками размером 128 байт программированию любой ячейки автоматически предшествует стирание всех данных содержащего ее блока. Поэтому всегда следует предварительно скопировать блок в оперативную память, внести нужные изменения в копию и запрограммировать заново все 128 байт. Получив команду ОАОН, адрес и первый из программируемых байтов, АC3 заносит его во внутренний буфер блока и ждет 200 мкс, не начиная программирования. Если за это время будут получены еще одна команда ОАОН и очередной байт, он тоже поступит в буфер, а АC3 будет ждать следующий еще 300 мкс. Так продолжается до тех пор. пока не будут получены все 128 байт блока или пауза не превысит допустимого значения (300 мкс). После этого АC3 стирает блок и начинает собственно программирование. Последовательность записи в буфер данных, предназначенных для различных ячеек блока, не имеет значения, но те ячейки, данные для которых не поступили, после программирования будут содержать коды 0FFH.

Существует два способа записи данных для программирования в подобную микросхему. Первый из них (для других обычный) называют программно защищенным. Каждому записываемому байту должна предшествовать команда ОАОН. Однако защиту можно отключить, подав последовательно команды 80Н и 20Н.

После этого записываемый по любому адресу байт попадает во внутренний буфер микросхемы, и такой режим сохраняется даже после отключения и включения питания. Выходят из него по команде ОАОН.

Для записи данных во FLASH-микро-схему фирмы Intel предусмотрено два равносильных варианта команды. Прежде всего, по любому адресу записывают один из кодов 40Н или 10Н. а затем - программируемый код по нужному адресу.

Команда "Стереть всю память" .

Эту ответственную операцию АC3 FLASH-микросхемы начинает, получив последовательность из двух команд - 80Н и 10Н.

Микросхемам фирмы Intel аналогичную команду подают записью по произвольным адресам кодов 20Н и 0D0H

Стирание всего содержимого памяти занимает от десятков миллисекунд до нескольких секунд. В некоторых микросхемах предусмотрена возможность приостановки этого процесса записью кода ОВОН по любому адресу. После записи (также по любому адресу) кода 30Н (для микросхем фирмы Intel - ODOH) стирание продолжится.

Команда "Стереть блок" . Чтобы стереть содержимое блока памяти, необходимо подать две команды. Первая из них - 80Н, вторая отличается тем, что ее код операции 90Н должен быть записан не по адресу 5555Н, а по адресу любой из ячеек стираемого блока.

В микросхемы фирмы Intel достаточно записать код 90Н по любому адресу. Выходят из этого режима рассмотренной выше командой "Читать массив данных".

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

Точно узнать момент окончания той или иной операции позволяет считывание регистра состояния АC3. FLASH -микросхема выдает на шину данных содержимое этого регистра все время, пока АC3 занят выполнением процедуры стирания или программирования. Существует два признака того, что процесс не закончен. Первый заключается в том, что значение бита D7 регистра состояния инверсно по отношению к записываемому в тот же бит ячейки памяти значению (во время стирания - равно 0). По завершении операции оно совпадет с записанным. Второй признак - "мерцание" бита D6 (его значение изменяется при каждом чтении регистра, пока операция не завершится).

Как правило, наблюдаются оба признака, однако встречаются и исключения. Например, в микросхемах фирмы Intel "мерцающий" бит отсутствует, а бит D7 во время программирования равен 0 независимо от записываемого кода. Об окончании операции в данном случае свидетельствует D7=1. В микросхемах с блочной записью (например, фирмы Winbond) значение бита D7 инверсно аналогичному биту последнего из кодов, записанных в буфер блока-

Обычно по завершении программирования или стирания FLASH-микросхе-ма автоматически возвращается в режим чтения массива данных, но микросхемам фирмы Intel для этого требуется соответствующая команда.

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

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

В заключение - несколько слов об утилитах, позволяющих обновить BIOS компьютера, хранящуюся во FLASH-памяти. Они разрабатываются для каждого типа системных (материнских) плат и учитывают особенности подключения FLASH-микросхем к системным шинам. Поэтому попытки воспользоваться утилитой, предназначенной для платы одного типа, чтобы обновить BIOS другой, зачастую приводят к полному отказу компьютера.

Утилиту запускают как обычную прикладную программу, указав в качестве параметра имя файла, содержащего коды новой версии BIOS. Она читает этот файл, создавая в ОЗУ массив данных, подлежащих записи во FLASH-память. Затем определяет тип микросхемы и выбирает соответствующие процедуры для работы с ней. После этого начинается стирание старых и запись новых данных, причем в это время программа не может пользоваться никакими функциями BIOS, в том числе и для вывода информации на экран или опроса клавиатуры. Если делать это все-таки необходимо, нужные подпрограммы вводят в состав самой утилиты. После завершения программирования и проверки его правильности обычно следует перезапуск компьютера, и он начинает "новую жизнь" с обновленной BIOS.

Читайте и пишите полезные

Микросхемы флеш-памяти eeprom серии 25xxx широко применяются в микроэлектронике. В частности, в современных телевизорах и материнских платах в 25xxx хранится прошивка биоса. Перепрошивка 25xxx осуществляется по интерфейсу SPI, в чем и заключается отличие этих микросхем от флеш-памяти семейства 24xxx, которые шьются по i2c(квадратная шина).

Соответственно, для чтения/стирания/записи 25xxx нужен SPI-программатор. Одним из самых дешевых вариантов программаторов для этой цели является USBasp, который стоит смешные деньги- с доставкой всего около 2$ на ебее. В свое время я купил себе такой для программирования микроконтроллеров. Теперь мне понадобилось прошить не микроконтроллер, а SPI-флеш и решено было им воспользоваться.

Забегая вперед скажу, что прошивка от Tifa работает, микросхемы 25xxx шьются. Кстати, кроме 25xxx, модифицированный программатор рассчитан на работу с 24xxx и Microwire.

1. Перепрошивка USBasp

Сначала нужно замкнуть контакты J2:

Лично я не просто замкнул, а впаял в контакты переключатель:

При замкнутых контактах J2 (это у меня переключатель в положении вправо) USBasp переходит в режим готовности к перепрошивке.

Сам себя USBap перепрошить не может, поэтому нужен еще один программатор. USBasp как бы оказывается в положении хирурга, который не может сам себе вырезать аппендикс и просит друга помочь. Для перепрошивки USBasp я использовал самодельный программатор AVR910 , но для одного раза можно по-быстрому за пару минут спаять программатор «5 проводков» , который состоит всего-лишь из одного разъема LPT и 5 резисторов.

Подключаем программатор к USBasp:



Теперь идем на форум альтернативной прошивки от Tifa, в самом верхнем посте находим и качаем архив с последней прошивкой и ПО.

Находим там файл mega8.hex, это и есть альтернативная прошивка для USBasp.

Запускаем CodeVisionAvr (я использую версию 2.0.5), выставляем настройки программатора: Settings-> Programmer.

Устанавливаем настройки записи: Tools->Chip programmer. Выбираем чип Atmega8L, именно такой стоит на USBasp. Фьюзы не выставляем- те, что надо, уже прошиты в чипе. Остальные настройки оставляем по умолчанию.

Стираем старую программу USBasp: Program-> Erase chip.

Открываем файл прошивки mega8.hex: File-> Load flash.

Перепрошиваем USBasp: Program-> Flash.

Если прошла запись и не выдало сообщение об ошибке, значит альтернативная прошивка благополучно прошита в USBasp. Теперь USBasp может не только шить AVR-микроконтроллеры, как раньше, но еще и работать с флеш-памятью. Размыкаем контакты J2, что бы USBasp снова перешел в режим программатора.

Теперь проверим, видит ли Windows 7 x86 этот программатор. Вставляем USBasp в USB и… система пишет «USBasp не удалось найти драйвер». Понятно, нужно установить драйвер. Но драйверов в скачанном на форуме нет, их нужно скачать на родном сайте USBasp , оригинальные драйвера подходят и для модифицированного программатора. Скачали, установили, Win7 увидела программатор, все ок. Впрочем, я программирую микроэлектронику на ноутбуке с WinXP, она тоже после установки драйверов видит программатор.

2. Площадка для подключения USBasp к микросхеме 25xxx DIP

Теперь нужно подготовить площадку для программирования 25xxx. Я это сделал на макетной плате по такой схеме:

3. Прошивка микросхем 25xxx через USBasp

Для прошивки 25xxx через модифицированный USBasp используется программа AsProgrammer, которая тоже есть в .

Для примера, поработаем с микросхемой Winbond 25×40. Запускаем AsProgrammer, ставим режим работы SPI и выбираем тип микросхемы: Микросхема-> SPI-> Winbond->…

… и видим, что W25X40 в списке нет. Что же, тогда заполним параметры микросхемы вручную. Находим мануал на Winbond 25X40 и там на странице 4 видим такие параметры:

Эти параметры вносим сюда:

Подключаем USBasp к компьютеру и микросхеме Winbond 25×40:

С помощью кнопок «прочитать», «записать», «стереть», проверяем работу программатора:

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

Благодаря прошивке от Tifa дешевый китайский программатор USBasp теперь умеет работать с микросхемами flash-памяти eeprom 25xxx. Теоретически еще может работать c 24xxx и Microwire, но я проверил только работу с 25xxx.

UPD1:
Оказывается, такую же прошивку можно записать и в программатор AVR910. Тогда он тоже будет работать с flash-памятью 25xxx:

На сегодняшний день флешки являются самыми популярными внешними носителями данных. В отличие от оптических и магнитных дисков (CD/DVD и винчестеры соответственно), флеш-накопители более компактны и устойчивы к механическим повреждениям. А за счет чего были достигнуты компактность и устойчивость? Давайте же разберемся!

Первое, что следует отметить — внутри flash-накопителя нет движущихся механических частей, которые могут пострадать от падений или сотрясений. Это достигается за счет конструкции — без защитного корпуса флешка представляет собой печатную плату, к которой припаян USB-разъем. Давайте рассмотрим её составляющие.

Основные компоненты

Составные части большинства флешек можно разделить на основные и дополнительные.


К основным относятся:

  1. чипы NAND-памяти;
  2. контроллер;
  3. кварцевый резонатор.
  4. USB-разъем

NAND-память
Накопитель работает благодаря NAND-памяти: полупроводниковым микросхемам. Чипы такой памяти, во-первых, весьма компактны, а во-вторых — очень ёмкие: если на первых порах флешки по объему проигрывали привычным на тот момент оптическим дискам, то сейчас превышают по ёмкости даже диски Blu-Ray. Такая память, ко всему прочему, еще и энергонезависимая, то есть для хранения информации ей не требуется источник питания, в отличие от микросхем оперативной памяти, созданных по похожей технологии.


Однако у НАНД-памяти есть один недостаток, в сравнении с другими типами запоминающих устройств. Дело в том, что срок службы этих чипов ограничен определенным количеством циклов перезаписи (шагов чтения/записи информации в ячейках). В среднем количество read-write cycles равно 30 000 (зависит от типа чипа памяти). Кажется, это невероятно много, но на самом деле это равно примерно 5 годам интенсивного использования. Впрочем, даже если ограничение будет достигнуто, флешкой можно будет продолжать пользоваться, но только для считывания данных. Кроме того, вследствие своей природы, NAND-память очень уязвима к перепадам электричества и электростатическим разрядам, так что держите её подальше от источников подобных опасностей.

Контроллер
Под номером 2 на рисунке в начале статьи находится крохотная микросхема — контроллер, инструмент связи между флеш-памятью и подключаемыми устройствами (ПК, телевизорами, автомагнитолами и пр.).


Контроллер (иначе называется микроконтроллер) представляет собой миниатюрный примитивный компьютер с собственным процессором и некоторым количеством RAM, используемыми для кэширования данных и служебных целей. Под процедурой обновления прошивки или BIOS подразумевается как раз обновление ПО микроконтроллера. Как показывает практика, наиболее частая поломка флешек — выход из строя контроллера.

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

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

USB-коннектор
В подавляющем большинстве случаев в современных флешках установлен разъем USB 2.0 типа A, ориентированный на прием и передачу. В самых новых накопителях используется USB 3.0 типа А и типа C.

Дополнительные компоненты

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

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


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

Переключатель защиты от записи
Этот элемент характерен скорее для SD-карт, хотя порой встречается и на запоминающих устройствах USB. Последние нередко используются в корпоративной среде как носители разнообразной информации, в том числе важной и конфиденциальной. Чтобы избежать инцидентов со случайным удалением таких данных, производителями флеш-накопителей в некоторых моделях применяется переключатель защиты: резистор, который при подключении в цепь питания запоминающего устройства не дает электрическому току добираться к ячейкам памяти.


При попытке записать или удалить информацию с накопителя, в котором включена защита, ОС выдаст такое вот сообщение.

Подобным образом реализована защита в так называемых USB-ключах: флешках, которые содержат в себе сертификаты безопасности, необходимые для корректной работы некоторого специфического ПО.

Этот элемент тоже может сломаться, в результате чего возникает досадная ситуация — девайс вроде работоспособен, но пользоваться им невозможно. У нас на сайте есть материал, который может помочь решить эту проблему.

Уникальные компоненты

К таковым можно отнести, например, наличие разъемов Lightning, microUSB или Type-C: флешки с наличием таковых предназначены для использования в том числе на смартфонах и планшетах.

Модуль поиска не установлен.

Немного о флэш-памяти

Сегодня такой раздел (модуль, элемент - можете называть ее как угодно), как флэш-память, является неотъемлемой частью практически всех комплектующих компьютера (будь то звуковая карта, винчестер, модем, магнитооптические накопители или CD-ROM), использующих в своей работе память, да и не только компьютера (!). Но что же на самом деле представляет собой флэш-память? Этому и другому посвящена данная статья.

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

Технология модулей флэш-памяти

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

Работа флэш-памяти содержит только три операции - запись или программирование, чтение, стирание. На каждую из операций требуется определенное время. Например, для чтения одного параметрического блока затрачивается примерно 60 нс., а для записи 9 мкс. На операцию стирания информации в среднем затрачивается от 0,6 до 4,5 секунды. Это самая долгая операция.

Программирование флэш-памяти - это, так сказать, замена "1" на "0", а стирание - замена "0" на "1". В качестве "0" и "1" во флэш-памяти используются блоки, которые имеют фиксированные адреса. Каждый блок содержит несколько ячеек, в которых и располагается информация. При записи различной информации количество ячеек постоянно меняется. При стирании информации на модуле флэш-памяти стираются сами блоки. Их стирание влечет за собой удаление всех ячеек, находящихся в блоке.

Модули флэш-памяти имеют ограниченный срок службы. Но несмотря на это, микросхемы Flash Memory Boot Block (такое они имеют название) должны выдерживать не менее 100 тысяч циклов перезаписи при напряжении 5 вольт. Одним циклом перезаписи считается законченный цикл операций записи и стирания одного и того же блока информации объемом не менее 8 Кб. Естественно, что на микросхему за раз можно записать гораздо больше информации, чем 8 Кб, поэтому ресурс микро-схемы зависит не только от цикла перезаписи, но и от объема перезаписываемой информации и от частоты (периодичности) ее обновления.

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

Структура блочных (параметрических) данных в микросхеме

В микросхемах флэш-памяти для более удобной организации данных в блоках разработана особая структура данных, которая представляет собой форму связных списков. Каждая запись, заносимая в этот список, состоит из двух полей. В первое поле заносится значение параметра заносимой записи. Во втором поле указывается адрес для следующей записи этого же параметра. Первое поле обозначается как "Parameter". После "Parameter" стоит номер, например Parameter1. Также в списке имеется ParameterХ, который является, так сказать, переменным указателем, в котором содержится адрес первой записи данного параметра. Если какая-либо ячейка блока содержит значение Parameter1, то в этой ячейке указан адрес первой записи параметра, который содержит первое значение Parameter1 и адрес второй записи Parameter1. Вторая запись, в свою очередь, содержит последнее значение данного параметра и адрес третьей записи.

В последней записи, обычно в поле "Next_Record", заносится код, который обозначается как FFh. Он указывает на то, что последующих записей больше нет. Этот код представляет собой значение стертого байта по умолчанию.

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

При чтении данных программе совсем не обязательно просматривать все списки. Да такого и не происходит. Программа просто находит последнее значение данного параметра и по его указателю читает нужные коды.

В таблице ниже приведен пример структуры самого простого связного списка. В данном примере (то же самое относится к любой другой структуре) Parameter_Value является переменным и зависит в большей степени от специфики и объема заносимой информации.

Значение Адрес Параметр
01H Parameter1 Parameter1 Pointer Variable
03H Parameter2 Parameter2 Pointer Variable
05H Parameter3 Parameter3 Pointer Variable
F8H 01H Parameter1 Value = F8H
07H 02H Parameter1 Next_Record = 07H
22H 03H Parameter2 Value = 22H
09H 04H Parameter2 Next_Record = 09H
44H 05H Parameter3 Value = 44H
FFH 06H Parameter3 Next_Record = FFH = latest
55H 07H Parameter1 Value = 55H
0BH 08H Parameter1 Next_Record = 0BH
F2H 09H Parameter2 Value = F2H
FFH 0AH Parameter2 Next_Record = FFH = latest
F4H 0BH Parameter1 Value = F4H
FFH 0CH Parameter1 Next_Record = FFH = latest

В более новых разработках технологии записи информации во флэш-память в списки добавляется еще один параметр, который указывает только на то, что определенная запись параметра является самой последней (или обновленной). Поле для этого параметра получило название "Parameter ID". Для считывания в этом случае программа вынуждена проходить (и считывать) каждый параметр, пока не "наткнется" на последнее значение просматриваемого параметра. Но несмотря на это, применение такого способа является альтернативой традиционному способу.

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

Очистка флэш-памяти

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

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

Но даже здесь есть свои особенности! Выше говорилось, что на процесс стирания параметрического блока выделяется до 4,5 секунды. Для такой операции это довольно много. Кроме того, при работе системы столько времени может не оказаться. Все же стирание флэш-памяти не основная и не единственная задача, выполняемая системой. Поэтому программами для работы с флэш-памятью предусмотрена функция приостановки процесса стирания. Приостановка стирания включается в тех случаях, когда системе необходимо прочитать данные, находящиеся в других параметрических блоках. Команду приостановки стирания дает программа, управляющая модулем флэш-памяти. При выполнении этой программы модуль находится в подвешенном состоянии. Аналогичным примером может послужить "зависание" компьютера при работе. Но в случае с флэш-памятью "зависание" относится только к задаче стирания (и к тому же программа в любую секунду может продолжить эту операцию), а что касается чтения, то для этого нет никаких преград. После того как система прочитает данные, расположенные в других блоках, программа в модуль (микросхему) посылает сигнал о продолжении операции стирания. Стирание параметрического блока будет продолжено с того момента, где оно было прервано. Но пока операция стирания блока не будет полностью закончена, новые данные на его место записать будет невозможно.

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

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

В связи с этим возникают определенные требования к системе.

Что же нужно для полноценной работы флэш-памяти?

Объем оперативной памяти, используемый при работе флэш-памяти, зависит, в первую очередь, от характера и сложности заложенной в программу базы работы модуля. Программа, отвечающая за работу модуля флэш-памяти, разделена на подпрограммы, которые выполняют каждая свою функцию. Но в оперативную память загружаются не подпрограммы, а вся программа целиком. Размер кода каждой подпрограммы (подпрограммы для операции записи, стирания, чтения) составляет от 512 байт до 1 Кб.

Еще одним весомым аргументом является то, что программа примерным объемом в 15 Кб загружена в сам модуль флэш-памяти, а в оперативную память выгружается только 1..2 Кб.

Поэтому можно сделать вывод, что первым и довольно весомым требованием к системе будет размер оперативной памяти. Для качест-венной полноценной работы модуля флэш-памяти (и системы в целом) необходимо минимум 16 Мб (а лучше 32 Мб).

Для быстрой и стабильной работы кроме оперативной памяти необходимо выбрать правильный режим питания. Существуют модули, работающие при питании 3,3, 5 и 12 вольт. Большинство современных модулей ориентировано на питание от 12- вольтового источника. Такое напряжение необходимо, в част-ности, для операций внутрисистемного стирания информации и ее записи. Но некоторые микросхемы, ориентированные на 12 вольт, способны работать от источника напряжением 5 вольт. При этом работа флэш-памяти при одном и другом номинале напряжения ничем не отличается. К таким микросхемам флэш-памяти относятся, например, модули семейства Smart Voltage.

Отдельно хочется остановиться на флэш-памяти, ориентированной на 3,3 вольта. Такие модули выпускаются объемом до 4 Кбита. Они позволяют не только улучшить работу приборов, но и оптимизировать энергопотребление. Технологию модулей флэш-памяти на 3,3 вольта разработала фирма Smart Voltage. В этой технологии объединены три параметра - низ-кое энергопотребление, применение только одного номинала напряжения и довольно быстрое программирование. И все это объединено в один "прибор".

Если сравнить модуль флэш-памяти, разработанный для напряжения только на 5 вольт и для напряжений на 3,3 и на 5 вольт, то лучшим окажется модуль с двойным номиналом. Потому флэш-память с двойным напряжением выполняет операции записи и стирания гораздо быстрее. Например, запись блока составляет 10..13 мкс, а запись - 0,5..1 сек.

Еще одним преимуществом модуля с двойным питанием является то, что его можно переключить в режим напряжением 3 вольта. Такой режим в основном используется на микросхемах, установленных в сотовых телефонах и другой портативной технике.

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

Особенность работы флэш-памяти

При работе модуля флэш-памяти для выполнения операций записи, стирания и чтения данных необходимо определить время выполнения этих задач. Для этого в алгоритме работы микросхемы предусмотрена динамическая характеристика.

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

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

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

За все это отвечает динамическая характеристика, которая при работе во многом упрощает работу самого модуля флэш-памяти и программы, управляющей всеми операциями.

Новая технология

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

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

Флэш-память фирмы AMD

Пример микросхем (напряжением 12 вольт)

Микросхема памяти Организация Время доступа, нс
Am28F256A 32K x 8 70-200
Am28F512A 64K x 8 70-200
Am28F010A 128K x 8 90-200
Am28F020A 256K x 8 90-200

Флэш-память с 5-вольтовым программированием

Микросхема памяти Организация Время доступа, нс Число выводов
Am29F010 128K x 8 45-120 32
Am29F100 128K x 864K x 16 70-150 44, 48
Am29F200 256K x 8128K x 16 70-150 44, 48
Am29F040 512K x 8 55-150 32
Am29F400 512K x 8256K x 16 70-150 44, 48
Am29F080 1M x 8 85-150 44, 48
Am29F800 1M x 8512K x 16 85-150 40, 44
Am29F016 2M x 8 90-150 48

Флэш-память с 3-вольтовым программированием

Технические характеристики флэш-памяти AMD:

  • ток питания: 20-30 mA при чтении и 30-50 mA при программировании/стирании;
  • ток потребления в статическом режиме: 25-90 mkA (режим КМОП), 1 mA (режим ТТЛ);
  • количество циклов программирования/стирания: 100 тыс.;
  • время хранения информации: 10 лет при 150°С, 20 лет при 125°С;
  • температурные режимы работы:
    • 0..+70°С (обычный режим);
    • -40..+85°С (индустриальный режим);
    • -55..+128°С (расширенный режим).

Планы Samsung - скоро появится новая флэш-память!

По планам фирмы Samsung Electronics в скором будущем появится гигабитная флэш-память. В исследовательской лаборатории Samsung уже создан прототип чипа для модуля флэш-памяти объемом 1 гигабит. По размерам чип имеет толщину всего лишь 0,15 микрона(!). Если выпускать стандартные платы, то благодаря этому чипу в них будет умещаться огромное количество информации.

Как обещает фирма Samsung, новый чип скоро выйдет в серийное производство. Представители фирмы утверждают, что на него можно будет записать до 500 фотографий разрешением 1280 х 1024. А это действительно очень много! Попробуйте на своем жестком диске создать 500 таких фотографий - убедитесь сами!

На базе таких чипов фирма Samsung Electronics планирует производить модули флэш-памяти, которые будут применяться в основном (в первое время) в цифровых фотоаппаратах и камерах. Возможно, после реализации этих планов производители станут выпускать память и для комплектующих компьютеров. Производители также уверяют, что производство их чипов сразу же изменит технологию производства флэш-памяти во всем мире. Кроме того, производители собираются (опять же на основе этого чипа) разработать модули памяти объемом 256 и 512 Мб (!). Исследования разработки уже проводятся. Новинку - флэш-память размером 1 гигабит - планируется выпустить уже в 2001 году.

Вывод

Флэш-память разработана и применяется для того, чтобы упростить работу системы, в которой она применяется, а также повысить ее производительность. За счет обновления информации через флэш-память система (например, модем, звуковая карта и т.д.) в гораздо меньшей степени использует оперативную память компьютера. Тем самым повышается производительность не только одного прибора, но и всего компьютера в целом.

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

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