Радж МАХАДЖАН (Raj MAHAJAN)
[email protected] Перевод: Галит ГОРОДЕЦКАЯ
Принципы проектирования интерфейсов памяти,
лежащие в основе перехода от DDR2 к DDR3
Статья посвящена рассмотрению сравнительных характеристик стандартов DDR. Самые значительные отличия находятся на физическом уровне интерфейса памяти. Эти отличия будут показаны на примере проектирования высокоскоростного интерфейса процессора. Мы рассмотрим такие примеры проектирования, где важна обратная совместимость интерфейса DDR3 с интерфейсом DDR2. На конкретном примере будет продемонстрировано, как с помощью несложных изменений можно добиться значительного улучшения характеристик системы [1].
Модуль памяти UDIMM
Выборка/адрес/управление
Рис. 1. Архитектура модуля памяти DDR2
Введение
Недавно появившийся стандарт памяти DDR3 значительно расширил диапазон характеристик динамической памяти DDR, при этом он совместим с существующим стандартом DDR2. Чтобы извлечь максимум преимуществ от нового стандарта DDR3, одновременно используя, насколько это возможно, предыдущий интерфейс памяти DDR2, важно понять общие черты и различия между новым и существующим стандартами памяти. В статье проведен детальный анализ ключевых моментов, связанных с переходом от интерфейса памяти DDR2 к интерфейсу DDR3.
Сравнительные характеристики стандартов памяти DDR2 и DDR3
С появлением стандарта DDR3 значительно расширяются возможности существующего стандарта DDR2, поэтому сегодня системный дизайнер располагает широкой номенклатурой микросхем памяти. Прежде чем приступить к детальному сравнительному анализу обоих стандартов, рассмотрим основные характеристики типового модуля памяти DDR2 и его контроллера. Эти характеристики будут базовыми при дальнейшем сравнении двух стандартов.
Описание памяти DDR2
Типовой блок микросхем памяти DDR2 обычно доступен в виде модулей DIMM (Dual In-Line Memory Module). Типовая архитектура шины DDR2 DIMM показана на рис. 1. Сигналы управления и адресная шина DIMM подключены параллельно (звездой) ко всем микросхемам памяти. Такая архитектура позволяет уравновешивать временные задержки
в каждом элементе памяти, но может вносить дополнительные перекосы из-за значительного числа односторонне терминированных печатных проводников.
Контроллер памяти DDR2 обычно встраивается в микросхему, управляющую модулем DIMM. На рис. 2 изображена блок-схема стандартного контроллера памяти DDR2.
Модуль памяти UDIMM
1
Выборка/адрес/управление
Рис. 3. Сквозная топология небуферизованной памяти DDR3 в модуле DIMM
Физический уровень интерфейса памяти предназначен для обеспечения связи между DDR DRAM и остальной системой и контролирует время выборки и пересылки данных в соответствии с тактовыми импульсами DRAM. Данные, считанные из динамической памяти DRAM, могут проходить верификацию в модуле коррекции ошибок ECC, поступая затем в FIFO-буфер, где они ожидают команд «запись» или «чтение - модификация - запись». Если модуль ЕСС активизирован, то биты проверки вычисляются до того, как произойдет запись данных в память при помощи второго, необязательного модуля ЕСС.
Программа-планировщик располагает в порядке очередности список текущих команд, находит команду с наивысшим приоритетом срочности и посылает ее в DRAM, где данные считываются или записываются в память в соответствии с приоритетом доступа. Главная цель планировщика — максимально увеличить пропускную способность системы путем максимально быстрой реализации команды с наивысшим приоритетом.
Команды по мере поступления накачиваются в FIFO-буфер, где они находятся в состоянии ожидания. Если команда имеет наивысший приоритет (прямое чтение), то она поступает прямо в память, минуя FIFO-буфер. Команды с обычным приоритетом поступают в FIFO-буфер чтения, где находятся в состоянии ожидания, или в FIFO-буфер маркера чтения, где ожидают завершения выполнения команды.
Описание памяти DDR3
Основное назначение стандарта памяти DDR3 заключается в том, чтобы максимально увеличить скорость обмена информацией с модулем памяти, предоставив разработчику схем удобные средства управления таким обменом. Это стало возможно благодаря ключевым изменениям в физическом уровне (PHY) интерфейса DDR3. Одна из таких инноваций — применение специальных методов, например регулировок синхронизации чтения/записи, позволяющих приспособиться к существующим задержкам между элементами памяти DDR3.
Особенностью схемотехнического дизайна модулей памяти DDR3 является применение «сквозной» (fly-by) архитектуры, либо в модульном исполнении (например, в модулях DIMM), либо на обычной печатной плате. При такой структуре шин DDR3 (рис. 3) каждая из микросхем модуля получает команды и адреса от контроллера в последовательной форме. В этом примере сигналы с интерфейса DDR3 PHY поступают на середину модуля, и каждая из микросхем модуля получает команды и адреса от контроллера последовательно. Такая схема позволяет сократить количество печатных проводников, терминированных с одной стороны, и их длину. Память DDR3 обладает полной терминацией всех сигналов, что значительно улучшает ха-
рактеристики сигнала по сравнению с традиционной топологией DDR2.
Специфика этого подхода состоит в том, что задержки выходных сигналов каждой из микросхем будут незначительно отличаться в зависимости от местоположения этой микросхемы в топологии схемы. Такие отличия в задержках должны быть скомпенсированы, что достигается применением упомянутой методики регулировки синхронизации, впервые примененной в спецификации стандарта DDR3. При этом для регулировки синхронизации чтения и записи используются различные алгоритмы.
Регулировка синхронизации записи
В процессе регулировки синхронизации записи контроллер памяти должен скомпенсировать дополнительные перекосы, обусловленные временем «пролета», вносимого «сквозной» топологией, привязав их к синхросигналам. Особенно сложно при этом соблюсти требования по времени для сигналов tDQSS, tDSS и tDSH. Эти временны е параметры можно, тем не менее, поддержать, введя некоторый программируемый элемент задержки в DQS, имеющий достаточное разрешение и позволяющий вносить необходимые задержки для уравновешивания дополнительно вносимых перекосов. Необходимая длительность сигналов для такой компенсации показана на рис. 4.
Сигналы СК и DQS приходят от контроллера к модулю памяти с определенными задержками, как показано на рисунке
стрелками 1 и 2. Величина задержки каждой микросхемы памяти в модуле может быть различной и нуждается в регулировке на уровне чипа или побайтово, если шина данных чипа шире одного байта. На диаграмме приведен лишь один пример элемента памяти. Контроллер памяти циклично задерживает сигнал DQS на один шаг за такт, пока не будет обнаружен переход с «лог. 0» на «лог. 1» в этом сигнале, совпадающий с моментом получения синхросигнала СК. В этот момент сигналы DQS и ^ синхронизируются, что позволяет надежно считать данные с шины DQ. Указанный алгоритм встроен в контроллер и выполняется автоматически, без участия разработчика схемы.
Регулировка синхронизации чтения
В процессе регулировки синхронизации чтения контроллер памяти подстраивается под задержки, вносимые «сквозной» топологией, которые меняют тайминг цикла чтения. Регулировка производится с помощью дополнительного регистра общего назначения MPR, встроенного в микросхемы памяти DDR3. В регистр MPR по специальной команде контроллера могут загружаться заранее определенные данные, которые в дальнейшем используются для калибровки тайминга.
Как показано на рис. 5, выборка данных из регистра MPR задается установкой одного бита в другом регистре памяти (EMRS3, бит А2). В зависимости от состояния этого бита чтение данных происходит из массива микросхемы памяти или из регистра
Рис. 4. Тайминг регулировки синхронизации записи
Массив микросхемы памяти
Переключатель
Регистр
общего
назначения
Контакты DQ, DM, DQS, /DQS
Рис. 5. Регулировка синхронизации чтения при помощи MPR
Таблица. Сравнительные характеристики микросхем памяти DDR, DDR2 и DDR3
Стандарт DDR DDR2 DDR3
Производительность, Мбит/с 200-400 400-800 800-1600
Тип интерфейса SSTL_2 SSTL_18 SSTL_15
Синхронизация Двунаправленный DQS (по умолчанию — одиночный) Двунаправленный DQS (по умолчанию — одиночный, опционно — дифференциальный) Двунаправленный DQS (по умолчанию — дифференциальный)
Длина пакета(BL) BL = 2, 4, 8 (2-битный буфер предварительной выборки) BL = 4, 8 (4-битный буфер) BL = 4, 8 (8-битный буфер)
CL/tRCD/tRP 15 нскаждый 15 нскаждый 12 нс каждый
Сброс (Reset) Нет Нет Есть
ODT Нет Есть Есть
Калибровка драйвера Нет Наружная Встроенная с контактом ZQ
Регулировка синхронизации Нет Нет Есть
MPR. Содержимое MPR соответствует требуемым сигналам в цепях DQ, DM, DQS и /DQS микросхемы памяти. Такая методика позволяет контроллеру памяти калибровать тайминг реальных временных задержек, обусловленных «сквозной» топологией DDR3.
Другие характерные особенности DDR3
Динамическая память DDR3 имеет дополнительные возможности для улучшения быстродействия и надежности, такие как контакт асинхронного сброса Reset, 8-разрядный буфер предварительной выборки и прецизионные внешние резисторы ZQ в цепях калибровки. Не применявшийся ранее в микросхемах памяти DDR2 контакт Reset используется для полной очистки содержимого микросхемы памяти DDR3 вместо индивидуальной очистки каждого регистра или выключения питания микросхемы. Работа с контактом сброса экономит время и усилия, переводя микросхему в заведомо известное состояние. 8-разрядный буфер предварительной выборки работает с длиной пакета (Burst Length, BL), равной 4 или 8, что позволяет увеличить скорость обмена при последовательном доступе. Новый способ калибровки с помощью ZQ предусматривает несколько большее время калибровки микросхемы памяти в начале ее применения, но зато существенно укорачивает время периодических калибровок. В таблице представлены сравнительные характеристики микросхем памяти DDR, DDR2 и DDR3.
Основныетребования к совместимости платформ: пример проектирования
Покажем на примере конкретной платформы с памятью DDR2, какие изменения должны быть в ней выполнены для обеспечения ее совместимости с памятью DDR3. Предположим, имеется память DDR2 с интерфейсом DIMM, который мы хотим использовать также с памятью DDR3. Скорость является важнейшим требованием для большинства областей применения, поэтому правильным было бы проектировать контроллер в соответствии с архитектурой DDR2, но с возможностью последующего перехода к DDR3. Схема печатной платы, модуля и контроллера памяти должны быть, на-
сколько это возможно, совместимы с обоими типами микросхем памяти для перехода от DDR2 к DDR3.
Аспекты совместимости на печатной плате
Наиболее значительной проблемой перехода от DDR2 к DDR3 является то, что их DIMM-модули имеют разные размеры и различное распределение контактов. Это означает, что невозможно просто вставить в разъем DIMM один модуль вместо другого. Лучшее, что можно придумать, это обеспечить возможность доработки платформ с учетом дополнительных характеристик DDR3. Пожалуй, наиболее важные моменты, которые следует учесть, — это наличие контакта Reset и двунаправленного строба данных DQS.
Строб данных DQS
В памяти типа DDR3 строб DQS определен как дифференциальный, тогда как для памяти типа DDR2 он может быть как одиночным (single ended), так и дифференциальным. Очевидно, что, если в DDR2 установлена дифференциальная версия строба, переход к DDR3 будет проще. Для этой цели при распределении контактов контроллера могут потребоваться дополнительные контакты, но важная задача обеспечения совместимости снизу вверх оправдывает подобные затраты. Кроме того, структура памяти DDR2 станет при этом более надежной.
В памяти типа DDR3 каждая микросхема памяти посылает свой строб DQS для пересчета дополнительной задержки, обусловленной «сквозной» топологией. По этой причине число сигналов DQS в схеме с памятью DDR3 больше, чем в схеме с памятью DDR2. Следует подчеркнуть, что если добавление дополнительных контактов в схему не столь критично, то введение в структуру управления памятью типа DDR2 дополнительных сигналов DQS весьма способствует переходу к структуре управления типа DDR3.
Сброс
Контакт сброса Reset, имеющийся в DDR3, можно без труда добавить в схему с памятью DDR2, где он не будет выполнять никаких функций до тех пор, пока не произойдет переход к памяти типа DDR3.
Контроллер памяти
Некоторые требования перехода от платформы DDR2 к DDR3 касаются также контроллера памяти, а соблюдение этих требований значительно упрощает процесс перехода. Наиболее важными из этих аспектов являются выходные драйверы, DLL для поддержки чтения и регулировка синхронизации чтения.
Выходные драйверы
Стандарт DDR2 предусматривает применение контактов ввода/вывода (КВВ) SSTL на уровне напряжения 1,8 В, тогда как для микросхем памяти DDR3 предусматривается применение КВВ SSTL на уровне напряжения 1,5 В. Возможно, будет сложно найти буфер для КВВ, поддерживающий оба стандарта. Не исключено, что потребуется использовать FPGA-программируемый буфер КВВ. Необходимость применения того или иного буфера КВВ при переходе от одной платформы к другой может обусловить даже необходимость в разработке новой версии микросхемы контроллера памяти, что, тем не менее, может оказаться экономически целесообразно.
DLL для поддержки чтения
Стандартные контроллеры памяти DDR2 могут нормально функционировать с одним и тем же DLL для нескольких каналов выдачи данных. В структурах DDR3, благодаря применению «сквозной» топологии, обычно используется один DLL примерно на каждые 8 разрядов. Отсюда следует, что для обеспечения необходимых ресурсов при переходе к структурам DDR3 могут потребоваться дополнительные DLL. Цифровые DLL могут быть весьма компактно расположены на кристалле чипа, что заметно уменьшает накладные расходы, связанные с переходом к структурам DDR3.
Регулировка синхронизации чтения В стандартных контроллерах DDR2 обычно имеется одна лишняя пара КВВ, используемая для калибровки тайминга чтения контроллером. Эти контакты служат для настройки входных данных в соответствии со стробом. В других типах контроллеров используют специальные последовательности настройки чтения и записи и подстройки стробов, что позволяет оптимизировать моменты выборки данных из памяти. В DDR3
138
проектирование І схемотехника
для этой цели используется регулировка синхронизации чтения, поэтому нет никакой нужды в дополнительных контактах. Если имеется возможность спроектировать контроллер, имеющий функцию регулировки синхронизации чтения, даже при ее очевидной бесполезности для структур DDR2, эта возможность будет очень полезна при переходе к структурам DDR3.
Заключение
Производительность памяти типа DDR3 значительно превосходит возможности памяти DDR2. Новые ключевые особенности DDR3, которыми обладает контроллер этого типа памяти, приведут к улучшению характеристик
целостности сигнала в структурах DDR3, так что повышение производительности может быть достигнуто без чрезмерных затрат. При соблюдении некоторых принципов проектирования схем с микросхемами памяти DDR2, описанных выше, такие схемы могут быть достаточно просто совместимы и со структурами DDR3 в следующей версии дизайна схемы.
В статье рассмотрены принципиальные различия между стандартами памяти типов DDR2 и DDR3 и показаны некоторые ключевые моменты, на которые необходимо обратить внимание для упрощения перехода от платформы DDR2 к DDR3. ■
Литература
1. www.memcoreinc.com