Код ошибки пост карты теневой загрузочный диск. POST коды ошибок BIOS диагностика с помощью POST карты. Выполнение процедур POST из RAM

POST (Power-On Self-Test) - самотестирование основных узлов компьютера после включения, выполняемое специальным программным кодом в BIOS. Как известно, процедура POST важная часть инициализации компьютерного железа. Она предваряет запуск жизненно важных компонентов компьютера, его старт. Однако, в результате поломки или неправильной настройки BIOS, компьютер может отказаться запускаться. Что же тогда делать? Ведь на экран в таком случае не выводятся никакие диагностические сообщения. На помощь придет диагностика и расшифровка звуковых посткодов . Если вы производите ремонт компьютера своими руками первый раз, краткая таблица расшифровки посткодов и связанных с ними неисправностей будет хорошим подспорьем.

Расшифровка звуковых постсигналов, сигналов POST BIOS

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

Последовательность звуковых сигналов POST Описание ошибки
1 короткий Успешный POST
2 коротких Обнаружены незначительные ошибки.На экране монитора появляется предложение войти в программу CMOS Setup Utility и исправить ситуацию.Возможно не подключена или неисправна клавиатура
3 длинных. Ошибка контроллера клавиатуры
1 короткий, 1 длинный. Ошибка оперативной памяти ОЗУ
1 длинный, 2 коротких Ошибка видеокарты
1 длинный, 3 коротких. Нет видеокарты или ошибка видеопамяти (неисправна видеокарта)
1 длинный, 9 коротких. Ошибка при чтении из ПЗУ (микросхема в которой записана программа BIOS)
Повторяющийся короткий
  • Проблемы с оперативной памятью ОЗУ
Повторяющийся длинный. Проблемы с ОЗУ
Повторяющаяся высокая-низкая частота. Проблемы с центральным процессором CPU
Непрерывный. Проблемы с блоком питания

PCI Посткарта. Расшифровка кодов посткарты

Расшифровка поскодов звукового бипера (динамика) имеет смысл в случае работоспособной материнской платы. В случае же выхода оной из строя мы получим полную тишину. В таком случае на помощь придет посткарта.

Расшифровка кодов посткарты в формате PDF доступна по .

Видео работы китайской pci посткарты на ПЛИС Altera

Любой ремонтник компьютеров знает, что POST Card PCI применяется для диагностики неисправностей при ремонте и модернизации компьютеров типа IBM PC (или совместимых с ним).

Такие карты в России и СНГ производит несколько компаний: Мастер Кит (Москва), e-KIT Post Cards, ACE Lab (Н.Новгород), BVG Group (Москва), ЕПОС: PCI TESTCARD (Украина), IC Book: IC80 (Украина), Jelezo: Jpost Full (Украина), VL Comp: PC Analyzer (Белорусия). Есть и зарубежные решения, но у нас их не найти в свободной продаже.

POST Card PCI представляет собой плату расширения компьютера, которая может быть установлена в любой свободный PCI слот (33 МГц) и предназначена для отображения POST кодов, генерируемых BIOS"ом компьютера, в удобном для пользователя виде.

Условно все POST-карты можно разделит на серийные и внесерийные (комплекты для самостоятельной сборки).

Обзор существующих POST-карт

Рассмотрим недостатки POST-карт различных производителей.

Родоначальником производства PCI POST-карт в России считается компания ACE Lab, которая имеет большой опsn в производстве программно-аппаратных комплексов для диагностики и реионта компьютеров.

Мастер Кит POST Card PCI NM9221 (набор для самостоятельной сборки)/BM9221 (готовая плата). Один недостаток — семисегментный индикатор смотрит «мордой вниз».

Достоинства данной POST Card: собрана на ПЛИС серии EPM3XXX, поддерживающей Hot-socketing (более надежна, так как меньше вероятность сжечь POST Card) и работающей на 3.3V (лучше совместимость с современными спецификациями PCI2.3 и PCI3.0), поддержка новых и старых чипсетов благодаря сменным прошивкам.

e-Kit_02 Недостатки данной POST Card: собрана на ПЛИС устаревшей серии EPM7XXX, не поддерживающей Hot-socketing (менее надежна, так как больше вероятность сжечь POST Card) и работающей на 5.0V (могут быть проблемы с современными PCI2.3 и PCI3.0).

ACE Lab PC-POST PCI-2 . Не удобно, что индикатор смотрит вниз, зато есть возможность выбрать один из 4х возможных портов, откуда будет считываться информация.

ACE Lab PC POWER PCI-2 — полнофункциональный программно — аппаратный комплекс, который позволяет выполнять ряд диагностических тестов, запускаемых из установленного на плате ПЗУ, ориентированных на выявление системных ошибок и конфликтов оборудования.

BVG Group Dual POST . Достоинства: простая и дешевая ПОСТ-карточка. Сделана на базе ПЛИС Altera EPM3032ALC44-10. Несет на себе пять светодиодов (питание на PCI — -12V, +12V, +3.3V, +5V, и сигнал RESET) и два семисегментных индикатора с обоих сторон платы. Индикатор может показывать одну цифру — это значит, что на PCI слот, в который вставлена эта ПОСТка, тактирование не приходит.

Характерным недостатком данной карточки из-за её урезанности является снятие тактирования со слота PCI, в который установлена эта карточка после этапа POST, на котором происходит инициализация генератора (для Award BIOS — 26h), в результате чего посткоды перестают отображаться. Методы «борьбы» с этой болезнью следующие:

  • Если в BIOS Setup присутствует пункт Detect DIMM/PCI Clock — перевод оного в Disable не даст генератору снять частоту с неиспользуемых слотов, в результате чего Dual POST будет работать «как нормальная» ;) , показывая все «полагающиеся» посткоды.
  • Если проверяемая плата имеет Sharing PCI Slots (обычно — дальние от процессора два разъема, у которых одно прерывание «на двоих»), то можно в один из них вставить любое «нормальное» PCI-устройство (видео, звуковую, сетевую и т.п.), а в другой — посткарточку. При инициализации генератор, увидев «полноценное» PCI-устройство на Sharing PCI Slots — часто (зависит от конкретной платы-биоса) не снимает тактирование с обоих, чем с успехом «воспользуется» Dual POST.

BVG Group POST Pro. Вместо семисегментников используется ЖК-дисплей с бегущей строкой, но стоимость карты при этом около 300 у.е., что неоправданно высоко.

ЕПОС: PCI TESTCARD. Продвинутая серия «Master» из полезных «наворотов» по большому счету позволяет дополнительно лишь выбирать переключателями на плате диагностический порт в диапазоне 0-3FFh, который используется для вывода POST-кодов. Недостатки данной POST Card: собрана на ПЛИС устаревшей серии EPM7XXX, не поддерживающей Hot-socketing (менее надежна, так как больше вероятность сжечь POST Card) и работающей на 5.0V (могут быть проблемы с современными PCI2.3 и PCI3.0). Имеется также информация о выводе неверных POST кодов на некоторых материнских платах.

IC Book: IC80 . Известный представитель «взрослых» посткарточек, отличительной особенностью которого является присутствие не только «наворотов» в области мониторинга, но также и уникальные (не имеющие аналогов) возможности по отладке системы в пошаговом режиме. Плата имеет несколько отличительных особенностей:

  • Выбор адресов, используемых в целях диагностики: 80h/81h и 84h/85h, 378h, 1080h
  • Вывод диагностических кодов выполняется на два индикатора
  • Вывод информации на внешний индикатор
  • Индикация напряжения Stand-By 3.3V
  • Поддержка четности на шине PCI
  • Поддержка серверных вариантов шины PCI

Небольшой недостаток: не совсем корректно работает пошаговый режим на новых платах.

Jelezo: Jpost Full. Зависает на некоторых материнках (в основном GIGABYTE) в чёрный экран после первой перезагрузки.

VL Comp: PC Analyzer . Простенький и дешевый пост-контроллер, изюминкой которого является совмещение в одном конструктиве сразу двух типов посткарточек — для ISA и для PCI.

POST Card PCI BM9222 с ЖК-диплеем

Сегодня мы рассмотрим PCI POST-карту нового поколения POST Card PCI BM9222 производства московской компании Маскер Кит.

Технические характеристики

  • Напряжение питания: +5 В.
  • Ток потребления, не более: 100 мА.
  • Частота шины PCI: 33 МГц.
  • Адрес диагностического порта: 0080h
  • Индикация POST кодов: на ЖК-дисплее в две строки по 16 символов (первая строка – POST-код в шестнадцатеричном виде и через тире — тип БИОСа, вторая строка – описание ошибки в виде бегущей строки).
  • Индикация сигналов PCI шины: светодиоды на лицевой стороне платы — RST (сигнал сброса PCI) и
  • CLK (тактовый сигнал PCI).
  • Индикаторы наличия напряжений питания PCI шины: +5V, +12V, -12V, +3,3V.
  • Совместимость с материнскими платами чип-сетах: Intel, VIA, SIS.
  • Размер печатной платы: 95.5 x 73.6 мм.

Конструкция

Конструктивно POST Card PCI выполнен на двусторонней печатной плате из фольгированного стеклотекстолита с размерами 95.5 x 73.6 мм. В целях улучшения электропроводности контактов устройства, ламели покрыты никелем.

Принцип работы POST Card PCI

При каждом включении питания компьютера, совместимого с IBM PC, и до начала загрузки операционной системы процессор компьютера выполняет процедуру BIOS под названием «Самотест по включению питания» — POST (Power On Self Test). Эта же процедура выполняется также при нажатии на кнопку RESET или при программной перезагрузке компьютера. Во избежание недоразумений здесь следует отметить, что в некоторых особых случаях с целью сокращения времени загрузки компьютера процедура POST может быть несколько урезана, например, в режиме «Quick Boot» или при выходе из режима «сна» Hibernate.

