Оперативная память - статьи

         

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 реализована система автокалибровки сигналов, гарантирующая исключение разночтений при использовании модулей от разных производителей. Кроме того, данная система может оказаться востребованной, если у сигналов проявится скос контура или изменение амплитуды из-за скачков напряжения.

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