DDR2 и DDR3
По материалам наших ежегодных iТогов по десктопной оперативной памяти (см., например, материалы за 2004, 2005 и 2006 год) легко заметить, что наиболее приоритетным направлением развития технологии оперативной памяти DDR SDRAM уже который год подряд является дальнейшее увеличение ее пропускной способности (напрямую зависящей от ее тактовой частоты) и снижение задержек. На втором месте по важности, пожалуй, располагается уменьшение ее энергопотребления и, наконец, увеличение емкости отдельных компонентов (микросхем) и модулей памяти в целом. По-видимому, реализация первого направления считается наиболее важной, в связи с чем происходит практически непрерывно (в рамках одной и той же ступени эволюции технологии — например, плавный переход от DDR2-400 к DDR2-800 и выше), тогда как реализация остальных из перечисленных выше задач, как правило, требует определенного эволюционного скачка в технологическом развитии (например, перехода от технологии DDR к технологии DDR2). Действительно, простое увеличение частоты шины памяти сказывается на ее энергопотреблении явно не положительным образом, поэтому для решения задачи снижения энергопотребления требуются иные подходы. Более того, ситуация, как правило, осложняется тем, что решение этой задачи несколько противоречит «генеральной линии» развития технологий памяти, которая, напомним, заключается в достижении все больших пропускных способностей (частот) и все меньших задержек. И правда, хорошо известно, что первые варианты памяти типа DDR2 ощутимо проигрывали их «равночастотным» аналогам типа DDR по задержкам. Тем не менее, неограниченный рост частот (и снижение задержек) в рамках одной и той же технологии памяти невозможен — он ограничен вполне определенными физическими причинами (прежде всего, тепловыделением), поэтому «эволюционные скачки» в развитии технологий памяти все же необходимы, и обусловлены они не только заботой о меньшем потреблении энергии.
Так обстояло дело при первом эволюционном скачке в развитии технологий памяти DDR SDRAM — переходе от DDR к DDR2. Первые образцы DDR функционировали на частоте всего 100 МГц (и имели рейтинг DDR-200), затем частота постепенно увеличилась до 200 МГц (DDR-400). Происходило одновременное уменьшение задержек — первоначальные схемы таймингов вида 3-3-3-8 сменились весьма низкими схемами вида 2-2-2-5. Затем появились и более высокочастотные модули памяти DDR (вплоть до 300 МГц, т.е. DDR-600), однако официально они так и не были приняты стандартом JEDEC. Увеличение частоты модулей памяти, либо снижение задержек требовало повышения питающего напряжения со стандартного уровня 2.5 В до значений порядка 2.85 В, проблема избыточного тепловыделения решалась, как правило, применением обычных теплоотводов.
Когда дальнейшее увеличение тактовых частот памяти DDR оказалось практически невозможным, на рынке десктопной оперативной памяти появилось новое, второе поколение памяти DDR SDRAM — память DDR2, которая постепенно начала доказывать свою конкурентоспособность и медленно, но верно вытеснять «старое» поколение памяти DDR. Первоначальные варианты DDR2 были представлены частотами 200 МГц (DDR2-400) и 266 МГц (DDR2-533) — так сказать, DDR2 начала свое развитие там, где (официально) закончила свое развитие DDR. Более того, первоначальный стандарт DDR2 предусматривал гораздо более высокочастотные варианты, по сравнению с привычной DDR — 333-МГц модули типа DDR2-667 и 400-МГц вариант DDR2-800. При этом микросхемы DDR2 были основаны на новом технологическом процессе, позволяющем использовать питающее напряжение всего 1.8 В (что явилось одним из факторов снижения их энергопотребления) и достигать более высоких емкостей компонентов и, следовательно, модулей памяти.
Благодаря чему удалось достичь (сначала — в теории, а затем — и на практике) больших тактовых частот (а следовательно, и пропускных способностей) памяти DDR2 при одновременном уменьшении ее энергопотребления, по сравнению с DDR? Были ли при этом у DDR2 только одни преимущества перед DDR, или имелись и недостатки? Чтобы ответить на эти вопросы, позволим себе сделать краткий экскурс в теорию. Для начала, рассмотрим предельно упрощенную схему функционирования памяти типа DDR.
Передача данных от микросхем памяти модуля к контроллеру памяти по внешней шине данных осуществляется по обоим полупериодам синхросигнала (восходящему — «фронту», и нисходящему — «срезу»). В этом и заключается суть технологии «Double Data Rate», именно поэтому «рейтинг», или «эффективная» частота памяти DDR всегда является удвоенной (например, DDR-400 при 200-МГц частоте внешней шины данных). Итак, «эффективная» частота внешней шины данных памяти DDR-400 составляет 400 МГц, тогда как ее истинная частота, или частота буферов ввода-вывода, составляет 200 МГц. В устройствах памяти первого поколения DDR внутренняя частота функционирования микросхем памяти приравнена к истинной частоте внешней шины (частоте буферов ввода-вывода) и составляет 200 МГц для рассматриваемой микросхемы памяти DDR-400. При этом совершенно очевидно, что для того, чтобы передавать по 1 биту данных за такт (по каждой линии данных) по внешней шине с «эффективной» частотой 400 МГц, за один такт внутренней 200-МГц шины данных необходимо передать 2 бита данных. Иными словами, можно сказать, что при прочих равных условиях внутренняя шина данных должна быть вдвое шире по сравнению с внешней шиной данных. Такая схема доступа к данным называется схемой «2n-предвыборки» (2n-prefetch).
Наиболее естественным путем решения проблемы достижения более высоких тактовых частот при переходе от DDR к DDR2 явилось снижение тактовой частоты внутренней шины данных вдвое по отношению к реальной тактовой частоте внешней шины данных (частоте буферов ввода-вывода). Так, в рассматриваемом примере микросхем памяти DDR2-800 (рис. 2) частота буферов ввода-вывода составляет 400 МГц, а «эффективная» частота внешней шины данных — 800 МГц (поскольку сущность технологии Double Data Rate остается в силе — данные по-прежнему передаются как по восходящему, так и по нисходящему полупериоду синхросигнала). При этом частота внутренней шины данных составляет всего 200 МГц, поэтому для передачи 1 бита (по каждой линии данных) за такт внешней шины данных с эффективной частотой 800 МГц на каждом такте 200-МГц внутренней шины данных требуется передача уже 4 бит данных. Иными словами, внутренняя шина данных микросхемы памяти DDR2 должна быть в 4 раза шире по сравнению с ее внешней шиной. Такая схема доступа к данным, реализованная в DDR2, называется схемой «4n-предвыборки» (4n-prefetch). Ее преимущества перед схемой 2n-prefetch, реализованной в DDR, очевидны. С одной стороны, для достижения равной пиковой пропускной способности можно использовать вдвое меньшую внутреннюю частоту микросхем памяти (200 МГц для DDR-400 и всего 100 МГц для DDR2-400, что позволяет значительно снизить энергопотребление). С другой стороны, при равной внутренней частоте функционирования микросхем DDR и DDR2 (200 МГц как для DDR-400, так и DDR2-800) последние будут характеризоваться вдвое большей теоретической пропускной способностью. Но очевидны и недостатки — функционирование микросхем DDR2 на вдвое меньшей частоте (в условиях равенства теоретической пропускной способности устройств DDR и DDR2) и использование более сложной схемы преобразования «4-1» приводит к ощутимому возрастанию задержек, что и наблюдалось на практике в ходе исследования первых образцов модулей памяти DDR2.
Естественно, применение схемы 4n-prefetch — не единственное нововведение в DDR2, однако оно является наиболее значимым отличием от предыдущего поколения памяти DDR, поэтому достаточно для нашего краткого рассмотрения.
Дальнейшее развитие технологии памяти DDR2 явилось существенно аналогичным развитию ее предыдущего поколения, памяти DDR. А именно, были достигнуты частоты в 333 и 400 МГц (т.е. реализованы официальные стандарты DDR2-667 и DDR2-800). Были значительно снижены задержки, даже официально появилась новая версия стандарта JEDEC (JESD79-2B), допускающая снижение схемы таймингов от 4-4-4 до 3-3-3 — для DDR2-533, от 5-5-5 до 4-4-4 — для DDR2-667, от 6-6-6 до 5-5-5 и даже 4-4-4 — для DDR2-800. Конечно же, следом появились и «нестандартные» разновидности DDR2, по своей частоте выходящие далеко за пределы спецификации JEDEC — вплоть до 625 МГц («DDR2-1250») при схеме таймингов 5-5-5, либо «стандартные» DDR2-800, но с экстремально низкими схемами таймингов вроде 3-3-3. Как и прежде, для достижения таких рекордов потребовалось значительное поднятие питающего напряжения модулей со стандартного уровня 1.8 В до экстремально высоких уровней порядка 2.4 В (что совсем немного уступает стандартному значению предыдущего поколения памяти DDR — 2.5 В). Разумеется, это потребовало применения более «продвинутых» способов отвода тепла от микросхем памяти — как оригинальных, патентованных фирменных конструкций теплоотводов, так и применения внешнего активного охлаждения.
Тем не менее, как и в случае с прошлым поколением памяти DDR, на сегодняшний день предел технологии памяти DDR2 (по частоте, задержкам и значительно возросшему тепловыделению вследствие значительного увеличения питающего напряжения) практически достигнут. Поэтому уже сегодня вполне закономерно ожидать очередной «эволюционный скачок» технологии памяти DDR SDRAM — переход от памяти стандарта DDR2 к новому стандарту DDR3.
Нетрудно догадаться, что основной принцип, лежащий в основе перехода от DDR2 к DDR3, в точности повторяет рассмотренную выше идею, заложенную при переходе от DDR к DDR2. А именно, DDR3 — это «все та же DDR SDRAM», т.е. передача данных по-прежнему осуществляется по обоим полупериодам синхросигнала на удвоенной «эффективной» частоте относительно собственной частоты шины памяти. Только рейтинги производительности выросли в 2 раза, по сравнению с DDR2 — типичными скоростными категориями памяти нового стандарта DDR3 будут являться разновидности от DDR3-800 до DDR3-1600 (а возможно, и выше). Очередное увеличение теоретической пропускной способности компонентов памяти в 2 раза вновь связано со снижением их внутренней частоты функционирования во столько же раз. Поэтому отныне, для достижения темпа передачи данных со скоростью 1 бит/такт по каждой линии внешней шины данных с «эффективной» частотой в 1600 МГц (как в примере, рассмотренном на рис. 3) используемые 200-МГц микросхемы должны передавать по 8 бит данных за каждый «свой» такт. Т.е. ширина внутренней шины данных микросхем памяти окажется уже в 8 раз больше по сравнению с шириной их внешней шины. Очевидно, такая схема передачи данных с рассмотренным преобразованием типа «8-1» будет называться схемой «8n-предвыборки» (8n-prefetch). Преимущества при переходе от DDR2 к DDR3 будут теми же, что и при состоявшемся ранее переходе от DDR к DDR2: с одной стороны, это снижение энергопотребления компонентов в условиях равенства их пиковой пропускной способности (DDR3-800 против DDR2-800), с другой стороны — возможность дальнейшего наращивания тактовой частоты и теоретической пропускной способности при сохранении прежнего уровня «внутренней» частоты компонентов (DDR3-1600 против DDR2-800). Теми же будут и недостатки — дальнейший разрыв между «внутренней» и «внешней» частотой шин компонентов памяти будет приводить к еще большим задержкам. Резонно ожидать, что относительное увеличение последних, при переходе от DDR2 к равночастотной DDR3, будет примерно таким же, как и при переходе от DDR к равночастотной DDR2.
Что ж, перейдем к несколько более детальному рассмотрению нового поколения микросхем и модулей памяти DDR3, грядущих на смену нынешней DDR2.
DDR3: некоторые технические сведения
Стандарт DDR3 на сегодняшний день еще не принят JEDEC, его принятие ожидается ближе к середине текущего года (предположительно, он будет носить имя JESD79-3). Поэтому представленная ниже информация о микросхемах и модулях памяти DDR3 пока что носит предварительный характер.
Начнем с микросхем памяти DDR3, первые прототипы которых были объявлены еще в 2005 году. Доступные сегодня образцы микросхем DDR3 основаны на 90-нм технологическом процессе и характеризуются уровнем питающего напряжения 1.5 В, что само по себе вносит примерно 30% вклад в снижение мощности, рассеиваемой этими микросхемами памяти по сравнению с микросхемами DDR2 (имеющими стандартное питающее напряжение 1.8 В). Полное снижение энергопотребления по сравнению с равночастотной DDR2 достигает примерно 40%, что особенно важно для мобильных систем. Емкости компонентов, предусмотренные предварительными спецификациями JEDEC, варьируются от 512 Мбит до 8 Гбит, тогда как типичные выпускаемые на сегодня микросхемы имеют емкость от 1 до 4 Гбит. Теоретическая пропускная способность микросхем DDR3 вдвое выше по сравнению с DDR2 благодаря использованию рассмотренной выше схемы 8n-prefetch (против 4n-prefetch в DDR2). Количество логических банков в микросхемах DDR3 также увеличено вдвое по сравнению с типичным значением для DDR2 (4 банка) и составляет 8 банков, что теоретически позволяет увеличить «параллелизм» при обращении к данным по схеме чередования логических банков и скрыть задержки, связанные с обращением к одной и той же строке памяти (tRP). Микросхемы DDR3 корпусируются в FBGA-упаковку, обладающую рядом улучшений по сравнению с DDR2, а именно (рис. 4):
- Большим количеством контактов питания и «земли»;
- Усовершенствованным распределением питающих и сигнальных контактов, позволяющим достичь лучшее качество электрического сигнала (необходимое для более устойчивого функционирования при высоких частотах);
- Полным «заселением» массива, что увеличивает механическую прочность компонента.
Перейдем к рассмотрению модулей памяти DDR3. Как и модули памяти DDR2, они выпускаются в виде 240-контактной печатной платы (по 120 контактов с каждой стороны модуля), однако не являются электрически совместимыми с последними, и по этой причине имеют иное расположение «ключа».
Внешний вид типичных модулей памяти DDR3 (сверху) и DDR2 (снизу)
Внешний вид типичных разъёмов на системной плате (комбо) для установки модулей памяти DDR3 (голубой/розовый) и DDR2 (зелёный/оранжевый)
Отличительной особенностью схемотехнического дизайна модулей памяти DDR3 является применение «сквозной», или «пролетной» (fly-by) архитектуры передачи адресов и команд, а также сигналов управления и тактовой частоты отдельным микросхемам модуля памяти с применением внешнего терминирования сигналов (резистором, расположенным на модуле памяти). Схематически эта архитектура представлена на рис. 6. Она позволяет добиться увеличения качества передачи сигналов, что необходимо при функционировании компонентов при высоких частотах, типичных для памяти DDR3 и не требуется для компонентов памяти стандарта DDR2.
«Пролетная» (fly-by) архитектура передачи сигналов в модулях памяти DDR3
Различие между способом подачи адресов и команд, сигналов управления и тактовой частоты в модулях памяти DDR2 и DDR3 (на примере модулей, физический банк которых составлен из 8 микросхем разрядностью x8) представлено на рис. 7. В модулях памяти DDR2 подача адресов и команд осуществляется параллельно на все микросхемы модуля, в связи с чем, например, при считывании данных, все восемь 8-битных элементов данных окажутся доступными в один и тот же момент времени (после подачи соответствующих команд и истечения соответствующих задержек) и контроллер памяти сможет одновременно прочитать все 64 бита данных. В то же время, в модулях памяти DDR3 вследствие применения «пролетной» архитектуры подачи адресов и команд каждая из микросхем модуля получает команды и адреса с определенным отставанием относительно предыдущей микросхемы, поэтому элементы данных, соответствующие определенной микросхеме, также окажутся доступными с некоторым отставанием относительно элементов данных, соответствующих предыдущей микросхеме в ряду, составляющем физический банк модуля памяти. В связи с этим, с целью минимизации задержек, в модулях памяти DDR3, по сравнению с модулями DDR2, реализован несколько иной подход ко взаимодействию контроллера памяти с шиной данных модуля памяти. Он называется «регулировкой уровня чтения/записи» (read/write leveling) и позволяет контроллеру памяти использовать определенное смещение по времени при приеме/передачи данных, соответствующее «запаздыванию» поступления адресов и команд (а следовательно, и данных) в определенную микросхему модуля. Этим достигается одновременность считывания (записи) данных из микросхем (в микросхемы) модуля памяти.
Предположительно, модули памяти DDR3 будут предлагаться в вариантах от DDR3-800 до DDR3-1600 включительно, далее не исключено появление и более высокоскоростных модулей категории DDR3-1866. Рейтинг производительности модулей памяти DDR3 имеет значение вида «PC3-X», где X означает пропускную способность модуля в одноканальном режиме, выраженную в МБ/с (если быть точным — млн. байт/с). Поскольку модули памяти DDR3 имеют ту же разрядность, что и модули памяти DDR2 — 64 бита, численные значения рейтингов равночастотных модулей памяти DDR2 и DDR3 совпадают (например, PC2-6400 для DDR2-800 и PC3-6400 для DDR3-800).
Типичные схемы таймингов, предполагаемые в настоящее время для модулей памяти DDR3, выглядят весьма «внушительно» (например, 9-9-9 для DDR3-1600), однако не стоит забывать, что столь большие относительные значения таймингов, будучи переведенными в абсолютные значения (в наносекундах), учитывая все меньшее время цикла (обратно пропорциональное частоте шины памяти), становятся вполне приемлемыми. Так, например, задержка сигнала CAS# (tCL) для модулей памяти DDR3-800 со схемой таймингов 6-6-6 составляет 15 нс, что, конечно, несколько великовато по сравнению с «типичными» DDR2-800 со схемой таймингов 5-5-5, для которых tCL составляет 12.5 нс. В то же время, память типа DDR3-1600 со схемой таймингов 9-9-9 уже характеризуются величиной задержки tCL всего 11.25 нс, что находится на уровне DDR2-533 с достаточно низкими задержками (схемой таймингов 3-3-3). Таким образом, даже при предполагаемом на данный момент «раскладе» схем таймингов модулей памяти DDR3 можно ожидать постепенное снижение реально наблюдаемых задержек при доступе в память, вплоть до значений, типичных для нынешнего поколения модулей памяти DDR2. К тому же, не стоит забывать и о дальнейшем снижении задержек (и снижении таймингов) по мере развития технологии.
Заключение
Результаты тестирования инженерных образцов модулей памяти DDR3 в сопоставлении с равночастотными модулями памяти DDR2 в идентичных условиях тестирования позволяют нам заключить, что память нового, еще не принятого окончательно стандарта DDR3 уже на сегодняшний день может оправдывать свое существование. Ее скоростные характеристики как минимум не уступают, а в ряде случаев и несколько превосходят характеристики аналогичных модулей памяти текущего стандарта DDR2. Сравнительно небольшим оказалось и относительное возрастание задержек (13-16%) при переходе от DDR2 к DDR3 при прочих равных условиях. А если учесть, что развитие технологий памяти в основном идет по пути одновременного роста тактовых частот и снижения задержек, будущее поколение DDR3 вполне сможет сократить указанный разрыв, а то и вовсе выигрывать по задержкам у DDR2 (уже сегодня практически прекратившей свое дальнейшее развитие).
В то же время, нельзя не заметить, что пока что новую память DDR3 ждет примерно та же участь, что и нынешнее поколение высокоскоростной DDR2 (DDR2-800 и выше). А именно — серьезное затруднение раскрытия гигантского скоростного потенциала самой оперативной памяти, которая давно перестала быть «узким местом» системы. Так, например, на участвующей в нашем сегодняшнем исследовании платформе Intel Core 2 Duo / Intel P35 приличного раскрытия потенциала памяти DDR2-1066 или DDR3-1066 можно ожидать лишь в одноканальном режиме работы последней (как мы показали, при этом реальная пропускная способность памяти достигает примерно 83% от теоретического максимума), который, согласитесь, не представляет интереса с практической точки зрения. Применение же двухканального режима работы памяти приводит к серьезному ограничению ее ПСП со стороны системной шины, вдвое более узкой по своей пропускной способности.