Аппаратные интерфейсы ПК

         

Память Rambus DRAM


Память RDRAM (Rambus DRAM) имеет синхронный интерфейс, существенным образом отличающийся от вышеописанного. Запоминающее ядро этой памяти по­строено на все тех же КМОП-ячейках динамической памяти, но пути повышения производительности интерфейса совершенно иные. Подсистема памяти (ОЗУ) RDRAM состоит из контроллера памяти, канала и собственно микросхем памяти. По сравнению с DDR SDRAM, при той же производительности RDRAM имеет более компактный интерфейс и большую масштабируемость. Разрядность ОЗУ RDRAM (16 байт) не зависит от числа установленных микросхем, а число банков,

246

Глава 7. Интерфейсы электронной памяти

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

Запоминающее ядро микросхем имеет многобанковую организацию — 64-мегабит-ные микросхемы имеют 8 банков, 256-мегабитные — 32 банка. Каждый банк име­ет собственные усилители считывания, благодаря чему в микросхеме может быть активировано несколько банков. Для сокращения числа усилителей применяют и их разделение (совместное использование) парой смежных байт, что накладывает ограничения на их совместную активацию (до активации банка его смежник дол­жен быть заряжен). Разрядность ядра 16 байт — 128 или 144 (с контрольными разрядами) бит. Ядро работает на 1/8 частоты канала, взаимодействие с ядром осуществляется по внутренним сигналам RAS и CAS. В современных RDRAM при­меняются ячейки памяти с временем доступа 40-53 нс.

Канал RDRAM (Rambus Channel) представляет собой последовательно-парал­лельную шину. Такая организация позволяет ограничить количество линий интерфейса, что, в свою очередь, позволяет упорядочить разводку проводников ради повышения частоты передачи сигналов. Небольшое количество сигналов дает возможность выровнять задержки распространения сигналов по разным линиям и применить сверхбыстродействующие интерфейсные схемы. Тактовая частота канала — до 400 МГц, стробирование информации осуществляется по обо­им фронтам синхросигнала.
Таким образом, пропускная способность одной ли­нии составляет 800 Мбит/с. Канал состоит из 30 основных линий с интерфейсом RSL (Rambus System Logic) и 4 вспомогательных линий КМОП, используемых для инициализации микросхем. Структура канала изображена на рис. 7.8. На канале может быть установлено до 32 микросхем, все микросхемы соединяются парал­лельно. Для того чтобы контроллер мог адресоваться к определенной микросхе­ме, каждой из них назначается уникальный адрес DEVID. Нумерация микросхем (Device Enumeration) осуществляется в процессе инициализации, который выпол­няется с использованием вспомогательного последовательного КМОП-интерфейса. Этот интерфейс имеет линии синхронизации SCK, команд CMD данных SIO.



Рис. 7.8. Память Direct RDRAM

7.1. Динамическая память_____________________________________________ 247

Синхросигнал вводится в канал с «дальнего конца» и распространяется в сторону контроллера по линии СТМ (Clock To Master). По этому сигналу микросхемы па­мяти стробируют данные, посылаемые к контроллеру (при чтении). Дойдя до кон­троллера, синхросигнал выходит на линию CFM (Clock From Master) и идет по ка­налу до терминатора, установленного на конце. По этой линии синхронизируется информация, посылаемая от контроллера к микросхемам памяти. Микросхемы привязывают данные чтения к синхросигналу с помощью встроенных схем DLL (Delay Locked Loop) для автоподстройки задержки сигнала DQS относительно CLK. Физический уровень интерфейса учитывает волновой характер процессов рас­пространения сигналов в канале. Интерфейс RSL имеет малый размах сигна­ла: уровню логический 0 соответствует потенциал терминаторов VTERM = 1,8 В, лог. 1 — потенциал 1,0 В. Передатчики имеют выход типа «открытый сток N-МОП» и активны при передаче логической единицы. Передатчики управляют значением генерируемого тока с тем, чтобы обеспечить требуемый уровень сигнала (падение напряжения на сопротивлении терминатора). Уровень переключения приемника Vref = 1,4 В задается делителем напряжения VteRm.




Сигнал синхронизации переда­ется в дифференциальной форме по линиям СТМ, CTMN к контроллеру и по лини­ям CFM, CFMN от него. Дифференциальная форма снижает погрешность строби-рования, вызванную смещением уровней сигналов.

Канал разделен на три независимые шины: 3-битная шина строк ROW[2:0], 5-битная шина колонок СОЦ4:0] и двухбайтная (2x9 бит) шина данных DQA[8:0] и DQB[8:0]. Дополнительный бит байта данных (имеется не у всех микросхем RDRAM) может использоваться для контроля достоверности. По каждой шине информация пере­дается пакетами, занимающими 4 такта (8 интервалов) синхронизации (10 не). Пакет содержит 8 элементов; пакет строк имеет емкость 24 бит, колонок — 40 бит и данных — 16 байт по 8 или 9 бит.

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

