Rambus DRAM - память ближайшего будущего


Благодаря развитию технологии за последние двадцать лет производительность процессоров выросла на несколько порядков, а емкость одной микросхемы памяти возросла с 1 Кбит до 64 Мбит и более. Время доступа к памяти уменьшилось всего в несколько раз, и только микросхемы типа SDRAM обеспечивают в пакетном режиме передачу слова за один такт 66 МГц шины, а первое обращение занимает от 3 до 5 тактов. EDO-память еще медленнее — 5 тактов обращение по новому адресу и по два на каждый следующий. Для повышения эффективности работы процессоры обрастают многоуровневыми кэшами, но с увеличением частоты процессора (а Pentium II-333, например, работает с умножением частоты шины на 5) производительность системы в целом растет в гораздо меньшей степени. По этому, хотя в середине этого года и ожидаются системы с частотой шины 100 МГц, постоянно ищутся способы повышения быстродействия памяти при сохранении приемлемой стоимости. В настоящее время наиболее перспективной на ближайшие несколько лет является технология Direct Rambus, разработанная фирмой Rambus Inc. и поддерживаемая всеми основными производителями памяти и наборов микросхем.

Для повышения производительности памяти разработчиками Rambus был предложен радикально новый интерфейс памяти — Direct Rambus, который функционирует на порядок быстрее современных DRAM. Архитектура Direct Rambus состоит из трех основных компонентов: контроллер памяти, канал Rambus и RDRAM.

Архитектура Rambus

Физически, канал Rambus представляет собой шину из 30 проводников, разведенных на плате строго параллельно для выравнивания задержек, из которых 16 или 18 используются для передачи данных (две группы по восемь), а остальные для управления и синхронизации. На одном конце шины находится контроллер памяти, на другом она подтягивается резисторами до уровня логического нуля для подавления отражения сигналов. Для сокращения времени переключения используются низковольтные сигналы со средним напряжением 1,4 В, напряжением логического нуля 1,8 В и логической единицы 1,0 В. Синхронизация в системе осуществляется от задающего генератора, который находится на наибольшем удалении от микросхемы контроллера. Сигнал от него называется ClockToHost и идет до контроллера с отводом к каждой микросхеме RDRAM. По его фронтам синхронизируется передача данных из памяти в контроллер. Дойдя до контроллера, этот сигнал разворачивается и идет обратно, называясь ClockFromHost. По его фронтам синхронизируется передача данных из контроллера в память. Данные передаются по каждому фронту тактового сигнала частотой 400 МГц, что соответствует скорости передачи 800 Мбит на линию, что для всей шины составляет 1,6 Gb/с (16 проводников по 800 Мбит/с каждый). Для компенсации разницы длины проводников разных микросхем RDRAM, для каждой микросхемы предусмотрено программирование времени задержки чтения, так что для контроллера памяти эффективная задержка одинакова для всех микросхем памяти, которых может быть до 32 на канал.

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

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

Поскольку пакеты данных передаются за четыре периода тактового сигнала, и, соответственно, за восемь периодов шины, их длина составляет 16 байт, а время передачи составляет 10 нс. Микросхемы RDRAM имеют внутреннюю 128-разрядную шину данных, что позволяет передавать 16 байт по каждому адресу столбца. При записи с маской каждый бит маски соответствует байту пакета, поэтому запись можно осуществлять для произвольного числа байт (от 1 до 16) в пределах пакета. Операция записи может следовать сразу за чтением, но необходимо сделать некоторую задержку, равную времени прохождения сигнала по каналу. Это время составляет 2,5 нс для коротких каналов и может доходить до 10 нс для длинных (для SDRAM-100 эта величина составляет до 30 нс).

Каждая запись в канале может быть конвейеризована. При использовании конвейера время задержки первого пакета данных составляет 50 нс, а остальные операции чтения-записи осуществляются непрерывно — задержка вносится лишь при смене операции с записи на чтение. При этом, для последовательного чередования двух операций записи и двух чтения, адресованных к одной микросхеме, пропускная способность шины составит 86% от предельной, а при адресации к разным — 95%. Таким образом, в интерфейсе Direct Rambus для достижения высокой производительности и повышения эффективности полосы пропускания используются следующие ключевые принципы:

  • Двухбайтовая шина с частотой 800 МГц, обеспечивающая пиковую пропускную способность 1,6 Gb/с;
  • Раздельные шины данных, строк и столбцов, работающие независимо и параллельно;
  • Механизм задержки записи;
  • Минимальная инерция системы;
  • Уменьшение взаимного влияния банков.
Rambus memory subsystem

Микросхемы RDRAM несколько отличаются от обычных типов динамической памяти. Внутреннее ядро имеет 128-разрядную шину данных, функционирующую на частоте 1/8 системной, т.е. 100 МГц. 64 Мбит кристалл содержит восемь независимых или 16 сдвоенных банков. Поддержка ядром технологии разбиения банков позволяет представить независимый банк как два сдвоенных, разделяющих общие усилители записи/чтения. Построенная из таких модулей память объемом 64 Mбайта будет содержать 64 или 128 банков. Увеличение числа банков уменьшает зависимость между запросами к памяти, что положительно сказывается на производительности.

Для обеспечения малого энергопотребления в микросхемах RDRAM предусмотрено четыре состояния энергопотребления: Active, Standby, Nap и PowerDown. В режиме Active устройство готово к немедленной реакции на запрос данных, но потребляет наибольшую энергию. В отличие от прочих типов DRAM, интерфейс Direct Rambus позволяет находиться в этом режиме только той микросхеме, с которой производится обмен данными, а остальным — в режиме с меньшим энергопотреблением. По завершении обмена данными, микросхема автоматически переходит в режим Standby. Для дальнейшего уменьшения энергопотребления, часть микросхем может быть переведена с режим Nap, переход из которого в режим Active занимает меньше времени, чем из PowerDown, а энергопотребление меньше, чем в Standby.

Контроллер памяти Rambus обеспечивает поддержку протокола Direct Rambus Channel, управление шиной Rambus и преобразование ее протокола с частотой до 800 МГц в стандартный интерфейс с шинами адреса данных и управления с восьми- или шестнадцатибайтной шиной данных с рабочей частотой до 200 МГц (64 разряда) и до 100 МГц (128 разрядов).

Rambus memory module

Микросхемы RDRAM собираются в модули RIMM, внешне подобные DIMM. В каждый модуль может быть установлено до 16 микросхем RDRAM (по восемь с каждой стороны). Модули RIMM могут быть использованы на материнских платах со стандартными форм-факторами ATX, NTX и mini-NLX. На плате могут быть установлены до трех разъемов RIMM. Модули могут иметь объем 32, 64, 128, 256, 512 Mбайт и 1 Гбайт.

Ведущие поставщики наборов микросхем уже объявили о поддержке RDRAM.

Данная статья была опубликована в журнале MEGAplus #6(22) за 1998 год.
Статья подготовлена компанией SLIM+




Дополнительно

ОПРОС на iXBT.com

Есть ли у Вас внешний аккумулятор (PowerBank)?

Нашли ошибку на сайте? Выделите текст и нажмите Shift+Enter

Код для блога бета

Выделите HTML-код в поле, скопируйте его в буфер и вставьте в свой блог.