EEPROM - «Только для чтения», так почему я могу писать в него?


15

Электрически стираемое программируемое постоянное запоминающее устройство ( ЭСППЗУ ):

Если он использует постоянную память ( ПЗУ ), то как я могу записать в нее?


13
Слово «программируемый» намекает на что-нибудь?
Ник Алексеев

2
Исходное ПЗУ было запрограммировано с помощью маски (что, вероятно, вызывает замешательство), но у нас должен быть какой-то способ поместить что-то в другие ПЗУ.
StainlessSteelRat

6
«Программируемый» не будет намекать на что-либо, если за ним следует не-подсказка «только для чтения».
TonyM

4
@TonyM, после того, как вы добавите «стираемое», «программируемое» будет не слишком полезным, если только оно не означает «перепрограммируемое». Но одноразовые программируемые ПЗУ также полезны, поскольку это означает, что вам не нужно знать содержимое, прежде чем вы даже разместите заказ на эту деталь.
Фотон

1
Фактический ответ очень прост: вы можете запрограммировать его, но вы не можете / не должны писать в него. Как сказал Ник, оба термина здесь контекстуальные; «программирование» обычно означает один цикл последовательной записи, направленный на то, чтобы сконфигурировать чип для выполнения того, что он должен делать, обычно на очень низкой скорости - что касается архитектуры Гарварда, вы не сможете записывать в такую ​​память во время приложения выполнение. Регулярное «запись» означает только это - хранение данных во время выполнения программы, обычно с быстрым и / или произвольным доступом.

Ответы:


27

У аббревиатуры EEPROM есть некоторая история, которая следует за развитием технологии.

ROM : постоянная память. Написано на заводе.

PROM : программируемая постоянная память, но программируемая (один раз) пользователем. Действительно одноразовая программируемая, всегда читаемая память. Поймите неправильно, и вы выбросите чип.

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

ЭСППЗУ : электрически стираемое программируемое постоянное запоминающее устройство. Может быть удален или переписан под управлением программы.

1

Рисунок 1. EPROM Intel 1702A, один из первых типов EPROM, 256 на 8 бит. Небольшое кварцевое окно пропускает ультрафиолетовый свет. Источник: Википедия EPROM .

Итак, я слышу, как вы говорите, почему они называют это EEPROM, когда это доступно для записи? Я подозреваю, что ответ на этот вопрос заключается в том, что в отличие от ОЗУ (оперативного запоминающего устройства) он сохраняет свое содержимое во время цикла питания и, следовательно, ведет себя больше как ПЗУ .


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

1
Ах, 1702, первый EPROM, который я использовал. У него было странное соглашение о том, что вы должны программировать обратное тому, что вы хотели из него получить, потому что по какой-то причине процессор 4004, с которым он был разработан, использовал соглашение с отрицательной логикой для документирования своего кода сборки. Так что это исправление должно было сделать вещи «проще»!
Neil_UK

3
И если вы перейдете к эволюции ROM-> PROM-> EPROM-> EEPROM к следующему шагу, у вас будет «флэш» память. Широко используется в USB-накопителях, твердотельных «жестких» дисках, постоянной памяти во всех видах потребительских гаджетов и т. Д. И т. Д.
Ричард Кроули,

Удержание содержимого между циклами питания - далеко не единственное место, в котором PROM резко не хватает по сравнению с ОЗУ, эквивалентным для чтения, что, как я надеюсь, ясно дает ответ.
underscore_d

ОЗУ является энергозависимым, EEPROM энергонезависимым, он запоминает после цикла питания. Ром энергонезависимый. eeprom вы в основном читаете и в основном не пишете, ром вы читаете и не пишете. Так что EEPROM очень похож на ROM, и, как описал транзистор, он был частью эволюции энергонезависимых решений.
old_timer

7

Меня сбивает с толку то, что многие комментаторы считают, что термин ROM - это исключительно маркетинговый ход или относится только к потере данных при отключении питания.

PROM очень «только для чтения», в определенном смысле, что запись в него таким же образом и в тех же контекстах, что и в «эквивалентном» ОЗУ, невозможна. Это потому, что E / EPROM требует:

  • стирание УФ (EPROM) или циклом 0xFF (EEPROM),
  • переключение в другой режим для программирования («записи») данных,
  • что в некоторых случаях требует различных условий питания, времени ожидания и т. д.
  • Ограничения циклов записи сделают все существующие PROM бесполезными для такого рода передачи / манипулирования большими объемами данных, которые требуются многим программам.

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

