Расшифровка сигналов пост карты. Звуковые сигналы BIOS и коды ошибок BIOS

Этот документ определяет коды звукового сигнала, сообщения об ошибках и коды 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 Готов к загрузке

Расшифровка кодов POST-карты для "Award BIOS 4.5 "

Award BIOS Version 4.51PG

C0 программирование регистров микросхемы Host Bridge для установки следующих режимов: External Cache запрещен. Запрещено копирование в ячейки External Cache информации, читаемой процессором (все шинные циклы Non Cacheable), а также запрещен просмотр TAGRAM на предмет кэш-попаданий (Force Cache Miss). Internal Cache запрещен. Запрещено формирование сигнала KEN# микросхемой Host Bridge, это запрещает процессору кэшировать читаемые данные. Перед запретом Internal Cache очищается программно либо аппаратно. Shadow RAM запрещено. Это приводит к направлению циклов обращения к адресам расположения System BIOS и Additional BIOS непосредственно на соответствующие ROM , а не Shadow RAM. Данная процедура пишется под конкретный Chipset. Выполняется программирование PIIX ресурсов: Контроллера DMA, контроллера прерываний, таймера, блока RTC. Контроллер DMA переводится в пассивный режим, так как конкретная инициализация каналов (установка базовых адресов, длин блоков, режимов передачи) задача не POST, а программ поддержки периферийных устройств, выполняемых уже по ходу рабочего сеанса. Контроллер прерываний настраивается следующим образом.

Master Controller (IRQ0-IRQ7) : режим векторных прерываний, прием запроса по фронту IRQ в соответствии IRQ0=INT8...IRQ7=INT0Fh.
Slave Controller (IRQ8-IRQ15) : режим векторных прерываний, прием запроса по фронту IRQ в соответствии IRQ8=INT70h...IRQ15=INT77h.
На этом этапе происходит только подготовка контроллера прерываний к работе, сами прерывания запрещены, и разрешаются существенно позже, предположительно, после теста памяти 31 Таймер настраивается следующим образом.
Counter 0 : генерация запросов IRQ0 для подсчета DOS Time, устанавливается режим деления частоты на 65536, в результате частота IRQ0 равна 18.2 Hz.
Counter 1 : генерация запросов DRAM Refresh, устанавливается режим деления частоты на 20, в результате интервал между регенерацией двух строк DRAM около 15 мкС, т.е. 128 циклов выполняется за 2 мС.
Counter 2 : Используется для звука. На данном этапе просто переводится в пассивное состояние, установка параметров этого счетчика происходит при выдаче сигнала на системный динамик.
Подсистема Real Time Clock нуждается в инициализации только в случае, если произошел сбой батарейного питания. Иначе полная инициализация CMOS не выполняется, потому что это приводило бы к сбросу часов при каждом включении. Если сбоя VCC(BAT) не было, инициализируются только регистры, отвечающие за взаимодействие RTC и процессора, но не сами часы
С1 Путем последовательных записей и контрольных считываний определяется тип памяти, суммарный объем и размещение по строкам. Результатом этого шага является настройка следующих параметров DRAM контроллера: тип памяти (SDRAM, EDO, FPM); картирующая информация (в зависимости от расположения по Socket); значение параметра Memory. Если адрес, сформированный процессором, превышает Memory , данный цикл направляется на PCI. Более точная настройка временнЫх параметров DRAM выполняется позже, в соответствии с содержимым Setup RAM либо SPD
C3 Проверка первых 256К DRAM для организации Temporary Area. Распаковка System BIOS в DRAM, копирование Option ROMs в DRAM. Этот этап выполняется для подготовки к операции Shadow. Необходимость в Temporary Area связана с тем, что Shadow блоки ОЗУ, закрепленные за соответствующими ПЗУ, включаются на те же диапазоны адресов, что и сами ПЗУ, из-за этого нельзя выполнить пересылку (распаковку) за один прием, потому что читать надо ROM, а записывать в Shadow RAM. Поэтому вначале на соответствующий диапазон картируется ROM и выполняется пересылка (распаковка) в транзитный буфер Temporary Area, затем перепрограммируется Host Bridge так, чтобы на область адресов BIOS картировать Shadow RAM и из транзитного буфера код переносится в Shadow RAM. На этапе C3 тестируются первые 256 Кбайт DRAM, которые в дальнейшем будут использованы как транзитный буфер.
Выполняется проверка контрольных сумм и наличие метки BBSS. Если метка не обнаружена или контрольные суммы не совпадают, принимается решение о частичном повреждении микропрограмм BIOS. Управление передается на подпрограмму восстановления FlashROM, расположенную в BootBlock. (BootBlock POST Codes)
C5 Выполняемый код POST переносится в Shadow RAM и далее выполняется из Shadow RAM для ускорения прохождения POST.
Shadow RAM быстрее ROM по двум причинам: разрядность ROM 8 бит, разрядность RAM равна разрядности локальной шины данных процессора. Время выборки используемых DRAM существенно меньше аналогичного параметра используемых ROM / Flash ROM
C6 Определение присутствия, объема и типа External Cache. Наличие и параметры External Cache определяются путем записей и контрольных считываний по специальному алгоритму
C8 Проверка целостности компонентов BIOS, расположенных в ROM. В случае несовпадения контрольной суммы компонентов делается вывод о повреждении области 128 Кб, содержащей внешний по отношению к системному BIOS файл awardext.rom. В виду того, что системный BIOS хранится в следующем 128 Кб блоке, некоторые 2 Мбит BIOS могут корректно обрабатывать эту ошибку и передавать управление на программу восстановления.
CF Определение типа процессора. Результат помещается в CMOS. В виду того, что не все RTC инициализируются к этому моменту, сначала выполняется тест чтения/записи.
Если по каким либо причинам определение типа CPU закончилось неудачей, такая ошибка становится фатальной и POST дальше не выполняется и система останавливается.

01 В ранних версиях BIOS выполнялась проверка флагов признаков результата арифметической операции по такому алгоритму: флаги переноса (CF), нуля (ZF), знака (SF), переполнения (OF) принудительно устанавливаются в 1 командой SAHF, после этого проверяется что команды условного перехода JC, JZ, JS, JO выполняются. Затем подобным образом проверяется правильность отработки условных переходов при нулевых значениях этих флагов. Позднее от этого отказались по причине того, что неправильная работа флагов является очень грубой ошибкой процессора, при наличии которой POST все равно не дойдет до этого теста. Кроме того, начиная с 80386, процессоры имеют автономный тест, и при наличии такой грубой ошибки маловероятно, что процессор начнет выполнение POST вообще.

02 Зарезервировано для ProcessorTest 2. Проверка регистров процессора путем записи и контрольного считывания. От этого теста отказались приблизительно на этапе 80386 по той же причине, что и для теста 01 .
03 Предполагается, что верен вариант Soyo, согласно которому выполняется только настройка EISA ресурсов, а PIIX ресурсы (DMA, INT, Timer, RTC) настраиваются на шаге C0 , как это было описано выше, однако в зависимости от конкретной версии BIOS могут быть вариации.
NMI (Non Maskable interrupt) немаскируемое прерывание, имеет фиксированный номер вектора (2), используется для сообщения процессору об аварийных ситуациях (ошибка четности DRAM, активность сигнала IOCHCK# на ISA и т.п.).
PIE , AIE , UIE (в исходном документе Award опечатка, по ошибке указано UEI) - это три разрешающих бита для формирования запроса прерывания схемой RealTimeClock (IRQ8 = INT 70h), по трем условиям, которые можно взаимонезависимо разрешать и запрещать.
PIE (Periodic Interrupt Enable ) - разрешение периодических прерываний с программно устанавливаемой частотой.
AIE (Alarm Interrupt Enable ) - разрешение прерываний от будильника, формируемых при совпадении значений часов, минут, секунд в регистрах подсчета времени и регистрах будильника.
UIE (Update Interrupt Enable ) - разрешение прерываний при завершении цикла обновления состояния счетчиков часов:минут:секунд (1 раз в секунду).
SQWV - режим генерации программируемой частоты на специальном выходе микросхемы RTC. PIE, AIE, UIE, SQWV запрещаются при выполнении POST, для этого записывается соответственно управляющий байт в регистр 0Bh микросхемы RTC.
04 Проверка формирования запросов на регенерацию DRAM.
В классической реализации PC AT запросы на регенерацию DRAM генерирует канал 1 системного таймера 8254. К его выходу также подключен триггер, работающий в счетном режиме и меняющий свое состояние на противоположное при каждом запросе. Состояние этого триггера можно программно считывать через бит 4 порта 61h. Проверка Refresh Toggle заключается в проверке того факта, что этот триггер переключается с заданной частотой. Однако появились chipset, использующие другие алгоритмы регенерации DRAM, с целью свести к минимуму простои CPU из-за регенерации. В этом случае, несмотря на то, что Refresh Trigger сохраняется для совместимости, по нему уже нельзя проверить формирование запросов на регенерацию. Начиная с этого момента становится возможным использование стека
05 Если установлены адаптеры EGA или VGA, поддерживаемые собственным BIOS, операция Blank Video на этом этапе невозможна, так как Video BIOS еще не инициализирован. Если установлены CGA или MDA, обслуживаемые процедурами видео сервиса System BIOS, теоретически есть возможность очистить экран на этом шаге.
Проверка и инициализация контроллера клавиатуры. Контроллеру клавиатуры передается команда самотестирования и контролируется статус после ее завершения. Затем передается команда разрешения интерфейса клавиатуры.
Примечание 1 : На данный момент прием кодов нажатых клавиш еще невозможен, так как запрещены прерывания, не подготовлены области данных BIOS, не инициализирована сама клавиатура.
06 Тест Shadow области памяти, начинающейся с адреса F000h, где размещен BIOS. Предположительно выполняются некоторые действия направленные на дополнительную проверку памяти или содержимого памяти, так как если на шаге C5 в Shadow RAM размещен BIOS, тестировать его уже поздно. Возможно, данный шаг обусловлен спецификацией конкретного ChipSet либо присутствует в BIOS, не поддерживающих Early Shadow.
07 Проверка функционирования CMOS и батарейного питания.
Батарейное питание проверяется путем чтения регистра 0Dh микросхемы RTC. Бит 7 этого регистра индицирует ошибку батарейного питания, причем он сообщает об ошибке, даже если в данный момент питание CMOS в норме, но с момента последнего считывания регистра 0Dh имело место пропадание питания CMOS. Если зафиксирована ошибка питания, BIOS запоминает этот факт, но POST не останавливается. Затем выполняется Verify Basic R/W functionality - проверка ячеек CMOS как проверка памяти. Записываются значения, выполняется контрольное считывание и проверяется равенство читаемого кода записанному. В отличие от ошибки батарейного питания, ошибка, выявленная этой проверкой считается фатальной и приводит к остановке на коде 07 .
BE Настройка конфигурационных регистров CHIPSET. Программирование конфигурационных регистров микросхем Host Bridge и PIIX. Значения загружаются из таблицы BIOS defaults, доступной пользователю с помощью утилиты MODBIN .
08 В сложившемся разногласии видимо верное значение Absent, в виду того, что 64К, о которых здесь идет речь, уже протестированы, так как входят в 256К, задействованных на шагах C3 , C5 . OEM Specific действия по первичной настройке DRAM Controller соответственно уже проделаны.
09 Процессоры IBM/Cyrix имеют внутренние регистры для более гибкого управления кэшированием. На этом шаге выполняется машинная команда CPUID для распознавания типа процессора (видимо, основная процедура распознавания CPU происходит существенно позже, на данном этапе следует выяснить IBM/Cyrix это или нет), если распознан IBM/Cyrix, инициализируются его регистры расширенного управления кэшированием. Выполняется инициализация L2 Cache Controller (запись управляющих слов в соответствующие регистры конфигурационного блока Host Bridge, очистка TAGRAM).

0A1 Генерация таблицы векторов прерываний. Таблица имеет объем 1024 байта и содержит 256 указателей на процедуры обработки прерываний, на каждую процедуру - два 16-битовых слова: смещение и сегмент, на данном этапе устанавливаются 32 вектора (INT 00h - INT 1Fh), на процедуры обработки соответствующих прерываний (Interrupt Handlers), входящие в состав BIOS. Векторы 33-120 устанавливаются на процедуру заглушку. Настройка ресурсов Power Management. На этом шаге также происходит первичная настройка подсистемы управления питанием, входящей в состав PIIX, схемы генерации SMI (System Management interrupt) и установка вектора SMI .

0B Если нажата клавиша INS, выполняется установка CMOS по умолчанию. Существенно важный момент для BIOS, поддерживающих SoftMenu. (См. FAQ №9 ) .
Проверяется контрольная сумма блока ячеек CMOS, отвечающего за хранение конфигурационной информации, если фиксируется ошибка, устанавливается программный флаг CMOS недостоверен. Этот флаг также устанавливается, если ранее, на шаге 07 было выявлено пропадание батарейного питания CMOS.
Если BIOS поддерживает PnP, выполняется сканирование ISA PnP устройств и инициализация их параметров (Адрес, Номера IRQ и DRQ). Для PCI устройств устанавливаются основные параметры в блоке конфигурационных регистров (PCI Bus Cycle parameters, I/O and MEMORY Address). Блок конфигурационных регистров PCI устройства содержит поля, имеющие одинаковое назначение у всех PCI устройств (стандартные) и поля, специфичные для конкретного устройства. Установка параметров PCI устройств, о которой здесь идет речь сводится к установке значений стандартных полей.
В процессорах класса P6 существует доступ к памяти микропрограмм, в которой хранится микрокод для выполнения каждой машинной команды. Внесение изменений в микрокод, дает возможность изменять алгоритмы выполнения имеющихся машинных команд и добавлять новые.
0C Инициализация блока переменных BIOS. На этом этапе присваиваются стартовые значения переменным BIOS, находящимся в 256-байтовом блоке 0040:0000h - 0040:00FFh.
Разногласия с Initialize Keyboard, видимо решаются в пользу варианта Soyo, так как второе после включения питания мигание светодиодов клавиатуры происходит уже после инициализации видеоадаптера
0D Классический подход к обнаружению видеоадаптера следующий: проверяется наличие EGABIOS или VGABIOS путем проверки наличия сигнатуры 55 AA по адресу начала Video BIOS (Seg:Offs = C000:0000h ). Если сигнатура обнаружена, проверяется контрольная сумма Video BIOS, если она правильная, происходит передача управления командой CALL FAR по адресу Seg:Offs = C000:0003h на инициализационную процедуру Video BIOS. Эта процедура настраивает видеоадаптер, переустанавливает вектор прерывания INT 10h (Video Service) на сервисную процедуру Video BIOS, выдает заставку видеоадаптера и возвращает управление вызвавшей процедуре System BIOS командой RET FAR. Если Video BIOS не обнаружен, делается попытка обнаружить CGA или MDA, путем сканирования пространства портов и поиска регистров управления CGA/MDA. Если CGA или MDA обнаружены, BIOS инициализирует видеоадаптер. В отличие от EGA/VGA, у CGA/MDA адаптеров Video BIOS нет и обработка INT 10h для CGA/MDA входит в обязанности System BIOS. Если не обнаружен никакой видеоадаптер - генерируется звуковой сигнал.
На этом же этапе происходит распознавание типа процессора (процессоров) настройка I/O APIC, Local APIC, программирование Host Bridge для установки параметров Host Bus (Front Side Bus). Для распознавания типа процессора обычно используется команда CPUID.
Для измерения тактовой частоты используется измерение частоты инкрементирования регистра TSC (Time Stamp Counter), который инкрементируется по каждому такту Internal CPU CLK. В качестве генератора образцовой частоты может использоваться либо системный таймер, либо RTC. Некоторые BIOS не используют Time Stamp Counter, а измеряют время выполнения цикла из последовательности команд, для которых известно количество тактов на команду. Так делалось, когда процессоры не имели TSC
0E Если установлен видеоадаптер CGA или MDA, выполняется тест Video RAM. Для EGA/VGA такой тест был проделан Video BIOS на шаге 0D , при выполнении инициализационной процедуры C000:0003h .
Относительно настройки APIC: скорее всего она разбита на два этапа, выполняемых на шагах 0D и 0E .
Предположительно на этом шаге, а не 0F , настраивается клавиатура и разрешаются аппаратные прерывания от таймера 8254 (IRQ0) и клавиатуры (IRQ1).
Инициализация RPB (Remote Pre Boot) подсистемы удаленной загрузки,
0F Проверка первого контроллера DMA 8237, ошибочно указанного в документации SOYO канал 0 - перепутаны понятия "канал DMA" и "контроллер DMA". Проверка выполняется путем записи и контрольного считывания регистров базового адреса и длины пересылки. Собственно тестовых пересылок данных с помощью DMA каналов на этом шаге и вообще в POST не выполняется. Таким образом проверяется только чтение/запись регистров контроллера DMA процессором с помощью команд IN / OUT.
BIOS Checksum должен был проверяться при распаковке, видимо расположение BIOS Checksum Test на этом этапе было до того, как BIOS разделили на Boot Block и основной (упакованный) блок.
Известно, что на этом этапе выполняется определения клавиатуры и ее внутренний тест. Запрещены Reset контроллера клавиатуры и обслуживаемый им интерфейс манипулятора "мышь" PS/2. Эти действия выполняются позже на шаге 3D.
10 Проверка второго контроллера DMA 8237.
11 Проверка страничных регистров контроллеров DMA. Страничные регистры необходимы для расширения 16-битового адреса формируемого контроллером 8237 до 24-битового (ISA) или 32-битового (EISA).
Обособление страничных регистров от контроллера DMA обусловлено тем, что в старых системах использовался контроллер DMA Intel 8237 в виде отдельной микросхемы, он способен формировать только 16-битовые адреса, поэтому устанавливался дополнительный блок расширения адреса (DMA Page Registers).
Тест страничных регистров выполняется путем записей и контрольных считываний, без собственно DMA операций (пересылок)
14 Тест канала (счетчика) 2 системного таймера. Канал 2 системного таймера используется для генерации звука. По нашим сведениям какого-либо классического подхода к этому тесту не сформировано, некоторые BIOS ограничиваются записью и контрольным считыванием регистров таймера, доступных для записи и чтения (R/W test).
Некоторые BIOS программируют таймер на формирование заданного интервала и контролируют длительность сформированного интервала по часам RTC. Однако в случае расхождения не понятно кто ошибся - Timer или RTC. Предположительно, Award 4.51 ограничился R/W тестом,
15 Проверка регистра маскирования запросов первого контроллера прерываний. Следует сказать, что использование термина "Channel" для контроллера прерываний нетрадиционно и приведет к путанице. Приняты следующие обозначения: Первый контроллер прерываний (Master), 8259#1. Регистры доступны по адресам 20h, 21h. Обрабатывает IRQ0-IRQ7, которым присвоены вектора INT 08h - INT 0Fh. Второй контроллер прерываний (Slave), 8259#2. Регистры доступны по адресам A0h, A1h. Обрабатывает IRQ8-IRQ15, которым присвоены вектора INT 70h - INT 77h. Выход Slave8259 подключен ко входу IRQ2 Master 8259.
На этом шаге проверяется регистр маскирования первого контроллера прерываний путем записи тестовых кодов в порт 21h и контрольного считывания. Однако проверки собственно операции маскирования, как индивидуального разрешения/запрещения линий IRQ POST не выполняет.
16 Проверка регистра маскирования запросов второго контроллера прерываний. Операция аналогична шагу 15 , адрес регистра маскирования для второго контроллера прерываний - A1h.
17 Зарезервировано. Видимо у более ранних версий BIOS на этом шаге выполнялась следующая операция: устройства источники IRQ (Timer, Keyboard...) программировались таким образом, чтобы запрос IRQ зафиксировался в пассивном состоянии, затем выполнялось чтение регистров запросов контроллеров прерываний 8259#1 и 8259#2 и проверялся тот факт, что соответствующие запросы пассивны.
Практика ремонта плат, показывает, что фиксация IRQ в состоянии 0 или 1 дает о себе знать только в момент, когда нужно взаимодействовать с устройством, IRQ которого неисправно (так происходит в большинстве случаев). На этапе теста контроллера прерываний такой дефект НЕ выявляется, поэтому предполагается, что BIOS не делает указанного действия.
18 По описанию этот шаг подобен шагу 17 , однако, если на шаге 17 проверялось отсутствие запросов, то здесь наоборот, устройства источники IRQ программируются на активизацию запросов и проверяется запуск процедур обработки прерывания для активизированных запросов.
На основании тех же экспериментальных данных, о которых шла речь в описании шага 17 , можно считать, что шаг 18 действительно отсутствует в том смысле, который имеет в виду Award. Имеется подтверждение о его существовании и выполнении совершенно иных тестовых процедур, связанных с определением типа процессора.
19 Проверка пассивности запроса немаскируемого прерывания (NMI). Запрос NMI используется для сообщения процессору об аварийных ситуациях (ошибка четности памяти, активность сигнала #IOCHCK на шине ISA). Он приводит к генерации прерывания с фиксированным номером вектора - 2 и обрабатывается без участия 8259. Указанные аварийные события приводят к установке триггера NMI, сброс этого триггера выполняется программно, его состояние также можно опросить (используется порт 61h). Обычно этот тест подразумевает выполнение программного сброса триггера NMI и проверку, что он не установился повторно
1A Предположительно, что этот шаг Reserved, а вывод на экран значения тактовой частоты CPU происходит на шаге 0D.
1E , 1F Установка параметров шины EISA в соответствии с содержимым NV memory (EISA BIOS). Проверяется контрольная сумма блока параметров EISA (NVM Checksum), если она верная, контроллер EISA инициализируется в соответствии с указанными параметрами.
20 ...2F Инициализация EISA устройств. В отличие от ISA, шина EISA имеет средства для индивидуальной адресации слотов (раздельные сигналы SELECT). Таким образом, имеется возможность программно распознать, в каком слоте какое устройство установлено. Возможно также выполнить раздельный доступ к конфигурационным регистрам подобно PCI, что и делается на этом шаге .
30 1 .Get Base Memory and Extended Memory Size
2.P6 Multi-P BIOS Only - Init I/O and Local APIC

3.Program K5/K6 CPU"s Write Allocation
Определение объема Base Memory и Extended Memory. Это завершающая стадия определения объема памяти, к этому моменту все операции по картированию выполнены, и на этой стадии уже начинается тестирование памяти, BIOS выполняет запись/контрольное считывание, определяет, начиная с какого адреса прекращается совпадение читаемых значений записанным и этот адрес принимается как граница памяти.
Настройка APIC применительно к P6 освещена достаточно мало.
K5/K6 Write Allocation - это нововведение AMD, которое сводится к следующему. У процессоров Intel поводом для кэширования ячейки является только ее чтение, после того, как ячейка с определенным адресом кэширована, это приносит пользу также и при записи (Write Back), однако само кэширование выполняется только при чтении, поэтому если в выполняемом коде попадается серия из последовательных записей по одинаковым (или близким) адресам, кэш не приносит пользы, если до этого эти адреса не считывались программой. AMD Write Allocation - режим, при котором поводом для кэширования является не только чтение данных, но и запись. Это чревато коллизиями, как любое отступление от стандарта Intel, поэтому AMD предусмотрела возможность программного управления этим режимом, вплоть до отключения его. Настройка регистров процессоров AMD K5/K6, управляющих этим режимом, и есть часть шага 30.

31 1. Test base memory from 256K to 640K and extended memory above 1MB .
2. Test Extended Memory from 1M to the of memoryusing various patterns.
NOTE: This will be skipped in EISA mode and can be "skipped" with ESC key in ISA mode.
3. USB Init .
Основной отображаемый на экране тест оперативной памяти. Для объема памяти, определенного на шаге 30 выполняется тест, путем записи нескольких видов Pattern и их контрольного считывания. Предположительной причиной разногласий по EISA является тот факт, что по старым стандартам, иметь более 16 Мбайт памяти могла только EISA система. Сейчас это не так, и вся физически присутствующая память тестируется на этом этапе, во всяком случае для не EISA системы.
Инициализация USB. По USB есть сомнения: это действие не имеющее отношение к тесту памяти и для него должны были зарезервировать отдельный код.
32 IfEISA Mode flag is set then test EISA memory found in slots initialization.
NOTE: This will be skipped in ISA mode and can be "skipped" with ESC key in EISA mode.
Display the Award Plug and Play BIOS Extension message (PnP BIOS ONLY).
Program all onboard super I/O chips(if any) including COM ports, LPT ports, FDD port... according to setup value Program onboard audio devices
Если исходить из предположения, что вся память проверяется на шаге 31 , то для шага 32 верным кажется вариант Soyo, где нет упоминаний про память.
Выводится заставка Plug and Play BIOS Extension .
Настройка ресурсов Super I/O. Микросхема SIO вводится в режим конфигурирования. В соответствии с установками Setup, если CMOS достоверен, программируются параметры: базовые адреса программно-доступных ресурсов COM, LPT, FDC, GamePort номера используемых линий IRQ и DRQ. После этого отключается режим конфигурирования SIO.
Аналогично программируется Onboard Audio Device. Если Audio Device подключено к PCI, его настройка происходит не на этом шаге, а на шаге 0B .
39 Programming clock synthesizer by I2C bus .
Предположительно, на этом шаге выполняется программирование тактового генератора по шине I2C
3C Set flag to allow users to enter CMOS Setup Utility. Установка программного флага разрешения входа в Setup.
3D 1. Initialize Keyboard.
2. Install PS2 mouse .
3. Build the INT 15h function E820H table .
4. Build the PnP Device Node for total memory size .
Инициализация PS/2 mouse. Один из альтернативных моментов для инициализации клавиатуры.
Относительно функции E820h и PnP Device Node информации мало.
3E Try to turn on Level 2 cache.
NOTE: Some chipset may need to turn on the L2 cache in this stage. But usually, the cache is turn on later in POST 61h.
Один из альтернативных моментов для инициализации контроллера External Cache и разрешения Cache
BF 1. Program the rest of the Chipset"s value according to Setup (Later Setup Value Program).
2. If auto-configuration is enabled, programmed the chipset with pre-defined values in the MODBINable Auto-Table .
Настройка конфигурационных регистров CHIPSET в соответствии с установками CHIPSET Setup. Доступно для утилиты MODBIN.
40 Display virus protect disable or enable - Absent .
Отображение состояния опции Virus Protect, исключено в новых версиях BIOS
41 Initialize floppy disk drive controller and any drives.
Инициализация подсистемы гибких дисков.
Для BIOS поддерживающих процессоры P6 сначала выполняется отключение local APIC, потому что в противном случае запрос IRQ не может быть правильно сгенерирован. Затем, для всех типов BIOS, выполняется программный сброс контроллера дисковода (через порт 3F2h). Снимается маскирование запроса прерывания от дисковода (IRQ6), для этого обнуляется бит 6 в порте 21h, проверяется прохождение запроса прерывания от контроллера дисковода. Устанавливаются параметры работы контроллера дисковода (командой SPECIFY). Если в Setup разрешен Floppy Drive Seek Test, выполняется тест позиционирования для установленных дисководов
42 1. Cut IRQ 12 connection if PS2 mouse is not installed.
2. Install IDE Hard Drives. Auto-detect HDDs. Build the AT compatible HDD table for Type 47. Set PIO timing .
3. Detect CD ROM on IDE Bus .
4. Detect LS120 drive .
Отключение IRQ12 если PS/2 mouse отсутствует.
Выполняется программный сброс контроллера жестких дисков. Если для устройства в Setup указан режим AUTO, выполняется команда IDENTIFY DRIVE, иначе параметры устройства берутся из CMOS. Выполняется программирование конфигурационных регистров PIIX для установки PIO Mode.
Выполняется сканирование на предмет наличия других IDE устройств (CDROM, LS120 ...). Если на Primary IDE присутствуют устройства, размаскируется IRQ14, обнуляется бит 6 в порте A1h. Если на Secondary IDE присутствуют устройства, размаскируется IRQ15, обнуляется бит 7 в порте A1h. Проверяется прохождение соответствующих IRQ (только для HDD)
43 1. Detect and Initialize Serial/Parallel Ports (also game port).
2. If it is a PNP BIOS, initialize serial and parallel ports .
Предположительно само конфигурирование Si/o Chip происходит на шаге 32 , а на шаге 43 ресурсы SIO вносятся в формируемый BIOS список PnP устройств.
45 Detect and Initialize math coprocessor. Инициализация сопроцессора FPU.
Проверка наличия (Detect) в обычном понимании не выполняется, так как наличие/отсутствие FPU однозначно следует из информации, прочитанной по команде CPUID при определении CPU Type. Но в силу того, что убедиться в функциональной пригодности этого устройства невозможно на ранних этапах POST, выполняется ряд тестов с участием памяти, подтверждающих корректность определения FPU.
Под инициализацией обычно понимается программный сброс FPU и запись управляющего слова в регистр FPU CW .
4E 1. Reboot if Manufacturing pin POST Loop is set. Otherwise display any messages (i.e., any non-fatal errors that were detected during POST) and enter Setup.
2. If there is any error detected (such as video, keyboard etc.), show all the error messages on the screen and wait for user to press key .
3. Enable "Far Hit" for IBM/Cyrix 6x86 CPU. Инициализация клавиатуры USB.
Некоторые материнские платы (в основном в конструктиве Socket 7) имеют перемычку для заводского тестирования. Если указанная перемычка установлена, выполняется перезагрузка. В противном случае на экран выводятся сообщения о нефатальных ошибках, таких как несоответствие HDD объявленному в CMOS типу, отказе клавиатуры и тому подобное.
На данном этапе становится возможен вход в CMOS Setup, если отработано нажатие клавиши DEL.
В случае, если перемычка заводского тестирования не установлена либо не предусмотрена вообще и обнаружены ошибки, не препятствующие дальнейшему выполнению POST и старту операционной системы, выводится сообщение и ожидание продолжить POST по нажатию любой клавиши. Для клавиатуры в стандарте DIN или PS/2 инициализация уже выполнена на шаге 3D , поэтому выполняется только проверка состояния KeyLock. Прочие параметры клавиатуры устанавливаются на шаге 62 .
В связи с тем, что на шаге 45 завершены все инициализационные процедуры для CPU, становится возможным выбрать протокол работы с cache L2, если установлен процессор IBM/Cyrix. Разрешается Write Allocation .
4F 1. If password is needed, ask for password.
2. Clear the Energy Star Logo (Green BIOS ONLY) .
Запрос на ввод пароля, если это предусмотрено установками CMOS Setup.
Логотип Energy Star Pollution или его заменяющий исчезает.
50 Write all CMOS values back to RAM and clear screen.
Write all the CMOS values currently in the BIOS stack area back into the CMOS .
Восстановление ранее сохраненного в ОЗУ состояния CMOS. При выполнении некоторых фрагментов POST содержимое CMOS может модифицироваться, поэтому исходное содержимое CMOS копируется в ОЗУ, обычно стек BIOS, а после прохождения искажающих CMOS фрагментов, записывается обратно в CMOS .
51 Enable parity checker, Enable NMI, Enable cache, reset flags before boot.
Относительно разрешения контроля четности, немаскируемых прерываний, cache L1/L2 и переустановки флагов информации нет. Предположительно, выполнение указанных операций возможно только для чип сетов типа Intel HX, осуществляющих поддержку контроля четности.
Разрешено автоопределение HDD по схеме с 32-битным доступом.
Инициализация и установка параметров устройств ISA/PnP до инициализации устройств PCI
52 1. Initialize any option ROMs present from C8000h to EFFFFh .
NOTE: When FSCAN option is enabled, will initialize from C8000h to F7FFFh .
2. Later PCI initializations (PCI BIOS ONLY) - assign IRQ to PCI devices - initialize all PCI ROMs.
3. Program shadows RAM according to Setup settings.
4. Program parity according to Setup setting.
5. Power Management Initialization. Enable/Disable global PM - APM interface initializtion.
Инициализация ПЗУ дополнительных BIOS (ROMSCAN процедура). В диапазоне адресов C8000H-EFFFFH выполняется поиск сигнатур дополнительных BIOS (55 AA), если сигнатура обнаружена, считывается байт длины блока (идущий после сигнатуры) для блока проверяется контрольная сумма, и в случае верной контрольной суммы управление передается командой FAR CALL по смещению 0003 относительно начала блока. Предполагается, что дополнительный BIOS выполнит инициализацию устройства, которое он обслуживает, перехватит необходимые вектора прерываний и вернет управление в System BIOS командой RET FAR. Типичный пример - SCSI BIOS, который обычно перехватывает INT 13h и берет на себя обслуживание SCSI HDD. Video BIOS использует ту же идеологию, но находится на особом положении - его инициализация происходит раньше, для обеспечения возможности отображения выполнения POST на экране.
Assign IRQ to PCI devices - имеется в виду установка значений четырех конфигурационных регистров PIIX (по числу линий PCI INT), в которые записывается, на какое IRQ картируется каждая из линий запросов прерывания PCI (INTA#, INTB#, INTC#, INTD#). Для дополнительных BIOS в соответствии с установками Setup, опционально включается режим Shadow. Для System BIOS он включен всегда.
На этом этапе также программируется:
формирование NMI (Nonmaskable Interrupt) для Parity Check
формирование SMI (System Management Interrupt) для Green функций
53 Initialize time value in 40h: BIOS area.
1. If it is NOT a PNP BIOS, initialize serial and parallel ports .
2. Initialize time value in BIOS data area by translate the RTC time value into a timer tick value .
Установка счетчика DOS Time в соответствии с Real Time Clock. Значение времени в формате часы:минуты:секунды пересчитывается в тики таймера 18.2 Hz и записывается в ячейки DOS Time в области переменных BIOS. Установка переменных BIOS, хранящих базовые адреса портов.
60 SetupVirus Protection (Boot Sector Protection) functionality according to Setupsetting .
Установка антивирусной защиты BOOT Sector. В большинстве плат такая защита реализуется программно. Перед входом в процедуру обработки дискового сервиса (INT 13h) устанавливается транзитный программный модуль, который анализирует входные параметры функции и детектирует две ситуации:
Попытка записи в BOOT Sector (AH=3 , CL=1 , CH=0 , DL=8xh , DH=0 )
Попытка форматирования Track 0 (AH=5 , CH=0 , DL=8xh , DH=0 )
Если система условий - значения регистров - выполняется, вместо дисковой операции выдается предупреждающее сообщение и звуковой сигнал. На шаге 60 выполняется перестановка вектора INT 13h на транзитный контролирующий модуль, если в Setup включен данный режим.
61 1. Try to turn on Level 2 cache.
Note: if L2 cache is already turned on in POST 3D, this part will be skipped .
2. Set the boot up speed according to Setup setting .
3. Last chance for Chipset initialization .
4. Last chance for Power Management initialization (Green BIOS only) .
5. Show the system configuration table .
Один из альтернативных моментов для включения External Cache.
Завершающие действия по инициализации Chipset и Power Management
62 1. Setup daylight saving according to Setup value .
2. Program the NUM Lock, typmatic rate and typmatic speed according to Setup setting Чтение KBD ID.
Установка режима Daylight Saving - разрешение автоматического перехода на зимнее/летнее время для RealTimeClock, состояния NUM Lock, частота автоповтора и время ожидания до входа в режим автоповтора.
63 1. If there is any changes in the hardware configuration, update the ESCD information (PNP BIOS ONLY) .
2. If there is any changes in the hardware configuration, update the DMI data pool (DMI BIOS ONLY) .
3. Clear memory that have been used .
4. Boot system via INT 19h .
Коррекция блоков ESCD, DMI, если изменилась конфигурация. Очистка, обнуление ОЗУ.
75 Thermal Warning .
Если в качестве контроллера системного мониторинга используется LM78, выполняется сигнализация о превышении допустимых значений температурного режима.
В настоящее время нет достоверной информации о генерации этого кода контроллерами других производителей, например Winbond Electronics или Genesys Logic.
80 ...83 , 90 ...93 Primary Master IDE Power Off(80)/On(90); Primary Slave IDE Power Off(81)/On(91); Secondary Master IDE Power Off(82)/On(92); Secondary Slave IDE Power Off(83)/On(93) .
84 and 94 Sound Chip Power Off(84)/On(94) .
86 ...88 , 96 ...98 COMA Power Off(86)/On(96) ; COMB Power Off(87)/On(97) ; LPT Power Off(88)/On(98).
8B and 9B Turn CRT Off(8B)/On(9B) .
85 , 89 , 8A , 8C , 8D and 95 , 99 , 9A , 9C , 9D Turn Unknown Devices Off/On .
Это не один из этапов POST, а вывод в диагностический порт контрольных точек включения / выключения неизвестных устройств.
Следует отметить, что все коды группы 80 и 90 связаны с событиями, возникающими в процессе Green Functions. На сегодня нет достоверной информации, однозначно определяющей устройства, кроме выше упомянутых, участвующих в функциях энергосбережения
B0 Spurious. If interrupt occurs in protected mode.
Обработчик-заглушка прерываний (исключений) для защищенного режима. Это не один из этапов POST, а процедура, на которую устанавливаются вектора (для защищенного режима не вектора, а дескрипторы IDT) внутренних прерываний (исключений) процессора на время работы в Protected Mode, например, при тесте Extended Memory. Если при работе в Protected Mode не будет сбоев, эта процедура и не получит управления. Если будут иметь место ошибки, например некорректные данные в дескрипторных таблицах, страничные нарушения и другие исключительные ситуации Protected Mode, управление будет передано на эту процедуру, она выведет код B0 в Port 80 и остановится
B1 If unmasked NMI occurs, display Press F1 to disable NMI, F2 reboot . Unclaimed NMI occurs.
Обработчик-заглушка немаскируемого прерывания. Это не один из этапов POST, а процедура, на которую указывает вектор немаскируемого прерывания. Если возник запрос NMI, и не удалось идентифицировать причину NMI, в Port80 выводится этот код, на экран выводится сообщение:
Press F1 to disable NMI, F2 to reboot .
И ожидаются действия пользователя.
B2 Unknown action .
55 and BB Begin to Shutdown the system 5 Volt; Begin to Shutdown the system 0 Volt .
D3 SMI Handle .
D7 Software Doze .
D8 Software Standby .
D9 Software Suspend .
E1 ...EF Setup Pages E1 - Page 1 , E2 - Page 2 , etc.
По этой операции проверенной информации нет, предположительно, что это актуально для старых систем, у которых доступ к BIOS ROM организуется постранично через картируемое окно, при установке каждой новой страницы выводится код Ex, где x - номер страницы. Этот факт подтверждается существованием в указанном диапазоне кодов, связанных с выполнением других процессов
EC ECC Post Code associate with System Management Interrupt (SMI) .
В настоящее время нет достоверной информации о причинах генерации этого кода. Предположительно, его возникновение связано с обработкой ECC в процессе выполнения Green Functions .
ED HDD hang up on 0V resume.
Данный код сигнализирует об ошибке выхода HDD из режима энергосбережения.
FF System Booting .
This means that the BIOS already pass the control right to the operating system.
Передача управления загрузчику BOOT сектора. BIOS выполняет команду INT 19h. Процедура обработки прерывания INT 19h последовательно пытается заг.

Описание:

Предлагаю Вашему вниманию основные 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-кодов можно осуществить несколькими способами.

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

Поскольку BIOS выпускается несколькими производителями, соответственно, для каждой BIOS отдельного производителя имеется своя таблица POST-кодов.

Данная таблица содержит POST-коды, которые отображаются при полной процедуре POST.

  • CF Определяется тип процессора и тестируется чтение/запись CMOS
  • C0 Предварительно инициализируется чипсет и L1-, L2-кэш, программируется контроллер прерываний, DMA, таймер
  • C1 Детектируется тип и объем оперативной памяти
  • C3 Код BIOS распаковывается во временную область оперативной памяти
  • 0С Проверяются контрольные суммы BIOS
  • C5 Код BIOS копируется в теневую память и управление передается модулю Boot Block
  • 01 Модуль XGROUP распаковывается по физическому адресу 1000:0000h
  • 02 Инициализация процессора. Устанавливаются регистры CR и MSR
  • 03 Определяются ресурсы ввода/вывода (Super I/O)
  • 05 Очищается экран и флаг состояния CMOS
  • 06 Проверяется сопроцессор
  • 07 Определяется и тестируется контроллер клавиатуры
  • 08 Определяется интерфейс клавиатуры
  • 09 Инициализация контроллера Serial ATA
  • OA Определяется клавиатура и мышь, которые подключены к портам PS/2
  • 0B Устанавливаются ресурсы звукового контроллера AC97
  • OE Тестируется сегмент памяти F000h
  • 10 Определяется тип flash-памяти
  • 12 Тестируется CMOS
  • 14 Устанавливаются значения для регистров чипсета
  • 16 Первично инициализируется тактовый генератор
  • 18 Определяется тип процессора, его параметры и объемы кэша L1 и L2
  • 1B Инициализируется таблица векторов прерываний
  • 1С Проверяются контрольные суммы CMOS и напряжение питания аккумулятора
  • 1D Определяется система управления питанием Power Management
  • 1F Загружается матрица клавиатуры (для ноутбуков)
  • 21 Инициализируется система Hardware Power Management (для ноутбуков)
  • 23 Тестируется математический сопроцессор, дисковод, инициализация чипсета
  • 24 Обновляется микрокод процессора. Создается карта распределения ресурсов устройств Plug and Play
  • 25 Начальная инициализация PCI: перечисляются устройства, поиск адаптера VGA, запись VGA BIOS по адресу C000:0
  • 26 Устанавливается тактовая частота по CMOS Setup. Отключается синхронизация неиспользуемых слотов DIMM и PCI. Инициализируется система мониторинга (H/W Monitor)
  • 27 Разрешается прерывание INT 09h. Снова инициализируется контроллер клавиатуры
  • 29 Программируются регистры MTRR, инициализируется APIC. Программируется контроллер IDE. Измеряется частота процессора. Вызывается расширение BIOS видеосистемы
  • 2B Поиск BIOS видеоадаптера
  • 2D Отображается заставка Award, информация о типе процессора и его скорости
  • 33 Сбрасывается клавиатура
  • 35 Тестируется первый канал DMA
  • 37 Тестируется второй канал DMA
  • 39 Тестируются страничные регистры DMA
  • 3C Настраивается контроллер 8254 (таймер)
  • 3E Проверка контроллера прерываний 8259
  • 43 Проверяется контроллер прерываний
  • 47 Тестируются шины ISA/EISA
  • 49 Вычисляется объем оперативной памяти. Настраиваются регистры для процессора AMD K5
  • 4E Программируются регистры MTRR для процессоров Syrix. Инициализируются кэш L2 и APIC
  • 50 Определяется шина USB
  • 52 Тестируется ОЗУ с отображением результатов. Очищается расширенная память
  • 53 Если выполнена очистка CMOS, то сбрасывается пароль на вход в систему
  • 55 Отображается количество процессоров (для многопроцессорных платформ)
  • 57 Отображается логотип EPA. Начальная инициализация устройств ISA PnP
  • 59 Определяется система защиты от вирусов
  • 5B Вывод подсказки для запуска обновления BIOS с дискеты
  • 5D Запускается контроллер Super I/O и интегрированный аудиоконтроллер
  • 60 Вход в CMOS Setup, если была нажата клавиша Delete
  • 65 Инициализируется мышь PS/2
  • 69 Включается кэш L2
  • 6B Настраиваются регистры чипсета согласно BIOS Setup
  • 6D Назначаются ресурсы для устройств ISA PnP и COM-порты для интегрированных устройств
  • 6F Инициализируется и настраивается контроллер гибких дисков
  • 75 Детектируются и устанавливаются IDE-устройства: жесткие диски, CD/DVD, LS-120, ZIP и др.
  • 76 Выводится информация об обнаруженных IDE-устройствах
  • 77 Инициализируются последовательные и параллельные порты
  • 7A Сбрасывается и готовится к работе математический сопроцессор
  • 7C Определяется защита от несанкционированной записи на жесткие диски
  • 7F При наличии ошибок выводится сообщение и ожидается нажатие клавиш Delete и F1
  • 82 Выделяется память для управления питанием и заносятся изменения в таблицу ESCD.
  • Убирается заставка с логотипом EPA. Запрашивается пароль, если нужен
  • 83 Все данные сохраняются из временного стека в CMOS
  • 84 Вывод на экран сообщения Initializing Plug and Play Cards
  • 85 Завершается инициализация USB
  • 87 Создаются таблицы SYSID в области DMI
  • 89 Устанавливаются таблицы ACPI. Назначаются прерывания для PCI-устройств
  • 8B Вызывается BIOS дополнительных ISA- или PCI-контроллеров, за исключением видеоадаптера
  • 8D Устанавливаются параметры контроля четности ОЗУ по CMOS Setup. Инициализируется APM
  • 8F IRQ 12 разрешается для «горячего» подключения мыши PS/2
  • 94 Завершение инициализации чипсета. Отображение таблицы распределения ресурсов. Включение кэша L2. Установка режима перехода на летнее/зимнее время
  • 95 Устанавливается частота автоповтора клавиатуры и состояния Num Lock
  • 96 Для многопроцессорных систем настраиваются регистры (для процессоров Cyrix). Создается таблица ESCD. Устанавливается таймер DOS Time по показаниям часов RTC CMOS. Сохраняются разделы загрузочных устройств для использования встроенным антивирусом. Динамик оповещает об окончании POST. Создается таблица MSIRQ FF Выполняется прерывание BIOS INT 19h. Поиск загрузчика в первом секторе загрузочного устройства

Сокращенная процедура выполняется при установке в BIOS параметра Quick Power On Self Test.

  • 65 Сбрасывается видеоадаптер. Инициализируются звуковой контроллер, устройства ввода/вывода,тестируется клавиатура и мышь. Проверяется целостность BIOS
  • 66 Инициализируется кэш-память. Создается таблица векторов прерываний. Инициализируется система управления питанием
  • 67 Проверяется контрольная сумма CMOS и тестируется батарейка питания. Настраивается чипсет на основе параметров CMOS
  • 68 Инициализируется видеоадаптер
  • 69 Настраивается контроллер прерываний
  • 6A Тестируется оперативная память (ускоренно)
  • 6B Отображается логотип EPA, результаты тестов процессора и памяти
  • 70 Отображается подсказка для входа в BIOS Setup. Инициализируется мышь, подключенная к PS/2 или USB
  • 71 Инициализируется контроллер кэш-памяти
  • 72 Настраиваются регистры чипсета. Создается список устройств Plug and Play.& Инициализируется контроллер дисковода
  • 73 Инициализируется контроллер жестких дисков
  • 74 Инициализируется сопроцессор
  • 75 Если нужно, жесткий диск защищается от записи
  • 77 Если нужно, запрашивается пароль и выводятся сообщения Press F1 to continue, DEL to enter Setup
  • 78 Инициализируются платы расширения с собственной BIOS
  • 79 Инициализируются ресурсы платформы
  • 7A Генерируются корневая таблица RSDT, таблицы устройств DSDT, FADT и т. п.
  • 7D Собирается информациия о разделах загрузочных устройств
  • 7E BIOS готовится к загрузке операционной системы
  • 7F Состояние индикатора NumLock устанавливается в соответствии с настройками
  • BIOS Setup
  • 80 Вызывается INT 19 и запускается операционная система

AMIBIOS8.0

  • D0 Инициализация процессора и чипсета. Проверка контрольных сумм загрузочного блока BIOS
  • D1 Начальная инициализация портов ввода/вывода. Контроллеру клавиатуры передается команда для самотестирования BAT
  • D2 Запрет кэш-памяти L1/L2. Определяется объем установленной ОЗУ
  • D3 Настраиваются схемы регенерации памяти. Разрешается использовать кэш-память
  • D4 Тест 512 Кбайт памяти. Устанавливается стек и назначается протокол обмена с кэш-памятью
  • D5 Код BIOS распаковывается и копируется в теневую память
  • D6 Проверяются контрольные суммы BIOS и нажатие клавиш Ctrl+Home (восстановление BIOS)
  • D7 Управление передается интерфейсному модулю, распаковывающему код в область Run-Time
  • D8 Выполняемый код распаковывается из flash-памяти в оперативную. Сохраняется информация CPUID
  • D9 Распакованный код переносится из области временного хранения в сегменты 0E000h и 0F000h ОЗУ
  • DA Восстанавливаются регистры CPUID. Выполнение POST переносится в оперативную память
  • E1–E8, EC–EE Ошибки, связанные с конфигурацией системной памяти
  • 03 Запрещается обработка NMI, ошибок четности, выдача сигналов на монитор. Резервируется область для журнала событий GPNV, устанавливаются начальные значения переменных из BIOS
  • 04 Проверяется работоспособность батареи и подсчитывается контрольная сумма CMOS
  • 05 Инициализируется контроллер прерываний и строится таблица векторов
  • 06 Тестируется и готовится к работе таймер
  • 08 Тестируется клавиатура (мигают индикаторы клавиатуры)
  • C0 Начальная инициализация процессора. Запрещается использовать кэш-память. Определяется APIC
  • C1 Для многопроцессорных систем определяется процессор, отвечающий за запуск системы
  • C2 Завершается назначение процессора для запуска системы. Идентификация с помощью CPUID
  • C5 Определяется количество процессоров, настраиваются их параметры
  • C6 Инициализируется кэш-память для более быстрого прохождения POST
  • C7 Завершается начальная инициализация процессора
  • 0A Определяется контроллер клавиатуры
  • 0B Поиск мыши, подключенной к порту PS/2
  • 0C Проверяется наличие клавиатуры
  • 0E Детектируются и инициализируются различные устройства ввода
  • 13 Начальная инициализация регистров чипсета
  • 24 Распаковываются и инициализируются модули BIOS, специфические для платформы.
  • Создается таблица векторов прерываний и инициализируется обработка прерываний
  • 2A С помощью механизма DIM определяются устройства на локальных шинах. Готовится к инициализации видеоадаптер, строится таблица распределения ресурсов
  • 2C Обнаружение и инициализация видеоадаптера, видеоадаптер вызывается BIOS
  • 2E Поиск и инициализация дополнительных устройств ввода/вывода
  • 30 Готовится к обработке SMI
  • 31 Инициализируется и активизируется модуль ADM
  • 33 Инициализируется модуль упрощенной загрузки
  • 37 Отображается логотип AMI, версия BIOS, процессора, подсказка клавиши для входа в BIOS
  • 38 С помощью DIM инициализируются различные устройства на локальных шинах
  • 39 Инициализируется контроллер DMA
  • 3A Устанавливается системное время в соответствии с показаниями часов RTC
  • 3B Тестируется оперативная память и отображаются результаты
  • 3C Настраиваются регистры чипсета
  • 40 Инициализируются последовательные и параллельные порты, математический сопроцессор и др.
  • 52 По результатам теста памяти обновляются данные об ОЗУ в CMOS
  • 60 По BIOS Setup устанавливается состояние NumLock и настраиваются параметры автоповтора
  • 75 Запускается процедура для работы с дисковыми устройствами (прерывание INT 13h)
  • 78 Создается список устройств IPL (с которых возможна загрузка операционной системы)
  • 7C Создаются и записываются в NVRAM таблицы расширенной системной конфигурации ESCD
  • 84 Регистрация ошибок, обнаруженных при выполнении POST
  • 85 Выводятся сообщения об обнаруженных некритических ошибках.
  • 87 Если нужно, запускается BIOS Setup, которая предварительно распаковывается в ОЗУ
  • 8C В соответствии с BIOS Setup настраиваются регистры чипсета
  • 8D Строятся таблицы ACPI
  • 8E Настраивается обслуживание немаскируемых прерываний (NMI)
  • 90 Окончательно инициализируется SMI
  • A1 Очистка данных, которые не нужны при загрузке операционной системы
  • A2 Для взаимодействия с операционной системой готовятся модули EFI
  • A4 In accordance with the BIOS Setup language module is initialized
  • A7 Выводится итоговая таблица процедуры POST
  • A8 Устанавливается состояние регистров MTRR
  • A9 Если нужно, выполняется ожидание ввода команд с клавиатуры
  • AA Удаляются векторы прерываний POST (INT 1Ch и INT 09h)
  • AB Определяются устройства для загрузки операционной системы
  • AC Завершающие этапы настройки чипсета в соответствии с BIOS Setup
  • B1 Настраивается интерфейс ACPI
  • 00 Вызывается обработка прерывания INT 19h (поиск загрузочного сектора, загрузка ОС)

PhoenixBios 4.0

  • 02 Verify Real Mode
  • 03 Disable Non-Maskable Interrupt (NMI)
  • 04 Get CPU type
  • 06 Initialize system hardware
  • 08 Initialize chipset with initial POST values
  • 09 Set IN POST flag
  • 0A Initialize CPU registers
  • 0B Enable CPU cache
  • 0C Initialize caches to initial POST values
  • 0E Initialize I/O component
  • 0F Initialize the local bus IDE
  • 10 Initialize Power Management
  • 11 Load alternate registers with initial POST values
  • 12 Restore CPU control word during warm boot
  • 13 Initialize PCI Bus Mastering devices
  • 14 Initialize keyboard controller
  • 16 (1-2-2-3) BIOS ROM checksum
  • 17 Initialize cache before memory autosize
  • 18 8254 timer initialization
  • 1A 8237 DMA controller initialization
  • 1C Reset Programmable Interrupt Controller
  • 20 (1-3-1-1) Test DRAM refresh
  • 22 (1-3-1-3) Test 8742 Keyboard Controller
  • 24 Set ES segment register to 4 GB
  • 26 Enable A20 line
  • 28 Autosize DRAM
  • 29 Initialize POST Memory Manager
  • 2A Clear 512 KB base RAM
  • 2C (1-3-4-1) RAM failure on address line xxxx
  • 2E (1-3-4-3) RAM failure on data bits xxxx of low byte of memory bus
  • 2F Enable cache before system BIOS shadow
  • 30 (1-4-1-1) RAM failure on data bits xxxx of high byte of memory bus
  • 32 Test CPU bus-clock frequency
  • 33 Initialize Phoenix Dispatch Manager
  • 34 Disable Power Button during POST
  • 35 Re-initialize registers
  • 36 Warm start shut down
  • 37 Re-initialize chipset
  • 38 Shadow system BIOS ROM
  • 39 Re-initialize cache
  • 3A Autosize cache
  • 3C Advanced configuration of chipset registers
  • 3D Load alternate registers with CMOS values
  • 40 CPU speed detection
  • 42 Initialize interrupt vectors
  • 45 POST device initialization
  • 46 (2-1-2-3) Check ROM copyright notice
  • 48 Check video configuration against CMOS
  • 49 Initialize PCI bus and devices
  • 4A Initialize all video adapters in system
  • 4B QuietBoot start (optional)
  • 4C Shadow video BIOS ROM
  • 4E Display BIOS copyright notice
  • 50 Display CPU type and speed
  • 51 Initialize EISA board
  • 52 Test keyboard Тестируется клавиатура
  • 54 Set key click if enabled
  • 55 Initialize USB bus
  • 58 (2-2-3-1) Test for unexpected interrupts
  • 59 Initialize POST display service
  • 5A Display prompt “Press F2 to enter SETUP”
  • 5B Disable CPU cache
  • 5C Test RAM between 512 and 640 KB
  • 60 Test extended memory
  • 62 Test extended memory address lines
  • 64 Jump to UserPatch1
  • 66 Configure advanced cache registers
  • 67 Initialize Multi Processor APIC
  • 68 Enable external and CPU caches
  • 69 Setup System Management Mode (SMM) area
  • 6A Display external L2 cache size
  • 6B Load custom defaults (optional)
  • 6C Display shadow-area message
  • 6E Display possible high address for UMB recovery
  • 70 Display error messages Выводятся сообщения об ошибках
  • 72 Check for configuration errors
  • 76 Check for keyboard errors
  • 7C Set up hardware interrupt vectors
  • 7D Initialize hardware monitoring
  • 7E Initialize coprocessor if present
  • 80 Disable onboard Super I/O ports and IRQs
  • 81 Late POST device initialization
  • 82 Detect and install external RS232 ports
  • 83 Configure non-MCD IDE controllers
  • 84 Detect and install external parallel ports
  • 85 Initialize PC-compatible PnP ISA devices
  • 86 Re-initialize onboard I/O ports
  • 87 Configure Motheboard Configurable Devices (optional)
  • 88 Initialize BIOS Data Area
  • 89 Enable Non-Maskable Interrupts (NMIs)
  • 8A Initialize Extended BIOS Data Area
  • 8B Test and initialize PS/2 mouse
  • 8C Initialize floppy controller
  • 8F Determine number of ATA drives (optional)
  • 90 Initialize hard-disk controllers
  • 91 Initialize local-bus harddisk controllers
  • 92 Jump to UserPatch2
  • 93 Build MPTABLE for multi-processor boards
  • 95 Install CD ROM for boot
  • 96 Clear huge ES segment register
  • 97 Fixup Multi Processor table
  • 98 (1-2) Search for option ROMs. One long, two short beeps on checksum failure
  • 99 Check for SMART Drive (optional)
  • 9A Shadow option ROMs
  • 9C Set up Power Management
  • 9D Initialize security engine (optional)
  • 9E Enable hardware interrupts
  • 9F Determine number of ATA and SCSI drives
  • A0 Set time of day
  • A2 Check key lock
  • A4 Initialize Typematic rate
  • A8 Erase F2 prompt
  • AA Scan for F2 key stroke
  • AC Enter SETUP
  • AE Clear Boot flag
  • B0 Check for errors
  • B2 POST done – prepare to boot operating system
  • B4 (1) One short beep before boot
  • B5 Terminate QuietBoot (optional)
  • B6 Check password (optional)
  • B9 Prepare Boot
  • BA Initialize DMI parameters
  • BB Initialize PnP Option ROMs
  • BC Clear parity checkers
  • BD Display MultiBoot menu
  • BE Clear screen (optional)
  • BF Check virus and backup reminders
  • C0 Try to boot with INT 19
  • C1 Initialize POST Error Manager (PEM)
  • C2 Initialize error logging
  • C3 Initialize error display function
  • C4 Initialize system error handler
  • C5 PnPnd dual CMOS (optional)
  • C6 Initialize notebook docking (optional)
  • C7 Initialize notebook docking late
  • D2 Unknown interrupt
  • E0 Initialize the chipset
  • E1 Initialize the bridge
  • E2 Initialize the CPU
  • E3 Initialize system timer
  • E4 Initialize system I/O
  • E5 Check force recovery boot
  • E6 Checksum BIOS ROM
  • E7 Go to BIOS
  • E8 Set Huge Segment
  • E9 Initialize Multi Processor
  • EA Initialize OEM special code
  • EB Initialize PIC and DMA
  • EC Initialize Memory type
  • ED Initialize Memory size
  • EE Shadow Boot Block
  • EF System memory test
  • F0 Initialize interrupt vectors
  • F1 Initialize Real Time Clock
  • F2 Initialize video
  • F3 Initialize System Management Mode
  • F4 (1) Output one beep before boot
  • F5 Boot to Mini DOS
  • F6 Clear Huge Segment
  • F7 Boot to Full DOS

Оригинальные и достоверные таблицы 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 остановилась на одном из предыдущих этапов, то увидеть на каком именно не представляется возможным.

PI0049

POST-карта для дефектации компьютерных материнских плат, модель PI0049, предназначена для ото-бра-же-ния POST-кодов всех производителей BIOS. Данное изделие более известно под названием PC Ana-lyz-er 2 , особенности функционирования которого неоднократно рассматривались на страницах нашего сайта. Руководство пользователя содержит перечень инженерных паролей, а также список стандартных сочетаний клавиш для входа в BIOS . Разработка POST-карты защищена патентом 01224987.4 (Китай).

PI0050

POST-карта IC80 V5.0

QiGuan KLPI6

Диагностическая карта KLPI6-SD производства QiGuan Electronics выполнена в соответствии с нормами международного стандарта IEC 61010-1, устанавливающему требования к низковольтному испы-та-тель-но-му оборудованию по перенапряжению. Функциональная особенность POST-карты KLPI6-SD — воз-мож-ность индикации POST-кодов персонального компьютера на внешней дисплейной панели. Кроме те-ку-ще-го кода на обеих индикаторах отображаются предыдущие значения, а также POST-код фатального сбоя.

QiGuan MKCP6A

Плата для диагностики персональной платформы и тестирования ее на стабильность (Diagnostics and Stability Test Card), модель MKCP6A , разработана компанией QiGuan Electronics с использованием технологии, защищенной национальным патентом 03126857.9 (Китай). Для отображения ПОСТ-кодов на плате имеется три пары(!) индикаторов: первая пара предназначена для вывода сбойного кода, следующая выводит текущий POST-код, последняя — предыдущий код.

SL-M04A

Раритетная версия руководства пользователя на турецком языке к диагностическому POST-контроллеру PC Analyzer (по-турецки PC Analizoru). Кроме широко известных описаний POST-кодов включает в себя перечень контрольных точек почти всех известных производителей BIOS. Для удобства все пост-коды отсортированы по номеру, что облегчает доступ и понимание. Комментарии к ним следуют не-по-сред-ствен-но за кодом и разделены названием BIOS.


25.10.2019

Данная таблица содержит POST-коды, которые отображаются при полной процедуре POST.

CF Определяется тип процессора и тестируется чтение/запись CMOS
C0 Предварительно инициализируется чипсет и L1-, L2-кэш, программируется
контроллер прерываний, DMA, таймер
C1 Детектируется тип и объем оперативной памяти
C3 Код BIOS распаковывается во временную область оперативной памяти
0С Проверяются контрольные суммы BIOS
C5 Код BIOS копируется в теневую память и управление передается модулю Boot Block
01 Модуль XGROUP распаковывается по физическому адресу 1000:0000h
02 Инициализация процессора. Устанавливаются регистры CR и MSR
03 Определяются ресурсы ввода/вывода (Super I/O)
05 Очищается экран и флаг состояния CMOS
06 Проверяется сопроцессор
07 Определяется и тестируется контроллер клавиатуры
08 Определяется интерфейс клавиатуры
09 Инициализация контроллера Serial ATA
OA Определяется клавиатура и мышь, которые подключены к портам PS/2
0B Устанавливаются ресурсы звукового контроллера AC97
OE Тестируется сегмент памяти F000h
10 Определяется тип flash-памяти
12 Тестируется CMOS
14 Устанавливаются значения для регистров чипсета
16 Первично инициализируется тактовый генератор
18 Определяется тип процессора, его параметры и объемы кэша L1 и L2
1B Инициализируется таблица векторов прерываний
1С Проверяются контрольные суммы CMOS и напряжение питания аккумулятора
1D Определяется система управления питанием Power Management
1F Загружается матрица клавиатуры (для ноутбуков)
21 Инициализируется система Hardware Power Management (для ноутбуков)
23 Тестируется математический сопроцессор, дисковод, инициализация чипсета
24 Обновляется микрокод процессора. Создается карта распределения ресурсов
устройств Plug and Play
25 Начальная инициализация PCI: перечисляются устройства, поиск адаптера
VGA, запись VGA BIOS по адресу C000:0
26 Устанавливается тактовая частота по CMOS Setup. Отключается синхронизация
неиспользуемых слотов DIMM и PCI. Инициализируется система мониторинга
(H/W Monitor)
27 Разрешается прерывание INT 09h. Снова инициализируется контроллер клавиатуры
29 Программируются регистры MTRR, инициализируется APIC. Программируется контроллер
IDE. Измеряется частота процессора. Вызывается расширение BIOS видеосистемы
2B Поиск BIOS видеоадаптера
2D Отображается заставка Award, информация о типе процессора и его скорости
33 Сбрасывается клавиатура
35 Тестируется первый канал DMA
37 Тестируется второй канал DMA
39 Тестируются страничные регистры DMA
3C Настраивается контроллер 8254 (таймер)
3E Проверка контроллера прерываний 8259
43 Проверяется контроллер прерываний
47 Тестируются шины ISA/EISA
49 Вычисляется объем оперативной памяти. Настраиваются регистры для процессора
AMD K5
4E Программируются регистры MTRR для процессоров Syrix. Инициализируются кэш L2
и APIC
50 Определяется шина USB
52 Тестируется ОЗУ с отображением результатов. Очищается расширенная память
53 Если выполнена очистка CMOS, то сбрасывается пароль на вход в систему
55 Отображается количество процессоров (для многопроцессорных платформ)
57 Отображается логотип EPA. Начальная инициализация устройств ISA PnP
59 Определяется система защиты от вирусов
5B Вывод подсказки для запуска обновления BIOS с дискеты
5D Запускается контроллер Super I/O и интегрированный аудиоконтроллер
60 Вход в CMOS Setup, если была нажата клавиша Delete
65 Инициализируется мышь PS/2
69 Включается кэш L2
6B Настраиваются регистры чипсета согласно BIOS Setup
6D Назначаются ресурсы для устройств ISA PnP и COM-порты для интегрированных
устройств
6F Инициализируется и настраивается контроллер гибких дисков
75 Детектируются и устанавливаются IDE-устройства: жесткие диски,
CD/DVD, LS-120, ZIP и др.
76 Выводится информация об обнаруженных IDE-устройствах
77 Инициализируются последовательные и параллельные порты
7A Сбрасывается и готовится к работе математический сопроцессор
7C Определяется защита от несанкционированной записи на жесткие диски
7F При наличии ошибок выводится сообщение и ожидается нажатие клавиш Delete и F1
82 Выделяется память для управления питанием и заносятся изменения в таблицу ESCD.
Убирается заставка с логотипом EPA. Запрашивается пароль, если нужен
83 Все данные сохраняются из временного стека в CMOS
84 Вывод на экран сообщения Initializing Plug and Play Cards
85 Завершается инициализация USB
87 Создаются таблицы SYSID в области DMI
89 Устанавливаются таблицы ACPI. Назначаются прерывания для PCI-устройств
8B Вызывается BIOS дополнительных ISA- или PCI-контроллеров, за исключением
видеоадаптера
8D Устанавливаются параметры контроля четности ОЗУ по CMOS Setup. Инициализируется
APM
8F IRQ 12 разрешается для «горячего» подключения мыши PS/2
94 Завершение инициализации чипсета. Отображение таблицы распределения ресурсов.
Включение кэша L2. Установка режима перехода на летнее/зимнее время
95 Устанавливается частота автоповтора клавиатуры и состояния Num Lock
96 Для многопроцессорных систем настраиваются регистры (для процессоров Cyrix).
Создается таблица ESCD. Устанавливается таймер DOS Time по показаниям часов
RTC CMOS.
Сохраняются разделы загрузочных устройств для использования встроенным
антивирусом.
Динамик оповещает об окончании POST. Создается таблица MSIRQ
FF Выполняется прерывание BIOS INT 19h. Поиск загрузчика в первом секторе
загрузочного устройства

Сокращенная процедура выполняется при установке в BIOS параметра Quick Power On Self Test.

65 Сбрасывается видеоадаптер. Инициализируются звуковой контроллер, устройства
ввода/вывода,тестируется клавиатура и мышь. Проверяется целостность BIOS
66 Инициализируется кэш-память. Создается таблица векторов прерываний.
Инициализируется система управления питанием
67 Проверяется контрольная сумма CMOS и тестируется батарейка питания.
Настраивается чипсет на основе параметров CMOS
68 Инициализируется видеоадаптер
69 Настраивается контроллер прерываний
6A Тестируется оперативная память (ускоренно)
6B Отображается логотип EPA, результаты тестов процессора и памяти
70 Отображается подсказка для входа в BIOS Setup. Инициализируется мышь,
подключенная к PS/2 или USB
71 Инициализируется контроллер кэш-памяти
72 Настраиваются регистры чипсета. Создается список устройств Plug and Play.
Инициализируется контроллер дисковода
73 Инициализируется контроллер жестких дисков
74 Инициализируется сопроцессор
75 Если нужно, жесткий диск защищается от записи
77 Если нужно, запрашивается пароль и выводятся сообщения Press F1 to continue,
DEL to enter Setup
78 Инициализируются платы расширения с собственной BIOS
79 Инициализируются ресурсы платформы
7A Генерируются корневая таблица RSDT, таблицы устройств DSDT, FADT и т. п.
7D Собирается информациия о разделах загрузочных устройств
7E BIOS готовится к загрузке операционной системы
7F Состояние индикатора NumLock устанавливается в соответствии с настройками
BIOS Setup
80 Вызывается INT 19 и запускается операционная система

******************************************

AMIBIOS 8.0

D0 Инициализация процессора и чипсета. Проверка контрольных сумм загрузочного блока
BIOS
D1 Начальная инициализация портов ввода/вывода. Контроллеру клавиатуры
передается команда для самотестирования BAT
D2 Запрет кэш-памяти L1/L2. Определяется объем установленной ОЗУ
D3 Настраиваются схемы регенерации памяти. Разрешается использовать кэш-память
D4 Тест 512 Кбайт памяти. Устанавливается стек и назначается протокол обмена
с кэш-памятью
D5 Код BIOS распаковывается и копируется в теневую память
D6 Проверяются контрольные суммы BIOS и нажатие клавиш Ctrl+Home
(восстановление BIOS)
D7 Управление передается интерфейсному модулю, распаковывающему код в область
Run-Time
D8 Выполняемый код распаковывается из flash-памяти в оперативную. Сохраняется
информация CPUID
D9 Распакованный код переносится из области временного хранения в сегменты
0E000h и 0F000h ОЗУ
DA Восстанавливаются регистры CPUID. Выполнение POST переносится в оперативную память
E1–E8, EC–EE Ошибки, связанные с конфигурацией системной памяти
03 Запрещается обработка NMI, ошибок четности, выдача сигналов на монитор.
Резервируется область для журнала событий GPNV, устанавливаются начальные
значения переменных из BIOS
04 Проверяется работоспособность батареи и подсчитывается контрольная сумма CMOS
05 Инициализируется контроллер прерываний и строится таблица векторов
06 Тестируется и готовится к работе таймер
08 Тестируется клавиатура (мигают индикаторы клавиатуры)
C0 Начальная инициализация процессора. Запрещается использовать кэш-память.
Определяется APIC
C1 Для многопроцессорных систем определяется процессор, отвечающий за запуск системы
C2 Завершается назначение процессора для запуска системы. Идентификация с
помощью CPUID
C5 Определяется количество процессоров, настраиваются их параметры
C6 Инициализируется кэш-память для более быстрого прохождения POST
C7 Завершается начальная инициализация процессора
0A Определяется контроллер клавиатуры
0B Поиск мыши, подключенной к порту PS/2
0C Проверяется наличие клавиатуры
0E Детектируются и инициализируются различные устройства ввода
13 Начальная инициализация регистров чипсета
24 Распаковываются и инициализируются модули BIOS, специфические для платформы.
Создается таблица векторов прерываний и инициализируется обработка прерываний
2A С помощью механизма DIM определяются устройства на локальных шинах. Готовится к
инициализации видеоадаптер, строится таблица распределения ресурсов
2C Обнаружение и инициализация видеоадаптера, видеоадаптер вызывается BIOS
2E Поиск и инициализация дополнительных устройств ввода/вывода
30 Готовится к обработке SMI
31 Инициализируется и активизируется модуль ADM
33 Инициализируется модуль упрощенной загрузки
37 Отображается логотип AMI, версия BIOS, процессора, подсказка клавиши для входа
в BIOS
38 С помощью DIM инициализируются различные устройства на локальных шинах
39 Инициализируется контроллер DMA
3A Устанавливается системное время в соответствии с показаниями часов RTC
3B Тестируется оперативная память и отображаются результаты
3C Настраиваются регистры чипсета
40 Инициализируются последовательные и параллельные порты, математический
сопроцессор и др.
52 По результатам теста памяти обновляются данные об ОЗУ в CMOS
60 По BIOS Setup устанавливается состояние NumLock и настраиваются параметры
автоповтора
75 Запускается процедура для работы с дисковыми устройствами (прерывание INT 13h)
78 Создается список устройств IPL (с которых возможна загрузка операционной системы)
7C Создаются и записываются в NVRAM таблицы расширенной системной конфигурации ESCD
84 Регистрация ошибок, обнаруженных при выполнении POST
85 Выводятся сообщения об обнаруженных некритических ошибках.
87 Если нужно, запускается BIOS Setup, которая предварительно распаковывается в ОЗУ
8C В соответствии с BIOS Setup настраиваются регистры чипсета
8D Строятся таблицы ACPI
8E Настраивается обслуживание немаскируемых прерываний (NMI)
90 Окончательно инициализируется SMI
A1 Очистка данных, которые не нужны при загрузке операционной системы
A2 Для взаимодействия с операционной системой готовятся модули EFI
A4 В соответствии с BIOS Setup инициализируется языковой модуль
A7 Выводится итоговая таблица процедуры POST
A8 Устанавливается состояние регистров MTRR
A9 Если нужно, выполняется ожидание ввода команд с клавиатуры
AA Удаляются векторы прерываний POST (INT 1Ch и INT 09h)
AB Определяются устройства для загрузки операционной системы
AC Завершающие этапы настройки чипсета в соответствии с BIOS Setup
B1 Настраивается интерфейс ACPI
00 Вызывается обработка прерывания INT 19h (поиск загрузочного сектора, загрузка ОС)

******************************************

PhoenixBIOS 4.0

02 Verify Real Mode
03 Disable Non-Maskable Interrupt (NMI)
04 Get CPU type
06 Initialize system hardware
08 Initialize chipset with initial POST values
09 Set IN POST flag
0A Initialize CPU registers
0B Enable CPU cache
0C Initialize caches to initial POST values
0E Initialize I/O component
0F Initialize the local bus IDE
10 Initialize Power Management
11 Load alternate registers with initial POST values
12 Restore CPU control word during warm boot
13 Initialize PCI Bus Mastering devices
14 Initialize keyboard controller
16 (1-2-2-3) BIOS ROM checksum
17 Initialize cache before memory autosize
18 8254 timer initialization
1A 8237 DMA controller initialization
1C Reset Programmable Interrupt Controller
20 (1-3-1-1) Test DRAM refresh
22 (1-3-1-3) Test 8742 Keyboard Controller
24 Set ES segment register to 4 GB
26 Enable A20 line
28 Autosize DRAM
29 Initialize POST Memory Manager
2A Clear 512 KB base RAM
2C (1-3-4-1) RAM failure on address line xxxx
2E (1-3-4-3) RAM failure on data bits xxxx of low byte of memory bus
2F Enable cache before system BIOS shadow
30 (1-4-1-1) RAM failure on data bits xxxx of high byte of memory bus
32 Test CPU bus-clock frequency
33 Initialize Phoenix Dispatch Manager
34 Disable Power Button during POST
35 Re-initialize registers
36 Warm start shut down
37 Re-initialize chipset
38 Shadow system BIOS ROM
39 Re-initialize cache
3A Autosize cache
3C Advanced configuration of chipset registers
3D Load alternate registers with CMOS values
40 CPU speed detection
42 Initialize interrupt vectors
45 POST device initialization
46 (2-1-2-3) Check ROM copyright notice
48 Check video configuration against CMOS
49 Initialize PCI bus and devices
4A Initialize all video adapters in system
4B QuietBoot start (optional)
4C Shadow video BIOS ROM
4E Display BIOS copyright notice
50 Display CPU type and speed
51 Initialize EISA board
52 Test keyboard Тестируется клавиатура
54 Set key click if enabled
55 Initialize USB bus
58 (2-2-3-1) Test for unexpected interrupts
59 Initialize POST display service
5A Display prompt “Press F2 to enter SETUP”
5B Disable CPU cache
5C Test RAM between 512 and 640 KB
60 Test extended memory
62 Test extended memory address lines
64 Jump to UserPatch1
66 Configure advanced cache registers
67 Initialize Multi Processor APIC
68 Enable external and CPU caches
69 Setup System Management Mode (SMM) area
6A Display external L2 cache size
6B Load custom defaults (optional)
6C Display shadow-area message
6E Display possible high address for UMB recovery
70 Display error messages Выводятся сообщения об ошибках
72 Check for configuration errors
76 Check for keyboard errors
7C Set up hardware interrupt vectors
7D Initialize hardware monitoring
7E Initialize coprocessor if present
80 Disable onboard Super I/O ports and IRQs
81 Late POST device initialization
82 Detect and install external RS232 ports
83 Configure non-MCD IDE controllers
84 Detect and install external parallel ports
85 Initialize PC-compatible PnP ISA devices
86 Re-initialize onboard I/O ports
87 Configure Motheboard Configurable Devices (optional)
88 Initialize BIOS Data Area
89 Enable Non-Maskable Interrupts (NMIs)
8A Initialize Extended BIOS Data Area
8B Test and initialize PS/2 mouse
8C Initialize floppy controller
8F Determine number of ATA drives (optional)
90 Initialize hard-disk controllers
91 Initialize local-bus harddisk controllers
92 Jump to UserPatch2
93 Build MPTABLE for multi-processor boards
95 Install CD ROM for boot
96 Clear huge ES segment register
97 Fixup Multi Processor table
98 (1-2) Search for option ROMs. One long, two short beeps on checksum failure
99 Check for SMART Drive (optional)
9A Shadow option ROMs
9C Set up Power Management
9D Initialize security engine (optional)
9E Enable hardware interrupts
9F Determine number of ATA and SCSI drives
A0 Set time of day
A2 Check key lock
A4 Initialize Typematic rate
A8 Erase F2 prompt
AA Scan for F2 key stroke
AC Enter SETUP
AE Clear Boot flag
B0 Check for errors
B2 POST done – prepare to boot operating system
B4 (1) One short beep before boot
B5 Terminate QuietBoot (optional)
B6 Check password (optional)
B9 Prepare Boot
BA Initialize DMI parameters
BB Initialize PnP Option ROMs
BC Clear parity checkers
BD Display MultiBoot menu
BE Clear screen (optional)
BF Check virus and backup reminders
C0 Try to boot with INT 19
C1 Initialize POST Error Manager (PEM)
C2 Initialize error logging
C3 Initialize error display function
C4 Initialize system error handler
C5 PnPnd dual CMOS (optional)
C6 Initialize notebook docking (optional)
C7 Initialize notebook docking late
D2 Unknown interrupt
E0 Initialize the chipset
E1 Initialize the bridge
E2 Initialize the CPU
E3 Initialize system timer
E4 Initialize system I/O
E5 Check force recovery boot
E6 Checksum BIOS ROM
E7 Go to BIOS
E8 Set Huge Segment
E9 Initialize Multi Processor
EA Initialize OEM special code
EB Initialize PIC and DMA
EC Initialize Memory type
ED Initialize Memory size
EE Shadow Boot Block
EF System memory test
F0 Initialize interrupt vectors
F1 Initialize Real Time Clock
F2 Initialize video
F3 Initialize System Management Mode
F4 (1) Output one beep before boot
F5 Boot to Mini DOS
F6 Clear Huge Segment
F7 Boot to Full DOS

Понравилась статья? Поделитесь с друзьями!