Прошивка flash spi bios

Обновлено: 07.07.2024

Эта статья продолжает тему, связанную с угрозой искажения BIOS материнской
платы вредоносными программами. В ранее опубликованном материале
"Проникновение в BIOS ROM"
N1 и N2 был
приведен пример программы, выполняющей запись в микросхему BIOS, рассмотрены
механизмы защиты, используемые производителями материнских плат и причины, по
которым данные механизмы часто оказываются неэффективными. Напомним, что эта
проблема возникла более 10 лет назад, когда в качестве носителя BIOS начали
использовать микросхемы Flash ROM, допускающие перезапись содержимого без
физического вмешательства в компьютер. Таким образом, возможность оперативной
перезаписи (обновления) BIOS, привела к побочному эффекту – риску его случайного
или преднамеренного искажения.

Казалось бы, сегодня на эту тему уже все сказано. Но время идет, появляются
новые типы микросхем Flash ROM и интерфейсов для их подключения. Это
сопровождается появлением новых методов защиты BIOS от несанкционированного
искажения, и, конечно, новых уязвимостей. В ранее опубликованном материале,
ссылка на который приведена в начале статьи, рассматриваемая тема раскрыта на
примере платформы, использующей микросхему SST 49LF004A, подключенную к
интерфейсу LPC (Low Pin Count). Сегодня, ему на смену пришел интерфейс SPI
(Serial Peripheral Interface). Напомним, что для перезаписи содержимого
микросхемы BIOS, программа должна взаимодействовать с двумя блоками регистров:
регистры интерфейса Flash ROM, расположенные в составе "южного моста" чипсета и
регистры, входящие в состав самой микросхемы Flash ROM. При переходе от
интерфейса LPC к SPI, архитектура двух указанных блоков существенно изменилась.
Поэтому есть смысл рассмотреть взаимодействие программ с микросхемой BIOS,
механизмы защиты и их уязвимости применительно к современным платформам.
Материал снабжен примерами на ассемблере. Для экспериментов использовалась
материнская плата Gigabyte GA-965P-S3, построенная на чипсете Intel 965,
описанном в 2. В качестве носителя BIOS на данной плате используется
микросхема SST 25VF080B, описанная в [5]. Эта микросхема имеет объем 8 Мегабит
(1 Мегабайт) и подключается к интерфейсу SPI. Некоторые микросхемы других
производителей, использующих тот же интерфейс, описаны в [4,6,7]. Описание
интерфейса SPI приведено в [8,9]. При взаимодействии с контроллером SPI, нам
потребуется использовать механизмы доступа к конфигурационному пространству,
описанные в документах 12.

Интерфейс SPI: историческая справка

Как известно, быстродействие микросхемы постоянного запоминающего устройства
(Flash ROM), используемой в качестве носителя BIOS, практически не влияет на
общую производительность компьютера. Это связано с тем, что при старте
материнской платы, BIOS переписывается (или распаковывается) в оперативную
память Shadow RAM и при обращении к BIOS в сеансе ОС, программы работают с
оперативной памятью, а не с микросхемой Flash ROM. Поэтому, в отличие от
процессора, памяти, графической подсистемы, эволюция которых сопровождается
ростом производительности, микросхемы Flash ROM и их интерфейсы развиваются в
другом направлении. Здесь главными критериями являются уменьшение стоимости,
потребляемой мощности и занимаемой площади на материнской плате. Главный метод
достижения этих целей – уменьшение количества проводников между микросхемой BIOS
и контроллером, обычно входящим в состав "южного моста" чипсета. С точки зрения
метода подключения микросхемы BIOS, можно выделить три поколения материнских
плат:

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

2) С появлением чипсетов Intel 810, 815, на основе "хабовой" архитектуры,
шина ISA ушла в прошлое. Ряд устройств материнской платы, ранее подключаемых к
ISA (контроллер гибких дисков, порты COM и LPT, микросхема BIOS), "переехали" на
интерфейс Low Pin Count или LPC, название которого переводится как "малое
количество сигналов". Сигналы адреса, данных и управления в этом интерфейсе
передаются по пяти линиям (не считая сигналов сброса, тактирования и линий
питания), в режиме мультиплексирования во времени. Микросхемы BIOS, используемые
в таких платформах, иногда называют Firmware Hub или FWH. Пример программы
стирания и записи микросхемы BIOS, приведенный в ранее опубликованной статье
"Проникновение в BIOS ROM" N1 и N2" предназначен для таких платформ.

Отметим, что интерфейс LPC также поддерживается современными чипсетами и
разработчик материнской платы может использовать для подключения микросхемы BIOS
как LPC, так и SPI. Сфера применения интерфейса SPI не ограничивается
материнскими платами компьютеров. Внимательный читатель мог обратить внимание на
то, что из-за перехода к последовательному формату данных, каждый из описанных
интерфейсов использует больше тактов для выполнения операций чтения и записи,
чем его предшественник, что чревато снижением быстродействия. Но этого не
происходит, так как указанное обстоятельство компенсируется ростом частоты и
оптимизацией форматов данных. Шина ISA работает на частотах 5-8MHz, LPC на
33MHz, SPI на 33-50 MHz.

Архитектура микросхемы SPI Flash ROM

Микросхемы SPI Flash, в частности SST25VF080B, используют три сигнала для
приема и передачи данных. SCK (Serial Clock) – вход для тактирования
передаваемых или принимаемых данных. SI (Serial Input) – вход для передачи
данных от контроллера к микросхеме, по этой линии побитно передаются адрес,
данные для записи, и коды команд управления микросхемой. SO (Serial Output) –
выход для передачи данных от микросхемы к контроллеру, по этой линии побитно
передаются читаемые данные, а также информация о состоянии микросхемы.
Контроллер управляет микросхемой посредством команд, инициирующих операции
чтения и записи данных, стирания, чтения идентификаторов микросхемы, чтения и
записи регистра статуса и т.п.

Назначение каждого из восьми контактов микросхемы, описание всех команд, а
также другие подробности содержатся в [5].

Архитектура контроллера SPI

Контроллер SPI, входящий в состав "южного моста" Intel ICH8, содержит более
20 регистров управления и состояния. Регистры адресуются в пространстве памяти с
использованием технологии memory-mapped I/O, рассмотренной в ранее
опубликованной статье "Устройства системной поддержки. Исследовательская работа
N 9". Описание всех регистров и команд контроллера SPI выходит за рамки
данной статьи, рассмотрим основные отличия программной модели интерфейса SPI от
его предшественника - интерфейса LPC, акцентируя внимание на регистрах,
используемых при выполнении основных операций – чтении идентификаторов, записи и
стирании Flash ROM.

Напомним, что физический доступ к микросхеме BIOS (не путать с областью
Shadow RAM) осуществляется посредством окна, примыкающего к верхней границе
диапазона 0-4GB. Например, Flash ROM размером 1 Мбайт будет доступен в диапазоне
FFF00000h-FFFFFFFFh. В платформах, использующих интерфейсы ISA и LPC, через тот
же диапазон, при выполнении операций стирания и записи выполняется передача
команд и записываемых данных для микросхемы Flash ROM, а также чтение ее
статуса. Платформа, использующая интерфейс SPI, рассматриваемая в данной статье,
также поддерживает чтение содержимого микросхемы BIOS через указанный диапазон,
но для передачи управляющей и статусной информации во время записи и стирания
Flash ROM, используется другой метод доступа. Информация для выполнения цикла на
шине SPI (адрес и данные) записывается в специальные регистры контроллера SPI
(Flash Address и Flash Data соответственно), затем в регистр Software Sequencing
Flash Control передается команда на выполнение цикла обращения к Flash ROM
(чтения или записи). После этого, через регистр Software Sequencing Flash Status
можно определить момент завершения операции и проконтролировать наличие ошибок.
Данные, прочитанные из Flash ROM, находятся в регистре Flash Data.

Бит 0 (SPI Cycle In Progress) – используется для определения момента
завершения операции на шине SPI. "0" означает, что шина SPI свободна и программа
может запускать следующий цикл. "1" означает, что шина SPI занята, выполняется
транзакция. Бит устанавливается и сбрасывается аппаратно, доступен только для
чтения.

Бит 1 (Reserved) – не используется.

Бит 2 (Cycle Done Status) – устанавливается в "1" аппаратно, при
завершении транзакции на шине SPI. Для сброса, программа должна записать "1" в
данный бит.

Бит 3 (Flash Cycle Error) – устанавливается в "1" аппаратно, если при
выполнении транзакции имели место ошибки: защита записи или попытка запуска
следующей транзакции до завершения предыдущей. Для сброса, программа должна
записать "1" в данный бит.

Бит 4 (Access Error Log) – устанавливается в "1" аппаратно, если имели
место попытки обращения к микросхеме BIOS, нарушающие права доступа к заданным
диапазонам адресов, запрограммированным в конфигурационных регистрах контроллера
SPI.

Биты 5-7 (Reserved) – не используются.

Бит 9 (SPI Cycle Go) – запуск транзакции на SPI. Запись "1" в этот бит
запускает выполнение транзакции, тип и содержание которой определяются
состоянием битов 10-31 этого же регистра.

Бит 10 (Atomic Cycle Sequence) – при передаче приказа на выполнение
транзакции, запись "1" в этот бит запрещает внешним событиям вмешиваться в
процессы, происходящие на интерфейсе SPI до тех пор, пока не будут выполнены три
фазы: передача префиксной команды, передача основной команды и завершение
выполнения основной команды.

Отметим, что таким образом реализуется один из механизмов защиты от
случайного искажения содержимого микросхемы BIOS. Так называемые префиксные
команды (например, Write Enable) должны предшествовать командам, изменяющим
содержимое микросхемы (например, Write, Erase). Получив код команды, содержащий
"1" в данном бите, все три фазы контроллер выполняет аппаратно, без
вмешательства процессора до завершения выполнения основной команды.

Бит 11 (Sequence Prefix Opcode Pointer) – при использовании префиксных
команд (когда бит 10 установлен в "1", см. выше), этот бит выбирает один из двух
байтов, который будет передан в качестве префиксной команды для микросхемы SPI
Flash. При "0" выбирается младший байт регистра Prefix Opcode Configuration
Register, при "1" – старший.

Бит 12-14 (Cycle Opcode Pointer) – это битовое поле выбирает один из
восьми байтов, который будет передан в качестве основной команды для микросхемы
SPI Flash. Указанные байты находятся в регистре Opcode Menu Configuration
Register.

Бит 15 (Reserved) – не используется.

Биты 16-21 (Data Byte Count) – задает количество байтов данных для
операций чтения или записи данных. Количество равно значению этого поля плюс 1.
Например: 000000b=1 байт, 111111b=64 байта.

Бит 22 (Data Cycle) – Задает наличие байтов данных в команде. "0"
означает, данные отсутствуют (например, в команде стирания), "1" означает, что
данные присутствуют (например, в команде чтения статуса, данными является
содержимое регистра статуса).

Биты 24-26 (SPI Cycle Frequency) – задает частоту битовой
синхронизации при выполнении транзакции на SPI. Используются два значения
(остальные зарезервированы): 000b=20MHz, 001b=33MHz.

Биты 27-31 (Reserved) – не используются.

Отметим, что предварительное заполнение восьми байтов регистра Opcode Menu
Configuration Register и двух байтов регистра Prefix Opcode Configuration
Register выполняет BIOS при старте платформы. Поэтому, при формировании битовых
полей, выбирающих код команды и код префикса, программа должна просканировать
указанные регистры и найти, под каким номером в них находятся коды требуемых
операций. Варианты заполнения могут быть разными, даже среди материнских плат
одной модели, использующих различные версии BIOS. Некоторые утилиты перезаписи
Flash изменяют содержимое указанных регистров.

Детальное описание всех регистров и команд контроллера SPI приводится в [3].
Описание команд микросхемы SPI Flash приводится в 4. Информация, изложенная
выше, также проиллюстрирована ассемблерными примерами, прилагаемыми к статье.

Механизмы доступа к Flash ROM и защита записи

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

  1. Настроить регистры "южного моста" чипсета, управляющие размещением
    микросхемы BIOS в адресном пространстве для обеспечения доступа к полному
    объему микросхемы.
  2. Выключить режим защиты записи BIOS, реализуемый средствами "южного моста"
    чипсета.
  3. Выключить режим защиты записи BIOS, реализуемый средствами микросхемы
    Flash ROM.
  4. Передать команду стирания или записи микросхеме Flash ROM.

Рассмотрим подробнее эти процедуры, механизмы защиты, препятствующие их
несанкционированному выполнению и, конечно, уязвимости этих механизмов.

Как было сказано выше, при выполнении операций записи и стирания, программный
доступ к микросхеме SPI Flash осуществляется посредством регистров контроллера
SPI, без использования диапазона адресов, в котором доступен образ микросхемы
BIOS. Поэтому перенастройка чипсета для доступа к диапазону FFF00000h-FFFFFFFFh
в данном примере не потребуется.

Практика показывает, что данный механизм "защиты от снятия защиты" обычно не
активируется разработчиками BIOS. Во всех материнских платах, исследованных
автором, бит BLE=0, поэтому для снятия защиты записи достаточно установить бит
BIOSWE=1, эта операция не будет перехвачена.

Микросхема Intel ICH8 также поддерживает защиту содержимого микросхемы BIOS,
путем задания адресных диапазонов, защищенных от чтения и (или) записи.
Теоретически, на базе данного механизма можно реализовать эффективную защиту,
так как запрет программно включается процедурами BIOS при старте платформы, и
может быть снят только при аппаратном сбросе. Но и этот механизм обычно не
активируется разработчиками BIOS.

Источники информации

1) Intel Low Pin Count (LPC) Interface Specification. Revision 1.1. Document
Number 251289-001.
2) Intel P965 Express Chipset Family Datasheet – For the Intel 82P965 Memory
Controller Hub (MCH). Document Number: 313053-001.
3) Intel I/O Controller Hub 8 (ICH8) Family Datasheet – For the Intel 82801HB
ICH8 and 82801HR ICH8R I/O Controller Hubs. Document Number: 313056-001.

4) 1 Mbit SPI Serial Flash SST25VF010 Data Sheet. Document Number:
S71233-01-000.
5) 8 Mbit SPI Serial Flash SST25VF080B Data Sheet. Document Number:
S71296-01-000.

6) W25X10A, W25X20A, W25X40A, W25X80A 1M-bit, 2M-bit, 4M-bit and 8M-bit
Serial Flash Memory with 4KB sectors and dual output SPI Data Sheet.

7) MX25L802 8M-bit [8Mx1] CMOS Serial Flash EEPROM Data Sheet.

8) SPI EEPROM Interface Specification. Part Number 223-0017-004 Revision H.

SPI-on-commando

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

Немного предыстории:

Материнская плата ASUS Commando, без, модного нынче, Dual BIOS. Только Boot Block – небольшая область BIOS, не затрагиваемая записью, которая позволяет, в случае необходимости, инициализировать минимальный набор компонентов, необходимых для включения компьютера, произвести поиск BIOS на съемных носителях. Обычно подходят Floppy или флешка с файлом прошивки, переименованным в AMIBOOT.ROM (зависит от BIOS и материнской платы, точнее написано в инструкции к плате), либо CD с драйверами из комплекта поставки. Обнаружив подходящий файл, boot block запишет его в BIOS и, если все прошло правильно, компьютер после перезагрузки оживет. Неплохая фишка, несколько раз выручала, но в данном случае она не сработала, видимо, оказался поврежден и boot block.

Еще немного поиска, и вот оно, решение – статья чешского комрада (на чешском) о предельно простом программаторе и софтине к нему для прошивки микросхем флеш памяти с SPI интерфейсом! Ничего сложного, минимум компонентов.

Технически это очень простой способ, и требует лишь базового понимания схемотехники, умения припаять пару проводков и воспользоваться командной строкой (cmd). Но если вы не уверены в своих силах, лучше не рискуйте. Кроме того, всегда можно попросить друга, дружащего с паяльником.

Сборка устройства

Для сборки нам понадобится:

  • 1 разъем DB25P, можно отрезать от ненужного шнура от принтера
  • 4 шт. резисторы по 150 Ом
  • 1 любой электролитический конденсатор емкостью 100 мкФ или более и рабочим напряжением на 6.3 В или больше (нужен при запитке от БП)
  • Кусок плоского шлейфа с IDC разъемом на 10 контактов (он идеален при наличии SPI разъема на плате)
  • Штекер molex (как на жестких дисках ATA), либо гнездо для батарейки CR2032

Ничего дефицитного нет, все можно найти в куче хлама или за копейки в любом радиомагазине. В худшем случае, можно попробовать обойтись вообще несколькими кусками провода, подсоединив контакты с SPI напрямую к LPT, однако, в данном случае нужно быть предельно острожным, да и правильность записи гарантировать сложно.

Схема с сайта автора, при подключении непосредственно к чипу (для флеш-памяти с рабочим напряжением 3 вольта):

Прошивка BIOS через SPI: Схема spipgm

Программатор SPIPGM может использоваться и для микросхем флеш-памяти с рабочим напряжением 1.8 Вольт. Автор применяет для этого дополнительный модуль (своего рода переходник), который подключается к основному модулю и состоит из дополнительных резисторов для гашения напряжения и каскада усиления на транзисторах BC547 для выходного сигнала чипа (схемы на сайты автора по ссылке выше). Ниже приводится адаптация схемы подключения, сразу предназначенная для работы с чипами на 1.8В. Для получения напряжения питания в 1.8 Вольта применен делитель напряжения (на схеме серые резисторы, желательно 1/4 Ватт), делитель при желании может быть пересчитан на другие номиналы (я указываю варианты 10 и 12 Ом, или 100 и 120 Ом), а еще лучше заменен подходящим DC-DC преобразователем (например, TLV70018). Диоды любые, нужны они для минимизации ошибок и, в принципе, можно обойтись без них.

Схема spipgm для чипов памяти на 1.8В

Мы же будем подключать программатор не к чипу, а к разъему SPI_J1.

Если разъем 7 контактный, то подключается к нему следующим образом:

Схема подключения SPI к 7-ми контактному разъему

1. -> питание +3.3v 2. -> земля от питания и вывод 18 на LPT 3. -> резистор -> LPT 7 4. -> резистор -> LPT 8 5. -> резистор -> LPT 10 6. -> резистор -> LPT 9

Так же, на некоторых материнских платах бывают 9 контактные разъемы, там схема подключения немного отличается:

Схема подключения SPI к 9-ти контактному разъему

Разъем DB25P хорош тем, что внутри него можно разместить все необходимые детали. Желательно использовать максимально короткую длину кабеля, иначе будут ошибки записи. Неплохо было бы закрыть провода экраном, либо от антенного кабеля, либо просто обмотав фольгой от шоколадки, не забыв подсоединить экран к земле (GND).

Расположение элементов программатора внутри DB25P

При питании от батарейки конденсатор можно исключить. Лично я брал с +5 шины блока питания ( красный провод), подключив к нему через разъем molex и погасив напряжение диодами до

3.3v (двух-трех диодов будет достаточно).

Схема подключения диодов

Блок питания все же надежней батарейки. Имея отдельный БП можно запитать напрямую от шины +3.3 ( оранжевый провод ATX разъема). Чтобы запустить блок питания без компьютера нужно замкнуть зеленый и черный провода.

Девайс в сборе:

Собранный SPI программатор

Программа SPIPGM

Теперь можно переходить к программному обеспечению.

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

В архиве следующие файлы:

SPIPGMW.EXE – исполняемый файл для Win9x/NT/2k/XP/Vista/7 (только х32, поддержки х64 нет) IOPERM.DLL – библиотека для низкоуровневого доступа в Win9x/NT/2k/XP/Vista/7(без UAC)

Надежней всего прошивать из DOS, загрузившись с Hiren или любого другого подходящего загрузочного CD/Flash. Но можно и из Windows.

Синтаксис и основные команды:

Синтаксис: spipgmw /<команда> [имя файла] [адрес] [размер] [/l=адрес] [/d=задержка]

Основные команды:

Прошивка BIOS через SPI:

spipgmw /i – идентификация чипа. Для проверки все ли правильно подключено, программа должна определить тип установленной памяти. Если этого не происходит, проверьте правильность подключения и поддержку чипа программой.

spipgmw /d BIOS.bak – если нужно сохранить резервную копию имеющегося BIOS.

spipgmw /u – разрешение записи.

spipgmw /e – стирание.

…ждем процесс записи…

spipgmw /v FILE.rom – сравниваем записанные данные с файлом прошивки. Либо можно сделать дамп spipgmw /d test.rom и сравнить его содержимое с оригинальным файлом прошивки в каком-нибудь Hex-редакторе.

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

Неприятные конфликты, выраженные в частом отказе вашей операционной системы корректно работать с определенной группой драйверов, а также вполне оправданное желание увеличить производительность и расширить функционал используемой системной платы могут стать своеобразной причиной проявления у вас неподдельного интереса к разрешению вопроса, как обновить БИОС Gigabyte. И только когда вы будете полностью уверены в целесообразности проведения столь ответственной операции, коей является перепрошивка микрочипа базовой системы ввода/вывода, и вместе с тем полны решимости расставить все точки над "и", что ж давайте проапгрейдим вашего "железного друга"…

Flashspi exe как пользоваться

Суть да дело…

Вот и пришло время усомниться в современной компетентности некогда безупречной модели вашей материнской платы от лидера IT-индустрии тайваньской компании GIGABYTE Technology Co. Ltd. Вполне работоспособная машина вмиг потеряла свою "авторитетность", когда вы подключили жесткий диск достаточно большой емкости или, быть может, приобрели новый, более мощный центральный процессор. В результате апгрейда БИОС просто не может управлять таким "прогресивным" оборудованием, так как программная часть кода устарела и требует практического обновления. Поэтому в такой ситуации вопрос о том, как обновить БИОС Gigabyte, становится не просто важным, а крайне нуждающимся в решении.

Flashspi exe как пользоваться

Выбираем единственный и безотказный метод обновления

Безусловно, прошить БСВВ (базовую систему ввода/вывода) компьютера можно разнообразными способами. Но крайне не рекомендуется производить заведомо некорректное обновление из среды Windows. Это сугубо прерогатива DOS, поэтому операционная система не должна выполнять посреднические функции. Обращение к флеш-памяти БИОС должно быть напрямую. Только так и никак иначе. Однако такой способ прошивки требует определенных знаний, поэтому читаем, запоминаем и, соответственно, самостоятельными практическими действиями отвечаем на вопрос: "Как обновить БИОС Gigabyte?"

Номер, серия, ревизия системной платы: где и что именно искать?

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

Flashspi exe как пользоваться

Flashspi exe как пользоваться

Прошивка БИОС Gigabyte

Зная модель "материнки" и версию своей БСВВ, приступаем к следующему подготовительному этапу программного апгрейда. На сайте производителя скачиваете доступное обновление для вашей платы. Обычно это файл размером до 3 Мб, так что долго ждать не придется. Далее вам необходимо сделать загрузочную флешку, которая и будет содержать новую прошивку вашего БИОСа. Только после вышеперечисленного вы сможете осуществить процесс "заливки" более усовершенствованного программного кода на микрочип БСВВ, посредством которого управляется аппаратная часть вашего компьютера.

Подготавливаем флеш-носитель

Загрузив из интернета бесплатную утилиту под названием USB Disk Storage Format, вам остается только провести некоторые действия с интерфейсом программы, то есть настроить ее должным образом:

  • Для этого в первой строке определяем нашу флешку.
  • Указываем файловую систему: FAT32.
  • В строке Format option ставим галочку.
  • Отмечаем пункт Create a DOS Bootable Disk.
  • В ниже расположенное окошко прописываем директорию, в которой находится наш файл прошивки.
  • Нажимаем Start и ждем завершения процесса формирования загрузочной флешки.

Теперь можно обновить БИОС материнской платы Gigabyte, используя встроенные программные средства БСВВ, которые необходимо отладить.

Flashspi exe как пользоваться

Важный финальный этап — настройка

При помощи кратковременного нажатия клавиши Delete заходим в главное
меню микропрограммы по управлению аппаратными средствами нашей электронной машины. При этом флешка должна быть установлена в USB-разъем компьютера.

  • Чтобы настройка БИОС Gigabyte вернулась к значениям по умолчанию, переходим на вкладку Load Optimaized Defaults и жмем Enter. Соглашаемся на сохранение изменений, выбрав "Y".
  • Жмем F8 и заходим в меню загрузчика.
  • Отключаем первый пункт Keep DMI Data, выбрав значение Disabl.
  • Рекомендуется сохранить текущую версию прошивки, поэтому выбираем Save Bios to Drive и выполняем процесс резервного копирования.
  • Жмем Update Bios from Drive и попадаем в директорию нашей флешки.
  • Клавишей Enter запускаем файл с прошивкой.

Внимание: во время обновления БИОС ни в коем случае не отключайте компьютер, так как это может привести к довольно серьезным проблемам!

Поздравляем вас, прошивка завершена!

Flashspi exe как пользоваться

Апгрейдим видеокарту

Наверное, для вас это станет маленьким открытием, но графический модуль также можно подвергнуть качественному программному усовершенствованию или же вернуть к жизни, когда усматривается его неработоспособное состояние из-за слетевшей прошивки. Вопрос: "Как обновить БИОС видеокарты Gigabyte?" — нуждается в более детальном рассмотрении. Об этом читаем далее и разбираемся в нюансах.

  • В разделе Support&Downloads выбираем Graphics card.
  • В окошке By Chipset Series отыскиваем нашу модификацию графической карты.
  • Затем указываем Mode Name. Жмем на кнопку Search.
  • Переходим в раздел указанной видеокарты.
  • Снова заходим во вкладку Support&Downloads. Где в окошке пункта Download type необходимо выбрать BIOS, после чего в новом окне вам будут представлены версии доступных обновлений.
  • Загружаем с сервера графический БИОС и запускаем его в среде Windows.

Внимание: скачанная версия не должна быть занижена и должна выражать соответствие символьного и цифрового значения с тенденцией увеличения на одну единицу. То есть, прошивка F2 заменяется на F3, а F11 на F12… Но не в коем случае: F2 на F11 или F4 на F12! Как обновить БИОС Gigabyte, вам уже известно, теперь сделаем следующий шаг, который поможет вам проапгрейдить видеокарту.

Маленький, да удаленький

Тем не менее, интерфейс VGA Tools@BIOS имеет опцию сохранения текущей версии БИОСа. Несмотря на свои миниатюрные размеры, утилита справляется с возложенной задачей "на ура".

  • Кнопкой Backup VGA BIOS делаем резервное копирование.
  • Клавишей Flash мы находим наш файл прошивки и монтируем его в загрузчик.
  • Жмем "ОК" и по окончании перезаписи БИОСа наслаждаемся новыми возможностями и более эффективной работой нашей видеокарты.

В заключение

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

Компьютерный эксперт (4 DVD диска)
Стань продвинутым пользователем

Прошивка BIOS материнских плат от GYGABYTE

При обновлении BIOS, у пользователей возникает множество вопросов? Как обновлять, где брать обновления, какие последствия могут быть, в какой последовательности выполнять те или иные действия. Будем разбираться в этом вопросе.

1. Прошивка с помощью утилиты APP Center
2. Прошивка с помощью Q-flash или Q-flash UEFI
3. И прошивка из под DOS

Прошивка с помощью утилиты APP Center

Сперва очень важное предупреждение!

Данный способ поддерживается не всеми материнскими платами. Поддержка может различаться в зависимости от модели.

И так приступим. Сначала нам нужно скачать утилиту APP Center с официального сайта Gygabyte. В "Поддержке" указываете материнскую плату, сокет, чипсет и модель или если Вы плохо разбираетесь в этих понятиях воспользуйтесь поиском, там же введите модель Вашей материнской платы и у Вас откроется страница с выбором загрузки. В "Download type" выберите "utility". Откроется список утилит, из которых скачайте и установите APP Center. После установки запустите утилиту и нажмите Live Update.

Flashspi exe как пользоваться

После выполнения поиска обновлений у Вас откроется окно с доступными обновлениями драйверов. Выберите значёк "Не установлен", поставьте галочку на @BIOS и нажмите "обновить". Там же можете выбрать для себя ещё несколько интересных утилит.

Flashspi exe как пользоваться

После загрузки и установки откройте APP Center и запустите @BIOS. Откроется окно @BIOS

Flashspi exe как пользоваться

Здесь предлагается 2 варианта обновления BIOS, сохранение текущей версии биос и бонус в виде изменения логотипа начальной загрузки).

Если по какой-либо причине утилита не смогла самостоятельно загрузить новую прошивку, то необходимо воспользоваться следующим способом.

Прошивка с помощью Q-flash или Q-flash UEFI

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

Скачиваем прошивку для своей модели материнской платы с официального сайта. Скачанный архив нужно распаковать (будет файл типа 97XSFLN2.F2) и закачать на USB флешку. Предварительно флешку надо отформатировать в файловую систему FAT32 или FAT16 или FAT12. Утилита Q-flash работает только с этими файловыми системами. Вставляем флешку в USB порт, открываем "Мой компьютер" и жмём правой кнопкой на флешку и выбираем пункт "Форматировать. "

Flashspi exe как пользоваться

В появившемся окне выставляем файловую систему FAT32, способ форматирования по желанию и нажмите кнопку "Начать"

Flashspi exe как пользоваться

По завершению процесса копируем файл прошивки на флешку и перезагружаем компьютер. Сразу во время прохождения процедуры POST, нажмите кнопку "End", чтобы войти в Q-Flash. Вы так же можете войти в утилиту Q-Flash из BIOS Setup, нажав кнопку F8

Flashspi exe как пользоваться

В главном меню Q-Flash, используйте стрелки вверх, вниз и выберите Update BIOS from Drive и нажмите Enter. Далее выберите HDD 1-0 и нажмите Enter.

Flashspi exe как пользоваться

Flashspi exe как пользоваться

Нажмите Esc, чтобы выйти из Q-Flash и перезагрузить систему. После перезагрузки можете наблюдать новую версию BIOS на начальном экране загрузки. И в завершении нужно в BIOS выставить оптимальные настройки по умолчанию. При загрузке нажмите Del для входа в BIOS Setup

Flashspi exe как пользоваться

Выберите пункт Load Optimized Defaults, подтвердите выбор и выйдите с сохранением настроек.

Аналогичные действия и с Q-flash UEFI. Выглядит он так как на рисунке ниже.

Flashspi exe как пользоваться

Порядок действий по прошивке аналогичный. И наконец мы подошли к самому трудоёмкому процессу.

Прошивка BIOS из под DOS

Для обновления потребуется: загрузочная флешка с DOS файлами и сама прошивка. Вся процедура состоить из пяти этапов: 1) Создание загрузочной флешки, 2) Загрузка BIOS файла из сайта, 3) Загрузка с загрузочной флешки, 4) Прошивка BIOS, 5) Сброс настроек BIOS по умолчанию.

Итак по порядку:

После закачки все файлы разархивируйте. В папке usbdos файлы будут не видны, так как они скрыты, но они там есть.

Подготавливаем флешку. На ней не должно содержаться багов и ошибок. Чтобы убедиться в этом можно выполнить проверку накопителя, зайдя в свойства съёмного диска, вкладка сервис » Выполнить проверку.

Запускаем утилиту HP USB Disk Storage FormatTool 2.2.3. Выставляем галочки как показано на картинке. Путь к папке загрузочного устройства MS-DOS прописываем то место куда скачали файлы MS-DOS. (у меня например это диск С, папка usbdos. И кнопку начать. На вопрос об уничтожении файлов, нажимаем Да.

Flashspi exe как пользоваться

У Вас запустится флеш утилита

Flashspi exe как пользоваться

Вытащите флешку и при загрузке компьютера проследите на начальном экране загрузки обновлённую версию прошивки.

Flashspi exe как пользоваться

Последний раз зайдите в BIOS Setup (DEL при загрузке) и сбросьте настройки по умолчанию Loading Fail-Safe Defaults и нажмите выход с сохранением настроек Save & Exit Setup. Всё, BIOS обновлён.

Flashspi exe как пользоваться

Добавлено: 28.6.2014 • : 18832

Как обновить БИОС Gigabyte

Каомодзи на Windows

Windows 10 на калькуляторе

Windows 10 не видит флешку

Не работают наушники на компьютере Windows 10

Ноутбук с Windows 10 не видит наушники

Продолжая наш цикл статей по обновлению BIOS, сегодня мы поговорим о том как обновить БИОС Gigabyte.

Спешим напомнить, что обновление прошивки материнской платы на актуальную версию – ответственное дело и подходить к процессу надо после требуемой подготовки. В противном случае готовьтесь к непредвиденным расходам.

Ситуацию упрощает то, что испортить сам процесс обновления можно только в двух случаях:

  • Вы решили обновить, запустили процесс и у вас выключат электрическое питание;
  • Вы неправильно отформатировали флешку перед записью на нее файлов обновления.

Шансов испортить систему немного, так что давайте разберемся, как обновить БИОС на материнской плате Gigabyte.

Что такое БИОС и почему надо быть осторожным

Учитывая, что эта программа стоит в самом начале цикла работы компьютера, нарушение его корректного функционирования – серьезная проблема, решить которую обычный пользователь будет не в состоянии. При выполнении описанных инструкций для материнских плат Gigabyte будьте предельно внимательны.

Когда может потребоваться обновление

Обновить его нужно в нескольких случаях:

  1. Частое возникновение нештатных ситуаций в работе основной операционной системы;
  2. Отсутствие в прошивке материнской платы Gigabyte поддержки современных технологий (контроллеры и интерфейсы);
  3. Несовместимость различных аппаратных частей системы на материнской плате Gigabyte;
  4. Проверка при диагностике неполадок системы, как возможной их причины возникновения.

Если какой-либо из этих пунктов относится к вашей ситуации – необходимо сделать обновление БИОСа с посещением специальной странички поддержки Gygabyte .

Инструкция по обновлению

Программа для обновления БИОСа Gigabyte существует; можно использовать бесплатную GIGABYTE @BIOS. Эта утилита обновления БИОС Gigabyte идет в комплекте с материнской платой – проверьте наличие диска с драйверами от материнской платы среди коробок и документов то вашего компьютера. В случае отсутствия у вас диска, можете скачать ее из сети. Особенность этой программы в том, что она самостоятельно отслеживает появление более свежих прошивок для вашей модели материнской платы, сама скачивает и устанавливает их.

В случае, когда описанная программа вам не подходит или вы любитель все делать своими руками, действия, описанные ниже, вам подойдут. Здесь рассмотрим как обновить БИОС Gigabyte с флешки.


В общем это нужно чтобы перепрошивать 8 ножные SPI флешки. А это в свою очередь нужно чтобы восстанавливать роутеры, сбрасывать пароли на биосы и восстанавливать их, и много чего еще.

Будем делать за 10 минут самый простой программатор своими руками на Ардуино 🙂 Понадобится Arduino Pro Micro ну или любая другая (будет отличаться только распиновка на ардуино). Собираем эту сложную схему:

scheme_prog

Пофиг что 5 вольт, еще ничего не сгорело ни разу. Но только выпаивать флешки надо из платы, так как другие элементы могут быть не такими устойчивыми))))

prog1

prog2

Вот прошивка (скетч) для ардуины:

// SPI_CS - CS pin attached to SPI flash chip (8 in case of Moteino) // MANUFACTURER_ID - OPTIONAL, 0x1F44 for adesto(ex atmel) 4mbit flash

Пробовал на флешках 25Q128FVSG, 25L3206E, еще какая-то роутерная безымянная.

126 Comments

Здравствуйте! А как с Вами можно связаться? Вопросик по этой программке появился

admin

Александр

admin

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

Мансур

Здравствуйте! Я всё скачал. прошил ардуину вашим скетчем. Но до меня не доходит как залить прошивку в флешь. Нету кнопки залить или закачать. Только сохранить получается. Подскажите пожалуйста. Очень надо прошить тв с 8 мегабайтной spi. Мой прогер только до 2-х мега берёт. И ещё не понял в архиве 3 файла. 1 то понятно скетч а 2 других куда?

admin

Здравствуйте! А можно этим программатором шить флешки биосов материнок , если да а как туда залить (в прогу) прошивку для биоса?

admin

Да наверно, надо только проверить что флешки именно с SPI интерфейсом и ее нужно все ж выпаять из материнки. Чтобы точно сказать напишите модель флешки.

Filin

Было бы здорово еще исходники проги-программатора заполучить, с целью общего развития и возможного допиливания 🙂

admin

Filin

admin

Виктор

admin

Думаю с мегой2560 проблем не возникнет, номера ног для MOSI, MISO и SCK немного другие, но они должны быть соседние.
Насчет USB-TTL и COM-TTL не знаю, мне кажется есть какие-нибудь программаторы, которые работают через эти переходники, но я не встречал

Виктор

скетч я уже залил в контроллер, в программку Вашу загрузил BIN с прошивкой, контроллер при прошивке в пустоту мигает светодиодами. осталось припаять пациента и экспериментировать.

admin

Виктор

admin

admin

а 2 пин да, задается в начале. Можно любой использовать какой нравится)

Виктор

Да. и на 2560 есть 2 питания 3,3v и 5v, какое надежнее использовать?

admin

Виктор

а какой размер выставлять? в даташите есть такая инфа:

Pm25LD010: 128K x 8 (1 Mbit)

admin

Виктор

Все. Спасибо дружище. Прошил флэху. Ноут сразу запустился. До этого лежал мертвым, даже индикации заряда АКБ небыло.

Александр

admin

Александр

exit status 1
Ошибка компиляции.

Александр

Установил последнюю версию Arduino IDE, скетч залил без ошибок. Буду искать 64 разрядную ОС.

Александр

admin

Был рад помочь. Только SPI флешки

Виктор

Виктор

сори 25L3206E. такая как у Вас в инструкции.

Виктор

я вообще на WIN 10 64x шил. все в норме прошло. Воскресил ноутбук) щас буду пробовать регистратор восстановить. А вообще заказал программатор на aliexpress что б не паяться к ножкам. стоит он 200 рублей.

Виктор

Денис

Спасибо автору!
Этим способом удалось прошить SATA контроллер.

Легион

Шил 25032xx Через переходник 5 ->3.3 читает но не пишет. Воткнул напрямую. Шьет. Спасибо.

Metamorf

Андрей

admin

Андрей

Получилось с Мегой! С Nano v3 на отрез отказывается работать. Спасибище. 🙂

Сергей

admin

Алексей

Спасибо автору! Если внимательно прочитать и сделать как описано, то все получится! Впервые решил перепрошить роутер. Была под рукой запылившаяся Ардуино Нано. Соединил провода. Скачал последний IDE. Прошил успешно.

Павел

Спасибо автору огромное! Очень помогло! Вот только не решил проблему: на меге 2560 первые 128 байт заливаются сплошные FF.

admin

Может флеш не исправна?

Константин

Все собрал. ID читает. После нажатия на считывание фулфлеш программа перестает отвечать. Как с этим бороться? Заранее спасибо

admin

Огромное спасибо автору! Восстановил камеру Soocoo C30 после неудачной прошивки. Все супер !

Wikly

Автор молодец! Спасибо! Было бы прям совсем отлично, если бы сама прога на ПК была под 32х разрядную систему!

Wikly

И еще, при попытке скачать фулфлеш, почему то сохраняется только 4 КБ из 4096. Хм.
Arduino UNO,
flash: Winbond w25q32bv

Читайте также: