Контекстные подсказки будут служить для дополнительных пояснений и подробностей, чтобы не перегружать основной текст.
Не пропустите — там тоже много интересного
Сервисный центр жестких дисков - восстановление данных (информации) в Нижнем Новгороде и области.
Сервисный центр жёстких дисков, г. Нижний Новгород, ул. Ошарская, д. 69, офис 502. Мобильный телефон: 8 (831) 278-40-20.
Контактное лицо – Казаков Яков Анатольевич, эксперт-инженер. Приём заказов – только по предварительному согласованию по телефону.
Сертифицировано РОСТЕСТ. Сертифицировано OCC RetraTech. Сертифицировано Международным Центром сертификации.
ГлавнаяОбзоры

(C) Казаков Я. А., 13.09.2005, 04.01.2007

Правда и мифы о повреждённом BIOS

Данный обзор нас побудил написать тот факт, что многие клиенты СЦ при сдаче материнской платы в ремонт просят не «отремонтировать плату», а «всего лишь восстановить или переписать BIOS», не до конца понимая суть проблемы, хотя сама проблема с BIOS довольно многогранна и далеко не всегда имеет место быть. Для того, чтобы сэкономить ваши деньги и время, мы постараемся прояснить данный вопрос, разложив по пунктам как основные, так и некоторые сопутствующие сведения.

Перепрограммировать содержимое микросхемы Flash-памяти, где хранится стартовый код, т. е. BIOS (далее — микросхема BIOS) — возможно всегда, и стоимость этой процедуры действительно дешевле (иногда в разы), чем «электронный» или «аппаратный» ремонт платы. Для решения подобных вопросов в нашем сервисном центре применяется профессиональное оборудование зарубежного производства (Slovakia). Для перепрограммирования микросхема BIOS с платы демонтируется. Метод программирования ISP (In System Programming, то есть «внутрисистемно» или «внутрисхемно») мы не практикуем ввиду меньшего уровня надёжности и стабильности. Адаптеры для популярных типов корпусов микросхем, на сленге иногда называемые «панельками» или «колодками», у нас, конечно же, имеются, ну а если нужного адаптера нет, — теоретически, можно распаять непосредственно на микросхему, в зависимости от рентабельности данного мероприятия. В наличии есть следующие адаптеры: SOIC-8, PLCC-32, PLCC-44 (ZIF), TSOP-40, TSOP-48. Список поддерживаемых микросхем достаточно обширен и его можно скачать в виде текстового файла — иногда это может быть полезным, чтобы понять, сможем ли мы вам помочь с программированием. Не забывайте, правда, одну тонкость: если нужная марка микросхемы в списке отсутствует, то это ещё не значит, что наше оборудование с ней не справится (проконсультироваться по телефону в этом случае не будет лишним). Работа со многими типами памяти производится по унифицированным алгоритмам, которых относительно немного, и есть вероятность, что зная этот алгоритм, мы можем подобрать аналог для работы. Как правило, кроме алгоритма нужно подобрать чип с такой же организацией шины адреса и данных, такой же объём и, желательно, — бренд. Проверку на строгое соответствие идентификатору, конечно же, необходимо отключить в настройках ПО программатора. Необходимо понимать, что такой «фокус» не пройдёт в случае нетиповых микросхем памяти или устройств для специфичного применения, например микроконтроллеров.

Факторов, незначительно усложняющих данную процедуру (в смысле, усложняющих как по времени, так и по стоимости) — всего два. Это отсутствие самой прошивки, особенно в случае редкости модели платы (т.е. отсутствие файла с содержимым BIOS в бинарном формате на каком-либо носителе, предоставленном заказчиком, из-за чего нам придется дополнительно искать ее в Internet; к тому же, очень важно ещё и не ошибиться в ревизии устройства, которые могут быть с разным и несовместимым кодом BIOS даже для одной и той же модели), и второй фактор — отсутствие «панельки» для микросхемы Flash на плате (или, в простонародии — «кроватки» или просто адаптера; справедливо, в основном, для корпусов типа PLCC-32 c J-образными выводами, если плата относительно старая, на современных встречается адаптер для корпусов DIP-8), вследствие чего, перед процедурой программирования необходимо производить паяльные работы по выпайке микросхемы, а затем ещё и по запайке её обратно после программирования. Однако суммарная стоимость данной процедуры с учетом всех «осложнений» всё равно остается ниже стоимости «аппаратного» ремонта платы. Заметим, что всё вышеперечисленное справедливо только для тех случаев, когда сама микросхема Flash-памяти исправна, а «неисправно» лишь её содержимое, см. ниже.

