Динамические озу.

30.07.2019 Приложения

Оперативная память (Random Access Memory – RAM), т.е. память с произвольным доступом, используется центральным процессором для совместного хранения данных и исполняемого программного кода. По принципам хранения информации ОЗУ можно разделить на статические и динамические.

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

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

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

В настоящее время динамическая память (Dynamic RAM – DRAM) используется в качестве оперативной памяти компьютера, а статическая память (Static RAM – SRAM)- для создания высокоскоростной кэш – памяти процессора.

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

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

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

На рисунке 19.1 представлен триггер на МОП-транзисторах с индуцируемым p -каналом. Для отпирания такого транзистора напряжение на его затворе относительно истока должно быть меньше нуля: .

Пусть в исходном состоянии транзистор VT3 открыт, a VT1 закрыт (состояние хранения нуля). Транзисторы VT2 и VT4 выполняют роль резисторов, поэтому на стоке транзистора VT3 будет потенциал напряжения питания , а на стоке транзистора VT1 – нулевой потенциал. Транзисторы VT5 и VT6 осуществляют запись и считывание информации. В режиме хранения данных напряжения на разрядных линиях P0 и P1 равны нулю, а на линии потенциал равен напряжению питания схемы . При этом напряжение сток-исток на транзисторе VT5 равно нулю, и транзистор VT5 закрыт. Напряжение транзистора VT6 равно нулю и он также закрыт.

Рисунке 19.1 – Принципиальная схема ячейки ОЗУ статического типа

Для установления триггера в единичное состояние (запись единицы) на линию подается нулевой потенциал, а на разрядную линию P1 потенциал равный . При этом транзистор VT5 будет включен инверсно, т. е. истоком становится вывод, подсоединенный к разрядной линии P1. Напряжение затвор-исток инверсно включенного транзистора VT5 становится меньше нуля и транзистор VT5 открывается. Положительный сигнал поступает на затвор транзистора VT3 , при этом становится равным нулю и транзистор VT3 закрывается. В результате на затвор транзистора VT1 поступает нулевой потенциал. У этого транзистора становится отрицательным, и транзистор VT1 открывается, на его стоке устанавливается положительное напряжение, что соответствует единичному состоянию триггера. Напряжение на стоке VT3 становится равным нулю.

Для записи нуля необходимо при нулевом напряжении на линии А подать напряжение на разрядную линию P0 , при этом через открытый транзистор VT6 положительное напряжение, попадая на затвор транзистора VT1, запирает его, что приводит к открыванию транзистора VT3. На стоке транзистора VT1 установится нулевой потенциал, а на стоке транзистора VT3 – потенциал напряжения питания.

Для считывания информации, предварительно записанной в триггер, необходимо подать нулевой потенциал только на линию. При этом если был открыт транзистор VT1 (единичное состояние), то отрицательным напряжением будет открыт транзистор VT5 и через него высокий потенциал поступит в разрядную линию P1 . Если триггер находится в состоянии нуля, то откроется транзистор VT6 и высокий потенциал поступит в разрядную линию Р0.



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


Рисунок 19.2 – Структура микросхемы ОЗУ статистического типа

Адрес ячейки памяти (ЯП) в виде двоичного числа принимается по шине адреса в регистр адреса. Число разрядов адреса связано с емкостью накопителя. Число строк и столбцов накопителя выбираются равными целой степени двух. Если число строк и число столбцов , то общее число ячеек памяти (емкость накопителя)
, где – число разрядов адреса, принимаемого в регистр адреса. Например, при емкости число разрядов адреса . При этом выбирается . В этом случае число строк и число столбцов накопителя равно . Требуемая размерность матрицы накопителя – .

Разряды регистра адреса подразделяются на две группы. Одна группа в n1 разрядов определяет двоичный номер строки, в которой расположена ячейка памяти, другая группа в n2 разрядов определяет двоичный номер столбца, в котором находится ячейка памяти. Каждая группа разрядов адреса подается на соответствующий дешифратор строк или столбцов. При этом каждый из дешифраторов создает на одной из своих выходных цепей уровень логического нуля. На остальных выходах устанавливается уровень логической единицы. Ячейка памяти, оказавшаяся под воздействием двух логических нулей на соответствующих линиях и одновременно, является выбранной. Этому соответствует подача логического нуля на линию триггера ячейки памяти, рассмотренной выше.



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

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

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


Рисунок 19.3 – Временные диаграммы работы ОЗУ статического типа

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

На рисунке 19.3 приведены временные диаграммы работы ОЗУ в случае смены режима, т.е. режим считывания осуществляется после режима записи, а режим записи – после режима считывания. Поэтому происходит установка обоих сигналов и .

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

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

В режиме записи сигнал должен выставляться только тогда, когда записываемые данные готовы и поступили на вход DI (временной интервал ). Аналогично сами данные для записи должны быть подготовлены к моменту, когда выработается активный уровень сигнала (временной интервал ), и удержаны до окончания действия этого сигнала.

Микросхемы ОЗУ допускают наращивание емкости памяти как путем наращивания числа хранимых слов, так и путем наращивания разрядности этих слов. На практике часто используется комбинированная структура, объединяющая наращивание, как разрядности, так и количества хранимых слов. В этом случае формируется некоторое количество однотипных групп микросхем, объединенных в структуру с наращиванием разрядности слов. Далее эти группы объединяются в единую структуру с наращиванием количества хранимых слов.

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

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

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

На схеме также показаны общие элементы для – ячеек одного столбца. Главное достоинство этой схемы – малая занимаемая площадь. Накопительный конденсатор имеет МДП-структуру и изготовляется в едином технологическом цикле. Величина его емкости составляет сотые доли пФ. Конденсатор хранит информационный заряд. Транзистор выполняет роль переключателя, передающего заряд конденсатора в разрядную шину данных ШД при считывании либо заряжающего конденсатор при записи. В режиме хранения на адресной линии должен присутствовать потенциал логической единицы, под действием которого транзистор будет закрыт и конденсатор отключен от шины данных ШД. Включение конденсатора в шину данных осуществляется логическим нулем на линии . При этом на транзистор подается напряжение что приводит к его открыванию.

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

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

Рисунок 19.5 – Структура микросхемы ОЗУ динамического типа

Мультиплексирование позволяет сократить количество выводов микросхемы. Ячейки памяти расположены в виде матрицы из 128 строк и 512 столбцов.

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

Рисунок 19.6 – Временные диаграммы работы ОЗУ динамического типа

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

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

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

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

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

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

Рисунок 19.7 – Структура схема масочного ПЗУ

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

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

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

В обычном состоянии участок исток-сток транзистора электрический ток не проводит. Однако если приложить между истоком и стоком большое напряжение (приблизительно 80 В), то затвор зарядится в результате инжекции электронов. Такой процесс называется зарядкой через влияние. В дальнейшем заряд затвора будет сохраняться достаточно долго. Благодаря весьма высокому качеству диэлектрика из двуокиси кремния при температуре заряд уменьшается на 70% первоначального значения примерно за 10 лет. Отрицательный заряд на затворе притягивает дырки, создает в « -области проводящий -канал между истоком и стоком, т.е. транзистор оказывается в проводящем состоянии.

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

Контрольные вопросы

1 Провидите сравнительный анализ БИС ОЗУ статического и динамического типов.

2 Поясните принцип функционирования ячейки ОЗУ статического типа.

3 Какие функции в микросхеме памяти выполняют дешифраторы строк и столбцов?

4 Какая общая последовательность подачи управляющих сигналов на микросхемы ОЗУ статического типа в режиме считывания и записи?

5 Какие способы увеличения объема хранимой информации при организации модулей оперативной памяти вам известны?

6 Поясните принципы функционирования микросхем ОЗУ динамического типа.

7 Как организуется хранение информации в микросхемах ПЗУ?

8 Как реализуется возможность записи информации в прожигаемые ПЗУ?

9 Каким образом реализуются стирание и запись информации в ППЗУ?

Динамической памяти в вычислительной машине значительно больше, чем стати­ческой, поскольку именно DRAM используется в качестве основной памяти ВМ. Как и SRAM, динамическая память состоит из ядра (массива ЗЭ) и интерфейсной логики (буферных регистров, усилителей чтения данных, схемы регенерации и др.). Хотя количество видов DRAM уже превысило два десятка, ядро у них организова­но практически одинаково. Главные различия связаны с интерфейсной логикой, причем различия эти обусловлены также и областью применения микросхем – помимо основной памяти ВМ, ИМС динамической памяти входят, например, в состав видеоадаптеров. Классификация микросхем динамической памяти пока­зана на рис. 72.

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

В отличие от SRAM адрес ячейки DRAM передается в микросхему за два шага - вначале адрес столбца, а затем строки, что позволяет сократить количество выво­дов шины адреса примерно вдвое, уменьшить размеры корпуса и разместить на материнской плате большее количество микросхем. Это, разумеется, приводит к снижению быстродействия, так как для передачи адреса нужно вдвое больше вре­мени. Для указания, какая именно часть адреса передается в определенный момент, служат два вспомогательных сигнала RAS и CAS. При обращении к ячейке памя­ти на шину адреса выставляется адрес строки. После стабилизации процессов на шине подается сигнал RAS и адрес записывается во внутренний регистр микро­схемы памяти. Затем на шину адреса выставляется адрес столбца и выдается сиг­нал CAS. В зависимости от состояния линии WE производится чтение данных из ячейки или их запись в ячейку (перед записью данные должны быть помещены на шину данных). Интервал между установкой адреса и выдачей сигнала RAS (или CAS) оговаривается техническими характеристиками микросхемы, но обычно ад­рес выставляется в одном такте системной шины, а управляющий сигнал - в сле­дующем. Таким образом, для чтения или записи одной ячейки динамического ОЗУ требуется пять тактов, в которых происходит соответственно: выдача адреса строки, выдача сигнала RAS, выдача адреса столбца, выдача сигнала CAS, выполнение операции чтения/записи (в статической памяти процедура занимает лишь от двух до трех тактов).

Рис. 72. Классификация динамических ОЗУ: а) – микросхемы для основной памяти; б) – микросхемы для видеоадаптеров.

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

Теперь рассмотрим различные типы микросхем динамической памяти, начнем с системных DRAM, то есть микросхем, предназначенных для использования в ка­честве основной памяти. На начальном этапе это были микросхемы асинхронной памяти, работа которых не привязана жестко к тактовым импульсам системной шины.

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

Микросхемы DRAM. В первых микросхемах динамической памяти применялся наиболее простой способ обмена данными, часто называемый традиционным (con­ventional). Он позволял считывать и записывать строку памяти только на каждый пятый такт. Этапы такой процедуры были описаны ранее. Традици­онной DRAM соответствует формула 5-5-5-5. Микросхемы данного типа могли работать на частотах до 40 МГц и из-за своей медлительности (время доступа со­ставляло около 120 нс) просуществовали недолго.

Микросхемы FPMDRAM. Микросхемы динамического ОЗУ, реализующие ре­жим FPM, также относятся к ранним типам DRAM. Сущность режима была пока­зана ранее. Схема чтения для FPM DRAM описывается формулой 5-3-3-3 (всего 14 тактов). Применение схемы быстрого страничного доступа по­зволило сократить время доступа до 60 нс, что, с учетом возможности работать на более высоких частотах шины, привело к увеличению производительности памя­ти по сравнению с традиционной DRAM приблизительно на 70%. Данный тип микросхем применялся в персональных компьютерах примерно до 1994 года.

Микросхемы EDO DRAM. Следующим этапом в развитии динамических ОЗУ стали ИМС с гиперстраничным режимом доступа (НРМ, Hyper Page Mode), бо­лее известные как EDO (Extended Data Output - расширенное время удержания данных на выходе). Главная особенность технологии - увеличенное по сравне­нию с FPM DRAM время доступности данных на выходе микросхемы. В микро­схемах FPM DRAM выходные данные остаются действительными только при ак­тивном сигнале CAS, из-за чего во втором и последующих доступах к строке нужно три такта: такт переключения CAS в активное состояние, такт считывания данных и такт переключения CAS в неактивное состояние. В EDO DRAM по активному (спадающему) фронту сигнала CAS данные запоминаются во внутреннем регистре, где хранятся еще некоторое время после того, как поступит следующий активный фронт сигнала. Это позволяет использовать хранимые данные, когда CAS уже переведен в неактивное состояние. Иными словами, временные пара­метры улучшаются за счет исключения циклов ожидания момента стабилизации данных на выходе микросхемы.

Схема чтения у EDO DRAM уже 5-2-2-2, что на 20% быстрее, чем у FPM. Вре­мя доступа составляет порядка 30-40 нс. Следует отметить, что максимальная ча­стота системной шины для микросхем EDO DRAM не должна была превышать 66 МГц.

Микросхемы BEDO DRAM. Технология EDO была усовершенствована компа­нией VIA Technologies. Новая модификация EDO известна как BEDO (Burst EDO - пакетная EDO). Новизна метода в том, что при первом обращении считы­вается вся строка микросхемы, в которую входят последовательные слова пакета. За последовательной пересылкой слов (переключением столбцов) автоматически следит внутренний счетчик микросхемы. Это исключает необходимость выдавать адреса для всех ячеек пакета, но требует поддержки со стороны внешней логики. Способ позволяет сократить время считывания второго и последующих слов еще на один такт, благодаря чему формула приобретает вид 5-1-1-1.

Микросхемы EDRAM. Более быстрая версия DRAM была разработана подраз­делением фирмы Ramtron - компанией Enhanced Memory Systems. Технология реализована в вариантах FPM, EDO и BEDO. У микросхемы более быстрое ядро и внутренняя кэш-память. Наличие последней - главная особенность технологии. В роли кэш-памяти выступает статическая память (SRAM) емкостью 2048 бит. Ядро EDRAM имеет 2048 столбцов, каждый из которых соединен с внутренней кэш-памятью. При обращении к какой-либо ячейке одновременно считывается целая строка (2048 бит). Считанная строка заносится в SRAM, причем перенос информации в кэш-память практически не сказывается на быстродействии, по­скольку происходит за один такт. При дальнейших обращениях к ячейкам, отно­сящимся к той же строке, данные берутся из более быстрой кэш-памяти. Следую­щее обращение к ядру происходит при доступе к ячейке, не расположенной в строке, хранимой в кэш-памяти микросхемы.

Технология наиболее эффективна при последовательном чтении, то есть когда среднее время доступа для микросхемы приближается к значениям, характерным для статической памяти (порядка 10 нс). Главная сложность состоит в несовмес­тимости с контроллерами, используемыми при работе с другими видами DRAM.

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

Микросхемы SDRAM. Аббревиатура SDRAM (Synchronous DRAM - синхрон­ная DRAM) используется для обозначения микросхем «обычных» синхронных динамических ОЗУ. Кардинальные отличия SDRAM от рассмотренных выше асин­хронных динамических ОЗУ можно свести к четырем положениям:

