Command rate 1t или 2t что лучше. Разгон — это просто: оперативная память. Тест с установками по умолчанию

Для Symbian 09.11.2021
Для Symbian

Особый интерес представляет возможность повысить производительность системы с помощью настройки работы памяти (другой часто используемый термин "твикинг" памяти, от tweaking). Соответствующее иследование мы провели на примере платы Abit KX7-333 , как имеющей один из самых богатых наборов различных настроек памяти доступных через BIOS.

В тестовой системе было использовано следующее оборудование:

  • Материнская плата Abit KX7-333;
  • 256 Мбайт PC2100 DDR SDRAM, производства Samsung;
  • Процессор AMD Athlon XP 1600+
  • Видеокарта MX440 на чипе NVidia GeForce4 64Mb (NVIDIA Detonator v28.32);
  • Звуковая карта Creative Live 5.1;
  • Жесткий диск IBM DTLA 307030 30Gb;
  • блок питания PowerMan 250W;
  • Операционная система Windows 2000 English SP1

Для демонстрации возможностей тонкой настройки памяти использовался тест Sisoft Sandra 2002 и игра Quake3 (производительность которой очень сильно зависит от пропускной способности памяти). Для большей наглядности я буду изменять каждый параметр отдельно и приводить значение производительности.

Тест с установками по умолчанию

Итак, начальные параметры:
  • CAS Latency = 2.5Т
  • Bank Interleave = Disable
  • DRAM Command Rate = 2T
  • Trp = 3T
  • Tras = 6T
  • Trcd = 3T
  • Частота FSBЧастота работы памяти = 133Мгерц133Мгерц
Тест Значение
Sandra (Int) 1907
Sandra (Float) 1776
Quake3 (Fastest) 218,1 fps

Bank Interleave - 2 Bank

Изменяем параметр Bank Interleave, устанавливаем значение 2 Bank. Вообще этот параметр предназначен для управления доступом к открытым банкам памяти. Возможные значения: None, 2 Bank, 4 Bank (иногда 2-Way/4-Way). Наиболее производительным является 4 Bank.

DRAM Command Rate - 1Т

Далее изменяем параметр DRAM Command Rate. Устанавливаем значение 1Т, при этом оставляем Bank Interleave равным 4 Bank. Параметр DRAM Command Rate появился еще в чипсете KT266. С его помощью мы можем вручную изменять задержки при передачи данных между чипсетом и памятью. Возможные значения 2T, 1T (наиболее быстрым является 1Т). Отметим, что это один из тех параметров, которые существенно влияют на производительность подсистемы памяти.

Тест Значение
Sandra (Int) 1965
Sandra (Float) 1864
Quake3 (Fastest) 235,0 fps

CAS Latency - 2Т

Следующим изменяем параметр CAS Latency. Устанавливаем значение 2Т, при этом остальные настройки не трогаем (т.е. Bank Interleave=4 Bank, DRAM Command Rate=1Т). CAS Latency - это то количество тактов, через которое память реагирует на запрос чтения. Чем меньше это значение, тем лучше. Возможные варианты: 2.5Т, 2Т. Наиболее важный, с точки зрения производительности, параметр работы памяти.

Тест Значение
Sandra (Int) 2024
Sandra (Float) 1901
Quake3 (Fastest) 239,7 fps

Итак, мы имеем оптимально настроенную подсистему памяти, с точки зрения стабильности и скорости. Однако, если Вы имеете качественную память, то изменяя параметры Trp (Precharge to Active), Tras (Active to precharge) и Trcd (Active to CMD), мы можем получить еще небольшую прибавку в скорости.

Trp =2T, Tras=5T и Trcd=2T

Модуль памяти 256 Мбайт PC2100 DDR SDRAM, производства Samsung, за все время тестирования (был куплен в январе этого года) зарекомендовал себя самым положительным образом. Поэтому я смело установил следующие значения: Trp =2T, Tras=5T и Trcd=2T (значения по умолчанию 3Т, 6Т и 3Т).

Тест Значение
Sandra (Int) 2039
Sandra (Float) 1906
Quake3 (Fastest) 245,0 fps

Итак, после тонкой настройки памяти прирост производительности составил ~7.5 процентов по тесту Sandra и более 12 процентов в игре Quake3!

DDR333 (PC2700)

А теперь давайте посмотрим, что может дать установка памяти в режим DDR333 (или PC2700). Тестовый модуль памяти смог заработать на такой частоте только на следующих таймингах:

  • CAS Latency = 2Т
  • Bank Interleave = 4 Bank
  • DRAM Command Rate = 1T
  • Trp = 3T
  • Tras = 6T
  • Trcd = 3T
  • Частота FSB Частота работы памяти = 133Мгерц 166 Мгерц
Тест Значение
Sandra (Int) 2052
Sandra (Float) 1932
Quake3 (Fastest) 255,1 fps

Сводная таблица

Для более удобного восприятия этой информации, я оформлю результаты в виде таблицы:

No Частота
FSB MEM
(Мгерц)
Тайминги Sandra Quake3 (fps) Прирост в Q3(%) Частота
процеcсора
(рейтинг)
1 133133 Dis, 2T, 2.5T-3T-6T-3T 1907 / 1776 218,1 - XP 1600+
2 133133 2 Bank, 2T, 2.5T-3T-6T-3T 1911 / 1791 222,9 2,2 XP 1600+
3 133133 4 Bank, 2T, 2.5T-3T-6T-3T 1925 / 1806 227,3 4,2 XP 1600+
4 133133 4 Bank, 1T, 2.5T-3T-6T-3T 1965 / 1864 235,0 7,7 XP 1600+
5 133133 4 Bank, 1T, 2T-3T-6T-3T 2024 / 1901 239,7 9,9 XP 1600+
6 133133 4 Bank, 1T, 2T-2T-5T-2T 2039 / 1906 245,0 12,3 XP 1600+
7 133166 4 Bank, 1T, 2T-3T-6T-3T 2052 / 1932 255,1 16,9 XP 1600+
8 166166 4 Bank, 1T, 2T-3T-6T-3T 2426 / 2272 307,2 40,8 XP 2100+

Выводы

Стандартными настройками являются следующие параметры:

  • CAS Latency = 2Т
  • Bank Interleave = 4 Bank
  • DRAM Command Rate = 1T
  • Trp = 3T
  • Tras = 6T
  • Trcd = 3T

Поэтому конфигурации с 1 по 4 интересны только с теоретической точки зрения. Правда иногда неопытные сборщики не выставляют правильные параметры, и пользователь теряет значительную часть производительности. В другом случае, попытка сэкономить деньги на качестве оперативной памяти так же приводит к потере до 5-10% производительности. Причем это очень большие цифры; для примера разница в 5-10 fps в тесте Quake3 (Fastest), это разница между процессорами XP1600+ и XP1700+ (разница в рейтинге 100, в реальной частоте процессора - 66Mhz).

Обратите внимание на разницу в производительности 5 и 7 конфигурации, она приблизительно равна 6.5%. Это приблизительный прирост производительности при переходе на DDR333 (пример: апгрейд с KT266A на KT333).

Обращаем внимание на последнюю строчку - на показатели теста Sandra. Вот какой значительный прирост производительности можно получить, установив синхронный режим работы процессора и памяти (166 и 166 Mhz). Показатели теста Quake3 здесь беcполезны, так как процессор разогнан с 1400 до 1750 Mhz.

В этом режиме отсутствуют задержки при согласовании сигналов и, начиная с частоты 166 Мгерц, используется делитель 1/5 для частоты PCI (2/5 для AGP), что автоматически означает работу контроллера жестких дисков на стандартной частоте PСI (33 Mhz).

Естественно, весь этот материал имеет ценность только для компьютерного энтузиаста, цель которого - выжать максимум из имеющегося в наличии железа. А для большинства обычных пользователей, я думаю, вполне достаточно знать то, что можно установить все тайминги в значения, определенные производителем памяти. Для этого предназначен параметр "DRAM Timing". Возможные значения: "Manual" - параметры устанавливаются вручную, "By SPD" - устанавливаются по умолчанию (SPD = Serial Presence Detect). Конечно, производители памяти немного подстраховываются и несколько завышают тайминги работы. В результате производительность несколько меньше, чем при ручной установке параметров.

Как может заметить читатель, я изменял не все имеющиеся в нашем распоряжении параметры. А параметров работы памяти у платы Abit KX7-333 наибольшее количество (больше чем у плат Epox). Скажу следующее - все рассмотренные параметры есть практически в каждой плате среднего и высшего класса, этакий "джентльменский набор". Другие параметры (за исключением Queue Depth) - это довольно специфические параметры, которые слабо влияют на производительность, но иногда очень полезные для улучшения стабильности работы памяти разных производителей (есть даже такие тонкости) и работы в разных конфигурациях модулей памяти.

И последнее. Для достижения стабильной работы при агрессивных (низких) таймингах очень полезно повышать напряжение на памяти (Vmem). Правда, при этом повышается тепловыделение, но для предотвращения перегрева можно использовать радиаторы для памяти.

Оверклокеру важно помнить и то, что очень часто препятствием для разгона становится неспособность памяти работать на высоких частотах. Поэтому, иногда есть смысл повысить тайминги памяти (производительность чуть упадет), но за счет этого появляется возможность достигнуть более высоких частот FSB (возросшая частота процессора даст куда большую прибавку производительности).

Те, кто увлекаются оптимизацией работы компьютера по средствам настройки BIOS наверняка слышали о такой опции как Command rate. В некоторых модификациях BIOS она может называться DRAM Command rate. Из возможных значений, которые она может принимать значатся 1 (1T), 2 (2T) и Auto.

Довольно популярным вопросом является установка оптимального значения для Command rate. И чтобы ответить на него нужно разобраться в природе данного параметра.

За что отвечает DRAM Command rate?

Дело в том, что операционная система компьютера работает с оперативной памятью не напрямую. Чтение и запись данных ОЗУ осуществляется через контроллер памяти. Так как операционная система передает контролеру памяти не физический адрес, а виртуальный, последнему требуется время для преобразования виртуального адреса в физический. Так вот опция Command rate определяет интервал задержки в 1 (1T) или 2 (2T) такта для проведения контроллером этой конвертации.

Что лучше 1T или 2T?

Размышляя логически, можно прийти к выводу, что чем меньше задержка (время ожидания), тем больший объем данных можно обработать за одну и ту же единицу времени. То есть значение в 1T (такт) является наиболее оптимальным с точки зрения скорости работы памяти и компьютера в целом. Но вся загвоздка в том, что далеко не каждый модуль ОЗУ и контроллер памяти может работать стабильно с таким малым временем ожидания, как 1 такт. Возможны ошибки и потеря данных. Как следствие — нестабильная работа ПК, синие экраны смерти и так далее.

Для того, чтобы правильно принять решение об установке значения опции Command rate в BIOS, нужно изучить технические характеристики материнской платы и модулей памяти, установленные в каждом конкретном случае, на предмет поддержки работы в режиме задержки 1 такт.

