Основные положения.

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

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

Допустимое количество ячеек памяти определяется количеством разрядов шины адреса как 2N, где N - количество разрядов шины адреса.

Используются также следующие более крупные единицы объема памяти: килобайт - 210=1024 байта (обозначается Кбайт), мегабайт – 220=1 048 576 байт (обозначается Мбайт), гигабайт - 230 байт (обозначается Гбайт), терабайт - 240 (обозначается Тбайт). Например, если память имеет 65 536 ячеек, каждая из которых 16-разрядная, то говорят, что память имеет объем 128 Кбайт. Совокупность ячеек памяти называется обычно пространством памятисистемы.

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

Обычно в составе системы имеется несколько модулей памяти, каждый из которых работает в своей области пространства памяти. Селектор адреса как раз и определяет, какая область адресов пространства памяти отведена данному модулю памяти. Схема управления вырабатывает в нужные моменты сигналы разрешения работы памяти (CS – Chip Select) и сигналы разрешения записи в память (WR — Write-Read). Буферы данных передают данные от памяти к магистрали или от магистрали к памяти. В пространстве памяти микропроцессорной системы обычно выделяются несколько особых областей, которые выполняют специальные функции.

Классификация модулей памяти.

Классификация памяти необходима для более чёткого понимания того, для чего та или иная память будет использоваться.

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

Постоянное запоминающее устройство (ПЗУ).

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

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

Существует множество различных реализаций ПЗУ. В микроконтроллерах наибольшую популярность получили две технологии. Это – EEPROM (Electronically Erasable Programmable ROM – электрически стираемая программируемая энергонезависимая память) и flash (Flash Erase EEPROM).

EEPROM была разработана в 1979 году фирмой Intel. Эта память имеет возможность перепрограммирования при подключении её к стандартной шине процессора. Причём стирание любой ячейки памяти происходит автоматически при записи в неё новых данных. Т.о. в этом типе памяти существует возможность изменить информацию в одной ячейке без затрагивания соседних ячеек.

Flash память является дальнейшим развитием EEPROM. В ней используется несколько отличный от EEPROM тип ячейки-транзистора. И другая организация доступа к ячейкам памяти. В результате чего доступ к ячейкам стал быстрее. Но стирание в flash памяти производится только для определённого блока данных, либо для всей микросхемы в целом. Стереть один элемент в ней невозможно. А так как запись в этом типе микросхемы (для типа памяти NAND) производится поэлементным «И» текущего состояния ячейки с данными которые надо записать, то верные данные будут записаны в ячейку только в том случае, если в ней будут записаны только одни единицы. Установить в ячейке единицу можно только функцией стирания. Никакой записью данных этого сделать нельзя. Следовательно, для того, чтобы записать данные в одну ячейку памяти, надо скопировать в стороннюю память весь блок, который будет стёрт, стереть его. В памяти поменять значение нужной ячейки и уже изменённый блок записать обратно.

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

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

Flash память бывает двух типов – это NOR и NAND. NOR (Not OR) имеет быстрый произвольный доступ к ячейкам памяти и возможность побайтовой записи. NAND (Not AND) позволяет производить быструю запись и стирание данных, но имеет несколько большее время произвольного доступа к данным по сравнению с NOR.

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

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

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

Адресация в NAND.

Для примера работы с ПЗУ рассмотрим организацию памяти и обращение к ней на примере микросхемы памяти NAND.

Структура памяти NAND представлена на рис 8.2.

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

Общая ёмкость памяти в этом случае равна произведению ёмкости страницы на количество страниц в блоке и на количество блоков в микросхеме памяти. Если у нас, как показано на рис 8.2, микросхема состоит из 2000 блоков, содержащих 128 страниц каждый. В странице содержится 8192 байта памяти. В итоге получаем: 8192*128*2000 = 2 Гбайта памяти. Обычно размер памяти указывают в битах. Т.е. размер рассматриваемой микросхемы составляет 16Гбит, что и будет указано у неё в документации.

Соответственно, для получения одного байта информации на выводе R/W, отвечающем за чтение запись, устанавливается сигнал, говорящий, что будет чтение. Отправляется команда запроса на чтение байта данных. Затем формируется пакет вида, как показано на рис 8.3.

В этом пакете А13-А0 – это адрес байта в странице, А20-А14 – это номер страницы, А32-А21 – это номер блока.

В ответ на этот запрос микросхема должна выдать запрошенный байт. При этом, если требуется считать несколько байт подряд, то достаточно просто продолжать считывать данные, не обновляя адрес. Микросхема автоматически увеличивает адрес на единицу при каждом чтении. Т.е. при использовании данной микросхемы выгодно читать данные сразу страницами (в нашем примере по 8192 байта).

Статьи к прочтению:

ПЗУ — Постоянное Запоминающее Устройство

ПЗУ - быстрая, энергонезависимая память, которая, предназначенная только для чтения. Информация заносится в нее один раз (обычно в заводских условиях) и сохраняется постоянно (при включенном и выключенном компьютере). В ПЗУ хранится информация, присутствие которой постоянно необходимо в компьютере. Комплект программ, находящийся в ПЗУ образовывает базовую систему ввода/вывода BIOS (Basic Input Output System). BIOS (Basic Input Output System - базовая система ввода-вывода) - совокупность программ, предназначенных для автоматического тестирования устройств после включения питания компьютера и загрузки операционной системы в оперативную память.

В ПЗУ находятся:

Тестовые программы, проверяющие при каждом включении компьютера правильность работы его блоков;

Программы для управления основными периферийными устройствами - дисководом, монитором, клавиатурой;

Информация о том, где на диске расположена операционная система.

Типы ПЗУ:

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

ППЗУ (программируемое постоянное запоминающее устройство).

Программирование ПЗУ – это однократно выполняемая операция, т.е. информация, когда-то записанная в ППЗУ, впоследствии изменена быть не может.

СППЗУ (стираемое программируемое постоянное запоминающее устройство). При работе с ним, пользователь может запрограммировать его, а затем стереть записанную информацию.

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

Наглядно ОЗУ и ПЗУ можно представить себе в виде массива ячеек, в которые записаны отдельные байты информации. Каждая ячейка имеет свой номер, причем нумерация начинается с нуля. Номер ячейки является адресом байта.

Центральный процессор при работе с ОЗУ должен указать адрес байта, который он желает прочитать из памяти или записать в память. Разумеется, из ПЗУ можно только читать данные. Прочитанные из ОЗУ или ПЗУ данные процессор записывает в свою внутреннюю память, устроенную аналогично ОЗУ, но работающую значительно быстрее и имеющую емкость не более десятков байт.

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


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

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

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

Структура микропроцессора Устройство управления Устройство управления является функционально наиболее сложным устройством ПК. Оно вырабатывает управляющие сигналы, поступающие по кодовым шинам инструкций во все блоки машины. Упрощенная функциональная схема УУ показана на рис. 4.5. Здесь представлены: Рис. 4.5.Укрупненная функциональная схема устройства управления Регистр команд – запоминающий регистр, в котором хранится код команды: код выполняемой операции и адреса операндов, участвующих в операции. Регистр команд расположен в интерфейсной части МП, в блоке регистров команд. Дешифратор операций – логический блок, выбирающий в соответствии с поступающим из регистра команд кодом операции (КОП) один из множества имеющихся у него выходов. Постоянное запоминающее устройство микропрограмм – хранит в своих ячейках управляющие сигналы (импульсы), необходимые для выполнения в блоках ПК операций обработки информации. Импульс по выбранному дешифратором операций в соответствии с кодом операции считывает из ПЗУ микропрограмм необходимую последовательность управляющих сигналов. Узел формирования адреса (находится в интерфейсной части МП) – устройство, вычисляющее полный адрес ячейки памяти (регистра) по реквизитам, поступающим из регистра команд и регистров МПП. Кодовые шины данных, адреса и инструкций – часть внутренней интерфейсной шины микропроцессора. В общем случае УУ формирует управляющие сигналы для выполнения следующих основных процедур:
  • выборки из регистра-счетчика адреса команды MПП адреса ячейки ОЗУ, где хранится очередная команда программы;
  • выборки из ячеек ОЗУ кода очередной команды и приема считанной команды в регистр команд;
  • расшифровки кода операции и признаков выбранной команды;
  • считывания из соответствующих расшифрованному коду операции ячеек ПЗУ микропрограмм управляющих сигналов (импульсов), определяющих во всех блоках машины процедуры выполнения заданной операции, и пересылки управляющих сигналов в эти блоки;
  • считывания из регистра команд и регистров МПП отдельных составляющих адресов операндов (чисел), участвующих в вычислениях, и формирования полных адресов операндов;
  • выборки операндов (по сформированным адресам) и выполнения заданной операции обработки этих операндов;
  • записи результатов операции в память;
  • формирования адреса следующей команды программы.
