• Красная post карта коды ошибок на русском. Звуковые сигналы BIOS и коды ошибок BIOS

    Контрольные точки процедур 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К

    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.


    18.03.2019

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

    POST

    После нажатия кнопки включения компьютера BIOS проводит поэтапную проверку и инициализацию всех элементов аппаратной части компьютера. Называется этот процесс: POST (англ. Power-On Self-Test – самотестирование после включения). Не только компьютеры, но и большинство современных электронных устройств имеют схожие системы.

    BIOS сообщает статус (или результат) прохождения POST несколькими способами:

    1. Вывод сообщений на экран . Самый дружественный и информативный способ. По сути, доступен только после успешного или почти успешного прохождения самотестирования. Отсутствие какой-либо информации на экране говорит о серьезных неисправностях базовых компонентов (материнская плата, процессор, память, видеоадаптер и т.д.). Диагностика ошибок возможна в основном только для периферийных устройств (накопители, клава и др.).

    2. Звуковые сигналы . Наверное, все слышали короткий «биип» при включении компьютера – в большинстве BIOS это означает прохождение теста без ошибок и готовность к загрузке ОС. Другие варианты сигналов могут говорить об определенных проблемах с железом. Эти коды «азбуки Морзе» различаются у разных производителей и даже разных версий BIOS. Найти их обычно можно в книжке к материнке или соответствующих онлайн справочниках.

    3. POST коды . В ходе каждого этапа процесса самотестирования BIOS отправляет текущий код на порт 80h (иногда 81h или другие), и если возникает ошибка, там остается или код операции, на которой произошел сбой, или код последней успешной операции. Считав этот код, можно определить на каком этапе произошла ошибка, и что могло ее вызвать. Это единственный из всех перечисленных способов, который позволяет идентифицировать проблемы на материнской плате, которая не подает видимых признаков жизни. По этой причине, он обычно используется для диагностики и ремонта непосредственно материнских плат.

    Если первые два способа диагностики не требуют специального оборудования, разве что монитор и подключенный к материнской плате динамик (бывает, что его там нет), то для третьего способа вам понадобиться собственно POST карта.

    Где смотреть значения POST кодов и звуковых сигналов?

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

    1. Также рекомендую англоязычный ресурс PostCodeMaster – там собрано еще больше POST кодов и звуковых сигналов BIOS разных производителей (есть довольно редкие, плюс немного по конкретным материнкам, в том числе серверным).

    POST карты

    Основная задача любой POST карты – это считать и отобразить текущий POST код. Считать его можно несколькими способами: по шинам ISA, PCI, LPC или через LPT порт. Есть и другие, более экзотические варианты (о них чуть позже). Кроме, собственно, отображения кода, хорошие POST карты имеют дополнительные диагностические возможности (индикаторы, режимы тестирования, встречаются даже со встроенным видеоадаптером).

    Некоторые материнские платы (обычно Premium сегмента) имеют встроенный индикатор POST кодов.


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

    ISA

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


    Если вы не занимаетесь ремонтом 486, то иметь POST карту ISA совершенно не обязательно.

    PCI

    Следующей массовой компьютерной шиной стала PCI . Сейчас это самая распространенная шина для настольных компьютеров. Естественно, для нее есть и POST карты всех возможных форм, размеров и функций. Самую простейшую , с обычным сегментным индикатором, можно купить за 2-3 бакса на любом Ebay, Ali и им подобным.


    В принципе, такая карта со своей базовой задачей вполне справляется – POST код вы узнаете. Но для профессиональной работы этого мало. Полезно иметь индикаторы основных напряжений (обычно: +5, +3.3, +12, -12, +3.3 Standby) и индикаторы сигналов шины (из самых базовых: CLK, RST#, FRAME#, IRDY#). Важно иметь возможность переключения порта, на котором карта «слушает» коды POST (не только стандартный 80h). Бывают и другие «фишки», отсюда и такой «навороченный» вид у продвинутых карточек.


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

    Еще один удобный вариант – это выносной индикатор. Он позволяет со всеми удобствами производить диагностику материнских плат, не вынимая их из системника. С одной стороны, если дело дошло до POST карты, то скорей всего материнку все же придется извлечь для ремонта, но с другой стороны – не всегда, да и POST карты просто удобный способ общей диагностики. На фото Sintech ST8679 , китайская карточка с выносным многострочным LCD дисплеем.


    LPT

    Существуют POST карты для LPT порта – довольно простой и удобный способ диагностики для любого компьютера или ноутбука, имеющего этот самый LPT порт. Из-за технических особенностей, они не имеют возможностей, присущих картам для PCI , но это компенсируется простотой и доступностью. Требуют питание по USB (для этого и наличие порта на плате).


    Однако LPT изживает свой век, и на современных компьютерах их уже почти не встретишь, соответственно, доживают свои дни и эти карты.

    PCI-E

    Служивший нам верой и правдой много лет PCI , постепенно вытесняет более современная PCI- Express . Немалое количество современных материнских плат вообще не имеют слота PCI (хотя и могут иметь саму шину). Могу вас обрадовать – POST карты для PCI-E существуют . Например, американская компания Ultra-X предлагает такую (цены у них обычно дикие, но тут ни цен, ни даже информации), в интернет можно встретить фото инженерных PCI-E карточек от Gigabyte (по всей видимости, только для внутреннего использования).


    Есть и китайская версия PCI- E POST карты под названием KQCPET6-H . Производит ее китайская компания QiGuan Electronics , специализирующаяся на производстве разного рода диагностических карт (и довольно интересных). Их официальный сайт (www.qiguaninc.com), к сожалению, давно не обновлялся, и информации об этой карточке там нет, зато ее спокойно можно купить за 20 +/- баков на Ali.


    Но с PCI-E не все так просто. Во-первых, сама диагностика с помощью PCI-E на данный момент вещь мутная, хотя бы, из-за отсутствия адекватной информации. Во-вторых, с PCI-E все зависит от конкретного изготовителя – нет гарантии, что коды будут выводиться; если и выводятся, то нет гарантии, что по стандартному порту и в стандартном виде…

    Как же получить POST коды с платы без PCI, если нет под рукой PCI-E карты? Однозначный ответ на этот вопрос дать не получится. Если на вашей материнке есть встроенный индикатор – считайте, что вам крупно повезло. Можно использовать LPT , если он есть, конечно. Ну и последний вариант – использовать шину LP C , на некоторых материнских платах есть готовые коннекторы (LPC_DEBUG и т.п.). Даже если их нет, сама шина всегда присутствует, но придется «подпаиваться»…


    USB

    Одним из самых перспективных способов диагностики на сегодняшний день является USB . И главная тому причина – повсеместная распространенность этого интерфейса. Как мы уже выяснили, отсутствие того или иного разъема на материнской плате может стать преткновением для диагностики. И эту проблему как раз решает USB – парочку портов имеют буквально все компьютеры и ноутбуки, выпущенные за последние 15 лет.

    Для такой диагностики необходимо наличие в системе USB Debug Port – это своего рода расширение USB, позволяющее передавать диагностическую информацию. В USB 3.0 реализация Debug Port получилась сподручней (подробней о Debug Port можно прочитать по ссылке). Кроме передачи POST кодов, Debug Port позволяет производить полноценную отладку кода BIOS и UEFI .

    Было даже выпущено разными компаниями. NET20DC от Ajays (компания почти тут же обанкротилась, так как поставщики отказались поставлять им компоненты для сборки девайса). Insyde H 2 O DDT от Insyde Software (выпущен, вроде, в 2008 году, но информация об этом девайсе канула в лету даже на официальном сайте). Оба этих устройства скорее отладчики, хотя и имеют возможность захвата POST кодов.


    Наиболее продвинутым и полноценным средством диагностики является AMIDebug Rx от AMI : позволяет выводить POST коды с описанием, полноценно работает с UEFI, ведет лог процесса POST, можно подключать к ПК для настройки и считывания кодов, имеет функции отладчика. Самое интересно – выпущено это чудо еще в 2009 году! Понятное дело, что предназначен девайс для родного AMIBIOS , работает ли он с другими BIOS – мне неизвестно.


    За 6-7 лет с момента появления этих USB устройств, ни одно из них популярности не получило, купить сейчас можно только AMIDebug Rx, и то, только напрямую от производителя по индивидуальному запросу . Цена девайса не разглашается. Так что, повсеместного перехода на USB диагностику пока не ожидается.

    Диагностика ноутбуков

    С ноутбуками все немного сложней. Наиболее распространенные разъемы, которые можно использовать для диагностики – это mini PCI или Mini PCI-E (у более современных).


    Mini PCI-E (как и PCI-E) не обязан выводить POST коды, все зависит от того, заложил ли эту возможность производитель или нет.

    Опять же, есть вариант использования шины LPC . На материнских платах порта для подключения к этой шине вполне может не быть, поэтому придется напрямую подпаиваться к плате или контролеру.


    Отдельные производители имеют свои способы диагностики, тут уж действительно «кто во что горазд». К сожалению, эта информация обычно является достоянием лишь производителя и его внутренних сервисных центров, поэтому все существующие варианты POST карт в общем доступе вряд ли найдутся. Наиболее исчерпывающий комбайн «все в одном флаконе» для диагностики ноутбуков – это POST карта Sintech ST8675 , которую несложно найти у китайских продавцов за 20-30$ с доставкой.


    Из интересных решений, российская компания BVG-Group предлагает заглушку на VGA для ноутбуков Samsung, и карты в виде модуля памяти для ноутбуков ASUS. Это, наверное, наиболее «экзотические» варианты POST карт, что я знаю. Хотя овации скорее следует отдать производителям ноутбуков, придумавшим именно такой способ диагностики для своей продукции.


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

    PS

    Такое вот у POST карт интересное прошлое и насыщенное настоящее. Что их ждет в будущем? Поживем – увидим. Но реалии таковы, что в нынешнюю эпоху потребительства от девайсов зачастую избавляются раньше, чем они успевают сломаться. А если и ломаются, то оказываются в сервисных мастерских производителя, где уж явно должно быть подходящее диагностическое оборудование. Все это, на мой взгляд, и является основной причиной образовавшегося «POST вакуума».

    POST- коды Award BIOS Medallion V 6.0

    POST-код (hex) Выполненная проверка

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

    CF Раннее определение типа процессора. Запись результатов в CMOS. Функциональный тест чтения/записи CMOS.

    Если определение типа процессора или запись в CMOS закончились неудачей, устанавливается фатальная ошибка операции и выполнение POST останавливается

    C0 Предварительная инициализация чипсета.

    Запрет областей теневого ОЗУ, отключение кэша L2. Очистка кэша L1.

    Программирование следующих базовых регистров чипсета.

    • Контроллеров прерываний: прием по фронту IRQ, Master Controller — IRQ 00h=INT 8...IRQ 7=INT 0Fh, Slave Controller — IRQ 8= INT 70h...IRQ 15=INT 77h.
    • Контроллеров ПДП.
    • Интервального таймера: Counter 0 — режим деления частоты на 65 536 (18,2 Гц) для генерации запросов IRQ 0 системных часов. Counter 1 — выработка импульсов для регенерации DRAM (128 циклов выполняется за 2 мс или интервал между регенерацией двух строк составляет около 15 мкс). Counter 2 — используется для озвучивания системного динамика.
    • RTC инициализируется в том случае, если произошел сбой питания от аккумулятора. Если сбоя Vcc (bat) не было, то инициализируются только регистры, отвечающие за взаимодействие RTC и процессора, но не часы

    Проверка типа, объема, старшего адреса и ECC ОЗУ. Проверка первых 256 Кбайт ОЗУ.

    Организация в этой области транзитного буфера, в который из Flash BIOS

    копируется Boot Block для проверки контрольных сумм

    Проверка контрольной суммы BIOS и наличия метки BBSS. Если проверки некорректны,

    принимается решение о частичном повреждении ИМС Flash BIOS. Если проверки

    корректны, то в буфер копируется программа распаковки системной BIOS

    Распаковка системной BIOS в ОЗУ, копирование в ОЗУ факультативной системы

    BIOS. Подготовка к затенению BIOS

    Копирование выполняемого кода POST в область E000h-F000h теневого ОЗУ.

    Передача управления модулю Boot Block.

    Начало выполнения POST из теневого ОЗУ.

    Проверка целостности структуры BIOS. Если контрольные суммы проверки служебных полей BIOS совпадают, выполнение проверки ОЗУ продолжается, в противном случае управление передается программам восстановления BIOS

    Выполнение POST в теневом ОЗУ (Shadow RAM )

    1 По физическому адресу 1000:0000h распаковывается модуль BIOS — программа XGROUP, позволяющая установить все ресурсы системной платы, включая системный таймер, контроллеры прерываний и ПДП, математический сопроцессор и видеоконтроллер по умолчанию

    3 Выполнение ранней инициализации чипа Super I/O, первый этап был выполнен на шагах алгоритма CFh и C0h

    5 Установка начальных атрибутов видеосистемы.

    Проверка флага состояния CMOS, его содержимое обнуляется

    7 Сброс входного и выходного буферов контроллера клавиатуры (совместимого с ИМС 8042 или 8742). Контроллер входит в состав чипа Super I/O системной

    платы. Самотестирование, инициализация контроллера клавиатуры. Разрешается подключение интерфейса клавиатуры

    Запрет подключения интерфейса компьютерной мыши PS/2.

    Определяется тип интерфейса клавиатуры (PS/2 или AT/DIN). Программируется

    контроллер клавиатуры. Разрешается использование клавиатуры

    Интерфейс PS/2-мыши еще запрещен.

    Для некоторых систем — определение портов, к которым подключены PS/2-клавиатура

    и мышь, что может вызвать переназначение портов

    Проверка теневого сегмента F000h циклами чтения и записи. Данная область

    будет использоваться для DMI и ESCD. Если проверка некорректна, то

    вырабатывается звуковой сигнал и код ошибки EFh выводится в порт 0080h

    Если записанные и считанные данные из сегмента F000h не совпадают,

    констатируется ошибка и выполнение POST останавливается

    10 Определение типа установленной Flash BIOS. Проверка позволяет выбрать для BIOS соответствующую программу записи, с помощью которой загружается специальная команда Read Intelligent Identifier. Команда используется также процедурами модификации блоков ESCD и DMI, которые могут быть перезаписаны как при загрузке, так и после нее — при обращении приложений к функциям Plug and Play или DMI.

    Код BIOS, выполняемый в рабочем сеансе, будет декодирован и переписан в область Run-time area (F000h).

    Программирование регистров чипсета

    12 Выполнение цепочки тестов CMOS. В часах RTC устанавливается режим питания. Ячейки CMOS используются в дальнейшем для хранения промежуточных результатов в ходе процедуры инициализации. В частности, в ячейки загружаются значения по умолчанию

    14 Выполнение ранней инициализации чипсета. На первом этапе программируются ресурсы, недоступные разработчику системной платы. На втором этапе в регистры чипсета загружаются значения, изменяемые с помощью утилиты MODBIN. Становится возможной тонкая настройка ОЗУ и устройств PCI

    16 Ранняя инициализация системного тактового генератора — установка значений по умолчанию

    18 Определение параметров процессора: компании производителя, семейства, поколения, определение вида и объема кэша L1 и L2, типа SMI. Выполнение функции команды CPUID (коды и архитектура процессоров различных производителей отличаются).

    Проверка регистров процессора, измерение тактовой частоты ядра процессора. После выполнения функции результат размещается в 128-разрядном слове, образованном ячейками регистров центрального процессора — EAX+EBX+ECX+EDX. Для расшифровки значения используемого кэша код сдвигается и перемещается в регистр AL

    Инициализация таблицы векторов прерываний (объем 1 024 байта, 256 типов

    прерываний). На данном этапе устанавливаются типы для 32 векторов (INT 00h-

    INT 1Fh), указывающих на процедуры BIOS.

    Выполнение проверок, направленных на обеспечение требований Y2K

    Проверка контрольной суммы CMOS и соответствия напряжения питания

    аккумулятора номиналу. Если выявлены ошибки — устанавливаются значения по

    умолчанию, задаваемые производителем системной платы

    На данном этапе прием скан-кодов с клавиатуры и их обработка контроллером 8742 и процессором невозможны, поскольку запрещены прерывания, не подготовлена область данных BIOS, а клавиатура не инициализирована. Настройки Setup BIOS не должны противоречить выполнению последовательности POST

    21 Инициализация системы Hardware Power Management для ноутбуков.

    Формирование таблицы физических параметров, структуры для обслуживания автономного аккумуляторного питания, функций энергосбережения при работе жестких дисков, а также операций сохранения образа ОЗУ на диске

    23 Обнаружение математического сопроцессора.

    Проверка количества цилиндров — 40 или 80, а также типа установленного флоппи-диска.

    Выполнение ранней инициализации чипсета.

    Подготовка карты ресурсов BIOS, предназначенной для дальнейшей инсталляции устройств Plug and Play, а также УВВ на шине PCI

    24 В процессорах поколений Intel P6 и P7 предусмотрена возможность организации доступа к памяти микропрограмм, в которой содержатся алгоритмы выполнения каждой машинной команды. На данном этапе в микрокод микропрограмм могут быть внесены изменения, позволяющие модернизировать алгоритмы или ввести новые микрокоды, предназначенные для новых машинных команд. Процедура обновления микрокода выполняется следующим образом.

    • С помощью команды CPUID идентифицируется процессор и определяются его параметры — тип (Type), семейство (Family), модель (Model) и коэффициент умножения частоты (Stepping).
    • Из модуля обновления микрокода, хранимого в BIOS, считывается нужный блок объемом 2 048 байт и распаковывается не в ОЗУ, а в SM RAM.
    • Обновляется микрокод процессора.

    Для некоторых процессоров Intel выполняется дополнительная идентификация. Обновляется карта распределения ресурсов

    Инициализируются устройства Plug and Play. Информация о ресурсах, затребованных устройствами Plug and Play, обновляется на основании сканирования данных из CMOS, расширений BIOS, расположенных на шинах расширения УВВ, а также информации, хранящейся в блоке данных ESCD. Запись данных в ESCD откладывается на финальную стадию выполнения POST

    25 Ранняя инициализация PCI. Перечисление устройств на шине. Назначение ресурсов ОЗУ и УВВ.

    Поиск устройства видеосистемы, расширения BIOS и запись информации в область C000:0h (сегментный адрес в регистре CS:адрес смещения в регистре IP)

    26 Настройка логики, обслуживающей линии Vendor Identification.

    Завершение инициализации системного тактового генератора. Отключение синхронизации неиспользуемых слотов DIMM и PCI.

    Инициализация системы мониторинга напряжений и температур, выполняемая в соответствии с типом системной платы

    На данном этапе прием скан-кодов с клавиатуры и их обработка контроллером 8742 и процессором невозможны, поскольку запрещены прерывания, не подготовлена область данных BIOS, а клавиатура не инициализирована. Настройки Setup BIOS не должны противоречить выполнению последовательности POST

    27 Разрешение прерывания INT 09h. Повторная инициализация контроллера клавиатуры на основе новых данных (таблицы векторов прерываний, инициализации чипсета).

    Для BIOS формируется 16-символьный буфер ввода и устанавливается область памяти для полноценного функционирования

    29 Программирование регистров MTRR процессора поколения Р6, а также инициализация контроллера APIC процессоров Pentium.

    Программирование чипсета (например, контроллера IDE) в соответствии

    с установками в CMOS.

    Измерение внутренней частоты процессора.

    Вызов расширения BIOS видеосистемы

    Инициализация модуля многоязычности.

    Посылка данных для отображения на экране дисплея (заставка Award, тип

    процессора и его скорость)

    Программирование чипа Super I/O

    Проверка битов маскирования канала 1 контроллера прерываний (совместимого

    40 Проверка битов маскирования канала 2 контроллера прерываний (совместимого с ИМС 8259)

    Проверка функционирования контроллера прерываний (совместимого с ИМС 8259)

    Подсчет общей памяти проверкой каждого двойного слова в каждой странице 64 Кбайт.

    Запись программы, предназначенной для проверки процессоров семейства AMD

    Программирование регистров MTRR процессора семейства Syrix. Инициализация

    кэша L2 процессоров поколения P6, а также инициализация APIC для P6

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

    Проверка всей памяти, очистка расширенной памяти

    55 Для многопроцессорной платформы выполняется отображение числа процессоров

    57 Отображение экрана логотипа Plug and Play. Ранняя инициализация устройств Plug and Play

    59 Активизация ресурса антивирусной защиты — интегрированного антивирусного средства Trend Anti-Virus

    60 Этап, позволяющий загрузить программу Setup.

    До этой стадии POST вы должны успеть нажать соответствующую клавишу

    65 Инициализация компьютерной мыши PS/2

    67 Подготовка информации для адресного пространства, предназначенного для функции вызова: INT 15h (содержимое регистра AX=E820h)

    На данном этапе прием скан-кодов с клавиатуры и их обработка контроллером 8742 и процессором невозможны, поскольку запрещены прерывания, не подготовлена область данных BIOS, а клавиатура не инициализирована. Настройки Setup BIOS не должны противоречить выполнению последовательности POST

    Включение кэша L2

    Программирование регистров чипсета в соответствии с элементами, описанными

    в Setup и в таблице автоконфигурирования

    Назначение ресурсов для всех устройств Plug and Play.

    Автоматическое распределение COM-портов для интегрированных устройств

    в том случае, если установлена опция Setup “AUTO”

    Инициализация контроллера флоппи-дисков.

    Дополнительная настройка регистров флоппи-диска

    73 Факультативная функция ввода утилиты обновления BIOS AWDFLASH.EXE, если она находится на флоппи-диске и выбрана комбинация клавиш

    75 Обнаружение и инсталляция всех IDE-устройств: жестких дисков, LS-120, ZIP, CD-R/RW, DVD и т.д.

    Если обнаружена ошибка, выводится соответствующее сообщение, и программа ожидает нажатия клавиши.

    Если ошибка не обнаружена или нажата клавиша , выполнение POST продолжается.

    Очистка заставки с логотипом EPA или производителя

    82 В зависимости от типа чипсета и системной платы в ОЗУ выделяется область для управления питанием.

    В таблицу ESCD вносятся последние изменения, связанные с управлением питанием.

    После снятия заставки с логотипом EPA видеорежим восстанавливается. Запрос пароля, если таковой предусмотрен установками CMOS

    83 Восстановление данных из стека временного хранения в CMOS

    84 Вывод на экран сообщения “Initializing Plugand Play Cards...” об обнаруженных ранее устройствах Plug and Play и параметрах

    85 Завершение инициализации USB.

    Определение порядка загрузки с жестких дисков SCSI

    87 Переключение видеосистемы на текстовый режим работы.

    Построение таблиц SYSID в области DNI согласно спецификации “System Management BIOS”.

    Для обслуживания сетевых устройств создается идентификатор UUID (Universal Unique ID), а также идентификатор для загрузки с устройств Fire Wire IEEE 1394

    На данном этапе все основные процедуры инициализации завершены. Выполняется подготовка к загрузке операционной системы, составляются необходимые для этого таблицы, формируются массивы, структуры

    89 Если программой Setup предусмотрено использование протокола ACPI, в верхнюю область адресного пространства 4 Гбайт вставляются соответствующие таблицы

    Сканирование в пространстве PCI расширений BIOS, предназначенных для

    реализации протокола AOL (Alert On LAN). Инициализация средств AOL

    Разрешение использования логических средств поддержки немаскированного

    прерывания NMI.

    Разрешение использования контроля четности модулей ОЗУ

    Для горячего подключения мыши PS/2 разрешается линия IRQ 12.

    Обслуживание линии IRQ 11, нормализация параметров шумовых помех линий

    запросов прерываний

    91 Подготовка условий для обслуживания жестких дисков в режиме Power Management. Операции подобного типа (Suspend to RAM) могут быть реализованы в рабочем сеансе операционной системы.

    Установка переменных BIOS, хранящих базовые адреса последовательных и параллельных портов, которые располагают программами расширения BIOS

    93 Подготовка к сохранению информации о разделах загрузочных устройств

    94 Если Setup предусмотрена, включается кэш L2. Программируется параметр Boot Up Speed.

    Завершение инициализации чипсета и системы управления питанием.

    Снятие стартовой заставки BIOS, на экран монитора выводится таблица распределения ресурсов.

    Настройка регистров процессоров семейства AMD K6. Завершающее обновление регистров процессоров семейства Intel P6.

    Окончательная инициализация подсистемы удаленной загрузки Remote Pre Boot

    95 Установка режима автоматического перехода на зимнее/летнее время Daylight Saving.

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

    Чтение идентификатора клавиатуры KBD ID.

    Для 101-кнопочной клавиатуры устанавливается флаг NumLock в соответствии с информацией CMOS

    96 Сохранение информации о разделах загрузочных устройств.

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

    Настройка регистров процессоров семейства Cyrix.

    Заполнение и корректировка таблицы ESCD в соответствии с состоянием системы Power Management устройств Plug and Play и ATAPI.

    Корректировка CMOS в соответствии с требованиями протокола Y2K.

    Установка счетчика системных часов DOS Time в соответствии с показаниями RTC CMOS. Значение времени из формата “часы:минуты:секунды” пересчитывается

    в такты (временные интервалы следования импульсов) интервального таймера 18,2 Гц и записывается в область переменных BIOS — DOS Time.

    На данном этапе все основные процедуры инициализации завершены. Выполняется подготовка к загрузке операционной системы, составляются необходимые для этого таблицы, формируются массивы, структуры

    Сохранение разделов устройств загрузки для дальнейшего использования интегрированными антивирусными средствами Trend Anti-Virus и Paragon Anti-Virus Protection.

    Разрешение использования кэша L1.

    На динамик системного блока генерируется звуковой сигнал окончания POST. Построение и сохранение таблицы MSIRQ.

    Выполнение подготовки к загрузке операционной системы

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

    Вызванная подпрограмма позволяет (в соответствии с опцией меню BIOS Features Set Up программы Setup) опросить загрузочные устройства для поиска сектора загрузки. Для загрузки информация из сектора Цилиндр: 0, Головка: 0, Сектор:

    1 считывается по адресу 07C0:0000h, после чего управление командой FAR JMP передается на начало этого блока

    Выполнение программы, записанной в загрузочном секторе

    ПРИМЕЧАНИЕ.

    ECC (Error Correcting Code) — код коррекции ошибок применяется в модулях ОЗУ, способствуя повышению отказоустойчивости ПК. ECC позволяют исправить ошибку в одном разряде и обнаружить в двух разрядах. Поэтому компьютер, в памяти которого используются подобные коды, в случае ошибки в одном разряде может работать без прерывания, причем данные не будут искажены

    BBSS (Boot Block Specification Signature) — метка сигнатуры спецификации загрузочного блока.

    SMI (System Management Interrupt) — аппаратное обеспечение, интегрированное в процессор, предназначенное для управления потребляемой мощностью. Для обслуживания этих компонентов используется высокоприоритетное прерывание.

    Y2K требования, предъявляемые к коммерческим продуктам компьютерных систем для обеспечения функциональной совместимости, функциональности и прочих параметров, имевших место до и после 2000 года.

    DMI (Desktop Management Interface) — протокол, позволяющий обеспечить взаимодействие программных средств с компонентами системных плат.

    MTRR (Memory Type Range Registers) — регистры процессоров поколений P6 и P7, в которые заносятся данные, описывающие свойства областей памяти и определяющие тип кэши-рования памяти.

    APIC ( Advanced Programmable Interruption Controller) — усовершенствованный программируемый контроллер прерываний , входящий в состав чипсета. Процессор поколения P6 также располагает подобным контроллером для мультипроцессорного применения.

    MSIRQ (Microsoft IRQ Routing Map) — таблица карты распределения прерываний , стандартизирована Microsoft.

    SM RAM (System Management RAM) — одно из названий оперативной регистровой памяти небольшой емкости, предусмотренной в архитектуре процессоров, начиная с Pentium Pro и выше, предназначенной для хранения служебных данных.

    В случае неадекватного завершения каждого из процессов алгоритм переходит на обра ботку особого случая, и POST BIOS Medallion генерирует коды, отмеченные ниже:

    POST- коды особых случаев Award BIOS V 6.0 Medallion

    Код системных событий (System Events codes)

    Код, активизируемый при обслуживании компонентов APM или ACPI (Power Management Debug codes)

    Энергосбережение с отключением напряжения питания +12 В

    Переход в режим работы с минимальным энергопотреблением

    Прерывание для выхода из режима энергосбережения по событию

    Переход процессора в режим энергосбережения путем снижения его тактовой

    Переход в режим частичного энергосбережения с использованием технологии ACPI

    Использование компонента SMI для перехода в режим энергосбережения

    Переход процессора в режим энергосбережения с использованием технологии APM

    Переход системы в режим энергосбережения с использованием технологии APM

    Перевод системы в режим полного энергосбережения

    Сообщение о фатальных ошибках выполнения операций (System Error codes)

    Ошибка обработки кода ECC

    Ошибка жесткого диска при возврате из режима энергосбережения

    Несовпадение данных при записи в сегмент F000h и считывании из него

    Для сокращения времени прохождения тестовой программы POST Award BIOS вы можете воспользоваться опцией Quick Power On Self Test, которую можно обнаружить в программе Setup. В этом случае запускается модифицированная версия теста Award Software, которая, в отличие от полной версии программы, выполняется быстро.

    Коды контрольных точек POST AMI BIOS 8 V1.4

    Представление о дисплее кодов контрольных точек

    Для отображения контрольных точек POST AMI BIOS применяются диагностические платы POST Diagnostic Card, индикаторы на системных платах, а также дисплеи контроль ных точек AMI BIOS Checkpoint Display .

    Дисплей представляет собой строку кода в нижнем правом углу экрана монитора, отобра жаемую во время прохождения POST

    Недостаток использования дисплея кодов контрольных точек состоит в невозможности при-менения этого метода при отключенной видеосистеме.

    Назначение диспетчера инициализации устройст

    В различные периоды тестирования POST управление передается специальной про грамме диспетчеру инициализации устройств DIM (Device Initialization Manager).

    Эта программа получает управление от BIOS в том случае, если необходимо проверить сис темные или локальные шины компьютера. Существует несколько контрольных точек POST, предназначенных для запуска этой программы.

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

    38h инициализация устройств IPL.

    39h индикация ошибок при инициализации шин.

    95h инициализация шин, управляемых расширениями BIOS.

    DEh — ошибка конфигурации ОЗУ.

    DFh — ошибка конфигурации ОЗУ.

    Сообщения, генерируемые DIM, также выводятся в диагностический порт 80h и хранятся в информационном слове в процессе выполнения проверки.

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

    Поля старшей тетрады.

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

    Инициализация статических устройств на интересующих шинах.

    Инициализация устройств вывода информации на интересующих шинах.

    Инициализация устройств ввода информации на интересующих шинах.

    Инициализация устройств системной загрузки (IPL) на интересующих шинах.

    Инициализация устройств общего назначения на интересующих шинах.

    Сообщение об ошибках для интересующих шин.

    Инициализация устройств, управляемых расширениями BIOS (для всех шин).

    Инициализация загрузочных расширений BIOS, соответствующих BIOS Boot Specification (для всех шин).

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

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

    Шины подключения интегрированных системных устройств.

    Шина ISA Plug and Play.

    Шина PCMCIA.

    В том случае, если обнаружена ошибка конфигурации ОЗУ, в диагностический порт вы водится циклическая последовательность кодов DEh, DFh и контрольных точек конфигура ции, которые могут принимать следующие значения.

    00 ОЗУ не обнаружено.

    01 установлены модули DIMM различных типов.

    02 чтение из узла SPD (Serial Presence Detect) модуля DIMM произведено неудачно.

    03 модуль DIMM не может быть использован на данной частоте.

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

    05 ошибка в младшей странице памяти.

    POST-карта или POST-тестер это PCI плата расширения, имеющая цифровой индикатор, который выводит коды инициализации мат.платы. По данному коду можно найти, в каком из компонентов платы имеется неисправность. Коды часто зависят от производителя BIOS. Если ошибки отсутствуют и тест проходит успешно, то POST выдаёт код не меняющийся значение, к примеру на большинстве мат.плат по
    завершении инициализации выводится код «FF». Также часто на тестерах установлены светодиоды отображающие напряжения +5 +3,3 +12, −12.

    Вашему вниманию коды ошибок, подходящие на самые версии BIOS:

    POST-код Описание
    D0 Предварительная инициализация чипсета материнской платы и процессора. Проверка контрольной суммы BIOS. Запрет немаскируемого прерывания NMI. Выполняется проверка контроллера Super I/O, проверка CMOS.
    D1 Контроллером клавиатуры выполняется процесс само-тестирования (BAT-тест). Выполняется начальная инициализация портов ввода-вывода. Инициализация контроллера DMA.
    D2 Запрещение использования кэш-памяти. Выполняется процедура определения объема установленной оперативной памяти.
    D3 Проверяется формирование запросов на регенерацию динамической оперативной памяти. Разрешение использования кэш-памяти.
    D4 Тестирование 512 Кбайт памяти. Выполняется установка адреса стека, настраивается кэш-память.
    D5 Код системной БИОС распаковывается и перезаписывается в Shadow RAM (затененную память).
    D6 Производится вычисление контрольной суммы БИОС и проверка нажатия комбинации клавиш Ctrl+Home. Если хотя бы одно из этих условий выполняется, запускается процедура восстановления BIOS.
    D7 В случае успешной проверки контрольных сумм BIOS управление передается модулю InterfaceModule, который выполняет распаковку исполняемого кода в Run-Time области.
    D8 Выполняется распаковка Run-Time-кода из флеш-памяти в ОЗУ. Информация CPUID сохраняется в ОЗУ.
    D9 Распакованный Run-Time-код переносится из области временного хранения в оперативную память. Управление передается распакованному модулю.
    DA Выполняется восстановление регистров CPUID. Выполняется процедура POST.
    E0 Инициализация регистров контроллера флоппи-дисковода. Выполняется инициализация контроллера прерываний и установка векторов прерываний. Включение кэш-памяти первого уровня.
    E9 Настройка регистров флоппи-дисковода.
    EA Выполняется проверка операции чтения с ATAPI CD-ROM и дисковой памяти.
    EB Возврат на контрольную точку E9 в случае возникновения ошибок при операциях с ATAPI CD-ROM.
    EF Возврат на контрольную точку EB в случае возникновения ошибок при операциях с дисками.
    F0 Выполняется поиск файла восстановления с именем AMIBOOT.ROM.
    F1 В точку F1 выполняется переход в том случае, если файл восстановления не найден.
    F5 Отключение кэш-памяти первого уровня.
    FB Определение типа FlashROM. Поиск во FlashROM раздела для хранения настроек чипсета.
    F4 В точку F4 выполняется переход в том случае, если файла восстановления с именем AMIBOOT.ROM имеет некорректный размер.
    FC Обнуление основного блока Flash BIOS.
    FD Выполняется программирование основного блока Flash BIOS.
    FF В точку FF выполняется переход в том случае, если программирование Flash BIOS успешно завершено. Запрещается запись у FlashROM. Выполняется отключение оборудования ATAPI. Восстанавливается значение CPUID.
    03 Запрещается обработка немаскируемого прерывания (NMI), проверка ошибок четности оперативной памяти. Выполняется инициализация области данных текущего выполнения BIOS и процедуры POST.
    04 Проверка контрольной суммы CMOS и напряжения питания аккумулятора.
    05 Выполняется инициализация контроллера прерываний и формирование таблицы векторов прерываний.
    06 Подготовка к работе интервального таймера.
    08 Контроллером клавиатуры выполняется процесс само-тестирования (BAT-тест). Инициализация ЦП.
    C0 Запрещение использования кэш-памяти. Инициализация контроллера APIC. Подготовка процессора к работе.
    С1 Настройка параметров работы процессора.
    C2 Идентификация процессора с помощью команды CPUID.
    C5 Определение количества процессоров и настройка их параметров.
    C6 Инициализация кэш-памяти процессора.
    С7 Завершение процесса начальной инициализации центрального процессора.
    0A Инициализация контроллера клавиатуры.
    0B Выполняется поиск мыши, подключенной с помощью интерфейса PS/2.
    0C Выполняется поиск клавиатуры.
    0E Поиск и инициализация устройств ввода-вывода. Захват прерывания INT 09h. Вывод на экран логотипа БИОС.
    13 Выполняется начальная инициализация регистров чипсета.
    24 Выполняется распаковка и инициализация модулей BIOS. Подготовка к инициализации таблицы векторов прерываний.
    25 Завершение инициализации таблицы векторов прерываний.
    2A Выполняется инициализация устройств на локальных шинах (с помощью механизма DIM-Device Initialization Manager). Подготовка к инициализации видеоадаптера.
    Поиск и инициализация видеокарты.
    2E Выполняется поиск и инициализация дополнительных устройств ввода-вывода.
    30 Выполняется инициализация компонента SMI (System Management Interrupt).
    31 Распаковка модуля ADM. Инициализация и активизация ADM.
    33 Инициализация модуля загрузчика.
    37 Вывод на экран монитора логотип AMI, информация о версии БИОС, информации о типе процессора и его скорости. Отображение на мониторе названия клавиши, которую можно использовать для входа в Bios Setup.
    38 Выполняется инициализация устройств на локальных шинах (с помощью механизма DIM-Device Initialization Manager).
    39 Выполняется инициализация контроллера DMA.
    3A Установка системного времени в соответствии с показаниями часов реального времени (RTC).
    3B Выполняется тестирование оперативной памяти с последующим отображением на мониторе результатов теста.
    3C Настройка регистров чипсета.
    40 Выполняется инициализация математического сопроцессора, параллельных и последовательных портов.
    50 Выполняется корректировка модулей управления памяти.
    52 Выполняется корректировка информации в CMOS об объеме оперативной памяти (согласно результатам теста оперативной памяти).
    60 Программирование контроллера клавиатуры на частоту авто-повтора и время ожидания до входа в режим авто-повтора согласно настройкам BIOS Setup. Установка состояния индикатора Numlock согласно настройкам BIOS Setup.
    75 Выполняется инициализация прерывания INT 13h, которое используется для работы с дисковыми устройствами.
    78 Создается список устройств, с которых можно выполнить загрузку ОС.
    7A Выполняется инициализация остальных расширений БИОС.
    7C Создание и сохранение таблицы ESCD.
    84 Выполняется составление отчета об ошибках, которые были обнаружены во время прохождения процедуры POST.
    85 Вывод на монитор информации об ошибках, обнаруженных во время прохождения процедуры POST.
    87 На данном этапе имеется возможность войти в программу BIOS Setup.
    8C Настройка регистров чипсета.
    8D Выполняется построение таблицы ACPI.
    8E Обслуживание NMI-прерываний. Настройка параметров периферийных устройств.
    90 Выполняется завершающая инициализация SMI
    A0 Запрос пароля на загрузку (если в настройках BIOS Setup это предусмотрено).
    A1 Выполняется очистка данных, которые не требуются для загрузки ОС.
    A2 Подготовка модулей EFI.
    A4 Выполняется инициализация языкового модуля.
    A7 Вывод на монитор таблицы итоговых результатов прохождения процедуры POST.
    A8 Программирование регистров MTRR (Memory Type Range Register).
    A9 Ожидание ввода команд с клавиатуры.
    AA Сброс прерываний INT 1C, INT 09. Отключение модуля обслуживания процедур (ADM).
    AB Определение устройств, с которых можно выполнить загрузку ОС.
    AC Завершающий этап инициализации регистров чипсета в соответствии с параметрами BIOS Setup
    B1 Выполняется настройка интерфейса ACPI.
    00 Выполнение прерывания BIOS INT 19h. Управление процессом загрузки передается загрузчику операционной системы. Начинается загрузка ОС.