Назначение и основные виды запоминающих устройств (ЗУ)
Запоминающие устройства (ЗУ) служат для хранения информации и обмена ею с другими ЦУ. Микросхемы памяти в общем объеме выпуска ИС занимают около 40% и играют важнейшую роль во многих системах различного назначения. Микросхемы и системы памяти постоянно совершенствуются как в области схемотехники, так и в области развития новых архитектур. В настоящее время созданы и используются десятки различных типов ЗУ.
Важнейшие параметры ЗУ находятся в противоречии. Так, например, большая информационная емкость не сочетается с высоким быстродействием, а быстродействие в свою очередь не сочетается с низкой стоимостью. Поэтому системам памяти свойственна многоступенчатая иерархическая структура, и в зависимости от роли того или иного ЗУ его реализация может быть существенно различной.
В наиболее развитой иерархии памяти ЭВМ можно выделить следующие уровни:
- регистровые ЗУ, находящиеся в составе процессора или других устройств (т. е. внутренние для этих блоков), благодаря которым уменьшается число обращений к другим уровням памяти, реализованным вне процессора и требующим большего времени для операций обмена информацией;
- кэш-память, служащая для хранения копий информации, используемой в текущих операциях обмена. Высокое быстродействие кэш-памяти повышает производительность ЭВМ;
- основная память (оперативная, постоянная, полупостоянная), работающая в режиме непосредственного обмена с процессором и по возможности согласованная с ним по быстродействию. Исполняемый в текущий момент фрагмент программы обязательно находится в основной памяти;
- специализированные виды памяти, характерные для некоторых специфических архитектур (многопортовые, ассоциативные, видеопамять и др.);
- внешняя память, хранящая большие объемы информации. Эта память обычно реализуется на основе устройств с подвижным носителем информации (магнитные и оптические диски, магнитные ленты и др.).
Важнейшие параметры ЗУ
Информационная емкость – максимально возможный объем хранимой информации. Выражается в битах или словах (в частности, в байтах). Бит хранится запоминающим элементом (ЗЭ), а слово – запоминающей ячейкой (ЗЯ), т. е. группой ЗЭ, к которым возможно лишь одновременное обращение. Добавление к единице измерения множителя "К" (кило) означает умножение на 210 = 1024, а множителя "М" (мега) – умножение на 220 = 1048576.
Организация ЗУ– произведение числа хранимых слов на их разрядность. Видно, что это дает информационную емкость ЗУ, однако при одной и той же информационной емкости организация ЗУ может быть различной, так что организация является самостоятельным важным параметром.
Быстродействие (производительность) ЗУ оценивают временами считывания, записи и длительностями циклов чтения/записи. Время считывания – интервал между моментами появления сигнала чтения и слова на выходе ЗУ. Время записи – интервал после появления сигнала записи, достаточный для установления ЗЯ в состояние, задаваемое входным словом. Минимально допустимый интервал между последовательными чтениями или записями образует соответствующий цикл. Длительности циклов могут превышать времена чтения или записи, т. к. после этих операций может потребоваться время для восстановления необходимого начального состояния ЗУ.
Время чтения, записи и длительности циклов – традиционные параметры. Для некоторых современных ЗУ они должны быть дополнены новыми. Причиной является более сложный характер доступа к хранимым данным, когда обращение к первому слову некоторой группы слов (пакета) требует большего времени, чем обращение к последующим. Для таких режимов вводят параметр времени доступа при первом обращении (Latency) и темпа передач для последующих слов пакета (Bandwidth). Темп передач в свою очередь оценивается двумя значениями – предельным (внутри пакета) и усредненным (с учетом Latency). С уменьшением пакета усредненный темп снижается, все более отличаясь от предельного.
Помимо указанных основных параметров для ЗУ указывают еще целый набор временных интервалов. Перечисленные выше динамические параметры являются эксплуатационными (измеряемыми). Кроме них, существует ряд режимных параметров, обеспечение которых необходимо для нормального функционирования ЗУ, поскольку оно имеет несколько сигналов управления, для которых должно быть обеспечено определенное взаимное расположение во времени. Для этих сигналов задаются длительности и ограничения по взаимному положению во времени.
Один из возможных наборов сигналов ЗУ (рис. 5.13, а) включает следующие сигналы:
Рис. 5.13.
- А – адрес, разрядность которого n определяется числом ячеек ЗУ, т. е. максимально возможным числом хранимых в ЗУ слов. Для ЗУ типично число ячеек, выражаемое целой степенью двойки. Адрес является номером ячейки, к которой идет обращение. Очевидно, что разрядность адреса связана с числом хранимых слов N соотношением n = log2N (имеется в виду максимально возможное число хранимых слов). Например, ЗУ с информационной емкостью 64К слов имеет 16-разрядные адреса, выражаемые словами
А = A15A14A13...A0;
- CS – (Chip Select) или СЕ (Chip Enable), который разрешает или запрещает работу данной микросхемы;
- R/W – (Read/Write) задает выполняемую операцию (при единичном значении – чтение, при нулевом – запись);
- DI и D0 (Data Input) и (Data Output) – шины входных и выходных данных, разрядность которых m определяется организацией ЗУ (разрядностью его ячеек). В некоторых ЗУ эти линии объединены.
Требования к взаимному временному положению двух сигналов (А и В) задаются временами предустановки, удержания и сохранения.
Время предустановки сигнала А относительно сигнала В tSU (a - B) есть интервал между началами обоих сигналов.
Время удержания tH (а - в) - это интервал между началом сигнала А и окончанием сигнала В.
Время сохранения ty (а - В) ~ интервал между окончанием сигнала А и окончанием сигнала В.
Длительности сигналов обозначаются как tW (индекс от слова Width – ширина).
Для ЗУ характерна такая последовательность сигналов. Прежде всего подается адрес, чтобы последующие операции не коснулись какой-либо другой ячейки, кроме выбранной. Затем разрешается работа микросхемы сигналом CS (СЕ) и подается строб чтения/записи R/W (взаимное положение сигналов CS и R/W для разных ЗУ может быть различным). Если задана, например, операция чтения, то после подачи перечисленных сигналов ЗУ готовит данные для чтения, что требует определенного времени. Задний фронт сигнала R/W, положение которого во времени должно обеспечивать установление правильных данных на выходе ЗУ, считывает данные.
Пример временной диаграммы для рассмотренного набора сигналов ЗУ и операции чтения приведен на рис. 5.14, б.
Индексом А (от слова Access) обозначаются согласно стандарту времена доступа – интервалы времени от появления того или иного управляющего сигнала до появления информационного сигнала на выходе. Время доступа относительно сигнала адреса обозначается, если следовать правилу, как tA(A), но часто просто как tA. Аналогично этому, время доступа относительно сигнала CS, т. е. tA(CS) часто обозначается просто как tCS. Время tA называют также временем выборки, а время tcs – временем выбора.
Кроме отмеченных параметров для ЗУ используется и ряд других (уровни напряжений, токи, емкости выводов, температурный диапазон и т. д.), которые не требуют специального рассмотрения, т. к. они традиционны для цифровой схемотехники. Исключение составляет свойство энергонезависимости, т. е. способность ЗУ сохранять данные при отключении напряжения питания. Энергонезависимость может быть естественной, т. е. присущей самим ЗЭ, или искусственной, достигаемой введением резервных источников питания, автоматически подключаемых к накопителю ЗУ при снятии основного питания.
Классификация ЗУ
Для классификации ЗУ (рис. 5.15.) важнейшим признаком является способ доступа к данным.
При адресном доступе код на адресном входе указывает ячейку, с которой ведется обмен. Все ячейки адресной памяти в момент обращения равнодоступны. Эти ЗУ наиболее разработаны, и другие виды памяти часто строят на основе адресной с соответствующими модификациями.
Адресные ЗУ делятся на RAM (Random Access Memory) u ROM (Read-Only Memory). Русские синонимы термина RAM: ОЗУ (оперативные ЗУ) или ЗУПВ (ЗУ с произвольной выборкой). Оперативные ЗУ хранят данные, участвующие в обмене при исполнении текущей программы, которые могут быть изменены в произвольный момент времени. Запоминающие элементы ОЗУ, как правило, не обладают энергонезависимостью.
В ROM (русский эквивалент – ПЗУ, т. е. постоянные ЗУ) содержимое либо вообще не изменяется, либо изменяется, но редко и в специальном режиме. Для рабочего режима это "память только для чтения".
RAM делятся на статические и динамические. В первом варианте запоминающими элементами являются триггеры, сохраняющие свое состояние, пока схема находится под питанием и нет новой записи данных. Во втором варианте данные хранятся в виде зарядов конденсаторов, образуемых элементами МОП-структур. Саморазряд конденсаторов ведет к разрушению данных, поэтому они должны периодически (каждые несколько миллисекунд) регенерироваться. В то же время плотность упаковки динамических элементов памяти в несколько раз превышает плотность упаковки, достижимую в статических RAM.
Регенерация данных в динамических ЗУ осуществляется с помощью специальных контроллеров. Разработаны также ЗУ с динамическими запоминающими элементами, имеющие внутреннюю встроенную систему регенерации, у которых внешнее поведение относительно управляющих сигналов становится аналогичным поведению статических ЗУ. Такие ЗУ называют квазистатическими.
Статические ЗУ называются SRAM (Static RAM), а динамические – DRAM (Dynamic RAM).
Рис. 5.15.
Статические ОЗУ можно разделить на асинхронные, тактируемые и синхронные (конвейерные). В асинхронных сигналы управления могут задаваться как импульсами, так и уровнями. Например, сигнал разрешения работы CS может оставаться неизменным и разрешающим на протяжении многих циклов обращения к памяти. В тактируемых ЗУ некоторые сигналы обязательно должны быть импульсными, например, сигнал разрешения работы CS в каждом цикле обращения к памяти должен переходить из пассивного состояния в активное (должен формироваться фронт этого сигнала в каждом цикле). Этот тип ЗУ называют часто синхронным. Здесь использован термин "тактируемые", чтобы "освободить" термин "синхронные" для новых типов ЗУ, в которых организован конвейерный тракт передачи данных, синхронизируемый от тактовой системы процессора, что дает повышение темпа передач данных в несколько раз.
Динамические ЗУ характеризуются наибольшей информационной емкостью и невысокой стоимостью, поэтому именно они используются как основная память ЭВМ. Поскольку от этой памяти требуется высокое быстродействие, разработаны многочисленные архитектуры повышенного быстродействия, перечисленные в классификации.
Статические ЗУ в 4...5 раз дороже динамических и приблизительно во столько же раз меньше по информационной емкости. Их достоинством является высокое быстродействие, а типичной областью использования – схемы кэш-памяти.
Постоянная память типа ROM (M) программируется при изготовлении методами интегральной технологии с помощью одной из используемых при этом масок. В русском языке ее можно назвать памятью типа ПЗУМ (ПЗУ масочные). Для потребителя это в полном смысле слова постоянная память, т. к. изменить ее содержимое он не может.
В следующих трех разновидностях ROM в обозначениях присутствует буква Р (от Programmable). Это программируемая пользователем память (в русской терминологии ППЗУ – программируемые ПЗУ). Ее содержимое записывается либо однократно (в PROM), либо может быть заменено путем стирания старой информации и записи новой (в EPROM и EEPROM). В EPROM стирание выполняется с помощью облучения кристалла ультрафиолетовыми лучами, ее русское название РПЗУ-УФ (репрограммируемое ПЗУ с УФ-стиранием). В EEPROM стирание производится электрическими сигналами, ее русское название РПЗУ-ЭС (репрограммируемое ПЗУ с электрическим стиранием). Английские названия расшифровываются как Electrically Programmable ROM и Electrically Erasable Programmable ROM. Программирование PROM и репрограммирование EPROM и EEPROM производятся в обычных лабораторных условиях с помощью либо специальных программаторов, либо специальных режимов без специальных приборов (для EEPROM).
Память типа Flash по запоминающему элементу подобна памяти типа EEPROM (или иначе E2PROM), но имеет структурные и технологические особенности, позволяющие выделить ее в отдельный вид.
Запись данных и для EPROM и для E2PROM производится электрическими сигналами.
В ЗУ с последовательным доступом записываемые данные образуют некоторую очередь. Считывание происходит из очереди слово за словом либо в порядке записи, либо в обратном порядке. Моделью такого ЗУ является последовательная цепочка запоминающих элементов, в которой данные передаются между соседними элементами.
Прямой порядок считывания имеет место в буферах FIFO с дисциплиной "первый пришел – первый вышел" (First In – First Out), а также в файловых и циклических ЗУ.
Разница между памятью FIFO и файловым ЗУ состоит в том, что в FIFO запись в пустой буфер сразу же становится доступной для чтения, т. е. поступает в конец цепочки (модели ЗУ). В файловых ЗУ данные поступают в начало цепочки и появляются на выходе после некоторого числа обращений, равного числу элементов в цепочке. При независимости операций считывания и записи фактическое расположение данных в ЗУ на момент считывания не связано с каким-либо внешним признаком. Поэтому записываемые данные объединяют в блоки, обрамляемые специальными символами конца и начала (файлы). Прием данных из файлового ЗУ начинается после обнаружения приемником символа начала блока.
В циклических ЗУ слова доступны одно за другим с постоянным периодом, определяемым емкостью памяти. К такому типу среди полупроводниковых ЗУ относится видеопамять (VRAM).
Считывание в обратном порядке свойственно стековым ЗУ, для которых реализуется дисциплина "последний пришел – первый вышел". Такие ЗУ называют буферами LIFO (Last In – First Out).
Время доступа к конкретной единице хранимой информации в последовательных ЗУ представляет собою случайную величину. В наихудшем случае для такого доступа может потребоваться просмотр всего объема хранимых данных.
Ассоциативный доступ реализует поиск информации по некоторому признаку, а не по ее расположению в памяти (адресу или месту в очереди). В наиболее полной версии все хранимые в памяти слова одновременно проверяются на соответствие признаку, например, на совпадение определенных полей слов (тегов – от английского слова tag) с признаком, задаваемым входным словом (теговым адресом). На выход выдаются слова, удовлетворяющие признаку. Дисциплина выдачи слов, если тегу удовлетворяют несколько слов, а также дисциплина записи новых данных могут быть разными. Основная область применения ассоциативной памяти в современных ЭВМ – кэширование данных.
Технико-экономические параметры ЗУ существенно зависят от их схемотехнологической реализации. По этому признаку также возможна классификация ЗУ, однако удобнее рассматривать этот вопрос применительно к отдельным типам памяти.