Динамические оперативные запоминающие устройства. Типы динамических озу

  • 29.07.2019

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

Память типа SDRAM. Рассмотрим основные особенности синхронной динамической памяти SDRAM.

Состав и назначение сигналов. В состав сигналов синхронной памяти входят сигналы RAS #, CAS #, WE #, MA #, которые выполняют те же функции, что и в асинхронной динамической памяти. Помимо приведенных сигналов используются сигналы, свойственные только динамической памяти SDRAM. К ним относятся:

  • CLK (Clock) – тактовые импульсы синхронизации, действующие по положительному перепаду (0 → 1);
  • СКЕ (Clock Enable) – разрешение/запрещение синхронизации при СКЕ= 1/0. Отсутствие синхроимпульсов уменьшает энергопотребление памяти. Переход в режим с пониженным энергопотреблением осуществляется с помощью специальных команд при СКЕ= 0. Следует выделить три режима :

■ режим пониженного потребления (Power Down Mode), реализующийся командами NOP или INHBT. В этих режимах микросхема памяти не воспринимает управляющих команд. Длительность пребывания в них ограничена периодом регенерации;

■ режим приостановки синхронизации (Clock Suspend Mode), в котором отсутствует передача данных и не воспринимаются новые команды. В этот режим микросхема переходит во время выполнения команды чтения или записи при установке сигнала СКЕ=0;

■ режим саморегенерации, в который микросхема переходит по команде Self Refresh. В этом режиме периодически выполняются циклы регенерации по внутреннему таймеру при отключенной внешней синхронизации;

  • CS # (Chip Select) – выбор микросхемы. При CS# = 0 разрешается декодирование команд; при CS # = 1 декодирование команд запрещается, однако выполнение начатых команд продолжается;
  • BSO, BSl (Bank Select) или ВA 0, ВA 1 (Bank Address) – выбор банка, к которому адресуется команда;
  • Д и А 1 задают адрес столбца, сигнал А 10 = 1 включает режим автопредзаряда. В циклах Precharge сигнал A 10=1 включает режим предзаряда всех банков независимо от значений сигналов 550, 551;
  • DQ (Data Input/Output) – двунаправленные линии ввода-вывода данных;
  • DQM (Data Mask) – маскирование данных. В цикле чтения при DQM= 1 шина данных через два такта переводится в высокоимпедансное состояние (отключается). В цикле записи при DQM – 1 запрещается запись текущих данных, при DQM = 0 разрешается запись без задержки.

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

В памяти SDRAM имеется возможность активизации строк в нескольких банках. Каждая строка активизируется своей командой ACT во время выполнения любой операции с другим банком. После активизации строки выбранного банка при записи и чтении строку можно закрывать не сразу, а после выполнения серии обращений к ее элементам. Для обращения к открытой строке требуемого банка используются команды чтения RD и записи WR, в которых указаны адрес столбца и номер банка. Можно так организовать процессы записи/чтения, что шина данных в каждом такте будет нести очередную порцию данных для серии обращений к разным областям памяти. Так как дтя обращений не требуются команды активизации, они будут выполняться быстрее. С помощью сигнала выборки микросхемы CS# можно держать открытыми строки в банках разных микросхем, объединенных общей шиной памяти.

С помощью счетчика весьма просто реализуется пакетный режим работы. При инициализации могут быть запрограммированы длина пакета (1, 2, 4, 8 элементов), порядок адресов в пакете (чередующийся или линейный) и операционный режим (пакетный режим для всех операций или только для чтения). С помощью сигнала DQM = 1 в режиме записи осуществляется блокирование записи любого элемента пакета, а в режиме чтения – перевод в высокоимпедансное состояние буфера данных.

Благодаря исключению циклов ожидания, чередованию адресов, пакетному режиму, трехступенчатой конвейерной адресации удалось сократить время рабочего цикла микросхемы до 8...10 нс (1: 10 нс = 100 МГц) и повысить скорость передачи данных до 800 Мбайт/с при тактовой частоте системной шины 100 МГц.

Память типа DDR SDRAM (Dual Data Rate – удвоенная скорость данных). Основная особенность памяти DDR по отношению к обычной SDRAM состоит в том, что переключение данных производится по фронту и срезу тактовых импульсов системной шины. Это дает возможность выполнить два обращения за тактовый интервал и повысить быстродействие в два раза. При передаче данных по фронту и срезу импульсов синхронизации к временным параметрам управляющих сигналов и данных предъявляются повышенные требования. Для их удовлетворения приняты следующие меры: введен стробирующий сигнал DQS; используются два синхроимпульса CLK1 и CLK2, а также дополнительные аппаратные средства. В отличие от обычных микросхем SDRAM, у которых данные для записи передаются одновременно с командой, в DDR SDRAM данные для записи подаются с задержкой на один такт (Write Latency). Значение CAS Latency может быть дробным (CL = 2, 2,5, 3).

На частоте 100 МГц DDR SDRAM имеет пиковую производительность 200 Мбит на один вывод (пин), что в составе 8-байтных модулей DIMM соответствует производительности 1600 Мбайт/с. На частоте 133 МГц производительность составляет 2100 Мбайт/с.

Память типа RDRAM. В 1992 г. американская фирма Rambus приступила к разработке нового типа памяти, которая получила название RDRAM (Rambus DRAM). Запоминающее ядро этой памяти построено на обычных КМОП-ячейках динамической памяти. Однако интерфейс памяти существенным образом отличался от традиционного синхронного интерфейса. Высокоскоростной интерфейс Rambus RDRAM обеспечивает возможность передачи данных со скоростью до 600 Мбайт/с через шину данных разрядностью 1 байт. Эффективная пропускная способность достигает величины 480 Мбайт/с, что в 10 раз превышает аналогичный показатель для устройств EDO DRAM. Время доступа к ряду ячеек памяти составляет менее 2 нс в расчете на байт, а время задержки (время доступа к первому байту массива данных) – 23 нс. При обмене большими массивами данных память Rambus является оптимальным вариантом в смысле отношения производительность/стоимость . Дальнейшим развитием стал интерфейс Direct DRAM, или просто DDRAM, с 16-разрядной (18-разрядной для микросхем с битами контроля) шиной данных. Память RDRAM используется в высокопроизводительных персональных компьютерах с 1999 г. и поддерживается в наборах микросхем системной логики.

Структура подсистемы памяти RDRAM состоит из контроллера памяти, капала и собственно микросхем памяти (рис. 10.9).

Память RDRAM по отношению к другим типам памяти (FPM/EDO и SDRAM) имеет следующие отличительные особенности:

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

Рис. 10.9.

до 400 МГц, что обеспечивает производительность, равную 16x400x2/8 = 1600 Мбайт/с (с учетом передачи данных по фронту и срезу синхроимпульсов). Для повышения производительности можно использовать двух- и четырехканальные RDRAM, которые позволяют увеличить скорость передачи данных до 3,2 или 6,4 Мбайт/с соответственно. Двухканальная память РС800 RDRAM, используемая в настоящее время, является наиболее быстрым типом памяти (ненамного опережая РС2100 DDR SDRAM);

  • передача адреса ячейки происходит по отдельным шинам: одна – для адреса строки, другая – для адреса столбца. Передача адресов осуществляется последовательными пакетами. В процессе работы RDRAM выполняется конвейерная выборка из памяти, причем адрес может передаваться одновременно с данными;
  • для повышения производительности было предложено еще одно конструктивное решение: передача управляющей информации отделена от передачи данных по шине. Для этого предусмотрены независимые схемы управления и выделены две группы шин: адресные шины для команд выбора строки и столбца и информационная шина для передачи данных шириной 2 байта;
  • потребляет мало энергии. Напряжение питания модулей памяти R1MM, как и устройств RDRAM, достигает только 2,5 В. Напряжение низковольтного сигнала изменяется от 1,0 до 1,8 В, т.е. перепад напряжений равен 0,8 В. Кроме того, RDRAM имеет четыре режима пониженного потребления энергии и может автоматически переходить в режим ожидания на завершающей стадии транзакции, что позволяет еще больше экономить потребляемую мощность.

Память с виртуальными каналами – VC SDRAM. Назначение памяти. В современном компьютере доступ к оперативной памяти осуществляется различными устройствами. Одни из устройств (программы, которые выполняются параллельно в многозадачной операционной системе) бронируют для себя определенные области памяти. Такие устройства, как процессор, IDE- и SCSI-контроллеры, звуковые карты и видеокарты AGP и другие, обращаются к оперативной памяти напрямую. При одновременном обращении к памяти нескольких устройств происходит задержка их обслуживания. Для устранения этого недостатка была разработана специальная архитектура модуля памяти, включающая в себя 16 независимых каналов памяти. Каждому устройству (программе) для обращения к памяти выделен отдельный канал.

Архитектура памяти. Особенность архитектуры памяти с виртуальными каналами (Virtual Channel Memory Architecture) состоит в том, что между массивом запоминающих ячеек и внешним интерфейсом микросхемы памяти размещено 16 канальных буферов (рис. 10.10). В виртуальные каналы могут объединяться несколько буферов. По составу и уровням сигналов микросхемы VC SDRAM (Virtual Channel SDRAM) аналогичны обычным SDRAM (имеют внешнюю организацию по 4, 8 или 16 бит данных), однако отличаются структурой, системой команд и рядом других показателей. Микросхема содержит два банка (А и В), выполненных в виде квадратной матрицы. Каждая строка матрицы разбивается на 4 сегмента. Для микросхемы емкостью 128 Мбит размер матрицы составляет 8К х 8К, строка имеет объем 8К бит, а сегмент – 2К бит. Емкость канального буфера также составляет 2К бит. За одно обращение к матрице выполняется параллельная передача 2К бит данных между одним из буферов и сегментом выбранной строки. Микросхемы устанавливаются в 168-контактный модуль DIMM.

Организация обмена. Операции обмена данными разделяются на две фазы:

внешний обмен данными между источником информации и канальным буфером. Эта фаза обмена осуществляется через контроллер памяти (на рис. 10.10 не показан) и выполняется по командам чтения и записи (READ и WRITE), в которых указывается номер канала и адрес столбца. Обмен происходит в пакетном режиме. Длина пакета программируется и может составлять 1, 2, 4, 8 или 16 передач (элементов). Первые данные при чтении канала появляются с задержкой в 2 такта относительно команды чтения, следующие идут в каждом такте;

Рис. 10.10.

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

■ с помощью команд предвыборки PRFA и сохранения RSTA, поступающих сразу после обращения к массиву памяти, автоматически осуществляется деактивизация строк (предварительный заряд). Для деактивизации выбранного банка и обоих банков сразу можно использовать специальные команды;

■ по команде ACT, которая задает банк (А или В) и адрес строки, активизируется требуемая строка матрицы;

■ командами PRF (Prefetch) и RST (Restore) реализуется чтение массива в буфер и сохранение данных буфера в массиве. В командах указывается номер банка, номер сегмента и номер канала.

Обе фазы обмена выполняются по командам со стороны внешнего интерфейса почти независимо друг от друга. Список используемых команд приведен в табл. 10.1.

Регенерация VC DRAM выполняется периодической подачей команд REF (авторегенерация по внутреннему счетчику адреса регенерируемых строк) либо в энергосберегающем режиме саморегенерации, в который микросхемы переходят по команде SELF.

Многие современные Chipset поддерживают модули DIMM VCM SDRAM.

Следует отметить, что возможность использования того или иного типа памяти определяется чипсетом системной платы.

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

(См. оригинал)

Рис. 11.29. 12-разрядные двухканальвые ЦАП (с любезного разрешения Analog Devices), а - микросхема 7537 с шириной загрузки 1 байт; б - микросхема 7547 с шириной загрузки 12 бит.

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

Статические и динамические ОЗУ.

В статических ОЗУ биты хранятся в матрицах триггеров, в то время как в динамических ОЗУ - в заряженных конденсаторах. Бит, записанный в статическое ОЗУ, остается в нем до тех пор, пока не будет перезаписан, или пока не выключится источник питания. В динамическом ОЗУ данные, если их не «регенерировать», исчезнут менее чем через секунду. Другими словами, динамическое ОЗУ непрерывно забывает данные, и чтобы их сохранить, приходится периодически опрашивать «строки» двумерной матрицы битов в микросхеме памяти. Например, в ОЗУ объемом 256 кбит к каждому из 256 рядов приходится обращаться каждые 4 мс.

Вы можете задаться вопросом, кому же придет в голову выбирать динамическое ОЗУ? Дело в том, что обходясь без триггеров, динамическое ОЗУ занимает меньше места, в результате чего микросхема большей емкости оказывается дешевле. Например, популярное сегодня статическое ОЗУ емкостью кбит) стоит около 10 долл., в два раза больше нынешней цены динамического ОЗУ емкостью 1 Мбит. В результате, используя динамические ОЗУ, вы за половину стоимости будете иметь в 4 раза больше памяти.

Теперь, наверное, вы удивляетесь, кому же нужны статические ОЗУ (что-то вас кидает из стороны в сторону)? Основное достоинство статических ОЗУ заключается в их простоте. Отпадает необходимость в циклах регенерации, не нужно заботиться об их синхронизации (циклы регенерации конкурируют с обычными циклами обращения к памяти и должны поэтому жестко синхронизоваться). В простых системах с ограниченным числом микросхем памяти естественно использовать статические ОЗУ. К тому большая часть нынешних статических ОЗУ используют КМОП-технологию, что существенно для приборов с батарейным питанием. Между прочим, статическое КМОП ОЗУ, автоматически переключаемое на батарейное питание при выключении основного (с помощью микросхемы управления питанием типа ), представляет неплохую альтернативу ПЗУ в качестве энергонезависимой памяти. Другим достоинством статических ОЗУ является их высокое быстродействие (выпускаются микросхемы с характерным временем 25 не и менее), а также удобная компоновка секциями по 8 бит. Рассмотрим оба типа ОЗУ подетальнее.

Статические ОЗУ. Мы уже столкнулись со статическим ОЗУ в нашей микропроцессорной разработке, где одно такое ОЗУ емкостью использовалось для размещения данных, стека и рабочей области (программа была записана в РПЗУ). Организовать обмен данными со статическим ОЗУ проще простого: в цикле чтения вы устанавливаете сигналы адреса, выбора микросхемы (CS) и разрешения выхода (ОЕ); запрошенные данные появляются на тристабильных линиях данных спустя максимум (адресное время доступа). В цикле записи вы устанавливаете сигналы адреса, данных и CS, а затем (спустя время упреждения адреса ) импульс разрешения записи (WE); достоверные данные записываются в конце импульса WE. Действующие временные ограничения для 120 не статического ОЗУ показаны на рис. 11.30, из которого видно, что «быстродействие» памяти - это время от установки достоверного адреса до достоверных данных (при чтении) или до завершения цикла записи (при записи).

Рис. 11.30. Синхронизация статического ОЗУ с быстродействием 120 нс. а - цикл чтения, б - цикл записи.

Для статических ОЗУ интервал времени между последовательными обращениями к памяти («длительность цикда») равен времени доступа; для динамических ОЗУ, как будет показано ниже, это не так.

Микросхемы статических ОЗУ могут иметь емкость от 1 Кбит (или меньше) до 1 Мбит при ширине 1, 4 или 8 бит. Быстродействие (время доступа) колеблется от 150 до 10 не или около того. В настоящее время широко используются недорогие статические КМОП ОЗУ емкостью с временем доступа 80 не, а также меньше по емкости, но более быстродействующие не) статические КМОП ОЗУ для кеш-памяти. Варианты микросхем могут иметь отдельные выводы для входов и выходов, два порта доступа и то или иное внешнее оформление (например, однорядный корпус ).

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

Упражнение 11.18. А почему?

Динамические ОЗУ. По сравнению со статическими ОЗУ динамические ОЗУ - это сплошная мигрень. На рис. 11.31 показан нормальный цикл. Адрес (содержащий, например, для ОЗУ объемом 1 Мбайт 20 бит) расщепляется на две группы и мультиплексируется на вдвое меньшее число выводов, сначала «адрес строки», стробируемый сигналом Address Strobe - строб адреса строки), а затем «адрес колонки», стробируемый сигналом CAS (Column Address -строб адреса колонки). Данные записываются (или читаются в соответствии с состоянием входа направления ) вслед за установкой CAS. Перед началом следующего цикла памяти должно пройти некоторое время «выдержки RAS», поэтому длительность цикла больше времени доступа; например, динамическое ОЗУ может иметь время доступа 100 не и длительность цикла 200 не. Цикл регенерации выглядит так же, но без сигнала CAS. Вообще-то обычные обращения к памяти отлично ее регенерируют, если только вы можете гарантировать обращения со всеми возможными адресами строк!

Динамические ОЗУ, как и статические, выпускаются с шириной данных 1, 4 и 8 бит, емкостью от 64 Кбит до 4 Мбит и с быстродействием приблизительно от 70 до 150 не. Наиболее популярны большие -битовые микросхемы, что вполне объяснимо: если вам нужна большая матрица памяти, скажем объемом 4 Мбайт и шириной 16 бит, и имеются в наличии ОЗУ емкостью 1 Мбит с организацией , имеет смысл использовать -битовые микросхемы, потому что (а) каждая линия данных будет подключена только к двум микросхемам (а не к 16), что существенно уменьшит емкостную нагрузку, и (б) эти микросхемы занимают меньше места, потому что меньшее число выводов данных более чем компенсирует дополнительные адресные выводы.

Рис. 11.31. Циклы чтения и записи динамического ОЗУ (Motorola, 120 нс).

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

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

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

Привлекательным способом, альтернативным «дискретным» схемам управления динамическим ОЗУ, является использование ПЛМ, причем для генерации всех необходимых сигналов достаточно одной-двух микросхем. Еще проще взять специальную микросхему «поддержки динамического ОЗУ», например, . Такого рода микросхемы берут на себя не только мультиплексирование адресов и образование сигналов RAS/CAS, но также и арбитрацию регенерации вместе с образованием адресов строк; более того, они даже включают мощные драйверы и демпфирующие резисторы, которые нужны для подключения больших матриц микросхем памяти, как это будет объяснено ниже. К таким контроллерам динамических ОЗУ обычно прилагаются дополнительные микросхемы для синхронизации, а также обнаружения и коррекции ошибок; в результате небольшой набор микросхем полностью решает проблему включения динамического ОЗУ в вашу разработку.

Впрочем, почти полностью! Основные неприятности с динамическими ОЗУ начинаются, когда вы пытаетесь освободиться от наводок на всех этих стробирующих и адресных магистральных линиях. Суть проблемы заключается в том, что несколько десятков корпусов МОП-схем оказываются разбросанными на большой площади системной платы, причем ко всем корпусам подходят управляющие и адресные шины. Для подключения к ним нескольких десятков микросхем требуются мощные выходные каскады Шоттки; однако большая длина линий и распределенная входная емкость в сочетании с крутыми фронтами выходных каскадов приводят к появлению «звона» большой амплитуды. Часто можно увидеть на адресных линиях ОЗУ отрицательные выбросы до -2 В! Типичным средством борьбы (не всегда полностью успешной) является включение на выходе каждого драйвера последовательных демпфирующих резисторов с сопротивлением около 33 Ом. Другая проблема заключается в огромных переходных токах, часто достигающих величины на линию. Представьте себе микросхему -разрядного драйвера, у которого большинство выходов случайно переключаются в одном направлении, например, с высокого уровня на низкий. Это приводит к переходному току величиной около 1 А, который на некоторое время повышает потенциал нулевого вывода, а вместе с ним и всех выходов, которые должны были иметь низкий уровень. Отмеченная проблема отнюдь не носит академического характера - однажды мы наблюдали сбои в работе памяти как раз из-за таких переходных токов на нулевом выводе, образующихся из-за выбросов токов -драйвера. При этом наводки, проходящие в -драйверы той же микросхемы, оказывались достаточными для завершения цикла памяти!

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

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

Рис. 11.32. Переходные токи динамического ОЗУ.

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

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

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

ПЗУ относятся к памяти, неразрушаемой при выключении питания (энергонезависимой), и нужда в них возникает практически в любой компьютерной системе. К примеру, в микрокомпьютерах необходимо иметь по крайней мере небольшое ПЗУ для хранения последовательности команд начальной загрузки, которая включает не только строки выделения стека и инициализации портов и прерываний, но также и команды, обеспечивающие чтение операционной системы с диска. Когда ваш персональный компьютер выполняет тестирование памяти и затем загружает DOS, он выполняет приказы некоторого ПЗУ. Кроме того, для микрокомпьютера типично хранение в ПЗУ некоторой части операционной системы (обычно наиболее аппаратно-зависимых модулей); эта часть называется «базовой системой ввода-вывода» (basic I/O system, BIOS) и обеспечивает стандартный механизм для обращения операционной системы к конкретным портам. ПЗУ широко используются для хранения различных таблиц, например, для генератора символов, отображаемых на экране дисплея. В предельном случае вообще вся операционная система, включая даже компиляторы и графические программы, может размещаться в ПЗУ. Например, в микрокомпьютере Macintosh значительная часть системного программного обеспечения записана в ПЗУ, и почти все 256 Кбайт ОЗУ отдаются пользователю. Однако такой «ПЗУ-ориентированный» подход используется в микрокомпьютерах относительно редко ввиду его негибкости; заметьте, однако, что исправление ошибок и умеренные усовершенствования программного обеспечения могут осуществляться с помощью заплат, размещаемых в ОЗУ.

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

РПЗУ. Стираемые программируемые постоянные запоминающие устройства выполняются в виде больших микросхем с кварцевым окном. Это, несомненно, самый популярный тип энергонезависимой памяти для компьютеров. РПЗУ используют КМОП- и МОП-технологию и состоят из больших матриц полевых и МОП-транзисторов с плавающим затвором, которые можно зарядить с помощью «лавинной -процесса пробоя слоя, изолирующего затвор, при приложении напряжения свыше 20 В. Данные хранятся в РПЗУ неограниченно долго в виде ничтожного заряда (около 106 электронов) изолированных «погребенных» затворов, которые можно рассматривать как конденсаторы с постоянной времени порядка столетий. Чтобы прочитать состояние отдельного конденсатора, ему надо выступить в качестве затвора канала полевого МОП-транзистора. Поскольку затвор электрически недоступен, стереть заряд можно лишь облучая микросхему интенсивным потоком ультрафиолетовых лучей в течение 10-30 мин, отчего запасенный заряд стекает за счет явления фотопроводимости. В результате отдельные байты РПЗУ выборочно стереть нельзя.

В первом издании этой книги мы упоминали «классическую» микросхему 2716, РПЗУ стоившую 25 долл. Теперь она стала такой классической, что ее уже нигде не достанешь! Типичные РПЗУ нашего времени имеют емкость от до и цену несколько долларов. Время доступа обычно составляет 150- 300 не, хотя такие компании, как Cypress, предлагают ПЗУ небольшого объема с быстродействием 25 не. Чтобы запрограммировать РПЗУ, к нему надо просто приложить повышенное напряжение (обычно 12,5 или 21 В), устанавливая при этом требуемые значения байтов. Исходные алгоритмы требовали на программирование каждого байта (что дает 100 с для микросхемы 2716, но для РПЗУ умеренного объема превращается в полчаса). Выпуск больших ПЗУ потребовал от разработчиков изобретения более совершенных алгоритмов, в которых каждый байт программируется последовательностью импульсов длительностью , причем после каждой записи делается попытка чтения; когда байт считывается правильно, выполняется окончательная запись, равная по длительности утроенной сумме всех предыдущих. Большая часть байтов программируется первым же импульсом, в результате на каждый байт тратится около , а на все ПЗУ объемом - 2 мин.

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

Для РПЗУ характерно ограниченное число циклов репрограммирования, т. е. стирания и программирования заново. Производители неохотно называют это число, хотя вы можете считать, что микросхема заметно ухудшит свои характеристики лишь после 100 или около того циклов стирания / программирования.

Рис. 11.33. Микроконтроллер с РПЗУ. а - 8-разрядный микроконтроллер с контактами для установки РПЗУ; б - 8-разрядный микроконтроллер со встроенным РПЗУ.

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

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

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

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

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

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

Рис. 11.34. ЭРПЗУ.

Протокол -опроса удобен тем, что ЭРПЗУ можно вставить в стандартный разъем для ОЗУ без каких-либо схемных изменений (разумеется, в ваши программы придется включить строки анализа считываемых назад данных и ожидания их совпадения с тем, что вы записываете). Поскольку запись в ЭРПЗУ выполняется относительно редко, фактически в прерываниях по линии RDY/BUSY необходимости не возникает.

КМОП ЭРПЗУ выпускаются в виде микросхем с емкостью по цене примерно 10-50 долл. Время доступа (200-300 не) и время программирования при использовании внутреннего усовершенствования алгоритма) сравнимы с показателями стандартного РПЗУ. ЭРПЗУ, как и РПЗУ, допускают ограниченное число циклов чтения записи. Хотя производители избегают называть конкретные цифры, можно встретить упоминание о 100000 циклах чтения записи при .

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

Имеются два любопытных варианта ЭРПЗУ. Фирмы National, Xicor и др. выпускают маленькие микросхемы ЭРПЗУ в с 8 выводами. Емкость этих схем может составлять от до бит; они работают в режиме последовательного доступа и оснащаются тактовым входом и единственной линией данных. Эти микросхемы трудно использовать без микропроцессора; однако в приборах с микропроцессорным управлением они очень удобны для хранения небольшого количества установочных параметров и проч. Та же фирма Xicor выпускает «электрически стираемый потенциометр , остроумное применение электрически стираемой памяти, в которой хранится положение «цифрового контакта». В эту микросхему встроена цепочка из 99 равных по величине резисторов, причем положение отвода от них, устанавливаемое программно, сохраняется в энергонезависимой памяти, входящей в ту же микросхему. Нетрудно представить себе прикладные задачи, в которых желательна автоматическая или дистанционная калибровка некоторого инструмента без механической настройки ручек управления.

Недавно появившаяся модификация ЭРПЗУ, называемая моментальной (flash), сочетает высокую плотность РПЗУ с репрограммированием в рабочей схеме, присущим ЭРПЗУ. Однако моментальные РПЗУ, как правило, не позволяют стирать отдельные байты, как это можно делать с обычными ЭРПЗУ. Так, моментальное ЭРПЗУ Intel допускает только полное стирание (как и РПЗУ), в то время как в микросхеме фирмы Seeq предусмотрено стирание либо посекторное (512 байт), либо целиком. Далее, большинство доступных сейчас моментальных ЭРПЗУ требуют дополнительного отключаемого источника питания +12 В на время стирания/записи, что является слишком дорогой ценой, если вспомнить, что обычные ЭРПЗУ питаются от единственного источника + 5 В.

Моментальные ЭРПЗУ могут выдерживать от 100 до 10000 программных циклов.

Технология производства ППЗУ продолжает развиваться, и мы с любопытством ожидаем, что она нам еще преподнесет; ждите и вы!

Энергонезависимые ОЗУ.

РПЗУ удобны для применения в качестве энергонезависимых ПЗУ, однако часто возникает необходимость иметь энергонезависимую оперативную память. Для этого можно использовать ЭРПЗУ, однако для них характерен очень длинный ) цикл записи (и ограниченное число циклов чтения/записи). Имеются две возможности достичь характерного для ОЗУ времени чтения записи ) при неограниченном числе циклов чтения записи: использовать либо статическое КМОП ОЗУ с резервным батарейным питанием, либо необычную микросхему фирмы Xicor, в которой объединены статическое ОЗУ и ЭРПЗУ.

Ранее уже обсуждался вопрос о резервном батарейном питании ОЗУ, которое убивает двух зайцев разом: низкая цена и высокая скорость чтения записи ОЗУ сочетаются с энергонезависимостью ПЗУ. Разумеется, в этом случае следует использовать КМОП ОЗУ с известным значением критического тока. Некоторые фирмы выпускают «энергонезависимые ОЗУ», размещая в обычном -корпусе вместе с микросхемой КМОП ПЗУ литиевую батарейку и логические схемы переключения питания. В качестве примера можно указать микросхемы фирмы Dallas Semiconductor эта фирма также выпускает линейку «интеллектуальных разъемов», содержащих батарейку и логические схемы, с помощью которых обычные ОЗУ как по мановению волшебной палочки становятся энергонезависимыми. Учтите, что образованное таким образом энергонезависимое ОЗУ, строго говоря, не бессмертно; срок службы батарейки, а следовательно, и данных, около 10 лет. Как и для обычного статического ОЗУ, здесь нет ограничений на выдерживаемое памятью число циклов чтения записи. в ОЗУ.

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

Запоминающие устройства: общая сводка.

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

Рис. 11.35. Типы запоминающих устройств.

ДИНАМИЧЕСКОЕ ОЗУ

Микросхема быстродействующей оперативной памяти ПК, которая отличается

тем, что теряет свое содержимое, если не считывается в течение 2-х миллисекунд.

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

могут выполняться в произвольные моменты времени.

ТИПЫ ДИНАМИЧЕСКИХ ОЗУ

FPU DRAH "Динамическое ОЗУ с быстрым страничным доступом": основной вид видеопамяти, идентичный применяемой в системных платах. Использует асинхронный (произвольный) доступ к ячейкам хранения данных, при котором управляющие сигналы жестко не привязаны к тактовой частоте системы.

EDO DRAH/RAH "ОЗУ с увеличенным временем доступности данных": микросхема динамической памяти, которая отличается от обычных динамических ОЗУ. Техническое обеспечение автоматизированных систем повышенной возможностью работы в так называемом страничном режиме (связанном с сокращением числа тактов при выборке смежных слов текста). В результате этого производительность машины возрастает (примерно на 5%). Используется в качестве основной памяти ПК на базе микропроцессоров Pentium и Pentium Pro, а также в видеокартах при частоте шины 40-50 МГц. Максимальная пропускная способность порядка 105 Мбайт/с.

DDR SDRAM "Синхронное динамическое ОЗУ с удвоенной скоростью передачи данных" или "Расширенное синхронное динамическое ОЗУ" отличается от SDRAH тем, что к последней добавлено небольшое статическое ЗУ, выполняющее функции кэш-памяти. Использование дополнительного кэша позволяет снизить временные задержки и достичь пиковой частоты операций в 200 МГц. Цель такого кэширования хранить данные, к которым происходит частое обращение, и минимизировать обращение к более медленной DRAM. Пропускная способность и скорость работы такой комбинации увеличивается вдвое также за счет того, что при обмене данными между SRAM-кэшем и собственно DRAM может быть

использована шина большей ширины, чем между SRAM-кэшем и контроллером

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

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

VRAH "Видео ОЗУ" или "Видеопамять": быстродействующая оперативная память ЭВМ, являющаяся результатом развития динамических ОЗУ для графической подсистемы ЭВМ и ее мультимедийных приложений. Иногда ее называют также "двухпортовая DRAM". Отличается от обычных схем динамического ОЗУ (DRAH) возможностью одновременного выполнения операций записи и считывания данных за счет наличия двух входов (портов), чем обеспечивается существенное (примерно в два раза) повышение производительности системы. Используется в графических адаптерах. Ее параметры: частота пропускания шины 25-33 МГц, максимальная пропускная способность 120 Мбайт/с. VRAM является одним из наиболее дорогих видов памяти.

(Тема)

Запоминающая ячейка динамического типа хранит информацию в виде заряда емкости. Ток утечки обратно смещенного p-n перехода составляет не более 10-10 A (0,1 нA ), а емкость - 0,1..0,2 пФ, следовательно постоянная времени разряда - более 1 мС . Поэтому через каждые 1..2 мС требуется производить подзаряд емкостей запоминающих элементов - регенерацию динамической памяти.

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

Рис. 1. Управление регенерацией динамической памяти

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

В большинство динамических ОЗУ адрес ячейки подается за два приема : сначала - адрес строки, который запоминается во внутреннем регистре ОЗУ, потом по тем же линиям - адрес столбца. Каждая передаваемая по мультиплексированным линиям часть адреса сопровождается соответствующим управляющим сигналом (RAS, CAS).

Для регенерации накопителя достаточно провести обращение только к последовательным строкам - каждый цикл обращения для регенерации может состоять только из передачи адреса строки. Поэтому для полной регенерации накопителя объемом 16K (матрица 128 ´ 128) достаточно 128 тактов. Накопители большего объема реализуют на неквадратных матрицах, чтобы уменьшить число строк и сократить время регенерации. Так, накопитель объемом 64K имеет матрицу 128 ´ 512.

Различают несколько способов организации регенерации динамических ОЗУ в МПС.

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

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

"Прозрачная" регенерация . Главным достоинством метода прозрачной регенерации является отсутствие простоев МП при регенерации ОЗУ, поскольку для регенерации выбираются такие моменты времени, когда МП не занимает системную шину. Однажды начав регенерацию, совсем не обязательно проводить ее полностью. Циклы регенерации могут чередоваться с процессорными циклами, главное, чтобы процесс регенерации накопителя завершился за время, не превышающее 2 мС . Многие МП формируют специальные сигналы, отмечающие занятость шины. Эти сигналы можно использовать для управления триггером регенерации. Если МП (например, i8080) не формирует сигнала занятости магистрали, то такой сигнал можно сформировать специальной внешней схемой.

Так, в машинном цикле МП i8080 могут появляться такты T4, T5, в которых МП не занимает системную шину. Эти моменты времени можно выделять специальной схемой и использовать для регенерации.

Микропроцессор Z80 имеет встроенный счетчик регенерации и обеспечивает этот процесс самостоятельно параллельно с внутренней обработкой информации на кристалле.

В большинстве МП не предусмотрены средства обеспечения регенерации, т.к. в МПС может и отсутствовать динамическая память. Однако, в составе микропроцессорных комплектов выпускаются специальные БИС контроллеров регенерации. В качестве примера кратко рассмотрим структуру и функционирование БИС К1818ВТ03 - "Контроллер динамической памяти". Ниже показана структура БИС 565РУ5 (64К´ 1), а на рис.3 временная диаграмма ее работы.


Рис. 2 . Структура БИС динамического ОЗУ

БИС динамических ЗУ имеют объемы от 16К´ 1 (565РУ3) до 1М´ 1 (..РУ9 ), но имеют одинаковую структуру и линии управления (за исключением числа адресных).


Рис. 3 . Временная диаграмма работы БИС динамического ОЗУ

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

Кристалл ОЗУ бывает выбран только при условии RAS = CAS = 0, что позволяет осуществлять селекцию блоков по двум координатам.

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

Структурная схема контроллеравключает в себя :

· буферные схемы Буф.1,2,3 для подключения системной шины адреса и управления;

· счетчик адреса регенерации;

· мультиплексоры MUX1,2;

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

КДП обеспечивает преобразование сигналов системной шины МПС в сигналы управления динамическим ОЗУ, причем может работать в двух режимах : "16/64" (на память 16K или 64K соответственно). В режиме "16" две старшие линии адреса используются для формирования одного из сигналов RAS\, в режиме "64" КДП может управлять двумя банками по 64K, причем сигнал RAS появляется на одном из выходов RAS0 или RAS1 - в зависимости от состояния линии RAS3\/B0, которая в режиме "64" становится входом, определяющим номер банка ОЗУ.

Регенерация может осуществляться в двух режимах - внутреннем и внешнем. Если вход REFR остается неактивным 10..16 мкС , то формируется запрос на цикл регенерации от внутреннего таймера, причем в случае конфликта арбитр отдает предпочтение циклу памяти. Таким образом, и при регенерации по таймеру используются свободные такты шины. При внешней регенерации запрос должен быть сформирован на входе REFR.

Сигнал PCS - "Защищенный выбор кристалла" отличается от традиционного CS тем, что если PCS сформирован, то цикл ЗУ аннулировать нельзя.

Рис. 4 . Контроллер динамического ОЗУ

RD, WR - запросы на циклы чтения и записи соответственно.

X0, X1 - выводы для подключения кварцевого резонатора при работе с внутренним генератором. При работе с внешним генератором на вход X0 подается высокий потенциал, а на X1 - частота CLK внешнего генератора.

Выходной сигнал SACK\ вырабатывается КДП в начале цикла обращения к памяти. Если запрос от МП приходится на цикл регенерации, то SACK\ задерживается до начала цикла чтения/записи.

Выходной сигнал XACK\ ("Готовность данных") вырабатывается в конце цикла чтения/записи.

Сигналы SACK\ и XACK\ можно использовать для управления потенциалом на входе READY микропроцессора.

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

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

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

Элементы памяти

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

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

О возможности использования конденсатора как элемента памяти. Идеальный конденсатор представляет собой двухполюсник, заряд которого Q является линейной функцией напряжения U (рис. 10.1,а ). Если к идеальному конденсатору С через ключ К подвести напряжение U от источника ЭДС (рис. 10.1,6), то на конденсаторе появится постоянный заряд Q в соответствии с вольт-кулонной характеристикой (рис. 10.1,а). При постоянстве заряда (Q = const) ток в цепи не протекает (/= AQ/At= 0), поэтому размыкание ключа (рис. 10.1,в) не изменит состояния конденсатора С, т.е. на конденсаторе по-прежнему останутся 0 = const и U= const. Следовательно, конденсатор обладает способностью хранить заряд Qw напряжение U.

Рис. 10.1. Вольт-кулонная характеристика идеального конденсатора (а), его состояние при замкнутом (б) и разомкнутом (в) ключе К, схема разряда конденсатора С через резистор R (г)

Реальные конденсаторы обладают потерями, кроме того, для реализации режимов записи и считывания к конденсаторам подключаются внешние цепи, которые также имеют потери. Потери моделируются активным сопротивлением R , подключенным параллельно конденсатору С (рис. 10.1,г). В этих условиях при размыкании ключа К в цепи на рис. 10.1,5 через резистор R начнет протекать ток / (рис. 10.1,г) и накопленная в конденсаторе С энергия электрического поля будет преобразовываться в тепловую энергию, выделяемую на резисторе R. В процессе разряда конденсатор теряет свой заряд, и напряжение на его полюсах уменьшается. Поэтому, как отмечалось выше, использование конденсаторов в качестве элементов памяти требует периодического восстановления (регенерации) напряжения.

О реализации емкостного элемента памяти. Основой для построения емкостных элементов памяти служат МОП- транзисторы. В настоящее время широкое распространение получили однотранзисторные структуры, которые помимо емкостного элемента памяти располагают средством подключения его к разрядной шине. Структура однотранзисторного элемента памяти изображена на рис. 10.2,а и представляет собой n-МОП-транзистор, в котором сток, выполненный из поликремния, не имеет внешнего вывода. Сток транзистора образует одну обкладку конденсатора, подложка – другую. Диэлектриком между обкладками служит тонкий слой оксида кремния Si О 2. Структура исток – затвор – сток выполняет функции транзисторного ключа. Схема элемента памяти приведена на рис. 10.2,6.

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

Рис. 10.2. Структура элемента памяти динамического ОЗУ (а) и его эквивалентная схема (б)

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

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

При поступлении напряжения на адресную шину и, следовательно, на затвор транзисторного ключа VT 1 элемент памяти подсоединяется к разрядной шине. В зависимости от значения сигнала чтения/записи возможно два режима работы емкостного элемента памяти.

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

Рис. 10.3.

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

Анализ показывает , что:

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

Для преодоления указанных недостатков принимают следующие меры:

  • для восстановления заряда элемента памяти вводят циклы регенерации;
  • увеличивают емкость СЭп элемента памяти, например, путем использования диэлектрика с бо́льшим значением диэлектрической проницаемости;
  • уменьшают емкость C yразрядной шины едва раза путем разделения ее на две подушины;
  • для считывания используют высокочувствительные дифференциальные усилители с положительной обратной связью – усилители- регенераторы.