На свой страх и риск можно попробовать установить значение 1T и посмотреть как будет работать компьютер. При появлении ошибок и сбоев DRAM Command rate нужно будет вернуть к значению 2T.

При значении в 2 такта память будет работать медленнее, стабильнее и с минимальным риском возникновения ошибок.

Также возможным значением для данной опции может быть AUTO. В этом случае BIOS сам установит оптимальное значение, сходя из параметров модуля памяти.

Значение AUTO позволяет компьютеру автоматически подобрать время задержки

Мы уже рассказывали о том, как разгонять процессоры и видеокарты. Еще один компонент, достаточно ощутимо влияющий на производительность отдельно взятого компьютера, - оперативная память. Форсирование и тонкая настройка режима работы ОЗУ позволяют повысить быстродействие ПК в среднем на 5-10%. Если подобный прирост достигается без каких-либо денежных вложений и не влечет риски для стабильности системы - почему бы не попробовать? Однако начав готовить данный материал, мы пришли к выводам о том, что описания собственно процесса разгона будет недостаточно. Понять, почему и для чего надо изменять определенные настройки работы модулей, можно, лишь вникнув в суть работы подсистемы памяти компьютера. Потому в первой части материала мы кратко рассмотрим общие принципы функционирования ОЗУ. Во второй приведены основные советы, которых следует придерживаться начинающим оверклокерам при разгоне подсистемы памяти.

Основные принципы функционирования оперативной памяти одинаковы для модулей разных типов. Ведущий разработчик стандартов полупроводниковой индустрии JEDEC предоставляет возможность каждому желающему ознакомиться с открытыми документами, посвященными этой тематике. Мы же постараемся кратко объяснить базовые понятия.

Итак, оперативная память - это матрица, состоящая из массивов, именуемых банками памяти. Они формируют так называемые информационные страницы. Банк памяти напоминает таблицу, каждая ячейка которой имеет координаты по вертикали (Column) и горизонтали (Row). Ячейки памяти представляют собой конденсаторы, способные накапливать электрический заряд. С помощью специальных усилителей аналоговые сигналы переводятся в цифровые, которые в свою очередь образуют данные. Сигнальные цепи модулей обеспечивают подзарядку конденсаторов и запись/считывание информации.

Алгоритм работы динамической памяти можно описать такой последовательностью:

  1. Выбирается чип, с которым будет осуществляться работа (команда Chip Select, CS). Электрическим сигналом проводится активация выбранной строки (Row Activate Selection). Данные попадают на усилители и могут быть считаны определенное время. Эта операция в англоязычной литературе называется Activate.
  2. Данные считываются из соответствующей колонки/записываются в нее (операции Read/Write). Выбор колонок проводится командой CAS (Column Activate Selection).
  3. Пока строка, на которую подан сигнал, остается активной, возможно считывание/запись соответствующих ей ячеек памяти.
  4. При чтении данных - зарядов конденсаторов - их емкость теряется, поэтому требуется подзарядка или закрытие строки с записью информации в массив памяти (Precharge).
  5. Конденсаторы-ячейки со временем теряют свою емкость и требуют постоянной подзарядки. Эта операция - Refresh - выполняется регулярно через отдельные промежутки (64 мс) для каждой строки массива памяти.

На выполнение операций, происходящих внутри оперативной памяти, уходит некоторое время. Именно его и принято называть таким знакомым словом «тайминги» (от англ. time). Следовательно, тайминги - временные промежутки, необходимые для выполнения тех или иных операций, осуществляющихся в работе ОЗУ.

Схема таймингов, указываемых на стикерах модулей памяти, включает в себя лишь основные задержки CL-tRCD-tRP-tRAS (CAS Latency, RAS to CAS Delay, RAS Precharge и Cycle Time (или Active to Precharge)). Все остальные, в меньшей мере оказывающие влияние на скорость работы ОЗУ, принято называть субтаймингами, дополнительными или второстепенными таймингами.

Приводим расшифровку основных задержек, возникающих при функционировании модулей памяти:

CAS Latency (CL) - пожалуй, самый важный параметр. Определяет минимальное время между подачей команды на чтение (CAS) и началом передачи данных (задержка чтения).

RAS to CAS Delay (tRCD) определяет интервал времени между подачей команд RAS и CAS. Обозначает число тактов, необходимых для поступления данных в усилитель.

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

Row Active Time (tRAS) - временной промежуток, на протяжении которого банк остается открытым и не требует перезарядки.

Command Rate 1/2T (CR) - время, необходимое для декодирования контроллером команд и адресов. При значении 1T команда распознается за один такт, при 2T - за два.

Bank Cycle Time (tRC, tRAS/tRC) - время полного такта доступа к банку памяти, начиная с открытия и заканчивая закрытием. Изменяется вместе с tRAS.

DRAM Idle Timer - время простоя открытой информационной страницы для чтения данных с нее.

Row to Column (Read/Write) (tRCD, tRCDWr, tRCDRd) напрямую связан с параметром RAS to CAS Delay (tRCD). Вычисляется по формуле tRCD(Wr/Rd) = RAS to CAS Delay + Rd/Wr Command Delay. Второе слагаемое - величина нерегулируемая, определяет задержку на выполнение записи/чтения данных.

Пожалуй, это базовый набор таймингов, зачастую доступный для изменения в BIOS материнских плат. Расшифровку остальных задержек, как и детальное описание принципов работы и определение влияния тех или иных параметров на функционирование ОЗУ можно найти в спецификациях уже упомянутой нами JEDEC, а также в открытых datasheet производителей наборов системной логики.

Таблица соответствия реальной, эффективной частоты работы и рейтинга разных типов ОЗУ
Тип памяти Рейтинг Реальная частота
работы памяти, МГц
Эффективная частота
работы памяти
(DDR, Double Data Rate), МГц
DDR PC 2100 133 266
PC 2700 167 333
PC 3200 200 400
ЗС 3500 217 434
PC 4000 250 500
PC 4300 266 533
DDR2 PC2 4300 266 533
PC2 5400 333 667
PC2 6400 400 800
PC2 8000 500 1000
PC2 8500 533 1066
PC2 9600 600 1200
PC2 10 400 650 1300
DDR3 PC3 8500 533 1066
PC3 10 600 617,5 1333
PC3 11 000 687,5 1375
PC3 12 800 800 1600
PC3 13 000 812,5 1625
PC3 14 400 900 1800
PC3 15 000 933 1866
Отметим, что числовое обозначение рейтинга в данном случае согласно спецификациям JEDEC указывает на скорость в миллионах передач в секунду через один вывод данных.
Что касается быстродействия и условных обозначений, то вместо эффективной частоты работы правильнее говорить, что скорость передачи данных в два раза больше тактовой частоты модуля (данные передаются по двум фронтам сигналов тактового генератора).

Объяснение одного из таймингов tRP (Read to Precharge, RAS Precharge) с помощью типичной схемы в datasheet от JEDEC. Расшифровка подписей: CK и CK - тактовые сигналы передачи данных, инвертированные один относительно другого (Differential Clock); COMMAND - команды, поступающие на ячейки памяти; READ - операция чтения; NOP - команды отсутствуют; PRE - подзарядка конденсаторов - ячеек памяти; ACT - операция активации строки; ADDRESS - адресация данных к банкам памяти; DQS - шина данных (Data Strobe); DQ - шина ввода-вывода данных (Data Bus: Input/Output); CL - CAS Latency в данном случае равен двум тактам; DO n - считывание данных со строки n. Один такт - временной промежуток, необходимый для возврата сигналов передачи данных CK и CK в начальное положение, зафиксированное в определенный момент.


Упрощенная блок-схема, объясняющая основы работы памяти стандарта DDR2. Она создана с целью демонстрации возможных состояний транзисторов и команд, которые их контролируют. Как видите, чтобы разобраться в столь «простой» схеме, потребуется не один час изучения основ работы ОЗУ (мы уже не говорим о понимании всех процессов, происходящих внутри чипов памяти).

Основы разгона оперативной памяти

Быстродействие ОЗУ в первую очередь определяют два показателя: частота работы и тайминги. Какой из них окажет большее влияние на производительность ПК, следует выяснять индивидуально, однако для разгона подсистемы памяти нужно использовать оба пути. На что же способны ваши модули? С достаточно высокой долей вероятности поведение плашек можно спрогнозировать, определив названия используемых в них чипов. Наиболее удачные оверклокерские микросхемы стандарта DDR - Samsung TCCD, UCCC, Winbond BH-5, CH-5; DDR2 - Micron D9xxx; DDR3 - Micron D9GTR. Впрочем, итоговые результаты будут зависеть и от типа РСВ, системы, в которой установлены модули, умения владельца разгонять память и просто от удачи при выборе экземпляров.

Пожалуй, первый шаг, который делают новички, - повышение рабочей частоты ОЗУ. Она всегда привязана к FSB процессора и выставляется с помощью так называемых делителей в BIOS платы. Последние могут выражаться в дробном виде (1:1, 1:1,5), в процентном выражении (50%, 75%, 120%), в режимах работы (DDR-333, DDR2-667). При разгоне процессора путем увеличения FSB автоматически возрастает частота работы памяти. К примеру, если мы использовали повышающий делитель 1:1,5, то при изменении частоты шины с 333 до 400 МГц (типично для форсирования Core 2 Duo) частота памяти поднимется с 500 МГц (333×1,5) до 600 МГц (400×1,5). Поэтому, форсируя ПК, следите, не является ли камнем преткновения предел стабильной работы оперативной памяти.

Следующий шаг - подбор основных, а затем дополнительных таймингов. Их можно выставлять в BIOS материнской платы или же изменять специализированными утилитами на лету в ОС. Пожалуй, самая универсальная программа - MemSet, однако владельцам систем на базе процессоров AMD Athlon 64 (K8) очень пригодится A64Tweaker. Прирост производительности можно получить лишь путем понижения задержек: в первую очередь CAS Latency (CL), а затем RAS to CAS Delay (tRCD), RAS Precharge (tRP) и Active to Precharge (tRAS). Именно их в сокращенном виде CL4-5-4-12 указывают изготовители модулей памяти на стикерах продуктов. Уже после настройки основных таймингов можно переходить к понижению дополнительных.

Компоновка модулей памяти

Модули стандартов: a) DDR2; b) DDR; c) SD-RAM.

  1. Чипы (микросхемы) памяти. Комбинация «чипы + РСВ» определяет объем, количество банков, тип модулей (с коррекцией ошибок или без).
  2. SPD (Serial Presence Detect) - микросхема энергонезависимой памяти, в которую записаны базовые настройки любого модуля. Во время старта системы BIOS материнской платы считывает информацию, отображенную в SPD, и выставляет соответствующие тайминги и частоту работы ОЗУ.
  3. «Ключ» — специальная прорезь платы, по которой можно определить тип модуля. Механически препятствует неверной установке плашек в слоты, предназначенные для оперативной памяти.
  4. smd-компоненты модулей (резисторы, конденсаторы). Обеспечивают электрическую развязку сигнальных цепей и управление питанием чипов.
  5. На стикерах производители обязательно указывают стандарт памяти, штатную частоту работы и базовые тайминги.
  6. РСВ - печатная плата. На ней распаиваются остальные компоненты модуля. От качества РСВ зачастую зависит результат разгона: на разных платах одинаковые чипы могут вести себя по-разному.

На результаты разгона оперативной памяти значительное влияние оказывает увеличение напряжения питания плашек. Безопасный для длительной эксплуатации предел зачастую превышает заявленные производителями значения на 10-20%, однако в каждом случае подбирается индивидуально с учетом специфики чипов. Для наиболее распространенной DDR2 рабочее напряжение зачастую равно 1,8 В. Его без особого риска можно поднять до 2-2,1 В при условии, что это влечет за собой улучшение результатов разгона. Впрочем, для оверклокерских модулей, использующих чипы Micron D9, производители заявляют штатное напряжение питания на уровне 2,3-2,4 В. Превышать эти значения рекомендуется только для кратковременных бенчинг-сессий, когда важен каждый дополнительный мегагерц частоты. Отметим, что при длительной эксплуатации памяти при напряжениях питания, отличающихся от безопасных для используемых чипов значений, возможна так называемая деградация модулей ОЗУ. Под этим термином понимают снижение разгонного потенциала модулей со временем (вплоть до неспособности работать в штатных режимах) и полного выхода плашек из строя. На деградационные процессы особо не влияет качество охлаждения модулей - даже холодные чипы могут быть им подвержены. Конечно, есть и примеры длительного успешного использования ОЗУ при высоких напряжениях, но помните: все операции при форсировании системы вы проводите на свой страх и риск. Не переусердствуйте.

Прирост производительности современных ПК можно получить, используя преимущества двухканального режима (Dual Channel). Это достигается за счет увеличения ширины канала обмена данными и роста теоретической пропускной способности подсистемы памяти. Такой вариант не требует специальных знаний, навыков и тонкой настройки режимов работы ОЗУ. Для активации Dual Channel достаточно иметь два или четыре модуля одинакового объема (при этом необязательно использовать полностью идентичные плашки). Двухканальный режим включается автоматически после установки ОЗУ в соответствующие слоты материнской платы.

Все описанные манипуляции приводят к увеличению быстродействия подсистемы памяти, однако заметить прирост невооруженным глазом зачастую сложно. При хорошей настройке и ощутимом повышении частоты работы модулей можно рассчитывать на прибавку производительности порядка 10-15%. Среднестатистические показатели более низкие. Стоит ли овчинка выделки и нужно ли тратить время на игры с настройками? Если хотите детально изучить повадки ПК - почему бы и нет?

ЕРР и XMP - разгон ОЗУ для ленивых

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

В отношении ОЗУ все началось с технологии Enhanced Performance Profiles (EPP), представленной NVIDIA и Corsair. Материнские платы на базе nForce 680i SLI первыми предоставили максимальную функциональность в плане настройки подсистемы памяти. Суть ЕРР довольно проста: производители ОЗУ подбирают гарантированные нестандартные скоростные режимы функционирования собственных продуктов, а разработчики системных плат предоставляют возможность их активировать через BIOS. EPP - расширенный перечень настроек модулей, дополняющий базовый набор. Существует две версии ЕРР - сокращенная и полная (два и одиннадцать резервных пунктов соответственно).

Параметр Возможные значения для ЕРР Поддерживается
JEDEC SPD Сокращенный профиль ЕРР Полный профиль ЕРР
CAS Latency 2, 3, 4, 5, 6 Да Да Да
Minimum Cycle time at Supported CAS JEDEC + 1,875 нс (DDR2-1066) Да Да Да
Minimum RAS to CAS Delay (tRCD) JEDEC* Да Да Да
Minimum Row Precharge Time (tRP) JEDEC* Да Да Да
Minimum Active to Precharge Time (tRAS) JEDEC* Да Да Да
Write Recovery Time (tWR) JEDEC* Да Да Да
Minimum Active to Active/Refresh Time (tRC) JEDEC* Да Да Да
Voltage Level 1,8-2,5 В - Да Да
Address Command Rate 1Т, 2Т - Да Да
Address Drive Strenght 1.0х, 1.25х, 1.5х, 2.0х - - Да
Chip Select Drive Strenght 1.0х, 1.25х, 1.5х, 2.0х - - Да
Clock Drive Strenght 0.75х, 1.0х, 1.25х, 1.5х - - Да
Data Drive Strenght 0.75х, 1.0х, 1.25х, 1.5х - - Да
DQS Drive Strenght 0.75х, 1.0х, 1.25х, 1.5х - - Да
Address/ Command Fine Delay 0, 1/64, 2/64, 3/64 MEMCLK - - Да
Address/ Command Setup Time 1/2, 1 MEMCLK - - Да
Chip Select Delay 0, 1/64, 2/64, 3/64 MEMCLK - - Да
Chip Select Setup Time 1/2, 1 MEMCLK - - Да
* Диапазон значений соответствует требованиям, определенным JEDEC для модулей DDR2
Расширенные профили ЕРР позволяют автоматически управлять ощутимо большим количеством задержек модулей стандарта DDR2, чем базовый набор, сертифицированный JEDEC.

Дальнейшее развитие данной темы - концепция Xtreme Memory Profiles (ХМР), представленная компанией Intel. По своей сути данное новшество не отличается от ЕРР: расширенный набор настроек для ОЗУ, гарантированные производителями скоростные режимы записаны в SPD планок и при необходимости активируются в BIOS платы. Поскольку Xtreme Memory Profiles и Enhanced Performance Profiles предоставлены разными разработчиками, модули сертифицируются под их собственные наборы системной логики (на чипсетах NVIDIA или Intel). XMP, как более поздний стандарт, относится только к DDR3.

Безусловно, несложные в активации резервов ОЗУ технологии EPP и XMP пригодятся новичкам. Однако позволят ли производители модулей просто так выжать максимум из своих продуктов? Хотите еще больше? Тогда нам по пути - будем глубже вникать в суть повышения быстродействия подсистемы памяти.

Итоги

В небольшом материале сложно раскрыть все аспекты работы модулей, принципы функционирования динамической памяти вообще, показать, насколько повлияет изменение одной из настроек ОЗУ на общую производительность системы. Однако надеемся, что начало положено: тем, кто заинтересовался теоретическими вопросами, настоятельно рекомендуем изучить материалы JEDEC. Они доступны каждому желающему. На практике же опыт традиционно приходит со временем. Одна из главных целей материала - объяснение новичкам основ разгона подсистемы памяти.

Тонкая настройка работы модулей - дело довольно хлопотное, и если вам не нужна максимальная производительность, если каждый балл в тестовом приложении не решает судьбу рекорда, можно ограничиться привязкой к частоте и основным таймингам. Существенное влияние на быстродействие оказывает параметр CAS Latency (CL). Выделим также RAS to CAS Delay (tRCD), RAS Precharge (tRP) и Cycle Time (или Active to Precharge) (tRAS) - это базовый набор, основные тайминги, всегда указываемые производителями. Обратите внимание и на опцию Command Rate (наиболее актуально для владельцев современных плат на чипсетах NVIDIA). Впрочем, не стоит забывать о балансе характеристик. Системы, использующие неодинаковые контроллеры памяти, по-разному могут реагировать на изменения параметров. Разгоняя ОЗУ, следует придерживаться общей схемы: максимальный разгон процессора при пониженной частоте модулей → предельный разгон памяти по частоте с наихудшими задержками (изменением делителей) → снижение таймингов при сохранении достигнутых частотных показателей.

Просмотр содержимого SPD-модуля памяти с поддержкой Еnhanced Рerformance Рrofiles с помощью утилиты CPU-Z. Видно, что в ЕРР #1 прописан скоростной режим, позволяющий раскрыть потенциал ОЗУ. Текущие частота работы и задержки подсистемы памяти. Программа CPU-Z позволяет оперативно определить данные настройки и отслеживать их в режиме реального времени (полезно, если вы меняете задержки, находясь в ОС).

Дальше - тестирование производительности (не ограничивайтесь лишь синтетическими приложениями!), затем новая процедура разгона модулей. Установите значения основных таймингов меньше на порядок (скажем, 4-4-4-12 вместо 5-5-5-15), с помощью делителей подберите максимальную частоту в таких условиях и протестируйте ПК заново. Таким образом возможно определить, что больше всего «по душе» вашему компьютеру - высокая частота работы или низкие задержки модулей. После чего переходите к тонкой настройке подсистемы памяти, поиску минимальных значений для субтаймингов, доступных для корректировки. Желаем удачи в этом нелегком деле!

Наиболее точное определение таймингов (в т.ч. подтаймингов) - вот то о чем пойдёт речь в статье. Большинство статей в сети обладают ошибками и неточностями. Есть очень достойные материалы - статья Enot "Немного о работе DDR SDRAM и параметре Tras" . Единственный её минус - рассмотрены не все тайминги.


Для того чтобы начать изучение вопросов, посвящённых таймингам, следует узнать, как же, собственно, работает оперативная память. Ознакомиться с принципом я предлагаю в вышеупомянутой статье Enot. Выясним, что структура памяти напоминает таблицу, где сначала выбирают строку, а затем столбец; и что таблица эта разбита на банки, для памяти плотностью меньше 64Мбит (SDRAM) количеством 2 штуки, выше - 4 (стандартно). Спецификация память DDR2 SDRAM с чипами плотностью 1Гбит предусматривает уже 8 банков.
Также стоит упомянуть, что на открытие строки в используемом банке уходит больше времени, нежели в другом (т.к. используемую строку нужно сначала закрыть). Очевидно, что лучше новую строку открывать в новом банке (на этом основан принцип чередования строк).
Обычно на памяти (или в спецификации к ней) есть надпись вида 3-4-4-8 или 5-5-5-15. Это сокращённая запись (так называемая схема таймингов) основных таймингов памяти. Что же такое тайминги? Очевидно, что ни одно устройство не может работать с бесконечной скоростью. Значит, на выполнение любой операции уходит какое-либо время. Тайминги это задержка, устанавливающая время, необходимое на выполнение какой-либо команды, то есть время от отправки команды до её выполнения. А каждая цифра обозначает, какое именно время необходимо.
Теперь разберём каждый по очереди. Схема таймингов включает в себя задержки CL - Trcd -Trp -Tras соответственно.
Если вы внимательно читали статью, то узнали, что для работы с памятью необходимо для начала выбрать чип, с которым мы будем работать. Делается это командой CS # (Chip Select) . Затем выбирается банк и строка. Перед началом работы с любой строкой необходимо её активировать. Делается это командой выбора строки RAS # (при выборе строки она активируется). Затем (при операции линейного чтения) нужно выбрать строку командой CAS # (эта же команда инициирует чтение). Затем считать данные и закрыть строку, совершив предварительный заряд (precharge) банка.
Тайминги расположены по порядку следования в простейшем запросе (для простоты понимания). Сначала идут тайминги, затем подтайминги.
Trcd , RAS to CAS delay - время, необходимое для активизации строки банка, или минимальное время между подачей сигнала на выбор строки (RAS #) и сигнала на выбор столбца (CAS #).
CL, Cas Latency - минимальное время между подачей команды на чтение (CAS) и началом передачи данных (задержка чтения).
Tras, Active to Precharge - минимальное время активности строки, то есть минимальное время между активацией строки (её открытием) и подачей команды на предзаряд (начало закрытия строки). Строка не может быть закрыта раньше этого времени.
Trp, Row Precharge - время, необходимое для предварительного заряда банка (precharge). Иными словами, минимальное время закрытия строки, после чего можно активировать новую строку банка.
CR, Command Rate 1T/2T - Время, необходимое для декодирования контроллером команд и адресов. Иначе, минимальное время между подачей двух команд. При значении 1T команда распознаётся 1 такт, при 2T - 2 такта, 3T - 3 такта (пока только на RD 600).
Это всё основные тайминги. Остальные тайминги имеют меньшее влияние на производительность, а потому их называют подтаймингами.
Trc , Row Cycle Time, Activate to Activate/Refresh Time, Active to Active/Auto Refresh Time - минимальное время между активацией строк одного банка. Является комбинацией таймингов Tras + Trp - минимального времени активности строки и времени её закрытия (после чего можно открывать новую).
Trfc , Row Refresh Cycle Time, Auto Refresh Row Cycle Time, Refresh to Activate/Refresh Command Period, - минимальное время между командой на обновление строки и командой активизации, либо другой командой обновления.
Trrd , ACTIVE bank A to ACTIVE bank B command, RAS to RAS Delay, Row Active to Row Active - минимальное время между активацией строк разных банков. Архитектурно открывать строку в другом банке можно сразу за открытием строки в первом банке. Ограничение же чисто электрическое - на активацию уходит много энергии, а потому при частых активациях строк очень высока электрическая нагрузка на цепи. Чтобы её снизить, была введена данная задержка. Используется для реализации функции чередования доступа к памяти (interleaving).
Tccd , CAS to CAS Delay - минимальное время между двумя командами CAS #.
WR , Write Recovery, Write to Precharge - минимальное время между окончанием операции записи и подачей команды на предзаряд (Precharge) строки для одного банка.
WTR , Trd_wr, Write To Read - минимальное время между окончанием записи и подачей команды на чтение (CAS #) в одном ранке.
RTW , Read To Write - минимальное время между окончанием операции чтения и подачей команды на запись, в одном ранке.
Same Rank Write To Write delay - минимальное время между двумя командами на запись в одном ранке.
Different Rank Write to Write Delay - минимальное время между двумя командами на запись в разных ранках.
Twr_rd , Different Ranks Write To READ Delay - минимальное время между окончанием записи и подачей команды на чтение (CAS #) в разных ранках.
Same Rank Read To Read Delay - минимальная задержка между двумя командами на чтение в одном ранке.
Trd_rd , Different Ranks Read To Read Delay - минимальная задержка между двумя командами на чтение в разных ранках.
Trtp , Read to Precharge - минимальный интервал между подачей команды на чтение до команды на предварительный заряд.
Precharge to Precharge - минимальное время между двумя командами предварительного заряда.
Tpall_rp , Precharge All to Active Delay - задержка между командой Precharge All и командой на активацию строки.
Same Rank PALL to REF delay - устанавливает минимальное время между командой Precharge All и Refresh в одном ранке.
Different Rank REF to REF delay - устанавливает минимальную задержку между двумя командами на обновление (refresh) в разных ранках.
WL , Write Latency - задержка между подачей команды на запись и сигналом DQS. Аналог CL, но для записи.
Tdal , цитата из JEDEC 79-2C, p.74: auto precharge write recovery + precharge time (Twr+Trp).
Trcd_rd/Trcd_wr , Activate to Read/Write, RAS to CAS Read/Write Delay, RAW Address to Column Address for Read/Write - сочетание двух таймингов - Trcd (RAS to CAS) и rd/wr command delay. Именно последним и объясняется существование разных Trcd - для записи и чтения (Nf 2) и установки BIOS - Fast Ras to Cas .
Tck , Clock Cycle Time - период одного такта. Именно он и определяет частоту памяти. Считается она следующим образом: 1000/Tck = X Mhz (реальная частота) .
CS , Chip Select - время, необходимое на выполнения команды, подаваемой сигналом CS # для выбора нужного чипа памяти.
Tac , DQ output access time from CK - время от фронта такта до выдачи данных модулем.
Address and Command Setup Time Before Clock , время, на которое передача установок адресов команд будет предшествовать восходящему фронту такта.
Address and Command Hold Time After Clock , время, на которое будут "заперты" установки адреса и команд после нисходящего фронта такта.
Data Input Setup Time Before Clock, Data Input Hold Time After Clock , то же, что и вышеуказанные, но для данных.
Tck max , SDRAM Device Maximum Cycle Time - максимальный период цикла устройства.
Tdqsq max , DDR SDRAM Device DQS - DQ Skew for DQS and associated DQ signals - максимальный сдвиг между стробом DQS и связанными с ним сигналами данных.
Tqhs , DDR SDRAM Device Read Data Hold Skew Factor - максимальный сдвиг "запирания" считанных данных.
Tch, Tcl , CK high / low pulse width - длительность высокого/низкого уровня тактовой частоты CK .
Thp , CK half pulse width - длительность полупериода тактовой частоты CK .
Max Async Latency - максимальное время асинхронной задержки. Параметр управляет длительностью асинхронной задержки, зависящей от времени, необходимого для передачи сигнала от контроллера памяти до самого дальнего модуля памяти и обратно. Опция существует в процессорах фирмы AMD (Athlon\Opteron).
DRAM Read Latch Delay - задержка, устанавливающая время, необходимое для "запирания" (однозначного распознавания) конкретного устройства. Актуально при повышении нагрузки (числа устройств) на контроллер памяти.
Trpre , Read preamble - время, в течение которого контроллер памяти откладывает активацию приёма данных перед чтением, во избежание повреждения данных.
Trpst, Twpre, Twpst , Write preamble, read postamble, write postamble - то же для записи и после приёма данных.
Read\write Queue Bypass - определяет число раз, которое самый ранний запрос в очереди может быть обойден контроллером памяти, прежде чем быть выполненным.
Bypass Max - определяет, сколько раз самая ранняя запись в DCQ может быть обойдена, прежде чем выбор арбитра будет аннулирован. При установке в 0 выбор арбитра всегда учитывается.
SDRAM MA Wait State , Read Wait State установка 0-2-тактного опережения адресной информации перед подачей сигнала CS#.
Turn-Around Insertion - задержка между циклами. Добавляет задержку в такт между двумя последовательными операциями чтения/записи.
DRAM R/W Leadoff Timing , rd / wr command delay - задержка перед выполнением команды чтения/записи. Обычно составляет 8/7 или 7/5 тактов соответственно. Время от подачи команды до активации банка.
Speculative Leadoff , SDRAM Speculative Read. Обычно в память поступает сначала адрес, затем команда на чтение. Поскольку на расшифровку адреса уходит относительно много времени, можно применить упреждающий старт, подав адрес и команду подряд, без задержки, что повысит эффективность использования шины и снизит простои.
Twtr Same Bank , Write to Read Turnaround Time for Same Bank - время между прекращением операции записи и подачей команды на чтение в одном банке.
Tfaw , Four Active Windows - минимальное время активности четырех окон (активных строк). Применяется в восьмибанковых устройствах.
Strobe Latency . Задержка при посылке строб-импульса (селекторного импульса).
Memory Refresh Rate . Частота обновления памяти.
Также хотелось бы упомянуть о самом главном вопросе - вопросе об источниках. Именно от его качества и зависит то, насколько точным будет материал. Утверждением всех стандартов оперативной памяти занимается организация JEDEC, поэтому вопрос о компетентности снимается. Исключением являются последние материалы (Intel, Dron "t), обладающие рядом неточностей и опечаток, которые использовались как вспомогательные.
Использованные материалы:
1. DDR SDRAM " JEDEC SOLID STATE TECHNOLOGY ASSOCIATION JESD79E May 2005 Double Data Rate (DDR) SDRAM Specification (Revision of JESD79D) "
2. DDR2 SDRAM SPECIFICATION JEDEC SOLID STATE TECHNOLOGY ASSOCIATION JESD79-2C (Revision of JESD79-2B) MAY 2006
3. 4_01_02_04R13 Appendix D, Rev. 1.0: SPD"s for DDR SDRAM
4. Intel® 965 Express Chipset Family Datasheet
5. Статья Dron"t

Другие идентичные названия опции: DRAM 1T/2T Command, SDRAM Command Rate.

DRAM Command Rate - это так называемый командный тайминг, функция задержки между этапами работы контроллера DRAM (микросхемы, которая управляет памятью). составляют отдельную настраиваемую группу опций BIOS. В этой статье мы попробуем разобраться, какое значение данной функции является оптимальным и почему.

Для наилучшего понимания смысла рассматриваемой опции необходимо проследить процесс чтения данных из памяти. Изначальный запрос на чтение информации, посылаемый операционной системой контроллеру памяти, не содержит в себе точных «координат», уникального физического адреса запрашиваемых данных. Система передает лишь условное обозначение, виртуальный адрес, с которым начинает работать контроллер памяти, преобразуя его в физический адрес. В то же самое время контроллер выполняет активацию банка памяти, содержащего необходимую системе информацию. Это происходит через присвоение сигнала этому банку с помощью команды Chip Select. Результатом конвертации или декодирования виртуального адреса является необходимый физический адрес данных; после его получения контроллер приступает к выполнению команд чтения.

То есть, проще говоря, вместо немедленной инициализации операции чтения контроллер задерживается для проведения конвертации адресов. Интервал тайминга прямо пропорционален объему обрабатываемой памяти и количеству ее банков. Соответственно, при увеличении «объема работ» контроллеру для проведения данной операции потребуется больше времени.

Тайминг BIOS DRAM Command Rate предоставляет возможность пользователю самостоятельно определить интервал вышеописанной задержки, выбрав между значениями 1Т или 2Т (такт).

Стоит ли включать опцию?

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

В некоторых моделях и версиях BIOS встречается также третий вариант - Auto (или By SPD). Присвоение функции такого значения приведет к тому, что интервал будет взят из информации, запрограммированной производителем в микросхеме SPD (Serial Presence Detect).

Прежде чем экспериментировать с быстрым интервалом в 1Т, стоит изучить техническую документацию материнской платы на предмет такой возможности. Если нет уверенности в совершаемых действиях, то рекомендуем остановиться на значении Auto.



Рекомендуем почитать

Наверх