PROM находится в совершенно другой лиге, чем RAM с эквивалентными спецификациями чтения. Следовательно, почему это не было продано как любая форма RAM. Обратная реакция была бы колоссальной!

Так что, возможно, мы могли бы назвать это Read Mostly Memory или, для педантов, EWRPROM: записываемая в конечном счете, практически всегда доступная постоянная память во время выполнения ... но в практическом плане, ROM - это удар по цели.


5
« ... запись в него таким же образом и в тех же контекстах, что и при использовании« эквивалентного »ОЗУ, невозможна». Но это не был вопрос ОП и для многих приложений, таких как сохранение настроек конфигурации, распечатанных страниц и т. д., EEPROM идеален, несмотря на медленную скорость. Независимо от скорости записи, он все еще доступен для записи.
Транзистор

@transistor Ну, так же, как вопрос зависит от семантики, так же как и ответы ... поэтому я не уверен, что возможен какой-либо «один истинный» ответ. Я хотел сказать, что он не «доступен для записи» одним общепринятым значением этого термина. Вот почему, как указал vaxquis, был введен альтернативный термин « программируемый» . Я добавил свой дубль, так как чувствую, что эта важная деталь была пропущена в этой теме до этого. Но, конечно, вы правы, что EEPROM достаточно в соответствующих случаях, поэтому спасибо за детали.
underscore_d

3

Ранее программируемые запоминающие устройства предназначались для записи при подключении к одному устройству, а затем чтения при подключении к другому. Хотя устройства обычно можно было прочитать, находясь в устройстве программирования (таким образом, устройство программирования могло подтвердить, что они были написаны правильно), программирование устройств часто требует применения необычных напряжений, которые не были бы доступны в большинстве устройств, которые должны были их читать. Кроме того, операции записи были на несколько порядков медленнее, чем операции чтения. Более поздние устройства были усовершенствованы, чтобы устранить такие требования, позволяя программировать их на устройстве, где оно будет использоваться после программирования, но разница между скоростями чтения и записи остается.


1

Это электрически стираемое, так что вы можете написать в него.

Это не имеет смысла, когда вы расширяете ROM в слова. Но я понимаю, что EPROM был так назван его изобретателем, Intel, как маркетинговое увлечение, которое означало «Так же, как ROM - но вы можете изменить его самостоятельно». Это было в мире 1972 года, где ПЗУ означало огромное количество за смену маски.

EEPROM следует из этого прецедента.


4
PROM: программируемая постоянная память (не только устанавливается на заводе). EPROM: стираемое программируемое постоянное запоминающее устройство. Обычно требуется ультрафиолетовое воздействие, чтобы стереть. ЭСППЗУ: электрически стираемое программируемое постоянное запоминающее устройство, позволяющее сэкономить много времени, не садясь на устройство в солярии каждый раз, когда вы хотите его перепрограммировать.
Фотон

1
У UV EPROM, которые я видел, есть маленькие окна в пластмассе. Вы закрываете их, когда не стираете.
mkeith

1
Назначение ПЗУ имеет много смысла, когда вы задумываетесь о практичности, представленной в моем ответе, о попытке использовать ППЗУ, как если бы это была ОЗУ. Попробуйте и посмотрите. Я буду ждать!
underscore_d

@underscore_d, на самом деле мне надоело думать, и я не уверен, как твой комментарий весит против твоего несколько обратного хода позже "Ну, так же, как вопрос зависит от семантики, так и ответы ... так что я ' Я не уверен, что любой «один верный» ответ возможен ». В любом случае, в 1972 году было очень мало типов памяти, а ROM был отдельным типом. Как самостоятельная аббревиатура, EEPROM действительно сбивает с толку, согласно вопросу OPs.
TonyM

1

Я нашел потенциальный ответ при написании вопроса

Смотря на эту статью ROM в Википедии то звучит так, как будто некоторые ПЗУ позволят писать, но если это произойдет, скорость записи будет низкой или вообще будет затруднена, если это возможно.

Еще один интересный момент заключается в том, что EEPROM имеет ограниченное количество раз, когда он может быть записан. В статье упоминается, что EEPROM можно стирать и записывать тысячи раз, но все же!


1
Это слишком упрощенное объяснение, и оно не может распознать ключевые различия между различными типами ПЗУ (например, маска ПЗУ в сравнении с ППЗУ ОТП в сравнении с ППЗУ, ЭСППЗУ и флэш-памятью).
duskwuff -неактивный-

@ Duskwuff Похоже, у вас есть отличная информация по теме. Пожалуйста, поделитесь.
Джексонкр

2
Цитата из Википедии, на которую вы ссылаетесь, - это дань всем различным типам, но @Jacksonkr прав; это чрезмерно упрощает. ROM не может быть написан вообще. PROM можно написать один раз. EPROM можно переписать, но только после воздействия УФ-лампы. (т.е. медленно и с трудом. ) ЭСППЗУ можно переписать, но только после того, как вы дадите ему команду стереть (т.е. медленно ).
Роберт Харви

2
@RobertHarvey Я думаю, вы имели в виду "@duskwuff это правильно"?
Джексонкр

1
[вздох] А теперь все комментарии перепутаны.
Роберт Харви

1

ЭСППЗУ и даже флэш-память используют эволюцию той же технологии (плавающего затвора), которую используют ЭСППЗУ, а не технологии, которая будет использоваться для устройств SRAM или DRAM.

ЭСППЗУ сильно асимметричны в режиме чтения и записи: циклы чтения практически не ограничены, быстры (десятки или сотни наносекунд) и всегда возможны только при применении основных рабочих напряжений. Циклы записи намного медленнее и иногда требуют применения дополнительных напряжений (параллельная EEPROM 2816 потребует дополнительного источника питания 12 В для некоторых операций программирования и будет иметь время записи в сотни микросекунд или даже медленнее в зависимости от конкретной модели и модели, и имеют ограниченные циклы записи).

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

Обратите внимание, что некоторые (не все!) Устройства, продаваемые как PROM или ROM, были внутренними OTP (без окон) EPROM.


0

Это только ПЗУ по сравнению с энергозависимой ОЗУ (оперативная память, которая теряет свое состояние после потери питания). Наследие, которое уже не имеет смысла после десятилетий.


2
Я не согласен, прохожий; имя действительно имеет смысл в контексте. У нас есть NVRAM, и у нас есть EEPROM. Оба термина выделяют разные ожидаемые режимы использования памяти, разные скорости чтения / записи, разное время хранения данных и т. Д.

-1

EPROM / PROM ЧИТАЕТСЯ ТОЛЬКО В РАБОТЕ. Когда вы запускаете намеченное приложение (ПК, встроенный контроллер и т. Д.), Оно не может быть записано запущенной программой. Вы должны вынуть его и ввести в специальный пишущий аппарат, где вы пишете все содержимое сразу.

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

ОЗУ, включая NVRAM, может быть записано во время выполнения хост-устройством.

Хотя все ПЗУ энергонезависимы, а МОСТ ОЗУ энергозависимы, NVRAM энергонезависима, так что это не единственное различие между ними.


ПЗУ доступно только для чтения. « Вы должны вынуть его и ввести в специальный пишущий аппарат, где вы записываете все содержимое сразу». Это программирует его так, что по определению это устройство PROM (программируемая постоянная память). « Время выполнения » не применяется. Это не компилятор. Добро пожаловать в EE.SE.
Транзистор

Я имел в виду EEPROM или PROM и по ошибке только написал ROM
Trashman

2
Все еще не прав. ЭСППЗУ доступно для записи хост-устройством. Обычно используется для сохранения настроек конфигурации. Смотрите другие ответы на странице.
Транзистор

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

Нет, это тоже задом наперед. В «модифицированной» гарвардской архитектуре вы, как правило, можете писать в пространство кода, как правило, менее эффективно, это только в чистом виде, где вы не можете. А что касается самого ответа, базовый 8052AH поддерживал использование (УФ) СППЗУ в качестве записываемой памяти во время выполнения - вам потребовалось примерно 12В питания и транзистор для его включения. Конечно, он не может стереть его в цепи, но он может продолжать добавлять сохраненные программы, пока не закончится свободное место.
Крис Страттон
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.