Выход новых массовых чипсетов Intel Grantsdale с поддержкой DDR II вновь заставил думать о перспективности этого типа оперативной памяти. Но, как показывает статистика, настольные и мобильные ПК формируют лишь 8% спроса на рынке памяти, а потому судьба технологии Rambus не столь однозначна, как казалось когда-то.
Уже не раз говорилось, что перспективность той или иной технологии во многом определяют рыночные аспекты ее применения. И оспаривать этот факт бессмысленно, ведь вся история развития высоких технологий тому яркое подтверждение. А значит, противостояние стандартов памяти DDR II и RDRAM мы будем рассматривать как с точки зрения законов маркетинга, так и с точки зрения эффективности технологий. И если рыночная конъюнктура может быть понятна даже человеку, непосвященному в перипетии взаимосвязей разработчиков памяти и ее производителей, то детального рассказа о технологии функционирования конкурирующих стандартов не избежать.
DDR II - по накатанной дорожке
Уже из названия (DDR II) прослеживается близкая родственная связь этого типа памяти с SDRAM и DDR SDRAM первого поколения. Впрочем, DDR II - это не просто увеличенные частоты функционирования, усовершенствованная логика контроллера и сниженное энергопотребление, это еще и новая архитектура, которая имеет ряд фундаментальных отличий. Наиболее важное и значимое нововведение DDR II - использование 4-битной упреждающей выборки (4-bit Prefetch), позволяющей по сравнению с частотой синхронизации увеличить скорость ввода/вывода данных в четыре раза. Напомним, память DDR позволяла получить лишь двукратное увеличение данного показателя. При этом частота тактовых импульсов по сравнению с наиболее продвинутыми реализациями SDRAM и DDR изменилась не существенно - в настоящее время ведущие производители памяти выпускают модули DDR II с эффективными частотами, не превышающими 533 МГц. Поэтому по скорости синхронизации память DDR II в настоящее время самой продвинутой не назовешь, да и высокая эффективная частота функционирования вовсе не означает более интенсивной работы.
Высокая скорость ввода/вывода у DDR II достигается, как и у DDR, передачей двух блоков данных в пределах одного такта, что в совокупности с удвоенной частотой буферов ввода/вывода дает учетверенный показатель эффективной частоты. Внутренняя же частота ядра у DDR II 400 МГц, DDR200 (РС1600) и SDRAM PC100 остается прежней и равна 100 МГц. Из этого следует, что и латентность у вышеперечисленных типов памяти также одинакова. На практике это нисколько не снижает прирост быстродействия DDR II по сравнению с предшественниками в потоковых приложениях. Здесь ее преимущество может оказаться весьма ощутимым и, пожалуй, способно затмить даже RDRAM - наиболее приспособленного для потоковых приложений типа памяти. Поэтому, когда на рынке появятся первые модули DDR II, их задержки (CAS Latency Time, RAS-to-CAS Delay, RAS Recharge Time) составят 4-4-4. Но ждать низкой эффективности работы таких модулей не стоит, поскольку набор задержек 4-4-4 для DDR II будет приблизительно соответствовать формуле 2-2-2 для DDR SDRAM, а последний показатель в настоящее время характерен для наиболее производительных "оверклокерских" модулей памяти DDR.
Многие специалисты ожидают от DDR II более рационального потребления энергии. Его уровень уменьшится со снижением потребляемого напряжения - с 2,5 до 1,8 В по сравнению с DDR SDRAM первого поколения. Если учесть, что выделяемое полупроводниками тепло при протекании электрического тока находится в квадратичной зависимости от приложенного напряжения, то первыми кандидатами на использование DDR II SDRAM после видеоадаптеров представляются мобильные системы. За счет использования микросхемных корпусов BGA, будет достигнута большая компактность модулей, а также в некоторой степени решена проблема воздействия на проводящие линии паразитной индуктивности проводников, что позволит производителям размещать функциональные элементы мобильных систем более компактно.
Другое серьезное нововведение DDR II касается усовершенствования логики контроллера. В принципе, его можно рассматривать как следствие высоких задержек CAS Latency Time, RAS-to-CAS Delay и RAS Recharge Time, характерных для второго поколения DDR. Данную проблему, а также некоторые недостатки, свойственные протоколам работы SDR/DDR-памяти, должна решить технология "отложенного CAS" (Posted CAS) и механизм аддитивной латентности (Additive Latency).
Чтобы лучше уяснить смысл нововведений протокола передачи данных в DDR II, необходимо вспомнить принцип работы протоколов, используемых SDR/DDR. Для синхронной памяти характерен следующий алгоритм работы: после получения запроса на ту или иную строку информации, размещенной в микросхеме памяти, интегрированный в чипсет контроллер подает запрос на активацию необходимого банка данных (Activate) и дожидается истечения задержки RAS-to-CAS Delay. По ее истечении происходит первый этап чтения, активируемый командой Read, после которого контроллер вновь выжидает CAS Latency Time. В это время информация переписывается в буфер памяти, и уже оттуда, запрошенная в начале транзакции строка данных попадает в контроллер чипсета. Описанная последовательность операций чтения может быть проведена еще раз лишь по истечении задержки Row-to-Row Delay. Слабость старого протокола открывается при подаче трех последовательно идущих запросов активации разных банков, когда первый сигнал чтения "перекрывается" третьим сигналом активации и должен создать конфликт в управляющих линиях. Чтобы его избежать, чипсет с поддержкой первого поколения DDR "откладывает" выполнение третьего сигнала активации банка памяти, из-за чего пространство канала памяти используется неэффективно, ведь при работе нескольких приложений, активно применяющих ресурсы оперативной памяти, в трафике канала наблюдается слишком много "пустых" тактов. Особенно малонагруженным канал SDR/DDR-памяти оказывается при функционировании в серверах. Здесь длительные задержки просто губительны.
Схема отложенного CAS подразумевает подачу сигналов запросов на активацию необходимого банка данных и начала чтения в буфер памяти (Read) без задержки CAS Latency Time. И хотя на практике без задержки обойтись нельзя в принципе (ведь активация банка не может произойти мгновенно), благодаря логике аддитивной латентности достигается увеличение эффективности использования физического пространства канала. Логика аддитивного времени выжидания (кстати, встроенная в чипы памяти) выслеживает все сигналы активизации банков и автоматически посылает сигнал чтения после их обнаружения. В результате, сразу после задержки CAS, память способна выдавать данные в чипсет, вне зависимости от числа активационных сигналов.
Такое ухищрение, конечно, весьма эффективно для серверов и рабочих станций, однако на обычных ПК сильного прироста быстродействия все-таки не даст, ведь привносимое расширение пропускной способности будет несущественным. Весьма странным видится тот факт, что разработчики не внедрили в протокол режим динамического чередования банков памяти при чтении и записи, ведь такая организация протокола улучшила бы почву для действия механизмов логики Additive Latency, активизирующегося лишь при чтении из нескольких банков.
Реализация схемы аддитивной латентности кажется недоработанной и по ряду других причин. Так, если в протоколах SDR/DDR-памяти запись в любых ситуациях осуществляется всего лишь за один такт, то в случае с DDR II она всегда происходит за число тактов на один меньше, чем при чтении, то есть динамически варьируется. В итоге минимальное время записи информации в ячейку памяти может произойти не менее чем за три такта. Важно отметить, за счет того, что процессорное время тратится только на запись в буферы памяти, увеличение числа тактов записи не повлияет на скорость работы системы в целом, усложнив только работу логики контроллера. Если приложения сами смогут изменять величину Additive Latency соответственно своим нуждам, ее использование и в самом деле будет эффективным, однако ручная установка ее величины, практикуемая сейчас, может оказаться для некоторых приложений преградой к достижению оптимального уровня быстродействия. Предлагаемые в настоящее время производителями чипы DDR II способны изменять Additive Latency только с шагом 1 - от 0 до 4.
Изложенные выше нововведения DDR II были бы малоэффективными и приводили, по меньшей мере, к повреждению целостности передачи данных, если бы не схемы поддержания качества сигналов. Известно, что на высоких частотах на любой сигнал начинает действовать суперпозиция внешних и внутренних электрических сил, способная в ходе передачи сигнала существенно повлиять на его форму, затруднив, таким образом, конечную дефиницию данных. Кроме того, передаваемые по шине канала памяти сигналы могут интерферировать. Во избежание проявления шумов в современных типах памяти применяется метод пассивной и активной терминации сигналов. Смысл последней заключается в установке заземляющих сопротивлений (пассивная терминация) на концах шины либо в подаче на ее выводы определенного сглаживающего напряжения (активная терминация), уровень которого может изменяться, в зависимости от амплитуды шумов. И тот, и другой способ стабилизирует сигнальную картину шины. Нововведением DDR второго поколения стало размещение стабилизирующих надстроек в кристалле чипа памяти, тогда как ранее они устанавливались или на материнских платах, или на самих модулях памяти. На практике это не только повысит стабильность передачи сигналов по шине канала памяти, но и удешевит материнские платы. Поэтому в будущем пользователь должен уделять особое внимание качеству приобретаемых модулей памяти, ведь применение некачественных образцов способно самым пагубным образом сказаться на стабильности системы в целом.
Так как на высоких частотах на качество передачи сигналов может повлиять разная длина проводников шины, канал DDR II имеет двунаправленное стробирование сигнальных данных, взамен однонаправленного у DDR первого поколения. Этим достигается более точная дифференциация несущих информацию импульсов, ведь их идентификация теперь происходит по передней и задней кромкам сигнала. Также в контроллере DDR II реализована система автокалибровки сигналов, гарантирующая исключение разночтений при использовании модулей от разных производителей. Кроме того, данная система может оказаться востребованной, если у сигналов проявится скос контура или изменение амплитуды из-за скачков напряжения.
RDRAM - путь взлетов и падений
Главный секрет привлекательных технических характеристик памяти RDRAM - оригинальное устройство шин передачи данных и адресации. В отличие от SDRAM, DDR и DDR II обмен данными в RDRAM происходит по шине, а не по параллельному интерфейсу. Для этого в RDRAM специально выделяется два отдельных набора контактных дорожек, по 16 штук каждый, образующих полосу шириной 2 байта. А уже на эту, общую для всего модуля шину и "присаживаются" все его чипы. Как это работает? Достаточно прозаично, если учесть, что похожая схема применена и для передачи данных в технологии Ethernet. Разница состоит лишь в том, что в сетевом протоколе применяется дифференциальное кодирование сигналов для каждого проводника, тогда как Rambus при разработке своей высокоскоростной шины отталкивалась от идеи минимизации количества выводов микросхем. Ведь это имеет особенно большое значение для многоканальных конфигураций, поскольку уменьшает число проводников, упрощает разводку сигнальных трасс и удешевляет системные платы. Как следствие, вместо нескольких отдельных парных Ethernet-проводов, RDRAM использует всего один-единственный провод-эталон нулевого уровня сигнала, служащий общим для всего набора сигнальных проводников шины. Безусловно, такой подход несет очевидные сложности по организации четкой детерминации сигнала, на который из-за общих наводок сигнальных проводников могут быть оказаны взаимные помехи, но если учесть "миниатюрность" шины RDRAM, то использования полноценной дифференциальной схемы можно все-таки избежать. Что, вообще-то, и наблюдается в чипах данного вида памяти, где всего 30 физических каналов отвечают за прием и передачу данных, а также управляющей информации, а оставшиеся пять - за электропитание микросхем и подачу инициализирующих команд.
Впрочем, высокая скорость передачи данных, а также недоступная для конкурентов частота работы интерфейса RDRAM (до 1200 МГц) является не только следствием использования техники передачи сигналов по двум фронтам тактовых импульсов, но и технологии Quad Rambus Signalizing Levels. Последняя позволяет кодировать данные в канале памяти RDRAM четырьмя уровнями напряжения (в DDR II их всего два). В итоге пропускная способность одного 16-битного "квадро-канала" Rambus, функционирующего на частоте 1066 МГц, выливается в недостижимые для конкурентов 4,2 Гбайт/с. Однако, как и в случае с DDR II, эти цифры имеют мало общего с показателями реальной производительности. Стоит понимать, что пиковые показатели работы любой памяти зависят от множества факторов, и в частности от ряда характеристик, присущих как микросхемам памяти, так и их контроллеру, например латентности, скорости считывания и записи, и других.
Как и технология DDR II, RDRAM несет в себе ряд энергосберегающих функций. И если в DDR II они являются следствием новой "упаковки" микросхем и снижения уровня рабочего напряжения, то в RDRAM применено более интересное инженерное решение. Речь идет о по-настоящему новом слове в области организации работы памяти - создании четырех режимов энергопотребления - активного (Active), ожидания (Standby), экономного (Nap) и сна (PowerDown). В первом режиме RDRAM может мгновенно обработать запрос на передачу данных. Естественно, этот режим характеризуется самым высоким энергопотреблением. Режим Standby - обычное состояние ожидания запроса. В нем находятся все устройства, не принимающие участия в передаче. В отличие от обычных систем памяти на основе DRAM, где все устройства, входящие в банк, потребляют энергию во время операций записи-чтения, в памяти Rambus это происходит только с одним устройством - остальные переходят в режим ожидания. Режимы Nap и PowerDown еще более экономны. Между собой они различаются уровнем потребления и скоростью перехода в активное состояние.
Но вернемся к принципу организации работы RDRAM. Как уже отмечалось, для передачи управляющих команд данный тип памяти имеет "выделенные" линии - ROW и COL. По ним передаются пакеты данных, состоящие из двух полей. В первом поле указывается тип операции, а во втором размещается либо битная маска, которая используется для расширения операции записи превышающих стандартный объем пакета данных, либо код расширения (уточнения) характера операции. Для того чтобы разгрузить шину, в нее введено искусственное занижение скорости работы Rambus-микросхем - поля пакета отсылаются с четырехтактовым интервалом.
Операция чтения также имеет свои особенности. Например, во время инициализации шины, производится нумерация чипов от контроллера и далее. После этой процедуры каждому чипу на основе полученного номера выдается значение задержки отправки данных в ответ на запрос о чтении некоторого целого числа тактов по принципу - чем ближе к контроллеру чип, тем большую задержку он для себя устанавливает. Как следствие, временные параметры операций записи выставляются таким образом, чтобы они совпадали с задержками, выставленными для чтения. Итог подобного "мошенничества" прост - контроллеру Rambus нет необходимости выдерживать искусственные задержки, присущие DDR-памяти, у него всегда наготове ячейки памяти.
Что касается будущего данной технологии, по мнению компании Rambus, в сфере ПК оно связано с набором расширений RDRAM под название Yellowstone. Эта более быстрая сигнальная технология подразумевает смену сигнальной архитектуры Quad Rambus Signaling Level на еще более эффективное решение. Речь идет о новой технологии ввода/вывода, которая была названа ячейкой RaSer (Rambus Serializer/Deserializer). Под "ячейкой" в данном случае понимается любой элемент набора микросхем. Технологию RaSer можно использовать для организации связи между отдельными микросхемами или платами. Она способна заметно увеличить скорость передачи данных через маршрутизаторы глобальных сетей, а также через интерфейсы Fibre Channel, Gigabit Ethernet и InfiniBand. В настоящее время существуют одно-, двух- и четырехканальные конфигурации ячеек. Четырехканальная конфигурация обеспечивает пересылку информации со скоростью до 12,5 Гбит/с в каждом направлении.
Интереснейшая особенность Yellowstone - технология FlexPhase, назначение которой в автоподстройке фаз сигналов данных и адреса для упрощения разработки межчиповых соединений. FlexPhase выравнивает данные по частоте, упрощая расчеты длин линий шин и проектирование печатных плат. Обещают, что ее действие не будет вносить задержек в работу интерфейса. Хочется верить, что интеграция этой технологии в микросхемы памяти не приведет к их значительному удорожанию. Уже существуют тестовые образцы чипов по техпроцессу 0,13 мк, реализующие технологию FlexPhase. В итоге, Yellowstone сможет предложить пропускную способность (с учетом двунаправленной шины), превосходящую DDRII в четыре раза.
А теперь поразмыслим:
Главный вывод, который можно сделать, ознакомившись с принципами функционирования DDR II и RDRAM, заключается в том, что индустрии придется совершить нелегкий выбор. Ведь если для RDRAM повышение скорости работы интерфейса пропорционально росту его пропускной способности, то для DDR II данный показатель очень быстро выходит в "насыщение". Как следствие, даже DDR первого поколения для определенного рода приложений может оказаться более привлекательным решением, чем DDR II. Как уже отмечалось, временные характеристики DDR II по сравнению с DDR SDRAM сильно ухудшились, а 8 тактов до первого доступа к данным, и минимум 3 для осуществления записи, вообще отпугивают, равно как и низкая эффективность обработки команд "произвольного" чтения. (Вряд ли схема отложенного CAS даст сильный прирост производительности.) Произвольная выборка весьма характерна для серверных систем и научных компьютеров, следовательно, именно в этой сфере переход на DDR II может затянуться больше всего. С другой стороны, высокопроизводительные системы и по сей день остаются очень привлекательной позицией для нанесения "контрудара" Rambus.
Что касается общих слабых сторон новых технологий, к ним стоит отнести в первую очередь не самое эффективное использование каналов. Так, в случае с DDR II контроллер, которому потребуется считать объем информации размером, скажем, 1 бит, будет вынужден "тянуть" все-таки целых 4 бита (4-bit Prefetch), что связано с особенностями кэширования. Тоже самое с RDRAM. Здесь царит, с одной стороны, "избыток" управляющей информации, а с другой - низкая эффективность опроса и постановки задач, как следствие борьбы с большим количеством избыточных данных. Резонный баланс в этом вопросе "нащупать" достаточно сложно.
В итоге однозначного ответа об эффективности какого-либо из стандартов, по крайней мере, на данном этапе их развития дать нельзя. Поэтому судьбу стандартов предопределит рыночная конъюнктура. Сегодня она уверенно склоняет чашу весов в сторону DDR II. К этому "приложила руку" компания Intel, а также лидеры рынка графических акселераторов, уже неоднократно испробовавшие новую память в своих флагманских решениях. Впрочем, и RDRAM все же еще присутствует на рынке ПК. Ее лагерь составляют ASUS, SiS и Rambus, которые заявляют о своих планах по разработке 4-канального чипсета на базе PC1200 DRDRAM для Pentium 4 с шиной 800 МГц QP. Все же их усилия кажутся тщетными, ведь сегодня именно производители процессоров задают тон в выборе "широт" пропускных каналов шин процессоров. А они в последние время стали весьма требовательными к этому показателю, ведь максимальная полоса пропускания процессорной шины того же Pentium 4 составляет 6,4 Гбайт/с. Современные же типы памяти в одноканальном режиме способны организовать канал шириной лишь 3,2 Гбайт/с у DDR-памяти, и 4,8 Гбайт/с - у RDRAM. Следует также учесть, что в дальнейшем этот разрыв станет увеличиваться, и, пожалуй, наступит момент, когда многоканальностью контроллера памяти проблемы "нестыковки" шин будет уже не решить, из-за сильного удорожания наборов системной логики. Как следствие, приоритеты ведущих игроков могут кардинально измениться.