Автор книги: Адриан Вонг
Жанр: Зарубежная компьютерная литература, Зарубежная литература
сообщить о неприемлемом содержимом
Текущая страница: 20 (всего у книги 26 страниц)
Обычные опции: 3, 4.
Чтобы выполнить требования системы, контроллер памяти отправляет сигналы в адресную и командную строку на один цикл раньше, чем нужно. Это дает контроллеру памяти дополнительное время для выполнения запросов материнской платы.
Вы можете подумать, что раннее обращение к адресной и командной строке улучшает производительность; это не так. Контроллер памяти отправляет сигналы раньше, чем необходимо, но они достигают модуля памяти в момент, когда ни один из банков памяти не является активным.
Когда сигналы обращаются к модулю памяти, конечный банк активируется, и контроллер памяти начинает чтение. Так как адресная и командная строка были вызваны заранее, активация конечного банка памяти управляется временем действия команды.
По определению, время действия команды – это период между добавлением адреса/команды и активацией банка памяти. Данная функция BIOS позволяет изменить время действия команды в соответствии с параметрами материнской платы и модуля памяти.
Чем меньше время действия команды, тем раньше может быть активирован банк памяти. Это обеспечивает более быстрый доступ к модулю памяти. Рекомендуем настроить функцию SDRAM Command Leadoff Time на 3 (3 цикла), чтобы добиться повышения производительности памяти.
Однако ваша материнская плата и память могут не поддерживать время действия команды, равное трем циклам. Если система начнет работать нестабильно, измените настройку опции на 4 (4 цикла).
SDRAM Command Rate (Коэффициент команды SDRAM)Обычные опции: 1T, 2T.
Когда контроллер памяти получает от операционной системы запрос на чтение данных из памяти, он не имеет информации о точном физическом адресе нужных данных. Контроллер памяти получает лишь виртуальный адрес, который необходимо преобразовать в адреса в физической памяти. Поэтому каждая новая операция в памяти сопровождается небольшой задержкой.
Вместо того чтобы немедленно инициализировать команду на чтение, контроллер памяти присваивает сигнал Chip Select (Выбор чипа) для банка памяти с нужными данными. Этот сигнал активирует банк, чтобы он смог получить команду. Одновременно контроллер памяти конвертирует адреса. Получив адреса в физической памяти, контроллер начинает инициировать команды чтения для активированного банка памяти.
Как видите, задержка команды вызвана вовсе не временем ожидания модуля памяти. Задержка определяется временем, которое требуется для контроллера памяти, чтобы конвертировать виртуальные адреса в адреса физической памяти.
Так как задержка вызвана конвертированием адресов, контроллеру памяти требуется больше времени для обработки адресов модулей памяти большого объема. Кроме того, контроллеру необходимо больше времени и в случае наличия большого количества банков.
Эта функция BIOS позволяет выбрать задержку между получением сигнала Chip Select и моментом, когда контроллер памяти должен начать отправку команд в банк памяти. Чем меньше значение, тем быстрее контроллер памяти сможет начать отправку команд в активированный банк памяти.
Если задержка команды SDRAM слишком велика, производительность может снизиться, так как контроллер памяти будет отправлять команды позже, чем необходимо.
Если задержка команды SDRAM слишком мала, контроллер памяти не сможет передать адреса вовремя, что приведет к потере и повреждению данных.
К счастью, все модули SDRAM (не имеющие буфера) поддерживают задержку команды 1T для четырех банков памяти на канал. После этого может понадобиться задержка команды 2T. Но поддержка 1T различается в зависимости от материнской платы и даже от модели. Проконсультируйтесь с производителем вашей материнской платы, чтобы узнать, поддерживает ли она задержку 1T.
Рекомендуем включить эту функцию, чтобы улучшить производительность памяти. Если возникнут проблемы, отключите данную опцию.
SDRAM Cycle Length (Длительность цикла SDRAM)Обычные опции: 2, 3 (память SDR) или 1.5, 2, 2.5, 3 (память DDR)
При запросе от любой команды чтения строка памяти активируется с помощью RAS. Чтобы считать данные из ячейки памяти, соответствующий столбец активируется с помощью CAS.
Используя сигналы CAS, из одной активной строки можно считать несколько ячеек. Однако при считывании данных из другой строки активная строка должна быть деактивирована. Эта задержка называется ожидание CAS.
Задержка модуля памяти отражается в соответствующих спецификациях. Для JEDEC это первая цифра в последовательности из четырех цифр. Например, если ваш модуль памяти имеет спецификацию 2-3-4-7, задержка CAS для него будет равна 2 циклам.
Эта функция BIOS управляет задержкой (в циклах) между сигналом CAS и моментом, когда данные станут доступны в ячейке памяти. Кроме того, данная опция определяет количество циклов, которое требуется для завершения первой части операции. Другими словами, чем меньше время ожидания CAS, тем быстрее выполняется чтение и запись в память.
Так как активация столбца происходит при каждом считывании данных из новой ячейки памяти, ожидание CAS серьезно влияет на производительность памяти, особенно при использовании модулей SDR SDRAM. При работе с модулями DDR SDRAM эффект не так значителен.
Помните, что некоторые модули памяти могут неправильно работать с низким временем ожидания и терять данные. Мы советуем вам уменьшить настройку данной функции до 2 или 2.5 циклов, чтобы улучшить производительность памяти. Если система начнет работать нестабильно, увеличьте значение опции.
Интересно: если вы увеличите время ожидания CAS, это позволит модулю памяти работать с более высокой скоростью. Поэтому вы можете увеличить время ожидания CAS, если достигли предела при разгонке модулей SDRAM.
Это следует делать, в первую очередь, с модулями памяти DDR SDRAM, так как ожидание CAS не очень сильно влияет на производительность такой памяти (по сравнению с модулями памяти SDR). Нельзя недооценивать повышенную способность к разгонке при использовании более продолжительного времени ожидания CAS. Если вы хотите разогнать модули памяти DDR SDRAM, подумайте о том, чтобы увеличить время ожидания CAS. Полученное преимущество окупает небольшую потерю производительности.
SDRAM Cycle Time Tras/Trc (Tras/Trc для времени цикла SDRAM)Обычные опции: 5/6, 6/8.
Эта функция BIOS определяет параметры tRAS и tRC для модуля памяти SDRAM.
tRAS обозначает Row Active Time (Время активации строки) для SDRAM, то есть период, в течение которого строка остается открытой для передачи данных.
tRC обозначает Row Cycle Time (Время цикла строки) для SDRAM, то есть минимальное количество циклов, которое требуется строке памяти, чтобы пройти полный цикл от активации строки до ее обновления в активную строку.
Установка по умолчанию (6/8) является более стабильной и медленной, чем 5/6. При выборе значения 5/6 циклы проходят быстрее, но строка может оставаться открытой недостаточно долго, чтобы операция успела завершиться. Это может привести к потере данных и повреждению ячеек памяти. Особенно часто данный эффект проявляется при работе на частоте, которая превышает 100 МГц.
Чтобы улучшить производительность памяти, выберите значение 5/6. Если ваша система будет работать нестабильно, измените настройку на 6/8. Также вы можете использовать значение 6/8, если пытаетесь разогнать модули памяти, поскольку увеличенная задержка позволит им работать на более высокой частоте.
SDRAM ECC Setting (Настройка SDRAM ECC)Обычные опции: Disabled, Check Only, Correct Errors, Correct+Scrub.
Эта функция BIOS является усовершенствованным аналогом функции DRAM Data Integrity Mode. Она поставляется с новыми материнскими платами и определяет не только настройку ECC для контроллера памяти.
Данная опция управляет функцией исправления ошибок для контроллера памяти, включая корректировку памяти. Существуют пять режимов ECC, четыре из которых используются в этой опции:
• Disabled;
• Check Only;
• Correct Errors;
• Correct+Scrub.
Режим Disabled отключает опцию ECC для контроллера памяти. Выберите данную опцию, если вы не пользуетесь модулями памяти ECC. Если вы используете модули ECC, данный режим обеспечит наилучшую производительность (правда, он никак не улучшает интеграцию данных).
Режим Check Only (Только проверять) позволяет контроллеру памяти искать ошибки. Контроллер памяти сможет находить (но не исправлять) ошибки одного и двух битов. Данный режим обеспечивает минимальную потерю производительности, но никак не улучшает интеграцию данных.
Режим Correct Errors (Исправлять ошибки) позволяет контроллеру памяти находить ошибки одного и двух битов, а также исправлять ошибки одного бита. Данный режим существенно снижает производительность системы. Преимущество состоит в том, что он улучшает интеграцию данных, а также исправляет ошибки одного бита. Ошибки двух битов не исправляются.
Режим Correct+Scrub (Исправлять и записывать) позволяет контроллеру памяти находить ошибки одного и двух битов, исправлять ошибки одного бита, а также записывать в память новое, исправленное значение! Этот режим обеспечивает самую высокую интеграцию данных. Однако потеря производительности в данном режиме еще выше.
Следует отметить, что режим Check Only не имеет практического применения, так как он лишь выполняет проверку на наличие ошибок и показывает отчеты. Пользователи модулей памяти ECC должны обратить внимание на режимы Correct Errors и Correct+Scrub, так как они улучшают интеграцию данных путем исправления ошибок одного бита. Если вы работаете с обычными модулями памяти, выберите опцию Disabled.
За дополнительной информацией по функции ECC обратитесь к описанию опции DRAM Data Integrity Mode.
SDRAM Idle Limit (Ограничение циклов простоя для SDRAM)Обычные опции: Disabled, 0 Cycle, 8 Cycles, 12 Cycles, 16 Cycles, 24 Cycles, 32 Cycles, 48 Cycles.
Контроллер памяти позволяет страницам памяти оставаться открытыми. Если цикл процессора на SDRAM попадает в открытые страницы, он может быть выполнен без задержки. Это позволяет улучшить производительность процессора.
Но страницы не могут оставаться открытыми постоянно. Их необходимо закрывать и обновлять. Если страница закрывается в тот момент, когда контроллер памяти пытается считать из нее информацию, то операция чтения задерживается вплоть до повторной активации страницы. Это очень важно, так как теряются циклы процессора.
Эта функция BIOS задает количество циклов простоя, которое допускается до того, как контроллер памяти заставляет ожидающие страницы закрыться и обновиться.
В основе данной опции лежит концепция временной локализации (temporal locality). В соответствии с ней, чем дольше открытая страница простаивает, тем меньше вероятность того, что она снова понадобится до обновления. Поэтому лучше временно закрыть и обновить страницу, чтобы быстро открыть ее впоследствии, если в этом возникнет необходимость.
Вы можете настроить эту функцию на любое количество циклов от 0 Cycles до 48 Cycles. Указав значение, вы определяете, сколько циклов таймера открытые страницы могут простаивать, прежде чем они будут закрыты и обновлены. Вам также доступна опция Disabled.
Если вы выберите значение 0 Cycle (0 циклов), то контроллер памяти будет мгновенно обновлять открытые страницы при наличии цикла простоя.
Если вы выберите значение Disabled, то контроллер памяти не будет обновлять открытые страницы. Открытые страницы остаются активным до тех пор, пока не наступит время их обновления.
Большинство производителей по умолчанию используют значение 8 Cycles (8 циклов), что позволяет контроллеру памяти обновлять открытые страницы после восьми циклов простоя. Благодаря этому запрос команды чтения или записи, обращенный к данным страницам, может быть выполнен мгновенно.
Тем не менее, возможности этой функции ограничены настройкой цикла обновления в BIOS. Это значит, что при необходимости открытая страница будет обновлена независимо от того, достигло ли количество пустых циклов отметки, заданной опцией SDRAM Idle Lim it, или нет. Поэтому функция SDRAM Idle Limit может применяться только для того, чтобы вынудить обновление банка SDRAM до завершения цикла обновления, но не для задержки данного цикла.
Уменьшение количества циклов до 0 Cycles заставляет контроллер памяти закрывать все открытые страницы после того, как запросы перестают отправляться на контроллер памяти. То есть открытые страницы обновляются сразу после прекращения запросов. Теоретически, это может привести к повышению эффективности памяти, так как обновление открытых страниц маскируется во время пустых циклов. Но все запросы, поступающие после этого, должны ждать обновления страницы.
Так как обновления происходят нечасто (примерно один раз в 64 миллисекунды), их воздействие на производительность памяти можно считать минимальным. Преимущество маскировки обновлений во время пустых циклов невелико, особенно если учесть то, что современные системы памяти используют для маскировки обновлений обмен данными между банками.
При установке 0 Cycles запросы данных тоже могут задерживаться, так как один пустой цикл заставляет контроллер памяти закрыть все открытые страницы! На обычных компьютерах операции чтения из памяти пользуются принципом пространственной локализации (spatial locality), который указывает на то, что при считывании одного бита данных велика вероятность считывания и следующего бита. Поэтому закрытие открытых страниц с помощью функции SDRAM Idle Limit ведет к снижению производительности.
С другой стороны, ограничение в 0 или 8 пустых циклов гарантирует более частое обновление содержимого памяти, что позволяет избежать потери данных, вызванной неполным обновлением ячеек памяти. Если вы заставите контроллер памяти чаще обновлять открытые страницы, это позволит удерживать страницы открытыми достаточно долго, чтобы добиться завершения операции.
При работе на обычном компьютере рекомендуем выбирать опцию Disabled, чтобы максимально задерживать обновление страниц. Это позволяет уменьшить количество обновлений и увеличивает пропускную способность памяти.
Для приложений, которые выполняют множество произвольных запросов (например, для серверов), рекомендуем выбирать опцию 0 Cycle, так как последующие запросы, скорее всего, будут выполняться другими страницами. Если открытые страницы будут закрываться для обновления, это подготовит их для следующего запроса. Увеличенное количество обновлений вполне компенсируется повышенной интеграцией данных.
Также вы можете увеличить значение функции Refresh Interval или Refresh Mode, чтобы повысить пропускную способность и поддерживать интеграцию данных в ячейках памяти. Так как очень большие интервалы обновления (например, 64 или 128 m sec) могут привести к потере данных в ячейках, настройка параметра SDRAM Idle Limit на 0 Cycle или 8 Cycles позволяет ячейкам памяти чаще обновляться. Причем высока вероятность того, что подобные обновления будут происходить во время пустых циклов. В результате, как кажется, нам удается решить сразу две задачи, – увеличить время активации банка при высокой загрузке контроллера памяти и сделать обновления более частыми при простое контроллера памяти.
Однако в действительности этот способ не является предпочтительным, так как он зависит от возможности памяти к созданию пустых циклов для активации обновлений. Если ваша системная память подвергается большой нагрузке, у нее может не быть пустого цикла, который позволил бы активировать обновление. Это способно привести к потере данных в ячейках памяти.
При работе на обычном компьютере рекомендуем правильно настроить интервал обновления и выбрать опцию Disabled. Это позволит увеличить пропускную способность памяти путем максимальной задержки обновлений, а также сохранить интеграцию данных в ходе регулярных циклов обновления.
Для серверов рекомендуем правильно настроить интервал обновления и выбрать опцию 0 Cycle. Благодаря этому все открытые страницы будут обновляться при наличии пустого цикла.
SDRAM Leadoff Command (Команда времени действия SDRAM)Обычные опции: 3, 4.
Эта опция BIOS называется не совсем верно. Ее следовало бы переименовать в SDRAM Command Leadoff Time (Время действия команды SDRAM).
Чтобы выполнить требования системы, контроллер памяти отправляет сигналы в адресную и командную строку на один цикл раньше, чем нужно. Это дает контроллеру памяти дополнительное время для выполнения запросов материнской платы.
Вы можете подумать, что раннее обращение к адресной и командной строке улучшает производительность; это не так. Контроллер памяти отправляет сигналы раньше, чем необходимо, но они достигают модуля памяти в момент, когда ни один из банков памяти не является активным.
Когда сигналы обращаются к модулю памяти, конечный банк активируется, и контроллер памяти начинает чтение. Так как адресная и командная строка были вызваны заранее, активация конечного банка памяти управляется временем действия команды.
По определению, время действия команды – это период между добавлением адреса/команды и активацией банка памяти. Данная функция BIOS позволяет изменить время действия команды в соответствии с параметрами материнской платы и модуля памяти.
Чем меньше время действия команды, тем раньше может быть активирован банк памяти. Это обеспечивает более быстрый доступ к модулю памяти. Рекомендуем настроить функцию SDRAM Leadoff Command на 3 (3 цикла), чтобы добиться повышения производительности памяти.
Однако ваша материнская плата и память могут не поддерживать время действия команды, равное трем циклам. Если ваша система начнет работать нестабильно, измените настройку опции на 4 (4 цикла).
SDRAM Page Closing Policy (Настройка закрытия страниц SDRAM)Обычные опции: One Bank, All Banks.
Эта функция BIOS является аналогом функции SDRAM Precharge Control.
Контроллер памяти позволяет удерживать открытыми до четырех страниц одновременно. В одном банке памяти может быть открыто не более одной страницы. Если запрос на чтение из SDRAM попадает на открытую страницу, он может быть выполнен мгновенно. Конечно, это повышает производительность.
Если запрос на чтение не может быть выполнен ни одной из четырех открытых страниц, возникают две возможности. Одна из страниц закрывается, чтобы открыть нужную, либо закрываются все открытые страницы. В любом случае запросу приходится ждать полный цикл задержки.
Данная опция определяет, должна ли при наличии пропуска страницы система сохранять все страницы открытыми (закрывая только одну текущую страницу), либо закрывать их (все текущие страницы).
Настройка One Bank (Один банк) вынуждает контроллер памяти закрывать только одну страницу при наличии пропуска страницы. Это позволяет системе получить доступ к другим открытым страницам всего за один цикл.
Когда возникает пропуск страницы, имеется вероятность, что будет пропущена и страница, к которой обращаются последующие данные. При выполнении долгих операция считывания это может привести к тому, что в системе возникнет до четырех циклов ожидания. Разумеется, это сильно влияет на производительность памяти.
Настройка All Banks (Все банки) вынуждает контроллер при наличии пропуска страницы отправлять в интерфейс SDRAM команду All Banks Precharge (Обновить все банки). Все открытые страницы закрываются (обновляются). В результате последующим операциям достаточно лишь активировать нужные банки памяти.
Это полезно в случае, если последующие запросы на чтение обращаются к пропущенным страницам. Причина состоит в том, что банки памяти уже обновлены и готовы к активации. Для активации банков системе не придется ждать их обновления. Но вы не получите никаких преимуществ вследствие того, что запросы могут быть выполнены открытыми страницами.
Как видите, обе настройки имеют свои преимущества и недостатки. Тем не менее, опция One Bank позволяет получить повышенную производительность, так как открытые страницы обеспечивают очень быстрый доступ. При использовании значения All Banks содержимое памяти обновляется чаще. Это улучшает интеграцию данных, правда, только в том случае, если вы выбрали для опции SDRAM Refresh Interval значение, которое превышает 64 мсек.
Рекомендуем выбрать настройку One Bank, чтобы улучшить производительность памяти. Значение All Banks способно повысить интеграцию данных, но, если вы не изменяете настройку параметра SDRAM Refresh Interval, это вам не понадобится.
Правообладателям!
Это произведение, предположительно, находится в статусе 'public domain'. Если это не так и размещение материала нарушает чьи-либо права, то сообщите нам об этом.