Арифметико-логическое устройство предназначено для выполнения арифметических и логических операций преобразования информации. Функционально АЛУ (рис. 4.6) состоит обычно из двух регистров, сумматора и схем управления (местного устройства управления).
Рис. 4.6.Функциональная схема АЛУ Сумматор – вычислительная схема, выполняющая процедуру сложения поступающих на ее вход двоичных кодов; сумматор имеет разрядность двойного машинного слова. Регистры - быстродействующие ячейки памяти различной длины: регистр 1 (Рг1) имеет разрядность двойного слова, а регистр 2 (Рг2) – разрядность слова. При выполнении операций в Рг1 помещается первое число, участвующее в операции, а по завершении операции – результат; в Рг2 – второе число, участвующее в операции (по завершении операции информация в нем не изменяется). Регистр 1 может и принимать информацию с кодовых шин данных, и выдавать информацию на них, регистр 2 только получает информацию с этих шин. Схемы управления принимают по кодовым шинам инструкций управляющие сигналы от устройства управления и преобразуют их в сигналы для управления работой регистров и сумматора АЛУ. АЛУ выполняет арифметические операции (+, -, *, :) только над двоичной информацией с запятой, фиксированной после последнего разряда, т.е. только над целыми двоичными числами. Выполнение операций над двоичными числами с плавающей запятой и над двоично-кодированными десятичными числами осуществляется или с привлечением математического сопроцессора, или по специально составленным программам. Микропроцессорная память Микропроцессорная память - память небольшой емкости, но чрезвычайно высокого быстродействия (время обращения к МПП, т.е. время, необходимое на поиск, запись или считывание информации из этой памяти, измеряется наносекундами – тысячными долями микросекунды). Она предназначена для кратковременного хранения, записи и выдачи информации, непосредственно в ближайшие такты работы машины участвующей в вычислениях; МПП используется для обеспечения высокого быстродействия машины, ибо основная память не всегда обеспечивает скорость записи, поиска и считывания информации, необходимую для эффективной работы быстродействующего микропроцессора. Микропроцессорная память состоит из быстродействующих регистров с разрядностью не менее машинного слова. Количество и разрядность регистров в разных микропроцессорах различны: от 14 двухбайтных регистров у МП 8086 до нескольких десятков регистров разной длины у МП Pentium . Регистры микропроцессора делятся на регистры общего назначения и специальные. Специальные регистры применяются для хранения различных адресов (адреса команды, например), признаков результатов выполнения операций и режимов работы ПК (регистр флагов, например) и др. Регистры общего назначения являются универсальными и могут использоваться для хранения любой информации, но некоторые из них тоже должны быть обязательно задействованы при выполнении ряда процедур. Интерфейсная часть микропроцессора Интерфейсная часть МП предназначена для связи и согласования МП с системной шиной ПК, а также для приема, предварительного анализа команд выполняемой программы и формирования полных адресов операндов и команд. Интерфейсная часть включает в свой состав адресные регистры МПП, узел формирования адреса, блок регистров команд, являющийся буфером команд в МП, внутреннюю интерфейсную шину МП и схемы управления шиной и портами ввода-вывода. Порты ввода-вывода – это пункты системного интерфейса ПК, через которые МП обменивается информацией с другими устройствами. Всего портов у МП может быть 65536. Каждый порт имеет адрес – номер порта, соответствующий адресу ячейки памяти, являющейся частью устройства ввода-вывода, использующего этот порт, а не частью основной памяти компьютера. Порт устройства содержит аппаратуру сопряжения и два регистра памяти – для обмена данными и обмена управляющей информацией. Некоторые внешние устройства используют и основную память для хранения больших объемов информации, подлежащей обмену. Многие стандартные устройства (НЖМД, НГМД, клавиатура, принтер, сопроцессор и др.) имеют постоянно закрепленные за ними порты ввода-вывода. Схема управления шиной и портами выполняет следующие функции:
  • формирование адреса порта и управляющей информации для него (переключение порта на прием или передачу и др.);
  • прием управляющей информации от порта, информации о готовности порта и его состоянии;
  • организацию сквозного канала в системном интерфейсе для передачи данных между портом устройства ввода-вывода и МП.
Схема управления шиной и портами использует для связи с портами кодовые шины инструкций, адреса и данных системной шины: при доступе к порту МП посылает сигнал по КШИ, который оповещает все устройства ввода-вывода, что адрес на КША является адресом порта, а затем посылает и сам адрес порта. То устройство, адрес порта которого совпадает, дает ответ о готовности, после чего по КШД осуществляется обмен данными.

Постоянное запоминающее устройство (ПЗУ) – ЗУ, предназначенное для хранения неизменяемой информации (программ, констант, табличных функций). В процессе решения задач ПЗУ допускает только чтение информации. В качестве характерного примера применения ПЗУ можно указать БИС ПЗУ, используемые в РС для хранения BIOS (Basic Input Output System – базовой системы ввода-вывода).

В общем случае накопитель ПЗУ (массив его запоминающих ячеек) емкостью ЕПЗУ слов, длиною в r + 1 разрядов каждое, обычно представляет собой систему из ЕПЗУ горизонтальных (адресных) и r + 1 вертикальных (разрядных) проводников, которые в точках пересечения могут быть соединены элементами связи (рис. 1.46). Элементы связи (ЭС) – это плавкие вставки или p -n -переходы. Наличие элемента связи между j -м горизонтальным и i -м вертикальным проводниками означает, что в i -м разряде ячейки памяти номер j записана единица, отсутствие ЭС означает, что здесь записан нуль. Запись слова в ячейку номер j ПЗУ производится должной расстановкой элементов связи между разрядными проводниками и адресным проводом номер j . Чтение слова из ячейки номер j ПЗУ происходит так.

Рис. 1.46. Накопитель ПЗУ емкостью ЕПЗУ слов, длиною в r + 1 разрядов каждое

Код адреса A = j дешифрируется, и на горизонтальный проводник номер j накопителя подается напряжение от источника питания. Те из разрядных проводников, которые соединены с выбранным адресным проводником элементами связи, оказываются под напряжением U 1 уровня единицы, остальные разрядные проводники остаются под напряжением U 0 уровня нуля. Совокупность сигналов U 0 и U 1 на разрядных проводниках и образует содержимое ЯП номер j , а именно слово по адресу А .

В настоящее время ПЗУ строят из БИС ПЗУ, у которых используются полупроводниковые ЭС. БИС ПЗУ принято делить на три класса:

– масочные (МПЗУ);

– программируемые (ППЗУ);

– репрограммируемые (РПЗУ).

Масочные ПЗУ (ROM – от Read Only Memory) – ПЗУ, информация в которые записывается с фотошаблона в процессе выращивания кристалла. Например, БИС ПЗУ 555РЕ4 емкостью 2 кбайта представляет собою генератор символов по коду КОИ-8. Достоинством масочных ПЗУ является их высокая надежность, а недостатком – низкая технологичность.

Программируемые ПЗУ (PROM – Programmable ROM) – ПЗУ, информация в которые записывается пользователем при помощи специальных устройств – программаторов. Данные БИС изготавливаются с полным набором ЭС во всех точках пересечения адресных и разрядных проводников. Это повышает технологичность таких БИС, а значит, и массовость в производстве и применении. Запись (программирование) информации в ППЗУ производится пользователем по месту их применения. Делается это путем выжигания элементов связи в тех точках, в которых должны быть записаны нули. Укажем, например, на ТТЛШ-БИС ППЗУ 556РТ5 емкостью 0,5 кбайт. Надежность БИС ППЗУ ниже, чем у масочных БИС. Перед программированием их необходимо тестировать на наличие ЭС.

В МПЗУ и ППЗУ невозможно изменять содержимое их ЯП. Репрограммируемые ПЗУ (РПЗУ) допускают многократную смену хранимой в них информации. Фактически РПЗУ – это ОЗУ, у которых t ЗП>>t ЧТ. Замена содержимого РПЗУ начинается со стирания хранившейся в нем информации. Выпускаются РПЗУ с электрическим (EЕPROM) и ультрафиолетовым (UVEPROM) стиранием информации. Например, БИС РПЗУ с электрическим стиранием КМ1609РР2А емкостью 8 кбайт может перепрограммироваться не менее 104 раз, хранит информацию не менее 15000 ч (около двух лет) во включенном состоянии и не менее 10 лет – в выключенном. БИС РПЗУ с ультрафиолетовым стиранием К573РФ4А емкостью 8 кбайт допускает не менее 25 циклов перезаписи, хранит информацию во включенном состоянии не менее 25000 ч, а в выключенном – не менее 100000 ч.

Основное назначение РПЗУ – использование их вместо ПЗУ в системах разработки и отладки программного обеспечения, микропроцессорных системах и других, когда приходится время от времени вносить изменения в программы.

Работу ПЗУ можно рассматривать как однозначное преобразование N -разрядного кода адреса А в n -разрядный код считываемого из него слова, т.е. ПЗУ является преобразователем кода (цифровым автоматом без памяти).

На рис. 1.47 показано ус­ловное изображение ПЗУ на схемах.

Рис. 1.47. Условное изображении ПЗУ

Функциональная схе­ма ПЗУ приведена на рис. 1.48.

Рис. 1.48. Функциональная схема ПЗУ

По принятой в среде специалистов по запоми­нающим устройствам терминологии входной код называется адресом, 2n вертикальных шин – числовыми линейками, m выходов – разрядами храни-мого слова. При поступлении на вход ПЗУ любого двоичного кода всегда выбирается одна из числовых линеек. При этом на выходе тех элементов ИЛИ, связь которых с данной чис­ловой линейкой не разрушена, появляется 1. Это значит, что в данном разряде выбранного слова (или числовой ли­нейки) записана 1. На выходах тех разрядов, связь кото­рых с выбранной числовой линейкой выжжена, останутся нули. Закон программирования может быть и инверсным.

Таким образом, ПЗУ – это функциональный узел с n входами и m выходами, хранящий 2n m -разрядных слов, которые при работе цифрового устройства не изменяются. При подаче на вход ПЗУ адреса на выходе появляется со­ответствующее ему слово. При логическом проектировании постоянное ЗУ рассматривают или как память с фиксиро­ванным набором слов, или как кодовый преобразователь.

На схемах (см. рис. 1.47) ПЗУ обозначается как ROM. Постоян­ные запоминающие устройства обычно имеют вход разре­шения Е. При активном уровне на входе Е ПЗУ выполняет свои функции. При отсутствии разрешения выходы микро­схемы неактивны. Разрешающих входов может быть не­сколько, тогда микросхема отпирается по совпадению сиг­налов на этих входах. В ПЗУ сигнал Е часто называют чте­нием ЧТ (read), выбором микросхемы ВМ, выбором кристалла ВК (chip select – CS).

Микросхемы ПЗУ приспособлены для наращивания. Чтобы увеличить число разрядов хранимых слов, все входы микросхем включают параллельно (рис. 1.49, а ), а с увеличившегося суммарного числа выходов снимается выход­ное слово соответственно увеличенной разрядности.

Для уве­личения числа самих хранимых слов (рис. 1.49, б ) адресные входы микросхем включают параллельно и рассматривают как младшие разряды нового, расширенного адреса. Добав­ленные старшие разряды нового адреса поступают на де­кодер, который по входам Е выбирает одну из микросхем. При малом числе микросхем дешифрацию старших разря­дов можно делать на конъюнкции разрешающих входов са­мих ПЗУ. Выходы одноименных разрядов при увеличении числа хранимых слов должны объединяться с помощью функций ИЛИ. Специальных элементов ИЛИ не требуется, если выходы микросхем ПЗУ выполнены или по схеме от­крытого коллектора для объединения методом монтажного ИЛИ, или по схеме буфера с тремя состояниями, допуска­ющего непосредственное физическое объединение выходов.

Выходы микросхем ПЗУ обычно инверсные, инверсным часто бывает и вход Е. Наращивание ПЗУ может потребовать введения буферных усилителей для увеличе­ния нагрузочной способности некоторых источников сигна­лов, учета вносимых этими усилителями дополнительных задержек, но в общем при сравнительно небольших объемах памяти, что типично для многих ЦУ (например устройств автоматики), наращива­ние ПЗУ обычно не порождает принципиальных проблем.

Рис. 1.49. Увеличение числа разрядов хранимых слов при параллельном включении входов микросхем и увеличении числа хранимых слов при включении параллельно адресных входов микросхем

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

Применение ПЗУ позволяет достичь большей плотности упаковки информации за счет упрощения запоминающих элементов.

