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

На птичьих правах

На этом фоне скромные DRAM и жесткие диски оказываются этакими товарами второго сорта, приобретаемыми по остаточному принципу. В большинстве случаев даже не возникает вопроса: DDR или DDR2? — выбор диктуют разъемы на системной плате. А уж на чьих микросхемах или каким производителем сделан модуль, и вовсе в 99% случаев никого не интересует. Особенно когда приобретается готовый компьютер.

Бедным производителям модулей памяти приходится, чтобы хоть как-то напомнить о себе, периодически выпускать пресс-релизы вроде «Мы сделали модуль, который можно разогнать до 1 ГГц». После чего рядовой покупатель, впечатлившись, идет и покупает компьютер со все той же 400-МГц памятью типа DDR, поскольку весь этот «экстрим» так же далек от мира ПК, как болиды «Формулы-1» от деревенского проселка. Так вот, эта статья посвящена самой обычной оперативной памяти, зачастую не слишком заслуженно оказывающейся вне поля нашего зрения.

Не погрешу против истины, если скажу, что больш?ая доля модулей, устанавливаемых в покупаемые сейчас компьютеры, все еще относится к DDR. Данный стандарт памяти в свое время рождался в довольно серьезных разборках индустрии, когда ее пыталась подмять под себя Rambus, но у нее это в общем-то не получилось, в основном из-за экономических и политических причин. В архитектурном плане предлагаемые Rambus технологии были неплохи, но торопливость и жадность сгубили дело. Впрочем, к этой компании мы еще вернемся, пока же — о DDR, а сначала вам стоит ознакомиться с врезкой «В глубинах памяти».

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

Преимущества DDR2

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

Ускорилась выборка данных, за один такт шины памяти из массива памяти в буфер между ним и шиной пересылается не 2 бита данных, как в DDR, а 4 бита. В результате буфер по-прежнему, как и в DDR, работает на частоте вдвое меньшей, чем частота системной шины (за один такт последней из буфера передается два пакета данных по обоим фронтам сигнала, поэтому он может позволить себе такую роскошь), а частоту самой микросхемы DRAM теперь оказалось возможным еще раз снизить вдвое относительно частоты буфера (микросхема отдает ему не 2, а 4 бита за такт). Если у DDR-400 микросхема и буфер работали на 200 МГц (против 400 МГц у шины памяти), то у DDR2-400 тактовая частота работы микросхемы DRAM равна всего лишь 100 МГц.

Результаты очевидны: это и увеличение выхода годных микросхем, и возможность их работы при более низком напряжении (1,8 В вместо 2,5 В у DDR), а также меньшее тепловыделение, что важно в первую очередь для ноутбуков.

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

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

К моменту появления DDR2 развитие ИТ-технологий в сочетании с более высокой производительностью этих устройств, чем у DDR, привело к изменению конструкции корпуса микросхем. Это уменьшило размеры микросхем и оптимизировало их электрические и температурные параметры (в частности, расширился диапазон рабочих температур). Число контактов модуля возросло до 240, и потому модули DDR2 физически и электрически несовместимы с разъемами для DDR.

Кумулятивный эффект от нововведений значительно продлил жизнь DDR2 — с начальных 400 МГц частоты шины памяти до нынешних 800 (PC2-6400). Естественно, производители модулей на этом не успокоились и выжали из DDR2 еще 266 МГц, загнав результирующую частоту за магическую маркетинговую черту в 1 ГГц и получив 1066 МГц (реальная частота микросхем DRAM, в соответствии с изложенным ранее, составляет 266 МГц). Однако оказалось, что дальше расти уже некуда, а производители процессоров как раз только-только решили проблемы, связанные с трудностью дальнейшего увеличения тактовых частот, причем весьма элегантно — использовав многоядерность. Значит, требования к пропускной способности шины памяти в ближайшие годы способны вырасти весьма радикально — в разы. Так что же делать?

Варианты ускорения

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

Во-вторых, можно еще больше увеличить выборку данных. Пусть, например, за один раз из микросхемы передается в буфер не 4 бита, а 8. При 200 МГц такой элемент памяти будет выдавать на-гора уже не 6,4 Гбит/с, как в DDR2, а все 12,8. Однако задержки при этом будут увеличиваться, а они зачастую важны не меньше, чем пропускная способность.

В-третьих, можно поставить буфер не только в каждую микросхему (интегрировать внутрь), но еще и на каждый модуль. Причем такой, который будет не только обрабатывать данные, полученные от микросхем памяти на самом модуле, но и транслировать контроллеру ОЗУ информацию от буферов модулей, которые располагаются за данным модулем памяти. Этот способ уже использован новой технологией FB-DIMM (Full Buffered DIMM), которая начинает применяться в серверах, чтобы заменить дорогие регистровые модули памяти. В результате повышается общая производительность подсистемы памяти, однако в ближайшие годы данный способ вряд ли найдет себе место в рядовых ПК из-за высокой стоимости (как это было и с регистровыми модулями).

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

