Автор работы: Пользователь скрыл имя, 16 Ноября 2011 в 18:01, реферат
В настоящем реферате мы рассмотрим основные современные виды оперативной памяти, применяемой в десктопных системах (оперативную память, применяемую в серверах и ноутбуках, оставим за его рамками). Под ними будем подразумевать память класса SDRAM — SDR (Single Data Rate — память с одинарной скоростью передачи данных), DDR (Double Data Rate — память с удвоенной скоростью передачи данных) и DDR2 (память DDR второго поколения).
Аббревиатура SDRAM расшифровывается как Synchronous Dynamic Random Access Memory — синхронная динамическая память с произвольным доступом.
tRAS, min = tRCD + tCL + (tBL - (tCL - 1)) - 1,
где tRCD — время выполнения первой операции, tCL — второй, (tBL - (tCL - 1)) — третьей, наконец, вычитание единицы производится вследствие того, что период tRAS не включает в себя такт, на котором осуществляется подача команды PRECHARGE. Сокращая это выражение, получаем:
tRAS, min = tRCD + tBL.
Достаточно поразительный вывод, вытекающий из детального рассмотрения схемы доступа к данным, содержащимся в памяти типа SDRAM, заключается в том, что минимальное значение tRAS не зависит(!) от величины задержки CAS#, tCL. Зависимость первого от последнего — достаточно распространенное заблуждение, довольно часто встречающееся в различных руководствах по оперативной памяти.
В качестве примера первого соотношения, рассмотрим типичную высокоскоростную память типа DDR с величинами задержек (tCL-tRCD-tRP) 2-2-2. При минимальной длине пакета BL = 2 (минимально возможной для DDR) необходимо затратить не менее 1 такта шины памяти для передачи пакета данных. Таким образом, в этом случае минимальное значение tRAS оказывается равным 3 (столь малое значение tRAS не позволяет выставить подавляющее большинство контроллеров памяти). Передача более длинных пакетов, состоящих из 4 элементов (BL = 4, tBL = 2), увеличивает это значение до 4 тактов, наконец, для передачи максимального по длине 8-элементного пакета (BL = 8, tBL = 4) требуемое минимальное значение tRAS составляет 6 тактов. Отсюда следует, что, поскольку большинство контроллеров памяти не позволяют указать значение tRAS < 5, разумно настроить подсистему памяти таким образом, чтобы длина передаваемого пакета была максимальной (BL = 8, в том случае, если этот параметр присутствует в настройках подсистемы памяти в BIOS материнской платы), а величина tRAS принимала значение, равное 6. Альтернативный вариант — BL = 4, tRAS = 5.
Второе важное соотношение между таймингами вытекает из того факта, что полный цикл пакетного чтения данных — от 1-й стадии до ее повторения — именуется собственно «минимальным временем цикла строки», tRC. Поскольку первые три стадии, как мы показали выше, не могут занимать время, меньшее tRAS, а последняя занимает время, строго равное tRP, получаем:
tRC = tRAS + tRP.
Заметим,
что некоторые контроллеры
Напоследок отметим, что четыре важнейших параметра таймингов памяти, расположенных в такой последовательности: tCL-tRCD-tRP-tRAS, принято называть «схемой таймингов». Такие схемы (например, 2-2-2-5 или 2.5-3-3-7 для памяти типа DDR; 3-3-3-9, 4-4-4-12 и 5-5-5-15 для памяти типа DDR2) достаточно часто можно встретить в спецификациях на модули оперативной памяти.
Строго
говоря, такая последовательность не
соответствует фактической
Особой категорией таймингов, не связанных с доступом к данным, находящимся в ячейках микросхем SDRAM, можно считать так называемые «задержки командного интерфейса», или обратную им характеристику — «скорость подачи команд» (command rate). Эти задержки связаны с функционирования подсистемы памяти на уровне не индивидуальных микросхем, а составляемых ими физических банков. При инициализации подсистемы памяти каждому сигналу выбора кристалла (chip select), ассоциированному с определенным физическим банком памяти, в регистрах чипсета присваивается определенный номер (нумерация осуществляется, как правило, по емкости физических банков — например, по убывающей), уникальным образом идентифицирующий данный физический банк при каждом последующем запросе (поскольку все физические банки разделяют одни и те же, общие шины команд/адресов и данных). Чем больше физических банков памяти присутствует на общей шине памяти, тем больше электрическая емкостная нагрузка на нее, с одной стороны, и тем больше задержка распространения сигнала (как прямое следствие протяженности пути сигнала) и задержка кодирования/декодирования и работы логики адресации и управления, с другой.
Так возникают задержки на уровне командного интерфейса, которые на сегодняшний день наиболее известны для платформ, основанных на процессорах семейства AMD Athlon 64 с интегрированным контроллером памяти, поддерживающим память типа DDR SDRAM. Разумеется, это не означает, что задержки командного интерфейса присущи лишь этому типу платформ — просто для этого типа платформ, как правило, в настройках подсистемы памяти в BIOS есть настройка параметра «Command Rate: 1T/2T», тогда как в других современных платформах (например, семейства Intel Pentium 4 с чипсетами Intel 915, 925, 945, 955 и 975 серий) настройки задержек командного интерфейса отсутствуют в явном виде и, по всей видимости, регулируются автоматически. Возвращаясь к платформам AMD Athlon 64, включение режима «2T» приводит к тому, что все команды подаются (наряду с соответствующими адресами) на протяжении не одного, а двух тактов шины памяти, что определенно сказывается на производительности, но может быть оправдано с точки зрения стабильности функционирования подсистемы памяти. Более подробно этот вопрос мы рассмотрим в будущем (во второй, «практической» части настоящего руководства, посвященной выбору модулей памяти класса SDRAM).
Выше мы рассмотрели организацию и принципы функционирования синхронных устройств памяти с одинарной скоростью передачи данных SDR SDRAM. В настоящем разделе мы рассмотрим, какие основные отличия привносят устройства с удвоенной скоростью передачи данных — DDR и DDR2 SDRAM.
Начнем с рассмотрения микросхем DDR SDRAM. По большей части они оказываются похожими на микросхемы SDR SDRAM — так, оба типа микросхем, как правило, имеют одинаковую логическую организацию (при одинаковой емкости), включая 4-банковую организацию массива памяти, и одинаковый командно-адресный интерфейс. Фундаментальные различия между SDR и DDR лежат в организации логического слоя интерфейса данных. По интерфейсу данных памяти типа SDR SDRAM данные передаются только по положительному перепаду («фронту») синхросигнала. При этом внутренняя частота функционирования микросхем SDRAM совпадает с частотой внешней шины данных, а ширина внутренней шины данных SDR SDRAM (от непосредственно ячеек до буферов ввода-вывода) совпадает с шириной внешней шины данных. В то же время, по интерфейсу данных памяти типа DDR (а также DDR2) данные передаются дважды за один такт шины данных — как по положительному перепаду синхросигнала («фронту»), так и по отрицательному («срезу»).
Возникает вопрос — как можно организовать удвоенную скорость передачи данных по отношению к частоте шины памяти? Напрашиваются два решения — можно либо увеличить в 2 раза внутреннюю частоту функционирования микросхем памяти (по сравнению с частотой внешней шины), либо увеличить в 2 раза внутреннюю ширину шины данных (по сравнению с шириной внешней шины). Достаточно наивно было бы полагать, что в реализации стандарта DDR было применено первое решение, но и ошибиться в эту сторону довольно легко, учитывая «чисто маркетинговый» подход к маркировке модулей памяти типа DDR, якобы функционирующих на удвоенной частоте (так, модули памяти DDR с реальной частотой шины 200 МГц именуются «DDR-400»). Тем не менее, гораздо более простым и эффективным — исходя как из технологических, так и экономических соображений — является второе решение, которое и применяется в устройствах типа DDR SDRAM. Такая архитектура, применяемая в DDR SDRAM, называется архитектурой «2n-предвыборки» (2n-prefetch). В этой архитектуре доступ к данным осуществляется «попарно» — каждая одиночная команда чтения данных приводит к отправке по внешней шине данных двух элементов (разрядность которых, как и в SDR SDRAM, равна разрядности внешней шины данных). Аналогично, каждая команда записи данных ожидает поступления двух элементов по внешней шине данных. Именно это обстоятельство объясняет, почему величина «длины пакета» (Burst Length, BL) при передаче данных в устройствах DDR SDRAM не может быть меньше 2.
Устройства типа DDR2 SDRAM являются логическим продолжением развития архитектуры «2n-prefetch», применяемой в устройствах DDR SDRAM. Вполне естественно ожидать, что архитектура устройств DDR2 SDRAM именуется «4n-prefetch» и подразумевает, что ширина внутренней шины данных оказывается уже не в два, а в четыре раза больше по сравнению с шириной внешней шины данных. Однако речь здесь идет не о дальнейшем увеличении количества единиц данных, передаваемых за такт внешней шины данных — иначе такие устройства уже не именовались бы устройствами «Double Data Rate 2-го поколения». Вместо этого, дальнейшее «уширение» внутренней шины данных позволяет снизить внутреннюю частоту функционирования микросхем DDR2 SDRAM в два раза по сравнению с частотой функционирования микросхем DDR SDRAM, обладающих равной теоретической пропускной способностью. С одной стороны, снижение внутренней частоты функционирования микросхем, наряду со снижением номинального питающего напряжения с 2.5 до 1.8 V (вследствие применения нового 90-нм технологического процесса), позволяет ощутимо снизить мощность, потребляемую устройствами памяти. С другой стороны, архитектура 4n-prefetch микросхем DDR2 позволяет достичь вдвое большую частоту внешней шины данных по сравнению с частотой внешней шины данных микросхем DDR — при равной внутренней частоте функционирования самих микросхем. Именно это и наблюдается в настоящее время — модули памяти стандартной скоростной категории DDR2-800 (частота шины данных 400 МГц) на сегодняшний день достаточно распространены на рынке памяти, тогда как последний официальный стандарт DDR ограничен скоростной категорией DDR-400 (частота шины данных 200 МГц).
А сейчас, по аналогии с DDR, нам осталось лишь рассмотреть, в каком количестве осуществляется считывание/запись данных в микросхемах DDR2, и какое минимальное значение может принимать величина длины пакета данных. Итак, поскольку DDR2 — это «все та же DDR», мы по-прежнему имеем удвоенную скорость передачи данных за один такт внешней шины данных — иными словами, на каждом такте внешней шины данных мы ожидаем получить не менее двух элементов данных (как всегда, разрядностью, равной разрядности внешней шины данных) при чтении, и обязаны предоставить микросхеме не менее двух элементов данных при записи. В то же время, вспоминаем, что внутренняя частота функционирования микросхем DDR2 составляет половину от частоты ее внешнего интерфейса. Таким образом, на один «внутренний» такт микросхемы памяти приходится два «внешних» такта, на каждый из которых, в свою очередь, приходится считывание/запись двух элементов. Следовательно, на каждый «внутренний» такт микросхемы памяти приходится считывание/запись сразу четырех элементов данных (отсюда и название — 4n-prefetch), т.е. все операции внутри микросхемы памяти осуществляются на уровне «4-элементных» блоков данных. Отсюда получаем, что минимальная величина длины пакета (BL) должна равняться 4. Можно доказать, что, в общем случае, архитектуре «2nn-prefetch» всегда соответствует минимальная величина Burst Length, равная 2n (n = 1 соответствует DDR; n = 2 — DDR2; n = 3 — грядущей DDR3).
Оперативная память является одним из важнейших элементов компьютера. Именно из нее процессор берет программы и исходные данные для обработки, в нее он записывает полученные результаты. Название “оперативная” эта память получила потому, что она работает очень быстро, так что процессору практически не приходится ждать при чтении данных из памяти или записи в память. Однако содержащиеся в ней данные сохраняются только пока компьютер включен.
Трудно недооценить все значение и всю важность этих небольших по своим размерам плат. Сегодняшние программы становятся все требовательнее не только к количеству, но и к быстродействию ОЗУ. Однако до недавнего времени эта область компьютерной индустрии практически не развивалась (по сравнению с другими направлениями). Взять хотя бы видео, аудиоподсистемы, производительность процессоров и. т.д. Усовершенствования были, но они не соответствовали темпам развития других компонентов и касались лишь таких параметров, как время выборки, был добавлен кэш непосредственно на модуль памяти, конвейерное исполнение запроса, изменен управляющий сигнал вывода данных, но технология производства оставалась прежней, исчерпавшей свой ресурс. Память становилась узким местом компьютера, а, как известно, быстродействие всей системы определяется быстродействием самого медленного ее элемента. И вот несколько лет назад волна технологического бума докатилась и до оперативной памяти. Стали появляться новые типы RAM микросхем и модулей. Встречаются такие понятия, как FPM RAM, EDO RAM, DRAM, VRAM, WRAM, SGRAM, MDRAM, SDRAM, SDRAM II (DDR SDRAM) , ESDRAM, SLDRAM, RDRAM, Concurrent RDRAM, Direct Rambus. Большинство из этих технологий используются лишь на графических платах, и в производстве системной памяти компьютера используются лишь некоторые из них.