Основной целью процедуры POST является проверка базовых функций и подсистем компьютера (таких как память, процессор, материнская плата, видеоконтроллер, клавиатура, гибкий и жесткий диски и т. д.) перед загрузкой операционной системы. Это в некоторой степени застраховывает пользователя от попытки работать на неисправной системе, что могло бы привести, например, к разрушению пользовательских данных на HDD. Перед началом каждого из тестов процедура POST генерирует так называемый POST код, который выводится по определенному адресу в пространстве адресов устройств ввода/вывода компьютера. В случае обнаружения неисправности в тестируемом устройстве процедура POST просто «зависает», а предварительно выведенный POST код однозначно определяет, на каком из тестов произошло «зависание». Таким образом, глубина и точность диагностики при помощи POST кодов полностью определяется глубиной и точностью тестов соответствующей процедуры POST BIOS"а компьютера.

Следует отметить, что таблицы POST кодов различны для различных производителей BIOS и, в связи с появлением новых тестируемых устройств и чипсетов, несколько отличаются даже для различных версий одного и того же производителя BIOS. Таблицы POST кодов можно найти на соответствующих сайтах производителей BIOS: для AMI это http://www.ami.com , для AWARD — http://www.award.com , иногда таблицы POST кодов приводятся в руководствах к материнским платам.

Для отображения POST кодов в удобном для пользователя виде служат устройства под названием POST Card. Предлагаемая POST Card для шины PCI — это плата расширения компьютера, вставляемая (при выключенном питании!) в любой свободный PCI слот (33 МГц) и имеющая текстовый индикатор для отображения POST кодов и текстовой информации о текущем коде. Из особенностей работы данной POST Card хочется отметить то, что после включения питания компьютера и до появления первого активного сигнала RESET PCI на индикатор POST Card выводится сообщение приветствия “BM9222 MASTERKIT POSTCARD”.

Кроме того, на POST Card имеются светодиоды, отражающие состояния сигналов CLK и RST шины PCI.

Поиск неисправностей при помощи POST Card PCI

Последовательность действий при ремонте компьютера с использованием POST Card выглядит следующим образом:

1. Выключаем питание неисправного компьютера.
2. Устанавливаем POST Card в любой свободный PCI слот материнской платы.
3. Включаем питание компьютера.
4. При необходимости подстраиваем контрастность (при установке LCD экрана, для PLED – подстройка не требуется) изображения путем нажатия на кнопки (дальняя от материнской платы кнопка увеличивает контрастность, ближняя — уменьшает) или изменяем тип отображаемого БИОСа – путем нажатия и удерживания одной из кнопок и нажатия на вторую (после отжатия кнопок смениться тип БИОСа, отображаемый в первой строке индикатора после кода ошибки). Все вышеперечисленные настройки сохраняются при отключении питания и загружаются при следующей подаче напряжения на POST Card.
5. Читаем информацию на индикаторе POST Card – это POST код, на котором «зависает» загрузка компьютера, и его описание во второй строке.
6. Осмысливаем вероятные причины.
7. При выключенном питании производим перестановки шлейфов, модулей памяти и других компонентов с целью устранить неисправность.
8. Повторяем пункты 3-7, добиваясь устойчивого прохождения процедуры POST и начала загрузки операционной системы.
9. При помощи программных утилит производим окончательное тестирование аппаратных компонентов, а в случае плавающих ошибок — осуществляем длительный прогон соответствующих программных тестов.

При ремонте компьютера без использования POST Сard пункты 3-6 этой последовательности просто опускают и со стороны ремонт компьютера выглядит просто как лихорадочная перестановка памяти, процессора, карт расширения, блока питания, и в довершение всего — материнской платы.

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

Как же на практике осуществляется ремонт компьютера с использованием POST-Card?

Прежде всего, при включении питания перед началом работы процедуры POST должен произойти сброс системы сигналом RST (RESET), что индицируется на POST Card сменой сообщения приветствия на другие сообщения POST Card. Если смены не происходит в течение 2-4 секунд (время отображения приветствия примерно 0.7 сек) или появилось одно из сообщений “NO CODES” или “RESET” на более чем 1 сек, то в этом случае рекомендуется немедленно выключить компьютер, вытащить все платы и кабели, а также модули памяти из материнской платы. В системном блоке необходимо оставить подключенной к блоку питания материнскую плату с установленным процессором и плату POST Card. Если при последующем включении компьютера нормально проходит сброс системы и появляются первые POST коды, то, очевидно, проблема заключается во временно извлеченных компонентах компьютера; возможно также, в неправильно подключенных шлейфах. Вставляя последовательно память, видеоадаптер, а затем и другие карты, и наблюдая за POST кодами на индикаторе, обнаруживают неисправный модуль.

Вернемся теперь к случаю, когда даже не проходит начальный сброс системы (на индикаторе POST Card не происходит смена сообщения приветствия другими сообщениями). В этом случае либо неисправен блок питания компьютера, либо сама материнская плата (неисправны цепи формирования сигнала RESET) или процессор не стартует. Точную причину можно установить, подсоединив к материнской плате заведомо исправный блок питания.

Рассмотрим теперь случай, когда сигнал сброса проходит, но никакие POST коды на индикатор не выводятся (удерживается сообщение “NO CODES”); при этом, как было описано ранее, тестируется система, состоящая только из материнской платы, процессора, POST Card и блока питания. Если материнская плата совершенно новая, то причина может быть заключена в неправильно установленных джамперах материнской платы. Если все джамперы и процессор установлены правильно, а материнская плата все же не запускается, следует заменить процессор на заведомо исправный. Если же и это не помогает, то можно сделать вывод о неисправности материнской платы либо ее компонентов (например, причиной неисправности может являться повреждение информация в FLASH BIOS).

Главным достоинством POST Card является то, что она не требует для своей работы монитор. При этом тестирование компьютера при помощи POST Card возможно на ранних этапах процедуры POST, когда еще не доступна звуковая диагностика. Еще одна немаловажная особенность – отображение POST-кодов на всех типах БИОСов, выводящих коды по адресу 0×0080), но не описанных в ПЗУ.

PLED индикатор

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

Многоязыковая поддержка

POST-карта позволяет выводить коды для различных типов БИОСов на различных языках (английский и русский по умолчанию). Смена типа БИОСа осуществляется путем одновременного нажания сразу обеих кнопок. Данная пост карта расшифровывает 3 вида БИОСов в 2 языках (всего 6 типов). Русифицированный БИОС в названии содержит строку “RU”.

Сами строки с описанием кодов располагаются с микросхеме 24С256 — 32кБ SEEPROM. Эта микросхема установлена в панельку, и опытные пользователи могут извлечь её и перепрограммировать другой (более новой или с другим языком) версией в случае её появления на сайте www.masterkit.ru. Обновление происходит регулярно, с отслеживанием тенденций развития компьютерной техники.

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

Для перепрограммирования можно воспользоваться набором NM9215 (программатор) совместно с переходником на данный тип микросхем NM9216/4.

Проверка системного блока РС тестером Post Card PCI на практике

Последовательность тестирования компонентов компьютера следующая:

1. Тестирование процессора.
2. Проверка контрольной суммы ROM BIOS.
3. Проверка и инициализация контроллеров DMA, IRQ и таймера 8254.
После этой стадии становится доступной звуковая диагностика.
4. Проверка операций регенерации памяти.
5. Тестирование первых 64 КБ памяти.
6. Загрузка векторов прерываний.
7. Инициализация видеоконтроллера.
После этого этапа диагностические сообщения выводятся на экран.
8. Тестирование полного объема ОЗУ.
9. Тестирование клавиатуры.
10. Тестирование CMOS памяти.
11. Инициализация COM и LPT портов.
12. Инициализация и тест контроллера FDD.
13. Инициализация и тест контроллера HDD.
14. Поиск дополнительных модулей ROM BIOS и их инициализация.
15. Вызов загрузчика операционной системы (INT 19h, Bootstrap), при невозможности загрузки операционной системы- попытка запуска ROM BASIC (INT 18h); при неудаче- останов системы (HALT).

Прохождение тестов

При прохождении каждого из тестов POST генерирует POST-код, который записывается в специальный диагностический регистр. Информация, содержащаяся в диагностическом регистре, становится доступной для наблюдения при установке в свободный слот компьютера диагностической платы POST Card и отображается на семисегментном индикаторе в виде двух шестнадцатиричных цифр. Адрес диагностического регистра зависит от типа компьютера, в более старых версиях это: ISA, EISA- 80h, ISA-Compaq- 84h, ISA-PS/2- 90h, MCA-PS/2- 680h, 80h, некоторые EISA- 300h.

Прежде всего, необходимо определить фирму-производителя BIOS материнской платы. Это можно сделать либо по наклейке на микросхеме BIOS, либо по надписям, которые выводятся на экран аналогичной исправной материнской платой. В России и СНГ наиболее распространенными являются BIOS фирм AMI и AWARD. С приобретением некоторого опыта уже по первым POST кодам можно с уверенностью назвать производителя BIOS.

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

Исторически сложилось, что значения POST кодов в соответствующих таблицах производителей BIOSов даются в виде шестнадцатиричных чисел в диапазоне 00h- FFh (0- 255 в десятичной системе счисления), поэтому для удобства использования таких таблиц необходимо обеспечить отображение POST кодов в шестнадцатеричном виде.

Коды неисправностей

Award Software International, Inc.

AwardBIOS V4.51PG Elite

Динамично развивающаяся компания Award Software в 1995 году предложила новое на то время решение в области низкоуровневого программного обеспечения AwardBIOS «Elite», более известное как V4.50PG. Режим обслуживания контрольных точек не изменился ни в широко распространенной версии V4.51, ни в раритетном исполнении V4.60. Суффиксы P и G обозначают соответственно поддержку механизма PnP и обслуживание функций энергосбережения (Green Function).

Выполнение стартовых процедур POST из ROM

C0 Запрет External Cache. Запрет Internal Cache. Запрет Shadow RAM. Программирование контроллера DMA, контроллера прерываний, таймера, блока RTC

C1 Определение типа памяти, суммарного объем и размещение по строкам

C3 Проверка первых 256К DRAM для организации Temporary Area. Распаковка BIOS в Temporary Area

C5 Выполняемый код POST переносится в Shadow

C6 Определение присутствия, объема и типа External Cache

C8 Проверка целостности программ и таблиц BIOS

CF Определение типа процессора

Выполнение POST в Shadow RAM

03 Запрет NMI, PIE (Periodic Interrupt Enable), AIE (Alarm Interrupt Enable), UIE (Update Interrupt Enable). Запрет генерации программируемой частоты SQWV

04 Проверка формирования запросов на регенерацию DRAM

05 Проверка и инициализация контроллера клавиатуры

06 Тест области памяти, начинающейся с адреса F000h, где размещен BIOS

07 Проверка функционирования CMOS и батарейного питания

BE Программирование конфигурационных регистров Южного и Северного Мостов

09 Инициализация кэш-памяти L2 и регистров расширенного управления кэшированием процессора Cyrix

0A Генерация таблицы векторов прерываний. Настройка ресурсов Power Management и установка вектора SMI

0B Проверка контрольной суммы CMOS. Сканирование шины PCI устройств. Обновление микрокода процессора

Инициализация контроллера клавиатуры

0D Поиск и инициализация видеоадаптера. Настройка IOAPIC. Измерения тактовой частоты, установка FSB

0E Инициализация MPC. Тест видеопамяти. Вывод на экран Award Logo

0F Проверка первого контроллера DMA 8237. Определение клавиатуры и ее внутренний тест. Проверка контрольной суммы BIOS

10 Проверка второго контроллера DMA 8237

11 Проверка страничных регистров контроллеров DMA

14 Тест канала 2 системного таймера

15 Тест регистра маскирования запросов 1-го контроллера прерываний

16 Тест регистра маскирования запросов 2-го контроллера прерываний

19 Проверка пассивности запроса немаскируемого прерывания NMI

30 Определение объема Base Memory и Extended Memory. Настройка APIC. Программное управление режимом Write Allocation

Подготовка таблиц, массивов и структур для старта операционной системы

31 Основной отображаемый на экране тест оперативной памяти. Инициализация

32 Выводится заставка Plug and Play BIOS Extension. Настройка ресурсов Super I/O. Программируется Onboard Audio Device

39 Программирование тактового генератора по шине I2C

3C Установка программного флага разрешения входа в Setup

3D Инициализация PS/2 mouse

3E Инициализации контроллера External Cache и разрешения Cache

BF Настройка конфигурационных регистров чипсета

41 Инициализация подсистемы гибких дисков

42 Отключение IRQ12 если PS/2 mouse отсутствует. Выполняется программный сброс контроллера жестких дисков. Сканирование других IDE устройств

43 Инициализация последовательных и параллельных портов

45 Инициализация сопроцессора FPU

4E Индикация сообщений об ошибках

4F Запрос пароля

50 Восстановление ранее сохраненного в ОЗУ состояния CMOS

51 Разрешение 32 битного доступа к HDD. Настройка ресурсов ISA/PnP

52 Инициализация дополнительных BIOS. Установка значений конфигурационных регистров PIIX. Формирование NMI и SMI

53 Установка счетчика DOS Time в соответствии с Real Time Clock

60 Установка антивирусной защиты BOOT Sector

61 Завершающие действия по инициализации чипсета

62 Чтение идентификатора клавиатуры. Установка ее параметров

63 Коррекция блоков ESCD, DMI. Очистка ОЗУ

FF Передача управления загрузчику. BIOS выполняет команду INT 19h

Рассмотрим процедуру тестирования системного блока персонального компьютера. Установим тестер BM9222 в свободный PCI слот материнской платы. Включим питание. BIOS — программа загрузки компьютера, хранящаяся в ПЗУ материнской платы, производит последовательный опрос всех включенных в системный блок устройств (процессор, модули памяти, винчестер, видеокарта, контроллеры, оптический привод, внешняя периферия: клавиатура мышь и т.д.).

Если все периферийные устройства системного блока исправны, то после окончания загрузки на экране тестера загорится следующая надпись FFh.

«Введем неисправность» в системный блок. Выключим питание и удалим из системного блока модуль памяти.

После подачи питания и загрузки компьютера на экране тестера появляется код ошибки оперативной памяти 4Eh.

Тестер точно определил, что память в системном блоке «неисправна». После выключения питания и возвращения модуля памяти на свое место тестер показал исправность персонального компьютера.

Аналогично можно определить коды ошибок других периферийных устройств и быстро устранить неисправность, заменив неисправный блок на исправный.

Выводы

Контрольные точки процедур POST, выполняемых в AMIBIOS , были переработаны и дополнены в 1995 году и до настоящего времени не претерпели существенных изменений. Первое описание POST-кодов или чекпойнтов (check points), как они именуются в AMI, в их нынешнем виде появилось в связи с выходом в свет ядра v6.24 от 15 июля 1995 года. Некоторые изменения в своё время были внесены в AMIBIOS v7.0.

Особенности выполнения стартовых процедур AMIBIOS

Если в процессе старта в диагностическом порту появляются данные 55 , AA , не следует сопоставлять эту информацию с POST-кодами – мы имеем дело с типовой тестовой последовательностью, в задачи которой входит проверка целостности шины данных как таковой.

На этапе старта вывод в диагностический порт данных носит специфический для каждой платформы характер. В некоторых реализациях первый визуализируемый код связан с действиями, который компания AMI называет chipset specific stuff. Эта процедура сопровождается выводом в порт 80h значения CC и выполнением ряда действий по настройке регистров системной логики. Как правило, код CC возникает в тех случаях, когда используется системная логика от Intel.

PIIX - это чипсеты TX, LX, BX

Некоторые бортовые микросхемы ввода-вывода содержат RTC и контроллер клавиатуры, которые по старту находятся в отключенном состоянии. Цель BIOS – проинициализировать эти ресурсы платы для дальнейшего использования. В этом случае первая стартовая процедура, связанная с настройкой контроллера клавиатуры, сопровождается выводом значения 10 , затем выполняется инициализация RTC, о чем свидетельствует появление в диагностическом порту кода DD . Следует отметить, что отказ хотя бы одного из этих ресурсов повлечет нестарт системной платы в целом на первом же этапе выполнения POST.

На ряде плат процесс инициализации начинается с перевода CPU в защищенный режим. В этом случае вслед за первым визуализируемым кодом 43 выполнение POST продолжается так, как описано в документации AMIBIOS – управление передается в точку D0 .

Device Initialization Manager

Начиная с AMIBIOS95+ компания American Megatrends задекларировала об­об­щен­ный подход к инициализации устройств на всех типах шин. Для этого был раз­ра­ботан универсальный механизм – Device Initialization Manager (DIM), ре­а­ли­зо­ван­ный в виде автономного модуля. Запуск процедур DIM осуществляется в осо­бые моменты выполнения POST, когда необходимо отобразить состояние ини­ци­а­ли­за­ции Option ROM, устройств ввода и отображения информации:

Старший байт отображается в порт 81, указывая на тип выполняемой процедуры Function Number и топологию, где локализованы заданные устройства: Device Number. Топология, как аргумент, отображается в младшей тетраде 81 порта и может принимать следующие значения:

Старшая тетрада 81-го порта Function Number указывает либо на процедуру инициализации, применимую к выбранным устройствам, либо на подмножество устройств, объединенных по заданному признаку, которые следует подготовить к работе.

Этот параметр в современной редакции допускает следующие значения:

0 Reset, Detect, Disable Построение с помощью менеджера ресурсов карты распределения ресурсов. Из блока конфигурационных компонентов NVRAM строится стратегия инициализации всех устройств, описанных функциями 01,…,05
1 Initialization for Static Devices Инициализация дополнительных (off-board) контроллеров PCI IDE
2 Initialization for Output Devices К инициализации средств отображения относится поиск в контрольной точке 2Ah видеоадаптеров, VGA BIOS которых размещается в сегменте C000h. Функция выполняет процедуру ROM Scan, начиная с региона Optional EGA ROM путем поиска сигнатуры 55AAh. Если сигнатура обнаружена, проверяется контрольная сумма и принимается решение о том, что Add-ROM верифицирован и готов принять управление от BIOS. Особенность процедуры - уменьшение пространства RAM выделенного для ROM в связи с «усадкой», когда код занимает меньше места, чем зарезервировано. В этом случае освобождаются регионы C800h/CC00h.
3 Initialization for Input Devices Инициализация устройств консольного ввода (клавиатура и манипулятор «мышь») выполняется только если это указано в установках CMOS Setup.
4 Initialization for IPL Devices Инициализация устройств Initial Program Load (IPL), с которых возможна загрузка операционной системы, выполняется в контрольной точке 38h. К IPL-устройствам согласно BIOS Boot Specification относятся FDD и HDD, позволяющие загрузить ОС. Функция проверяет соответствие найденных дисков по списку, хранящемуся в NVRAM, разрешает их использование и формирует запрос на выделение адресного пространства, портов, IRQ. Использование устройств не указанных в NVRAM становится возможным только если они поддерживают Auto-Detect.
5 Initialization for General Devices Инициализация периферийных (on-board) и дополнительных (off-board) контроллеров, поддерживающих стандарт PnP, а также подключенных к шине PCI контроллеров USB (Universal Serial Bus).
6 POST Error Flags Функция сбора и обработки информации об ошибках выполняется для вывода на экран сообщений пользователю в контрольной точке 39h. Обрабатываются ситуации конфликтов при распределении доступа к ресурсам памяти, портов ввода-вывода, запросов IRQ. Исследуются загрузочные возможности HDD, исходя из информации об их подключении (Master/Slave, Device ID) к соответствующим контроллерам и проверяется бесконфликтность таких подключений. Обрабатываются ошибки от консольных устройств (клавиатура и монитор). Проверяется достоверность и контрольные суммы информации в NVRAM, а также функциональность носителей NVRAM: CMOS и EEPROM.
7 Special Function К специальным функциям модуля DIM относится поиск и инициализация устройств в контрольной точке 95h, Optional ROM которых размещается в сегменте C800h. Этот сегмент используется для дополнительных BIOS контроллеров SCSI/IDE и их RAID модификаций, которые соответствуют BIOS Boot Specification (BBS). Если обнаружен хотя бы один Optional ROM, не поддерживающий BBS, к примеру, MFM-контроллер, AMIBIOS выбирает особый режим старта операционной системы. Специальная функция обслуживает также классифицированные USB Mass Storage устройства.
8 Configure Before Boot IPL Devices Финальное конфигурирование устройств системной загрузки, ранее инициализированных с помощью функции 4 в контрольной точке 38h, требуется на этапе передачи управления операционной системе. По результатам выполнения CMOS Setup, если изменены параметры Boot Device Priority, корректируются таблицы HDD IDE/SCSI, устройств со сменными носителями и CD-ROM. Завершается процедура построением списка загрузочных устройств в порядке, предписанном пользователем.

POST-коды

AMIBIOS 6.x

Как следует из названия, новая версия увидела свет в 1997 году. AMIBIOS97 – это современный во всех отношениях продукт с поддержкой AGP, InstantON и про­чих новинок. Разработка и управление проектом доведены до совершенства с по­мо­щью разнообразных скрипт-процессоров, позволяющих генерировать код, в за­ви­си­мос­ти от особенностей построения NVRAM, DMI и т.п.

00 03 05 06 07 08 09 0A 0B 0C 0E 0F
10 11 12 13 14 19 1A
23 24 25 26 27 28 29 2A 2B 2C 2D 2E 2F
30 31 32 33 34 37 38 39 3A 3B
40 42 43 44 45 46 47 48 49 4B 4C 4D 4E 4F
50 51 52 53 54 57 58 59
60 62 63 65 66 67
7F
80 81 82 83 84 85 86 87 88 89 8B 8C 8D 8F
91 95 96 97 98 99 9A 9B 9C 9D 9E 9F
A0 A2 A3 A4 A5 A6 A7 A8 A9 AA AB AC AD AE
B0 B1
CC CD CE CF
D0 D1 D3 D4 D5 D6 D7 D8 D9 DA DB DC DD DE DF
E0 E1 E2 E4 E6 EC ED EE EF
F0 F1 F2 F4 F5 FB FC FD FF
код название описание
EE В современных реализациях AMIBIOS первый визуализируемый код связан с обращением к устройству, с которого возможна загрузка для восстановления BIOS
CC Chipset specific stuff
Инициализация регистров системной логики
В некоторых версиях AMIBIOS первый визуализируемый код связан с инициализацией регистров системной логики от Intel, построенной на основе контроллера PIIX: чипсеты TX, LX, BX. Если система находится в режиме энергосбережения, выполняется 5V Resume - возврат к полноценному функционированию. В этом случае в диагностический порт посылается значение DD , и выполняется процедура, задача которой состоит в восстановлении из CMOS содержимого регистров контроллера памяти.
CD Chip ID is unknown
Тип Flash ROM не опознан
Специфичная для плат Gigabyte процедура обслуживания DualBIOS - код производителя и код микросхемы Flash ROM стартового BIOS не найдены в списке поддерживаемых устройств. В числе причин, по которым происходит данное событие - неисправность Flash ROM, нарушение (повреждение) проводников и элементов в схеме подключения BIOS.
CE System halts to wait for hardware reset
Несовпадение контрольных сумм в стартовом BIOS
Специфичная для плат Gigabyte процедура обслуживания DualBIOS. Если обнаружено несовпадение контрольных сумм в стартовом BIOS, выполняется остановка. После перезагрузки система запускается с запасной микросхемы Flash ROM.
CF DualBIOS Feature inaccessible
Ошибка в доступе к запасной микросхеме Flash ROM
Ошибка в доступе к запасной микросхеме Flash ROM возникает в случае, когда невозможно коммутировать сигналы, подключенные к выводам GPIO (General Purpose Input Output), управляющие опцией DualBIOS Feature. Кроме аппаратных проблем, подобная ситуация может произойти также по причине того, что запасная микросхема Flash ROM отсутствует на системной плате.
D0 Power on delay is starting, Verify initialization code checksum
Запрет немаскируемого прерывания NMI. Отработка временной задержки для затухания переходных процессов. Проверка контрольной суммы Boot Block, останов при несовпадении.
Для того, чтобы «переждать» переходные процессы, связанные с включением питания, выполняется аппаратная задержка сигнала Power Good. Временная задержка в BIOS состоит из вывода тестовых последовательностей в диагностический порт для проверки линий данных. Базовая проверка адресных линий выполняется с помощью вычисления объема загрузочного блока (Boot Block) и его контрольной суммы. Если контрольная сумма не совпадает, прохождение POST прекращается.
В виду того, что процессор не имеет средств запрета NMI, эта процедура осуществляется через программно-доступный триггер, управляемый из индексных регистров CMOS. Аналогичным образом выполняется запрет контроля четности.
D1 Performing the keyboard controller BAT Test, check Wake-Up status, starting memory refresh, and entering 4 GB flat mode
Выполнение процедуры регенерации памяти и Basic Assurance Test. Переход в 4 GB режим адресации памяти.
Контроллеру клавиатуры дается команда BAT (Basic Assurance Test), и проверяется результат ее отработки. Если старт системы выполнен по команде Wake Up, управление передается соответствующим процедурам. Запускаются схемы регенерации памяти - задается режим счета и константа счета для первого канала системного таймера.
Содержимое регистров центрального процессора сохраняется в CMOS. Процессор переключается в защищенный режим и устанавливает 4Gb лимиты сегментов в регистрах Descriptor Cache. Затем выполняется возврат в реальный режим. При этом установленные лимиты сегментов сохраняются, что обеспечивает адресацию 4Gb пространства.
D3 Starting memory sizing
Определение объема и первичный тест памяти
Первичная инициализация регистров системной логики позволяет приступить к определению объема памяти. Эта процедура устанавливает значение адреса BIOS и диапазон адресов для каждого из банков памяти, в соответствии с их объемами. Адрес, начиная с которого прекращается совпадение читаемых и записанных значений, принимается как граница памяти. Процедура памяти носит аппаратно-зависимый характер и выполняется с учетом особенностей платформы.
D4 Test 512 kB done. Returning to real mode
Возврат в реальный режим адресации памяти. Ранняя инициализация чипсета Установка стека
С помощью операций записи и контрольного чтения проверяется базовый регион Conventional Memory. Операция выполняется двойными словами с помощью ассемблерных команд repe stosd.
Если задано прохождения POST в ускоренном режиме, то процедура носит характер обнуления области в 512 Кб с последующей верификацией данных в памяти.
Процессор переводится в Real Mode, лимиты сегментов устанавливаются равными 0000FFFFh, что соответствует режиму 16-битовых адресов для обслуживания 64 Кб сегментов.
D5 The initialization code is copied to segment 0 and control will be transferred to segment 0
Перенос модуля POST из Flash ROM в транзитную область памяти
Выполняется перенос модуля Boot Block из Flash ROM в транзитную область памяти, подготовленную на предыдущем шаге. Инициализационный код BIOS размещается начиная с адреса 0 и на него передается управление.
D6 Enable Internal Cache. Checking if Ctrl Home was pressed and verifying the system BIOS checksum
При несовпадении контрольной суммы или CTRL+Home выполняется переход на процедуру восстановления Flash ROM (Код E0)
Впервые с момента старта системы разрешается использование процессорного кэш L1. Контроллер клавиатуры программируется для ввода комбинации клавиш Ctrl+Home, по которой пользователь может форсировать выполнение процедуры восстановления Flash ROM. Проверка контрольной суммы BIOS выполняется только в режиме ускоренного прохождения POST, в штатной ситуации она переносится на следующий шаг. Если произошло хотя бы одно из этих событий, запускается процедура перезаписи Flash ROM.
D7 Transfer control to main BIOS
Передача управления служебной программе, осуществляющей распаковку системного BIOS
При штатном прохождении POST выполняется подсчет контрольной суммы BIOS и, в случае успешной проверки, управление передается системному интерфейсному модулю, в задачу которого входит распаковка исполняемого кода и запись его в Shadow RAM. Современные версии AMIBIOS на этом завершают стартовую процедуру из Flash ROM, и POST продолжается из оперативной памяти. Существует ряд реализаций, в частности на некоторых платформах Intel, где перенос кода BIOS в RAM детализирован промежуточными процедурами D8-DC. Если контрольные суммы BIOS не совпадают, принимается решение о вызове процедуры перезаписи Flash ROM. Выполняется инициализации контроллера ввода-вывода (SIO) и управление передается на шаг E0h.
D8 The main system BIOS runtime code will be decompressed
Полная распаковка системного BIOS
В ранних версиях AMIBIOS выполняется распаковка исполняемого кода в транзитный буфер по адресу 1000:0000. Необходимость временного хранения связана с тем, что копия BIOS в системной памяти не может быть создана до тех пор, пока не будет запрещен доступ к ROM.
D9 Passing control to the main system BIOS in shadow RAM
Передача управления системному BIOS в Shadow RAM
Регистры системной логики настраиваются так, что обращение к Flash ROM перенаправляется на копию BIOS в Shadow RAM. Исполняемый код переносится из области временного хранения в сегмент F000. POST передает управление в контрольную точку 03 .
DA Read SPD is over. Load CAS latency into memory controller
Чтение информации из SPD (Serial Presence Detect) модулей DIMM
В зависимости от аппаратных особенностей платформы, выполняется чтение SPD из установленных модулей DIMM. По результатам опроса устанавливаются регистры чипсета, отвечающие за временные характеристики работы с памятью. Формируется значение Memory Top.
DB Use MTRRs to control memory access
Настройка MTRR регистров центрального процессора
Платформы, построенные на процессорах AMD, выполняют настройку MTRR-регистров таким образом, чтобы перенаправить циклы обращения к памяти с шины ISA в область PCI-адресов. После включения кэш инициализация памяти завершается и выполняется запуск процедуры регенерации.
DC End of memory detection. RAM is in normal operation mode
Контроллеры памяти программируются согласно данным, полученным из SPD
Регистры контроллера памяти программируются согласно значениям, полученным из SPD. Модули DIMM переводятся из командного режима в режим нормального функционирования.
DD Early initialization RTC and KBC
Ранняя инициализация RTC, который интегрирован в SIO чип
Некоторые бортовые микросхемы ввода-вывода содержат RTC и контроллер клавиатуры, которые по включению питания находятся в отключенном состоянии. Цель BIOS - проинициализировать эти ресурсы платы для дальнейшего использования. Следует отметить, что отказ хотя бы одного из этих ресурсов повлечет нестарт системной платы в целом на первом же этапе выполнения POST.
Если система находится в режиме энергосбережения, выполняется 5V Resume - возврат к полноценному функционированию: выполняется процедура, которая восстанавливает содержимое регистров контроллера памяти из CMOS. В этом случае управление передается в контрольную точку 11 .
DE
Ошибка конфигурации системной памяти. Фатальная ошибка
Если в процессе инициализации возникает фатальная ошибка конфигурации памяти, в диагностический порт последовательно выводятся значения DF и DE , а следом за ними код ошибки. . На системный динамик выводится последовательность звуковых сигналов, соответствующая коду ошибки, увеличенному на 5. Выполнение POST прекращается.
DF Invalid Memory Configuration
Ошибка конфигурации системной памяти
E0 Start recovery procedure
Выполняется подготовка к перехвату INT19 и проверяется возможность старта системы в упрощенном режиме
Процедура восстановления BIOS выполняется, если пользователь форсировал программирование Flash ROM, удерживая по старту клавиши Ctrl+Home, либо при несовпадении контрольных сумм. В современных BIOS конфигурирование контроллера гибких дисков в составе SIO завершено еще на предыдущем этапе, а группа процедур, выполнявшихся ранее в точках E1 , E2 , E6 сведена к установке векторов прерываний и подготовке контроллера DMA.
Выполняется подготовка к перехвату INT19 и проверяется возможность старта в упрощенном режиме. Если обнаружены ошибки, выводится предупреждение пользователю. См. комментарий к коду 11 .
E1 Initializing the interrupt vector table
Установка векторов прерываний
Установка векторов прерываний выполняется исходя из ограниченных возможностей загрузочного блока. В нем хранится Run-Time код, содержащий обработчики прерываний для процедуры перезаписи Flash ROM, который определяет сокращенный вариант сервиса. См. комментарий к коду 12 .
E2
Восстановление содержимого CMOS, поиск и инициализация BIOS
См. комментарий к коду 14 .
E3
Подготовка контроллеров прерываний и непосредственного доступа к памяти
Инициализация контроллера DMA состоит в установке полярности сигналов DRQ и DACK, назначении приоритетов каналов и запрете удлиненного цикла записи.
Для контроллера прерываний устанавливается режим прием запросов по фронту сигнала IRQ и назначается режим фиксированных приоритетов. Векторные прерывания IRQ0-IRQ7 картируются на INT8-INT0F, а IRQ8-IRQ15 - на INT70h-INT77. См. комментарий к коду 13 .
E6 Enabling the floppy drive controller and Timer IRQs. Enabling internal cache memory
Разрешение прерываний от системного таймера и FDC
Разрешаются прерывания от системного таймера IRQ0 и контроллера дисковода IRQ6, для этого в регистре маскирования запросов мастер-контроллера (порт 21) обнуляются биты 0 и 6.
Для того чтобы читаемая информация была кэширована в Internal Cache, необходимо выполнение двух условий, объединенных по «И»: в регистре управления процессора CR0 бит 30 должен быть обнулен; при выполнении цикла чтения памяти сигнал разрешения кэширования KEN#, формируемый логикой, должен быть активен.
EC Initializing the DMA and Interrupt controllers
Повторная инициализация контроллеров IRQ и DMA
Настройка контроллера прямого доступа к памяти и контроллера прерываний. Генерация таблицы векторов прерываний.
ED Initializing the floppy drive
Инициализация дисковода
Инициализация дисковода состоит из ряда процедур, одна из которых предназначена для определения количества дорожек. Если дисковод 80-дорожечный, после позиционирования на цилиндр с номером 60 обратный ход на цилиндр 1 переводит сигнал track0 в пассивное состояние, а еще один шаг на цилиндр 0 - в активное. Если дисковод 40-дорожечный, при попытке позиционирования на цилиндр 60 головки упрутся в ограничитель, часть шаговых импульсов не будет отработана и собьется момент перехода с цилиндра 1 на 0, что обнаружится при анализе сигнала track0.
Определяется продольная плотность записи для установленного носителя, для чего выполняется чтение при двух значениях тактовой частоты FDC, управляемой через порт 3F7h. Если успешное чтение имело место при обмене данными со скоростью 500 Кбит/с, принимается решение, что установлена дискета 1.2/1.44Mb, при 250 Кбит/с - 360/720Кb.
По значению байта количества секторов в загрузочном секторе уточняется объем носителя. 15 sec/track соответствует дисководам объемом 1.2 Mb, а для устройств 1.44 Mb используется значение 18 sec/track. Размер устройства - 5.25« или 3.5» - для данной процедуры определять не обязательно, так как стоит задача получить информацию о дисководе и носителе достаточную для загрузки, при условии, что из CMOS ее брать нельзя.
Если в процессе выполнение инициализации дисковода обнаружены ошибки, дальнейшее прохождение POST не выполняется.
EE Looking for a floppy diskette in drive A: Reading the first sector of the Diskette
Чтение загрузочного сектора с дискеты
В современных реализациях AMIBIOS код EE - первый визуализируемый POST код, который выводится в диагностический порт при обращении к устройству, с которого возможна загрузка для восстановления BIOS.
Повторный вызов процедуры чтения загрузочного сектора с дискеты (Cylinder:00, Head:00, Sector:01) выполняется на этапе восстановления BIOS. Если носитель не обнаружен, выводится приглашение пользователю «Insert diskette in A:».
EF A read error occurred while reading the floppy drive
Ошибка дисковых операций
В эту точку управление передается, если обнаружены ошибки при дисковых операциях и с носителя не удалось прочитать загрузочный сектор. Сообщение об ошибках выводится на монитор, прохождение POST продолжается до успешного завершения операции.
Если сбои при чтении вызваны аппаратными проблемами, неуспешные попытки чтения формируют бесконечный цикл, выход из которого требует вмешательства пользователя.
F0 Searching for the AMIBOOT.ROM file in the root directory
Поиск файла AMIBOOT.ROM
По содержимому служебных полей загрузочного сектора определяется, где помещен корневой каталог, в котором выполняется поиск файла с именем AMIBOOT.ROM.
Имя файла AMIBOOT.ROM - зарезервированная константа. Для успешного восстановления BIOS необходимо переименовать файл на гибком диске в соответствии с данным соглашением.
F1 The AMIBOOT.ROM file is not in the root directory
В корневом каталоге файл AMIBOOT.ROM не найден
В эту точку управление передается при ошибке чтения корневого каталога либо если в нем не найден файл AMIBOOT.ROM.
F2 Reading and analyzing the floppy diskette FAT to find the clusters occupied by the AMIBOOT.ROM file
Считывание FAT
Считывается FAT (File Allocation Table) дискеты и по содержимому каталога определяется начало кластерной цепочки, соответствующей файлу AMIBOOT.ROM. В случае, если файл с указанным именем не найден, выполняется безусловный переход в контрольную точку F1 для организации бесконечного цикла, выход из которого возможен только при успешном чтении файла с образом BIOS.
F3 Reading the AMIBOOT.ROM file, cluster by cluster
Считывание AMIBOOT.ROM
На основании цепочки кластеров, описанной в FAT, считывается файл AMIBOOT.ROM.
F4 The AMIBOOT.ROM file is not the correct size
Объем файла AMIBOOT.ROM не соответствует объему Flash ROM
В эту точку управление передается, если размер файла с образом BIOS не соответствует объему микросхемы Flash ROM, установленной на системной плате.
F5 Disabling internal cache memory
Запрет Internal Cache
Путем установки в «1» бита 30 регистра CR0 запрещается Internal Cache для того, чтобы обеспечить когерентность данных при взаимодействии с Flash ROM. В противном случае, после считывания статусного регистра микросхемы все действия будут выполняться над кэш-копией.
Процедура отключения кэш носит аппаратно-зависимый характер. Для некоторых наборов системной логики запрет кэш на данном шаге не выполняется, так как адресный регион, в котором находится Flash ROM, является некэшируемым.
FB Detecting the type of Flash ROM
Определение типа Flash ROM
Определение типа Flash ROM выполняется, как правило, с помощью команды Read Intelligent Identifier. После её записи по любому адресу в регионе ROM, запоминающее устройство переключается из режима чтения памяти в режим ReadID. В таком состоянии из указанного региона будет читаться не содержимое ROM, а идентификаторы: по смещению 0 - Manufacturer Code; по смещению 1 - Device Code.
Перед выполнением всех этих действий необходимо снять блокировку сигнала Flash WE, а также разрешить доступ к региону, для этого программируются регистры системной логики.
FC Erasing the Flash ROM
Стирание основного блока Flash ROM
Flash ROM состоит из загрузочного блока, одного или нескольких блоков параметров и основного блока. Для стирания основного блока выполняется команда Erase Flash, состоящая из кодов Erase Setup и Erase Confirm. Flash ROM переходит в режим стирания и в его адресном пространстве считывается не содержимое, а статус, на основании которого процессор определяет момент завершения операции и ее успешность.
FD Programming the Flash ROM
Программирование основного блока Flash ROM
Программирование основного блока выполняется по алгоритму, который специфицирован производителем запоминающего устройства. Как правило, для каждой записываемой ячейки передается команда, которая состоит из двух кодов: Program Setup и записываемого байта. Момент завершения и успешность операции записи контролируется по статусному регистру Flash ROM. Процесс циклически повторяется для всех ячеек основного блока.
FF Flash ROM programming was successful. Next, restarting the system BIOS
Рестарт BIOS Коды распакованного системного BIOS, выполняемые в ShadowRAM (Runtime code is uncompressed in F000 shadow RAM)
В эту точку управление передается в случае успешного программирования FlashROM. Далее необходимо выполнить рестарт BIOS. Для этого выполняется команда прямого межсегментного перехода по адресу FFFF:0000 (CS=FFFF, IP=0000).
10 Issuing KBC blocking and unblocking command
Ранняя инициализация контроллера клавиатуры
Клавиатуре передана команда сброса. В порт 64h посылаются команды C8/C9 разрешающие или запрещающие управление линией А20. В зависимости от аппаратной реализации используются выводы общего назначения Pin23 и Pin24, соответствующие первому и второму биту второго порта контроллера клавиатуры, совместимого по программной модели с 82С42.
11 Restore the DRAM registers
Возврат из состояния STR (Suspend to RAM)
Возврат из состояния STR (Suspend to RAM) предполагает восстановление контента оперативной памяти. Для этого из CMOS считывается, а в регистры контроллера памяти записывается содержимое, актуальное к моменту выполнения STR. Запускаются схемы регенерации памяти.
E0 .
12 Reenable SMRAM. Setup MTRRs
Восстановление доступа к SMRAM (System Management RAM)
Выполняется настройка System Management RAM (SMRAM) для процедуры обработки System Management Interrupt (SMI Handler). Регистры процессора MTRR настраиваются на обеспечение требуемых условий доступа к региону памяти в сегментах A000 и B000, картируемых на SMRAM.
На некоторых платформах для обозначения данной процедуры используется код E1 .
13 Restore the Refresh rate
Восстановление регенерации памяти
Платформы, построенные на процессорах Intel, восстанавливают содержимое регистров контроллера памяти, отвечающих за регенерацию памяти. На платформах AMD данная процедура не выполняется.
На некоторых платформах для обозначения данной процедуры используется код E2 .
14 Restore CMOS and call VGA BIOS
Поиск и инициализация VGA BIOS
Для платформ с интегрированным видео выполняется поиск и инициализация VGA BIOS.
На некоторых платформах для обозначения данной процедуры используется код E3 .
03 Запрет немаскируемого прерывания NMI. Определение типа сброса
05 Инициализация стека. Запрет кэширования памяти и контроллера USB
06 Выполнение в ОЗУ служебной программы
07 Распознавание процессора и инициализация APIC
08 Проверка контрольной суммы CMOS
09 Проверка отработки клавиш End/Ins
0A Проверка сбоя батарейного питания
0B Очистка буферных регистров контроллера клавиатуры
0C Контроллеру клавиатуры передается команда тестирования
0E Поиск дополнительных устройств, обслуживаемых контроллером клавиатуры
0F Инициализация клавиатуры
10 Клавиатуре передается команда сброса
11 Если нажата клавиша End или Ins, выполняется сброс CMOS
12 Перевод в пассивное состояние контроллеров DMA
13 Инициализация чип сета и кэш L2
14 Проверка системного таймера
19 Выполняется тест формирования запросов на регенерацию DRAM
1A Проверка длительности цикла регенерации
20 Инициализация устройств вывода
23 Считывается порт ввода контроллера клавиатуры. Опрашивается Keylock Switch и Manufacture Test Switch
24 Подготовка к инициализации таблицы векторов прерываний
25 Инициализация векторов прерываний завершена
26 Через порт ввода контроллера клавиатуры опрашивается состояние перемычки Turbo Switch
27 Первичная инициализация контроллера USB. Обновление микрокода стартового процессора
28 Подготовка к установке видеорежима
29 Инициализация LCD панели
2A Поиск устройств, обслуживаемых дополнительными ROM
2B Инициализации VGA BIOS, проверка его контрольной суммы
2C Выполнение VGA BIOS
2D Согласование INT 10h и INT 42h
2E Поиск видеоадаптеров CGA
2F Тест видеопамяти адаптера CGA
30 Тест схем формирования разверток адаптера CGA
31 Ошибка видеопамяти или схем формирования разверток. Поиск альтернативного видеоадаптера CGA
32 Тест видеопамяти альтернативного видеоадаптера CGA и схем разверток
33 Опрос состояния перемычки Mono/Color
34 Установка текстового режима 80х25
37 Видеорежим установлен. Экран очищен
38 Инициализация бортовых устройств
39 Вывод сообщений об ошибках на предыдущем шаге
3A Вывод сообщения «Hit DEL» для входа в CMOS Setup
3B Начало подготовки к тесту памяти в защищенном режиме
40 Подготовка дескрипторных таблиц GDT и IDT
42 Переход в защищенный режим
43 Процессор в защищенном режиме. Прерывания разрешены
44 Подготовка к проверке линии A20
45 Тест линии A20
46 Определение размера ОЗУ выполнено
47 Тестовые данные записаны в Conventional Memory
48 Повторная проверка Conventional Memory
49 Тест Extended Memory
4B Обнуление памяти
4C Индикация процесса обнуления
4D Запись в CMOS полученных размеров Conventional и Extended memory
4E Индикация реального объема системной памяти
4F Выполняется расширенный тест Conventional Memory
50 Коррекция размера Conventional Memory
51 Расширенный тест Extended Memory
52 Объемы Conventional Memory и Extended Memory сохранены
53 Обработка отложенных ошибок четности
54 Запрет контроля четности и обработки немаскируемых прерываний
57 Инициализация региона памяти для POST Memory Manager
58 Выводится приглашение для входа в CMOS Setup
59 Возврат процессора в реальный режим
60 Проверка страничных регистров DMA
62 Тест регистров адреса и длины пересылки контроллера DMA#1
63 Тест регистров адреса и длины пересылки контроллера DMA#2
65 Программирование контроллеров DMA
66 Очистка регистров Write Request и Mask Set POST
67 Программирование контроллеров прерываний
7F Разрешение запроса NMI от дополнительных источников
80 Устанавливается режим обслуживания прерываний от порта PS/2
81 Тест интерфейса клавиатуры при ошибках сброса
82 Установка режима работы контроллера клавиатуры
83 Проверка статуса Keylock
84 Верификация объема памяти
85 Вывод на экран сообщений об ошибках
86 Настройка системы для работы Setup
87 Распаковка программы CMOS Setup в Conventional Memory.
88 Работа программы Setup завершена пользователем
89 Завершено восстановление состояния после работы Setup
8B Резервирование памяти дополнительному блоку переменных BIOS
8C Программирование конфигурационных регистров
8D Первичная инициализация контроллеров HDD и FDD
8F Повторная инициализация контроллера FDD
91 Конфигурирование контроллера жестких дисков
95 Выполняется ROM Scan для поиска дополнительных BIOS
96 Дополнительная настройка системных ресурсов
97 Проверка сигнатуры и контрольной суммы дополнительного BIOS
98 Настройка System Management RAM
99 Установка счетчика таймера и переменных параллельных портов
9A Формирование списка последовательных портов
9B Подготовка области в памяти для теста сопроцессора
9C Инициализация сопроцессора
9D Информация о сопроцессоре сохраняется в CMOS RAM
9E Идентификация типа клавиатуры
9F Поиск дополнительных устройств ввода
A0 Формирование регистров MTRR (Memory Type Range Registers)
A2 Сообщений об ошибках на предыдущих этапах инициализации
A3 Установка временных характеристик автоповтора клавиатуры
A4 Дефрагментирование неиспользованных регионов RAM
A5 Установка видео режима
A6 Очистка экрана
A7 Перенос исполняемого кода BIOS область Shadow RAM
A8 Инициализация дополнительного BIOS в сегменте E000h
A9 Возврат управления системному BIOS
AA Инициализация USB шины
AB Подготовка модуля INT13 для обслуживания дисковых сервисов
AC Построение таблиц AIOPIC для поддержки мультипроцессорных систем
AD Подготовка модуля INT10 для обслуживания видео сервисов
AE Инициализация DMI
B0 Таблица конфигурации системы выведена
B1 Инициализация ACPI BIOS
00 Программное прерывание INT19h – загрузка Boot Sector

Звуковые сигналы

В обязанности данной функции входит поддержка удаленной загрузки по сети, поэтому требуется выполнить посик Boot ROM сетевого адаптера. Если он найден, а установками CMOS Setup в меню Boot Device Priority загрузка по сети указана как первое устройство, выполняется настройка процедур INT18h и INT19h.

Код ошибки может принимать следующие значения: * 0: оперативная память не обнаружена * 1: установлены модули DIMM различных типов * 2: модуль DIMM не оснащен SPD либо чтение содержимого SPD закончилась неудачей * 3: модуль не соответствует системным требованиям для работы на заданной частоте * 4: модуль не может быть использован в данной системе * 5: время между активацией строк модуля и переходом его в состояние регенерации не соответствует системным требованиям * 6: обнаружена ошибка в младшей странице - первые 64 Kb памяти

звуки ошибка
1 короткий Ошибка регенерации памяти. Возможно, неисправен программируемый таймер прерываний или программируемый контроллер прерываний.
2 коротких Ошибка процедуры POST. Не прошла одна из проверок оборудования.
3 коротких Ошибка чётности памяти в первых 64K. Возможно, неисправна микросхема памяти.
4 коротких Ошибка системного таймера или первого банка памяти
5 коротких Ошибка процессора
6 коротких Ошибка линии управления A20. Неисправность контроллера клавиатуры, которая не позволяет переключить процессор в защищенный режим.
7 коротких Ошибка виртуального режима процессора
8 коротких Ошибка чтения/записи видеопамяти. Отсутствует или неисправен видеоадаптер.
9 коротких Контрольная сумма BIOS неверна
10 коротких Ошибка чтения/записи регистра управления питанием в энергонезависимой памяти (CMOS). Неисправность цепей управления питанием.
11 коротких Ошибка кэша 2-го уровня
1 длинный Все проверки прошли нормально - компьютер готов к загрузке операционной системы
1 длинный, 1 короткий Ошибка блока питания
1 длинный, 2 коротких Ошибка в ПЗУ BIOS-а видеокарты или ошибка гашения обратного хода строчной развертки
1 длинный, 3 коротких Обнаружена ошибка в памяти выше 64К

Этот документ определяет коды звукового сигнала, сообщения об ошибках и коды Power-On Self Test (POST), связанные с версиями БИОС на основе расширяемой платформы интерфейса (Эфи).

Звуковые коды

Бортовой динамик испускает звуковые коды ошибок (звуковые коды) во время POST. Не все Системные платы Intel® для настольных ПК включают бортовой динамик.

Сообщения об ошибках БИОС

Сообщение об ошибке Объяснение
Процессор, который не предназначен для использования с этой доской, был обнаружен. Использование неподдерживаемого процессора может привести к неправильной работе, повреждению настольной доски или процессора или снижению срока эксплуатации продукта. Система выключается через 10 секунд. Установленный процессор не совместим с настольной доской.
Моку батарея низкая Батарея может быть потери мощности. Замените батарею в ближайшее время.
ОКУ чексум Бад Чекная сумма ОКУ неверна. Память ОКУ может быть повреждена. Запустите настройку для сброса значений.
Уменьшило размер памяти Размер памяти снизился с момента последней загрузки. Если память не была удалена, память может быть плохим.
Не доступен загрузочный прибор Система не смогла найти устройство для загрузки.

Порт 80h почтовые коды

Во время силовой самопроверки (POST), биос отправляет коды прогресса (почтовые коды) в порт I/O 80h. Если сообщение не удается, последний почтовый код генерируется остается в порту 80h. Используйте этот код, чтобы узнать, почему произошла ошибка.

