Тем,
кто в силу служебного долга, либо просто по собственной инициативе
работает с компьютерным "железом", наверняка знакома ситуация, когда
по какой-то причине собранный с нуля, модернизированный или же свежеразогнанный
компьютер не подает признаков жизни или замирает на каком-то этапе
загрузки. В таком случае раздосадованный сборщик обычно сломя голову
бежит к продавцу, чтобы заменить некондиционные, по его мнению,
комплектующие, пока не истекла на них гарантия. А квалифицированный
специалист пытается путем перебора плат на тестовом компьютере или
стенде выяснить причину неисправности. Однако это достаточно неблагодарное
занятие далеко не всегда приводит к решению проблемы.
Как же разобраться
в подобной кризисной ситуации с минимальными потерями нервов и времени?
Немного теории
Разработчики ПК платформ
х86 в свое время предусмотрительно встроили в BIOS различные процедуры
диагностики неисправностей. После подачи на материнскую плату питания,
если исправны такие основные узлы, как генератор тактовых частот,
системная шина и шина адреса/данных, а также правильно сформированы
все базовые напряжения, центральный процессор начинает выполнение
программного кода BIOS. При этом происходит инициализация регистров
набора системной логики, определяется тип и размер памяти, поиск
и инициализация видео подсистемы, последовательных и параллельных
портов ввода-вывода, накопителей на гибких и жестких магнитных дисках,
поиск дополнительного оборудования, установленного на материнскую
плату - всего процесс состоит более, чем из ста операций. Эти процедуры
носят название POST (Power-On Self Test, что в вольном переводе
обозначает "Самотестирование по Включению Питания"). При удачном
прохождении всех этапов BIOS переходит к загрузке операционной системы.
Для того чтобы
можно было произвести внешний контроль за прохождением POST, в пространстве
портов был выделен специальный - Manufacturing Test Port 0080h.
Сюда в начале выполнения каждой из процедур инициализации вышеуказанных
устройств BIOS выводит код, однозначно определяющий назначение процедуры
инициализации и соответственно устройство, которое будет проинициализировано
либо протестировано.
В случае успеха
BIOS начинает инициализацию следующего устройства и записывает в
порт 0080h следующий код и т.д. Если же устройство проинициализировать
не удается, инициализация последующих устройств не производится,
и BIOS либо останавливает свое выполнение, либо пытается обратиться
к устройству повторно. Таким образом, зная последний POST код, можно
определить какое из устройств, предположительно, дало сбой.
Всем известно,
что некоторую диагностику неисправностей системы на этапе старта
можно провести с помощью звуковых сигналов системного динамика.
Эти сигналы - ни что иное, как продублированные значения порта 0080h.
Но таких сигналов всегда значительно меньше, чем диагностических
кодов, поэтому о квалифицированной и исчерпывающей диагностике неисправностей
ПК с их помощью говорить не приходится.
Как правило,
POST коды каждого производителя BIOS не зависят от модели материнской
платы. Секрет единообразия в том, что создание BIOS - процесс весьма
трудоемкий и сложный. По этой причине все, кто работает с POST диагностикой,
знают буквально наперечет характерные ошибки и коллизии, которые
могут привести к нестарту компьютерной системы или зависанию на
ранних этапах инициализации чип сета.
POST карты
Для захвата
диагностических кодов и их наглядного отображения служат так называемые
POST карты. Очевидно, что эти карты предназначены только для ранней
диагностики материнских плат и готовых компьютерных систем до загрузки
операционной системы. Если же в персональном компьютере выполняются
все этапы инициализации BIOS и успешно загружается операционная
система, то дальнейшую работу по поиску неисправностей следует вести
при помощи тестовых программ в среде операционной системы.
В связи с
отказом производителей компьютерных комплектующих от поддержки устройств
в стандарте ISA и появлением материнских плат, у которых отсутствуют
ISA слоты, особую актуальность приобретают PCI POST карты как единственные
недорогие диагностические устройства, позволяющие производить квалифицированное
обслуживание и наладку компьютерных систем.
Одна из них
- диагностическая плата IC80+PCI™, оригинальная разработка киевских
специалистов из технической лаборатории компании Entry. Эта плата
обладает рядом отличительных особенностей, делающих ее чрезвычайно
привлекательным средством диагностики.
Дело в том,
что с недавних пор на рынке как дань моде начали появляться весьма
простые и недорогие диагностические PCI карты, выполненные с явными
нарушениями спецификации PCI. Характерной чертой подобного рода
устройств являются ошибки в работе, приводящие к зависанию компьютера
на различных этапах старта, индикация недостоверных кодов, в том
числе и отображение хаотически изменяющихся шестнадцатеричных последовательностей.
Нельзя
забывать также, что заявления производителей упрощенных POST карт
о полной совместимость со всеми необходимыми стандартами, основаны
только на энтузиазме разработчиков. Если нарушена главная заповедь
устройства, работающего на PCI шине, а именно, что любая транзакция
происходит только при участии сигнала CLK, то о достоверности декодируемой
информации не может быть и речи.
Одним из характерных
проявлений плохой работы упрощенных POST карт является снятие тактирующего
сигнала с PCI слота, в котором она установлена, в результате выполнения
процедур Power Management. POST коды в такой ситуации перестают
отображаться. Иными словами, слот, в который установлена карта,
не соответсвующая спецификации PCI, система с определенного момента
считает пустым.
К несчастью
эта проблема проявляется не на всех версиях BIOS и счастливый обладатель
недорогого тестового устройства заметит эту проблему в самый неподходящий
момент.
Более продвинутые
POST карты, разработанные лидерами в области диагностики с применением
самых передовых технологий, не уступают по сложности современным
звуковым или видео картам. И стоят они как хороший RAID контроллер
поэтому зачастую оказываются не по карману не только простому наладчику,
но и даже сервисному центру небольшой компьютерной фирмы, не говоря
уже об энтузиастах-оверклокерах, которым подобное устройство также
не помешало бы.
Разработчикам
IC80+PCI™ на удивление удалось избежать ошибок первых и не допустить
заоблачных цен вторых.
Особенности и дополнительные возможности
IC80+PCI™
полностью соответствует спецификации "PCI
Local Bus Specification, Revision 2.2" . На практике это означает,
что IC80+PCI™ работает на всех материнских платах без исключения.
0.25 микронная технология микросхем, на базе которой выполнена POST
карта, позволяет корректно обслужить декодирование сигналов PCI
на логическом и физическом уровне. При этом карта работает и на
старых PCI материнских платах в стандарте PCI 2.0 и 2.1.
Карта позволяет
выполнять индикацию POST кодов в псевдо-пошаговом режиме. Это важно
на этапе раннего старта системы, когда дефекты сильнее всего дают
о себе знать.
IC80+PCI™
отображает состояние системных сигналов. Если в компьютерной системе
имеются серьезные повреждения, то исследование прохождения PCI транзакций,
это единственный способ отказаться от дальнейшего тестирования и
приступить к ремонту. Большинство характерных ситуаций описаны в
документации к IC80+PCI™. В отличие от всех известных POST карт,
IC80+PCI™ имеет средства самотестирования.
Карта бесплатно
комплектуется тестовым PCI TestBIOS™. Это уникальное решение, позволяет
при помощи IC80+PCI™ тестировать компьютерные системы даже в отсутствие
системного BIOS.
Расширенные
комментарии к POST кодам Award Software, American Megatrends, Phoenix
Technologies и Microid Research доступны на сайте производителя.
Информация постоянно обновляется и дополняется по мере появления
новых наборов системной логики и материнских плат.
Рекомендации
Нужно сказать, что зачастую
отказы являются следствием не поломки, а аппаратных нестыковок,
несовместимости программных моделей или банальных проблем с контактами.
Ниже приведен
краткий перечень часто встречающихся неисправностей, которые могут
быть идентифицированы при помощи IC80+PCI™ и PCI TestBIOS™.
На практике эти неисправности составляют большую часть всех проблем,
возникающих из-за выхода из строя компонентов материнских плат,
сбоев периферийных устройств, выхода из строя адаптерных плат, частичного
или полного повреждения содержимого BIOS, нарушения правил установки
дополнительных устройств или нарушения правил сборки. >
Отсутствие основных питающих напряжений (3.3V, 5V, +12V,
-12V)
Отсутствие или нарушение генерации в цепях тактирования
PCI Clock
Различные виды неконтактов в слотах и разъемах материнской
платы
Механические повреждения слотов и разъемов
Неправильная установка частоты системной шины
Неправильная установка коэффициента умножения
Сбои cache L2 в системах с Socket 7 и Slot 1
Ошибки инициализации видеоадаптера, конфликты и несовместимость
BIOS видеоадаптеров, других устройств и BIOS материнских
плат
Несовместимость памяти
Конфликты и несовместимость адаптерных плат на уровне
прерываний, адресов, DMA каналов
Пробои или короткие замыкания линий PCI
Пробои или короткие замыкания шины данных SI/O или его
компонентов, контроллера клавиатуры, звуковых, SCSI и других
контроллеров, интегрированных на материнскую плату и подключенных
непосредственно к системным шинам ISA или PCI
Короткие замыкания шины данных во внешних адаптерах,
установленных в ISA или PCI слоты
Ошибки формирования и/или приема высокоприоритетных запросов
прерывания NMI, SMI
Сбои и частичное разрушение микропрограмм BIOS, несовпадение
контрольных сумм, нарушение структуры DMI блока
Все перечисленные
особенности IC80+PCI™ позволяют выполнять диагностику и классифицировать
ряд неисправностей недоступных другим устройствам подобного класса.
Полное описание
POST кодов, текущую поддержку всего спектра выпускаемой продукции,
ответы на часто задаваемые вопросы, презентации новых разработок
и другую полезную информацию Вы найдете на странице разработчика
в Интернет: http://ic.doma.kiev.ua