Времена 8086, когда 640 KB ОЗУ хватало и для DOS, и для выполняемых приложений,
давно прошли. А жаль — имелись бы все шансы "уместить" их в кэше современного
процессора. Хотим мы того или нет, а объем данных для производства вычислений,
к которым необходим действительно оперативный доступ, растет, и никакие
ухищрения процессорным чипмейкерам в этом не помогут. Значит, внешней (по отношению
к кристаллу процессора) памяти суждено быть… Ведь большинство "обычных"
PC не могут рассчитывать на десятки мегабайт высокоскоростной интегрированной
и дорогостоящей внешней SRAM в качестве кэша очередного (энного) уровня. Следовательно,
быть и множеству соединений на плате, и контроллеру, управляющему процессами обмена
(плохо, хорошо — не в этом сейчас суть, для нас важно, что сохранится промежуточная
ступенька). Не сможет в ближайшее время "бытовой" компьютер вооружиться
и суперконтроллером памяти, объединяющим пропускную способность множества каналов
DRAM-памяти, как это принято у высокопроизводительных серверов.
Известны и попытки тех, кто, считая контроллер вместе с шиной к нему от процессора
"пятым колесом в телеге", стремится избавиться от размещения этого контроллера
"снаружи" и переместить его функции внутрь процессора. Как у любого
решения, у вышеупомянутого есть недостатки и достоинства, причем для однопроцессорной
рабочей станции кажется, что достоинств больше: нет зависимости скорости работы
процессора с памятью от ошибок разработчиков "обвязки", упрощается разводка
печатной платы из-за сокращения проводников связи ЦПУ — северный мост (хаб основных
интерфейсов). Да и самому чипсету от уменьшения количества решаемых задач становится
только "легче". Отсюда и потенциальные гибкость, повышение стабильности
работы и скорости обмена. Предполагается также, что между контроллером памяти
и ядром процессора будет проще увеличить разрядность шины обмена и снизить задержки.
К тому же процессоры, как правило, производятся по меньшей технологической норме,
т. е. контроллер получается компактнее (если абстрактно поделить процессор на
части). А это, опять же, — снижение общей стоимости системы и повышение устойчивости
работы на увеличенных частотах (забудем на секунду, что порой и несколько тысяч
"дополнительных" транзисторов способны существенно добавить головной
боли разработчику).
Функции и особенности работы контроллера памяти неоднократно рассматривались, поэтому для дальнейшего разговора ограничимся выводом о том, что цепочка протекающих процессов обмена процессор—память достаточно длинна, и на каждом этапе есть свои нюансы поведения. Причем оценки успешности работы зависят от того, какое сочетание циклов доступа процессора в память будет создано. Отсюда следует пусть и достаточно спорный вывод по поводу самих методик тестирования: любая из них, будучи нацеленной на конечного пользователя, даст нам некий набор "попугаев", который неминуемо окажется ориентированным на конкретную совокупность операций, и лишь в определенной степени сможет отражать реальные параметры производительности. На этом наши "теоретизирования" остановим — благо, и в "Компьютерном Обозрении" чуть ли не через номер встречаются статьи о результирующем быстродействии различных систем и о "вкладе", вносимом подсистемой памяти.
Даже с точки зрения "бытовой" логики несложно прийти к двум умозаключениям. С одной стороны, рекордные "наносекундные" возможности отдельно взятого компонента (например, того же чипа памяти) могут быть до конца и не реализованы в сложившихся условиях обмена, и их наличие в системе отнюдь не гарантирует ей рекордное быстродействие. С другой — очевидно, что рабочий цикл (чтение, запись некоторой единичной группы ячеек памяти) не сможет произойти быстрее, нежели это физически возможно, т. е. скорость определяется техническими характеристиками линейки памяти в целом и составляющих ее чипов.
Прежде чем обратиться к рассмотрению внутреннего устройства и технических параметров модулей и чипов, совершим краткий экскурс в историю, тем более что многие этапы становления DDR могут повториться и с DDR II. DDR SDRAM (Double Data Rate Synchronous DRAM — синхронная динамическая память с удвоенной пропускной способностью) пришла на рынок, отличаясь умением обмениваться с контроллером чипсета двумя пакетами данных за такт, т. е. вдвое быстрее, чем SDRAM. Таким образом, пиковая пропускная способность DDR-модуля оказывалась в два раза выше, чем у привычного на те времена "обычного" SDRAM, работающего на такой же тактовой частоте. Комитет JEDEC стандартизировал модули DDR SDRAM, функционирующие на частотах 100, 133, 166 и 200 MHz. Как ни странно, в этих стандартах фигурировали не PC200 и т. п., а (слава маркетингу!) PC1600 и т. д. — вместо эффективной тактовой частоты модуля в названии стала указываться его пиковая пропускная способность. DDR унаследовала от предшественницы немало ограничений. Во-первых, оба типа модулей с одинаковой тактовой частотой имели сходное время доступа. Иными словами, на чтение первых восьми байт как из DDR SDRAM (PC1600), так и из SDR SDRAM (PC100) уходило примерно одинаковое время. Правда, последующие слова первая память способна была поставлять вдвое быстрее. Именно поэтому приложения, обрабатывающие относительно небольшие объемы информации и умещающие большинство данных в кэше процессора, работали на системах с DDR и обыкновенной SDRAM примерно с одинаковой скоростью. В подобных условиях время доступа к памяти оказывалось гораздо важнее ее пропускной способности. Но на смену чипам на 100 и 133 MHz пришли более быстродействующие, и на сегодня при желании (и соответствующих деньгах) можно найти модули памяти, рассчитанные на частоты свыше половины гигагерца. Осталось напомнить о поддержке длинным перечнем прогрессивных чипсетов механизма двухканальности — и закономерность сегодняшнего успеха DDR SDRAM становится очевидной.
Параметры модулей памяти и чипов, или "Когда
на клетке слона…"
Казалось бы, что может быть более простым, чем модуль памяти? Достаточно собрать несколько однотипных (в зависимости от требуемой емкости линейки и внутренней емкости чипа) микросхем на небольшой плате, референсный дизайн которой давно разработан и стандартизирован. "Ухудшить" его (что подтверждается и результатами нашего тестирования) довольно сложно.
Основу сегодняшнего рынка памяти составляют модули объемом 256 MB. Линейки емкостью 128 MB среди новых поступлений наблюдаются все реже и реже. Оснащать компьютер 128 MB (при одном модуле в ПК) смысла нет, особенно для материнских плат с интегрированным графическим ядром. Да и та же ставшая де-факто стандартом Windows XP вряд ли при таком объеме памяти позволит комфортно работать. А применять несколько таких линеек нецелесообразно по экономическим соображениям. Модули 512 MB по цене, сложившейся на сегодняшний день, обходятся несколько дороже, непропорционально увеличению объема. Еще больший прирост цен наблюдается в отношении емкость/стоимость у чипов. Самыми оптимальными по цене для комплектации модулей считают микросхемы емкостью 256 Mb, и недаром биржевым "маркером рынка" продолжают оставаться микросхемы от Hynix организацией 32M 8.
![]() |
Рис. 1. Структурная схема модуля памяти формфактора DIMM емкостью 256 MB |
Что же представляет собой обычный (небуферизированный, нерегистровый) модуль памяти
(DDR SDRAM DIMM)? Обратимся к структурной схеме (рис. 1).
Сразу оговоримся, что для наглядности на ней не показаны резисторы (исполнены в виде микросборок), назначение которых — упростить проблемы согласования (вспомним о подобных проблемах, повлиявших на судьбу RDRAM).
На плате габаритами, как правило, 13,5 3 см, имеющей на широкой части по 92 контакта с обеих сторон, распаяны: чип EEPROM с последовательным доступом (SPD) и группа микросхем памяти. В зависимости от типа и объема модуля последние располагаются с одной или двух сторон. Как видим, по нынешним меркам не представляет особых сложностей и "разводка" микросхем линейки. Многие из их "ног" соединены параллельно между собой и образуют 64-битную шину данных DQ0-DQ63 и 15-разрядную адресную шину A0-A12 и BA0-BA1. Кроме служебных сигналов с уже известными нам названиями RAS и CAS, в процессе взаимодействия с контроллером памяти участвуют также WE (Write Enable — сигнал на разрешение цикла записи) и CS0 (Chip Select Input — разрешение выборки чипа). Синхронность работы обеспечивается с помощью тактовых сигналов, парафазно подаваемых на прямые и инверсный группы входов (CK). К управлению непосредственно микросхемами памяти причастны DQS0-DQS7 (Data Strobe Input/Output) и DM0-DM7 (Data-in-Mask). Заметим, что к каждому из чипов подведены "свои" сигналы последней группы.
Как мы говорили выше, если качество материала, разводки проводников и изготовления такой платы на высоте, то большинство показанных результатов определяются параметрами входящих в них микросхем. Но на заметку возьмем — даже небольшие расстояния при таких скоростях передачи могут оказаться критическими. Неравенство задержек при групповом распространении сигналов (из-за разной эквивалентной электрической длины) станет причиной их временнoго сдвига относительно друг друга, затягивание фронтов/спадов импульсов и другие искажения их формы неминуемо приведут к снижению быстродействия и/или скажутся на стабильности функционирования даже при установленных номинальных частотах и таймингах.
![]() |
Рис. 2. Функциональная схема чипа памяти (организация 32 Mbx8) |
От модуля перейдем к базовому кирпичику этой конструкции — чипу памяти (рис.
2). Все операции в нем (выполнение команд циклов чтения, записи или регенерации)
строго синхронны. Причем формирование внутреннего тактирующего сигнала осуществляется
не просто по фронту или спаду импульса тактовой последовательности с контроллера
памяти, а по моменту достижения каждым из двух противофазных потенциалов на дифференциальных
(прямом CK и инверсном /CK) тактовых входах определенного значения, превышающего
пороговое и соответствующего логическим "0" или "1". Такой
алгоритм улучшает стабильность работы. Длительность периода, в течение которого
сигнал синхронизации через противоположное логическое состояние успевает вернуться
к исходному уровню (единицы наносекунд), обычно приводится в качестве одной из
характеристик быстродействия в технических описаниях на микросхему. Соответственно,
обратная ей величина — это эффективная рабочая частота чипа.
В основе работы микросхемы всех динамических устройств памяти лежит принцип перезарядки конденсаторов запоминающих ячеек. Доступ к ним осуществляется через ключи, управляемые мультиплексорами-защелками строк и столбцов, которые, в свою очередь, подчинены командам, формируемым блоком логического управления. Для удобства организации доступа множество ячеек разбито на несколько массивов, составляющих банки памяти. Их конфигурация может быть различной: в приведенной нами для примера DDR-микросхеме 256 Mb — это 32 миллиона слов по 8 бит каждое, полученные при четырехбанковой архитектуре чипа.
У каждой микросхемы рассмотренной нами линейки памяти имеются 13 непосредственно адресных и два дополнительных входа (BA0, BA1). Различными комбинациями логических уровней на них можно задать, к какому из четырех банков памяти происходит обращение. Так как ячейками хранения информации являются конденсаторы, которые разряжаются и с течением времени, и при каждой операции чтения, то возникает необходимость восстановить (регенерировать) потерянный заряд. В соответствии с логикой работы чипа процесс разрядки постоянно контролируется логикой, а счетчик регенерации гарантирует, что все элементы матрицы будут построчно обновлены. Несмотря на достаточно интеллектуальный алгоритм, заложенный в основу процесса регенерации, на практике, особенно при "разгоне", это может означать, что некоторые циклы обращения к памяти удлинятся.
Микросхемы DDR SDRAM — это устройства с программируемыми параметрами, со своим набором команд и внутренней организацией чередования обращений банков, поэтому начальная инициализация и управление режимами памяти производятся путем программирования специального регистра в блоке логического управления режимами. В его состав входит и собственно декодер команд. Подробный разбор алгоритмов, впрочем, как и временных характеристик (только основных среди них около 30) всех протекающих при этом процессов, потребовал бы пристального анализа множества громоздких диаграмм, объясняющих принципы работы, и является предметом отдельного материала.
Следует также учитывать, что схемотехнические решения, положенные в основу работы чипа даже от одного и того же производителя, с течением времени могут вытесняться более современными решениями, например заменой в модельном ряду на микросхему с той же емкостью, но с отличными от предыдущего поколения усовершенствованными внутренними алгоритмами работы.
Определенное влияние на чипмейкеров оказывает и стремление поспеть за требованиями "быстрее и объемнее". Так, некоторые отнеслись к необходимости выйти на рынок DDR-памяти с частотой 400 MHz и выше как к хорошей репетиции по освоению новых конструкторских приемов и технологических процессов. После этого, если верить их собственным заявлениям, перспектива массового выпуска чипов типа DDR II уже не пугает.
Hynix Infineon Technologies Micron Technology Mosel Vitelic Samsung |
Ряд характеристик микросхем, "прозрачных" для неспециалиста (емкость, организация и рабочие тайминги, эксплуатационные характеристики и т. п.), могут быть "вычислены" не только как результат анализа многостраничных спецификаций или "считаны" из SPD-микросхемы модуля, но и содержатся в самом наименовании микросхемы.
В заключение обратим внимание на несколько моментов "нетехнического" плана. Большинство изготовителей микросхем одновременно являются и сборщиками линеек памяти. Кто как не они лучше всех знают особенности поведения своих чипов и способны грамотно изготовить модули. Но, в общем, поставщиков устройств на рынок под различными торговыми марками сохранилось гораздо больше, чем компаний, действительно выпускающих линейки и чипы. Облегчить задачу выбора смогут опубликованные на сайтах ведущих производителей чипсетов так называемые валидационные списки микросхем. В то же время продолжают встречаться модели от сборщиков "энного эшелона", и здесь не обойтись без выяснения того, какой и кем изготовленный чип лежит в основе линейки памяти. Надеемся, что приведенная информация в совокупности с полученными результатами тестирования окажется полезной и тем, кто пытается найти закономерности в поведении тех или иных модулей, и тем, кто столкнется с необходимостью понять, можно ли доверять предлагаемым в продаже линейкам или чего от них ожидать.
Сообщить об опечатке
Текст, который будет отправлен нашим редакторам: