18 August 2011 г., 15:16
Чтобы не запутаться, предлагаю чётко определиться с понятиями.
1) Частота FSB и множитель друг от друга никак не зависят.
2) То, что мы здесь обсуждаем, направлено исключительно на изменение частоты FSB. Для изменения множителя работают совсем другие механизмы, к тактовому генератору никакого отношения не имеющие.
3) "Интерактивное" (не в BIOS Setup, до загрузки ОС, а во время её работы) управление частотой FSB реализовано, насколько я знаю, только в нетбуках/ноутбуках Asus - это те самые технологии Super Hybrid Engine и Power4Gear.
4) Для реализации технологий SHE и P4G подсистема ACPI BIOS поддерживающих их аппаратов содержит набор специальных средств (функции, переменные, массивы), которые отсутствуют в BIOS других компьютеров. К некоторым из этих средств разработчики предполагали доступ через стандартные средства ACPI-вызовов (например, функция CFVS для изменения частоты из управляющей программы, из неё вызывается часто упоминаемая здесь FSBA), к некоторым - нет, т.к. они являются служебными и нужны исключительно для работы первого вида средств.
5) Для всех моделей, кроме 1215B, мы, в рамках этой темы, делали следующее:
- исследовали схему управления частотой (куда и что записать?) и связь числовых массивов ACPI с регистрами генератора (откуда пишет BIOS?);
- заменяли значения в массивах на нужные (вычисленные или определённые экспериментально, в SetFSB);
- собирали модифицированный BIOS, прошивали его в компьютер, повторяли предыдущий этап, при необходимости.
6) В случае 1215B есть две проблемы:
Первая - BIOS имеет архитектуру EFI, поэтому привычные средства модификации здесь не работают. Я, на данный момент, научился только уверенно извлекать модуль с DSDT из файла прошивки. Обратный процесс - замена модуля на модифицированный - пока недоступен.
Вторая - ни одна из доступных версий SetFSB не позволяет просмотреть (и, тем более, изменить) "нужные" регистры этого генератора в интерактивном режиме.
Благодаря наличию этих проблем, для 1215B мы не можем выполнить последний этап из перечисленных в п. 5. Как результат - можем только теоретически, исходя из кода функции управления частотой, предполагать, куда и что нужно записать, чтобы эту частоту увеличить.
7) К счастью, разработчики построили код ACPI так, что процедура непосредственной записи значений в регистры устройства на шине SMBus выделена в отдельную функцию, причём, доступную для вызова "снаружи". Для 1215B, это та самая функция WRWD, которую мы и вынуждены использовать сейчас. Подобные функции, безусловно, есть и в большинстве BIOS других компьютеров, но называются они по-другому и имеют другие набор и порядок следования параметров. Узнать имя и правила вызова такой функции можно только с помощью изучения DSDT BIOS конкретной машины. Например, в BIOS T91 похожая функция называется WBYT, с тем же количеством и назначением параметров. Собственно, в этом и состоит причина бессмысленности попыток применения этого нашего "наколенного" метода к другим моделям компьютеров.
8) Другая причина - наличие других, более удобных средств. Почти для всех нетбуков Asus можно записать модифицированные значения в BIOS, и управлять частотой с помощью SHE. Для других машин - можно запускать SetFSB из командной строки, можно написать скрипт для RW-Everything. Если же есть необходимость, можно и вручную отредактировать значения регистров генератора в тех же самых программах, предварительно разобравшись, что на что изменять. Конечно, компьютеров разных на свете много, и среди них обязательно найдётся такая же штука, как и 1215B... Вот тогда обсуждаемый метод может оказаться единственно возможным простым вариантом.
*** Увлёкся :). Пригодится для "шапки" темы.
Кстати, а какой смысл в уменьшении множителя с помощью каких-то специальных средств? Разве настройка параметров плана электропитания Windows не позволяет ограничить его увеличение обычными методами? Стандартный системный драйвер не работает с этим процессором, что ли?
И ещё: по Вашим постам у меня сложилось впечатление, что Вы считаете, что множитель или частота видеокарты ничем не ограничены сверху. Т.е., если множитель изменяется от 8 до 16, то он может быть и больше 16. Или, если частота видеоядра может снижаться ниже номинального значения, то она, якобы, может и повышаться аналогичным способом. Эти предположения на чём-то основаны? Я совсем ничего не знаю об этом Закате, но в подавляющем большинстве случаев это не так. Единственный известный мне пример исключения - процессоры Intel серии Extreme c отсутствием ограничения по значению множителя (точнее, с ограничением, обусловленным количеством соответствующих битов в MSR, т.е. значением 31). Для встроенного видеоядра могут, правда, быть и какие-то дополнительные биты выбора делителя частоты (как в GMA), но здесь без документации сделать совсем уж ничего нельзя :(.
Я бы, на Вашем месте, лучше понаблюдал зависимость частоты видео от частоты FSB - есть ли она? Забудьте про множитель - с вероятностью 99%, не сможет никто его сделать больше 16!