ПЗУ как устройство памяти в целом может работать в одном из двух режимов: чтение или программирование. Программированием ПЗУ называют процесс записи информации в него (в отличие от общепринятого понимания программирования как процесса составления программы).

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

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

По способу программирования выпускаемые полупроводниковые ПЗУ делятся на два типа: МПЗУ - масочные ПЗУ, в которых информация заносится (осуществляется программирование) в процессе изготовления масочным способом; создаются они на базе полевых или биполярных транзисторов;

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

По признаку кратности программирования ЭППЗУ можно разделить на ПЗУ с однократным программированием (ППЗУ) (за счет необратимых изменений их структуры) и ПЗУ с многократной сменой (репрограммированием) информации (РПЗУ).

Электрически программируемые ПЗУ (как ППЗУ, так и РПЗУ) стали неотъемлемыми компонентами МПАС. АСУТП и других систем, где требуется частая модификация программ. Программа обработки информации заносится в них электрическим способом и можем храниться там достаточно долго независимо от наличия или отсутствия питания.

По принципу записи информации ППЗУ можно разделить на две группы:

с пережиганием плавких перемычек; с пробоем перехода вполупроводнике, а РПЗУ - на три:

с формированием электрического заряда в двухслойном диэлектрике МНОП-структуры;

с лавинной инжекцией электрического заряда в область плавающего затвора МОП-структуры (ЛИПЗ МОП):

с изменением проводимости стеклообразного материала. Стирание информации в РПЗУ осуществляется двумя способами; электрическое стирание и воздействие ультрафиолетовыми (УФ) лучами.

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

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

Бит информации, хранящейся в ЗЭ резисторного типа, определяется наличием или отсутствием плавкой перемычки. В состоянии после изготовления ЗЭ хранит 1 (сопротивление перемычки мало), а после пережигания плавкой перемычки - 0. В качестве плавких перемычек широко применяют тонкие пленки из нихрома или полукристаллического кремния (сопротивление перемычки составляет около 10 Ом).

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

Работа ЗЭ диодного типа основана на необратимых явлениях, происходящих при пробое обратносмещенного -перехода. В исходном состоянии ЗЭ диодного типа хранит 0 (его обратное сопротивление очень велико). При программировании к диоду прикладывается запирающее напряжение повышенного уровня, под действием которого -переход пробивается, т. е. происходит короткое замыкание, что соответствует записи логической единицы.

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

Репрограммируемые ПЗУ обычно строятся на принципах сохранения заряда в диэлектрике: в МНОП-структуре (металл-нитрид кремния-оксид кремния-полупроводник), представляющей собой МОП-транзистор, у которого затвор (металлический) отделен от кремниевой подложки диэлектриком, состоящим из двух слоев; в МОП-структуре с использованием эффекта лавинной инжекции электрического заряда в область плавающего (изолированного) затвора (ЛИПЗ МОП).

Другое направление создания РПЗУ, которое признается в настоящее время более перспективным, основано, на обратимых изменениях физической структуры материала, в частности используется свойство порогового переключения аморфных полупроводников.

РПЗУ на МНОП-технологии имеют следующие преимущества: большое допустимое число циклов перепрограммирования ; электрическое стирание. К недостаткам следует отнести: ограниченное время хранения информации (в выключенном состоянии не более 2-10 тыс. ч, в режиме непрерывного считывания - 200 - 500 ч): высокие амплитуда и длительность импульсов перепрограммирования (25-36 В, 5-100 мс), ограниченное время считывания .

Для ЛИПЗ МОП-технологии характерны следующие достоинства: повышенное быстродействие (до 0,1 мкс); большая информационная емкость (до 65-128 К бит); длительное время хранения информации в выключенном и включенном состоянии (до 10 лет). Недостатками являются: ограниченное число циклов перепрограммирования (10-100) и применение УФ-излучения при стирании.

Структура БИС РПЗУ такого типа, например К573РФ13 (К573РФ1) содержит: матрицу-накопитель; регистр; дешифратор адреса; усилители считывания. Структура памяти (организация накопителя) 1024 х 8. время выборки 900 не. Стирание информации производится ультрафиолетовым облучением кристалла микросхемы через окно в крышке корпуса. Количество циклов перепрограммирования около 100. РПЗУ способны сохранять заряд при отключенном питании в течение 2-3 тыс. ч.

РПЗУ с электрическим стиранием обладают рядом эксплуатационных достоинств, особенно важных для экспериментальных систем:

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

Развитие РПЗУ обоих типов (с электрическим и УФ-стиранием) ведет в конечном итоге к получению схем. обладающих достоинствами как первого, так и второго

Перспективы разработки и применения ЭП ПЗУ. Анализ отечественных и зарубежных работ в области МТ показывает, что значение различных видов памяти при создании МПАС все более возрастает. В перспективе архитектуру информационно-вычислительной основы МПАС можно представить в виде подсистемы памяти, которая будет рассматриваться как центральная (и основная) подсистема. и ряда других подсистем.

ПЗУ позволяют в полной мере реализовать основные идеи, лежащие в основе МТ:

возможность хранения программы обработки информации в

компактной и надежной физической среде - в кристалле кремния;

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

энергонезависимость хранения программы, свойственная всем ПЗУ, возможность использования МП как встроенного съемного модуля в различных агрегатах, механизмах, устройствах, системах и пр.

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

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

Перспективны ЭППЗУ и в областях, где требуется дистанционное ренрограччирование МПС, установленной в недоступных или опасных для человека местах, например, в ядерных реакторах, в морских глубинах, в космосе. Сигналы репрограммирования могут быть при этом переданы стандартными радиотехническими средствами на огромные расстояния.

Именно ЭППЗУ позволят физически воплотить такие качества информационных систем, как адаптивность, способность к обучению, переобучению и самообучению.

Большие возможности для создания гибких средств автоматики открываются благодаря применению ЭППЗУ в программируемых логических матрицах (ПЛМ). Ранее ПЛМ для реализации заданной логической функции программировались на стадии изготовления.

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

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

Программирование ЭППЗУ включает в себя формирование адресов, записывающих импульсов и контроль записанной информации. Объектом программирования могут быть отдельная БИС, группа БИС, программируемых одновременно, блок памяти, состоящий из некоторого числа БИС.

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

Программаторы ЭППЗУ классифицируют по:

степени универсальности по отношению к различным типам БИС ЭППЗУ;

производительности - числу одновременно программируемых БИС;

способу управления процессом программирования (ручные, полуавтоматические и автоматические программаторы);

функциональной законченности (различают программаторы автономные и работающие под управлением мини- или микроЭВМ, не входящей в состав программатора);

конструктивному выполнению (программатор может быть выполнен в виде отдельного прибора, программирующей платы, входящей в состав ЭВМ, либо программирующего узла на плате памяти).

Простейший программатор ручного типа содержит тумблеры для набора адреса и данных, формирователи адресного кода, сигналов управления и записи. Такой прибор очень прост в работе, может быть изготовлен в любой лаборатории, но его производительность чрезвычайно низка, поэтому он пригоден для обработки БИС малой информационной емкости, притом небольшими партиями. Процесс программирования при этом медленный, ненадежный, утомительный для оператора. В более сложных программаторах ручного типа возможна индикация адреса и данных в двоичном, десятичном либо шестнадцатеричном коде, а также контроль содержимого ЭППЗУ.

Программируемая логическая матрица (ПЛМ). Представляет собой матрицу вентилей, которую можно запрограммировать в виде различных комбинаций вентилей, реализующих логические функции ИЛИ и И. На их основе могут составляться сложные комбинационные логические схемы. ПЛМ отличаются от ПЗУ только структурой и выпускаются в виде устройств, программируемых маской, и устройств, программируемых пользователем.

На базе такой матрицы могут быть организованы конъюнктивная матрица, реализующая функции И, и дизъюнктивная матрица, реализующая функции ИЛИ.

Реализация более сложных функций возможна при объединении обеих матриц. При подключении к ПЛМ дешифратора полученная схема может выполнять функции ПЗУ.

Такое сочетание выгодно применять при построении устройств памяти небольшой емкости, в которых емкость ПЗУ используется не полностью и поэтому расходы на ПЗУ не оправдываются.

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

ПЛМ изготовляется в виде интегральной однокорпусной схемы.

ПЗУ, ППЗУ, ПЛМ могут быть эффективно использованы при создании МПС. реализующих табличные и таблично-алгоритмические методы обработки информации. Использование табличных процессоров представляется весьма перспективным при создании специализированных «функциональных расширителей» на серийной элементной базе - БИС ОЗУ, ПЗУ, ППЗУ и ПЛМ.