Утилиты VideoBIOS. Перепрошивка через графический интерфейс. Теперь раскурачиваем биос и собираем полезную информацию

Привет! Очень многие меня просили написать гайд по прошивке видеокарты для майнинга. И долго ждали, и как видите хорошая новость, гайд написан. И так наш гайд будет на примере прошивки видеокарта amd RX 580 sapphire nitro +. Но гайд подходит ко всем видео картам radeon (ati) серии rx 580, 570, 470, 480, 460, 560, 460.

И так rx 580 nitro + сапфир до прошивки

Конечный результат в конце статьи.

Прошивка биоса видеокарты

Как вы поняли из названия, на нужно прошить именно bios, а именно изменить тайминги. Особенно хорошо прошивка биос помогает в майнинге эфира (eth).

Внимание! Прошиваете и изменяете тайминги bios видео карты, вы на свой страх и риск! Что будет с гарантией точно не известно.

И так, прошивка биоса видеокарты amd начинается с необходимых программ.

Программы для прошивки видеокарт:

1. Ati flash программа для прошивки видеокарт amd, а именно, для сохранения старой прошивки и заливки новой - .

2. Polaris BIOS Editor для редактирования таймингов биоса видеокарты, данная версия подходит для все видов памяти - .

3. Atikmdag patcher - нужен для того, что бы после прошивки таймингов видеокарта работала корректно, и не было ошибок - .

Весь основной набор для прошивки bios видеокарты под майнинг из под windows собран.

Всем спасибо за внимание. Пока.

Так же хотел добавить что прошивка bios видеокарты nvidia для майнинга не нужна! Она ничего не даст.

Редактор BIOS видеокарт на базе новых графических процессоров NVIDIA GeForce FX и более новых. Позволяет считывать образ BIOS прямо из оперативной памяти и изменять:

  • скорость вращения кулера для различных уровней производительности или температуры;
  • температуру срабатывания защиты видеокарты (для карт, оснащенных функцией термомониторинга).

Системные требования:

  • /XP-64/Vista
  • Видеокарта на базе GeForce FX 5600 и более новых графических процессоров
  • Тип лицензирования: FreeWare

Утилита для обновления прошивки видеокарт с ядрами Maxwell и Pascal, которые работают с дисплеями, оборудованными выходами DisplayPort 1.3 или 1.4. Программа устраняет неполадки, которые выражаются в отсутствии изображения и/или зависания ПК во время загрузки операционной системы.

Видеокарты, которым может понадобиться «лечение»:

  • серия Titan: Titan X (Maxwell), Titan X (Pascal), Titan XP;
  • серия GeForce 10: GeForce GT 1030, GeForce GTX 1050, GTX 1050 Ti, GTX 1060, GTX 1070, GTX 1070 Ti, GTX 1080, GTX 1080 Ti;
  • серия GeForce 900: GeForce GTX 950, GTX 950 Ti, GTX 960, GTX 970, GTX 980, GTX 980 Ti;
  • серия GeForce 700: GeForce GTX 745, GTX 750, GTX 750 Ti;
  • серия Quadro: Quadro GP100, Quadro P6000, Quadro P5000, Quadro P4000, Quadro P2000, Quadro P1000, Quadro P620, Quadro P600, Quadro P400, Quadro M6000 24GB, Quadro M6000, Quadro M5000, Quadro M4000, Quadro M2000, Quadro K2200, Quadro K1200, Quadro K620, NVS 810.

  • загрузиться, используя другой порт (DVI / HDMI / VGA) для монитора;
  • изменить метод загрузки с UEFI на Legacy или наоборот;
  • загрузиться, используя интегрированное видеоядро или другую дискретную видеокарту.

Системные требования:

NVFLASH

Утилита обновления видеоBIOS от NVIDIA. Подходит для большинства видеокарт, использующих референс-дизайн печатной платы, и для некоторых видеокарт brand-name.

Версия для DOS работает только из «чистого» DOS, при отсутствии в памяти менеджеров расширенной памяти, таких как HIMEM/EMM386/QEMM.

Системные требования:

  • Операционная система DOS, Windows 2000/XP/XP-64/Vista
  • Видеокарта на базе GeForce 256 и более новых графических процессоров
  • Тип лицензирования: только для производителей видеокарт

Редактор BIOS видеокарт NVIDIA на базе архитектуры Fermi (GTX 400 и более новые карты) от разработчика утилиты NVIDIA Inspector . Позволяет редактировать:

  • частоты GPU и видеопамяти, отдельно для каждого частотного домена и уровня производительности;
  • напряжение питания GPU ;
  • диапазон скорости вращения вентилятора (для GF104 и более новых чипов).

Системные требования:

RVBEdit

Редактор BIOS видеокарт на базе устаревших графических процессоров NVIDIA. Позволяет считывать образ BIOS прямо из оперативной памяти и изменять:

  • Значения идентификаторов SubDevice ID и SubVendor ID, определяющие производителя и модель видеокарты;
  • ряд параметров совместимости шины AGP видеокарты;
  • параметры и текст сообщения видео- BIOS при включении компьютера;
  • формат ТВ-сигнала видеовыхода карты;
  • русифицировать встроенные шрифты видеокарты, что избавляет от необходимости держать в памяти DOS русификатор экрана.

Системные требования:

  • Операционная система Windows 98/ME/2000/XP
  • Видеокарта на базе GeForce 256 - GeForce FX 5200
  • Тип лицензирования: FreeWare

Редактор BIOS видеокарт на базе новых графических процессоров NVIDIA GeForce 6Х00/7Х00. Позволяет изменять в файле-образе BIOS:

  • Тактовые частоты графического процессора и памяти для различных уровней производительности;
  • напряжения питания графического процессора для различных уровней производительности;
  • значения таймингов (временных задержек) видеопамяти;
  • значения идентификаторов SubDevice ID и SubVendor ID, определяющие производителя и модель видеокарты;

Системные требования:

  • Операционная система Windows 2000/XP
  • Видеокарта на базе GeForce 6 - 7
  • Тип лицензирования: FreeWare

GF123 BIOS Edit

Редактор BIOS видеокарт на базе графических процессоров GeForce 256 — GeForce 3. Основные возможности:

  • позволяет считывать текущий образ видеоBIOS из копии в оперативной памяти;
  • изменять значения частот ядра и памяти;
  • изменять индентификаторы SubVendor ID, SubVendor Model;
  • редактировать строки, показываемые при начальной загрузке системы;
  • русифицировать видеоBIOS путем замены шрифтов BIOS на шрифт из файлов *.cpi

Системные требования:

  • Установленный в системе пакет библиотек LabWindows/CVI
  • Видеокарта на базе GeForce 256/GeForce 2/GeForce 2 MX/GeForce 3
  • Тип лицензирования: FreeWare

TNT BIOS Edit

Редактор BIOS видеокарт на базе графических процессоров NVIDIA семейства TNT/TNT2. Позволяет считывать образ BIOS прямо из оперативной памяти, а также из файлов обновления BIOS видеокарт фирмы ASUS. С его помощью можно изменить:

  • значения идентификаторов SubDevice ID и SubVendor ID, определяющие производителя и модель видеокарты;
  • тактовые частоты графического процессора и памяти по умолчанию;
  • значения таймингов (временных задержек) видеопамяти;
  • параметры и текст сообщения видео- BIOS при включении компьютера;

Системные требования:

  • Операционная система Windows 95/98/ME/2000
  • Установленный в системе пакет библиотек LabWindows/CVI
  • Видеокарта на базе RivaTNT/TNT2/Vanta
  • Тип лицензирования: FreeWare

MHz5900

Редактор BIOS видеокарт на базе графических процессоров GeForce FX. Позволяет изменять частоты для разных уровней производительности, таблицу напряжений и тайминги видеопамяти.

Системные требования:

  • Операционная система Windows 2000/XP
  • Видеокарта на базе GeForce FX 5200-5900
  • Тип лицензирования: FreeWare

VGABIOS

Утилита позволяет проверить работоспособность файла-образа BIOS перед его прошивкой в видеокарту путем подмены видеоBIOS на указанный файл. Может подключаться в autoexec.bat перед загрузкой Windows, работает в режиме командной строки.

Формат запуска:

VGABIOS -fROMFILE -tM

ROMFILE - подключаемый образ видеоBIOS, М - один из режимов TV (0-5)

Эта утилита не будет работать с некоторыми видеокартами brand-name, а также с картами на базе графических процессоров GeForce 6X00 и выше (их BIOS по размеру превышает используемую программой область в оперативной памяти).

Системные требования:

  • Тип лицензирования: FreeWare

Rambios

Программа позволяет проверить работоспособность файла-образа BIOS перед его прошивкой в видеокарту путем подмены видеоBIOS на указанный файл. Может подключаться в autoexec.bat перед загрузкой Windows, работает в режиме командной строки. Синтаксис описан в документации в комплекте программы.

Для успешной работы программы DeviceID видеокарты должен полностью совпадать с DeviceID, заданным в файле видеоBIOS.

Системные требования:

  • Операционная система DOS, Windows 95/98/ME
  • Тип лицензирования: FreeWare

vbtracetool

Консольная программа для манипуляций с видеоBIOS в системах Linux. Позволяет получить дамп текущего BIOS видеокарты, эмулировать BIOS из файла, получить протокол обмена видеоBIOS с оборудованием и выполнить перезапуск видеокарты, аналогичный процедуре POST при включении компьютера. Обратитесь к документации программы за синтаксисом команд.

Системные требования:

  • Операционная система Linux
  • Установленная в системе библиотека libpci
  • Тип лицензирования: FreeWare

WFFLASH

Утилита прошивки видеокарт фирмы LeadTek, однако может прошивать видеокарты большинства других производителей. Может быть полезной, если nvflash отказывается обновлять Вашу видеокарту.

Работает только из «чистого» DOS, при отсутствии в памяти менеджеров расширенной памяти, таких как HIMEM/EMM386/QEMM.

Системные требования:

  • Операционная система DOS
  • Видеокарта на базе GeForce 256 - GeForce 7800
  • Тип лицензирования: только для владельцев видеокарт LeadTek

Все действия из данной статьи вы выполняете на свой страх и риск! Администрация ресурса не несет никакой ответственности за любые неполадки или повреждения, которые могут возникнуть после проделанных ниже описанных действий.


В этой статье пойдет речь о том, как перепрошить BIOS в видеокартах от AMD. Для процедуры перепрошивки видеокарты вам понадобится утилита ATI Winflash, которую можно скачать .

Рекомендуется перед прошивкой BIOS"a видеокарты отключить её в Windows. Для этого нужно открыть "Диспетчер устройств ", и в пункте "Видеоадаптеры " выбрать нужный, нажать на нем правой кнопкой мыши и выбрать пункт "Отключить ".

Перепрошивка через графический интерфейс

Запускаем с правами администратора ATIWinflash. Убеждаемся, что в верхнем правом углу программы выбран нужный вам видеоадаптер.

Вот так программа ATIWinflash показывает одну единственную видеокарту.

Если количество видеокарт в системе больше, чем 3, то программа не сможет корректно отобразить весь список - четвертая и последующие видеокарты попросту не поместятся в окно. В таком случае придется воспользоваться методом прошивки через командную строку (прочитать про это можно в этой же статье ниже).

А вот так в программе ATIWinflash показываются четыре видеокарты - видно их только три, четвертая попросту не поместилась в экран.

Выбрав нужную видеокарту, нажимаем на кнопку "Load image", и выбираем файл BIOS"a, которым хотим прошить видеокарту.

И после этого нажимаем на кнопку "Program".


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

И затем уже появится предложение о перезагрузке, необходимое для работы видеокарты с новым BIOS"ом.

Если после перезагрузки ваша видеокарта определяется в Диспетчере устройств, но отказывается работать, то это может быть из-за блокировки пользовательских BIOS"ов драйверами AMD. О том, как с этим бороться, можно прочитать .

Перепрошивка через командную строку

Наиболее полезные команды ATIFlash:

  • atiflash.exe -i - покажет список установленных в системе AMD видеокарт. Полезно для того, чтобы перепрошить BIOS на какой-то определенной видеокарте.
  • atiflash.exe -p - перепрошить видеокарту с указанным номером BIOS"ом из указанного файла.
  • atiflash.exe -pa - перепрошить на ВСЕ видеокарты указанным файлом BIOS"a.

Примеры использования:

После ввода команды для прошивки BIOS"a терпеливо ждем завершения процедуры. По её завершению программа выдаст следующее сообщение в командной строке:

Restart System To Complete VBIOS Update.

Что подразумевает, что для окончания обновления BIOS"a видеокарты нужно перезагрузить компьютер. После перезагрузки можно считать процедуру перепрошивки BIOS"a завершенной.

Известные проблемы и ошибки

  • При обновлении BIOS"a видеокарты компьютер или система зависают.
    При обновлении BIOS"a видеокарты рекомендуется отключать видеокарту через "Диспетчер устройств". О том, как это сделать написано в самом начале статьи.
  • После обновления BIOS"a и перезагрузки, видеокарта отображается в системе, но не работает.
    Скорее всего проблема в том, что установлены новые драйвера AMD, которые блокируют работу видеокарт с неподписанным BIOS"ом. О том, как обойти блокировку написано .

Обновление драйверов

Данный пункт вынесен в отдельную статью, которую можно прочесть .



Здесь предоставлен перевод и небольшие дополнения статьи:

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

Да, кстати, видеокарты с модифицированным биосом гарантии не подлежат. Делайте все на свой страх и риск.

Что нам нужно для модифицирования биоса видеокарты:

  1. для сохранения биоса и заливки нового в карту
  2. GPU-Z чтобы получить детальную информацию о видеокарте, типе памяти и тд
  3. Anoraks ATOMBIOSReader для получения детальной информации из биоса видеокарты
  4. Anoraks VBIOS CRC checker для подсчета корректной чексуммы для модифицированного биоса
  5. , собственно говоря, редактор в котором мы будем шаманить

У меня в подопытных будет видеокарта SAPPHIRE NITRO RADEON RX 480 4G с партномером 299-2E347-400SA, с частотами 1266 МГц по чипу и 1750 МГц по памяти. Память Elpida:

1. Запускаем ATIWinFlash, сохраняем биос в надежное место. Создаем копию на всякий пожаный.

Даже самый последний PolarisBIOSEditor не понимает эту память, что, собственно, и заставило меня начать колдовать:

2. Теперь для модификации расковыриваем биос и раскладываем по полочкам нужные значения. Для всех биосов существует мастер список таблиц с командами и значениями. Чтобы получить эту таблицу используем Anoraks-ATOMBIOSReader, открываем сохраненный биос:

И получаем в папке с биосом тесктовый файл с нужными нам значениями:

3. Далее юзаем HEX Workshop. Запускаем, открываем сохраненный биос, получаем такой вот беспредел (не очкуйте, щас разберемся что к чему):

Кратко. Окно программы разделена на 4 части. Вехнее левое (основное) - это окно-координатная система, которая позволяет вам попасть в нужную часть биоса. Можно сравнить ее с шахматной доской с ее клетками. Слева у вас номер строки, сверху - номер колонки, ну а комбинация номеров строки и колонки дает адрес ячейки (вау!). А в основном поле вы видите актуальные значения в шестнадцатеричной системе. Вот это мы и будем менять.

Справа у нас окошко с «понятными» значениями - это перевод с шестнадцатеричной системы в читаемую форму.

Снизу справа окно поиска, закладок и тд, к нему вернемся позже

4. Теперь раскурачиваем биос и собираем полезную информацию.

В текстовом поле видим информацию для какой карточки этот биос был создан. В нашем случае это ATOMBIOS для Sapphire Ellesmere (Polaris) GPU c 4GB видеопамяти. И версия биоса VER015.050.000.000.000000.347. Ну я подозреваю что вы то знаете какая у вас каточка и сколько там памяти, но эта информация подверждает, что мы работаем таки с правильным файлом.

Если проскролить ниже вы увидите множество кракозябликов, которые на самом деле содержат в себе много полезной информации, как напряжения, тайминги, скорости вращения вентиляторов и тд.

Поэтому открываем текстовый файлик, полученный из данных биоса (из пункта 2).

В таблице 4 колонки с командами и 5ая колонка со значениями.

Первая колонка показывает номер ряда в шестнадцатеричном (HEX) значении, вторая стартовый адрес записаного значения, третья - длина строки/записаного значения, четвертая - название команды/значение. 5 колонка - перевод 4 колонки в читаемый вид.

Короче говорят, нам нужно VRAM_Info - который нам укажет на номер типа памяти.

У меня это:

001c: a44e Len 073f Rev 02:02 (VRAM_Info)

Чтобы найти какая у нас память ищем начальный адрес из VRAM_Info - у нас это a44e .

Идем в HEX Workshop. Жмем , или переходим по меню Edit -> Goto... В окошке вставляем адрес и жмем Go и курсор перемещается на нужный адрес:

Справа в текстовом поле среди всякого бреда видим два вменяемых набора символов.

H5GC4H24AJR и EDW4032BABG

Первая - это HYNIX

Вторая - это Micron либо Elpida

Вот она наша Элпида!

Биос написан под 2 типа памяти сразу - Micron и Elpida. Именно поэтому в него и прописаны настройки для обоих производителей.

5. Ищем и меняем тайминги.

Мы будем делать так называемый мемшифт или, говоря нормальным языком, сдвигать/прописывать тайминги от меньшей на более высокую частоту. Это решение позволяет увеличить производительность в майнинге Эфира (Ethereum).

Ближе к телу, как говорил классик.

Нам нужен стандартный виндовый калькулятор в режиме ТыЖПрограммист:

Так-с, давайте переведем значение частоты 1500 в шестнадцатеричную систему исчисления (далее HEX). На калькуляторе клацаем на DEC чтобы перевести калькулятор в десятеричную систему исчисления. Далее нужно ввести 1500 умноженное на 100, то есть 150 000. И в поле HEX видим значение 249F0 - это 1500 в шестнадцатеричной системе исчисления.

HEX редактор показывает значения в реверсированном/перевернутом виде. По сему мы тоже перевернем полученное в калькуляторе значение. Как это делается: число переворачивается символами по парам.

Последняя пара F0 стает первой, потом 49 , последняя 2 одна, поэтому добавляем 0 в хвост.

Получаем .

Идем в HEX редактор и ищем F04902: жмем Ctrl + f , или через меню Edit -> Find… открывается окно поиска. Для Type выбираем Hex Values и в value вписываем F04902. Ставим птичку на Find all Instances и жмем Ок.

В нижнем правом окне отобразятся все совпадения. Нам нужно значение, которое идет после значения типа памяти:

В нашем случае у нас биос под двоих производителей памяти, первый - Hynix, второй - Elpida:

После значения идут 00, 01, 02 - которые соответвуют типу памяти.

У нас элпида, ставим себе закладку. Выделяем , клик правой кнопкой Add Color Mapping..., выбираем Background Color (у меня красный)

1625 умножить на 100 это 162500 в DEC и переводится как 27AC4 в HEX. После реверса добавляем 02 в конец (напомню, у нас элпида, второй тип памяти по счету в биосе) получаем C47A0202

Получается что-то такое:

Теперь начинаем модифицирование.

Чаще всего записывают тайминги от 1500 МГц в 1625/1750/2000 МГц.

Не фанатейте, не нужно записывать совсем низкие тайминги - это может привести к ошибкам в вычислениях, что привет к так называемым реджекнутым шарам (rejected shares). Отслеживайте ошибки через HWiNFO64 (под нагрузкой):

По-хорошему, ошибок не должно быть вообще.

Чтобы перезаписать тайминги, мы берем стоку, которая между значениями 1500 и 1625 (те, которые мы цветом отметили) и вставляем эту строку в 1625-1750, 1750-2000.

Также иногда зашивают частоты от 1425 в 1500, и от 1375 в 1425 (мемшифт)

Получаем такую картину:

Сохраняем биос под новым именем. Например, bios_new.rom

6. Исправляем чексумму CRC (CRC checksum).

Перед тем, как заливать биос в видик, необходимо сделать еще одну маленькую манипуляцию. Исправить чексумму в файле биоса.

Что такое чексумма CRC (CRC checksum)? Чексумма - это значение либо строка, которая рассчитывается исходя из содержимого файла. Если оригинальный файл изменяется, также изменяется CRC для этого файла. Чексумму CRC можно сравнить с быстрым индикатором изменялся ли файл.

Каждый биос видеокарты содержит CRC чексумму внутри своего файла. Как только мы изменили биос, CRC поменялся и он перестал соответствовать сохраненному в файле.

Если мы зашьем такой биос с кривым CRC, программа прошивки покажет ошибку. Даже если прошьете, драйвер откажется работать с таким устройством, а в худшем случае, вы превратите карту в кирпич.

Так давайте же посчитаем правильный CRC.

Для этого нам нужен Anoraks-AMD-VBIOS-CRC-checker.

Запускаем его, жмем Check CRC, выбираем сохраненный модифицированный биос bios_new.rom и видим:

Новый CRC отличается от сохраненного.

Идем опять в наш HEX редактор, нам нужна первая строка кода. Наша чексумма записана по адресу , идем туда:

Бессовестно меняем ее на правильную (expected checksum из Anoraks-AMD-VBIOS-CRC-checker):

Сохраняем биос в файлик bios_new2.rom

Еще раз проверяем его на правильность CRC чексуммы.

Зашиваем в видик. Это не описываю, тут и так миллион мануалов есть:

Запускаем Wattools + HWiNFO64 (следим за ошибками памяти). У меня память заработала на 1950 МГц и выдавала немного ошибок. Ошибки - плохо, будут реджекнутые шары. Совсем без ошибок работала на частоте 1900 МГц.

Изначально каточка выдавала около 22 мегахешей в соло в эфире на Claymore 8.0

После манипуляций над биосом получили:

На даунвольте 27.8 ETH + 415 DCR потребление 92 Ватта, температура GPU 74 градуса (в комнате 20), память работает на 1950 МГц:

Без даунвольта получилось около 28,5 Мх в эфире + 450 в декрете, потребление больше 140 Ватт, только кому оно такое надо?

Что ж, это не мега-результат, учитывая, что хорошая 470 с памятью Самсунг выдает 30+ в эфире + 450 в декрете, но мы не стесняемся своих достижений.