Отображение ПОЧТОВЫХ кодов

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

Порт 80h почтовые диапазоны кода

В таблицах ниже, все почтовые индексы и значения диапазона перечислены в hexadecimal.

Диапазон Категория/подсистема
00 – 0F
10 – 1F Принимающие Процессоры
20 – 2F Память/набор микросхем
30 – 3F Восстановления
40 – 4F
50 – 5F Автобусы I/O: ДКИ, 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

Порт 80h почтовые коды

ПОЧТОВЫЙ индекс
00-0F Отладки коды: может использоваться любой PEIM/драйвер для отладки
10-1F Процессор узла
10 Сила-на инициализации процессор хозяина (загрузчик процессор)
11 Инициализация кеша процессора узла (включая APs)
12
13 Инициализация СММ
14 Инициализация LAN
15 Выход ранней платформы init драйвер
16 Инициализация драйвера SMBUS
17 Вступление в SMBUS выполнить чтение/запись
19 Вступление в программирование CK505
1F Неустранимая ошибка процессора
20-2F Память/набор микросхем
21
22 Чтение СДПГ из памяти Диммс
23
24 Программирование параметров синхронизации в контроллере памяти и Диммс
25 Настройка памяти
26 Оптимизация настроек памяти
27 Инициализация памяти, например, иэкс
28 Тестирование памяти
2F Не обнаружено памяти или не обнаружено полезной памяти
30-3F Восстановления
30 Восстановление кризиса инициировано на запрос пользователя
31 Кризисное восстановление инициировано Программное обеспечение (коррумпированная вспышка)
35 Сдача контроля в капсуле восстановления
3F Не удается восстановить
50-5F Автобусы i/O (ДКИ, USB, ISA, ATA и т.д.)
50 Перечисление автобусов ДКИ
51
52 Горячий разъем пус контроллер инициализации
53 – 57 Зарезервировано для ДКИ автобусов
58 Сброс USB-автобуса
59 Зарезервировано для USB
5a
5B Зарезервировано для ATA
5C Сброс SMBUS
5d Зарезервировано для SMBUS
5F Невосстановимые I/O ошибка автобуса
60-6F

В настоящее время нет действительных ПОЧТОВЫХ кодов в диапазоне 60-6F.

Если вы видите почтовый индекс в этом диапазоне, прочитайте его как B0-BF . (На 7-сегменте светодиодный дисплей, b выглядит как 6.)

Примере:

70-7F Выходной устройств
70 Сброс контроллера VGA
71 Отключение контроллера VGA
72 Включение контроллера VGA
78 Сброс контроллера консоли
79 Отключение контроллера консоли
Включение контроллера консоли
7F Неустранимая ошибка устройства вывода
90-9F Входные устройства
90 Сброс клавиатуры
91 Отключение клавиатуры
92 Обнаружение присутствия клавиатуры
93 Включение клавиатуры
94
95 Инструктаж контроллера клавиатуры для запуска самотестирования (только PS2)
98 Сброс мыши
99 Отключение мыши
Обнаружение присутствия мыши
9B Включение мыши
9F Ошибка невосстановимого ввода устройства (клавиатуры или мыши)
B0-BF Загрузочные устройства
B0 Сброс фиксированных носителей
B1 Отключение фиксированных носителей
B2 Обнаружение наличия фиксированных носителей (обнаружение жесткого диска и т.д.)
B3 Включение/Настройка фиксированных носителей
В8 Сброс съемных носителей
B9 Отключение съемных носителей
Ба Обнаружение наличия съемных носителей (Иде, CD-ROM и т.д.)
Bc Включение/Настройка съемных носителей
Bf Неустранимая ошибка устройства загрузки
D0-DF Выбор загрузочного устройства
Dy Попытка выбора загрузки y (y = 0-15)
E0-FF Прочие коды
E0 Начата диспетчеризация PEIMs (испущенных на первом отчете ЕФИ_СВ_ПК_ИНИТ_БЕГИН ЕФИ_СВ_ПЕИ_ПК_ХАНДОФФ_ТО_НЕКСТ)
E2 Найдена постоянная память
Е1, E3 Зарезервировано для Пей/PEIMs
E4 Вступил в фазу ДКС
E5 Начало диспетчеризации драйверов
E6 Начало подключения водителей
E7 Ожидание ввода пользователем
E8 Проверка пароля
E9 Ввод установки БИОС
Eb Вызов наследие вариант дисков
F4 Ввод состояния сна
F5 Выход из состояния сна
F8 Сервис загрузки Эфи Exitсервисы () был вызван
F9 Служба выполнения Эфи Сетвиртуаладрескарта () была называется
Fa Служба выполнения Эфи Reсетсистемс () называется
Ff Исключение процессора

Типичный порт 80h сообщение последовательности

Значения кода порт 80h обычно увеличиваются во время процесса загрузки. Ранние коды предназначены для подсистем, ближе к процессору, а более поздние - для периферийных устройств. Как правило, порядок инициализации является процессор-> память-> автобусы-> вывода/ввод устройств-> загрузочных устройств. Последовательность POST специфическая для системы.

ПОЧТОВЫЙ индекс Описание
21 Инициализация компонента чипсетов
22 Чтение СДПГ из памяти Диммс
23 Обнаружение присутствия памяти Диммс
25 Настройка памяти
28 Тестирование памяти
E4 Вступил в фазу ДКС
12 Запуск инициализации процессора приложения
13 Инициализация СММ
50 Перечисление автобусов ДКИ
51 Выделение ресурсов на автобусный автобус
92
90 Сброс клавиатуры
94 Очистка входного буфера клавиатуры
95 Клавиатура Self тест
Eb Вызов видео БИОС
58 Сброс USB-автобуса
5a Сброс Пата/Сата автобус и все устройства
92 Обнаружение наличия клавиатуры
90 Сброс клавиатуры
94 Очистка входного буфера клавиатуры
5a Сброс Пата/Сата автобус и все устройства
28 Тестирование памяти
90 Сброс клавиатуры
94 Очистка входного буфера клавиатуры
E7 Ожидание ввода пользователем
01 INT 19
00 Готов к загрузке

American Megatrends, Inc. (AMI)

Контрольные точки процедур POST, выполняемых в AMIBIOS, были переработаны и дополнены в 1995 году и до настоящего времени не претерпели существенных изменений. Первое описание POST кодов или как их называет AMI - "check points" в их нынешнем виде появилось в связи с выходом в свет ядра V6.24, 15/07/95. Некоторые изменения внесены в AMIBIOS V7.0, что отражается в настоящем документе.

Особенности выполнения стартовых процедур AMIBIOS

Если в процессе старта в диагностическом порту появляются данные 55h, AAh, не следует сопоставлять эту информацию с POST кодами - мы имеем дело с типовой тестовой последовательностью, в задачи которой входит проверка целостности шины данных.

На этапе старта вывод в диагностический порт данных носит специфический для каждой платформы характер. В некоторых реализациях первый визуализируемый код связан с действиями, который компания AMI называет chipset specific stuff. Эта процедура сопровождается выводом в порт 80h значения CCh и выполнением ряда действий по настройке регистров системной логики. Как правило, код CCh возникает в тех случаях, когда используется системная логика от Intel, построенная на основе контроллера

PIIX - это чипсеты TX, LX, BX.

Некоторые бортовые микросхемы ввода-вывода содержат RTC и контроллер клавиатуры, которые по старту находятся в отключенном состоянии. Цель BIOS - проинициализировать эти ресурсы платы для дальнейшего использования. В этом случае первая стартовая процедура, связанная с настройкой контроллера клавиатуры, сопровождается выводом значения 10h, затем выполняется инициализация RTC, о чем свидетельствует появление в диагностическом порту кода DDh. Следует отметить, что отказ хотя бы одного из этих ресурсов повлечет нестарт системной платы в целом на первом же этапе выполнения POST.

На ряде плат процесс инициализации начинается с перевода CPU в защищенный режим. В этом случае вслед за первым визуализируемым кодом 43h выполнение POST продолжается так, как описано в документации AMIBIOS - управление передается в точку D0h.

Коды неупакованной процедуры инициализации

(Uncompressed Init Code Check Points)

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

CC Инициализация регистров системной логики

CD Тип Flash ROM не опознан

CE Несовпадение контрольных сумм в стартовом BIOS

CF Ошибка в доступе к запасной микросхеме Flash ROM

DD Ранняя инициализация RTC, который интегрирован в SIO чип

D0 Запрет немаскируемого прерывания NMI. Отработка временной задержки для затухания переходных процессов. Проверка контрольной суммы Boot Block, останов при несовпадении

D1 Выполнение процедуры регенерации памяти и Basic Assurance Test. Переход в 4 GB режим адресации памяти

D3 Определение объема и первичный тест памяти

D4 Возврат в реальный режим адресации памяти. Ранняя инициализация чип сета Установка стека

D5 Перенос модуля POST из Flash ROM в транзитную область памяти

D6 При несовпадении контрольной суммы или CTRL+Home выполняется переход на процедуру восстановления Flash ROM (Код E0)

D7 Передача управления служебной программе, осуществляющей распаковку системного BIOS

D8 Полная распаковка системного BIOS

D9 Передача управления системному BIOS в Shadow RAM

DA Чтение информации из SPD (Serial Presence Detect) модулей DIMM

DB Настройка MTRR регистров центрального процессора

DC Контроллер памяти программируются согласно данным, полученным из SPD

DE Ошибка конфигурации системной памяти. Фатальная ошибка

DF Ошибка конфигурации системной памяти. Звуковой сигнал

10 Ранняя инициализация контроллера клавиатуры

11 Возврат из состояния STR (Suspend to RAM)

12 Восстановление доступа к SMRAM (System Management RAM)

13 Восстановление регенерации памяти

14 Поиск и инициализация VGA BIOS Коды процедуры перезаписи Flash ROM (Boot Block Recovery Codes)

E0 Выполняется подготовка к перехвату INT19 и проверяется возможность старта системы в упрощенном режиме

E1 Установка векторов прерываний

E3 Восстановление содержимого CMOS, поиск и инициализация BIOS

E2 Подготовка контроллеров прерываний и непосредственного доступа к памяти

E6 Разрешение прерываний от системного таймера и FDC

EC Повторная инициализация контроллеров IRQ и DMA

ED Инициализация дисковода

EE Чтение загрузочного сектора с дискеты

EF Ошибка дисковых операций

F0 Поиск файла AMIBOOT.ROM

F1 В корневом каталоге файл AMIBOOT.ROM не найден

F2 Считывание FAT

F3 Считывание AMIBOOT.ROM

F4 Объем файла AMIBOOT.ROM не соответствует объему Flash ROM

F5 Запрет Internal Cache

FB Определение типа Flash ROM

FC Стирание основного блока Flash ROM

FD Программирование основного блока Flash ROM

FF Рестарт BIOS Коды распакованного системного BIOS, выполняемые в ShadowRAM

(Runtime code is uncompressed in F000 shadow RAM)

03 Запрет немаскируемого прерывания NMI. Определение типа сброса

05 Инициализация стека. Запрет кэширования памяти и контроллера USB

06 Выполнение в ОЗУ служебной программы

07 Распознавание процессора и инициализация APIC

08 Проверка контрольной суммы CMOS

09 Проверка отработки клавиш End/Ins

0A Проверка сбоя батарейного питания

0B Очистка буферных регистров контроллера клавиатуры

0C Контроллеру клавиатуры передается команда тестирования

0E Поиск дополнительных устройств, обслуживаемых контроллером клавиатуры

0F Инициализация клавиатуры

10 Клавиатуре передается команда сброса

11 Если нажата клавиша End или Ins, выполняется сброс CMOS

12 Перевод в пассивное состояние контроллеров DMA

13 Инициализация чип сета и кэш L2

14 Проверка системного таймера

19 Выполняется тест формирования запросов на регенерацию DRAM

1A Проверка длительности цикла регенерации

20 Инициализация устройств вывода

23 Считывается порт ввода контроллера клавиатуры. Опрашивается Keylock Switch и Manufacture Test Switch

24 Подготовка к инициализации таблицы векторов прерываний

25 Инициализация векторов прерываний завершена

26 Через порт ввода контроллера клавиатуры опрашивается состояние перемычки Turbo Switch

27 Первичная инициализация контроллера USB. Обновление микрокода стартового процессора

28 Подготовка к установке видеорежима

29 Инициализация LCD панели

2A Поиск устройств, обслуживаемых дополнительными ROM

2B Инициализации VGA BIOS, проверка его контрольной суммы

2C Выполнение VGA BIOS

2D Согласование INT 10h и INT 42h

2E Поиск видеоадаптеров CGA

2F Тест видеопамяти адаптера CGA

30 Тест схем формирования разверток адаптера CGA

31 Ошибка видеопамяти или схем формирования разверток. Поиск альтернативного видеоадаптера CGA

32 Тест видеопамяти альтернативного видеоадаптера CGA и схем разверток

33 Опрос состояния перемычки Mono/Color

34 Установка текстового режима 80х25

37 Видеорежим установлен. Экран очищен

38 Инициализация бортовых устройств

39 Вывод сообщений об ошибках на предыдущем шаге

3A Вывод сообщения «Hit DEL» для входа в CMOS Setup

3B Начало подготовки к тесту памяти в защищенном режиме

40 Подготовка дескрипторных таблиц GDT и IDT

42 Переход в защищенный режим

43 Процессор в защищенном режиме. Прерывания разрешены

44 Подготовка к проверке линии A20

45 Тест линии A20

46 Определение размера ОЗУ выполнено

47 Тестовые данные записаны в Conventional Memory

48 Повторная проверка Conventional Memory

49 Тест Extended Memory

4B Обнуление памяти

4C Индикация процесса обнуления

4D Запись в CMOS полученных размеров Conventional и Extended memory

4E Индикация реального объема системной памяти

4F Выполняется расширенный тест Conventional Memory

50 Коррекция размера Conventional Memory

51 Расширенный тест Extended Memory

52 Объемы Conventional Memory и Extended Memory сохранены

53 Обработка отложенных ошибок четности

54 Запрет контроля четности и обработки немаскируемых прерываний

57 Инициализация региона памяти для POST Memory Manager

58 Выводится приглашение для входа в CMOS Setup

59 Возврат процессора в реальный режим

60 Проверка страничных регистров DMA

62 Тест регистров адреса и длины пересылки контроллера DMA#1

63 Тест регистров адреса и длины пересылки контроллера DMA#2

65 Программирование контроллеров DMA

66 Очистка регистров Write Request и Mask Set POST

67 Программирование контроллеров прерываний

7F Разрешение запроса NMI от дополнительных источников

80 Устанавливается режим обслуживания прерываний от порта PS/2

81 Тест интерфейса клавиатуры при ошибках сброса

82 Установка режима работы контроллера клавиатуры

83 Проверка статуса Keylock

84 Верификация объема памяти

85 Вывод на экран сообщений об ошибках

86 Настройка системы для работы Setup

87 Распаковка программы CMOS Setup в Conventional Memory.

88 Работа программы Setup завершена пользователем

89 Завершено восстановление состояния после работы Setup

8B Резервирование памяти дополнительному блоку переменных BIOS

8C Программирование конфигурационных регистров

8D Первичная инициализация контроллеров HDD и FDD

8F Повторная инициализация контроллера FDD

91 Конфигурирование контроллера жестких дисков

95 Выполняется ROM Scan для поиска дополнительных BIOS

96 Дополнительная настройка системных ресурсов

97 Проверка сигнатуры и контрольной суммы дополнительного BIOS

98 Настройка System Management RAM

99 Установка счетчика таймера и переменных параллельных портов

9A Формирование списка последовательных портов

9B Подготовка области в памяти для теста сопроцессора

9C Инициализация сопроцессора

9D Информация о сопроцессоре сохраняется в CMOS RAM

9E Идентификация типа клавиатуры

9F Поиск дополнительных устройств ввода

A0 Формирование регистров MTRR (Memory Type Range Registers)

A2 Сообщений об ошибках на предыдущих этапах инициализации

A3 Установка временных характеристик автоповтора клавиатуры

A4 Дефрагментирование неиспользованных регионов RAM

A5 Установка видео режима

A6 Очистка экрана

A7 Перенос исполняемого кода BIOS область Shadow RAM

A8 Инициализация дополнительного BIOS в сегменте E000h

A9 Возврат управления системному BIOS

AA Инициализация USB шины

AB Подготовка модуля INT13 для обслуживания дисковых сервисов

AC Построение таблиц AIOPIC для поддержки мультипроцессорных систем

AD Подготовка модуля INT10 для обслуживания видео сервисов

AE Инициализация DMI

B0 Таблица конфигурации системы выведена

Особенности выполнения Device Initialization Manager

Кроме выше указанных POST кодов, в диагностический порт выводятся сообщения о событиях в процессе выполнения Device Initialization Manager (DIM). Существует несколько контрольных точек, в которых отображается состояние инициализации системных или локальных шин.

2A Инициализация устройств на системной шине

39 Индикация ошибок, возникающих при инициализации шин

95 Инициализация шин, управляемых с помощью дополнительных BIOS DE Ошибка конфигурации системной памяти

DF Ошибка конфигурации системной памяти

Информация отображается в формате слова, младший байт которого совпадает с системным POST кодом, а старший байт указывает на тип выполняемой инициализациионной процедуры. Старшая тетрада в старшем байте указывает тип выполняемой процедуры, а младшая определяет шинную топологию для ее применения.

Старшая тетрада:

0 инициализация всех устройств на всех шинах запрещена

1 инициализация статических устройств

2 инициализация устройств вывода информации

3 инициализация устройств ввода информации

4 инициализация устройств системной загрузки (IPL)

5 инициализация устройств общего назначения

6 сообщение об ошибках

7 инициализация устройств, управляемых дополнительными ROM

Младшая тетрада:

0 системные процедуры инициализации (DIM)

1 шины подключения бортовых устройств

2 шина ISA Legacy

3 шина EISA

4 шина ISA PnP

5 шина PCI

6 шина PCMCIA

7 шина MCA

В случае если обнаружена ошибка конфигурации системной памяти, в порт 80h выводится последовательно в бесконечном цикле код DE, код DF, код ошибки конфигурации, который может принимать следующие значения:

00 Оперативная память не обнаружена

01 Установлены модули DIMM различных типов (пример, EDO и SDRAM)

02 Чтение содержимого SPD закончилась неудачей

03 Модуль не соответствует требованиям для работы на заданной частоте

04 Модуль не может быть использован в данной системе

05 Информация в SPD не позволяет использовать установленные модули

06 Обнаружена ошибка в младшей странице памяти

Публикации по теме