Постоянная память (ПЗУ ) - это тип энергонезависимой памяти, используемой в компьютерах и других электронных устройствах. Данные, хранящиеся в ПЗУ, не могут быть изменены электронным способом после изготовления запоминающего устройства . Постоянная память полезна для хранения программного обеспечения, которое редко изменяется в течение срока службы системы, также известного как прошивка. Программные приложения (например, видеоигры ) для программируемых устройств могут распространяться в виде сменных картриджей, содержащих ПЗУ.
Строго говоря, постоянная память - это память, которая является жестко подключенной, например диодная матрица или маска ПЗУ интегральная схема (IC), которая не может быть заменена электронным способом после изготовления. Хотя дискретные схемы могут быть изменены в принципе путем добавления проводов и / или удаления или замены компонентов, микросхемы не могут. Для исправления ошибок или обновления программного обеспечения требуется производство новых устройств и замена установленного устройства.
с плавающей запятой ПЗУ полупроводниковая память в форме стираемая программируемая постоянная память (EPROM), электрически стираемая программируемая постоянная память (EEPROM) и флэш-память можно стирать и перепрограммировать. Но обычно это можно сделать только на относительно низких скоростях, для этого может потребоваться специальное оборудование и, как правило, это возможно только определенное количество раз.
Термин «ROM» иногда используется для обозначения устройства ROM. содержащие определенное программное обеспечение, или файл с программным обеспечением, который должен храниться в EEPROM или флэш-памяти. Например, пользователи, модифицирующие или заменяющие операционную систему Android, описывают файлы, содержащие измененную или заменяющую операционную систему, как «пользовательские ПЗУ » после типа хранилища, в которое файл использовался для записи.
IBM использовала конденсаторную память только для чтения (CROS) и трансформаторную память только для чтения (TROS) для хранения микрокода для меньших моделей System / 360, 360/85 и первых двух моделей System / 370 (370/155 и 370/165 ). На некоторых моделях было также записываемое хранилище элементов управления (WCS) для дополнительной диагностики и поддержки эмуляции. Управляющий компьютер Apollo использовал память каната сердечника, запрограммированную путем пропуска проводов через магнитные сердечники.
Самый простой тип твердотельного ПЗУ так же старый как сама технология полупроводников. Комбинационные логические элементы могут быть объединены вручную для отображения n-битного адреса ввода на произвольные значения m-битного вывода данных (a справочная таблица ). С изобретением интегральной схемы появилось ПЗУ с маской. ПЗУ маски состоит из сетки строк слова (адресный ввод) и битовых строк (вывод данных), выборочно соединенных вместе с помощью переключателей транзисторов, и может представлять произвольный поиск таблица с обычным физическим расположением и предсказуемой задержкой распространения.
В ПЗУ с маской данные физически закодированы в схеме, поэтому их можно запрограммировать только во время изготовления. Это приводит к ряду серьезных недостатков:
Дальнейшие разработки устранили эти недостатки. Программируемая постоянная память (PROM), изобретенная Вэнь Цин Чоу в 1956 году, позволяла пользователям программировать ее содержимое только один раз, физически изменяя ее структуру с применением импульсов высокого напряжения.. Это решило проблемы 1 и 2, описанные выше, поскольку компания может просто заказать большую партию свежих микросхем PROM и запрограммировать их с желаемым содержимым по усмотрению разработчиков.
Появление полевого транзистора металл-оксид-полупроводник (MOSFET), изобретенного в Bell Labs в 1959 году, дало возможность практического использования металл-оксид-полупроводник (МОП) транзисторы в качестве ячейки памяти элементов памяти в полупроводниковой памяти, функция, ранее выполняемая магнитными сердечниками в память компьютера. В 1967 году Давон Кан и Саймон Сзе из Bell Labs предложили, чтобы плавающий затвор полупроводникового устройства MOS можно было использовать для ячейки перепрограммируемого ПЗУ, что привело к тому, что Дов Фроман из Intel изобрел стираемую программируемую постоянную память (EPROM) в 1971 году. Изобретение в 1971 году EPROM по существу решило проблему 3, поскольку EPROM (в отличие от PROM) можно многократно возвращать в незапрограммированное состояние под воздействием сильного ультрафиолетового света.
электрически стираемое программируемое постоянное запоминающее устройство (EEPROM), разработанное Ясуо Таруи, Ютакой Хаяши и Киёко Нага в Электротехнической лаборатории в 1972 году, во многом помогло решить проблему 4, поскольку EEPROM может быть запрограммирован на месте, если содержащее его устройство обеспечивает средства для приема содержимого программы из внешнего источника (например, персонального компьютера через последовательный кабель ). Флэш-память, изобретенная Фудзио Масуока на Toshiba в начале 1980-х и коммерциализированная в конце 1980-х, представляет собой форму EEPROM, которая очень эффективно использует чип область и может быть стерта и перепрограммирована тысячи раз без повреждений. Он позволяет стирать и программировать только определенную часть устройства, а не все устройство. Это может быть сделано на высокой скорости, отсюда и название «flash».
Все эти технологии улучшили гибкость ПЗУ, но со значительной стоимостью на кристалл, так что в больших количествах маскирующее ПЗУ останется экономичный выбор на долгие годы. (Снижение стоимости перепрограммируемых устройств практически привело к исчезновению рынка ПЗУ с масками к 2000 г.) Технологии перезаписи рассматривались как замена ПЗУ с масками.
Самая последняя разработка - это флэш-память NAND, также изобретенная в Toshiba. Его разработчики явно отказались от прошлой практики, прямо заявив, что «цель флэш-памяти NAND - заменить жесткие диски », а не традиционное использование ПЗУ в качестве энергонезависимой первичной памяти. По состоянию на 2007 год NAND частично достигла этой цели, предлагая производительность, сопоставимую с жесткими дисками, более высокую устойчивость к физическим ударам, крайнюю миниатюризацию (в виде USB-накопителей и крошечных microSD карты памяти, например) и гораздо меньшее энергопотребление.
Каждый компьютер с сохраненной программой может использовать форму энергонезависимой памяти (которая то есть хранилище, которое сохраняет свои данные при отключении питания) для хранения начальной программы, которая запускается, когда компьютер включается или иным образом начинает выполнение (процесс, известный как начальная загрузка, часто сокращенно «загрузка "или" загрузка "). Точно так же каждому нетривиальному компьютеру требуется некоторая форма изменяемой памяти для записи изменений в его состоянии во время выполнения.
Формы постоянной памяти использовались в качестве энергонезависимой памяти для программ в большинстве ранних компьютеров с хранимыми программами, таких как ENIAC после 1948 года. (До тех пор это не был компьютер с хранимой программой, поскольку каждую программу приходилось вручную подключать к машине, что могло занимать от нескольких дней до недель.) Постоянную память было проще реализовать, поскольку ей требовался только механизм для чтения сохраненных значений, и не менять их на месте, и, таким образом, могут быть реализованы с очень грубыми электромеханическими устройствами (см. исторические примеры ниже). С появлением интегральных схем в 1960-х годах как ПЗУ, так и его изменяемый аналог статическое ОЗУ были реализованы в виде массивов транзисторов в кремниевых микросхемах; однако ячейка памяти ПЗУ может быть реализована с использованием меньшего количества транзисторов, чем ячейка памяти SRAM, поскольку последней требуется защелка (содержащая 5-20 транзисторов) для сохранения своего содержимого, в то время как ячейка ПЗУ может состоять из отсутствие (логический 0) или наличие (логическая 1) одного транзистора, соединяющего разрядную шину со шиной слов. Следовательно, ПЗУ может быть реализовано с более низкой стоимостью на бит, чем ОЗУ в течение многих лет.
Большинство домашних компьютеров 1980-х годов хранило интерпретатор BASIC или операционную систему в ПЗУ в качестве других форм энергонезависимого хранилища, таких как магнитные диски были слишком дорогими. Например, Commodore 64 включал 64 КБ ОЗУ, а 20 КБ ПЗУ содержали интерпретатор BASIC и «KERNAL » своей операционной системы. Позднее домашние или офисные компьютеры, такие как IBM PC XT, часто включали магнитные диски и больший объем оперативной памяти, что позволяло им загружать свои операционные системы с диска в оперативную память, используя только минимальное ядро инициализации оборудования и загрузчик, оставшийся в ПЗУ (известный как BIOS в IBM-совместимых компьютерах). Такая компоновка позволила создать более сложную и легко обновляемую операционную систему.
В современных ПК «ROM» (обычно NOR flash на ПК) используется для хранения базовой начальной загрузки прошивки для главного процессора, а также различных прошивка, необходимая для внутреннего управления автономными устройствами, такими как графические карты, жесткие диски, DVD-приводы, TFT-экраны и т. Д. В системе. Сегодня многие из этих постоянных запоминающих устройств, особенно BIOS, часто заменяются на флэш-память (см. Ниже), чтобы разрешить перепрограммирование на месте в случае необходимости возникают обновления прошивки. Однако простые и зрелые подсистемы (например, клавиатура или некоторые контроллеры связи в интегральных схемах на основной плате) могут использовать ПЗУ с маской или OTP (одноразовое программирование).
ПЗУ и технологии-преемники, такие как флэш-память, распространены во встроенных системах. Это все: от промышленных роботов до бытовой техники и бытовой электроники (MP3-плееры, телеприставки и т. д.), все из которых предназначены для конкретных функций, но основаны на универсальных микропроцессорах. Поскольку программное обеспечение обычно тесно связано с оборудованием, изменения в программе редко требуются в таких устройствах (в которых обычно отсутствуют жесткие диски по причинам стоимости, размера или энергопотребления). По состоянию на 2008 год в большинстве продуктов используется флэш-память, а не маска ПЗУ, и многие из них предоставляют средства для подключения к ПК для обновления прошивки ; например, цифровой аудиоплеер может быть обновлен для поддержки нового формата файла . Некоторые любители воспользовались этой гибкостью, чтобы перепрограммировать потребительские товары для новых целей; например, проекты iPodLinux и OpenWrt позволили пользователям запускать полнофункциональные дистрибутивы Linux на своих MP3-плеерах и беспроводных маршрутизаторах, соответственно.
ПЗУ также полезно для двоичного хранения криптографических данных, поскольку это затрудняет их замену, что может быть желательно для повышения информационной безопасности.
Поскольку ПЗУ (по крайней мере, в форме жестко зашитой маски) не может быть изменено, оно подходит только для хранения данных, которые, как ожидается, не нуждаются в модификации в течение срока службы устройства. С этой целью ПЗУ использовалось на многих компьютерах для хранения справочных таблиц для оценки математических и логических функций (например, блок с плавающей запятой мог бы табулировать синусоидальную функцию, чтобы ускорить вычисление). Это было особенно эффективно, когда ЦП были медленными, а ПЗУ было дешевым по сравнению с ОЗУ.
Примечательно, что видеоадаптеры ранних персональных компьютеров хранили таблицы растровых символов шрифта в ПЗУ. Обычно это означало, что отображение текста font нельзя было изменить интерактивно. Так было с адаптерами CGA и MDA, доступными с IBM PC XT.
Использование ПЗУ для хранения таких небольших объемов данных почти полностью исчезло в современных компьютерах общего назначения. Однако Flash ROM взял на себя новую роль в качестве носителя для запоминающего устройства или вторичного запоминающего устройства файлов.
.
ПЗУ маски - это постоянное запоминающее устройство, содержимое которого программируется производителем интегральной схемы (а не пользователем). Требуемый объем памяти предоставляется заказчиком производителю устройства. Требуемые данные преобразуются в специальный слой маски для окончательной металлизации соединений на микросхеме памяти (отсюда и название).
Обычной практикой является использование перезаписываемой энергонезависимой памяти, например UV- EPROM или EEPROM, на этапе разработки проект и переключиться на ПЗУ с маской, когда код будет завершен. Например, микроконтроллеры Atmel имеют форматы EEPROM и Mask ROM.
Основным преимуществом ПЗУ масок является его стоимость. По разряду, ПЗУ с маской более компактно, чем любой другой тип полупроводниковой памяти. Поскольку стоимость интегральной схемы сильно зависит от ее размера, ПЗУ с маской значительно дешевле любого другого типа полупроводниковой памяти.
Однако единовременные затраты на маскирование высоки, и от этапа проектирования до этапа производства требуется длительный период времени. Ошибки проектирования обходятся дорого: если обнаруживается ошибка в данных или коде, ПЗУ маски становится бесполезным и должно быть заменено, чтобы изменить код или данные.
По состоянию на 2003 год четыре компании производили большинство таких микросхем ПЗУ с масками: Samsung Electronics, NEC Corporation, Oki Electric Industry и Macronix.
Некоторые интегральные схемы содержат только ПЗУ с маской. Другие интегральные схемы содержат ПЗУ с маской, а также множество других устройств. В частности, многие микропроцессоры имеют ПЗУ маски для хранения своего микрокода . Некоторые микроконтроллеры имеют ПЗУ по маске для хранения загрузчика или всех их прошивок.
Классические ПЗУ с программированием по маске представляют собой интегральные схемы, которые физически кодируют данные, которые должны быть сохранены, и, следовательно, их содержимое невозможно изменить после изготовления.
Применяя защита от записи, некоторые типы перепрограммируемых ПЗУ могут временно стать постоянным запоминающим устройством.
Существуют и другие типы энергонезависимой памяти, которые не основаны на технологии твердотельных ИС, в том числе:
.
Хотя относительная скорость ОЗУ по сравнению с ПЗУ со временем менялась, с 2007 г. большие микросхемы ОЗУ могут считываться быстрее, чем большинство ПЗУ. По этой причине (и для обеспечения единообразного доступа) содержимое ПЗУ иногда копируется в ОЗУ или затеняется перед первым использованием, а затем считывается из ОЗУ.
Для тех типов ПЗУ, которые можно электрически модифицировать, скорость записи традиционно была намного ниже скорости чтения, и может потребоваться необычно высокое напряжение, перемещение перемычек для включения сигналы разрешения записи и специальные коды команд блокировки / разблокировки. Modern NAND Flash обеспечивает наивысшую скорость записи среди всех технологий перезаписываемых ПЗУ, достигая 10 GB /s, это стало возможным благодаря увеличению инвестиций как в потребительские, так и в корпоративные твердотельные накопители и продукты флэш-памяти для мобильных устройств более высокого класса. На техническом уровне выигрыш был достигнут за счет увеличения параллелизма как в конструкции контроллеров, так и в системе хранения, использования больших кэшей чтения / записи DRAM и реализации ячеек памяти, которые могут хранить более одного бита (DLC, TLC и MLC). Последний подход более подвержен сбоям, но это в значительной степени смягчено за счет избыточного выделения ресурсов (включение резервной емкости в продукт, которая видна только контроллеру накопителя) и за счет усложнения алгоритмов чтения / записи во встроенном ПО накопителя.
Поскольку они записываются путем пропуска электронов через слой электрической изоляции на затвор плавающего транзистора, перезаписываемые ПЗУ могут выдерживают лишь ограниченное количество циклов записи и стирания, прежде чем изоляция будет окончательно повреждена. В самых ранних EPROM это могло произойти всего после 1000 циклов записи, в то время как в современных Flash EEPROM срок службы может превышать 1000000. Ограниченный срок службы, а также более высокая стоимость битов означают, что флэш-накопители вряд ли полностью вытеснят магнитные диски в ближайшем будущем.
Временной интервал, в течение которого ПЗУ остается точно читаемым, не ограничивается циклической записью. Сохранение данных в EPROM, EAROM, EEPROM и Flash может быть ограничено по времени из-за утечки заряда из плавающих затворов транзисторов ячейки памяти. EEPROM раннего поколения, в середине 1980-х годов, обычно указывал на срок хранения данных 5 или 6 лет. Обзор EEPROM, предлагаемых в 2020 году, показывает, что производители ссылаются на 100-летнее хранение данных. Неблагоприятные условия окружающей среды сократят время удерживания (утечка ускоряется высокими температурами или излучением ). Маскированное ПЗУ и ППЗУ предохранителя / антипредохранителя не страдают от этого эффекта, поскольку сохранение их данных зависит от физического, а не электрического постоянства интегральной схемы, хотя повторное увеличение предохранителя когда-то было проблемой в некоторых системах.
Содержимое микросхем ROM может быть извлечено с помощью специальных аппаратных устройств и соответствующего управляющего программного обеспечения. Это обычное дело, в качестве основного примера, при чтении содержимого старых видео игровой консоли картриджей. Другой пример - создание резервных копий прошивок / ПЗУ ОС со старых компьютеров или других устройств - в целях архивирования, поскольку во многих случаях исходные микросхемы являются ППЗУ и, следовательно, подвержены риску превышения срока их пригодности для использования.
Результирующие файлы дампа памяти известны как образы ПЗУ или сокращенно ПЗУ, и могут использоваться для создания дубликатов ПЗУ - например, для создания новых картриджей или в виде цифровых файлов для воспроизведения в эмуляторы консоли. Термин «образ ПЗУ» возник, когда большинство консольных игр распространялись на картриджах, содержащих микросхемы ПЗУ, но получил такое широкое распространение, что до сих пор применяется к изображениям более новых игр, распространяемых на CD-ROM или других оптических носителях.
Образы ПЗУ коммерческих игр, микропрограмм и т. Д. Обычно содержат программное обеспечение, защищенное авторским правом. Несанкционированное копирование и распространение программного обеспечения, защищенного авторским правом, является нарушением законов об авторском праве во многих юрисдикциях, хотя копирование в целях резервного копирования может считаться добросовестным использованием в зависимости от местоположения. В любом случае существует процветающее сообщество, которое занимается распространением и продажей такого программного обеспечения и отказывается от программного обеспечения в целях сохранения / обмена.
Дата появления | Название микросхемы | Емкость (бит ) | Тип ПЗУ | MOSFET | Производитель (и) | Процесс | Область | Ссылка |
---|---|---|---|---|---|---|---|---|
1956 | ? | ? | PROM | ? | Arma | ? | ? | |
1965 | ? | 256-битный | ROM | Биполярный TTL | Sylvania | ? | ? | |
1965 | ? | 1 kb | ROM | MOS | General Microelectronics | ? | ? | |
1969 | 3301 | 1 kb | ROM | биполярный | Intel | ? | ? | |
1970 | ? | 512-бит | PROM | Биполярный TTL | Излучение | ? | ? | |
1971 | 1702 | 2 кб | СППЗУ | Статическая МОП (кремниевый затвор ) | Intel | ? | 15 мм² | |
1974 | ? | 4 кб | ПЗУ | МОП | AMD, General Instrument | ? | ? | |
1974 | ? | ? | EAROM | MNOS | General Instrument | ? | ? | |
1975 | 2708 | 8 kb | EPROM | NMOS (FGMOS ) | Intel | ? | ? | |
1976 | ? | 2 kb | EEPROM | MOS | Toshiba | ? | ? | |
1977 | µCOM- 43 (PMOS) | 16 kb | PROM | PMOS | NEC | ? | ? | |
1977 | 2716 | 16 kb | EPROM | TTL | Intel | ? | ? | |
1978 г. | EA8316F | 16 кб | ROM | NMOS | Электронные массивы | ? | 436 мм² | |
1978 | µCOM-43 ( CMOS) | 16 кбайт | PROM | CMOS | NEC | ? | ? | |
1978 | 2732 | 32 кбайт | EPROM | NMOS (HMOS ) | Intel | ? | ? | |
1978 | 2364 | 64 kb | ROM | NMOS | Intel | ? | ? | |
1980 | ? | 16 кб | EEPROM | NMOS | Motorola | 4000 нм | ? | |
1981 | 2764 | 64 кбайт | EPROM | NMOS (HMOS II ) | Intel | 3500 nm | ? | |
1982 | ? | 32 кб | EEPROM | MOS | Motorola | ? | ? | |
1982 | 27128 | 128 kb | EPROM | NMOS (HMOS II) | Intel | ? | ? | |
1983 | ? | 64 kb | EPROM | CMOS | Signetics | 3000 нм | ? | |
1983 | 27256 | 256 кбайт | EPROM | NMOS (HMOS) | Intel | ? | ? | |
1983 | ? | 256 кбайт | EPROM | CMOS | Fujitsu | ? | ? | |
Январь 1984 | MBM 2764 | 64 kb | EEPROM | NMOS | Fujitsu | ? | 528 мм² | |
1984 | ? | 512 кбайт | EPROM | NMOS | AMD | 1,700 нм | ? | |
1984 | 27512 | 512 кб | EPROM | NMOS (HMOS) | Intel | ? | ? | |
1984 | ? | 1 Mb | EPROM | CMOS | NEC | 1,200 нм | ? | |
1987 | ? | 4 МБ | EPROM | CMOS | Toshiba | 800 нм | ? | |
1990 | ? | 16 МБ | EPROM | CMOS | NEC | 600 нм | ? | |
1993 | ? | 8 МБ | MROM | CMOS | Hyundai | ? | ? | |
1995 | ? | 1 МБ | EEPROM | CMOS | Hitachi | ? | ? | |
1995 | ? | 16 МБ | MROM | CMOS | AKM, Hitachi | ? | ? |