· синхронный метод передачи данных на шину;

· конвейерный механизм пересылки пакета;

· применение нескольких (двух или четырех) внутренних банков памяти;

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

Синхронность памяти позволяет контроллеру памяти «знать» моменты готов­ности данных, за счет чего снижаются издержки циклов ожидания и поиска дан­ных. Так как данные появляются на выходе ИМС одновременно с тактовыми им­пульсами, упрощается взаимодействие памяти с другими устройствами ВМ.

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

Значительный эффект дает разбиение всей совокупности ячеек на независи­мые внутренние массивы (банки). Это позволяет совмещать доступ к ячейке одного банка с подготовкой к следующей операции в остальных банках (перезарядкой управляющих цепей и восстановлением информации). Возможность держать открытыми одновременно несколько строк памяти (из разных банков) также спо­собствует повышению быстродействия памяти. При поочередном доступе к бан­кам частота обращения к каждому из них в отдельности уменьшается пропор­ционально числу банков и SDRAM может работать на более высоких частотах. Благодаря встроенному счетчику адресов SDRAM, как и BEDO DRAM, позволя­ет производить чтение и запись в пакетном режиме, причем в SDRAM длина паке­та варьируется и в пакетном режиме есть возможность чтения целой строки памя­ти. ИМС может быть охарактеризована формулой 5-1-1-1. Несмотря на то, что формула для этого типа динамической памяти такая же, что и у BEDO, способ­ность работать на более высоких частотах приводит к тому, что SDRAM с двумя банками при тактовой частоте шины 100 МГц по производительности может по­чти вдвое превосходить память типа BEDO.

Микросхемы DDR SDRAM. Важным этапом в дальнейшем развитии техноло­гии SDRAM стала DDR SDRAM (Double Data Rate SDRAM - SDRAM с удвоен­ной скоростью передачи данных). В отличие от SDRAM новая модификация вы­дает данные в пакетном режиме по обоим фронтам импульса синхронизации, за счет чего пропускная способность возрастает вдвое. Существует несколько специ­фикаций DDR SDRAM, в зависимости от тактовой частоты системной шины: DDR266, DDR333, DDR400, DDR533. Так, пиковая пропускная способность мик­росхемы памяти спецификации DDR333 составляет 2,7 Гбайт/с, а для DDR400 - 3,2 Гбайт/с. DDR SDRAM в настоящее время является наиболее распространен­ным типом динамической памяти персональных ВМ.

Микросхемы RDRAM, DRDRAM. Наиболее очевидные способы повышения эффективности работы процессора с памятью - увеличение тактовой частоты шины либо ширины выборки (количества одновременно пересылаемых разрядов). К сожалению, попытки совмещения обоих вариантов наталкиваются на существен­ные технические трудности (с повышением частоты усугубляются проблемы элек­тромагнитной совместимости, труднее становится обеспечить одновременность поступления потребителю всех параллельно пересылаемых битов информации). В большинстве синхронных DRAM (SDRAM, DDR) применяется широкая вы­борка (64 бита) при ограниченной частоте шины.

Принципиально отличный подход к построению DRAM был предложен ком­панией Rambus в 1997 году. В нем упор сделан на повышение тактовой частоты до 400 МГц при одновременном уменьшении ширины выборки до 16 бит. Новая па­мять известна как RDRAM (Rambus Direct RAM). Существует несколько разно­видностей этой технологии: Base, Concurrent и Direct. Во всех тактирование ведется по обоим фронтам синхросигналов (как в DDR), благодаря чему результирующая частота составляет соответственно 500-600, 600-700 и 800 МГц. Два первых ва­рианта практически идентичны, а вот изменения в технологии Direct Rambus (DRDRAM) весьма значительны.

Сначала остановимся на принципиальных моментах технологии RDRAM, ори­ентируясь в основном на более современный вариант - DRDRAM. Главным от­личием от других типов DRAM является оригинальная система обмена данными между ядром и контроллером памяти, в основе которой лежит так называемый «канал Rambus», применяющий асинхронный блочно-ориентированный протокол. На логическом уровне информация между контроллером и памятью передается пакетами.

Различают три вида пакетов: пакеты данных, пакеты строк и пакеты столбцов. Пакеты строк и столбцов служат для передачи от контроллера памяти команд уп­равления соответственно линиями строк и столбцов массива запоминающих эле­ментов. Эти команды заменяют обычную систему управления микросхемой с по­мощью сигналов RAS, CAS, WE и CS.

Массив ЗЭ разбит на банки. Их число в кристалле емкостью 64 Мбит составля­ет 8 независимых или 16 сдвоенных банков. В сдвоенных банка^ пара банков ис­пользует общие усилители чтения/записи. Внутреннее ядро микросхемы имеет 128-разрядную шину данных, что позволяет по каждому адресу столбца переда­вать 16 байт. При записи можно использовать маску, в которой каждый бит соот­ветствует одному байту пакета. С помощью маски можно указать, сколько байтов пакета и какие именно должны быть записаны в память.

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

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

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

В имеющихся публикациях упоминается работа Intel и Rambus над новой вер­сией RDRAM, названной nDRAM, которая будет поддерживать передачу данных с частотами до 1600 МГц.

Микросхемы SLDRAM. Потенциальным конкурентом RDRAM на роль стандарта архитектуры памяти для будущих персональных ВМ выступает новый вид ди­намического ОЗУ, разработанный консорциумом производителей ВМ SyncLink Consortium и известный под аббревиатурой SLDRAM. В отличие от RDRAM, тех­нология которой является собственностью компаний Rambus и Intel, данный стан­дарт - открытый. На системном уровне технологии очень похожи. Данные и ко­манды от контроллера к памяти и обратно в SLDRAM передаются пакетами по 4 или 8 посылок. Команды, адрес и управляющие сигналы посылаются по однонап­равленной 10-разрядной командной шине. Считываемые и записываемые данные передаются по двунаправленной 18-разрядной шине данных. Обе шины работают на одинаковой частоте. Пока что еще эта частота равна 200 МГц, что, благодаря технике DDR, эквивалентно 400 МГц. Следующие поколения SLDRAM должны работать на частотах 400 МГц и выше, то есть обеспечивать эффективную частоту более 800 МГц.

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

Микросхемы ESDRAM. Это синхронная версия EDRAM, в которой использу­ются те же приемы сокращения времени доступа. Операция записи в отличие от чтения происходит в обход кэш-памяти, что увеличивает производительность ESDRAM при возобновлении чтения из строки, уже находящейся в кэш-памяти. Благодаря наличию в микросхеме двух банков простои из-за подготовки к опера­циям чтения/записи сводятся к минимуму. Недостатки у рассматриваемой мик­росхемы те же, что и у EDRAM - усложнение контроллера, так как он должен.читывать возможность подготовки к чтению в кэш-память новой строки ядра. Кроме того, при произвольной последовательности адресов кэш-память задействуется неэффективно.

Микросхемы CDRAM. Данный тип ОЗУ разработан в корпорации Mitsubishi, и его можно рассматривать как пересмотренный вариант ESDRAM, свободный от некоторых ее несовершенств. Изменены емкость кэш-памяти и принцип размеще­ния в ней данных. Емкость одного блока, помещаемого в кэш-память, уменьшена до 128 бит, таким образом, в 16-килобитовом кэше можно одновременно хранить копии из 128 участков памяти, что позволяет эффективнее использовать кэш-па­мять. Замена первого помещенного в кэш участка памяти начинается только после заполнения последнего (128-го) блока. Изменению подверглись и средства доступа. Так, в микросхеме используются раздельные адресные шины для статического кэша и динамического ядра. Перенос данных из динамического ядра в кэш-память со­вмещен с выдачей данных на шину, поэтому частые, но короткие пересылки не снижают производительности ИМС при считывании из памяти больших объе­мов информации и уравнивают CDRAM с ESDRAM, а при чтении по выбо­рочным адресам CDRAM явно выигрывает. Необходимо, однако, отметить, что вышеперечисленные изменения привели к еще большему усложнению кон­троллера памяти.

Динамическая память любого типа, в отличие от статической, даже при подаче питающих напряжений не обладает способностью хранить свою информацию сколь угодно долго. Состояние элементарной ячейки динамической памяти определяется наличием или отсутствием заряда на конденсаторе, и этот заряд подвержен утечке. Поэтому для сохранения данных в динамической памяти ее ячейки необходимо периодически подзаряжать, что и составляет суть процесса регенерации. Как это происходит, чуть ниже.
При выполнении операции чтения регенерация выполняется автоматически. Полученные на усилителе сигнала данные тут же записываются обратно. Считается, что такой алгоритм позволяет уменьшить число требуемых регенераций и увеличить быстродействие. Но это совершенно не так! Считывается ли информация из памяти или нет, "частота" регенерации при этом не меняется. Она либо вообще не регулируется (нет соответствующих опций в "BIOS Setup"), либо является строго фиксированной после соответствующиих установок.

Возможны три различных метода регенерации данных.

Регенерация одним RAS (RAS Only Refresh - ROR). Этот метод использовался еще в первых микросхемах DRAM. Адрес регенерируемой строки передается на шину адреса и выдается сигнал RAS (точно так же, как при чтении или записи). При этом выбирается строка ячеек, и данные из них поступают на внутренние цепи микросхемы, после чего записываются обратно. Так как далее сигнал CAS не следует, цикл чтения/записи не начинается. Затем передается адрес следующей строки и так далее, пока не будет пройдена вся матрица памяти, после чего цикл регенерации повторяется. К недостаткам этого метода можно отнести то, что занимается шина адреса, и в момент регенерации блокируется доступ к другим подсистемам компьютера.
CAS перед RAS (CAS Before RAS - CBR) - стандартный метод регенерации. При нормальном цикле чтения/записи сигнал RAS всегда приходит первым, за ним следует CAS. Если же CAS приходит раньше RAS, то начинается специальный цикл регенерации - CBR. При этом адрес строки не передается, а микросхема использует свой внутренний счетчик, содержимое которого увеличивается на 1 при каждом CBR-цикле (т.н. инкрементирование адреса строки). Этот режим позволяет регенерировать память, не занимая шину адреса, что, безусловно, более экономично.
Автоматическая регенерация памяти (Self Refresh - SR, или саморегенерация). Этот метод обычно используется в режиме энергосбережения, когда система переходит в состояние "сна" ("suspend"), и тактовый генератор перестает работать. В таком состоянии обновление памяти по вышеописанным методам невозможно (попросту отсутствуют источники сигналов), и микросхема памяти выполняет регенерацию самостоятельно. В ней запускается свой собственный генератор, который тактирует внутренние цепи регенерации. Такая технология работы памяти была внедрена с появлением EDO DRAM. Необходимо отметить, что в режиме "сна" память потребляет очень малый ток.
В классической реализации PC AT запросы на регенерацию DRAM генерировал канал 1 системного таймера 8254. К его выходу подключен триггер, работающий в счетном режиме и меняющий свое состояние на противоположное при каждом запросе. Состояние этого триггера можно программно считывать через бит 4 порта 61h. Проверка Refresh Toggle заключалась в проверке того факта, что этот триггер переключается с заданной частотой. Но со временем стали применяться другие алгоритмы регенерации памяти (что и изложено выше), и несмотря на то, что Refresh Toggle сохраняется для совместимости, по нему уже нельзя проверить формирование запросов на регенерацию. Циклы регенерации выполняет входящий в состав чипсета контроллер регенерации, который для выполнения своей задачи должен получать управление магистралью каждые 15,6 мкс. Во время цикла регенерации производится чтение одной из N ячеек памяти.

Burst Refresh

- (пакетная регенерация). Как правило, трактовка этой опции в литературе носит ошибочный характер. При разрешении опции ("Enabled") в единый пакет собираются запросы на регенерацию, причем такое пакетирование может в некоторых случаях обеспечивать аккумулирование запросов по всему объему строк в памяти. Такой метод ведет к значительному повышению производительности, но есть и обратная сторона. На достаточно длительные промежутки времени и постоянно происходит захват шины памяти, что приводит к блокировке доступа к ней процессора или других устройств.
Опция может называться "DRAM Burst Refresh".

CAS Before RAS Refresh

Метод регенерации памяти, когда сигнал CAS устанавливается раньше сигнала RAS. В отличие от стандартного способа регенерации, этот метод не требует перебора адресов строк извне микросхем памяти - используется внутренний счетчик адресов. Однако, этот способ регенерации должен поддерживаться микросхемами памяти. Если раньше можно было встретить фразы, что большинство модулей памяти поддерживает такой метод регенерации, то сейчас это уже стандартное аппаратное решение. Использование этого метода позволяет заметно снизить потребляемую модулями памяти энергию. Может принимать значения:
"Enabled" - разрешено,
"Disabled" - запрещено.
Опция может называться "CAS Before RAS".

CAS-to-RAS Refresh Delay

Действие этой опции возможно при включенном состоянии предыдущей (или аналогичной), так как в данном случае устанавливается время задержки между стробирующими сигналами (в тактах системной шины). Естественно, что установка меньшего значения приводит к снижению времени, затрачиваемого на регенерацию. Большее же значение повышает надежность, т.е. достоверность данных, находящихся в памяти. Оптимальный вариант для данной системы выбирается опытным путем. Может принимать значения: "1T", "2T" (по умолчанию).

Concurrent Refresh

- (паpаллельная, или конкурирующая pегенеpация). При активизации этой опции как аппаратные средства регенерации, так и центральный процессор получают одновpеменный доступ к памяти. При этом процессору не нужно будет ожидать, пока произойдет регенерация. При установке опции в "Disabled" пpоцессоp должен будет ждать, пока схема pегенеpации не закончит pаботу. Естественно, что включение опции повышает производительность системы.

Decoupled Refresh

- (раздельная регенерация). Поскольку ISA-шина имеет невысокую скорость работы, то включение этой опции ("Enabled") позволит чипсету разделить регенерацию для основной памяти и ISA-шины. При этом процесс регенерации для ISA-шины может быть завершен во время выполнения процессором других инструкций. Использование этой опции заметно увеличивает производительность всей системы. Опция эта играла заметную роль во времена 486-х машин.
Но могла возникнуть и проблема, которая заключалась в том, что некоторые карты расширения (обычно, видеокарты) требовали к себе внимания процессора во время начального цикла регенерации шины. Естественно, что это могло привести к нежелательным сбойным ситуациям. Отключение опции могло потребоваться также, если при работе с графическими режимами высокого разрешения на экране монитора появлялись какие-то символы или "снег". При этом необходимо было отключать и такой метод работы с памятью, как "Memory Relocation" (см. выше). Сказанное выше было характерно, например, для видеокарт на чипе S3 801 (таких, как SPEA V7 Mirage), работающих совместно с некоторыми картами-контроллерами производства "Adaptec" с расширенной ROM-памятью, необходимой для обслуживания жестких дисков объемом свыше 1 ГБ.
Опция может называться "Decoupled Refresh Option".

Distributed Refresh

- (распределенная регенерация). Не совсем ясно, что "прячется" под этой опцией, хотя есть предположение, что это аналог "раздельной регенерации". В свое время данную опцию можно было встретить в системах на чипсетах от "VIA Technologies". Значения опции: "Disabled" и "Enabled".

DRAM Ahead Refresh

Опция, позволяющая включать ("Enabled") режим "предвидения" для цикла регенерации. Суть этого "предвидения" станет более понятна из следующей опции, которая становится активной при включении разрешения.
x DRAM Ahead Refresh Timing
- данная же опция по сути позволяет "отодвинуть" начало цикла регенации на 10 или 40 системных тактов. Небольшое, но все же повышение производительности. Столь уникальные опции были реализованы в системах на наборе SIS540 и более пока нигде не встречались.

DRAM Burst at 4 Refresh

Эта опция также связана с пакетной регенерацией, но суть ее иная. Разрешение опции ("Enabled") включает регенерацию по 4 строки в пакете. Такой метод заметно повышает производительность. При этом шина освобождается намного быстрее, чем в случае с опцией "Burst Refresh".

DRAM CAS# Precharge

- (время предварительного заряда CAS). Эта функция применяется при наличии в системе синхронной динамической памяти, и с ее помощью устанавливается (в тактах системной шины) время для формирования сигнала CAS (накопления заряда по CAS) до начала цикла регенерации памяти (см. ниже дополнительно "DRAM RAS# Precharge Time"). Уменьшение этого значения увеличивает быстродействие, но возможны проблемы со стабильностью системы, если в то же время установлены "пограничные" значения для RAS-строба. Если установлено слишком малое значение (время), также и регенерация может оказаться незавершенной, что в итоге приведет к потере данных, находящихся в памяти.
Опция может иметь наименования: "CAS# Precharge", "CAS# Precharge Time", "FPM CAS# Precharge", "FPM DRAM CAS Precharge", "EDO/FPM CAS Precharge Time", "EDO CAS# Precharge", "EDO DRAM CAS Precharge".
Большим разнообразием значений все перечисленные опции не отличаются. "1T", "2T" или такой ряд: "1T", "1T/2T", "2T". Некоторое разнообразие внесла опция "CAS Precharge Period": "1T", "2T", "3T", "4T".

DRAM RAS Only Refresh

Включение/отключение метода обновления DRAM, альтернативного методу "CAS-before-RAS". Если BIOS содержит другие возможности по регенерации памяти, то эту опцию необходимо отключить. В противном случае придется использовать этот устаревший метод обновления памяти.

DRAM RAS# Precharge Time

- (время предварительного заряда RAS). Эта функция применяется при наличии в системе синхронной динамической памяти и она позволяет устанавливать время (в тактах системной шины) для формирования сигнала RAS (иногда говорят о накоплении заряда по RAS) до начала цикла регенерации памяти. Фактически, тем самым устанавливается минимальный интервал между двумя последовательными циклами чтения или записи. Уменьшение этого значения увеличивает быстродействие. Но если установлено недостаточное время, регенерация может быть некомплектной, что в итоге приведет к потере данных, находящихся в памяти. Естественно, что за повышением частоты, на которой работает память, следует и выбор большего значения, что важно при разгоне памяти. Возможные значения могут быть представлены в различном виде: в виде цифровых значений - "3", "4" и т.д.; с указанием системных тактов - "3 Clocks" или "1T". А обобщенный ряд значений имеет следующий вид: 0T, 1T, 2T, 3T, 4T, 5T, 6T, хотя в каждом конкретном варианте может быть представлено 2-4 значения.
Опция может иметь множество названий: "DRAM RAS# Precharge Period", "RAS# Precharge Time", "RAS Precharge Timing", "RAS# Precharge Period", "FPM DRAM RAS# Precharge", "FPM RAS Precharge", "RAS# Precharge", "DRAM RAS Precharge", "EDO RAS Precharge", "EDO RAS# Precharge Time", "EDO RAS Precharge Timing", "FPM/EDO RAS# Precharge Time", "EDO/FPM RAS Precharge Time".
Как видим, опция не потеряла своей актуальности с появлением EDO-памяти и, что интересно, затем также BEDO- и SDRAM- модулей, поскольку данный параметр является одной из важнейших характеристик чипов памяти: "BEDO RAS Precharge", "SDRAM RAS Precharge Time".
Правда, кроме привычных параметров типа "3T" или "2 Clks" (эти значения и характерны для SDRAM-модулей) в различных версиях BIOS стали "встречаться" новые виды значений, таких как: "Same as FPM" и "FPM-1T", "Fast" и "Normal", "Fast" и "Slow". Для последней пары параметров "Slow" (медленно) равносильно увеличению количества тактов, что повышает стабильность работы системы, поэтому значение "Fast" следует устанавливать в случае уверенности в качестве модулей памяти. Что же касательно первой пары, то для опций вида "FPM DRAM RAS# Precharge" ряд значений мог иметь вид: 2T, 3T, 4T, 5T, 6T, а отсюда и возможный результат для SDRAM-памяти, хотя совершенно не очевидный.
Вполне возможна и ситуация, когда версия BIOS предоставляет возможность установки каких-либо параметров для каждого банка памяти в отдельности. Поскольку речь идет о "предзаряде" для RAS#-строба, то опция (опции!) может называться "Bank 0&1 (2&3)(4&5): EDO/SDRAM Precharge" со значениями: "3T/2T", "4T/3T".
"AMI BIOS" для "своей" опции "SDRAM RAS# Precharge" предложил дополнительное значение "Auto". Правда, один из вариантов опции "SDRAM RAS Precharge" представил и значения "Disabled"/"Enabled". Запрещать опцию можно только в случае абсолютной уверенности в модулях памяти, иначе неприятностей не избежать. Раз коснулись возможности запрещать/разрешать механизм предзаряда, то нужно отметить и возможность включать ("Enabled") оптимизацию предзаряда - "SDRAM: Optimal RAS# Prech.".
Для данной опции (опций!) необходимо отметить пару важных моментов. Нельзя путать данную опцию с опциями типа "Refresh RAS Active Time", которые отвечают за длительность сигнала RAS#. В нашем случае речь идет как бы о подготовительном процессе. И второе! Данную опцию совершенно правильно было бы разместить и в разделе, посвященном стандартной оптимизации памяти (см. ниже). Процедуры выставления сигнала RAS# и при регенерации, и при операциях чтения/записи идентичны.
В завершение вышесказанного опция "RAS# Precharge/Refresh" со значениями "3T/4T" и "4T/5T". Данной опцией устанавливаются одновременно и время подготовительной фазы, и общее время активности сигнала RAS# для цикла регенерации.

DRAM Refresh Method

Опция установки метода регенерации. Опция может называться также "Refresh Type", "DRAM Refresh Type", "DRAM Refresh Mode" или "Refresh Type Select". При любых вариациях опция, как правило, среди возможных параметров содержит только два параметра. Приводим весь возможный ряд: "CAS before RAS" (или "CAS-RAS"), "RAS only", "RAS# Before CAS#", "Normal", "Hidden".

DRAM Refresh Period

