на материнской плате индикатор пост кодов
POST card или ликбез по диагностике
Приветствую, дорогие хабровчане!
Не первый год занимаюсь диагностикой и реанимацией десктопов и ноутбуков, преимущественно на дому у клиента. Со временем напрашивается вывод, что с собой необходимо иметь чемодан, а возможно, даже чемоданище с комплектующими для диагностики неисправной железки. Некоторые могут мне возразить — «Можно обходиться и без комплектующих! Опыт позволяет выполнять диагностику и без них!». Это отчасти верно, но стопроцентной точности не дает, это как факт.
Опираться на POST коды спикера? Не всегда можно конкретно определить на что же он ругается. Например, один длинный два коротких сигнала спикера сигнализируют о неисправности видеосистемы, но это не всегда означает неисправность самой видеокарты. Встречаются, например, проблемы с доп. питанием на эту самую видеокарту, а это уже неисправность блока питания.
Здесь я остановлюсь и расскажу уважаемым читателям, что же такое сигналы спикера.
При включении компьютера запускается BIOS (базовая система ввода/вывода) — факт известный всем, но упомянуть будет не лишним. В составе BIOS’а есть программа под названием POST (power on self testing). Как следует из названия, программа предназначена для начальной диагностики устройств и портов материнской платы.
Процедура инициализации POST сопровождается выводом изображения на монитор:
После прохождения POST видим:
В процессе выполнения POST генерирует так называемый POST код, который записывается в специальный диагностический регистр.
И дальше управление переходит к загрузчику операционки.
Собственно, сигналы спикера являются кодами ошибок при выполнении POST, если POST выполняется без ошибок, мы слышим один короткий сигнал.
POST карта — это плата расширения, чаще всего встречаются карты формата PCI:
Так же есть карты формата miniPCI (для ноутбуков):
И встречаются карты для LPT (требуют дополнительного питания по USB):
Имея на руках десктоп с замечательным диагнозом «не включается» (не путать с «не заводится»), чаще всего сначала последовательно отключается некритичная периферия — звуковуха, тюнер, сетевуха, харды, приводы.
Затем, если в процессе не выявлены неисправности, начинается замена комплектующих: оперативки, видеокарты, процессора (ага тот самый чемоданище с железками).
Но вот у нас есть в руках вместо чемодана с железом POST карта, мы экономя время минуем вышеописанную процедуру с заменой/отключением железа (экономим в среднем минут 40, замечу, что после отключения одной железки производится как минимум один цикл включения — выключения).
Собственно, вставляем нашу замечательную карту и наблюдаем за тем что происходит.
А происходит следующее — на табло карты у нас появляются пост коды, которые указывают нам на то, что тестируется в данный момент. Дойдя до неисправного элемента, процедура выполнения POST останавливается и на табло остается код, собсно к сабжу чаще всего прилагается мануал с POST кодами (они разнятся в зависимости от производителя и версии BIOS).
Сопоставив код ошибки с его расшифровкой, чаще всего получаем конечный диагноз, как то: неисправная память, процессор или же компонент на материнской плате.
Предполагаю написать серию статей по диагностике, если тема интересна хабровчанам.
POST коды ошибок BIOS диагностика с помощью POST карты
Предлагаю Вашему вниманию основные POST-коды для BIOS производителя AMI. Небольшое вступление. Сразу после нажатия кнопки POWER на системном блоке персонального компьютера управление ПК переходит непосредственно к БИОС. В это время (в начале запуска ПК) процессор подает сигнал на микросхему BIOS, который инициализирует загрузку микропрограммы BOOT-ROUTINE Базовой Системы Ввода-Вывода.
Микропрограмма BOOT-ROUTINE вызывает подпрограмму самотестирования POST.
Подпрограмма POST (Power-On Self Test) тестирует установленное на компьютере оборудование, настраивает его и готовит к работе.
Для каждого отдельного оборудования (процессор, память, видеокарта, клавиатура, порты ввода/вывода и.т.д) производится отдельный тест. Каждый тест имеет свой уникальный номер, который называется POST-кодом. POST-код записывается в порт Manufacturing Test Port (с адресом 0080H) до начала выполнения каждого отдельного теста процедуры POST.
После того, как POST-код теста записан в порт Manufacturing Test Port начинается процедура тестирования соответствующего оборудования. Если процедура тестирования завершилась неудачей в порту Manufacturing Test Port остается POST-код последней процедуры (которая и вызвала ошибку). Если узнать POST-код последней процедуры, можно определить устройство, которое вызвало ошибку.
Чтение POST-кодов можно осуществить несколькими способами.
Поскольку BIOS выпускается несколькими производителями, соответственно, для каждой BIOS отдельного производителя имеется своя таблица POST-кодов.
AWARD BIOS6.0 Полная загрузка
Данная таблица содержит POST-коды, которые отображаются при полной процедуре POST.
Award BIOS 6.0: сокращенная загрузка
Сокращенная процедура выполняется при установке в BIOS параметра Quick Power On Self Test.
AMIBIOS8.0
PhoenixBios 4.0
Оригинальные и достоверные таблицы POST-кодов можно найти на соответствующих сайтах производителей BIOS: «AMI» и «Award». Иногда таблицы POST-кодов приводятся в руководствах к материнским платам.
1. Тест программно-доступных регистров процессора (POST-коды: 01, 02).
2. Проверка периода регенерации оперативной памяти (POST-код: 04).
3. Инициализация контроллера клавиатуры (POST-код: 05).
4. Предварительная проверка работоспособности энергонезависимой памяти (СMOS) и состояния батареи питания СMOS (POST-код: 07).
5. Инициализация регистров чипсетового набора значениями, принятыми по умолчанию (POST-код: BE, hex).
6. Проверка наличия и определение размера оперативной памяти (POST-код: C1, hex).
7. Определение наличия и размера внешней кэш-памяти (POST-код: С6, hex).
8. Проверка первых 64 кб оперативной памяти (POST-код: 08).
9. Инициализация векторов прерываний (POST-код: 0А, hex).
10. Проверка контрольной суммы CMOS (POST-код: 0В, hex).
11. Обнаружение и инициализация видеоконтроллера (POST-код: 0D, hex).
12. Проверка видеопамяти (POST-код: 0E, hex).
13. Проверка контрольной суммы BIOS (POST-код: 0F, hex).
14. Проверка контроллеров и регистров страниц DMA (POST-коды: 10,
11, hex).
15. Проверка системного таймера (POST-код: 14, hex).
16. Проверка и инициализация контроллеров прерываний (POST-коды: 15…18, hex).
17. Инициализация слотов шин расширения (POST-коды: 20…2F, hex).
18. Определение размера и проверка основной и расширенной памяти (POST-коды: 30, 31, hex).
19. Повторная инициализация регистров чипсетового набора в соответствии со значениями, установленными в CMOS Setup (POST-код: BF, hex).
20. Инициализация контроллера FDD (POST-код: 41, hex).
21. Инициализация контроллера HDD (POST-код: 42, hex).
22. Инициализация COM- и LPT-портов (POST-код: 43, hex).
23. Обнаружение и инициализация математического сопроцессора (POST-код: 45, hex).
24. Проверка необходимости ввода пароля (POST-код: 4F, hex).
25. Инициализация расширений BIOS (POST-код: 52, hex).
26. Установка параметров Virus Protect, Boot Speed, NumLock, Boot Attempt в соответствии со значениями, установленными в CMOS Setup (POST-коды: 60…63, hex).
27. Вызов процедуры загрузки операционной системы (POST-код: FF, hex).
Как видно из приведенной последовательности, возможность отображения диагностических сообщений на экране монитора появляется только после инициализации видеоконтроллера, и если процедура POST остановилась на одном из предыдущих этапов, то увидеть на каком именно не представляется возможным.
Дополнительно скачать Коды и диагностические сообщения POST BIOS
POST коды для системных плат настольных ПК
Порт 80-е коды POST [post-code] для системных плат для настольных ПК
Напечатайте | Образец | Frequency |
Ошибка памяти | Три длинных сигнала | 1,280 Гц |
Предупреждение системы охлаждения | Четыре перемежающихся сисгнала: Высокий тон, низкий тон, высокий тон, низкий тон | Высокий тон: 2,000 Гц Низкий тон: 1,600 Гц |
Сообщения об ошибках, выдаваемые BIOS
Сообщение об ошибке | Описание |
Обнаружен процессор, который не предназначен для использования с данной системной платой. Использование неподдерживаемых процессоров может привести к неправильной работе, повреждению системной платы для настольных ПК или процессора, или сокращению срока эксплуатации. Система отключится через 10 секунд. | Установленный процессор не совмести с системной платой для настольных ПК. |
CMOS Battery Low | Возможна, разрядка батареи. Замените батарею. |
CMOS Checksum Bad | Ошибка проверки контрольной суммы ОЗУ. Возможно, память CMOS повреждена. Запустите программу BIOS Setup для обновления значений. |
Memory Size Decreased | Объем памяти уменьшился со времени последней загрузки. Если модули памяти не были удалены, возможно, память неисправна. |
No «Boot» Device Available | Система не нашла загрузочного устройства. |
POST-коды порта 80h
Во время теста POST BIOS генерирует коды прохождения (POST-коды [post-code]) и направляет их в порт ввода/вывода 80h. Если процедура POST завершилась неудачно, последний сгенерированный POST-код остается в порту 80h. Этот код можно использовать для определения причины ошибки.
Отображение POST-кодов
Для отображения POST-кодов можно использовать один из следующих методов.
POST-плата (дополнительная плата для шины PCI) | POST-плата декодирует данные порта и отображает их на светодиодном дисплее. POST-плату необходимо устанавливать на разъем 1 PCI-шины. | |
Встроенный светодиодный дисплей для отображения POST-кодов | Некоторые Системные платы для настольных ПК Intel® включают встроенный Ведомый для показа Кодов POST |
Диапазоны POST-кодов порта 80h
В таблицах ниже все POST-коды и значения представлены в шестнадцатеричном формате.
Диапазон | Категория/Подсистема |
00 – 0F | Коды отладки: Могут использоваться, как средство для отладки любым модулем PEIM/драйвером |
10 – 1F | Процессоры системы |
20 – 2F | Память/набор микросхем |
30 – 3F | Восстановление |
40 – 4F | Зарезервировано для использования |
50 – 5F | Шины ввода/вывода: PCI, USB, ISA, ATA и т.д. |
60 – 6F | Сейчас не используется |
70 – 7F | Устройства вывода: Все консоли вывода |
80 – 8F | Зарезервировано для будущего использования (для новых кодов консоли вывода) |
90 – 9F | Устройства ввода: Клавиатура/Мышь |
A0 – AF | Зарезервировано для будущего использования (для новых кодов консоли ввода) |
B0 – BF | Загрузочные устройства: Включают в себя стационарные и съемные носители. |
C0 – CF | Зарезервировано для использования |
D0 – DF | Выбор загрузочного устройства |
E0 – FF | E0 – EE: Другие коды F0 – FF: FF — ошибка прерывания процессора |
POST-коды порта 80h
Код POST | Описание эксплуатации POST | ||||||||||||||||||
00 — 0F | Коды отладки: может использоваться, как средство для отладки любым модулем PEIM/диском | ||||||||||||||||||
10 — 1F | Процессор системы | ||||||||||||||||||
10 | Включение процессора системы (загрузочный процессор) | ||||||||||||||||||
11 | Инициализация кэш-памяти процессора (включая SP) | ||||||||||||||||||
12 | Начало инициализации приложений процессора | ||||||||||||||||||
13 | Инициализация SMM | ||||||||||||||||||
14 | Инициализация сетевого подключения | ||||||||||||||||||
15 | Преждевременный выход при инициализации драйвера платформы | ||||||||||||||||||
16 | Инициализация драйвера SMBUS | ||||||||||||||||||
17 | Вход в исполнимый код SMBUS в режиме чтения/записи | ||||||||||||||||||
19 | Вход в режим программирования тактового генератора CK505 | ||||||||||||||||||
1F | Невосстановимая ошибка процессора | ||||||||||||||||||
20 — 2F | Память/набор микросхем | ||||||||||||||||||
21 | Инициализация компонентов набора микросхем | ||||||||||||||||||
22 | Чтение SPD через модули памяти DIMM | ||||||||||||||||||
23 | Идентификация модулей памяти DIMM | ||||||||||||||||||
24 | Программирование параметров тактовой частоты с помощью контроллера памяти и модулей DIMM | ||||||||||||||||||
25 | Конфигурирование памяти | ||||||||||||||||||
26 | Оптимизация установок памяти | ||||||||||||||||||
27 | Инициализация памяти, например ECC | ||||||||||||||||||
28 | Тестирование памяти | ||||||||||||||||||
2F | Системе не удалось обнаружить память или пригодную память | ||||||||||||||||||
30 — 3F | Восстановление | ||||||||||||||||||
30 | Восстановление после сбоя было запущено по запросу пользователя | ||||||||||||||||||
31 | Восстановление после сбоя было запущено ПО (повреждено флэш-устройство) | ||||||||||||||||||
34 | Загрузка капсулы восстановления | ||||||||||||||||||
35 | Передача управления капсуле восстановления | ||||||||||||||||||
3F | Невозможно восстановить | ||||||||||||||||||
50 — 5F | Шины ввода/вывода (PCI, USB, ISA, ATA и т.д) | ||||||||||||||||||
50 | Нумерация шин PCI | ||||||||||||||||||
51 | Передача ресурсов на шину PCI | ||||||||||||||||||
52 | Инициализация контроллера Hot Plug PCI | ||||||||||||||||||
53 – 57 | Зарезервировано для шины PCI | ||||||||||||||||||
58 | Переустановка шины USB | ||||||||||||||||||
59 | Зарезервировано для USB | ||||||||||||||||||
5A | Переустановка шины PATA/SATA и всех устройств | ||||||||||||||||||
5B | Зарезервировано для ATA | ||||||||||||||||||
5C | Переустановка SMBUS | ||||||||||||||||||
5D | Зарезервировано для SMBUS | ||||||||||||||||||
5F | Невосстановимая ошибка шины ввода/вывода | ||||||||||||||||||
60 — 6F | Сейчас нет действительных POST-кодов в диапазоне 60 — 6F. Если POST-код будет отображен в данном диапазоне, это код из диапазона B0 — BF. (На 7-сегментном ЖК-дисплее, символ ‘b’ выглядит как 6).
13Инициализация SMM50Нумерация шин PCI51Передача ресурсов на шину PCI92Обнаружение присутствия клавиатуры90Переустановка клавиатуры94Очистка входного буфера клавиатуры95Самотестирование клавиатурыEBВызов графических режимов BIOS58Переустановка шины USB5AПереустановка шины PATA/SATA и всех устройств92Обнаружение присутствия клавиатуры90Переустановка клавиатуры94Очистка входного буфера клавиатуры5AПереустановка шины PATA/SATA и всех устройств28Тестирование памяти90Переустановка клавиатуры94Очистка входного буфера клавиатурыE7Ожидание воода данных пользователем01INT 1900Готово для перезагрузки POST Card или ликбез по диагностике Part IIДоброго времени суток %habrauser%! Совсем недавно мною был написан пост о POST картах, хороша тавтология а ;-)? Как я упоминал в комментах, к своей первой статье, заказал я себе карточки — эту для ноутов и эту для десктопов. Заказ был оформлен в двадцатых числах января (точных дат не могу указать, заказом, отслеживанием и получением занимался не я). На днях пришла эта карта, ноутбучная дескать, десктопную приходится ждать. Тут хочу выразить некоторое негодование — Карта пришла в бандерольке, внутри бандероль проклеена генератором душевного спокойствия, сама карта упакована в него же и в анти статик, так что к вопросам упаковки китайцы подходят основательно. В анти статике у нас сама карта, USB шнур и User Manual. Эта карта предназначена для mini PCI и так же имеет (не предназначена, почему читаем далее) порт для LPT, USB нужен для питания карты. Первое что захотелось сделать — естественно протестировать! Но ноута под рукой нет, так что я с чистыми помыслами решил тестить ее на LPT порте. Собственно воткнул карту При подаче питания карта показывает «—» и «FF». Потом карточка несколько раз меняет изображение, и опять «FF00» загрузилась система. Резонный вопрос и желание узнать что же за коды промелькнули, заставляет сделать нехитрое умозаключение, что две единственные кнопки позволяют листать коды, и вуаля! Так оно и есть, тыкаем на кнопку, видим Теперь на левом табло порядковый номер POST кода, на правом сам код. (не по порядку ибо в начале повторяется) Тут мы переходим к одному интересному моменту и не самому впечатляющему выводу. «+5 вольт» светится все время пока мать включена, вполне логично ибо USB 😉 «+3,3 вольт» такой же индикатор питания как и «+5 вольт» не горит когда нет питания на PCI слоте (либо мать не поддерживает, чета не разобрался с точным переводом, в оригинале «FRAME» светится когда сигнал «FRAME» активен. FRAME (I/O) Сигнал FRAME выдается действующим главным абонентом шины PCI. Переход FRAME на низкий, т.е. активный, уровень инициирует фазу адресации. Чтобы обозначить последнюю фазу данных, завершающую цикл работы шины, главный абонент должен вновь деактивировать FRAME. «CLK» светится когда сигнал «CLK» активен. Через этот контакт передается сигнал таймера PCI, сопровождающий все операции PCI. В соответствии с техническими требованиями, его частота лежит в интервале от 0 до 33 МГц. «RSET» светится во время перезагрузки «+12» включаем формальную логику «-12» включаем формальную логику «-5» то же самое что и «+3,3 вольт» BIOS на матери Phoenix. FF в моем случаях это наличие +5 на USB А5 в мануале не указан (просто пустует) AA ожидание нажатие клавиши F2 55 enable USB devices На фотографиях светится «+5 вольт» Итак «интересный момент, в мануале есть таблица со всеми кодами к финксовскому, АМИшному Авардавскому BIOS-ам, „не самый впечатляющий вывод“ в том что по LPT карта гонит полную чушь! К слову о мануале — 28 страниц формата А6 чистейшей информации по POST кодам, обозначениям сигналов спикера и работы CMOS. Переводам займусь в ближайшее время, и представлю хабросообществу, но думаю дождаться десктопной карты что бы сделать сводный мануал. Жду вторую карту и ноутбук мученник для полноценных тестов и обзоров.Перевожу и курю мануал. P.S Воскресенье шестой час утра, может что то и упустил. Вопросы в комментах, по необходимости дополню. P.P.S статья была написана в режиме реалтайм, „на лету“ пока писал перезагружался и фотал. При подготовке статьи использованы две цитаты отсюда Звуковые сигналы и ошибки POST различных версий BIOSОшибки возникают в работе любого оборудования и часто в самый неожиданный момент, например, во время игры происходит зависание, после которого компьютер отказывается грузиться и показывает неизвестную вам надпись или просто пищит. Чтобы быстро решить проблему нужно знать, что привело к появлению ошибки: умерла какая-то плата, посыпался винчестер или просто запылился вентилятор на процессоре и произошёл перегрев. Для решения таких проблем BIOS, являющийся основой любого компьютера и предназначенный для настройки оборудования и обеспечения функций ввода/вывода, имеет широкие диагностические возможности, которые выявляют ошибки и сообщают об этом с помощью звуковых сигналов и сообщений. Ошибки возникают в работе любого оборудования и часто в самый неожиданный момент, например, во время игры происходит зависание, после которого компьютер отказывается грузиться и показывает неизвестную вам надпись или просто пищит. Чтобы быстро решить проблему нужно знать, что привело к появлению ошибки: умерла какая-то плата, посыпался винчестер или просто запылился вентилятор на процессоре и произошёл перегрев. Для решения таких проблем BIOS, являющийся основой любого компьютера и предназначенный для настройки оборудования и обеспечения функций ввода/вывода, имеет широкие диагностические возможности, которые выявляют ошибки и сообщают об этом с помощью звуковых сигналов и сообщений. Давайте рассмотрим как происходит запуск ПК. После нажатия кнопки питания компьютера включается блок питания, и, если все питающие напряжения в допустимых значениях, включается центральный процессор, который обращается к микросхеме BIOS для выполнения процедуры тестирования (POSТ):
В случае успешного завершения процедуры POST, запускается система инициации загрузочного сектора (на приведённом ниже скриншоте POST не пройден из-за ошибки контрольной суммы CMOS). Если обнаружена ошибка, проверка останавливается с подачей звуковых сигналов или вывода сообщения на экран монитора. В тех случаях, когда система не может вывести сообщение о неисправности на экран, используются звуковые сигналы, но некоторые современные корпуса не имеют динамиков (speaker), а значит, мы не услышим звукового сигнала об ошибке. В таком случае можно воспользоваться индикатором POST-кодов (о них вы узнаете в конце статьи). Если причину неполадки не удалось определить по звуковому сигналу или сообщению на экране, то стоит посмотреть POST-код ошибки и расшифровать его. На некоторых материнских платах встроены индикаторы POST-кодов, а расшифровка их находится в руководстве пользователя данного оборудования.
|