`

СПЕЦИАЛЬНЫЕ
ПАРТНЕРЫ
ПРОЕКТА

Архив номеров

Что для вас является метрикой простоя серверной инфраструктуры?

Best CIO

Определение наиболее профессиональных ИТ-управленцев, лидеров и экспертов в своих отраслях

Человек года

Кто внес наибольший вклад в развитие украинского ИТ-рынка.

Продукт года

Награды «Продукт года» еженедельника «Компьютерное обозрение» за наиболее выдающиеся ИТ-товары

 

Современные технологии памяти

+22
голоса

За прошедший год появилось более десятка новых технологий, которые обещают «революционные изменения» в компьютерной индустрии. Если три года назад все знали о памяти единственное - чем ее больше, тем лучше, то теперь к критерию количества памяти добавилось многообразие ее типов - DRAM, VRAM, SRAM. WRAM, SDRAM, SLDRAM и др. Предлагаемая вниманию читателей статья призвана хоть немного помочь разобраться в отличиях и преимуществах одних типов оперативных запоминающих устройств (ОЗУ в английском написании RAM - Random Access Memory) по сравнению с другими.

Типы памяти можно поделить на две основные подгруппы: динамическая (Dynamic RAM -DRAM) и статическая (Static RAM - SRAM) память. Принципиальное различие между этими двумя типами памяти заключается в том. что SRAM способна хранить записанную информацию до тех пор, пока не будет записана новая или не снято питание с устройства памяти. В то же время DRAM может хранить информацию только определенный, достаточно короткий промежуток времени, после которого информацию нужно восстанавливать заново, в противном случае она будет потеряна. Процесс восстановления информации в DRAM называется регенерацией Она необходима в силу конструктивных особенностей устройств DRAM, на которых более подробно остановимся ниже.

ДИНАМИЧЕСКАЯ И СТАТИЧЕСКАЯ ПАМЯТЬ
Элементом микросхемы памяти является ячейка, которая может Хранить один бит - «О» или «1».Физическая реализация этих двух состояний существенно различается в зависимости от технологии хранения данных, используемой в конкретном типе устройств памяти. Например, силутока, его направление, заряд можно трактовать как носитель информации (в самом простом случае: есть заряд в ячейке - «1», нет - «О»).

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

Современные технологии памяти

Элементарная ячейка динамической памяти намного проще. Она состоит из одного конденсатора и запирающего транзистора. Это дает возможность достичь намного большей плотности размещения элементов и, в результате, значительно снизить стоимость. С другой стороны, данная технология имеет ряд недостатков, главным из которых является то, что заряд, накапливаемый на конденсаторе, теряется со временем. Несмотря на то что при конструировании конденсаторов ячеек динамической памяти используется хороший диэлектрик с электрическим сопротивлением в несколько тераом (10 в 12-й степени ом), заряд конденсатора теряется очень быстро, так как размеры одного конденсатора микроскопические, а емкость мизерна (порядка 10 в пятнадцатой Ф). При такой емкости на одном конденсаторе накапливается всего около 40000 электронов! Среднее время утечки заряда при современном дизайне ячеек динамической памяти составляет порядка сотни или даже десятков миллисекунд. Значит заряд каждой ячейки нужно восстанавливать на протяжении данного отрезка времени, иначе информация, хранящаяся в памяти, будет утеряна.

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

Основными показателями, определяющими область применения SRAM и DRAM, являются скорость, плотность, постоянство информации, стоимость и дополнительные функции.

Скорость. Главным преимуществом SRAM перед DRAM является ее быстродействие. Самые быстрые микросхемы DRAM все еще требуют от пяти до десяти тактов процессора при чтении первого бита информации. Несмотря на то что функциональные усовершенствования микросхем DRAM (таких как FPM, EDO и других) уменьшают время доступа при чтении последующих бит информации, все же процессору приходится ждать появления информации на шине данных, что замедляет работу всей системы. Быстрая синхронная SRAM может работать на частотах 250 MHz и выше с временем доступа к информации, равным времени одного тактового импульса процессора. При хорошо проработанном дизайне кэш-памяти с использованием очень быстрой SRAM возможно добиться ситуации, когда процессор практически не будет ожидать основную память.

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

Современные технологии памяти

Плотность данных. Из-за конструктивных особенностей ячеек устройства DRAM имеют значительно большую плотность размещения ячеек на кристалле, чем SRAM. Если в настоящее время к выпуску готовятся микросхемы DRAM емкостью 256 Mb, то устройства статической памяти - всего лишь 16 Mb.

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

Стоимость. Если стоимость является основным фактором при проектировании компьютера, то DRAM следует выбирать без оговорок. Если же, с доугой сто-
роны, важна высокая производительность, то SRAM является эффективным средством ее повышения.

Дополнительные возможности. Большинство микросхем DRAM, выпускаемых различными производителями (имеется в виду DRAM одного типа, например, EDO), производятся в одной, максимум в двух модификациях. Это. безусловно, поддерживает их низкую стоимость, но исключает гибкость в использовании, когда требуется, например, определенная последовательность адресации или буферизация шины. SRAM же выпускается в множестве модификаций. Это достигается благодаря «сменным» модулям логики при постоянном ядре.
Когда же применяется динамическая, а когда статическая память9 Последняя, обычно, используется как кэш-память второго уровня, а на микросхемах DRAM строится основная память.

СИНХРОННАЯ И АСИНХРОННАЯ SRAM

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

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

Современные технологии памяти

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

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

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

Использование обыкновенной (Flow thru) SRAM с запаздывающей записью позволяет производить запись сразу после чтения без тактов ожидания Однако этот тип памяти не обеспечивает того быстродействия, которое требуется для современных электронных систем.

Развивая идею запаздывающего режима записи, компания Integrated Device Technology (IDT) в октябре 1996 г представила новую технологию SRAM позволяющую производить запись и чтение без циклов задержки. Этот тип памяти получил название ZBT SRAM (Zero Bus Turnaround - нулевое время переключения шины). В настоящее время ZBT SRAM еще не стала стандартом для использования в персональных компьютерах, но достаточно широко применяется в различных сетевых устройствах.

Через несколько месяцев после того, как IDT объявила о технологии ZBT SRAM, компания Cypress Semiconductor представила свою независимую разработку аналогичного типа SRAM псд названием NoBL (No Bus Latency - дословно «нет задержек шины»), расширяя область применения микросхем статической памяти, компания Simtek разработала SRAM, способную сохранять данные при выключенном питании -non-volatile SRAM (nvSRAM). Simtek соединила в одном корпусе SRAM с перепрограммируемой постоянной памятью (EEPROM). При включении питания данные копируются из EEPROM в SRAM, а при выключении -автоматически перезаписываются из SRAM в EEPROM.

ТИПЫ ДИНАМИЧЕСКОЙ ПАМЯТИ

Динамической памяти в сфере персональных компьютеров «повезло» значительно больше, нежели статической. Признание DRAM получила благодаря большей плотности размещения ячеек памяти в корпусе микросхемы и гораздо более низкой стоимости. Это и определило главную роль DRAM, даже невзирая на ее
серьезные недостатки -относительно низкое быстродействие и необходимость регенерации памяти, что ведет к усложнению контроллера памяти.

Современные технологии памяти

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

Несмотря на разнообразие типов DRAM, все они базируются на элементарной ячейке, состоящей из транзистора и конденсатора, который удерживает заряд. Более того, практически все модификации, даже самые современные, используют то же ядро, что применялось еще лет 15-20 назад. Все кардинальные изменения были сделаны в области интерфейсной логики, и это позволило передавать считанные из ячейки данные более оптимальным способом. Нельзя сказать, что ядро совсем не изменилось. Напротив, современные методы обработки полупроводниковых кристаллов позволили на несколько порядков увеличить емкость микросхем. А это значит, что линейный размер одной ячейки уменьшился соответственно. Однако законы физики никто не отменял, и если раньше конденсатор, удерживающий заряд, представлял собой обычный планарный элемент с двумя плоскими «пластинами» со слоем диэлектрика, то при уменьшении размеров его емкость тоже значительно уменьшилась, что потребовало пересмотра самой топологии изготовления ячеек памяти.

Однако отбросив технические сложности, можно сказать, что развитие полупроводниковых технологий не слишком сильно повлияло на быстродействие ячеек динамической памяти Если еще пять лет назад среднее время доступа к памяти составляло где-то 120 нс, то теперь оно равно примерно 50-60 нс. Безусловно, это достижение, но если учесть, что тогда процессоры ра-ботали на частоте 10-20 MHz, а сейчас - 300 MHz. то прогресс уже кажется не таким значительным.

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

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

В отличие от SRAM, адрес ячейки DRAM передается в два шага - сначала адрес столбца, а затем и строки Эго дает возможность снизить количество выводов шины адреса примерно вдвое, за счет чего уменьшить размеры корпуса и разместить большее количество микросхем на материнской плате, С другой стороны, это, безусловно, отражается на быстродействии, так какдля передачи адреса нужно вдвое больше времени. Поскольку знание алгоритма работы с памятью поможет понять различия между некоторыми ее типами, остановимся на них более подробно Заметим, что строку массива памяти также называют страницей памяти (Rage). Для указания, какая именно часть адреса передается в определенный момент времени, служат два вспомогательных сигнала - RAS (Row Address Strobe - строб строки) и CAS (Column Address Strobe - строб колонки). При обращении к ячейке памяти на шину адреса выставляется адрес строки (Row). После того как сигнал на шине
стабилизировался, подается сигнал на линию RAS, и адрес записывается во внутренний регистр микросхемы памяти. Вслед за этим на шину адреса выставляют адрес столбца и выдается сигнал С AS Это, в зависимости от состояния еще одной дополнительной линии - WE (Write Enable - разрешение записи), приводит либо к чтению данных из ячейки, либо к их записи. Интервал между установкой адреса и выдачей сигнала RAS (или CAS) оговаривается техническими характеристиками микросхемы, но обычно адрес выставляется в одном такте системной шины, а управляющий сигнал - в следующем. Таким образом, для чтения или записи одной ячейки памяти необходимо пять тактов (адрес строки => =ъ адрес столбца => CAS => операция чтение/за-пись), в то время как SRAM требует всего двух или трех (для Pipelined) тактов.

Современные технологии памяти

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

Conventional DRAM (Page Mode DRAM) -«обычная» DRAM

Первыми микросхемами памяти были так называемые Page Mode DRAM, или «обычная память». Этот тип DRAM осуществляет чтение каждой ячейки памяти за бтактов по схеме, описанной выше. При этом каждая ячейка адресуется независимо от другой. Иными словами, Fbge Mode DRAM работает по схеме 5-5-5-5-...

FPM DRAM (Fast Page Mode DRAM) -память с быстрым доступом к странице

В отличие от предыдущего типа памяти, FPM DRAM позволяет не передавать повторно адрес строки, если следующая ячейка находится в той же строке, т. е для чтения первой ячейки требуется полный адрес, что занимает 5 тактов на весь цикл чтения. Все остальные ячейки в пределах выбранной строки могут читаться по «укороченной» схеме - передается только адрес следующего столбца, сокращая время цикла чтения на два такта. Таким образом, FPM DRAM работает по схеме 5-3-3-3-3-... в пределах одной строки. При необходимости чтения ячейки из другой строки нужно выполнить полный цикл чтения.
FPM DRAM была доминирующей технологией вплоть до появления систем на базе процессора Pentium. Совершенствуя ядро памяти, удалось сократить время доступа со 120 нс до 70 и даже 60 нс Однако этого все равно недостаточно для быстрых процессоров Pentium.

EDO RAM (Extended Data Out) - память c усовершенствованным выходом

EDO RAM мало чем отличается от FPM RAM, однако у последней данные считываются с шины одновременно с сигналом CAS, Поэтому приходится удерживать CAS активным до тех пор, пока контроллер не считает данные. После этого CAS снимается, и выдерживается пауза на перезарядку внутренних цепей, В случае же EDO RAM данные не снимаются с шины, и при деактивации сигнала CAS они удерживаются а специальной защелке. Это: позволяет произвести
перезарядку в момент, когда контроллер считывает данные. Таким образом, удается сократить общее время цикла на один такт С другой стороны, для того чтобы EDO RAM использовала свои возможности, нужна специальная поддержка со стороны контроллера. Она появилась только в чипсете Intel 430FX. При этом чтение
может происходить по схеме S-2-2-2-2-. С более ранними наборами системной логики микросхемы EDO RAM ведут себя как обыкновенные FPM RAM (5-3-3-М-...). На практике замена FPM на EDO RAM позволяет увеличить быстродействие системы на 5-10%,

Как видно из представленных на рисунке временных диаграмм, EDO RAM дает возможность удерживать данные такое же время, как и FPM при более коротші цикле чтения.

Считается, что предельная частота, на которой могут устойчиво работать устройства EDO RAM, составляет 66 MHz, Однако в большинстве случаев удается без проблем использовать EDO RAM и на более высоких частотах - 75 и даже 83 MHz. Наиболее новые микросхемы EDO выпускаются с ядром 45 нс.

BEDO (Burst EDO) - пакетная EDO RAM

BEDO RAM, помимо стандартных методов чтения/записи, позволяет выполнять эти операции, группируя данные в короткие пакеты (по четыре цикла), при этом адрес следующей ячейки вообще не передается, При чтении первого бита данных его адрес записывается во внутренний регистр и автоматически увеличивается при последующих обращениях Таким образом. на чтение первой ячейки затрачивается, как и всегда, пять тактов, зато последующие три ячейки идут подряд, реализуя тем самым схему 5-1-1 -1, Ввидутого что в микросхемах BEDO используется двухбитный счетчик адреса, длина пакета ограничена четырьмя битами. Поэтому следующий, пятый бит считывается опять по стандартной схеме с предоставлением полного адреса.

Современные технологии памяти

Идея, заложенная в BEDO, действительно хороша, но она появилась слишком поздно и не получила должной поддержки. Дело в том, что верхний предел быстродействия BEDO, как и EDO, - 66 MHz. К моменту появления этого типа памяти 66 MHz уже была стандартной частотой шины процессора, и велись поиски путей ее увеличения. Поэтому менять материнскую плату (а для работы BEDO нужен специализированный контроллер) ради технологии, у-которой нет будущего, оказалось не слишком выгодно, и BEDO покинула рынок так же быстро, как и появилась. Среди поддерживающих BEDO чипсетов можно назвать Intel l430НХ, VIA 580VR 590VP и 680.

SDRAM (Synchronous DRAM) -синхронная DRAM

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

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

Микросхемы SDRAM содержат два независимых массива ячеек (банка). Это позволяет обращаться к ячейке памяти одного банка, пока управляющие цепи второго банка перезаряжаются, и информация восстанавливается Возможность держать открытыми одновременно две строки памяти (из разных банков) влияет на результирующее быстродействие. При обращении к каждому из банков поочередно можно вдвое уменьшить частоту обращения к каждому из них в отдельности, а это значит что если EDO RAM работает при частоте максимум 66 MHz. то двухбанковая SDRAM может с легкостью работать на частоте 100 MHz. Имея встроенный счетчик адресов, она позволяет выполнять чтение и запись в пакетном режиме, как BEDO RAM, только длина пакета может программироваться на 1, 2,4 или 8 битов, кроме того, есть возможность произвести чтение всей строки в пакетном режиме. Как и BEDO, SDRAM позволяет читать пакет по схеме 5-1 -1 -1, только уже на частоте 100 MHz и выше. Среди прочих усовершенствований, еще больше оптимизирующих работу SDRAM, можно назвать автоматическую перезарядку внутренних цепей без дополнительной команды со стороны контроллера на закрытие страницы.

Все эти положительные факторы вызвали повышенный интерес у потребителей и обеспечили необходимую поддержку со стороны производителей компьютеров и системной логики. Чипсеты 430VX/TX и последующие разработки, а также все новые чипсеты VIA (580VR 590VP 680VP и т. д.), AMD и других производителей поддерживают SDRAM, Дополнительным плюсом этого типа памяти стало то, что с началом массового выпуска микросхемы SDRAM практически сравнялись по цене с EDO RAM, давая при этом дополнительные возможности и выигрыш производительности, хотя, следует заметить, не такой уж и большой. Если учесть, что 90-95% обращений к памяти приходится на кэш, то собственно до самой SDRAM доходит 5-10% из них. Поэтому установка SDRAM вместо EDO RAM не дает значительного увеличения быстродействия компьютера в целом. Однако на частоте более 66 MHz SDRAM преимущества будут весьма значительны, поскольку конкурирующие типы памяти не работают на такой частоте. Из этого следует, что время SDRAM еще не пришло. Хотя материнские платы с частотой 100 MHz только начали появляться на рынке, считается, что 1998 г будет годом SDRAM.

DDR SDRAM, SDRAM II (Double Data Rate SDRAM) - SDRAM с удвоенной
скоростью передачи данных

Новым этапом дальнейшего развития технологии SDRAM стала DDR SDRAM. В отличие от SDRAM, новая модификация выдает данные в пакетном режиме на обо- их фронтах импульса синхронизации, т е. дважды за период импульса синхронизации Таким образом активная пропускная способность увеличивается вдвое, и средняя скорость передачи данных системы памяти на DDR SDRAM может
составлять -256 MBps против -128 MBps для SDRAM. Типичные рабочие частоты DDR SDRAM - 100и 125 MHz. Скорее всего, поддержка этого типа памяти на уровне системной логики будет осуществлена в чипсетах для процессора Intel Deschutes (440ВХ и 450NX) и, возможно, в пересмотренном варианте чипсета VP3 компании VIA с поддержкой процессора AMD-K6.

RDRAM (Rambus DRAM) - Rambus-память

В настоящее время промышленным стандартом является пересмотренный вариант RDRAM — Direct RDRAM, Технология Direct Rambus разработана компа нией Rambus и представляет собой высокоскоростнук замкнутую систему которая имеет свою адаптированную логику управления и точно рассчитанные параметры. Direct Rambus позволяет достичь очень больших скоростей передачи данных (1,6 GBps на один канал и дс 6,4 GBps при четырех каналах). Вся подсистема состоит из следующих компонентов: контроллер, канал, разъем, модуль памяти (RIMM) и сами микросхемы памяти (RDRAM). Физические, электрические и логические принципы и соглашения, применяемые в системе, определены компанией Rambus и должны строго выполняться всеми производителями для соблюдения абсолютной совместимости ее частей, так как Rambus-память работает на очень большой частоте (400 MHz), Контроллер состоит из специализированной микросхемы Rambus ASIC Cell (RAC), которая генерирует управляющие сигналы для памяти и обменивается данными с компьютером. К одной RAC можно подключить до четырех каналов, функционирующих абсолютно независимо друг от друга. У каждого из них есть отдельный управляющий блок, который отвечает за микросхемы памяти, подключенные к каналу, их состояние, ответы, а также транслирует команды RAC в пакеты протокола Direct Rambus.

Современные технологии памяти

Канал создает электрическую связь между контроллером и микросхемами RDRAM и представляет собой 30 высокоскоростных линий, передающих данные на обоих фронтах синхронизирующих сигналов частотой 400 MHz (результирующая частота 800 MHz), Использование такой большой частоты стало возможным благодаря применению резистивного терминатора на конце канала, подавляющего паразитные отражения, а также сигналов низкого напряжения, хорошо рассчитанной топологии самих каналов для соблюдения одинаковой дистанции пробега сигналов по разным проводникам, прецизионных дифференциальных тактирующих сигналов и большой плотности размещения элементов с короткими соединениями. Канал может располагаться на стандартной материнской плате и соответствует типоразмерам современного дизайна SDRAM-памяти.
Собственно сами сигналы канала разделены на три группы 16- или 18-разрядная шина данных, 5 бит адрес строки и 3 бита - адрес столбца. Использование раздельных разрядов для адресов строки и столбца позволяет увеличить быстродействие системы.

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

Данные и сигналы управления передаются по каналу пакетами, каждый из которых всегда состоит из восьми посылок, независимо оттого, сколько информации нужно передать Это обеспечивает совместимость с будущими модулями памяти значительно большего объема. Данные и адрес передаются фрагментами восемь раз. Следовательно, один пакет позволяет передать 128 бит данных, 24 бита строки и 40 бит колонки (в сумме адрес 64 бита). Использование небольшого числа линий позволяет уменьшить искажения сигнала при больших частотах.

Direct Rambus RIMM - это модуль расширения памяти, который вставляется в разрыв канала в соответствующий разъем. Таким образом, пустые разъемы не допускаются - в них необходимо вставлять специальный RIMM, который не содержит микросхем памяти а только продолжает канал.

Один канал может использовать максимум до 32 микросхем RDRAM, что дает возможность нарастить память до 1 GB при емкости микросхем по 256 Mb. Для размещения большего объема памяти можно применять микросхемы-повторители, позволяющие удлинить канал (возможно использование до двух повторителей что дает максимум 128 микросхем в 12 модулях RIMM).

Direct RDRAM - это непосредственно носители информации. Как и любые другие микросхемы динамической памяти. RDRAM состоит из ядра и интерфейсной логики, которая накапливает сигналы одного пакета и преобразует их в широкие команды (8 посылок на частоте 800 MHz дают одну команду с частотой 100 MHz) Затем данные передаются в 128-разрядное ядро В то время как интерфейсную логику для обеспечения совместимости выпускает исключительно фирма Rambus, ядро может производить поставщик микросхем самостоятельно.

Ядро емкостью 64 Mb содержит 16 зависимых банков памяти объемом 32 К х 128 бит которые адресуются поочередно, обеспечивая высокую пропускную способность даже на частоте 100 MHz. В отличие от SDRAM с независимыми банками памяти, RDRAM содержит зависимые банки. Это означает, что на два банка используются общие усилители, формирователи сиг налов и другая логика. Такой подход позволяет разместить больше банков памяти на заданной площади кристалла и снизить себестоимость памяти, однако исключает возможность доступа к двум банкам в смежных операциях, так как управляющие цепи необходимо перезаряжать, на что требуется определенное время RDRAM использует 16 банков, в то время как пакет состоит только из восьми посылок. Это позволяет подготовить смежные банки, пока обрабатывается один пакет.

Технологии Rambus прочат большое будущее по нескольким причинам Она позволяет передавать данные с большой скоростью, а себестоимость производства этого типа памяти на 40% ниже, чем аналогичных микросхем SDRAM Не последнюю роль сыграло и то, что ее взяла на вооружение Intel для своих будущих процессоров Willamette и Merced. Однако массовое распространение ее в качестве основной
памяти персональных компьютеров ожидается не раньше 2000 г.

На сегодняшний день RDRAM используется в некоторых графических станциях (Silicon Graphics) и игровых приставках (Nintendo  Ultra64).

SLDRAM (SyncUnk DRAM)

Этот гип памяти разработан совместными усилиями многих производителей ОЗУ, среди которых IBM, Apple, Motorola, Micron lechnology как альтернатива RDRAM. Проблема заключается в том, что технология Direct Rambus находится в полном владении компаний Rambus и Intel и подпежит лицензированию другими производителями с последующими выплатами о реализации конечных продуктов Образовав SLDRAM-консорциум (прежнее название SyncUnk Consortium), производители объединили усилия для создания памяти, аналогичной RDRAM, которая не уступала бы ей в производительности, с одной стороны, и была открытым, доступным для всех стандартом, с другой что в итоге обеспечило бы ему поддержку Производителей микросхем.

Современные технологии памяти

SLDRAM очень похожа на RDRAM, по крайней мере на высоком системном уровне. Данные и команды от контроллера к памяти и обратно передаются пакетам по 4 или 8 посылок Команды, адрес и управляющие сигналы посылаются от контроллера к памяти по однонаправленной 10-разрядной шине, которая называется CommandLink Считываемые и записываемые данные передаются параллельно по двунаправленной 18-разрядной шине данных (DataLink), которая работает на одной и той же частоте с шиной команд Протокол обмена информацией SLDRAM позволяет применять различные частоты шин в зависимости от быстродействия используемых компонентов В настоящее время опытные образцы первого поколения SLDRAM работают по обоим фронтам синхросигнала частоты 200 MHz что дает 400 Mbps на один разряд шины При 16-разрядной шине данных производительность памяти составляет 800 Mbps, что вдвое меньше Direct RDRAM Следующие поколения SLDRAM должны работать на частотах 400 MHz и выше. Пакеты команд в настоящее время содержат зарезервированные биты, которые могут использоваться в буду-щем для адресации модулей памяти емкостью до 4 GB. На шину к одному контроллеру можно подключить до восьми устройств: отдельную микросхему SLDRAM либо блок из нескольких микросхем, снабженный выходным буфером.

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

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

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

EDRAM (Enhanced DRAM) - усовершенствованная DRAM

EDRAM - это более быстрая версия DRAM, существующая в вариантах FPM, EDO и В EDO. Разработанный компанией Enhanced Memory Systems - подразделением фирмы Ramtron, новый вид памяти имеет более быстрое ядро (время доступа 35-40 нс) и внутреннюю кэш-память. Последнее является основным отличием EDRAM от обычной DRAM.

EDRAM содержит в себе 2048 бит SRAM, используемой в качестве кэша. Ядро DRAM имеет 2048 столбцов. каждый из которых соединен с SRAM, При обращении к какой-нибудь ячейке одновременно считывается целая строка (2048 бит), которая записывается в SRAM. При последующем обращении к ячейкам этой строки данные извлекаются из более быстрой статической памяти и передаются на шину данных, и только при попытке чтения другой строки, данные которой не содержатся в кэш, происходит обращение: к ядру динамической памяти.

Такой подход значительно увеличивает производительность памяти при последовательном чтении В 2047 случаях из 2048 EDRAM работает как статическая память со средним доступом к одной ячейке 10-15 нс.

Недостатком этого типа памяти является необходимость специализированного контроллера. На данный мо мент не существует чипсета для Pentium с поддержкой EDRAM Отсутствие поддержки является серьезным недостатком к тому же положение усугубляется тем, что Intel, судя по всему, не собирается поддерживать EDRAM в своих чипсетах в будущем.

Продолжая совершенствовать память. Enhanced Memoy Systems разработала ESDRAM - SDRAM-версию своего продукта, скорость работы которой выше чем аналогичных SDRAM, за счет более быстрого ядра и наличия встроенной кэш-памяти.

CDRAM (Cached DRAM)

Mitsubishi Electric э свою очередь предложила собственный вариант DRAM со встроенной кэш-памятью.

В  отличие от EDRAM, кэш-память CDRAM в восемь раз больше и организована как 1024 х 16 бит. Ядро динамической памяти 128-разрядное. а это означает, что одновременно из него считываются восемь 16-раз-рядных слов, которые записываются в кэш. При следующем обращении, если требуемый бит уже содержится в кэш-памяти, он передается на шину данных а если нет, то очередные 128 бит записываются в кэш. Ключевым моментом здесь является то, что при записи очередной порции данных предыдущее содержимое не удаляется из кэша.

Современные технологии памяти

Чтобы понять разницу между EDRAM и CDRAM, рассмотрим следующий пример. Пусть считываются подряд три ячейки с адресами 0,2048 и 5. В случае EDRAM при чтении ячейки 0 вся первая строка DRAM (ячейки 0-2047) записывается в SRAM. Ячейка 2048 не попала в кэш и при ее чтении вторая строка (2048-4095) переносится в SRAM. При чтении третьей ячейки (5) ее содержимое уже стерто из кэша предыдущей операцией, и нужно опять считывать данные из ядра CDRAM, в свою очередь, при чтении ячейки 0 заполнит первые восемь слов (0-7). SRAM содержимым ячеек 0-127. В момент чтения ячейки 2048 следующие 128 ячеек (2048-2175) записываются в кзш-памягь (слова 8-15). Отличие появляется при чтении третьей ячейки, так как последняя операция чтения не перезаписала данные с позапрошлого обращения, то ячейка 5 все еще находится в кэш-памяти и считывается гораздо быстрее без обращения к ядру Как видно из-примера, EDRAM имеет преимущества при последовательном чтении информации, CDRAM - при произвольном. Однако на практике чтение всегда происходит блоками, и в среднем, при прочих равных условиях, EDRAM и CDRAM показывают примерно одинаковую производительность К тому же CDRAM использует более медленное ядро (-70 нс вместо 35 нс у EDRAM), применение которого компенсируется увеличенным объемом кэшпамяти с одной стороны, и снижением стоимости микросхемы в целом, с другой. Кроме зтого, CDRAM требуется внешний контроллер кэш-памяти.

Основная область применения CDRAM - память текстур в трехмерных видеоакселераторах Она применяется наряду с 3D-RAM (см. ниже) в рабочих станциях Fire GL 4000. а на PC - в контроллерах ReallMAGE.

VCM (Virtual Channel Memory) - память с виртуальными каналами

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

На выставке Comdex/Fall, проходившей осенью 1997 г г. компания NEC Electronics представила метод усовершенствования самого ядра динамической памяти не затрагивающий интерфейсную логику, - Virtual Channel Memory. Стандартное ядро DRAM имеет всего один путь, по которому данные считываются из ядра и записываются в него К тому же загрузка этого канала крайне неравномерна Так. в SDRAM при пакетном чтении четырех ячеек они выдаются по схеме 5-1 -1 -1 В то время как вторая, третья и четвертая ячейки считаются в каждом такте, перед чтением пятой происходит задержка на пять тактов.

NEC предложила использовать несколько независимых каналов чтения/записи информации. Каждый из них имеет свои собственные буферные регистры для адреса строки, счетчики адресов burst-режима и промежуточные регистры хранения информации, что позволяв і считывать и записывать данные в разные области ядра. При этом каждый канал может быть назначен независимому устройству, которое обращается к памяти, будь-то процессор контроллер ПДП или АСн-контроллер. При обращении к памяти сразу нескольких устройств Промежуточные данные временно хранятся в отдельных каналах и записываются в ядро по мере разгрузки последнего. Такой подход позволяет увеличить Производительность системы в среднем на 20%. :ак как VCM модифицирует только ядро, а интерфейсная логика остается неизменной, ее можно без внешних изменений внедрить практически в любую из существующих технологий - FPM EDO, SDRAM и даже RDRAM В большинстве случаев даже не нужно ничего менять на материнской плате.

NEC планирует бесплатно предоставлять информацию по VCM всем заинтересованным компаниям в надежде сделать ее новым промышленным стандартом. В качестве образца NEC разработала 64-мегабитную микросхему Virtual Channel SDRAM с 16-ю высокоскоростными каналами емкостью 1024 бита каждый. способных работать на частоте до 143 MHz. и стандартный корпус. Опытное производство ее предполагается начать в апреле этого года.

FRAM (Ferroelectric RAM) - ферроэлектрическая память

Ферроэлектрическая память разработана компанией Ramtron и позиционируется на рынке как альтернатива флэш-памяти Главная особенность FRAM - она сохраняет информацию при выключении питания. Однако это не перепрограммируемое ПЗУ, так как у нее отсутствуем явно выраженный цикл стирания информации. Принцип ее действия аналогичен памяти на ферритовых кольцах -намагничивание ферроэлектрика и измерение тока при последующем перемагничивании. Основой FRAM является конденсатор, представляющий собой две пластины с тонким слоем ферроэлектрика между ними, а точнее, веществом с похожими электрическими свойствами, но позволяющим изготовлять из него сверхтонкие пленки, используемые при производстве микроскопических ячеек памяти Прилагающийся к обкладкам конденсатора потенциал поляризует ферроэлектрик. Направление поляризации представляет собой двоичную информацию, хранящуюся в ячейке. При повторном Приложении потенциала заряд, затрачиваемый на реполяризацию, будет зависеть оттого, совпадает ли направление электрического поля с направлением, поляризовавшим ферроэлектрик в Прошлый раз Если направление поля не совпадает, то на изменение поляризации і ребуется значительный заряд. Таким образом если при повторном приложении потенциала наблюдается электрический ток, то направление не совпадает с предыдущим.

На практике используют дифференциальный метод, позволяющий избегать абсолютных значений тока чтобь| предотвратить ошибки за счет расхождения параметров отдельных ячеек Каждая ячейка представляє: собой два ферроэлектрических конденсатора, которые всегда поляризуются в противоположных направлениях. При считывании информации к обоим конденсаторам прикладывается одинаковый потенциал (например, соответствующий состоянию «1»), По разнице токов определяется, была ли записана в ячейку единица или ноль. Дифференциальный метод хорош тем, что любые изменения характеристик материала компенсируются использованием второго конденсатора из такого же материала. Однако одна ячейка занимает вдвое больше места, и при переходе к производству высокоемких микросхем скорее всего придется перейти к абсолютному методу с использованием одного конденсатора. В этом случае ток можно будет сравнивать с током какой-нибудь опорной ячейки с заранее известной поляризацией, или же придется замерять его абсолютные значения.

Современные технологии памяти

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

FRAM по быстродействию пока еще не может сравниться с DRAM и тем более с SRAM. Среднее время доступа микросхем FRAM составляет 100-500 нс. Это хорошая конкуренция Flash и EEPROM, среднее время считывания информации которых - порядка 10 мс.

Отсутствие необходимости в высоком напряжении для записи информации, большой срок службы (10'° циклов чтения/записи), низкое энергопотребление (В 10-50 раз меньше, чем у EEPROM) должны обеспечить надежный спрос на эти микросхемы в мобильных устройствах.

СПЕЦИАЛИЗИРОВАННЫЕ ТИПЫ ПАМЯТИ

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

SGRAM (Synchronous Graphics RAM) -синхронная графическая память

SGRAM, так же, как и SDRAM, - это синхронная динамическая память с двухбанковой архитектурой, SGRAM очень похожа на SDRAM, однако обладает некоторыми новыми функциями, обусловленными областью применения этого типа шу - памятью видеоконтроллера. Характер работы видеоадаптера заключается в записи и чтении больших объемов информации. Как правило, эта информация пересылается большими блоками ячеек, расположенных подряд, одна за другой. Для оптимизации такого рода операций введены специальные режимы блочной записи - Block Write и Wrlte-per-Bit. Режим Block Write позволяет записать значение предварительно занесенное в специальный регистр SGRAM (Dolor register), в восемь ячеек одновременно. Второй режим (Wriie-per-Bit) также предназначен для заполнения ячеек определенными данными с возможностью маскирования (блокировки) отдельных ячеек.

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

VRAM (Video RAM) - видеопамять

VRAM была разработана для обеспечения постоянного потока данных, необходимых для обновления экрана монитора, происходящего в среднем 75 раз в секунду Это означает. что в секунду нужно считать около 170 МВ информации (в режиме 1024 X 768 X 16 М). При таком потоке данных процессору довольно тяжело -пробиться», чтобы записать или считать информацию из видеобуфера VRAM снабжена дополнительным последовательным портом соединенным широкой внутренней шиной с ядром динамической памяти. Данные из VRAM по внутренней шине передаются в SAM (Serial Access Memory - память с последовательным доступом), которая снабжена сдвиговыми регистрами, преобразующими данные в поток последовательных оит, используемых цифро-аналоговым преобразователем (ЦАП) для выдачи видеосигнала. По мере передачи данных через последовательный порт новая информация время от времени записывается в SAM блоками по 4 КВ (именно такой объем SAM у VRAM).

В момент между считыванием информации из DRAM в ьам ядро VRAM полностью готово обслуживать запросы процессора. Такой подход дает огромный выигрыш в производительности, особенно при видеорежимах с высоким разрешением Кроме дополнительного порта и функций Block Write и Write-per-Bit VRAM имеет еще ряд специфических функций, таких как Flash Write, которая очищает целую строку памяти, и Mask Register (регистр, позволяющий маскировать определенные ячейки, защищая их от записи).

WRAM (Window RAM)

Разработанная компанией Samsung Electronics. , WRAM позиционируется как альтернатива VRAM. Она также двухпортовая, позволяющая одновременный доступ к памяти со стороны процессора и ЦАП. Однако в отличие от , WRAM немного проще по конструкции (к примеру, она не позволяет производить запись в память через последовательный порт). За счет некоторых упрощений архитектуры, мало использующихся в реальных видеоадаптерах. WRAM примерно на 20% дешевле VRAM. В то же время за счет оптимизации внутренних узлов WRAM на 50% быстрее VRAM (!) и может работать на частоте 50 MHz с суммарной пропускной способностью 960 MBps.

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

MDRAM (Multibank DRAM) - многобанковая DRAM

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

Современные технологии памяти

Основной ориентацией MDRAM являются графические карты В настоящее время этот тип используется в некоторых адаптерах фирмы Tseng Labs.

Блочная организация MDRAM позволяет изготовлять микросхемы практически любого объема. Если объем микросхемы стандартной DRAM должен быть степенью 2 (1 2 4 8 МВ), то MDRAM можно сделать 3.5 МВ. Это свойство очень полезно при производстве видеоадаптеров. К примеру видеорежим 1024 х 768 TrueColor требует 2.25 МВ видеопамяти. При
использовании стандартных типов памяти приходится устанавливать 4 MB. В случае MDRAM можно поставить микросхему только с необходимым объемом памяти - 2 5 MB.

3D-RAM - «трехмерная» память

Последняя разработка Mitsubishi Electronics - 3D-RAM рассчитана, плавным образом, на применение в трехмерных видеоускорителях. Помимо массива динамической памяти, построенного на базе CDRAM 3D-RAM имеет еще и блок арифметико-логического устройства (АЛУ). которое позволяет выполнять некоторые операции с изображением прямо в памяти Например, чтобы смешать красный цвет с цветом изо-оражения, необходимо считать цвет точки, добавить в него красный и записать обратно 3D-RAM может осуществлять подобные операции при обычной записи, выбрав соответствующий режим смешивания.

При цене, сравнимой с VRAM, 3D-RAM имеет массу пополнительных ЗО-функций, которые выполняются непосредственно в памяти, не требуя считывания данных процессором:

- четыре регистровых блока(ROP), поддерживающие шестнадцать
регистровых логических операций запси данных:
- четыре устройства смешивания цветов, позволяющих в заданных пропорциях смешивать цвета новых пикселов с их старыми значениями;
- аппаратное ускорение всех режимов смешивания (blending) и шаблонирования (stencil) OpenGL в корпусе микросхемы памяти;
- 32-битный компаратор цвета и интенсивности пикселов.

Операции в DRAM, буфере пикселов, АЛУ и видеобуфере могут выполняться параллельно, не задерживая друг друга. WRAM использует четыре банка памяти с 2048 битами SRAM в качестве кэш-памяти между DRAM и АЛУ, соединенные между собой 256-разрядной внутренней шиной. Все это позволяет достичь очень высоких результатов при работе в 3D-акселераторах.

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

ЧТЕНИЕ ДАННЫХ ИЗ SRAM

Для того чтобы считать данные из ячейки памяти, необходимо сначала на шине адреса выставить адрес требуемой ячейки. Ядро памяти представляет собой прямоугольный массив ячеек, каждая из которых определяется своими «координатами» в этой прямоугольной матрице — строкой и столбцом. При выборе необходимой строки и столбца открывается доступ к ячейке, находящейся на их пересечении.

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

Основное различие между микросхемами SRAM заключается в том, каким образом данные доставляются из ячейки на шину данных.
Существуют четыре фундаментальных способа чтения данных из SRAM:
♦    последовательный (Flow thru):
♦    конвейерный (Pipeline);
♦    регистровый (Register to Latch);
♦    пакетный (Burst).

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

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

Конвейерный режим (Pipeline). При чтении из памяти время, необходимое для извлечения данных из ячейки, можно разбить на два интервала: первый - непосредственно доступ к ядру памяти и извлечение данных из ячейки, второй -передача данных на выход (при этом происходят детектирование состояния ячейки, усиление сигнала и другие операции, необходимые для обеспечения считывания данных). В режиме Flow thru следующий цикл чтения начинается только по окончании предыдущего. В микросхемах Pipelined SRAM процесс разбивается на два этапа - пока данные из предыдущего цикла чтения передаются на внешнюю шину данных, происходит запрос на чтение из следующей ячейки. Таким образом, два цикла чтения перекрываются во времени. Ввиду более сложной схемы цепи передачи данных на внешнюю г обходимое для чтения, увеличи такт, и данные поступают на выход только в следующем такте. Казалось бы. что такая память работает в два раза медленнее, чем Flow thru. Это неверно по той причине, что запаздывание наблюдается только при чтении первой ячейки. Все последующие данные поступают на выход друг за другом (хотя и с запаздыванием в один такт относительно запроса на чтение). Поскольку циклы чтения перекрываются, каждый отдельно взятый цикл длится два такта шины и. следовательно, этот тип памяти может использоваться на частоте, в два раза превышающей ту. на которой работают устройства Flow thru.

Регистровый режим (Register to Latch). Данный тип памяти используется достаточно редко и отличается, главным образом, наличием регистра на выходе. Цикл чтения микросхем Register to Latch SRAM происходит следующим образом. До прихода импульса синхронизации на шинах выставляются адрес и все управляющие сигналы. По приходу положительного фронта импульса синхронизации адрес записывается во внутренний регистр микросхемы, и начинается цикл чтения. Считанные данные записываются в промежуточный выходной регистр до тех пор. пока не придет отрицательный фронт импульса синхронизации (спад), после чего данные передаются на шину. По быстродействию этот тип памяти полностью идентичен микросхемам Flow thru. Так как метод позволяет определить точный момент появления данных на выходе, поскольку определяющим фактором здесь является не положительный фронт (как в Flowthru). а отрицательный, то изменяя ширину импульса синхронизации (при постоянной частоте их следования), можно изменять время появления данных на шине.

Такое свойство может быть полезно при проектирования специализированных систем.

Пакетный режим (Burst). Этот режим уже давно используется в микросхемах памяти для увеличения быстродействия. Обычно для чтения данных из памяти нужно задать адрес ячейки, а затем считать их. и так для каждого последующего цикла. Однако принимая во внимание, что в большинстве случаев происходит чтение нескольких последовательных ячеек памяти, возникла идея задавать адрес только один раз и считывать данные из смежных ячеек. Количество ячеек, считываемое за один раз без дополнительного указания адреса, называется длиной пакета (burst length) и в большинстве случаев может программироваться (чаще это 1.2. 4 или 8 ячеек подряд). Для повышения производительности пакетный режим может использоваться совместно с другими технологиями. Такой комбинацией является наиболее популярный тип SRAM, применяемый в современных Pentium-систе-мах. - Pipelined Burst SRAM.

Из вышеизложенного следует, что чтение Flow thru и Register-to-Latch SRAM по тактам происходит по схеме 2-1 -1 -1. соответствующей минимальным затратам времени, a Pipelined SRAM - 3-1 -1 -1. Однако Pipelined SRAM может работать на гораздо большей частоте, чем Flow thru, при одинаковом быстродействии ядра памяти, что обеспечило это-му типу памяти широкое распространение.

ЗАПИСЬ ДАННЫХ В SRAM

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

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

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

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

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

Компания Integrated Device Technology усовершенствовала технологию запаздывающей записи, представив в 1996 г. память под названием ZBT SRAM (Zero Bus Turnaround SRAM - SRAM с нулевым временем переключения шины).

На самом деле ничего принципиально нового в этой технологии нет. Идея ее состоит в том, чтобы выполнять запаздывающую запись с таким же интервалом, какой требуется для чтения. Так. если Pipelined SRAM требует три цикла для чтения данных из ячейки, то данные для записи нужно передавать с таким же запаздыванием относительно адреса. В результате перекрывающиеся циклы чтения и записи идут один за другим, позволяя выполнять операции чтение/запись каждый такт без каких-либо задержек. На рисунке t хема і ически изображены временные диаграммы работы Pipelined SRAM с различными режимами записи. В качестве примера рассматриваются четыре цикла шины с попеременным чтением (R) и записью (W): R-W-R-W. т. е. сначала выполняется чтение ячейки с адресом АО. затем записываются данные в ячейку А1. после чего читается АЗ и т. д.

+22
голоса

Напечатать Отправить другу

Читайте также

 
 
IDC
Реклама

  •  Home  •  Рынок  •  ИТ-директор  •  CloudComputing  •  Hard  •  Soft  •  Сети  •  Безопасность  •  Наука  •  IoT