Установка периода (частоты повтора), требуемого для регенерации памяти, в соответствии со спецификацией модулей памяти. В новейших версиях BIOS такая опция может и не присутствовать, хотя ее наличие в современной системе по прежнему позволяет оптимизировать процесс регенерации. Ранее такая опция предлагала пользователю широкий простор для творчества: в зависимости от версии BIOS и его производителя, чипсета, модулей памяти. Опция могла также носить название "Refresh Cycle Time (us)", "DRAM Refresh Cycle Time", "Memory Refresh Rate", "DRAM Refresh Rate Select", "DRAM Refresh Rate","SDRAM Refresh Rate" или просто - "DRAM Refresh". Вот неполный перечень значений, с которыми мог встретиться пользователь:
"For 50 MHz Bus", "For 60 MHz Bus", "For 66 MHz Bus", "Disabled" (такой необычный вариант встретился в системе на i430FX),
"50/66 MHz", "60/60 MHz", "66/66 MHz",
"15 us", "30 us", "60 us", "120 us",
"Disabled" (или "No Refresh"), "15.6 us", "31.2 us", "62.4 us", "124.8 us", "249.6 us",
"15.6 us", "31.2 us", "62.4 us", "125 us", "250 us",
"15.6 us", "62.4 us", "124.8 us", "187.2 us",
"1040 Clocks", "1300 Clocks",
"15.6 us", "7.9 us", "FR 128 CLKs" (понятно, что речь идет о частоте - "frequency"),
"Disabled", "Normal",
"Fast", "Slow",
"Faster", "Slower",
"Disabled" (устанавливаются стандартные 15,6 мкс), "Enabled" (соответствует удвоению частоты).
Остается отметить, что чем реже производится регенерация памяти, тем эффективнее работает система. Но если явно наблюдаются нарушения в работе системы, то частоту обновления необходимо повысить. Значение "Disabled", появляющееся в некоторых версиях, не должно использоваться. В противном случае следует ожидать потери информации в памяти. И наконец, если пользователь видит на экране перед собой целый ряд значений для выбора, то это может означать, что в состав чипсета входит специальный конфигурационный регистр, в котором три разряда (или менее) "отданы" под возможные комбинации устанавливаемой частоты.
Как дополнение к изложенному рассмотрим еще некоторые опции и чипсеты, для которых они были реализованы:
"DRAM Refresh Ratery Time" (SIS530) - "15.6 us", "7.8 us", "3.9 us",
"Refresh Rate" (AMD751) - "20.4 us", "15.3 us", "10.2 us", "5.1 us".
Опция "Refresh Mode Select", несмотря на некоторое несоответствие в названии, предложила значения "7.8 ?sec", "15.6 ?sec", "64 ?sec", а опция "Refresh Interval" - "7.8 ?sec", "15.6 ?sec", "31.2 ?sec", "64 ?sec", "128 ?sec".
Вот тут и может возникнуть, с одной стороны, мнимое несоответствие, а с другой, некоторое непонимание сути представленных опций. Ведь в названиях опций упоминаются и "частота", и "период", и "интервал", и "время цикла". Поэтому требуется дополнительное разъяснение.
Понятно, что одновременно регенерировать всю динамическую память невозможно. Допустимо также говорить о построчной регенерации матрицы памяти (об этом см. выше). Тогда можно ввести сразу два понятия. Первое - временной интервал между регенерацией, например, соседних строк. Второе - время полного цикла регенерации, т.е. время, через которое необходимо будет снова регенерировать условную начальную строку. "Обычный" чип памяти содержит 4096 строк. Можно утверждать, что общее время цикла регенерации составляет 64 мсек (один из стандартов JEDEC). И тогда упомянутый интервал (период) регенерации составляет:
64000: 4096 = 15.6 ?sec.
Это означает, что каждые 15,6 мкс контроллер памяти инициирует цикл регенерации отдельной строки памяти. И это значение характерно для тех же модулей DIMM емкостью 128 Mbit или меньше. Если же речь идет о модулях емкостью 256 Mbit и более, то количество строк составит 8192 и интервал регенерации 7.8 ?sec, обусловленный сохранением времени общего цикла в 64 мсек. Если же в системе используются модули различной емкости, то временная характеристика регенерации устанавливается по модулю большей емкости, т.е. с более высокой частотой.
Необходимо отметить, что применявшиеся ранее модули памяти во многих случаях позволяли удлинить цикл регенерации, т.е. увеличить ее интервал, тем самым несколько повышая производительность системы.
И, конечно же, картина была бы неполной, если бы мы не вспомнили о RAMBUS DRAM . Мы не будем детально останавливаться на архитектуре этого типа памяти, напомним только, что структура и организация банков памяти носит многоканальный характер. Причем каждый канал данных представляет собой шину шириной всего в один (!) байт. Но за счет высокопроизводительного конвейера, высокоскоростной внутренней магистрали, синхронизируемой собственным тактовым генератором, пропускная способность шины памяти уже доведена до 3,2 ГБ/сек. Ну а теперь опция - "RDRAM Refresh Rate, Channel N", и ее значения: "No refresh", "1.95 us", "3.9 us", "7.8 us".

DRAM Refresh Queue

Этот параметр во включенном состоянии допускает использование более эффективного метода обновления памяти. Дело в том, что чипсет способен формировать последовательность нескольких запросов обновления памяти, пока шина процессора не будет готова к выполнению следующей операции. Речь здесь идет об использовании режима конвейеризации запросов на регенерацию памяти. "Enabled" разрешает постановку в очередь, как правило, 4 запросов регенерации памяти. Установка в "Disabled" означает отключение конвейеризации, что естественно снижает эффективность и приводит к проведению всех циклов регенерации либо по приоритету запросов, либо в соответствии с методами, изложенными в других опциях.
Данный режим должен быть всегда включен. "Enabled" устанавливается и по умолчанию. Одно условие! Установленные модули памяти должны поддерживать это свойство, большинство современных типов памяти поддерживают этот метод. Более того! Использование столь эффективного метода регенерации зависит и от реализации чипсетом таких функций, и от версии BIOS. В таком явном, "пользовательском", виде такая опция повстречалась в "AMI BIOS".
Опция может называться также "DRAM Refresh Queing".

DRAM Refresh Queue Depth

Данная опция позволяет установить степень ("глубину") конвейеризации, т.е. количество возможных ступенек конвейера. Чем выше это число, тем большее количество запросов на регенерацию в данное время находится в обработке. Возможные значения, что естественно зависит от указанных выше реализаций и возможностей, имеют вид:
"0" (равносильно "Disabled"), "4", "8", "12" (по умолчанию).
Опция может называться также "Refresh Queue Depth".

Extended Refresh

- (расширенная регенерация). Введение (в свое время) этой опции в BIOS предполагало использование специальных EDO-чипов. Регенерация содержимого ячеек EDO DRAM при этом стала производиться через 125 мкс, а не через каждые 15,6 мкс, как при стандартной регенерации. Это несколько повысило общее быстродействие памяти.

Fast DRAM Refresh

- (быстрая регенерация DRAM). Контроллер памяти предоставляет два режима регенерации памяти: стандартный (Normal) и скрытый (Hidden). В каждом из режимов CAS-строб выставляется перед RAS-сигналом, однако в режиме "Normal" для каждого строб-импульса выделяется дополнительный такт процессора. Это старый метод обновления памяти, и поэтому имеет смысл установить значение данного параметра в "Hidden", который обеспечивает и повышенное быстродействие, и большую эффективность (см. ниже), также и по причине того, что CAS-строб может и не выставляться - быть "скрытым".

Hidden Refresh

- (скpытая pегенеpация). Когда установлено значение "Disabled", память регенерируется по IBM AT методологии, используя циклы процессора для каждой регенерации. Когда опция "Hidden Refresh" установлена в "Enabled", контроллер памяти "ищет" наиболее удобный момент для регенерации, независимо от циклов CPU. При этом регенерация происходит одновременно с обычным обращением к памяти. Алгоритм регенерации памяти при этом многовариантен: разpешаются циклы pегенеpации в банках памяти, не используемых центральным процессором в данный момент, взамен или вместе с ноpмальными циклами регенерации, выполняемыми всякий pаз (каждые 15 мс) пpи опpеделенном пpеpывании (DRQ0), вызванном таймеpом и инициируемом схемой регенерации.
Для регенерации каждый pаз тpебуется до 4 мс. В течение этих 4 мс один цикл pегенеpации пpимеpно каждые 16 мкс pегенеpиpует по 256 стpок памяти (здесь и выше приведены характеристики для модулей памяти малой емкости). Каждый цикл pегенеpации занимает столько же или чуть меньше вpемени, чем один цикл чтения памяти, т.к. сигнал CAS для pегенеpации при этом не тpебуется.
"Hidden refresh" отличается максимальной скоростью и эффективностью, наименьшими нарушениями активности системы и наименьшими потерями производительности, также позволяя поддерживать состояние памяти во время нахождения системы в режиме "suspend". Этот режим более быстрый, чем "Burst Refresh". Но наличие в BIOS этой функции еще не означает ее реализации. После установки опции в "Enabled" стоит тщательно проверить работоспособность компьютера. Некотоpые модули памяти позволяют использовать "Hidden Refresh", некотоpые - нет. В большинстве случаев pекомендуется установить в "Enabled".

Hi-Speed Refresh

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

ISA Refresh

Опция разрешения/запрещения проведения регенерации памяти для ISA-шины. В таком виде эта опция уже не встречалась даже в последние годы существования ISA-шины.

ISA Refresh Period

Установка периодичности для регенерации ISA-шины. Возможный ряд значений: "15 us", "30 us", "60 us", "120 us".

ISA Refresh Type

Опция с установкой метода регенерации памяти для ISA-шины. Возможные значения параметра: "Normal" и "Hidden". Аналогичная опция с названием "ISA Bus Refresh Mode" могла предложить другие значения: "Slow" и "Fast".

PCI-to-DRAM RAS# Precharge

Тема "предзаряда" уже достаточно нами освоена, поэтому стоит лишь сказать кратко о назначении данной опции - установка времени "предзаряда" строба RAS# при циклах записи PCI-шины в основную динамическую память. Значения опции: "2T", "3T".

RAS Precharge @Access End

Когда выбрано "Enabled", RAS#-строб остается в активном состоянии в конце процесса "предзаряда". Если же установлено "Disabled", RAS# переводится в пассивное состояние (высокий уровень).

RAS Timeout

Когда установлено значение "Disabled", цикл регенерации динамической памяти производится в стандартном режиме, т.е. каждые 15,6 мкс. Дополнительный цикл регенерации памяти вставляется при выборе значения "Enabled".

Ref/Act Command Delay

- (установка задержки для цикла чтения/записи). Параметром выбирается время задержки между окончанием цикла регенерации и началом цикла чтения или записи. Опция может принимать значения: "5T", "6T" (по умолчанию), "7T", "8T".
Система на наборе SIS530 предложила опцию под названием "DRAM Refresh/Active Delay" с чуть более консервативными значениями: "9T", "8T", "7T", "6T". Более развитый чипсет (SIS540) представил уже две опции: "DRAM REF/ACT Delay" ("10T", "9T") и "DRAM ACT/REF Delay" ("10T", "9T", "8T"). Понятно, что последняя опция предназначена для выбора задержки для режима регенерации после окончания цикла чтения/записи. Меньшие значения, конечно, более предпочтительны. Данная опция уже не встречается в современных системах.

Refresh During PCI Cycles

Опция, разрешающая/запрещающая проведение регенерации памяти во время циклов чтения/записи на шине PCI. Может принимать значения:
"Enabled" - разрешено,
"Disabled" - запрещено.

Refresh RAS# Assertion

- (установка периода активности сигнала RAS). Этим параметром устанавливается длительность сигнала RAS (в тактах системной шины) для цикла регенерации. Меньшее значение увеличивает производительность системы. Но поскольку принимаемые значения определяются качеством памяти и чипсетом, то к их установке необходимо подходить осмотрительно. Может принимать значения: "4T" (или "4 Clks"), "5T" (или "5 Clks"). Могут быть и другие значения.
Опция может называться также "Refresh Assertion", "Refresh RAS Active Time" или "RAS Pulse Width Refresh".

Refresh Value

Данной опцией устанавливался множитель частоты регенерации. Меньшее значение увеличивало производительность системы за счет снижения частоты регенерации. Но при этом также оптимальный вариант мог быть достигнут только опытной проверкой. Значения опции могли быть выбраны из ряда: 1, 2, 4, 8, 16. Иногда можно было встретить и значение 0,5. Опция эта давно уже не встречается.
Опция может называться "Refresh Divider".

Refresh When CPU Hold

Довольно устаревшая опция, предлагавшая производить регенерацию ("Enabled") или не делать этого ("Disabled") во время пауз процессора.

SDRAM Idle Limit

Данная опция устанавливает количество "пустых" тактов ожидания перед перезарядкой SDRAM-модулей. Оптимальная установка позволяет улучшить производительность циклов чтения/записи путем настройки интервала времени, в течение которого банк памяти может оставаться "пустым" перед перезарядкой (recharging), т.е. перед перезаписью содержимого памяти обратно в ячейки. При этом данная установка не может функционировать как задержка цикла регенерации.
Уменьшение количества тактов с 8 (по умолчанию) до 0 означает, что банк SDRAM-памяти будет немедленно регенерироваться как только контроллер памяти выставит достоверный запрос. При увеличении "SDRAM Idle Limit" от 8 тактов и более перезарядка банка будет задержана на большее время, тем самым возрастет время "хранения" информации из памяти во внутренних цепях. Пришедшая в это время команда чтения/записи будет исполнена мгновенно. Тогда приходится признать, что эффективность памяти возрастет, когда банк более длительное время будет оставаться "пустым". Но всегда есть свое НО! Во внутренних цепях перезарядки не хранятся все строки банка памяти, а только регенерируемой строки. Поэтому пришедший запрос, например, на чтение некоторой строки наверняка не "попадет в точку", и системе придется ожидать завершения регенерации, особенно в случае завышенного значения параметра.
В основном приходится выбирать между значениями в пределах между 0 и 8-ю тактами, правда, насколько позволит это версия BIOS. Конечно, подобная настройка требует серьезной опытной проверки. Поэтому, если есть возможность управлять частотой регенерации, то данную опцию лучше заблокировать. Опытным специалистам можно порекомендовать "поиграть" с двумя характеристиками.
Опция может называться "DRAM Idle Timer". Указанные опции предложили два ряда значений:
"Disabled", "0 Cycle", "8 Cycles", "12 Cycles", "16 Cycles", "24 Cycles", "32 Cycles", "48 Cycles",
"0 clocks", "2 clocks", "4 clocks", "8 clocks", "10 clocks", "12 clocks", "16 clocks", "32 clocks".
Подобные опции достаточно редки. Но вот система на достаточно современном чипсете AMD751 предложила сразу две:
"Idle Precharge Limit" с рядом "0 cycles", "8 cycles", "12 cycles", "16 cycles", "24 cycles", "32 cycles", "48 cycles" и "No idle precharge" и "Extra High Idle Limit" со значениями "Disabled"/"Enabled". Последняя опция разрешает или запрещает вставку дополнительного такта ожидания.

SDRAM Precharge Control

- (управление предварительным зарядом SDRAM). Данная опция определяет, чем управляется "предзаряд" SDRAM - центральным процессором или самой SDRAM-памятью. В некоторых версиях BIOS такая опция может называться (трактоваться) как "SDRAM Page Closing Policy" ("метод закрытия страниц SDRAM" - см. дополнительно в следующем разделе). Если эта опция отключена ("Disabled"), то все циклы процессора к SDRAM завершаются командой "All Banks Precharge Command" в интерфейсе SDRAM-памяти, что улучшает стабильность, но понижает производительность памяти. Если же эта опция включена ("Enabled"), то предварительный заряд контролируется самими чипами памяти. Это уменьшает количество предзарядов SDRAM, значительно возрастает число циклов CPU-to-SDRAM до того момента, когда требуется регенерация памяти. Это однозначно ведет к повышению общей производительности системы, но может влиять на ее стабильность.

SDRAM Refresh

Опция выбора метода регенерации для SDRAM-памяти. Возможные варианты: "Serial" (последовательный перебор строк при регенерации) и "Simultaneous" (одновременная регенерация). При рассмотрении опции "Burst Refresh" уже отмечались недостатки пакетной регенерации, при которой в единый пакет собираются запросы на регенерацию. "Перезарядка" строк происходит мгновенно, но пока не завершится полная регенерация, доступ к шине памяти будет невозможен. Поэтому об оптимальной установке для конкретной системы можно будет говорить после экспериментальных тестов.
Данная опция была замечена в системах, построенных на чипсетах SIS620, SIS600 и некоторых других.

Self-Refresh

Опция включения режима "саморегенерации" основной памяти (если установлено "Enabled"). Этот режим подробно описан выше, в вводной статье.
Опция может называться также "EDO/FPM DRAM Self-Refresh".

Slow Refresh (1:4)

- (медленная pегенеpация). При включении этой опции ("Enabled") схема регенерации будет в 4 раза реже регенерировать память (64 мкс против 16), чем в обычном pежиме. При такой установке пpоизводительность системы повышается благодаpя уменьшению конкуpенции между CPU и схемой pегенеpации, однако не все типы динамических ОЗУ могут поддеpживать такие циклы (в этом случае будет получено сообщение об ошибке четности или о сбое системы). Тогда необходимо установить значение "Disabled". Опция в свое время получила распространение с развитием такого типа ПК, как "laptop" (дорожный ПК), в качестве энергосберегающей функции. В современных системах эта опция встречается все реже.
В свое время считалось также, что применение "медленной регенерации" будет достаточно эффективным при использовании 16-битных ISA-карт расширения, работающих в режиме "bus master". Поскольку сама ISA-карта может быть инициатором запроса на регенерацию, то понятно, что "медленная регенерация" в меньшей степени бы нарушала передачу данных по DMA-каналам.
Опция может называться также "DRAM Slow Refresh", "Slow Refresh" или "Slow Refresh Enable".
Опция может называться и "Slow Memory Refresh Divider". Но этой опцией устанавливался делитель для медленной регенерации: 1, 4, 16 или даже 64. Устанавливать самые большие значения, т.е. в максимальной степени снижать частоту регенерации, позволяла только специальная память.

Staggered Refresh

Трудно переводимый тип регенерации, что-то наподобие "регенерации с перекатыванием". Но этим непонятным термином обозначают "шахматную" регенерацию. Как известно, регенерация выполняется на банках памяти последовательно, с последовательным перебором строк. Но при наличии нескольких банков памяти и включении данной опции банки памяти регенерируются одновременно, но со сдвигом по перебору строк.
Данный тип регенерации позволяет сгладить броски потребления модулями памяти, выравнивая токи в процессе различных переключений. Так как уменьшаются броски тока, то такая регенерация эффективна с точки зрения снижения помех.
С помощью этой несколько устаревшей опции есть возможность установки временного интервала между регенерируемыми строками, измеряемого в системных тактах (0T, 1T, 2T, 3T, 4T, 5T, 6T, 7T). Установка в "0" позволяет регенерировать все строки в банках одновременно. Но опция может предложить и обычный набор значений: "разрешить применение"/"отказать" ("Enabled" и "Disabled").
Опция может называться также "Refresh Stagger" или "DRAM Refresh Stagger By".

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

Схема запоминающего элемента динамического ОЗУ и его конструкция приведена на рисунке 1.


Рисунок 1. Схема запоминающего элемента динамического ОЗУ и его конструкция

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


Рисунок 2. Графики изменения напряжения на линии считывания при считывании информации с запоминающей ячейки

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

Для регенерации первоначального напряжения, хранившегося в запоминающей ячейке в схеме применяется , включенный между двумя линиями записи/считывания. Схема такого включения приведена на рисунке 3. Эта схема за счет положительной обратной связи восстанавливает первоначальное значение напряжения в запоминающем элементе, подключенном к выбранной линии считывания. То есть, при считывании ячейки производится регенерация хранящегося в ней заряда.


Рисунок 3. Схема регенерирующего каскада динамического ОЗУ

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

Особенностью динамических ОЗУ является мультиплексирование шины адреса. Адрес строки и адрес столбца передаются поочередно. Адрес строки синхронизируется стробирующим сигналом RAS# (Row Address strobe), а адрес столбца - CAS# (Column Adress Strobe). Мультиплексирование адресов позволяет уменьшить количество ножек микросхем ОЗУ. Изображение микросхемы динамического ОЗУ приведено на рисунке 4, а временные диаграммы обращения к динамическому ОЗУ на рисунке 5.


Рисунок 4. Изображение динамического ОЗУ на принципиальных схемах


Рисунок 5. Временная диаграмма обращения к динамическому ОЗУ

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

Такой режим обращения к динамическому ОЗУ называется быстрым страничным режимом доступа FPM (Fast Page Mode). Длина считываемого блока данных равна четырем словам. Для того, чтобы оценить время такого режима доступа к памяти время измеряют в тактах системной шины процессора. В обычном режиме доступа к памяти время доступа одинаково для всех слов. Поэтому цикл обращения к динамической памяти можно записать как 5-5-5-5. При режиме быстрого страничного доступа цикл обращения к динамической памяти можно записать как 5-3-3-3, то есть время обращения к первой ячейке не изменяется по сравнению с предыдущим случаем, а считывание последующих ячеек сокращается до трех тактов. При этом среднее время доступа к памяти сокращается почти в полтора раза. Временная диаграмма режима FPM приведена на рисунке 6.



Рисунок 6. Временная диаграмма обращения к динамическому ОЗУ в режиме FPM

Еще одним способом увеличения быстродействия ОЗУ является применение микросхем EDO (Extended Data Out — ОЗУ с расширенным выходом данных). В EDO ОЗУ усилители-регенераторы не сбрасываются по окончанию строба CAS#, поэтому времени для считывания данных в таком режиме больше. Теперь для того чтобы сохранить время считывания на прежнем уровне можно увеличить тактовую частоту системной шины и тем самым увеличить быстродействие компьютера. Для EDO ОЗУ цикл обращения к динамической памяти можно записать как 5-2-2-2.

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

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



Рисунок 7. Структурная схема конвейерной обработки данных

Из приведенного рисунка видно что, несмотря на то, что при считывании одной ячейки памяти время доступа к ОЗУ увеличивается, при считывании нескольких соседних ячеек памяти общее быстродействие микросхем синхронного динамического ОЗУ увеличивается. http://www.epos.kiev.ua/pubs/pm/pc133.htm

Литература:

Вместе со статьей "Динамические оперативные запоминающие устройства" читают: