Приветствую Вас ГостьСреда, 15.05.2024, 03:44

Сайт о компьютерах и софте


Каталог статей

Главная » Статьи » Железо » Материнская плата

Перепрошивка BIOS
Категории каталога
Сети [1]
Моддинг [1]
Материнская плата [2]
Принтеры [1]
Друзья сайта
Порно онлайн
Скачать порно бесплатно
Порно фотки
Частная эротика
Фильмы онлайн
Скачать кино бесплатно
Документальное кино
Голые звезды
Игры для PC бесплатно
Маленькие игры
Counter-Strike портал
World of WarCraft
Lineage2
ТВ и радио онлайн
Софт-портал
Музыкальные клипы онлайн
Музыкальный портал
Музыкальные клипы
Весь юмор
Все для сотовых
Бесплатные книги
Все аватары
Портал о графике
Линейки для форумов
Бесплатный хостинг картинок
Форум с оплатой
Портал о любви
Все о беременности и малышах!
Портал по диетологии
Свадебный портал
Все о маникюре

Статистика

Немного теории

BIOS хранится в специальной микросхеме флэш-памяти, установленной на материнской плате. Существует несколько разновидностей этих микросхем. «Обычная» флэш-память устанавливается практически на всех материнских платах с набором системной логики производства SiS и VIA. Также эти микросхемы установлены на старых материнских платах с чипсетом Intel до ВХ включительно. У таких микросхем имеется 8 выводов под шину данных, 17 или 18 адресных сигналов (в зависимости от объема – 1 или 2 Мбит) и несколько управляющих сигналов, таких как разрешение на чтение и запись, выбор микросхемы. Электрически флэш-память соединена с южным мостом, поэтому если при замене ты неправильно установишь микросхему в колодку или воспользуешься неисправной, то может пострадать и микросхема чипсета.

Флэш-память соединена с южным мостом, поэтому в случае неправильной установки микросхемы в колодку пострадает чипсет!

В адресном пространстве флэшка занимает самые верхние адреса E0000-FFFFF для 1 Мбит (для остальных – аналогично, потому рассмотрим на примере 1 Мбит, Award BIOS). После включения компьютера процессор выполняет свою первую команду по адресу F000:FFF0. После самой первичной инициализации происходит проверка контрольной суммы E000:0-FFFF+F000:0-BFFC. Если она нарушена, происходит запуск бутблока, расположенного по адресам F000:C000/E000-FFFF (последние 8/16 Кб).

Для принудительной инициализации boot-block’а достаточно замкнуть расположенные рядом линии A15 и A16 (выводы 2 и 3).

Берем boot-block насильно!

Boot-block производит инициализацию дисковода и пытается считать с него систему или запустить программу восстановления основного кода. Если требуется принудительно запустить бутблок (для перешивки), можно испортить контрольную сумму вручную. Для этого замыкаем старшие адресные линии. Например, можно замкнуть расположенные рядом линии A15 и A16 (выводы 2 и 3). Объем бутблока равен 16 Кб, или 2^14, в результате чего он никак не пострадает, а контрольная сумма остального содержимого не совпадет.

Зачем это может понадобиться? На материнских платах Gigabyte, как и на многих других, микросхемы флэш-памяти впаяны, и чтобы перепрошить их в программаторе или на аналогичной материнской плате у соседа, придется осваивать премудрости планарного монтажа микросхем. А самая часто встречающаяся неисправность связана с тем, что пользователь в процессе обновления записывает в флэш прошивку от похожей по названию материнской платы. Например, постоянно путают GA-8PE800 и GA-8PE800-RS или на плату GA-8IPE1000 заливают прошивку от GA-8IPE1000-G. Вот в подобном случае для реанимации платы без вмешательства паяльника и понадобится принудительный запуск бутблока. Для линий адреса такое замыкание совершенно безопасно. После проверки контрольной суммы BIOS’а происходит копирование содержимого флэш-памяти в ОЗУ, сама микросхема отключается, а для того чтобы программы поверили, что обращаются к ПЗУ, на область адресов BIOS устанавливается атрибут ReadOnly. Делается это для ускорения работы с BIOS’ом (оперативная память намного быстрее, чем медленная ПЗУ). Вся дальнейшая работа происходит только с этим образом флэшки. Именно поэтому можно беспрепятственно вытаскивать микросхему сразу же, как только на экране появится надпись: "Starting Windows/DOS/linux". Когда потребуется работа непосредственно с самой микросхемой (например, запись в нее ESCD/DMI), и используются специальные команды, индивидуальные для каждого чипсета, необходимо снова подключить микросхему к шине и отключить после окончания операций.

Тонкая душевная организация

Особенность программирования флэш-памяти заключается в том, что нельзя запрограммировать микросхему целиком и также нельзя переписать один произвольный байт. Микросхемы имеют блочную организацию. Например, модель i28F001BX имеет структуру 112+4x2+8. Что это означает? Первый блок имеет объем 112 Кб, и в нем располагается собственно BIOS. Далее следуют два небольших блока по 4 Кб в которых хранятся данные ESCD/DMI/CMOS, а также пароли. В последней части объемом 8 Кб располагается boot-block. У разных микросхем организация может сильно отличаться.

С появлением чипсетных наборов серии i8xx получили распространение и новые типы чипов флэш-памяти. Это так называемые FWH (FirmWareHub) и LPC (LowPinCount) микросхемы. Основное их отличие от обычных вариантов заключается в том, что для передачи данных и адреса используется всего пять сигнальных линий (отсюда и название LPC). Электрически обе эти новые разновидности полностью совместимы, и отличаются только протоколами обмена данными. Есть универсальные микросхемы, которые умеют работать в обоих этих режимах. В режиме LPC общение между мостом и флэшкой происходит лишь по четырехбитной шине(LAD0-LAD3), а пятый LFRAME# служит в качестве стартового (для начала операции по обмену данными). Плюс две линии: LRESET# и LCLK#, которые полностью аналогичны своим собратьям на материнской плате, – вот и весь набор нужных проводов (остальные – опционально).

FWH кроме этих сигналов обзавелись еще и четырьмя идентификационными сигналами ID0-ID3, которые позволяют включить до 16 устройств с таким интерфейсом на одну шину. Есть простой способ отличить обычные микросхемы флэш-памяти от LPC/FWH. Необходимо тестером проверить сопротивление между общим проводом и 28-м выводом микросхемы (подключенной к материнской плате). У LPC/FWH этот вывод «сидит» на земле, а у обычной микросхемы тестер покажет сопротивление в районе 1 кОм.

Для принудительного запуска бутблока у микросхем LPC/FWH можно воспользоваться следующим способом. Берем щуп от тестера и один конец прикрепляем на землю. Дальше включаем компьютер, отсчитываем в уме интервал примерно в две-три секунды и тонким щупом на долю секунды касаемся одного из контактов LAD0-LAD3 (выводы с 13-го по 17-й на микросхеме). Если попал удачно, то через несколько секунд сработает бутблок. Если же замыкание произойдет раньше времени, то процедура POST зависнет, если позже, то микросхема будет уже отключена. Если есть под руками индикатор POST-кодов, то замыкать надо сразу, как появится код C3h. Тыкая щупом в микросхему, важно не ошибиться и не ткнуть мимо – последствия могут быть непредсказуемыми вплоть до самых плачевных.

Замыкая щупом выводы LPC/FWH-микросхем, важно не ошибиться – последствия могут быть весьма плачевны.

Боевое крещение

Теперь от теории перейдем к практике. Прежде всего, после включения компьютера смотрим, обращается ли он к дисководу. Если это происходит, то boot-block в микросхеме цел. Раньше работать приходилось вслепую, сейчас же большинство бутблоков умеют инициализировать PCI и AGP видеоадаптеры. Если обращения к этим устройствам не последовало, то можно попробовать запустить их принудительно вышеописанными способами. BIOS’ы от Award позволяют загрузиться с дискеты (для этого она должна быть загрузочной), запустить программу перепрошивки и восстановить BIOS.

Имя, под которым файл прошивки лежит на сайте производителя, boot-block’ом не воспринимается! Необходимо переименовать его по названию материнской платы и дать расширение .bin.

Современные бутблоки, написанные фирмой Award, хорошо понимают не только дискеты – они научились работать и с винчестерами. Например, чтобы восстановить BIOS на материнской плате GA-7N400, можно записать файл прошивки в корневой каталог жесткого диска (файловая система на диске должна быть FAT32). Файлу надо дать имя по названию материнской платы 7n400.bin. Имя, под которым он лежит на сайте производителя (например, 7n400.f5), не воспринимается. После этого запускается компьютер, появляется надпись: «Scanning Bios Image in Hard Disk» и через 10-20 секунд происходит перезапись поврежденной микропрограммы. Для того чтобы этот процесс пошел, часто бывает необходимо заменить AGP-видеоплату на простую PCI.

Для того чтобы процесс восстановления BIOS’а прошел гладко, часто необходимо заменить AGP-видеокарту обычной PCI.

У материнских плат фирмы Gigabyte технология восстановления испорченного BIOS’а (при наличии под рукой такой же материнской платы) очень простая. Берется рабочая материнка, к ней подключается винчестер, который воспринимает команды HPA (например, WD на 20-40 Гб), запускается с дискеты программа MHDD версии не ниже 3.0 и с жесткого диска убирается HPA (восстанавливается исходный размер HDD). После этого перезагружаем компьютер и смотрим, появилась ли снова на винчестере отрезанная по HPA область. В эту область BIOS материнской платы записал свою резервную копию. Теперь подготовленный таким образом жесткий диск подключаем к неисправной материнской плате, включаем и через 20-30 секунд после восстановления прошивки и перезагрузки получаем полностью работоспособную плату. Такую же систему хранения резервной копии BIOS’а на некоторых своих платах начала использовать и фирма ABIT.

Плюшки от AMI

Не отстает от конкурента и AMIBIOS: он позволяет выбрать устройство, на котором расположен носитель с образом BIOS’а для процедуры восстановления. По умолчанию обращение идет к накопителю на гибких магнитных дисках (FDD). Для этого в корневую директорию носителя, с которого идет восстановление, нужно записать файл BIOS’а с зарезервированным именем AMIBOOT.ROM и удерживать комбинацию клавиш Ctrl+Home с момента старта системной платы до момента обращения BIOS’а к накопителю. Процесс восстановления отражается на экране, а об успешном завершении будет сигнализировать серия из нескольких звуковых сигналов. Зарезервированное имя AMIBOOT.ROM может быть изменено разработчиком платы по своему усмотрению. У материнских плат Asus оно, как правило, содержит имя материнской платы. Для AMIBIOS использование комбинации клавиш при запуске компьютера позволяет не только восстановить или обновить системный BIOS, но и выполнить установку параметров CMOS по умолчанию (Clear CMOS). Для этого надо воспользоваться сочетанием клавиш Ctrl+PgUp, что приведет к очистке NVRAM. Комбинация клавиш Ctrl+PgDn позволит выполнить обновление BIOS’а без изменения содержимого CMOS.

Для прошивок AMIBIOS зарезервировано имя AMIBOOT.ROM, однако конкретные производители материнских плат могут изменять его по своему усмотрению.

Когда молчит boot-block...

Что же делать, если boot-block молчит? Это может произойти, если неисправна сама микросхема флэш-памяти или же в нее по ошибке было записано что-то совсем левое, не имеющее отношения к BIOS’у. Например, мне попадались микросхемы, куда вместо образа BIOS’а был зашит exe’шный файл программы прошивальщика :).

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

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

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

Горячая подменка

Второй, народный способ – так называемый «Хот Свап». Заключается он в следующем. Включается работоспособная материнская плата, на которой установлена аналогичная микросхема флэш-памяти, после запуска ОС «родная» микросхема извлекается из гнезда и вместо нее устанавливается та, которую необходимо перешить. Запускается утилита, предназначенная для этой процедуры, и обновляется прошивка.

Какими программами лучше всего пользоваться для обновления прошивок? Наиболее распространены две утилиты от ведущих производителей BIOS’ов – это Awdflash (от Award) и AMIflash (от AMI). Это универсальные программы, которые работают с большинством материнских плат с самыми различными наборами системной логики. Некоторые производители матплат, такие как Asus, Intel, Dell, Fujitsu, для обновления BIOS’а используют свои собственные специфические утилиты, которые надо искать на соответствующих сайтах технической поддержки. Там же необходимо брать и подробные (или не очень) описания работы с этими программами.

AWDFLASH – самый популярный, но, на мой взгляд, не самый удобный. Запускать его надо с ключиками:

awdflash <имя_прошивки> /cd/cp/py/sn/f/r

В этом случае BIOS перешьется без лишних вопросов.

Ключики означают следующее:
/py – Program=Y – программировать без запроса подтверждения.
/sn – Save=No – не сохранять на диск старую версию содержимого микросхемы.
/f – не проверять, от той ли платы этот BIOS и BIOS ли это вообще. Этот ключик полезен тогда, когда прошивка производится на материнской плате другой модели.
/r – после окончания прошивки комп сразу перезагрузится.

Ключи /cd/cp (Clear DMI, Clear PNP) настоятельно рекомендуются. К ним также можно добавить автоматический сброс CMOS (по умолчанию) – /cc.

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

AMIFLASH – не такой популярный, как awdflash, но, в отличие от него, намного более удобный в работе.

Запускается из командной строки:

amiflash <имя_прошивки> /b /n /-o /-c /-d /-r /v /-i /-k /-e /-g

Если нужно сохранить старый BIOS, то нужно запускать утилиту с такими ключиками (_без_пробела_ после /s):

amiflash /b /n /-o /-c /-d /-r /v /-i /-k /-e /-g/s<имя_прошивки для сохранения>

Опять же, не поленись сделать bat-файлик с содержимым типа:

:\utils\amiflash.exe %1 /b /n /-o /-c /-d /-r /v /-i /-k /-e /-g

Подробное описание значения всех ключей можно узнать, набрав в командной строке amiflash.exe/? или почитав документацию на сайте производителя.

Капризный Asus

Если в качестве программатора используется материнская плата от Asus, то для нее не подойдут «стандартные» прошивальщики, так как все(!) асусовские BIOS’ы (начиная с самых древних, для первых Pentium’ов) блокируют обычные способы перешивки. Для восстановления таких матплат потребуется использовать фирменные асусовские утилиты. Для старых плат – это aflash, для новых – придется смириться с утилитами под Windows. Программа aflash очень удобна, понятна и достаточно универсальна и, главное, не пристает с вопросами, прошивая все подряд. Всем обладателям плат Asus к перешивке нужно подходить с особым вниманием, ибо восстановление при ошибке – дело непростое. Если даже ты имеешь опыт и даже немалый, будьте бдителен(!) – инженеры Asus используют в своих творениях крайне изощренные меры для защиты BIOS’ов. Иногда без программатора обойтись не получится.

Главное при работе с BIOS’ом – это внимание и аккуратность. Успехов в работе!

Всем обладателям плат Asus к перешивке нужно подходить с особым вниманием – инженеры Asus используют в своих творениях крайне изощренные меры для защиты BIOS’ов!


  Категория: Материнская плата | Добавил: comp (11.05.2008)
 
 Просмотров: 5243 | Комментарии: 4
 | Рейтинг: 5.0/2 |
 Всего комментариев: 3
 
3 Kmaod  
0
Красава!!!

2 Kneecucky  
0
Столько подчерпнул много нового. Спасибо за это.

1 Vasiliy  
0
Мотивирующий пост :)

 
Заработай!


Загрузка.