Транзакции чтения приведены на рис. 7.9, по виду они аналогичны транзакциям SDRAM с тем лишь отличием, что за время одного такта (SDRAM) передается пакет. Пакет ROW для второй транзакции пропущен, поскольку страницу остави­ли открытой. Транзакция чтения со стороны контроллера представляет собой петлю: он посылает пакеты ROWA и COLC, которые за некоторое время достигают целевой микросхемы и ею обрабатываются за время ТСАС. Далее микросхема от­вечает пакетом данных, которому для достижения контроллера также требуется некоторое время. Пакетам для путешествий к дальним микросхемам и от них тре­буется больше времени, чем для путешествий к ближним, и эта разница оказыва­ется большей, чем длительность периода синхронизации. Для того чтобы контрол­лер получал ответ на транзакцию чтения от любой микросхемы через одно и то же число тактов, у микросхем памяти устанавливают разную задержку данных отно­сительно пакетов COLC. Группы соседних микросхем, у которых программируется одинаковая задержка, называют доменами синхронизации. В канале может быть несколько доменов синхронизации.



248

Глава 7. Интерфейсы электронной памяти



Рис. 7.9. Транзакции чтения RDRAM

Транзакции записи (рис. 7.10) являются однонаправленными и для них проблем син­хронизации не возникает. В отличие от стандартных микросхем DRAM и SDRAM, где данные для записи передаются одновременно с адресом колонки, в RDRAM данные задерживают относительно пакета COLC на TCWD (несколько тактов). Эта задержка соответствует задержке между пакетами COLC и данными при чтении (на стороне контроллера). Задержка записи позволяет сократить вынужденные про­стои шины данных при переключении с записи на чтение (в SDRAM они равны CAS Latency и длятся 2-3 такта по 10 не). Контроллер может посылать данные для записи уже в такте, следующим за последними данными предыдущей транз­акции чтения. Однако если за записью следует чтение,- то на шине данных будет вынужденная пауза в 1-5 тактов в зависимости от длины канала. За это время последние данные записи дойдут от контроллера до самой дальней микросхемы памяти.



Рис. 7.10. Транзакции записи RDRAM

В микросхемах RDRAM применяется механизм отложенной, или буферирован­ной, записи. Данные для записи (принятый пакет D) сначала помещаются в буфер, из которого несколько позже они выгружаются в усилители считывания-записи (sens amp) по явной команде выгрузки (retire) или автоматически. Буфер записи хранит сами данные, а также номер банка и адрес столбца (но не строки). Буфери­зация записи позволяет контроллеру посылать команду записи на TRTR

раньше, чем этого требует параметр TRCD, что повышает коэффициент использования шины.

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

7.1. Динамическая память_____________________________________________ 249

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



Регенерация осуществляется по команде, адресуемой к определенному банку од­ной или всех микросхем; за период регенерации эта команда должна выдаваться для всех банков.

Память RDRAM отличается высоким энергопотреблением. Средства управления энергопотреблением отключают питание неиспользуемых узлов, однако за 100-крат­ное снижение мощности в самом экономичном режиме приходится расплачивать­ся 250-кратным увеличением времени доступа. Микросхемы RDRAM требуют периодической (раз в 100 мс) подстройки выходного тока и термокалибровки; для этих целей имеются специальные команды. Во время подстройки тока микросхе­мы способны сообщать о своем перегреве.

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

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

Инициализация памяти включает определение наличия микросхем на шине, на­значение им идентификаторов и программирование их параметров. После сброса микросхемы не имеют собственных адресов, а линии SIOO и SI01 у них соединены. В таком состоянии контроллер по шине CMD посылает широковещательную ко­манду на разъединение линий, после чего для него по линии SIO оказывается до­ступной только ближайшая микросхема канала. Ей назначается адрес (SDEVID) и дается команда на соединение линий, в результате к контроллеру подключается вторая микросхема. Она будет пронумерована очередной командой, заставляющей все доступные ненумерованные микросхемы (то есть именно ее) принять указан­ный номер. Далее замыкаются ее линии SIO, и этот процесс продолжается до самой дальней микросхемы.



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

Обязательным «фирменным» компонентом ОЗУ на RDRAM является контрол­лер памяти. В его задачу входит обслуживание микросхем памяти, установлен­ных в канале, по запросам, поступающим со стороны интерфейса системной шины компьютера. Часть контроллера, обращенная к каналу, инвариантна к архитекту-

250___________________________       Глава 7. Интерфейсы электронной памяти

ре компьютера. Именно она «знает» протокол RDRAM и является продуктом фирмы Rambus. Контроллер RDRAM встраивается в чипсеты для процессоров Р6 (например, 1820, 1840), Pentium 4 (1850 с 32-разрядным каналом, то есть уже под пары модулей RIMM) и других архитектурных линий.

В соответствии со спецификацией RDRAM в одном канале может быть до трех слотов под RIMM, и их интерфейсные линии соединяются змейкой. В слоты мо­гут устанавливаться RIMM различной емкости (сейчас они выпускаются на 64, 96, 128 и 256 Мбайт). Однако пока что фирме Intel не удалось достичь устой­чивой работы канала с тремя модулями и пришлось ограничиться двумя. Теперь в памяти появился новый элемент-пустышка Continuity module. Это как бы модуль RIMM, но без микросхем памяти, и нужен он для того, чтобы замыкать цепь кана­ла Rambus. Такая «заглушка» должна устанавливаться во все слоты канала, не занятые под модули RIMM. Если используются не все слоты, то память выгоднее ставить ближе к контроллеру — она будет работать быстрее (см. выше).


Содержание раздела