По статистике ремонтов материнских плат, проблемы с BIOS крайне редки и составляют, приблизительно, не более 5 % (да и ремонтом в прямом смысле это назвать нельзя). Остальные 95 % ремонтов — это либо поиск неисправного электронного компонента и его замена с помощью паяльного оборудования (иногда требуется подбор аналога компонента), либо поиск и восстановление разрушенной пайки (редко). Имейте это в виду, если вы самостоятельно строите предположения о проблемах BIOS вашей платы, если сама неисправность возникла «на ровном месте, из ничего» (или «вчера работало, выключил, сегодня включил — не работает... припоминаю, был, вроде, «скачок» питания... наверное, BIOS слетел...»). По нашей статистике, большинство клиентов «грешат» на проблемы с BIOS только на тех основаниях, что «на самой плате всё чисто, вентиляторы крутятся, нет прогоревших или оплавленных элементов и механических повреждений, ни одна микросхема не греется сверх нормы, и мы с платой вообще ничего не делали». Поверьте, с технической точки зрения подобный диагноз если и не абсурден, то явно недостаточен — диапазон неисправностей материнских плат, как и любой другой сложной электронной техники, слишком широк, чтобы оценивать его только «на глаз». Про вероятность сказано выше — это реальные, зафиксированные нами в течение нашей длительной практики, факты.

Если неисправность платы возникла непосредственно после явных воздействий, повышающих вероятность сбоя с BIOS в десятки раз по сравнению со штатной эксплуатацией — то диагноз «необходимо перепрошить BIOS» наиболее оправдан, т. е. дает максимальную результативность при ремонте и минимальный риск получения отрицательного конечного результата. Под воздействиями мы имеем в виду, в основном, человеческий фактор, т. е. попытку самостоятельного перепрограммирования (обновления) BIOS пользователем с помощью специальных утилит от производителей плат (AWDFLASH, AMIFLASH, UNIFLASH), либо манипуляции с самой микросхемой вообще. При этом могут возникнуть следующие проблемы:

 – электрический (или, если хотите, «электронный») сбой в самой плате;
 – сбой питания (помеха) в процессе программирования;
 – «выключили свет» в процессе программирования (произошло отключение питания);
 – запрограммирована, по ошибке, не та версия BIOS или не для той ревизии платы;
 – неверно отработало служебное ПО (зависло в процессе программирования или стирания МС BIOS);
 – неверно отработало служебное ПО (некорректно определило тип микросхемы Flash-памяти);
 – разряд статического электричества, который способен повредить как саму МС BIOS, так и её содержимое (такое возможно, если по каким-либо причинам микросхему вынимали из панельки или неаккуратно транспортировали и прочее);
 – проявившаяся деградация самой микросхемы, см. ниже (потребуется её замена).

В подобных случаях мы рекомендуем не ремонтировать плату, а именно запрограммировать содержимое BIOS в микросхему Flash-памяти, так как это быстрее и дешевле, а вероятность положительного конечного результата (т. е. того, что плата заработает после процедуры перепрограммирования) — практически 100 %, судя по статистике ремонтов.

Отдельно остановимся на пункте «Неверно отработало служебное ПО». По нашей статистике, достаточно много проблем возникает именно тогда, когда пользователь обновляет BIOS, используя утилиты для Windows. Для наибольшей гарантии успеха при обновлении мы настоятельно рекомендуем, по возможности, использовать утилиты, работающие в среде MS-DOS (с использованием соответствующего загрузочного диска или «флэшки»), либо утилиты, встроенные непосредственно в саму программу BIOS.

Микросхемы Flash-памяти, применяемые для хранения стартового кода, т. е. микропрограммы BIOS — склонны к деградациям различного рода. Однако деградации крайне редки и при штатной эксплуатации практически не встречаются. Сами деградации могут быть самые разные, и конечное их проявление — собственно, неисправность микросхемы (неверный ответ chip_ID, невозможность программирования, стирания, чтения определенных ячеек памяти и прочее). Отдельно стоит упомянуть о ситуации, когда до определенного момента компьютер работал отлично, но именно после попытки обновить BIOS — последний оказался неисправен, т. е. старт платы больше произвести не удалось, хотя аппаратных сбоев не было (предположим), ПО отработало без ошибок, версия самого BIOS подобрана верно и т. д. Причина в частично деградировавшей микросхеме Flash-памяти, точнее, определённых её ячеек. Суть в том, что основная область ячеек памяти микросхемы при штатной эксплуатации работает только на чтение при включении питания (перед POST) и «износ» ячеек невозможно заметить — всё работает. Но при первой же записи всего адресного пространства (т. е. обновлении BIOS) определённая ячейка «не выдержала» (точнее, определенные биты по определенным адресам в массиве памяти утратили свойство хранить информацию, и этот факт «выплыл» наружу — перед программированием микросхема стирается). Ещё замечены сбои, имеющие массовый характер и являющиеся следствием выхода из строя внутреннего контроллера в МС BIOS и искажения информации, передаваемой как по внешней, так и по внутренней шине данных — например, после чтения «свежезаписанной» микросхемы можно увидеть, как в считанном дампе обнулён каждый четвертый байт из восьми. Подобные «сюрпризы» при ремонте возможно выявить только в процессе программирования с предварительным стиранием и никак иначе (любое программирование на профессиональном оборудовании обязательно включает в себя полный программно-аппаратный контроль процесса с отображением результатов процедур).

Основные причины деградаций и неисправностей микросхем Flash-памяти — банальное старение, скрытый брак микросхемы, скачки (превышения) питающего напряжения из-за некачественного БП и повышенный «износ записью» определённых ячеек. Дело в том, что запись в микросхему BIOS производится не только при обновлении версии, а ещё и всякий раз, когда обновляется реестр PnP устройств, или т. н. DMI pool или ESCD (Extended System Configuration Data). Это блок памяти, длиной обычно 1024 байта, где хранятся текущие системные установки, в частности, касающиеся конфигурации устройств на шине PCI и схемы распределения прерываний. Область реестра обновляется всякий раз, когда из слотов вынимают или, наоборот, подключают какие-либо платы расширения, контроллеры, видеокарты, звуковые карты, или меняют CPU или тактовую частоту и коэффициент умножения CPU (вне зависимости от способа контроля и установки этих параметров, т. е. джамперами-«перемычками» или программно). Непосредственно момент записи в вышеуказанную облась микросхемы обычно сопровождается сообщениями типа "Building DMI pool", "Updating DMI information", "Updating ESCD". Подчеркнём, что вышеперечисленное также может служить причиной сбоя при неблагоприятных условиях. Исходя из сказанного, можно резюмировать следующее — если конфигурация вашего ПК не обновляется, то запись в микросхему BIOS никогда не производится в процессе штатной работы — производится только её чтение, «износ» от которого крайне невелик. Количество же циклов «стирание-запись-чтение» всегда ограничено у любой запоминающей микросхемы, и далеко не факт, что деградация не наступит в пределах срока MTBF, заявленных производителем или спецификациями на конкретный чип. В заключение отметим, что подобная ситуация не у всех материнских плат. В некоторых платах можно обнаружить маленькую микросхему (как правило, рядом с микросхемой Южного Моста), у которой 8 выводов (тип корпуса — SOIC-8). Это т. н. Serial EEPROM небольшого объёма, и все операции записи реестра идут именно туда. На наш взгляд, это наиболее грамотное решение, т. к. количество циклов и устойчивость к деградациям у таких микросхем в разы выше, чем у Flash-памяти, применяемой для хранения кода BIOS. Поэтому, на т. н. «тестовые компьютеры» мы рекомендуем устанавливать именно такие платы, с отдельной внешней Serial-EEPROM, как правило, что-то типа 93С66 от Atmel и пр. (не путать с такой же или похожей EEPROM для хранения настроек интегрированных звукового и «сетевого» (LAN) чипсетов и расположенной, как правило, в непосредственной близости от последних!). Также отметим, что в некоторых платах в определённую область микросхемы BIOS сохраняются всякий раз ещё и настройки параметров материнской платы (BIOS Settings) при "Save setup and exit" (или резервируются при определённых условиях — например, так делает технология Asus O.S. Profile). Таким образом, получается, что даже при отсутствии внешних повреждений микросхемы — нет стопроцентной гарантии того, что она исправна и не «изношена», и что не потребуются дополнительные затраты на её приобретение (или приобретение аналога) после попытки переписать содержимое микросхемы, пусть даже и на профессиональном оборудовании.