Наиболее очевидный выход — это, конечно, DDR3. Не утвержденный еще JEDEC стандарт, но кое-что о нем уже известно. Как и можно было предположить, индустрия снова решила пойти по пути наименьшего сопротивления, просто-напросто опять-таки вдвое увеличив выборку. Так что за такт от микросхемы к буферу будет пересылаться уже 8 бит, вследствие чего вдвое снизится частота микросхем. В результате легким движением руки нынешние 200-МГц микросхемы, выпущенные для модулей DDR2-800, превращаются в начинку для элегантных DDR3-1600. Более радикальный вариант — снова поверить Rambus и дать ей второй шанс, применив ее технологию XDR, фактически представляющую собой развитие Rambus DRAM. Пока ИТ-индустрия занималась DDR/DDR2, отвергнутая RDRAM тихонько эволюционировала и в конце концов из гадкого утенка превратилась в прекрасного лебедя — XDR. Впрочем... очень близкого по своей идеологии к DDR3. Практически такие же стандартные микросхемы DRAM (естественно, с XDR-интерфейсом), работающие с частотой в несколько сотен мегагерц, и скоростной буфер. В настоящее время Rambus обещает для XDR частоты 3,2 и 4 ГГц, в светлом будущем — 4,8—8 ГГц. Понятно, что уже в случае с 3,2 ГГц фирма предлагает использовать 8-бит выборку плюс набор интерфейсов, шин и протоколов собственной разработки.

* * *

Таким образом, как ни крути, каким бы путем ни пошла ИТ-индустрия, основным инструментом для достижения следующего этапа маршрута станет увеличение выборки данных из микросхем DRAM при замораживании частот микросхем и продолжении роста тактовых частот буферов между ними и шиной памяти. А будет ли при этом технология называться DDR3 или же XDR... Да какая разница?! Принцип функционирования — один, различия — в незначительных деталях его реализации.

Впрочем, понятно, что по политическим соображениям технологию Rambus вряд ли выберут — слишком уж большой зуб имеют на нее практически все ведущие производители памяти. Да и опять же, как показывает предыдущий опыт и спецификации XDR, Rambus всегда тяготела к излишне красивым технологическим решениям, воплощение которых на практике обходится в ту еще копеечку. Образно говоря, Rambus всегда предлагает «Феррари», даже если покупатель говорит, что ему, в данной конкретной ситуации и с учетом имеющихся финансов, требуется «Опель».


В глубинах памяти

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

RAS (Row Access Strobe) — сигнал, передающийся для указания строки в том банке памяти, где находится ячейка, необходимая для чтения или записи;

CAS (Column Access Strobe) — то же, что выше, но для указания колонки;

RAS-to-CAS Delay (RCD)— количество тактов шины памяти, которые должны пройти после подачи сигнала RAS до того, как можно будет подать сигнал CAS;

CAS Latency (CL) — количество тактов, которые должны пройти между подачей сигнала CAS и непосредственно выдачей данных из соответствующей ячейки. Аналогичный параметр есть и для записи данных в ячейку — Write Latency (WL);

RAS Precharge Delay (RPD) — время закрытия страницы памяти в пределах одного банка (в стандартном модуле их обычно четыре), тратящееся на его перезарядку.

Сравнение считывания данных из DDR и DDR2

Ряд задержек зачастую тем или иным образом привязывается к значению CAS Latency. Например, в стандарте DDR2 параметр WL имеет значение CL–1 тактов. Количество тактов, которым равна сама CL, напрямую зависит от частоты микросхемы. Современные технологии и архитектура DDR/DDR2 физически обусловливают временное значение CL равным примерно 15 нс. Так что если взять DDR-266 со временем такта 7,5 нс, то в норме значение CL будет равно 2, а для DDR2-800 с 2,5 нс стандартный CL, как правило, уже будет равен 5—6 тактам.

Интересно отметить, что если в данном случае у DDR параметр WL всегда равен 1, то, например, у DDR2-800 он составит 4—5. Налицо определенное ухудшение ситуации с задержками по сравнению с DDR, вызванное возрастающей скоростью буферов, которым все равно необходимо время для восстановления между операциями. Однако в результате того же самого ускорения и, следовательно, уменьшения времени тактов, возрастание их количества в какой-то степени компенсируется. Это же доказывают и результаты тестов — разница между DDR и DDR2 в этом плане не критична, хотя, безусловно, в пользу DDR и одинаковых тактовых частотах.


Характеристики памяти

Стоит отметить ситуацию с комбинациями задержек (таймингами), обычно выражающихся формулой CL-RCD-RP. Для DDR2-800, к примеру, последняя версия стандарта JEDEC предусматривает тайминги от 4-4-4 до 6-6-6, т.е. CL находится в диапазоне 4—6, при том что 4 — экстремальный вариант для отборных микросхем. Впрочем, в погоне за рекламой производители модулей отнюдь не стремятся придерживаться стандартных таймингов.


"Схема передачи информации в DDR"
"Схема передачи информации в DDR2"