Всегда следует помнить, что даже если содержимое микросхемы BIOS оказалось действительно повреждено без влияния человеческого фактора — это далеко не всегда может быть разовый сбой (в факт которого больше всего хочется верить пользователю). Это может быть и следствие каких-либо неполадок, например, брака самой материнской платы, брака микросхемы BIOS или её износа (именно такого износа, который может не проявиться при последующем программировании), некачественного питания и прочее. Однако по статистике ремонтов, в случае аппаратной исправности микросхемы Flash и только неисправности содержимого самого BIOS — после перезаписи корректной версии BIOS, компьютер, в большинстве случаев, работает без сбоев очень долгое время (то есть случаев рецидива мы, в основном, не наблюдали). Однако нами, всё же, были замечены серийные сбои и регулярные рецидивы произвольного разрушения содержимого микросхемы BIOS на определённых моделях плат на Socket-478 (продолжительность нормальной работы после перезаписи — около 6–12 месяцев), но причины подобных симптомов не представляется возможным выяснить ввиду спонтанного проявления неисправности (это же относится и к любым электронным неисправностям, условия для проявления которых, в силу технических причин, невозможно или крайне трудно смоделировать искусственно). К тому же, как мы упоминали, причин великое множество, да и процент подобных рецидивов крайне низок, что не может не радовать.

Если микросхема BIOS имеет физические или термические повреждения (вскрытие или прогорание корпуса, потемнение бумажной наклейки, оплавление голографической наклейки, вспучивание) — её бесполезно не только программировать (что само собой разумеется), но и искать замену микросхемы, так как, в подавляющем большинстве случаев, при подобных симптомах оказывается неисправен Южный Мост на материнской плате (официальное название — South Bridge), производить замену которого во многих случаях нерентабельно в силу различных причин (основная из которых — отсутствие в распоряжении ремонтника исправной микросхемы ЮМ по адекватной входной цене). Основная причина таких симптомов — превышение питающего напряжения, неисправность БП, брака самого ЮМ или пробой по входу USB. В случае микросхем с корпусом типа DIP (выводы с двух сторон и направлены вниз, в основном применялись в платах класса не выше Пентимум-3, т. е. чипсет не позднее intel BX, ну или некоторые старые платы Socket-462) добавляется ещё причина, связанная с установкой микросхемы в панельку наоборот, т. е. не в соответствии с ключом, т. к. микросхему в корпусе PLCC вставить наоборот просто невозможно — мешают чисто механические ограничения панельки (один из углов как бы срезан под 45 градусов, т. е. является, собственно, ключом). В этом случае, вероятность получить исправную плату только с помощью замены микросхемы и перепрограммирования BIOS — примерно 50–60 %, но в данный момент платы с микросхемой Flash-памяти в корпусе DIP не выпускаются, встречается только PLCC-32 исполнение. В современных платах (например, чипсет Intel P35) микросхемы BIOS выполнены в корпусе типа SOIC-8, запаянного на плату. Как правило, у микросхемы 8 выводов, программирование производится по последовательной шине I2C (IIC, Inter Integrated Circuit), алгоритм (тип протокола) — SPI Write (Serial Peripheral Interface от компании Motorola). В некоторых случаях аналогичные МС бывают и в корпусе DIP-8 (и установленного в панельку).

Вопреки распространенному мнению среди неопытных или начинающих пользователей, подчёркиваем, что любые неисправности чипов Flash-memory — в полном смысле слова именно аппаратные (с точки зрения внешних проявлений) и никакому программному ремонту не поддаются. То есть например, если определённый чип определённого производителя выдаёт на программаторе (или на спец. ПО) неверный ID, т. е. уникальный идентификатор типа микросхемы, — то переписать этот ID ни на каком «супер-программаторе» невозможно: аппаратная организация МС таких возможностей не предоставляет. К тому же, даже если в ПО программатора принудительно отключить проверку ID и, всё же, попытаться «прошить» микросхему, то это не увенчается успехом — ПО программатора сообщит об ошибке, как правило, уже на стадии стирания микросхемы, не говоря уже о программировании или корректной верификации записанного содержимого. Также ни одна стандартная EEPROM или т. н. Firmware HUB не поддерживает режим «скрытия дефектов», т. е. определенных сбойных ячеек памяти, аналогично жёстким дискам. Подобные «продвинутые новшества» присутствуют, как правило, только в микросхемах для более серьёзного применения, например DOC (DiskOnChip). Эти устройства применяются в качестве мобильных «электронных» накопителей в т. н. одноплатных компьютерах (про них — тут) и embedded-системах для индустриального применения, см., например, информацию о бренде M-Systems на английской версии Wikipedia). В целом, DOC можно назвать прародителем современных твердотельных накопителей — SSD.

Если диагноз пользователя о проблемах с BIOS основывается на явной симптоматике (например, компьютер при старте явно или косвенно пишет на экране английским текстом о проблемах с BIOS), то гарантия получения положительного конечного результата после программирования микросхемы BIOS крайне высока, но, опять же, не стопроцентна, вне зависимости от происхождения неисправности (человеческий фактор, либо, «само-собой»), т. к. с таким симптомом встречаются «хитрые», т. е. нестандартные аппаратные неисправности материнской платы (но, очень редко). Резюмируем — процент получения положительного результата от программирования микросхемы BIOS при сообщениях на экране типа "Bios ROM Checksum error" или "Detecting floppy drive A: media" — стремится к 100 %. Однако прежде чем перепрограммировать МС BIOS, рекомендуем убедиться в полной исправности ОЗУ вашего ПК с помощью временной замены на заведомо исправные совместимые модули памяти (SIMM, DIMM, RIMM, DDR и т. п. — в данном случае это совершенно не важно — деградациям и сбоям подвержены любые модули). Принцип в том, что первоначальные операции, а именно — распаковка и подсчёт контрольной суммы содержимого BIOS, производятся, разумеется, непосредственно в ОЗУ и, если оно неисправно, мы рискуем получить сообщение о неверной контрольной сумме BIOS при совершенно исправной микросхеме и её содержимом. И всё это — ещё даже не начиная POST (PowerOnSelfTest). Также отметим, что наличие каких-либо сообщений при старте ПК, связанных с повреждением содержимого BIOS, говорит о том, что в самой МС уцелел т. н. бут-блок (boot block — небольшой программный код, выполняющий первоначальную инициализацию и распаковку основного блока кода), и, в некоторых случаях, есть возможность перепрограммировать содержимое МС BIOS, не демонтируя МС из материнской платы (загрузив файл BIOS через, например, дисковод 3.5" или USB-Flash), но для подобных процедур необходимо соблюдение определённых правил и последовательности действий, зависящих от модели платы и прочих факторов, и удаётся это не всегда.

Резюмируя вышесказанное, можно сделать следующий вывод: ремонт платы и восстановление BIOS — разные процедуры и путать их не следует, так как в случае ремонта платы вы не рискуете ничем и, соответственно, не оплачиваете работы по ремонту в случае получения неудачного результата (или оплачиваете только предварительную диагностику). В случае проведения процедуры восстановления BIOS — вы платите только непосредственно за эту процедуру, и риск получения неудачного результата лежит только на вас, т. е. на Заказчике. Сервисный инженер в данном случае ни при чём — он честно сделал всё, о чем вы его попросили (кстати, в подавляющем большинстве случаев — в вашем присутствии, т. е. под вашим контролем процесса). Так что, «прошивать» или нет — решать вам.


На главнуюНаверх