Статьи » Расшифровка кодов ошибок POST (ПОСТ) карты
Расшифровка кодов ошибок POST (ПОСТ) карты
Award BIOS 6.0: полная загрузка
Данная таблица содержит 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. Поиск загрузчика в первом секторе загрузочного устройства
Award BIOS 6.0: сокращенная загрузка
Сокращенная процедура выполняется при установке в 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 и запускается операционная система
- FF Загрузка операционной системы
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
Облако тегов
Описание:
Предлагаю Вашему вниманию основные 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-кодов.
AWARD BIOS6.0 Полная загрузка
Данная таблица содержит 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. Поиск загрузчика в первом секторе загрузочного устройства
Award BIOS 6.0: сокращенная загрузка
Сокращенная процедура выполняется при установке в 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 и запускается операционная система
- FF Загрузка операционной системы
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 остановилась на одном из предыдущих этапов, то увидеть на каком именно не представляется возможным.
Дополнительно скачать Коды и диагностические сообщения POST BIOS
https://yadi.sk/i/fxlyzaLPeKXRL
Фото:
Находится в: Радиолюбитель
Порт 80-е коды POST [post-code] для системных плат для настольных ПК
В этом документе определены звуковые сигналы, сообщения об ошибках и POST-коды (post-code), относящиеся к некоторым версиям BIOS на базе интерфейса EFI (Extensible Framework Interface).
Звуковые сигналы
Сообщения об ошибках, выдаваемые BIOS
POST-коды порта 80h
Отображение POST-кодов
Диапазоны POST-кодов
POST-коды
Последовательность типовых POST-кодовЗвуковые сигналы
Встроенный динамик выдает звуковые коды ошибок во время процедуры POST.Не все системные платы для настольных ПК содержат встроенный динамик, поэтому необходимо подключить так называемую пищалку.
Напечатайте | Образец | Frequency |
Ошибка памяти | Три длинных сигнала | 1,280 Гц |
Предупреждение системы охлаждения | Четыре перемежающихся сисгнала: Высокий тон, низкий тон, высокий тон, низкий тон |
Высокий тон: 2,000 Гц Низкий тон: 1,600 Гц |
Сообщения об ошибках, выдаваемые BIOS
Сообщение об ошибке | Описание |
Обнаружен процессор, который не предназначен для использования с данной системной платой. Использование неподдерживаемых процессоров может привести к неправильной работе, повреждению системной платы для настольных ПК или процессора, или сокращению срока эксплуатации. Система отключится через 10 секунд. | Установленный процессор не совмести с системной платой для настольных ПК. |
CMOS Battery Low | Возможна, разрядка батареи. Замените батарею. |
CMOS Checksum Bad | Ошибка проверки контрольной суммы ОЗУ. Возможно, память CMOS повреждена. Запустите программу BIOS Setup для обновления значений. |
Memory Size Decreased | Объем памяти уменьшился со времени последней загрузки. Если модули памяти не были удалены, возможно, память неисправна. |
No «Boot» Device Available | Система не нашла загрузочного устройства. |
POST-коды порта 80h
Во время теста POST BIOS генерирует коды прохождения (POST-коды [post-code]) и направляет их в порт ввода/вывода 80h. Если процедура POST завершилась неудачно, последний сгенерированный POST-код остается в порту 80h. Этот код можно использовать для определения причины ошибки.
Отображение POST-кодов
Для отображения POST-кодов можно использовать один из следующих методов.
Диапазоны POST-кодов порта 80h
В таблицах ниже все POST-коды и значения представлены в шестнадцатеричном формате.
Диапазон | Категория/Подсистема |
00 – 0F | Коды отладки: Могут использоваться, как средство для отладки любым модулем PEIM/драйвером |
10 – 1F | Процессоры системы |
20 – 2F | Память/набор микросхем |
30 – 3F | Восстановление |
40 – 4F | Зарезервировано для использования |
50 – 5F | Шины ввода/вывода: PCI, USB, ISA, ATA и т.д. |
60 – 6F | Сейчас не используется |
70 – 7F | Устройства вывода: Все консоли вывода |
80 – 8F | Зарезервировано для будущего использования (для новых кодов консоли вывода) |
90 – 9F | Устройства ввода: Клавиатура/Мышь |
A0 – AF | Зарезервировано для будущего использования (для новых кодов консоли ввода) |
B0 – BF | Загрузочные устройства: Включают в себя стационарные и съемные носители. |
C0 – CF | Зарезервировано для использования |
D0 – DF | Выбор загрузочного устройства |
E0 – FF | E0 – EE: Другие коды F0 – FF: FF — ошибка прерывания процессора |
POST-коды порта 80h
Код POST | Описание эксплуатации POST |
00 — 0F | Коды отладки: может использоваться, как средство для отладки любым модулем PEIM/диском |
10 — 1F | Процессор системы |
10 | Включение процессора системы (загрузочный процессор) |
11 | Инициализация кэш-памяти процессора (включая SP) |
12 | Начало инициализации приложений процессора |
13 | Инициализация SMM |
14 | Инициализация сетевого подключения |
15 | Преждевременный выход при инициализации драйвера платформы |
16 | Инициализация драйвера SMBUS |
17 | Вход в исполнимый код SMBUS в режиме чтения/записи |
19 | Вход в режим программирования тактового генератора CK505 |
1F | Невосстановимая ошибка процессора |
20 — 2F | Память/набор микросхем |
21 | Инициализация компонентов набора микросхем |
22 | Чтение SPD через модули памяти DIMM |
23 | Идентификация модулей памяти DIMM |
24 | Программирование параметров тактовой частоты с помощью контроллера памяти и модулей DIMM |
25 | Конфигурирование памяти |
26 | Оптимизация установок памяти |
27 | Инициализация памяти, например ECC |
28 | Тестирование памяти |
2F | Системе не удалось обнаружить память или пригодную память |
30 — 3F | Восстановление |
30 | Восстановление после сбоя было запущено по запросу пользователя |
31 | Восстановление после сбоя было запущено ПО (повреждено флэш-устройство) |
34 | Загрузка капсулы восстановления |
35 | Передача управления капсуле восстановления |
3F | Невозможно восстановить |
50 — 5F | Шины ввода/вывода (PCI, USB, ISA, ATA и т.д) |
50 | Нумерация шин PCI |
51 | Передача ресурсов на шину PCI |
52 | Инициализация контроллера Hot Plug PCI |
53 – 57 | Зарезервировано для шины PCI |
58 | Переустановка шины USB |
59 | Зарезервировано для USB |
5A | Переустановка шины PATA/SATA и всех устройств |
5B | Зарезервировано для ATA |
5C | Переустановка SMBUS |
5D | Зарезервировано для SMBUS |
5F | Невосстановимая ошибка шины ввода/вывода |
60 — 6F | Сейчас нет действительных POST-кодов в диапазоне 60 — 6F.
Если POST-код будет отображен в данном диапазоне, это код из диапазона B0 — BF. (На 7-сегментном ЖК-дисплее, символ ‘b’ выглядит как 6). Пример: |
70 — 7F | Устройства вывода |
70 | Переустановка контроллера VGA |
71 | Отключение контроллера VGA |
72 | Включение контроллера VGA |
78 | Переустановка контроллера консоли |
79 | Отключение контроллера консоли |
7A | Включение контроллера консоли |
7F | Невосстановимая ошибка устройства вывода |
90 — 9F | Устройства ввода |
90 | Переустановка клавиатуры |
91 | Отключение клавиатуры |
92 | Определение присутствия клавиатуры |
93 | Включение клавиатуры |
94 | Очистка входного буфера клавиатуры |
95 | Информация о контроллере клавиатуры — запуск самотестирования (только PS2) |
98 | Переустановка мыши |
99 | Disabling mouse |
9A | Определение присутствия мыши |
9B | Включение мыши |
9F | Невосстановимая ошибка устройства ввода (клавиатура или мышь) |
B0 – BF | Загрузочные устройства |
B0 | Переустановка стационарных носителей |
B1 | Отключение стационарных носителей |
B2 | Определение присутствия стационарных носителей (обнаружение жесткого диска IDE и т.д.) |
B3 | Подключение/настройка стационарных носителей |
B8 | Переустановка съемных носителей |
B9 | Отключение съемных носителей |
BA | Определение присутствия съемных носителей (обнаружение IDE, CD-ROM и т.д.) |
BC | Подключение/настройка съемных носителей |
BF | Невосстановимая ошибка загрузочного устройства |
D0 – DF | Выбор загрузочного устройства |
Dy | Перезагрузка через параметр y (y=от 0 до 15) |
E0 – FF | Другие коды |
E0 | Начато распределение PEIM (возникает при первом сообщении EFI_SW_PC_INIT_BEGIN EFI_SW_PEI_PC_HANDOFF_TO_NEXT) |
E2 | Обнаружена постоянная память |
E1, E3 | Зарезервировано для PEI/PEIM |
E4 | Начало фазы DXE |
E5 | Начало распределения драйверов |
E6 | Начало соединения драйверов |
E7 | Ожидание воода данных пользователем |
E8 | Проверка пароля |
E9 | Вход в утилиту BIOS Setup |
EB | Вызов установленных дополнительных ПЗУ |
EF | Загрузка/S3 повторение сбоя |
F4 | Вход в режим сна |
F5 | Выход из режима сна |
F8 | Произошел вызов службы загрузки EFI ExitBootServices ( ) |
<F9 | Была вызвана служба выполнения работы EFI SetVirtualAddressMap () |
FA | Произошел вызов службы прогона EFI ResetSystem ( ) |
FF | Ошибка процессора |
Типичный порт 80-я последовательность POST
Обычно значения кодов порта 80h увеличиваются в процессе загрузки. Меньшие значения кодов относятся к подсистемам, расположенным ближе к процессору, а большие значения кодов – к периферийным устройствам. Обычно используется следующий порядок инициализации: Процессор -> Память -> Шины -> Устройства ввода-вывода -> Устройства загрузки. Последовательность POST-кодов зависит от используемой системы.
Код POST | Описание |
21 | Инициализация компонентов набора микросхем |
22 | Чтение SPD через модули памяти DIMM |
23 | Идентификация модулей памяти DIMM |
25 | Конфигурирование памяти |
28 | Тестирование памяти |
34 | Загрузка капсулы восстановления |
E4 | Начало фазы DXE |
12 | Начало инициализации приложений процессора |
13Инициализация SMM50Нумерация шин PCI51Передача ресурсов на шину PCI92Обнаружение присутствия клавиатуры90Переустановка клавиатуры94Очистка входного буфера клавиатуры95Самотестирование клавиатурыEBВызов графических режимов BIOS58Переустановка шины USB5AПереустановка шины PATA/SATA и всех устройств92Обнаружение присутствия клавиатуры90Переустановка клавиатуры94Очистка входного буфера клавиатуры5AПереустановка шины PATA/SATA и всех устройств28Тестирование памяти90Переустановка клавиатуры94Очистка входного буфера клавиатурыE7Ожидание воода данных пользователем01INT 1900Готово для перезагрузки
— Этот материал подготовлен с использованием человеческого и машинного перевода для удобства пользователей. Данная информация предоставляется в ознакомительных целях и не должна расцениваться как исключительная, либо безошибочная.
© 2023 Ремонт материнских плат пайка BGA SMD в СПб · Копирование материалов сайта без разрешения запрещено
193232 Санкт-Петербург ул Шотмана дом 3 • Тел. +7 (962) 685-2-100 • 8 (812) 985-2-100
Любой ремонтник компьютеров знает, что POST Card PCI применяется для диагностики неисправностей при ремонте и модернизации компьютеров типа IBM PC (или совместимых с ним).
Такие карты в России и СНГ производит несколько компаний: Мастер Кит (Москва), e-KIT Post Cards, ACE Lab (Н.Новгород), BVG Group (Москва), ЕПОС: PCI TESTCARD (Украина), IC Book: IC80 (Украина), Jelezo: Jpost Full (Украина), VL Comp: PC Analyzer (Белорусия). Есть и зарубежные решения, но у нас их не найти в свободной продаже.
POST Card PCI представляет собой плату расширения компьютера, которая может быть установлена в любой свободный PCI слот (33 МГц) и предназначена для отображения POST кодов, генерируемых BIOS»ом компьютера, в удобном для пользователя виде.
Условно все POST-карты можно разделит на серийные и внесерийные (комплекты для самостоятельной сборки).
Обзор существующих POST-карт
Рассмотрим недостатки POST-карт различных производителей.
Родоначальником производства PCI POST-карт в России считается компания ACE Lab, которая имеет большой опsn в производстве программно-аппаратных комплексов для диагностики и реионта компьютеров.
Мастер Кит
POST Card PCI NM9221 (набор для самостоятельной сборки)/BM9221 (готовая плата). Один недостаток — семисегментный индикатор смотрит «мордой вниз».
Достоинства данной POST Card: собрана на ПЛИС серии EPM3XXX, поддерживающей Hot-socketing (более надежна, так как меньше вероятность сжечь POST Card) и работающей на 3.3V (лучше совместимость с современными спецификациями PCI2.3 и PCI3.0), поддержка новых и старых чипсетов благодаря сменным прошивкам.
e-Kit_02
Недостатки данной POST Card: собрана на ПЛИС устаревшей серии EPM7XXX, не поддерживающей Hot-socketing (менее надежна, так как больше вероятность сжечь POST Card) и работающей на 5.0V (могут быть проблемы с современными PCI2.3 и PCI3.0).
ACE Lab PC-POST PCI-2
. Не удобно, что индикатор смотрит вниз, зато есть возможность выбрать один из 4х возможных портов, откуда будет считываться информация.
ACE Lab PC POWER PCI-2
— полнофункциональный программно — аппаратный комплекс, который позволяет выполнять ряд диагностических тестов, запускаемых из установленного на плате ПЗУ, ориентированных на выявление системных ошибок и конфликтов оборудования.
BVG Group Dual POST
. Достоинства: простая и дешевая ПОСТ-карточка. Сделана на базе ПЛИС Altera EPM3032ALC44-10. Несет на себе пять светодиодов (питание на PCI — -12V, +12V, +3.3V, +5V, и сигнал RESET) и два семисегментных индикатора с обоих сторон платы. Индикатор может показывать одну цифру — это значит, что на PCI слот, в который вставлена эта ПОСТка, тактирование не приходит.
Характерным недостатком данной карточки из-за её урезанности является снятие тактирования со слота PCI, в который установлена эта карточка после этапа POST, на котором происходит инициализация генератора (для Award BIOS — 26h), в результате чего посткоды перестают отображаться. Методы «борьбы» с этой болезнью следующие:
- Если в BIOS Setup присутствует пункт Detect DIMM/PCI Clock — перевод оного в Disable не даст генератору снять частоту с неиспользуемых слотов, в результате чего Dual POST будет работать «как нормальная» , показывая все «полагающиеся» посткоды.
- Если проверяемая плата имеет Sharing PCI Slots (обычно — дальние от процессора два разъема, у которых одно прерывание «на двоих»), то можно в один из них вставить любое «нормальное» PCI-устройство (видео, звуковую, сетевую и т.п.), а в другой — посткарточку. При инициализации генератор, увидев «полноценное» PCI-устройство на Sharing PCI Slots — часто (зависит от конкретной платы-биоса) не снимает тактирование с обоих, чем с успехом «воспользуется» Dual POST.
BVG Group POST Pro.
Вместо семисегментников используется ЖК-дисплей с бегущей строкой, но стоимость карты при этом около 300 у.е., что неоправданно высоко.
ЕПОС: PCI TESTCARD.
Продвинутая серия «Master» из полезных «наворотов» по большому счету позволяет дополнительно лишь выбирать переключателями на плате диагностический порт в диапазоне 0-3FFh, который используется для вывода POST-кодов. Недостатки данной POST Card: собрана на ПЛИС устаревшей серии EPM7XXX, не поддерживающей Hot-socketing (менее надежна, так как больше вероятность сжечь POST Card) и работающей на 5.0V (могут быть проблемы с современными PCI2.3 и PCI3.0). Имеется также информация о выводе неверных POST кодов на некоторых материнских платах.
IC Book: IC80
. Известный представитель «взрослых» посткарточек, отличительной особенностью которого является присутствие не только «наворотов» в области мониторинга, но также и уникальные (не имеющие аналогов) возможности по отладке системы в пошаговом режиме. Плата имеет несколько отличительных особенностей:
- Выбор адресов, используемых в целях диагностики: 80h/81h и 84h/85h, 378h, 1080h
- Вывод диагностических кодов выполняется на два индикатора
- Вывод информации на внешний индикатор
- Индикация напряжения Stand-By 3.3V
- Поддержка четности на шине PCI
- Поддержка серверных вариантов шины PCI
Небольшой недостаток: не совсем корректно работает пошаговый режим на новых платах.
Jelezo: Jpost Full.
Зависает на некоторых материнках (в основном GIGABYTE) в чёрный экран после первой перезагрузки.
VL Comp: PC Analyzer
. Простенький и дешевый пост-контроллер, изюминкой которого является совмещение в одном конструктиве сразу двух типов посткарточек — для ISA и для PCI.
POST Card PCI BM9222 с ЖК-диплеем
Сегодня мы рассмотрим PCI POST-карту нового поколения POST Card PCI BM9222 производства московской компании Маскер Кит.
Технические характеристики
- Напряжение питания: +5 В.
- Ток потребления, не более: 100 мА.
- Частота шины PCI: 33 МГц.
- Адрес диагностического порта: 0080h
- Индикация POST кодов: на ЖК-дисплее в две строки по 16 символов (первая строка – POST-код в шестнадцатеричном виде и через тире — тип БИОСа, вторая строка – описание ошибки в виде бегущей строки).
- Индикация сигналов PCI шины: светодиоды на лицевой стороне платы — RST (сигнал сброса PCI) и
- CLK (тактовый сигнал PCI).
- Индикаторы наличия напряжений питания PCI шины: +5V, +12V, -12V, +3,3V.
- Совместимость с материнскими платами чип-сетах: Intel, VIA, SIS.
- Размер печатной платы: 95.5 x 73.6 мм.
Конструкция
Конструктивно POST Card PCI выполнен на двусторонней печатной плате из фольгированного стеклотекстолита с размерами 95.5 x 73.6 мм. В целях улучшения электропроводности контактов устройства, ламели покрыты никелем.
Принцип работы POST Card PCI
При каждом включении питания компьютера, совместимого с IBM PC, и до начала загрузки операционной системы процессор компьютера выполняет процедуру BIOS под названием «Самотест по включению питания» — POST (Power On Self Test). Эта же процедура выполняется также при нажатии на кнопку RESET или при программной перезагрузке компьютера. Во избежание недоразумений здесь следует отметить, что в некоторых особых случаях с целью сокращения времени загрузки компьютера процедура POST может быть несколько урезана, например, в режиме «Quick Boot» или при выходе из режима «сна» Hibernate.
Основной целью процедуры POST является проверка базовых функций и подсистем компьютера (таких как память, процессор, материнская плата, видеоконтроллер, клавиатура, гибкий и жесткий диски и т. д.) перед загрузкой операционной системы. Это в некоторой степени застраховывает пользователя от попытки работать на неисправной системе, что могло бы привести, например, к разрушению пользовательских данных на HDD. Перед началом каждого из тестов процедура POST генерирует так называемый POST код, который выводится по определенному адресу в пространстве адресов устройств ввода/вывода компьютера. В случае обнаружения неисправности в тестируемом устройстве процедура POST просто «зависает», а предварительно выведенный POST код однозначно определяет, на каком из тестов произошло «зависание». Таким образом, глубина и точность диагностики при помощи POST кодов полностью определяется глубиной и точностью тестов соответствующей процедуры POST BIOS»а компьютера.
Следует отметить, что таблицы POST кодов различны для различных производителей BIOS и, в связи с появлением новых тестируемых устройств и чипсетов, несколько отличаются даже для различных версий одного и того же производителя BIOS. Таблицы POST кодов можно найти на соответствующих сайтах производителей BIOS: для AMI это http://www.ami.com , для AWARD — http://www.award.com , иногда таблицы POST кодов приводятся в руководствах к материнским платам.
Для отображения POST кодов в удобном для пользователя виде служат устройства под названием POST Card. Предлагаемая POST Card для шины PCI — это плата расширения компьютера, вставляемая (при выключенном питании!) в любой свободный PCI слот (33 МГц) и имеющая текстовый индикатор для отображения POST кодов и текстовой информации о текущем коде. Из особенностей работы данной POST Card хочется отметить то, что после включения питания компьютера и до появления первого активного сигнала RESET PCI на индикатор POST Card выводится сообщение приветствия “BM9222 MASTERKIT POSTCARD”.
Кроме того, на POST Card имеются светодиоды, отражающие состояния сигналов CLK и RST шины PCI.
Поиск неисправностей при помощи POST Card PCI
Последовательность действий при ремонте компьютера с использованием POST Card выглядит следующим образом:
1. Выключаем питание неисправного компьютера.
2. Устанавливаем POST Card в любой свободный PCI слот материнской платы.
3. Включаем питание компьютера.
4. При необходимости подстраиваем контрастность (при установке LCD экрана, для PLED – подстройка не требуется) изображения путем нажатия на кнопки (дальняя от материнской платы кнопка увеличивает контрастность, ближняя — уменьшает) или изменяем тип отображаемого БИОСа – путем нажатия и удерживания одной из кнопок и нажатия на вторую (после отжатия кнопок смениться тип БИОСа, отображаемый в первой строке индикатора после кода ошибки). Все вышеперечисленные настройки сохраняются при отключении питания и загружаются при следующей подаче напряжения на POST Card.
5. Читаем информацию на индикаторе POST Card – это POST код, на котором «зависает» загрузка компьютера, и его описание во второй строке.
6. Осмысливаем вероятные причины.
7. При выключенном питании производим перестановки шлейфов, модулей памяти и других компонентов с целью устранить неисправность.
8. Повторяем пункты 3-7, добиваясь устойчивого прохождения процедуры POST и начала загрузки операционной системы.
9. При помощи программных утилит производим окончательное тестирование аппаратных компонентов, а в случае плавающих ошибок — осуществляем длительный прогон соответствующих программных тестов.
При ремонте компьютера без использования POST Сard пункты 3-6 этой последовательности просто опускают и со стороны ремонт компьютера выглядит просто как лихорадочная перестановка памяти, процессора, карт расширения, блока питания, и в довершение всего — материнской платы.
Если в крупных фирмах имеется большой запас исправных комплектующих, то для мелких фирм и частных лиц ремонт компьютера путем установки заведомо исправных компонентов превращается в сложную проблему.
Как же на практике осуществляется ремонт компьютера с использованием POST-Card?
Прежде всего, при включении питания перед началом работы процедуры POST должен произойти сброс системы сигналом RST (RESET), что индицируется на POST Card сменой сообщения приветствия на другие сообщения POST Card. Если смены не происходит в течение 2-4 секунд (время отображения приветствия примерно 0.7 сек) или появилось одно из сообщений “NO CODES” или “RESET” на более чем 1 сек, то в этом случае рекомендуется немедленно выключить компьютер, вытащить все платы и кабели, а также модули памяти из материнской платы. В системном блоке необходимо оставить подключенной к блоку питания материнскую плату с установленным процессором и плату POST Card. Если при последующем включении компьютера нормально проходит сброс системы и появляются первые POST коды, то, очевидно, проблема заключается во временно извлеченных компонентах компьютера; возможно также, в неправильно подключенных шлейфах. Вставляя последовательно память, видеоадаптер, а затем и другие карты, и наблюдая за POST кодами на индикаторе, обнаруживают неисправный модуль.
Вернемся теперь к случаю, когда даже не проходит начальный сброс системы (на индикаторе POST Card не происходит смена сообщения приветствия другими сообщениями). В этом случае либо неисправен блок питания компьютера, либо сама материнская плата (неисправны цепи формирования сигнала RESET) или процессор не стартует. Точную причину можно установить, подсоединив к материнской плате заведомо исправный блок питания.
Рассмотрим теперь случай, когда сигнал сброса проходит, но никакие POST коды на индикатор не выводятся (удерживается сообщение “NO CODES”); при этом, как было описано ранее, тестируется система, состоящая только из материнской платы, процессора, POST Card и блока питания. Если материнская плата совершенно новая, то причина может быть заключена в неправильно установленных джамперах материнской платы. Если все джамперы и процессор установлены правильно, а материнская плата все же не запускается, следует заменить процессор на заведомо исправный. Если же и это не помогает, то можно сделать вывод о неисправности материнской платы либо ее компонентов (например, причиной неисправности может являться повреждение информация в FLASH BIOS).
Главным достоинством POST Card является то, что она не требует для своей работы монитор. При этом тестирование компьютера при помощи POST Card возможно на ранних этапах процедуры POST, когда еще не доступна звуковая диагностика. Еще одна немаловажная особенность – отображение POST-кодов на всех типах БИОСов, выводящих коды по адресу 0×0080), но не описанных в ПЗУ.
PLED индикатор
Данное устройство проверки комплектуется индикатором с отображающим элементом типа PLED. Преимущества такого типа дисплея в том, что он обладает высокой контрастностью и широким углом обзора – это очень важно потому что часто POST-плату приходится устанавливать в компьютер в корпусе, когда в соседних слотах установлены другие платы (сетевые, звуковые и пр.).
Многоязыковая поддержка
POST-карта позволяет выводить коды для различных типов БИОСов на различных языках (английский и русский по умолчанию). Смена типа БИОСа осуществляется путем одновременного нажания сразу обеих кнопок. Данная пост карта расшифровывает 3 вида БИОСов в 2 языках (всего 6 типов). Русифицированный БИОС в названии содержит строку “RU”.
Сами строки с описанием кодов располагаются с микросхеме 24С256 — 32кБ SEEPROM. Эта микросхема установлена в панельку, и опытные пользователи могут извлечь её и перепрограммировать другой (более новой или с другим языком) версией в случае её появления на сайте www.masterkit.ru. Обновление происходит регулярно, с отслеживанием тенденций развития компьютерной техники.
В случае если данный код не дешифрируется в вашей версии, то следует воспользоваться Интернетом для оперативного поиска расшифровки типа теста, а так же написать в компанию МастерКит письмо с указанием данного случая, и в последующей версии данный код будет уже включен.
Для перепрограммирования можно воспользоваться набором NM9215 (программатор) совместно с переходником на данный тип микросхем NM9216/4.
Проверка системного блока РС тестером Post Card PCI на практике
Последовательность тестирования компонентов компьютера следующая:
1. Тестирование процессора.
2. Проверка контрольной суммы ROM BIOS.
3. Проверка и инициализация контроллеров DMA, IRQ и таймера 8254.
После этой стадии становится доступной звуковая диагностика.
4. Проверка операций регенерации памяти.
5. Тестирование первых 64 КБ памяти.
6. Загрузка векторов прерываний.
7. Инициализация видеоконтроллера.
После этого этапа диагностические сообщения выводятся на экран.
8. Тестирование полного объема ОЗУ.
9. Тестирование клавиатуры.
10. Тестирование CMOS памяти.
11. Инициализация COM и LPT портов.
12. Инициализация и тест контроллера FDD.
13. Инициализация и тест контроллера HDD.
14. Поиск дополнительных модулей ROM BIOS и их инициализация.
15. Вызов загрузчика операционной системы (INT 19h, Bootstrap), при невозможности загрузки операционной системы- попытка запуска ROM BASIC (INT 18h); при неудаче- останов системы (HALT).
Прохождение тестов
При прохождении каждого из тестов POST генерирует POST-код, который записывается в специальный диагностический регистр. Информация, содержащаяся в диагностическом регистре, становится доступной для наблюдения при установке в свободный слот компьютера диагностической платы POST Card и отображается на семисегментном индикаторе в виде двух шестнадцатиричных цифр. Адрес диагностического регистра зависит от типа компьютера, в более старых версиях это: ISA, EISA- 80h, ISA-Compaq- 84h, ISA-PS/2- 90h, MCA-PS/2- 680h, 80h, некоторые EISA- 300h.
Прежде всего, необходимо определить фирму-производителя BIOS материнской платы. Это можно сделать либо по наклейке на микросхеме BIOS, либо по надписям, которые выводятся на экран аналогичной исправной материнской платой. В России и СНГ наиболее распространенными являются BIOS фирм AMI и AWARD. С приобретением некоторого опыта уже по первым POST кодам можно с уверенностью назвать производителя BIOS.
Таблицы POST кодов различны для различных производителей BIOS и, в связи с появлением новых тестируемых устройств и чипсетов, отличаются даже для различных версий одного и того же производителя BIOS.
Исторически сложилось, что значения POST кодов в соответствующих таблицах производителей BIOSов даются в виде шестнадцатиричных чисел в диапазоне 00h- FFh (0- 255 в десятичной системе счисления), поэтому для удобства использования таких таблиц необходимо обеспечить отображение POST кодов в шестнадцатеричном виде.
Коды неисправностей
Award Software International, Inc.
AwardBIOS V4.51PG Elite
Динамично развивающаяся компания Award Software в 1995 году предложила новое на то время решение в области низкоуровневого программного обеспечения AwardBIOS «Elite», более известное как V4.50PG. Режим обслуживания контрольных точек не изменился ни в широко распространенной версии V4.51, ни в раритетном исполнении V4.60. Суффиксы P и G обозначают соответственно поддержку механизма PnP и обслуживание функций энергосбережения (Green Function).
Выполнение стартовых процедур POST из ROM
C0
Запрет External Cache. Запрет Internal Cache. Запрет Shadow RAM. Программирование контроллера DMA, контроллера прерываний, таймера, блока RTC
C1
Определение типа памяти, суммарного объем и размещение по строкам
C3
Проверка первых 256К DRAM для организации Temporary Area. Распаковка BIOS в Temporary Area
C5
Выполняемый код POST переносится в Shadow
C6
Определение присутствия, объема и типа External Cache
C8
Проверка целостности программ и таблиц BIOS
CF
Определение типа процессора
Выполнение POST в Shadow RAM
03
Запрет NMI, PIE (Periodic Interrupt Enable), AIE (Alarm Interrupt Enable), UIE (Update Interrupt Enable). Запрет генерации программируемой частоты SQWV
04
Проверка формирования запросов на регенерацию DRAM
05
Проверка и инициализация контроллера клавиатуры
06
Тест области памяти, начинающейся с адреса F000h, где размещен BIOS
07
Проверка функционирования CMOS и батарейного питания
BE
Программирование конфигурационных регистров Южного и Северного Мостов
09
Инициализация кэш-памяти L2 и регистров расширенного управления кэшированием процессора Cyrix
0A
Генерация таблицы векторов прерываний. Настройка ресурсов Power Management и установка вектора SMI
0B
Проверка контрольной суммы CMOS. Сканирование шины PCI устройств. Обновление микрокода процессора
0С
Инициализация контроллера клавиатуры
0D
Поиск и инициализация видеоадаптера. Настройка IOAPIC. Измерения тактовой частоты, установка FSB
0E
Инициализация MPC. Тест видеопамяти. Вывод на экран Award Logo
0F
Проверка первого контроллера DMA 8237. Определение клавиатуры и ее внутренний тест. Проверка контрольной суммы BIOS
10
Проверка второго контроллера DMA 8237
11
Проверка страничных регистров контроллеров DMA
14
Тест канала 2 системного таймера
15
Тест регистра маскирования запросов 1-го контроллера прерываний
16
Тест регистра маскирования запросов 2-го контроллера прерываний
19
Проверка пассивности запроса немаскируемого прерывания NMI
30
Определение объема Base Memory и Extended Memory. Настройка APIC. Программное управление режимом Write Allocation
Подготовка таблиц, массивов и структур для старта операционной системы
31
Основной отображаемый на экране тест оперативной памяти. Инициализация
32
Выводится заставка Plug and Play BIOS Extension. Настройка ресурсов Super I/O. Программируется Onboard Audio Device
39
Программирование тактового генератора по шине I2C
3C
Установка программного флага разрешения входа в Setup
3D
Инициализация PS/2 mouse
3E
Инициализации контроллера External Cache и разрешения Cache
BF
Настройка конфигурационных регистров чипсета
41
Инициализация подсистемы гибких дисков
42
Отключение IRQ12 если PS/2 mouse отсутствует. Выполняется программный сброс контроллера жестких дисков. Сканирование других IDE устройств
43
Инициализация последовательных и параллельных портов
45
Инициализация сопроцессора FPU
4E
Индикация сообщений об ошибках
4F
Запрос пароля
50
Восстановление ранее сохраненного в ОЗУ состояния CMOS
51
Разрешение 32 битного доступа к HDD. Настройка ресурсов ISA/PnP
52
Инициализация дополнительных BIOS. Установка значений конфигурационных регистров PIIX. Формирование NMI и SMI
53
Установка счетчика DOS Time в соответствии с Real Time Clock
60
Установка антивирусной защиты BOOT Sector
61
Завершающие действия по инициализации чипсета
62
Чтение идентификатора клавиатуры. Установка ее параметров
63
Коррекция блоков ESCD, DMI. Очистка ОЗУ
FF
Передача управления загрузчику. BIOS выполняет команду INT 19h
Рассмотрим процедуру тестирования системного блока персонального компьютера. Установим тестер BM9222 в свободный PCI слот материнской платы. Включим питание. BIOS — программа загрузки компьютера, хранящаяся в ПЗУ материнской платы, производит последовательный опрос всех включенных в системный блок устройств (процессор, модули памяти, винчестер, видеокарта, контроллеры, оптический привод, внешняя периферия: клавиатура мышь и т.д.).
Если все периферийные устройства системного блока исправны, то после окончания загрузки на экране тестера загорится следующая надпись FFh.
«Введем неисправность» в системный блок. Выключим питание и удалим из системного блока модуль памяти.
После подачи питания и загрузки компьютера на экране тестера появляется код ошибки оперативной памяти 4Eh.
Тестер точно определил, что память в системном блоке «неисправна». После выключения питания и возвращения модуля памяти на свое место тестер показал исправность персонального компьютера.
Аналогично можно определить коды ошибок других периферийных устройств и быстро устранить неисправность, заменив неисправный блок на исправный.
Выводы
American Megatrends, Inc. (AMI)
Контрольные точки процедур POST, выполняемых в AMIBIOS, были переработа- ны и дополнены в 1995 году и до настоящего времени не претерпели существенных из- менений. Первое описание POST кодов или как их называет AMI — «check points» в их нынешнем виде появилось в связи с выходом в свет ядра V6.24, 15/07/95. Некоторые изменения внесены в AMIBIOS V7.0, что отражается в настоящем документе.
Особенности выполнения стартовых процедур AMIBIOS
Если в процессе старта в диагностическом порту появляются данные 55h, AAh, не следует сопоставлять эту информацию с POST кодами — мы имеем дело с типовой тестовой последовательностью, в задачи которой входит проверка целостности шины данных.
На этапе старта вывод в диагностический порт данных носит специфический для каждой платформы характер. В некоторых реализациях первый визуализируемый код связан с действиями, который компания AMI называет chipset specific stuff. Эта проце- дура сопровождается выводом в порт 80h значения CCh и выполнением ряда действий по настройке регистров системной логики. Как правило, код CCh возникает в тех слу- чаях, когда используется системная логика от Intel, построенная на основе контроллера PIIX — это чипсеты TX, LX, BX.
Некоторые бортовые микросхемы ввода-вывода содержат RTC и контроллер кла- виатуры, которые по старту находятся в отключенном состоянии. Цель BIOS — проини- циализировать эти ресурсы платы для дальнейшего использования. В этом случае пер- вая стартовая процедура, связанная с настройкой контроллера клавиатуры, сопровож- дается выводом значения 10h, затем выполняется инициализация RTC, о чем свиде- тельствует появление в диагностическом порту кода DDh. Следует отметить, что отказ хотя бы одного из этих ресурсов повлечет нестарт системной платы в целом на первом же этапе выполнения POST.
На ряде плат процесс инициализации начинается с перевода CPU в защищенный режим. В этом случае вслед за первым визуализируемым кодом 43h выполнение POST продолжается так, как описано в документации AMIBIOS — управление передается в точку D0h.
Коды неупакованной процедуры инициализации
Uncompressed Init Code Check Points
Код ошибки | Описание ошибки |
---|---|
EE | В современных реализациях AMIBIOS первый визуализируемый код связан с об- ращением к устройству, с которого возможна загрузка для восстановления BIOS |
CC | Инициализация регистров системной логики CD Тип Flash ROM не опознан |
CE | Несовпадение контрольных сумм в стартовом BIOS CF Ошибка в доступе к запасной микросхеме Flash ROM |
DD | Ранняя инициализация RTC, который интегрирован в SIO чип |
D0 | Запрет немаскируемого прерывания NMI. Отработка временной задержки для за- тухания переходных процессов. Проверка контрольной суммы Boot Block, оста- нов при несовпадении |
D1 | Выполнение процедуры регенерации памяти и Basic Assurance Test. Переход в 4 GB режим адресации памяти |
D3 | Определение объема и первичный тест памяти |
D4 | Возврат в реальный режим адресации памяти. Ранняя инициализация чип сета. Установка стека |
D5 | Перенос модуля POST из Flash ROM в транзитную область памяти |
D6 | При несовпадении контрольной суммы или CTRL+Home выполняется переход на процедуру восстановления Flash ROM (Код E0) |
D7 | Передача управления служебной программе, осуществляющей распаковку сис- темного BIOS |
D8 | Полная распаковка системного BIOS |
D9 | Передача управления системному BIOS в Shadow RAM |
DA | Чтение информации из SPD (Serial Presence Detect) модулей DIMM DB Настройка MTRR регистров центрального процессора |
DC | Контроллер памяти программируются согласно данным, полученным из SPD DE Ошибка конфигурации системной памяти. Фатальная ошибка |
DF | Ошибка конфигурации системной памяти. Звуковой сигнал 10 Ранняя |
11 | Возврат из состояния STR (Suspend to RAM) |
12 | Восстановление доступа к SMRAM (System Management RAM) |
13 | Восстановление регенерации памяти |
14 | Поиск и инициализация VGA BIOS |
Коды процедуры перезаписи Flash ROM
Boot Block Recovery Codes
Код ошибки | Описание ошибки |
---|---|
E0 | Выполняется подготовка к перехвату INT19 и проверяется возможность старта системы в упрощенном режиме |
E1 | Установка векторов прерываний |
E3 | Восстановление содержимого CMOS, поиск и инициализация BIOS |
E2 | Подготовка контроллеров прерываний и непосредственного доступа к памяти |
E6 | Разрешение прерываний от системного таймера и FDC |
EC | Повторная инициализация контроллеров IRQ и DMA ED Инициализация дисковода |
EE | Чтение загрузочного сектора с дискеты EF Ошибка дисковых операций |
F0 | Поиск файла AMIBOOT.ROM |
F1 | В корневом каталоге файл AMIBOOT.ROM не найден F2 Считывание FAT |
F3 | Считывание AMIBOOT.ROM |
F4 | Объем файла AMIBOOT.ROM не соответствует объему Flash ROM |
F5 | Запрет Internal Cache |
FB | Определение типа Flash ROM |
FC | Стирание основного блока Flash ROM |
FD | Программирование основного блока Flash ROM |
FF | Рестарт BIOS |
Коды распакованного системного BIOS, выполняемые в ShadowRAM
Runtime code is uncompressed in F000 shadow RAM
Код ошибки | Описание ошибки |
---|---|
03 | Запрет немаскируемого прерывания NMI. Определение типа сброса |
05 | Инициализация стека. Запрет кэширования памяти и контроллера USB |
06 | Выполнение в ОЗУ служебной программы |
07 | Распознавание процессора и инициализация APIC |
08 | Проверка контрольной суммы CMOS |
09 | Проверка отработки клавиш End/Ins |
0A | Проверка сбоя батарейного питания |
0B | Очистка буферных регистров контроллера клавиатуры |
0C | Контроллеру клавиатуры передается команда тестирования |
0E | Поиск дополнительных устройств, обслуживаемых контроллером клавиатуры |
0F | Инициализация клавиатуры |
10 | Клавиатуре передается команда сброса |
11 | Если нажата клавиша End или Ins, выполняется сброс CMOS 12 Перевод в пассивное состояние контроллеров DMA |
13 | Инициализация чип сета и кэш L2 |
14 | Проверка системного таймера |
19 | Выполняется тест формирования запросов на регенерацию DRAM |
1A | Проверка длительности цикла регенерации |
20 | Инициализация устройств вывода |
23 | Считывается порт ввода контроллера клавиатуры. Опрашивается Keylock Switch и Manufacture Test Switch |
24 | Подготовка к инициализации таблицы векторов прерываний |
25 | Инициализация векторов прерываний завершена |
26 | Через порт ввода контроллера клавиатуры опрашивается состояние перемычки Turbo Switch |
27 | Первичная инициализация контроллера USB. Обновление микрокода стартового процессора |
28 | Подготовка к установке видеорежима |
29 | Инициализация LCD панели |
2A | Поиск устройств, обслуживаемых дополнительными ROM |
2B | Инициализации VGA BIOS, проверка его контрольной суммы |
2C | Выполнение VGA BIOS |
2D | Согласование INT 10h и INT 42h |
2E | Поиск видеоадаптеров CGA |
2F | Тест видеопамяти адаптера CGA |
30 | Тест схем формирования разверток адаптера CGA |
31 | Ошибка видеопамяти или схем формирования разверток. Поиск альтернативного видеоадаптера CGA |
32 | Тест видеопамяти альтернативного видеоадаптера CGA и схем разверток |
33 | Опрос состояния перемычки Mono/Color |
34 | Установка текстового режима 80х25 |
37 | Видеорежим установлен. Экран очищен |
38 | Инициализация бортовых устройств |
39 | Вывод сообщений об ошибках на предыдущем шаге |
3A | Вывод сообщения «Hit DEL» для входа в CMOS Setup |
3B | Начало подготовки к тесту памяти в защищенном режиме |
40 | Подготовка дескрипторных таблиц GDT и IDT |
42 | Переход в защищенный режим |
43 | Процессор в защищенном режиме. Прерывания разрешены |
44 | Подготовка к проверке линии A20 |
45 | Тест линии A20 |
46 | Определение размера ОЗУ выполнено |
47 | Тестовые данные записаны в Conventional Memory |
48 | Повторная проверка Conventional Memory |
49 | Тест Extended Memory |
4B | Обнуление памяти |
4C | Индикация процесса обнуления |
4D | Запись в CMOS полученных размеров Conventional и Extended memory 4E Индикация реального объема системной памяти |
4F | Выполняется расширенный тест Conventional Memory |
50 | Коррекция размера Conventional Memory |
51 | Расширенный тест Extended Memory |
52 | Объемы Conventional Memory и Extended Memory сохранены |
53 | Обработка отложенных ошибок четности |
54 | Запрет контроля четности и обработки немаскируемых прерываний |
57 | Инициализация региона памяти для POST Memory Manager |
58 | Выводится приглашение для входа в CMOS Setup |
59 | Возврат процессора в реальный режим |
60 | Проверка страничных регистров DMA |
62 | Тест регистров адреса и длины пересылки контроллера DMA#1 |
63 | Тест регистров адреса и длины пересылки контроллера DMA#2 |
65 | Программирование контроллеров DMA |
66 | Очистка регистров Write Request и Mask Set POST |
67 | Программирование контроллеров прерываний |
7F | Разрешение запроса NMI от дополнительных источников |
80 | Устанавливается режим обслуживания прерываний от порта PS/2 |
81 | Тест интерфейса клавиатуры при ошибках сброса |
82 | Установка режима работы контроллера клавиатуры |
83 | Проверка статуса Keylock |
84 | Верификация объема памяти |
85 | Вывод на экран сообщений об ошибках |
86 | Настройка системы для работы Setup |
87 | Распаковка программы CMOS Setup в Conventional Memory. |
88 | Работа программы Setup завершена пользователем |
89 | Завершено восстановление состояния после работы Setup |
8B | Резервирование памяти дополнительному блоку переменных BIOS |
8C | Программирование конфигурационных регистров |
8D | Первичная инициализация контроллеров HDD и FDD |
8F | Повторная инициализация контроллера FDD |
91 | Конфигурирование контроллера жестких дисков |
95 | Выполняется ROM Scan для поиска дополнительных BIOS |
96 | Дополнительная настройка системных ресурсов |
97 | Проверка сигнатуры и контрольной суммы дополнительного BIOS |
98 | Настройка System Management RAM |
99 | Установка счетчика таймера и переменных параллельных портов 9A Формирование списка последовательных портов |
9B | Подготовка области в памяти для теста сопроцессора |
9C | Инициализация сопроцессора |
9D | Информация о сопроцессоре сохраняется в CMOS RAM |
9E | Идентификация типа клавиатуры |
9F | Поиск дополнительных устройств ввода |
A0 | Формирование регистров MTRR (Memory Type Range Registers) |
A2 | Сообщений об ошибках на предыдущих этапах инициализации |
A3 | Установка временных характеристик автоповтора клавиатуры |
A4 | Дефрагментирование неиспользованных регионов RAM |
A5 | Установка видео режима |
A6 | Очистка экрана |
A7 | Перенос исполняемого кода BIOS область Shadow RAM |
A8 | Инициализация дополнительного BIOS в сегменте E000h |
A9 | Возврат управления системному BIOS AA Инициализация USB шины |
AB | Подготовка модуля INT13 для обслуживания дисковых сервисов |
AC | Построение таблиц AIOPIC для поддержки мультипроцессорных систем AD Подготовка модуля INT10 для обслуживания видео сервисов |
AE | Инициализация DMI |
B0 | Таблица конфигурации системы выведена B1 Инициализация ACPI BIOS |
00 | Программное прерывание INT19h – загрузка Boot Sector |
Особенности выполнения Device Initialization Manager
Кроме выше указанных POST кодов, в диагностический порт выводятся сообще- ния о событиях в процессе выполнения Device Initialization Manager (DIM). Существует несколько контрольных точек, в которых отображается состояние инициализации сис- темных или локальных шин.
Информация отображается в формате слова, младший байт которого совпадает с системным POST кодом, а старший байт указывает на тип выполняемой инициализационной процедуры. Старшая тетрада в старшем байте указывает тип выполняемой процедуры, а младшая определяет шинную топологию для ее применения.
Старшая тетрада
Младшая тетрада
В случае если обнаружена ошибка конфигурации системной памяти, в порт 80h выводится последовательно в бесконечном цикле код DE, код DF, код ошибки конфигурации, который может принимать следующие значения:
2.
Award BIOS V4.51PG Elite
AwardBIOS V4.51PG Elite
Динамично развивающаяся компания Award Software в 1995 году предложила новое на то время решение в области низкоуровневого программного обеспечения — AwardBIOS «Elite», более известное как V4.50PG. Режим обслуживания контрольных точек не изменился ни в широко распространенной версии V4.51, ни в раритетном исполнении V4.60. Суффиксы P и G обозначают соответственно поддержку механизма PnP и обслуживание функций энергосбережения (Green Function).
Выполнение POST в Shadow RAM
Код ошибки | Описание ошибки |
---|---|
03 | Запрет NMI, PIE (Periodic Interrupt Enable), AIE (Alarm Interrupt Enable), UIE (Update Interrupt Enable). Запрет генерации программируемой частоты SQWV |
04 | Проверка формирования запросов на регенерацию DRAM |
05 | |
06 | Тест области памяти, начинающейся с адреса F000h, где размещен BIOS 07 Проверка функционирования CMOS и батарейного питания |
BE | Программирование конфигурационных регистров Южного и Северного Мостов |
09 | Инициализация кэш-памяти L2 и регистров расширенного управления кэширова- нием процессора Cyrix |
0A | Генерация таблицы векторов прерываний. Настройка ресурсов Power Management и установка вектора SMI |
0B | Проверка контрольной суммы CMOS. Сканирование шины PCI устройств. Обнов- ление микрокода процессора |
0С | Инициализация контроллера клавиатуры |
0D | Поиск и инициализация видеоадаптера. Настройка IOAPIC. Измерения тактовой частоты, установка FSB |
0E | Инициализация MPC. Тест видеопамяти. Вывод на экран Award Logo |
0F | Проверка первого контроллера DMA 8237. Определение клавиатуры и ее внут- ренний тест. Проверка контрольной суммы BIOS |
10 | Проверка второго контроллера DMA 8237 |
11 | Проверка страничных регистров контроллеров DMA |
14 | Тест канала 2 системного таймера 15 Тест регистра маскирования запросов 1-го контроллера прерываний |
16 | Тест регистра маскирования запросов 2-го контроллера прерываний 19 Проверка пассивности запроса немаскируемого прерывания NMI |
30 | Определение объема Base Memory и Extended Memory. Настройка APIC. Программное управление режимом Write Allocation |
Код ошибки | Описание ошибки |
---|---|
31 | Основной отображаемый на экране тест оперативной памяти. Инициализация USB |
32 | Выводится заставка Plug and Play BIOS Extension. Настройка ресурсов Super I/O. Программируется Onboard Audio Device |
39 | Программирование тактового генератора по шине I2C |
3C | Установка программного флага разрешения входа в Setup |
3D | Инициализация PS/2 mouse |
3E | Инициализации контроллера External Cache и разрешения Cache BF Настройка конфигурационных регистров чип сета |
41 | Инициализация подсистемы гибких дисков |
42 | Отключение IRQ12 если PS/2 mouse отсутствует. Выполняется программный сброс контроллера жестких дисков. Сканирование других IDE устройств |
43 | |
45 | Инициализация сопроцессора FPU |
4E | Индикация сообщений об ошибках |
4F | Запрос пароля |
50 | Восстановление ранее сохраненного в ОЗУ состояния CMOS |
51 | Разрешение 32 битного доступа к HDD. Настройка ресурсов ISA/PnP |
52 | Инициализация дополнительных BIOS. Установка значений конфигурационных регистров PIIX. Формирование NMI и SMI |
53 | |
60 | Установка антивирусной защиты BOOT Sector |
61 | Завершающие действия по инициализации чип сет |
62 | Чтение идентификатора клавиатуры. Установка ее параметров |
63 | Коррекция блоков ESCD, DMI. Очистка ОЗУ |
FF | Передача управления загрузчику. BIOS выполняет команду INT 19h |
3.
Award BIOS V6.0 Medallion
AwardBIOS V6.0 Medallion
Первое упоминание об Award Medallion BIOS, Version 6.0 датируется 12 мая 1999 года. Структура нового продукта осталась неизменной, сохранив раннюю (Early), позд- нюю (Late) и финальную (System) фазы инициализации аппаратного обеспечения. Су- щественные изменения коснулись алгоритмов выполнения POST, что отразилось на но- вой кодировке контрольных точек, значительно расширив их сферу применения. Вме- сте с тем, в новом BIOS не нашлось места устаревшим технологиям, таким как EISA, и по этой причине ряд POST кодов было упразднено.
Выполнение стартовых процедур POST из ROM
На этапе ранней инициализации программный код BIOS выполняется из загру- зочного блока (Boot Block) во Flash ROM, и сопровождается выводом в диагностический порт контрольных точек 91h…FFh
Код ошибки | Описание ошибки |
---|---|
91 | Выбор сценария старта платформы CF Определение типа процессора |
C0 | Запрет External Cache. Запрет Internal Cache. Запрет Shadow RAM. Программирование контроллера DMA, контроллера прерываний, таймера, блока RTC C1 Определение типа памяти, суммарного объем и размещение по строкам 0С Проверка контрольных сумм |
C3 | Проверка первых 256К DRAM для организации Temporary Area. Распаковка BIOS в Temporary Area |
C5 | Если контрольные суммы совпали, выполняемый код POST переносится в Shadow. В противном случае управление передается на процедуру восстановления BIOS |
B0 | Инициализация North Bridge |
A0-AF | Аппаратно-зависимая процедура инициализации системной логики E0-EF Ошибка в процессе инициализации системной логики |
Восстановление BIOS
Выполнение POST в Shadow RAM
Поздняя инициализация выполняется в оперативной памяти и продолжается до момента вызова пользовательского меню — CMOS Setup. Для этой фазы POST характерно использование сегмента памяти E000h, в котором отрабатывается прохождение кон- трольных точек от 01h до 7Fh.
Код ошибки | Описание ошибки |
---|---|
01 | Распаковка XGROUP по физическому адресу 1000:0000h |
03 | Ранняя |
05 | Установке начальных значений переменных, задающих атрибуты изображения. Проверка флага состояния CMOS |
07 | Проверка и инициализация контроллера клавиатуры |
08 | Определение типа интерфейса подключенной клавиатуры |
0A | Процедура автоопределения клавиатуры и мыши. Финальные настройки кон- троллера клавиатуры с использованием регистров пространства PCI |
0E | Тестирование сегмента памяти F000h |
10 | Определения типа установленной памяти FlashROM |
12 | Тест CMOS |
14 | Процедура инициализации регистров чипсета |
16 | Первичная инициализация бортового частотного синтезатора |
18 | Определения установленного процессора и объем его Cache L1 и L2 1B Генерация таблицы векторов прерываний |
1C | |
1D | Первичная настройка системы Power Management |
1F | Загрузка из внешнего модуля XGROUP клавиатурной матрицы |
21 | Инициализация подсистемы Hardware Power Management |
23 | Тестирование сопроцессора. Определение типа накопителя FDD. Подготовитель- ный этап для создания карты ресурсов PnP устройств |
24 | Процедура обновления микрокода процессора. Обновление карты распределения ресурсов |
25 | Первичная инициализация и сканирование шины PCI |
26 | Настройка логики, обслуживающей линии VID (Voltage Identification Device). Инициализация бортовой системы мониторинга напряжений и температур |
27 | Повторная инициализация контроллера клавиатуры |
29 | Инициализация APIC, входящего в состав центрального процессора. Измерение частоты, на которой работает процессор. Настройка регистров системной логики. Инициализация контроллера IDE |
2A | |
2B | Поиск VGA BIOS |
2D | Вывод на экран данных о процессоре |
33 | Выполнение Reset для подключенной клавиатуры |
35 | Проверка первого канала контроллера DMA 8237 |
37 | Проверка второго канала контроллера DMA 8237 |
39 | Тестирование страничных регистров DMA |
3C | Настройка контроллера Programmable Interval Timer (8254) |
3E | Инициализация Master контроллера 8259 |
40 | Инициализация Slave контроллера 8259 |
43 | Подготовка контроллера прерываний к работе. Прерывания запрещены, их раз- решение выполняется позже, после теста памяти |
45 | Проверка пассивности запроса немаскируемого прерывания (NMI) |
47 | Выполнение ISA/EISA тестов |
49 | Определение объема базовой и расширенной памяти. Программное управление режимом Writes Allocation путем настройки регистров AMD K5 |
4E | Тестирование памяти в пределах первого мегабайта и визуализация результатов на экране дисплея. Инициализация схем кэширования для одно- и многопроцессорных систем, настройка регистров процессора Cyrix M1 |
50 | Инициализация USB |
52 | Тестирование всей доступной системной памяти, включая регион для встроенно- го видео контроллера (Shared Memory). Визуализация результатов на экране дисплея |
53 | Сброс пароля на вход в систему |
55 | Визуализация количества обнаруженных процессоров |
57 | Начальная инициализация ISA PnP устройств, каждому из которых назначается CSN (Card Select Number). Визуализация логотипа EPA |
59 | Инициализация системы антивирусной поддержки |
5B | Старт процедуры обновления BIOS с накопителя на гибких дисках 5D Инициализация бортовых SIO и Audio контроллеров |
60 | Доступ к CMOS Setup открыт |
63 | Инициализация PS/2 Mouse |
65 | Инициализация USB Mouse |
67 | Использование IRQ12 устройствами PCI, если в системе PS/2 Mouse отсутствует 69 Полная инициализация контроллера кэш L2 |
6B | Инициализация чипсета согласно CMOS Setup |
6D | Настройка ресурсов для устройств ISA PnP в режиме конфигурирования SIO 6F Инициализация подсистемы гибких дисков |
73 | Предварительные действия по инициализации подсистемы жестких дисков. На некоторых платформах — опрос ALT+F2 для запуска AwardFlash |
75 | Поиск и инициализация IDE устройств |
77 | Инициализация последовательных и параллельных портов |
7A | Программный сброс сопроцессора, запись управляющего слова в регистр FPU CW 7C Установка защиты от несанкционированной записи на жесткие диски |
7F | Вывод сообщений об ошибках. Обслуживание клавиш DEL и F1 |
Подготовка таблиц, массивов и структур для старта операционной системы
Начиная с кода 82h, POST осуществляет конфигурирование системы согласно установкам CMOS. Финальная его фаза выполняется из области Shadow RAM (сегмент E800h) и завершается передачей управления операционной системе — код FFh.
Код ошибки | Описание ошибки |
---|---|
82 | Выделяется область в системной памяти для управления питанием |
83 | Восстановление данных из стека временного хранения в CMOS |
84 | Вывод на экран сообщения «Initializing Plug and Play Cards…» |
85 | Инициализация USB завершена |
86 | Зарезервировано, очистка Carry Flag |
87 | Построение таблиц SYSID в области DMI |
88 | Зарезервировано, очистка Carry Flag |
89 | Генерация таблиц обслуживания ACPI |
8A | Зарезервировано, очистка Carry Flag |
8B | Поиск и инициализация BIOS дополнительных устройств |
8C | Зарезервировано, очистка Carry Flag |
8D | Инициализация процедур обслуживания бита четности |
8E | Зарезервировано, очистка Carry Flag |
8F | Разрешение IRQ12 для «горячего» подключения манипулятора «мышь» 90 Зарезервировано, очистка Carry Flag |
91 | Инициализация Legacy-ресурсов платформы |
92 | Зарезервировано, очистка Carry Flag |
93 | Предположительно, не используется |
94 | Заключительные действия по инициализации основного набора логики перед загрузкой операционной системы. Завершается инициализация системы управления питанием. Снимается стартовая заставка BIOS, выводится на экран таблица распределения ресурсов. Для процессоров семейства AMD K6® выполняются специфические настройки. Обновление микрокода для процессоров семейства Intel Pentium® II и выше |
95 | Установка режима автоматического перехода на зимнее/летнее время. Программирование контроллера клавиатуры на частоту автоповтора |
96 | В мультипроцессорных системах выполняются финальные настройки системы и создаются служебные таблицы и поля. Для процессоров семейства Cyrix выполняется дополнительная настройка регистров. Построение таблицы ESCD «Extended System Configuration Data». Установка счетчика DOS Time в соответствии с Real Time Clock. Выполняется сохранение разделов загрузочных устройств для далнейшего использования встроенными антивирусными средствами: Trend AntiVirus или Paragon Anti-Virus Protection. На системный динамик подается сигнал окончания выполнения POST. Строится и сохраняется таблица MSIRQ |
Ряд процессов, происходящих в Award Medallion BIOS, обозначается особыми группами контрольных точек. К ним относятся:
System Event codes — контрольные точки системных событий.
Power Management Debug codes — контрольные точки, возникающие в процессе выполнения сервисов APM или ACPI.
System Error codes — сообщения о фатальных ошибках.
Debug codes for MP system — точки инициализации многопроцессорных платформ.
Особенности ускоренного прохождения POST
Для сокращения времени загрузки системы пользователь в CMOS Setup может выбрать опцию «Quick Power On Self Test». В этом случае прохождение POST будет ускорено за счет отказа от выполнения некоторых процедур (Quick Boot).
Схема работы Quick Boot замещает позднюю и финальную фазы POST и не отражается на работе загрузочного блока. Award Software предлагает кодификацию испол- няемых процедур ускоренного прохождения POST, отличную от стандартной. Quick Boot начинается с вывода в диагностический порт контрольной точки 65h и заканчивается POST кодом 80h. Затем управление передается операционной системе с отображением обычного для Award BIOS кодом FFh.
Код ошибки | Описание ошибки |
---|---|
65 | Ранняя инициализация SIO контроллера, программный сброс видео контроллера. Настройка контроллера клавиатуры, тест клавиатуры и манипулятора «мышь». Инициализация звукового контроллера. Проверка целостности структур BIOS. Распаковка процедур обслуживания Flash ROM. Инициализация бортового синтезатора частот |
66 | Инициализация кэш-памяти L1/L2 согласно результатам, полученным по команде CPUID. Генерация таблицы векторов, состоящей из указателей на процедуры обработки прерываний. Инициализация аппаратных средств Power Managment |
67 | Проверка достоверности CMOS и батарейного питания. Настройка регистров чипсета согласно установкам CMOS. Инициализация контроллера клавиатуры в составе чипсета. Формирование переменных BIOS Data Area |
68 | Инициализация видео системы |
69 | Настройка i8259 контроллера прерываний |
6A | По специальному алгоритму выполняется ускоренный однопроходный тест оперативной памяти |
6B | Визуализация количества обнаруженных процессоров, логотипа EPA и вывод приглашения для запуска утилиты AwardFlash. Настройка ресурсов встроенного контроллера ввода-вывода в режиме конфигурирования |
70 | Приглашения для входа в Setup. Инициализация PS/2 и USB Mouse |
71 | Инициализация кэш-контроллера |
72 | Настройка конфигурационных регистров системной логики. Формирование списка Plug and Play устройств. Инициализация FDD контроллера |
73 | Инициализация контроллера HDD |
74 | Инициализация сопроцессора |
75 | Если пользователем предписано в установках CMOS Setup, выполняется защитаот записи IDE HDD |
77 | Запрос пароля и вывод сообщения: «Press F1 to continue, DEL to enter Setup» |
78 | Инициализация BIOS дополнительных устройств на шинах ISA и PCI |
79 | Инициализация Legacy ресурсов платформы |
7A | Генерация корневой таблицы RSDT и таблиц устройств DSDT, FADT и т.п. |
7D | Поиск информации о разделах загрузочных устройств |
7E | Настройка служб и сервисов BIOS перед загрузкой операционной системы |
7F | Установка флага NumLock согласно CMOS SetUp |
80 | Передача управления операционной системе |
Выполнение POST в режиме энергосбережения
Одно из состояний платформы, когда содержимое оперативной памяти сохраняется на жестком диске, называется Hibernate. В спецификации ACPI («Advanced Configuration and Power Interface Specification», Revision 2.0a от 31/03/2002) оно определяется как режим энергосбережения S4 (Non-Volatile Sleep). Возврат к полноценному функционированию предполагает особый способ прохождения POST.
Схема работы ACPI S4, как и при ускоренном старте, замещает позднюю и финальную фазы POST. Существенным моментом становится проверка в загрузочном блоке сценария старта. В зависимости от того, в каком ACPI состоянии находится система после аппаратного сигнала Reset, принимается решение о выходе из состояния S4, который начинается с вывода в диагностический порт контрольной точки 90h и заканчивается POST кодом 9Fh.
Код ошибки | Описание ошибки |
---|---|
90 | Ранняя инициализация SIO контроллера, программный сброс видео контроллера. Настройка контроллера клавиатуры, тест клавиатуры и манипулятора «мышь» |
91 | Проверка достоверности CMOS и батарейного питания |
92 | Инициализация регистров системной логики и бортового синтезатора частот |
93 | Инициализация кэш-памяти по информации CPUID |
94 | Генерация таблицы векторов, состоящей из указателей на процедуры обработки прерываний. Инициализация аппаратных средств Power Managment |
95 | Сканирование PCI шины |
96 | Инициализация встроенного контроллера клавиатуры |
97 | Инициализация видео системы |
98 | Вывод сообщений VGA адаптера |
99 | Проверка первого канала контроллера DMA8237 путем записи и контрольного считывания регистров базового адреса и длины блока пересылки 9A Настройка i8259 контроллера прерываний |
9B | Инициализация PS/2 и USB Mouse. Распаковка ACPI кода. Инициализация кэшконтроллера |
9C | Настройка конфигурационных регистров системной логики. Формирование списка Plug and Play устройств. Инициализация FDD и HDD контроллеров |
9D | Резервирование PM-региона в системной памяти не выполняется, если таковой создан в Shadow RAM или SMRAM. В некоторых случаях требуется повторная, завершающая инициализация USB шины, выполняемая при отключенной кэш- памяти L1 |
9E | Настройка Power Management, входящей в состав системной логики. Инициализация схем генерации SMI и установка вектора SMI. Программирование ресурсов, отвечающих за мониторинг системных событий PM |
9F | С помощью операции запрещения и разрешения очищается кэш-память L1/L2 и восстанавливается ее актуальный размер. Настройки управления режимом энергосбережения, заданные в CMOS Setup, сохраняются в PM RAM. Для мобильных платформ выполняется проверка возврата к полноценному функционированию после отключения всех питающих напряжений (режим Zero Volt Suspend) |
4.
Phoenix BIOS 4.0 Release 6.0
Phoenix Technologies, Ltd.
Один из лидеров разработки низкоуровневого программного обеспечения Phoe- nix Technologies приурочил к выходу Windows95 новую версию PhoenixBIOS 4.0. Поддержка семейства процессоров Intel Pentium отражается в названии промежуточных ревизий. Одна из последних — Release 6.0 — легла в основу всех выпускаемых BIOS. С появлением Release 6.1 существенных изменений в выполнении процедур POST не про- изошло, и, следовательно, это не отразилось на индикации контрольных точек.
Отличительная особенность PhoenixBIOS состоит в том, что если в процессе выполнения POST возникают ошибки тестирования 512 Кбайт основной памяти (коды 2Ch, 2Eh, 30h), в порт 80h выводится дополнительная информация в формате слова, биты которого идентифицируют сбойную адресную линию или ячейку данных. Например, код «2C 0002» означает, что обнаружен сбой памяти по адресной линии 1. Код «2E 1020» в этом случае будет означать, что обнаружен сбой по линиям данных 12 и 5 в младшем байте шины данных памяти. В системах 386SX, где используется шестнадцати битная шина данных, возникновение ошибки на этапе выполнения кода 30h невозможно
Вывод в диагностический порт POST кода сопровождается выводом на системный динамик звукового сигнала. Схема формирования звукового сигнала следующая:
- Восьми битный код преобразуется в четыре двух битные группы
- Значение каждой группы увеличивается на единицу
- По полученному значению генерируется короткий звуковой сигнал (например: код 16h = 00 01 01 10 = 1-2-2-3)
Выполнение стартовых процедур POST из ROM
Код ошибки | Описание ошибки |
---|---|
01 | Инициализация контроллера Baseboard Management (BMC) |
02 | Проверка текущего режим работы процессора |
03 | Запрет выполнения немаскируемых прерываний |
04 | Определяется тип установленного процессора |
06 | Начальные установки регистров PIC и DMA |
07 | Область в памяти, предназначенная для копии BIOS, обнуляется |
08 | Ранняя инициализация регистров системной логики |
09 | Установка программного флага выполнения POST |
0A | Инициализация программных ресурсов процессора |
0B | Разрешение Internal Cache |
0E | Инициализация ресурсов Super I/O |
0C | Инициализация кэш L1/L2 согласно значениям CMOS |
0F | Инициализация IDE |
10 | Инициализация подсистемы Power Management |
11 | Установка значений альтернативных регистров |
12 | Выполняется установка значения регистра MSW (Machine Status Word) |
13 | Ранняя инициализация PCI устройств |
14 | Инициализация контроллера клавиатуры |
16 | Проверка контрольной суммы ROM BIOS |
17 | Определение объема кэш L1/L2 |
18 | Инициализация системного таймера 8254 |
1A | Инициализация контроллера DMA |
1C | Сброс значений программируемого контроллера прерываний |
20 | Проверка формирования запросов регенерации DRAM |
22 | Проверка работы контроллера клавиатуры |
24 | Установка селектора для обслуживания плоской 4Gb модели памяти |
26 | Разрешение линии А20 |
28 | Определение суммарного объема установленной памяти |
29 | Инициализация POST Memory Manager (PMM) |
2A | Обнуление 640Kb основной памяти |
2C | Тестирование адресных линий |
2E | Сбой по одной из линий данных в младшем байте шины данных памяти |
2F | Выбор протокола работы кэш памяти |
30 | Тест доступной системной памяти |
32 | Определение тактовых параметров CPU и частоты шины |
Код ошибки | Описание ошибки |
---|---|
33 | Инициализация Phoenix Dispatch Manager |
34 | Запрет на выключение питания с помощью ATX Power Button |
35 | Настройки регистров системной логики, управляющих формированием временных характеристик доступа к памяти, портам ввода/вывода, системным и локальным шинам |
36 | Выполняется рестарт при неудачном переходе к следующей процедуре POST. Последовательностью процедур управляет Watch Dog Service |
37 | Завершается процесс настройки регистров системной логики |
38 | Содержимое Runtime модуля BIOS распаковывается и переписывается в область, предназначенную для Shadow RAM |
39 | Повторная инициализация контроллера кэш-памяти |
3A | Повторное определение размера кэш L2 |
3B | Инициализация трассировки выполнения BIOS |
3C | Дополнительная настройка регистров логики для конфигурирования мостов PCI-PCI и поддержки распределенных PCI шин |
3D | Выполняется настройка регистров системной логики в соответствии с установками CMOS Setup |
3E | Read Hardware Configuration |
3E | Проверка подключения системы ROM Pilot |
40 | Определение тактовых параметров CPU |
41 | Инициализация ROM Pilot — управления удаленной загрузкой |
42 | |
44 | Set BIOS Interrupt |
45 | Инициализация устройств до включения PnP механизма |
46 | По специальному алгоритму вычисляется контрольная сумма BIOS |
47 | Инициализация I2O контроллеров ввода/вывода |
48 | Поиск видеоадаптера |
49 | Инициализация PCI |
4A | Инициализация системных видеоадаптеров |
4B | Выполняется Quiet Boot — сокращенная последовательность старта системы, используемая для ускоренного прохождения POST |
4C | Содержимое VGA BIOS переписывается в транзитную область |
4E | Визуализация текстовой строки BIOS Copyright |
4F | Резервирование памяти для меню выбора загрузочных устройств |
50 | Визуализируется тип процессора и его тактовая частота |
51 | Инициализация контроллера и устройств EISA |
52 | Программирование контроллера клавиатуры |
54 | Активизирован режим звукового сопровождения клавиш |
55 | |
58 | Поиск необслуживаемых запросов на прерывания |
59 | Инициализация процедуры POST Display Service (PDS) 5A Вывод сообщения «Press F2 to enter SETUP» |
5B | Запрет CPU Internal Cache |
5C | Проверка Conventional Memory |
5E | Detect Base Address |
60 | Проверка Extended Memory |
62 | Проверка адресных линий Extended Memory |
64 | Передача управления на выполняемый блок, генерируемый производителем системной платы (Patch1) |
66 | Настройка регистров управления кэшированием |
67 | Минимальная инициализация контроллеров APIC |
68 | Разрешение кэш L1/L2 |
69 | Подготовка System Management Mode RAM |
6A | Визуализируется объем External Cache |
6B | Установка значений CMOS Setup по умолчанию |
6C | Визуализация информации об использовании Shadow RAM |
6E | Визуализация информации об Upper Memory Blocks (UMB) |
70 | Вывод сообщений об ошибках |
72 | Проверка текущей конфигурации системы и информации в CMOS |
76 | Проверка информации об ошибках клавиатуры |
7A | Проверка состояния средств программной (System Password) или аппаратной (Key Lock Switch) блокировки клавиатуры |
7C | Установка векторов аппаратных прерываний |
7D | Инициализации системы слежения за питанием |
7E | Инициализация сопроцессора |
80 | Запрещается бортовой контроллер ввода/вывода SIO |
81 | Выполняется подготовка к загрузке операционной системы |
82 | Поиск и определение портов RS232 |
83 | Конфигурирование внешних IDE контроллеров |
84 | Поиск и определение параллельных портов |
85 | Инициализация устройств ISA PnP |
86 | Бортовые ресурсы контроллера SIO конфигурируются в соответствии с установками CMOS Setup |
87 | Конфигурирование MCD (Motherboard Configurable Devices) |
88 | Устанавливаются значения блока переменных в области BIOS Data Area |
89 | Разрешается формирование немаскируемого прерывания |
8A | Установка значений переменных, находящихся в области Extended BIOS Data Area |
8B | Проверка схем подключения PS/2 Mouse |
8C | Инициализация контроллера дисковода |
8F | Определение количества подключенных ATA устройств |
90 | Инициализация и конфигурирование контроллеров жестких дисков |
91 | Установка временных параметров работы жестких дисков в режиме PIO |
92 | Передача управления на выполняемый блок, генерируемый производителем системной платы (Patch2) |
93 | Построение таблицы конфигурации мультипроцессорной системы |
95 | Выбор процедуры обслуживания CD-ROM |
96 | Возврат в Real Mode |
97 | Построение MP Configuration Table |
98 | Выполняется процедура ROM Scan |
99 | Проверка состояния параметра SMART 9A Содержимое ROM переписывается в RAM |
9C | Настройка подсистемы Power Management |
9D | Инициализация ресурсов для защиты от несанкционированного доступа |
9E | Разрешаются аппаратные прерывания |
9F | Определяется количество накопителей IDE и SCSI |
A0 | Установка DOS Time по состоянию RTC A1 Назначение данного кода неизвестно A2 Проверка состояния Key Lock |
A4 | Установки характеристик автоповтора клавиатуры |
A8 | Сообщение «Press F2 to enter Setup» удаляется с экрана |
AA | Проверяется наличие SCAN кода клавиши F2 во входном буфере AC Запускается программа Setup |
AE | Очищается флаг перезапуска, выполняемого по CTRL+ALT+DEL B0 Генерируется сообщение «Press F1 to resume, F2 to Setup» |
B1 | Снимается флаг выполнения POST B2 Процедура POST завершена |
B4 | Выдача звукового сигнала перед загрузкой |
B5 | Фаза Quiet Boot завершена |
B6 | Проверка пароля, если данный режим включен в Setup B7 Инициализация ACPI BIOS |
B9 | Поиск загрузочных устройств на USB шине BA Инициализация параметров DMI |
BB | Повторное выполнение процедуры ROM Scan |
BC | Обнуляется триггер фиксации ошибки четности RAM |
BD | Визуализируется меню для выбора загрузочного устройства BE Очистка экрана перед загрузкой операционной системы BF Активизация антивирусной поддержки |
C0 | Запускается процедура обработки программного прерывания INT 19h — загрузчик Boot Sector. Процедура обработки прерывания последовательно пытается загрузить Boot Sector, опрашивая дисковые устройства в порядке, предписанном Setup |
C1 | Начальная инициализация процедуры обслуживания сбоев (PEM) C2 Вызов служебных процедур для ведения протокола ошибок |
C3 | Визуализация сообщений об ошибках в порядке их поступления С4 Установка флагов начальных состояний |
C5 | Инициализация расширенного блока ячеек CMOS RAM |
C6 | Первичная инициализация док-станции |
C7 | Отложенная инициализация док-станции |
С8 | Выполнение находящихся в составе Boot Block тестовых процедур определения целостности структур BIOS |
С9 | Проверка целостности внешних по отношению к системному BIOS структур и/или модулей |
CA | Запуск Console Redirect для обслуживания удаленной клавиатуры CB Эмуляция дисковых устройств в RAM/ROM |
CC | Запуск Console Redirect для обслуживания видео CD Поддержка обмена данными с PCMCIA |
CE | Настройка контроллера светового пера |
Сообщения о фатальных ошибках
D0 Ошибка, вызванная исключительной ситуацией (Exception error) D2 Вызов процедуры обработки прерывания от не идентифицированного источника D4 Ошибка, связанная с нарушением протокола выдачи и снятия запросов на пре- рывание D6 Выход из защищенного режима с программным формированием сброса D7 Для сохранения состояния видеоадаптера требуется больший объем памяти, чем доступно в SMRAM D8 Ошибка при программном формировании импульса сброса процессора DA Потеря управления при возврате в Real Mode DC Выход из защищенного режима с программным формированием сброса без по- вторной инициализации контроллера прерываний DD Ошибка при тестировании расширенной памяти DE Ошибка контроллера клавиатуры DF Ошибка управления линией A20 19
Выполнение процедур из Boot Block
Код ошибки | Описание ошибки |
---|---|
E0 | Настройка конфигурационных регистров чипсета E1 Инициализация Северного и Южного мостов |
E2 | Инициализация CPU |
E3 | Инициализация системного таймера |
E4 | Инициализация ресурсов Super I/O |
E5 | Проверка состояния Recovery Jumper, установка которого принудительно запускает режим BIOS Recovery |
E6 | Проверка контрольной суммы BIOS |
E7 | Управление передается BIOS, если его контрольная сумма вычислена правильно E8 Инициализация поддержки MPS |
E9 | Переход к плоской 4Gb модели памяти |
EA | Инициализация нестандартного оборудования |
EB | Настройка контроллера прерываний и прямого доступа к памяти |
EC | Путем записей и контрольных считываний по специальному алгоритму определя-ется тип памяти: FPM, EDO, SDRAM, в соответствии с результатом настраиваются конфигурационные регистры Host Bridge |
ED | Путем записей и контрольных считываний по специальному алгоритму определя-ется объем банков памяти и размещение по строкам. В соответствии с результа том настраиваются конфигурационные регистры Host Bridge (DRAM Row Boundary) |
EE | Содержимое Boot Block копируется в Shadow RAM EF Подготовка SMM RAM для обработчика SMI |
F0 | Тест памяти |
F1 | Инициализация векторов прерываний |
F2 | Инициализация Real Time Clock |
F3 | Инициализация видео подсистемы |
F4 | Генерация звукового сигнала перед загрузкой |
F5 | Загрузка операционной системы, хранящейся во Flash ROM |
F6 | Возврат в Real Mode |
F7 | Boot to Full DOS |
F8 | Инициализация контроллера USB |
FA…FF | Коды взаимодействия с процедурой PhDebug |
5.
Insyde BIOS Mobile Pro
Insyde Software Corp.
Инсайдер рынка мобильных систем прочно обосновался там, где требуется верность традициям и консервативный подход к построению BIOS. Получив в наследство исходный код от SystemSoft, компания постоянно работает над его совершенствованием. Последняя из ревизий MobilePRO активно используется в ноутбуках Mitac и Clevo, документация к которым и легла в основу таблицы Error Codes — так в Insyde Software называют контрольные точки выполнения POST.
Контрольные точки загрузочного блока
Несмотря на то, что свой первый BIOS компания Insyde Software создала в 1992 году, устоявшая модель загрузочного блока, — или Boot Loader, как его назвали сами создатели, — окончательно сформировалась только к концу 1995 года. С этого момента стартовая процедура получила нумерацию по версии и дате создания.
Наиболее существенным моментом с точки зрения сервисного инженера, иссле- дующего процесс загрузки компьютерной системы с InsydeBIOS, становится устройство отображения диагностических кодов. Хотя, как правило, Boot Loader использует стандартный в таких случаях Manufacture»s Diagnostic Port 80h, в некоторых случаях вывод контрольных точек выполняется только на PIO Port (Parallel Input/Output port for diagnostic purpose), который представляет собой не что иное, как параллельный порт 378h. Существуют реализации, в которых диагностические коды, посылаемые в порт 80h, дублируются и в параллельный порт.
Код ошибки | Описание ошибки |
---|---|
00 | Стартовая точка выполнения загрузочного блока 01 Запрет линии А20 (не используется) |
02 | Обновление микрокода центрального процессора |
03 | Тестирование оперативной памяти |
04 | Перенос загрузочного блока в оперативную память |
05 | Выполнение загрузочного блока из оперативной памяти |
06 | Форсирование процедуры восстановления Flash ROM |
07 | Перенос системного BIOS в оперативную память |
08 | Верификация контрольной суммы системного BIOS |
09 | Запуск процедуры POST |
0A | Запуск процедуры восстановления Flash ROM с накопителя FDD |
0B | Инициализация синтезатора частот |
0C | Завершение процедуры восстановления BIOS |
0D | Альтернативная процедура восстановления Flash ROM с FDD |
0F | Останов в случае возникновения фатальной ошибки |
BB | Ранняя инициализация LPC SIO |
CC | Стартовая точка начала восстановления Flash ROM |
88 | Разрешение функций ACPI |
99 | Ошибка при выходе из режима STR |
60 | Переход в режим Big Real Mode |
61 | Инициализация SM Bus. Данные SPD сохраняются в CMOS A0 Чтение и анализ полей SPD, ранее сохраненных в CMOS A1 Инициализация контроллера памяти |
A2 | Определение логических банков модуля DIMM |
A3 | Программирование регистров DRB (DRAM Row Boundary) |
A4 | Программирование регистров DRA (DRAM Row Attributes) |
AE | В системе обнаружены модули DIMM, которые разнятся между собой функциями Error Correcting Codes (ECC) |
AF | Первичная инициализация регистров контроллера памяти, отображаемых в пространстве памяти |
E1 | Выполнение загрузочной процедуры прекращается, если модуль DIMM не оснащен микросхемой SPD |
E2 | Тип модуля DIMM не соответствует требованиям системы |
EA | Минимальное время между активацией строк DIMM модуля и переходом в состояние регенерации не соответствует системным требованиям |
EC | Регистровые модули не поддерживаются ED Проверка режимов CAS Latency |
EE | Организация модуля DIMM не поддерживается системной платой |
Выполнение процедур POST из RAM
Самые современные решения InsydeBIOS используют 16-битное отображение контрольных точек. Для этого используются порты 80h и 81h, последний из которых предназначен для расширения стандартной диагностики.
Изучение контрольных точек затрудняется их нерегулярным построением, когда различные по смыслу процессы сопровождаются одними и теми же кодами. В дуальных диагностических системах существуют разнородности другого порядка: некоторые POST коды отображаются только в один из портов без привычного в таких случаях дублирования.
Код ошибки | Описание ошибки |
---|---|
10 | Инициализация кэш-памяти, проверка CMOS |
11 | Запрет линии А20. Установка регистров контроллеров 8259. |
12 | Определение способа загрузки |
13 | Инициализация контроллера памяти |
14 | Поиск подключенного к шине ISA видео адаптера |
15 | Установка значений системного таймера |
16 | Установка регистров системной логики по CMOS |
17 | Подсчет общего объема оперативной памяти |
18 | Тестирование младшей страницы Conventional Memory |
19 | Проверка контрольной суммыы образа Flash ROM |
1A | Повторная установка регистров контроллера прерываний |
1B | Инициализация видео адаптера |
1C | Инициализация подмножества регистров видео адаптера, совместимых с программной моделью 6845 |
1D | Инициализация EGA адаптера |
1E | Инициализация CGA адапетра |
1F | Тест страничных регистров DMA контроллера |
20 | Проверка контроллера клавиатуры |
21 | Инициализация контроллера клавиатуры |
22 | Сравнение полученного объема оперативной памяти со значением в CMOS |
23 | Проверка автономного батарейного питания и Extended CMOS |
24 | Тестирование регистров контроллера DMA |
25 | Установка параметров DMA контроллера |
26 | Формирование таблицы векторов прерываний |
27 | Ускоренное определение объема установленной памяти |
28 | Защищенный режим |
29 | Тест системной памяти выполнен |
2A | Выход из защищенного режима |
2B | Перенос процедуры Setup в оперативную память |
2C | Запуск процедуры инициализации видео |
2D | Повторный поиск CGA адаптера |
2E | Повторный поиск EGA/VGA адаптера |
2F | Вывод на экран сообщений VGA BIOS |
30 | Пользовательская процедура инициализации контроллера клавиатуры |
31 | Проверка подключенной клавиатуры |
32 | Проверка прохождения запроса от клавиатуры |
33 | Проверка регистра статуса клавиатуры |
34 | Тест и обнуление системной памяти |
35 | Защищенный режим |
36 | Расширенный тест памяти завершен |
37 | Выход из защищенного режима |
38 | Запрет линии А20 |
39 | Инициализация кэш-контроллера 3A Проверка системного таймера |
3B | Установка счетчика DOS Time в соответствии с Real Time Clock |
3C | Инициализация таблицы аппаратных прерываний |
3D | Поиск и инициализация манипуляторов и указателей |
3E | Установка статуса клавиши NumLock |
3F | Инициализация последовательных и параллельных портов |
40 | Конфигурирование последовательных и параллельных портов |
41 | Инициализация FDD контроллера |
42 | Инициализация HDD контроллера |
43 | Инициализация Power Management для шины USB |
44 | Поиск и инициализация дополнительных BIOS |
45 | Повторная установка статуса клавиши NumLock |
46 | Проверка функциональности сопроцессора |
47 | Инициализация PCMCIA |
48 | Подготовка к старту операционной системы |
49 | Передача управления исполняемому Bootstrap коду |
50 | Инициализация ACPI |
51 | Инициализация Power Management |
52 | Инициализация контроллера шины USB |
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 кодов и звуковых сигналов?
- Также рекомендую англоязычный
ресурс PostCodeMaster – там собрано еще больше POST кодов и звуковых сигналов BIOS разных производителей (есть довольно редкие, плюс немного по конкретным материнкам, в том числе серверным).
Наиболее подробно для всех распространенных версий BIOS на русском
и с расшифровкой они описаны на сайте IC Book . Но информации столько, что немудрено заблудиться, удобней
скачать оттуда готовый PDF
документ со списком кодов (щелкнув в нем по нужному коду попадаешь на страницу с подробной расшифровкой).
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, выполняемых в 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 кодов и звуковых сигналов?
- Также рекомендую англоязычный
ресурс PostCodeMaster – там собрано еще больше POST кодов и звуковых сигналов BIOS разных производителей (есть довольно редкие, плюс немного по конкретным материнкам, в том числе серверным).
Наиболее подробно для всех распространенных версий BIOS на русском
и с расшифровкой они описаны на сайте IC Book . Но информации столько, что немудрено заблудиться, удобней
скачать оттуда готовый PDF
документ со списком кодов (щелкнув в нем по нужному коду попадаешь на страницу с подробной расшифровкой).
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 вакуума».
American Megatrends, Inc. (AMI)
Контрольные точки процедур POST, выполняемых в AMIBIOS, были переработа- ны и дополнены в 1995 году и до настоящего времени не претерпели существенных из- менений. Первое описание POST кодов или как их называет AMI — «check points» в их нынешнем виде появилось в связи с выходом в свет ядра V6.24, 15/07/95. Некоторые изменения внесены в AMIBIOS V7.0, что отражается в настоящем документе.
Особенности выполнения стартовых процедур AMIBIOS
Если в процессе старта в диагностическом порту появляются данные 55h, AAh, не следует сопоставлять эту информацию с POST кодами — мы имеем дело с типовой тестовой последовательностью, в задачи которой входит проверка целостности шины данных.
На этапе старта вывод в диагностический порт данных носит специфический для каждой платформы характер. В некоторых реализациях первый визуализируемый код связан с действиями, который компания AMI называет chipset specific stuff. Эта проце- дура сопровождается выводом в порт 80h значения CCh и выполнением ряда действий по настройке регистров системной логики. Как правило, код CCh возникает в тех слу- чаях, когда используется системная логика от Intel, построенная на основе контроллера PIIX — это чипсеты TX, LX, BX.
Некоторые бортовые микросхемы ввода-вывода содержат RTC и контроллер кла- виатуры, которые по старту находятся в отключенном состоянии. Цель BIOS — проини- циализировать эти ресурсы платы для дальнейшего использования. В этом случае пер- вая стартовая процедура, связанная с настройкой контроллера клавиатуры, сопровож- дается выводом значения 10h, затем выполняется инициализация RTC, о чем свиде- тельствует появление в диагностическом порту кода DDh. Следует отметить, что отказ хотя бы одного из этих ресурсов повлечет нестарт системной платы в целом на первом же этапе выполнения POST.
На ряде плат процесс инициализации начинается с перевода CPU в защищенный режим. В этом случае вслед за первым визуализируемым кодом 43h выполнение POST продолжается так, как описано в документации AMIBIOS — управление передается в точку D0h.
Коды неупакованной процедуры инициализации
Uncompressed Init Code Check Points
Код ошибки | Описание ошибки |
---|---|
EE | В современных реализациях AMIBIOS первый визуализируемый код связан с об- ращением к устройству, с которого возможна загрузка для восстановления BIOS |
CC | Инициализация регистров системной логики CD Тип Flash ROM не опознан |
CE | Несовпадение контрольных сумм в стартовом BIOS CF Ошибка в доступе к запасной микросхеме Flash ROM |
DD | Ранняя инициализация RTC, который интегрирован в SIO чип |
D0 | Запрет немаскируемого прерывания NMI. Отработка временной задержки для за- тухания переходных процессов. Проверка контрольной суммы Boot Block, оста- нов при несовпадении |
D1 | Выполнение процедуры регенерации памяти и Basic Assurance Test. Переход в 4 GB режим адресации памяти |
D3 | Определение объема и первичный тест памяти |
D4 | Возврат в реальный режим адресации памяти. Ранняя инициализация чип сета. Установка стека |
D5 | Перенос модуля POST из Flash ROM в транзитную область памяти |
D6 | При несовпадении контрольной суммы или CTRL+Home выполняется переход на процедуру восстановления Flash ROM (Код E0) |
D7 | Передача управления служебной программе, осуществляющей распаковку сис- темного BIOS |
D8 | Полная распаковка системного BIOS |
D9 | Передача управления системному BIOS в Shadow RAM |
DA | Чтение информации из SPD (Serial Presence Detect) модулей DIMM DB Настройка MTRR регистров центрального процессора |
DC | Контроллер памяти программируются согласно данным, полученным из SPD DE Ошибка конфигурации системной памяти. Фатальная ошибка |
DF | Ошибка конфигурации системной памяти. Звуковой сигнал 10 Ранняя |
11 | Возврат из состояния STR (Suspend to RAM) |
12 | Восстановление доступа к SMRAM (System Management RAM) |
13 | Восстановление регенерации памяти |
14 | Поиск и инициализация VGA BIOS |
Коды процедуры перезаписи Flash ROM
Boot Block Recovery Codes
Код ошибки | Описание ошибки |
---|---|
E0 | Выполняется подготовка к перехвату INT19 и проверяется возможность старта системы в упрощенном режиме |
E1 | Установка векторов прерываний |
E3 | Восстановление содержимого CMOS, поиск и инициализация BIOS |
E2 | Подготовка контроллеров прерываний и непосредственного доступа к памяти |
E6 | Разрешение прерываний от системного таймера и FDC |
EC | Повторная инициализация контроллеров IRQ и DMA ED Инициализация дисковода |
EE | Чтение загрузочного сектора с дискеты EF Ошибка дисковых операций |
F0 | Поиск файла AMIBOOT.ROM |
F1 | В корневом каталоге файл AMIBOOT.ROM не найден F2 Считывание FAT |
F3 | Считывание AMIBOOT.ROM |
F4 | Объем файла AMIBOOT.ROM не соответствует объему Flash ROM |
F5 | Запрет Internal Cache |
FB | Определение типа Flash ROM |
FC | Стирание основного блока Flash ROM |
FD | Программирование основного блока Flash ROM |
FF | Рестарт BIOS |
Коды распакованного системного BIOS, выполняемые в ShadowRAM
Runtime code is uncompressed in F000 shadow RAM
Код ошибки | Описание ошибки |
---|---|
03 | Запрет немаскируемого прерывания NMI. Определение типа сброса |
05 | Инициализация стека. Запрет кэширования памяти и контроллера USB |
06 | Выполнение в ОЗУ служебной программы |
07 | Распознавание процессора и инициализация APIC |
08 | Проверка контрольной суммы CMOS |
09 | Проверка отработки клавиш End/Ins |
0A | Проверка сбоя батарейного питания |
0B | Очистка буферных регистров контроллера клавиатуры |
0C | Контроллеру клавиатуры передается команда тестирования |
0E | Поиск дополнительных устройств, обслуживаемых контроллером клавиатуры |
0F | Инициализация клавиатуры |
10 | Клавиатуре передается команда сброса |
11 | Если нажата клавиша End или Ins, выполняется сброс CMOS 12 Перевод в пассивное состояние контроллеров DMA |
13 | Инициализация чип сета и кэш L2 |
14 | Проверка системного таймера |
19 | Выполняется тест формирования запросов на регенерацию DRAM |
1A | Проверка длительности цикла регенерации |
20 | Инициализация устройств вывода |
23 | Считывается порт ввода контроллера клавиатуры. Опрашивается Keylock Switch и Manufacture Test Switch |
24 | Подготовка к инициализации таблицы векторов прерываний |
25 | Инициализация векторов прерываний завершена |
26 | Через порт ввода контроллера клавиатуры опрашивается состояние перемычки Turbo Switch |
27 | Первичная инициализация контроллера USB. Обновление микрокода стартового процессора |
28 | Подготовка к установке видеорежима |
29 | Инициализация LCD панели |
2A | Поиск устройств, обслуживаемых дополнительными ROM |
2B | Инициализации VGA BIOS, проверка его контрольной суммы |
2C | Выполнение VGA BIOS |
2D | Согласование INT 10h и INT 42h |
2E | Поиск видеоадаптеров CGA |
2F | Тест видеопамяти адаптера CGA |
30 | Тест схем формирования разверток адаптера CGA |
31 | Ошибка видеопамяти или схем формирования разверток. Поиск альтернативного видеоадаптера CGA |
32 | Тест видеопамяти альтернативного видеоадаптера CGA и схем разверток |
33 | Опрос состояния перемычки Mono/Color |
34 | Установка текстового режима 80х25 |
37 | Видеорежим установлен. Экран очищен |
38 | Инициализация бортовых устройств |
39 | Вывод сообщений об ошибках на предыдущем шаге |
3A | Вывод сообщения «Hit DEL» для входа в CMOS Setup |
3B | Начало подготовки к тесту памяти в защищенном режиме |
40 | Подготовка дескрипторных таблиц GDT и IDT |
42 | Переход в защищенный режим |
43 | Процессор в защищенном режиме. Прерывания разрешены |
44 | Подготовка к проверке линии A20 |
45 | Тест линии A20 |
46 | Определение размера ОЗУ выполнено |
47 | Тестовые данные записаны в Conventional Memory |
48 | Повторная проверка Conventional Memory |
49 | Тест Extended Memory |
4B | Обнуление памяти |
4C | Индикация процесса обнуления |
4D | Запись в CMOS полученных размеров Conventional и Extended memory 4E Индикация реального объема системной памяти |
4F | Выполняется расширенный тест Conventional Memory |
50 | Коррекция размера Conventional Memory |
51 | Расширенный тест Extended Memory |
52 | Объемы Conventional Memory и Extended Memory сохранены |
53 | Обработка отложенных ошибок четности |
54 | Запрет контроля четности и обработки немаскируемых прерываний |
57 | Инициализация региона памяти для POST Memory Manager |
58 | Выводится приглашение для входа в CMOS Setup |
59 | Возврат процессора в реальный режим |
60 | Проверка страничных регистров DMA |
62 | Тест регистров адреса и длины пересылки контроллера DMA#1 |
63 | Тест регистров адреса и длины пересылки контроллера DMA#2 |
65 | Программирование контроллеров DMA |
66 | Очистка регистров Write Request и Mask Set POST |
67 | Программирование контроллеров прерываний |
7F | Разрешение запроса NMI от дополнительных источников |
80 | Устанавливается режим обслуживания прерываний от порта PS/2 |
81 | Тест интерфейса клавиатуры при ошибках сброса |
82 | Установка режима работы контроллера клавиатуры |
83 | Проверка статуса Keylock |
84 | Верификация объема памяти |
85 | Вывод на экран сообщений об ошибках |
86 | Настройка системы для работы Setup |
87 | Распаковка программы CMOS Setup в Conventional Memory. |
88 | Работа программы Setup завершена пользователем |
89 | Завершено восстановление состояния после работы Setup |
8B | Резервирование памяти дополнительному блоку переменных BIOS |
8C | Программирование конфигурационных регистров |
8D | Первичная инициализация контроллеров HDD и FDD |
8F | Повторная инициализация контроллера FDD |
91 | Конфигурирование контроллера жестких дисков |
95 | Выполняется ROM Scan для поиска дополнительных BIOS |
96 | Дополнительная настройка системных ресурсов |
97 | Проверка сигнатуры и контрольной суммы дополнительного BIOS |
98 | Настройка System Management RAM |
99 | Установка счетчика таймера и переменных параллельных портов 9A Формирование списка последовательных портов |
9B | Подготовка области в памяти для теста сопроцессора |
9C | Инициализация сопроцессора |
9D | Информация о сопроцессоре сохраняется в CMOS RAM |
9E | Идентификация типа клавиатуры |
9F | Поиск дополнительных устройств ввода |
A0 | Формирование регистров MTRR (Memory Type Range Registers) |
A2 | Сообщений об ошибках на предыдущих этапах инициализации |
A3 | Установка временных характеристик автоповтора клавиатуры |
A4 | Дефрагментирование неиспользованных регионов RAM |
A5 | Установка видео режима |
A6 | Очистка экрана |
A7 | Перенос исполняемого кода BIOS область Shadow RAM |
A8 | Инициализация дополнительного BIOS в сегменте E000h |
A9 | Возврат управления системному BIOS AA Инициализация USB шины |
AB | Подготовка модуля INT13 для обслуживания дисковых сервисов |
AC | Построение таблиц AIOPIC для поддержки мультипроцессорных систем AD Подготовка модуля INT10 для обслуживания видео сервисов |
AE | Инициализация DMI |
B0 | Таблица конфигурации системы выведена B1 Инициализация ACPI BIOS |
00 | Программное прерывание INT19h – загрузка Boot Sector |
Особенности выполнения Device Initialization Manager
Кроме выше указанных POST кодов, в диагностический порт выводятся сообще- ния о событиях в процессе выполнения Device Initialization Manager (DIM). Существует несколько контрольных точек, в которых отображается состояние инициализации сис- темных или локальных шин.
Информация отображается в формате слова, младший байт которого совпадает с системным POST кодом, а старший байт указывает на тип выполняемой инициализационной процедуры. Старшая тетрада в старшем байте указывает тип выполняемой процедуры, а младшая определяет шинную топологию для ее применения.
Старшая тетрада
Младшая тетрада
В случае если обнаружена ошибка конфигурации системной памяти, в порт 80h выводится последовательно в бесконечном цикле код DE, код DF, код ошибки конфигурации, который может принимать следующие значения:
2.
Award BIOS V4.51PG Elite
AwardBIOS V4.51PG Elite
Динамично развивающаяся компания Award Software в 1995 году предложила новое на то время решение в области низкоуровневого программного обеспечения — AwardBIOS «Elite», более известное как V4.50PG. Режим обслуживания контрольных точек не изменился ни в широко распространенной версии V4.51, ни в раритетном исполнении V4.60. Суффиксы P и G обозначают соответственно поддержку механизма PnP и обслуживание функций энергосбережения (Green Function).
Выполнение POST в Shadow RAM
Код ошибки | Описание ошибки |
---|---|
03 | Запрет NMI, PIE (Periodic Interrupt Enable), AIE (Alarm Interrupt Enable), UIE (Update Interrupt Enable). Запрет генерации программируемой частоты SQWV |
04 | Проверка формирования запросов на регенерацию DRAM |
05 | |
06 | Тест области памяти, начинающейся с адреса F000h, где размещен BIOS 07 Проверка функционирования CMOS и батарейного питания |
BE | Программирование конфигурационных регистров Южного и Северного Мостов |
09 | Инициализация кэш-памяти L2 и регистров расширенного управления кэширова- нием процессора Cyrix |
0A | Генерация таблицы векторов прерываний. Настройка ресурсов Power Management и установка вектора SMI |
0B | Проверка контрольной суммы CMOS. Сканирование шины PCI устройств. Обнов- ление микрокода процессора |
0С | Инициализация контроллера клавиатуры |
0D | Поиск и инициализация видеоадаптера. Настройка IOAPIC. Измерения тактовой частоты, установка FSB |
0E | Инициализация MPC. Тест видеопамяти. Вывод на экран Award Logo |
0F | Проверка первого контроллера DMA 8237. Определение клавиатуры и ее внут- ренний тест. Проверка контрольной суммы BIOS |
10 | Проверка второго контроллера DMA 8237 |
11 | Проверка страничных регистров контроллеров DMA |
14 | Тест канала 2 системного таймера 15 Тест регистра маскирования запросов 1-го контроллера прерываний |
16 | Тест регистра маскирования запросов 2-го контроллера прерываний 19 Проверка пассивности запроса немаскируемого прерывания NMI |
30 | Определение объема Base Memory и Extended Memory. Настройка APIC. Программное управление режимом Write Allocation |
Код ошибки | Описание ошибки |
---|---|
31 | Основной отображаемый на экране тест оперативной памяти. Инициализация USB |
32 | Выводится заставка Plug and Play BIOS Extension. Настройка ресурсов Super I/O. Программируется Onboard Audio Device |
39 | Программирование тактового генератора по шине I2C |
3C | Установка программного флага разрешения входа в Setup |
3D | Инициализация PS/2 mouse |
3E | Инициализации контроллера External Cache и разрешения Cache BF Настройка конфигурационных регистров чип сета |
41 | Инициализация подсистемы гибких дисков |
42 | Отключение IRQ12 если PS/2 mouse отсутствует. Выполняется программный сброс контроллера жестких дисков. Сканирование других IDE устройств |
43 | |
45 | Инициализация сопроцессора FPU |
4E | Индикация сообщений об ошибках |
4F | Запрос пароля |
50 | Восстановление ранее сохраненного в ОЗУ состояния CMOS |
51 | Разрешение 32 битного доступа к HDD. Настройка ресурсов ISA/PnP |
52 | Инициализация дополнительных BIOS. Установка значений конфигурационных регистров PIIX. Формирование NMI и SMI |
53 | |
60 | Установка антивирусной защиты BOOT Sector |
61 | Завершающие действия по инициализации чип сет |
62 | Чтение идентификатора клавиатуры. Установка ее параметров |
63 | Коррекция блоков ESCD, DMI. Очистка ОЗУ |
FF | Передача управления загрузчику. BIOS выполняет команду INT 19h |
3.
Award BIOS V6.0 Medallion
AwardBIOS V6.0 Medallion
Первое упоминание об Award Medallion BIOS, Version 6.0 датируется 12 мая 1999 года. Структура нового продукта осталась неизменной, сохранив раннюю (Early), позд- нюю (Late) и финальную (System) фазы инициализации аппаратного обеспечения. Су- щественные изменения коснулись алгоритмов выполнения POST, что отразилось на но- вой кодировке контрольных точек, значительно расширив их сферу применения. Вме- сте с тем, в новом BIOS не нашлось места устаревшим технологиям, таким как EISA, и по этой причине ряд POST кодов было упразднено.
Выполнение стартовых процедур POST из ROM
На этапе ранней инициализации программный код BIOS выполняется из загру- зочного блока (Boot Block) во Flash ROM, и сопровождается выводом в диагностический порт контрольных точек 91h…FFh
Код ошибки | Описание ошибки |
---|---|
91 | Выбор сценария старта платформы CF Определение типа процессора |
C0 | Запрет External Cache. Запрет Internal Cache. Запрет Shadow RAM. Программирование контроллера DMA, контроллера прерываний, таймера, блока RTC C1 Определение типа памяти, суммарного объем и размещение по строкам 0С Проверка контрольных сумм |
C3 | Проверка первых 256К DRAM для организации Temporary Area. Распаковка BIOS в Temporary Area |
C5 | Если контрольные суммы совпали, выполняемый код POST переносится в Shadow. В противном случае управление передается на процедуру восстановления BIOS |
B0 | Инициализация North Bridge |
A0-AF | Аппаратно-зависимая процедура инициализации системной логики E0-EF Ошибка в процессе инициализации системной логики |
Восстановление BIOS
Выполнение POST в Shadow RAM
Поздняя инициализация выполняется в оперативной памяти и продолжается до момента вызова пользовательского меню — CMOS Setup. Для этой фазы POST характерно использование сегмента памяти E000h, в котором отрабатывается прохождение кон- трольных точек от 01h до 7Fh.
Код ошибки | Описание ошибки |
---|---|
01 | Распаковка XGROUP по физическому адресу 1000:0000h |
03 | Ранняя |
05 | Установке начальных значений переменных, задающих атрибуты изображения. Проверка флага состояния CMOS |
07 | Проверка и инициализация контроллера клавиатуры |
08 | Определение типа интерфейса подключенной клавиатуры |
0A | Процедура автоопределения клавиатуры и мыши. Финальные настройки кон- троллера клавиатуры с использованием регистров пространства PCI |
0E | Тестирование сегмента памяти F000h |
10 | Определения типа установленной памяти FlashROM |
12 | Тест CMOS |
14 | Процедура инициализации регистров чипсета |
16 | Первичная инициализация бортового частотного синтезатора |
18 | Определения установленного процессора и объем его Cache L1 и L2 1B Генерация таблицы векторов прерываний |
1C | |
1D | Первичная настройка системы Power Management |
1F | Загрузка из внешнего модуля XGROUP клавиатурной матрицы |
21 | Инициализация подсистемы Hardware Power Management |
23 | Тестирование сопроцессора. Определение типа накопителя FDD. Подготовитель- ный этап для создания карты ресурсов PnP устройств |
24 | Процедура обновления микрокода процессора. Обновление карты распределения ресурсов |
25 | Первичная инициализация и сканирование шины PCI |
26 | Настройка логики, обслуживающей линии VID (Voltage Identification Device). Инициализация бортовой системы мониторинга напряжений и температур |
27 | Повторная инициализация контроллера клавиатуры |
29 | Инициализация APIC, входящего в состав центрального процессора. Измерение частоты, на которой работает процессор. Настройка регистров системной логики. Инициализация контроллера IDE |
2A | |
2B | Поиск VGA BIOS |
2D | Вывод на экран данных о процессоре |
33 | Выполнение Reset для подключенной клавиатуры |
35 | Проверка первого канала контроллера DMA 8237 |
37 | Проверка второго канала контроллера DMA 8237 |
39 | Тестирование страничных регистров DMA |
3C | Настройка контроллера Programmable Interval Timer (8254) |
3E | Инициализация Master контроллера 8259 |
40 | Инициализация Slave контроллера 8259 |
43 | Подготовка контроллера прерываний к работе. Прерывания запрещены, их раз- решение выполняется позже, после теста памяти |
45 | Проверка пассивности запроса немаскируемого прерывания (NMI) |
47 | Выполнение ISA/EISA тестов |
49 | Определение объема базовой и расширенной памяти. Программное управление режимом Writes Allocation путем настройки регистров AMD K5 |
4E | Тестирование памяти в пределах первого мегабайта и визуализация результатов на экране дисплея. Инициализация схем кэширования для одно- и многопроцессорных систем, настройка регистров процессора Cyrix M1 |
50 | Инициализация USB |
52 | Тестирование всей доступной системной памяти, включая регион для встроенно- го видео контроллера (Shared Memory). Визуализация результатов на экране дисплея |
53 | Сброс пароля на вход в систему |
55 | Визуализация количества обнаруженных процессоров |
57 | Начальная инициализация ISA PnP устройств, каждому из которых назначается CSN (Card Select Number). Визуализация логотипа EPA |
59 | Инициализация системы антивирусной поддержки |
5B | Старт процедуры обновления BIOS с накопителя на гибких дисках 5D Инициализация бортовых SIO и Audio контроллеров |
60 | Доступ к CMOS Setup открыт |
63 | Инициализация PS/2 Mouse |
65 | Инициализация USB Mouse |
67 | Использование IRQ12 устройствами PCI, если в системе PS/2 Mouse отсутствует 69 Полная инициализация контроллера кэш L2 |
6B | Инициализация чипсета согласно CMOS Setup |
6D | Настройка ресурсов для устройств ISA PnP в режиме конфигурирования SIO 6F Инициализация подсистемы гибких дисков |
73 | Предварительные действия по инициализации подсистемы жестких дисков. На некоторых платформах — опрос ALT+F2 для запуска AwardFlash |
75 | Поиск и инициализация IDE устройств |
77 | Инициализация последовательных и параллельных портов |
7A | Программный сброс сопроцессора, запись управляющего слова в регистр FPU CW 7C Установка защиты от несанкционированной записи на жесткие диски |
7F | Вывод сообщений об ошибках. Обслуживание клавиш DEL и F1 |
Подготовка таблиц, массивов и структур для старта операционной системы
Начиная с кода 82h, POST осуществляет конфигурирование системы согласно установкам CMOS. Финальная его фаза выполняется из области Shadow RAM (сегмент E800h) и завершается передачей управления операционной системе — код FFh.
Код ошибки | Описание ошибки |
---|---|
82 | Выделяется область в системной памяти для управления питанием |
83 | Восстановление данных из стека временного хранения в CMOS |
84 | Вывод на экран сообщения «Initializing Plug and Play Cards…» |
85 | Инициализация USB завершена |
86 | Зарезервировано, очистка Carry Flag |
87 | Построение таблиц SYSID в области DMI |
88 | Зарезервировано, очистка Carry Flag |
89 | Генерация таблиц обслуживания ACPI |
8A | Зарезервировано, очистка Carry Flag |
8B | Поиск и инициализация BIOS дополнительных устройств |
8C | Зарезервировано, очистка Carry Flag |
8D | Инициализация процедур обслуживания бита четности |
8E | Зарезервировано, очистка Carry Flag |
8F | Разрешение IRQ12 для «горячего» подключения манипулятора «мышь» 90 Зарезервировано, очистка Carry Flag |
91 | Инициализация Legacy-ресурсов платформы |
92 | Зарезервировано, очистка Carry Flag |
93 | Предположительно, не используется |
94 | Заключительные действия по инициализации основного набора логики перед загрузкой операционной системы. Завершается инициализация системы управления питанием. Снимается стартовая заставка BIOS, выводится на экран таблица распределения ресурсов. Для процессоров семейства AMD K6® выполняются специфические настройки. Обновление микрокода для процессоров семейства Intel Pentium® II и выше |
95 | Установка режима автоматического перехода на зимнее/летнее время. Программирование контроллера клавиатуры на частоту автоповтора |
96 | В мультипроцессорных системах выполняются финальные настройки системы и создаются служебные таблицы и поля. Для процессоров семейства Cyrix выполняется дополнительная настройка регистров. Построение таблицы ESCD «Extended System Configuration Data». Установка счетчика DOS Time в соответствии с Real Time Clock. Выполняется сохранение разделов загрузочных устройств для далнейшего использования встроенными антивирусными средствами: Trend AntiVirus или Paragon Anti-Virus Protection. На системный динамик подается сигнал окончания выполнения POST. Строится и сохраняется таблица MSIRQ |
Ряд процессов, происходящих в Award Medallion BIOS, обозначается особыми группами контрольных точек. К ним относятся:
System Event codes — контрольные точки системных событий.
Power Management Debug codes — контрольные точки, возникающие в процессе выполнения сервисов APM или ACPI.
System Error codes — сообщения о фатальных ошибках.
Debug codes for MP system — точки инициализации многопроцессорных платформ.
Особенности ускоренного прохождения POST
Для сокращения времени загрузки системы пользователь в CMOS Setup может выбрать опцию «Quick Power On Self Test». В этом случае прохождение POST будет ускорено за счет отказа от выполнения некоторых процедур (Quick Boot).
Схема работы Quick Boot замещает позднюю и финальную фазы POST и не отражается на работе загрузочного блока. Award Software предлагает кодификацию испол- няемых процедур ускоренного прохождения POST, отличную от стандартной. Quick Boot начинается с вывода в диагностический порт контрольной точки 65h и заканчивается POST кодом 80h. Затем управление передается операционной системе с отображением обычного для Award BIOS кодом FFh.
Код ошибки | Описание ошибки |
---|---|
65 | Ранняя инициализация SIO контроллера, программный сброс видео контроллера. Настройка контроллера клавиатуры, тест клавиатуры и манипулятора «мышь». Инициализация звукового контроллера. Проверка целостности структур BIOS. Распаковка процедур обслуживания Flash ROM. Инициализация бортового синтезатора частот |
66 | Инициализация кэш-памяти L1/L2 согласно результатам, полученным по команде CPUID. Генерация таблицы векторов, состоящей из указателей на процедуры обработки прерываний. Инициализация аппаратных средств Power Managment |
67 | Проверка достоверности CMOS и батарейного питания. Настройка регистров чипсета согласно установкам CMOS. Инициализация контроллера клавиатуры в составе чипсета. Формирование переменных BIOS Data Area |
68 | Инициализация видео системы |
69 | Настройка i8259 контроллера прерываний |
6A | По специальному алгоритму выполняется ускоренный однопроходный тест оперативной памяти |
6B | Визуализация количества обнаруженных процессоров, логотипа EPA и вывод приглашения для запуска утилиты AwardFlash. Настройка ресурсов встроенного контроллера ввода-вывода в режиме конфигурирования |
70 | Приглашения для входа в Setup. Инициализация PS/2 и USB Mouse |
71 | Инициализация кэш-контроллера |
72 | Настройка конфигурационных регистров системной логики. Формирование списка Plug and Play устройств. Инициализация FDD контроллера |
73 | Инициализация контроллера HDD |
74 | Инициализация сопроцессора |
75 | Если пользователем предписано в установках CMOS Setup, выполняется защитаот записи IDE HDD |
77 | Запрос пароля и вывод сообщения: «Press F1 to continue, DEL to enter Setup» |
78 | Инициализация BIOS дополнительных устройств на шинах ISA и PCI |
79 | Инициализация Legacy ресурсов платформы |
7A | Генерация корневой таблицы RSDT и таблиц устройств DSDT, FADT и т.п. |
7D | Поиск информации о разделах загрузочных устройств |
7E | Настройка служб и сервисов BIOS перед загрузкой операционной системы |
7F | Установка флага NumLock согласно CMOS SetUp |
80 | Передача управления операционной системе |
Выполнение POST в режиме энергосбережения
Одно из состояний платформы, когда содержимое оперативной памяти сохраняется на жестком диске, называется Hibernate. В спецификации ACPI («Advanced Configuration and Power Interface Specification», Revision 2.0a от 31/03/2002) оно определяется как режим энергосбережения S4 (Non-Volatile Sleep). Возврат к полноценному функционированию предполагает особый способ прохождения POST.
Схема работы ACPI S4, как и при ускоренном старте, замещает позднюю и финальную фазы POST. Существенным моментом становится проверка в загрузочном блоке сценария старта. В зависимости от того, в каком ACPI состоянии находится система после аппаратного сигнала Reset, принимается решение о выходе из состояния S4, который начинается с вывода в диагностический порт контрольной точки 90h и заканчивается POST кодом 9Fh.
Код ошибки | Описание ошибки |
---|---|
90 | Ранняя инициализация SIO контроллера, программный сброс видео контроллера. Настройка контроллера клавиатуры, тест клавиатуры и манипулятора «мышь» |
91 | Проверка достоверности CMOS и батарейного питания |
92 | Инициализация регистров системной логики и бортового синтезатора частот |
93 | Инициализация кэш-памяти по информации CPUID |
94 | Генерация таблицы векторов, состоящей из указателей на процедуры обработки прерываний. Инициализация аппаратных средств Power Managment |
95 | Сканирование PCI шины |
96 | Инициализация встроенного контроллера клавиатуры |
97 | Инициализация видео системы |
98 | Вывод сообщений VGA адаптера |
99 | Проверка первого канала контроллера DMA8237 путем записи и контрольного считывания регистров базового адреса и длины блока пересылки 9A Настройка i8259 контроллера прерываний |
9B | Инициализация PS/2 и USB Mouse. Распаковка ACPI кода. Инициализация кэшконтроллера |
9C | Настройка конфигурационных регистров системной логики. Формирование списка Plug and Play устройств. Инициализация FDD и HDD контроллеров |
9D | Резервирование PM-региона в системной памяти не выполняется, если таковой создан в Shadow RAM или SMRAM. В некоторых случаях требуется повторная, завершающая инициализация USB шины, выполняемая при отключенной кэш- памяти L1 |
9E | Настройка Power Management, входящей в состав системной логики. Инициализация схем генерации SMI и установка вектора SMI. Программирование ресурсов, отвечающих за мониторинг системных событий PM |
9F | С помощью операции запрещения и разрешения очищается кэш-память L1/L2 и восстанавливается ее актуальный размер. Настройки управления режимом энергосбережения, заданные в CMOS Setup, сохраняются в PM RAM. Для мобильных платформ выполняется проверка возврата к полноценному функционированию после отключения всех питающих напряжений (режим Zero Volt Suspend) |
4.
Phoenix BIOS 4.0 Release 6.0
Phoenix Technologies, Ltd.
Один из лидеров разработки низкоуровневого программного обеспечения Phoe- nix Technologies приурочил к выходу Windows95 новую версию PhoenixBIOS 4.0. Поддержка семейства процессоров Intel Pentium отражается в названии промежуточных ревизий. Одна из последних — Release 6.0 — легла в основу всех выпускаемых BIOS. С появлением Release 6.1 существенных изменений в выполнении процедур POST не про- изошло, и, следовательно, это не отразилось на индикации контрольных точек.
Отличительная особенность PhoenixBIOS состоит в том, что если в процессе выполнения POST возникают ошибки тестирования 512 Кбайт основной памяти (коды 2Ch, 2Eh, 30h), в порт 80h выводится дополнительная информация в формате слова, биты которого идентифицируют сбойную адресную линию или ячейку данных. Например, код «2C 0002» означает, что обнаружен сбой памяти по адресной линии 1. Код «2E 1020» в этом случае будет означать, что обнаружен сбой по линиям данных 12 и 5 в младшем байте шины данных памяти. В системах 386SX, где используется шестнадцати битная шина данных, возникновение ошибки на этапе выполнения кода 30h невозможно
Вывод в диагностический порт POST кода сопровождается выводом на системный динамик звукового сигнала. Схема формирования звукового сигнала следующая:
- Восьми битный код преобразуется в четыре двух битные группы
- Значение каждой группы увеличивается на единицу
- По полученному значению генерируется короткий звуковой сигнал (например: код 16h = 00 01 01 10 = 1-2-2-3)
Выполнение стартовых процедур POST из ROM
Код ошибки | Описание ошибки |
---|---|
01 | Инициализация контроллера Baseboard Management (BMC) |
02 | Проверка текущего режим работы процессора |
03 | Запрет выполнения немаскируемых прерываний |
04 | Определяется тип установленного процессора |
06 | Начальные установки регистров PIC и DMA |
07 | Область в памяти, предназначенная для копии BIOS, обнуляется |
08 | Ранняя инициализация регистров системной логики |
09 | Установка программного флага выполнения POST |
0A | Инициализация программных ресурсов процессора |
0B | Разрешение Internal Cache |
0E | Инициализация ресурсов Super I/O |
0C | Инициализация кэш L1/L2 согласно значениям CMOS |
0F | Инициализация IDE |
10 | Инициализация подсистемы Power Management |
11 | Установка значений альтернативных регистров |
12 | Выполняется установка значения регистра MSW (Machine Status Word) |
13 | Ранняя инициализация PCI устройств |
14 | Инициализация контроллера клавиатуры |
16 | Проверка контрольной суммы ROM BIOS |
17 | Определение объема кэш L1/L2 |
18 | Инициализация системного таймера 8254 |
1A | Инициализация контроллера DMA |
1C | Сброс значений программируемого контроллера прерываний |
20 | Проверка формирования запросов регенерации DRAM |
22 | Проверка работы контроллера клавиатуры |
24 | Установка селектора для обслуживания плоской 4Gb модели памяти |
26 | Разрешение линии А20 |
28 | Определение суммарного объема установленной памяти |
29 | Инициализация POST Memory Manager (PMM) |
2A | Обнуление 640Kb основной памяти |
2C | Тестирование адресных линий |
2E | Сбой по одной из линий данных в младшем байте шины данных памяти |
2F | Выбор протокола работы кэш памяти |
30 | Тест доступной системной памяти |
32 | Определение тактовых параметров CPU и частоты шины |
Код ошибки | Описание ошибки |
---|---|
33 | Инициализация Phoenix Dispatch Manager |
34 | Запрет на выключение питания с помощью ATX Power Button |
35 | Настройки регистров системной логики, управляющих формированием временных характеристик доступа к памяти, портам ввода/вывода, системным и локальным шинам |
36 | Выполняется рестарт при неудачном переходе к следующей процедуре POST. Последовательностью процедур управляет Watch Dog Service |
37 | Завершается процесс настройки регистров системной логики |
38 | Содержимое Runtime модуля BIOS распаковывается и переписывается в область, предназначенную для Shadow RAM |
39 | Повторная инициализация контроллера кэш-памяти |
3A | Повторное определение размера кэш L2 |
3B | Инициализация трассировки выполнения BIOS |
3C | Дополнительная настройка регистров логики для конфигурирования мостов PCI-PCI и поддержки распределенных PCI шин |
3D | Выполняется настройка регистров системной логики в соответствии с установками CMOS Setup |
3E | Read Hardware Configuration |
3E | Проверка подключения системы ROM Pilot |
40 | Определение тактовых параметров CPU |
41 | Инициализация ROM Pilot — управления удаленной загрузкой |
42 | |
44 | Set BIOS Interrupt |
45 | Инициализация устройств до включения PnP механизма |
46 | По специальному алгоритму вычисляется контрольная сумма BIOS |
47 | Инициализация I2O контроллеров ввода/вывода |
48 | Поиск видеоадаптера |
49 | Инициализация PCI |
4A | Инициализация системных видеоадаптеров |
4B | Выполняется Quiet Boot — сокращенная последовательность старта системы, используемая для ускоренного прохождения POST |
4C | Содержимое VGA BIOS переписывается в транзитную область |
4E | Визуализация текстовой строки BIOS Copyright |
4F | Резервирование памяти для меню выбора загрузочных устройств |
50 | Визуализируется тип процессора и его тактовая частота |
51 | Инициализация контроллера и устройств EISA |
52 | Программирование контроллера клавиатуры |
54 | Активизирован режим звукового сопровождения клавиш |
55 | |
58 | Поиск необслуживаемых запросов на прерывания |
59 | Инициализация процедуры POST Display Service (PDS) 5A Вывод сообщения «Press F2 to enter SETUP» |
5B | Запрет CPU Internal Cache |
5C | Проверка Conventional Memory |
5E | Detect Base Address |
60 | Проверка Extended Memory |
62 | Проверка адресных линий Extended Memory |
64 | Передача управления на выполняемый блок, генерируемый производителем системной платы (Patch1) |
66 | Настройка регистров управления кэшированием |
67 | Минимальная инициализация контроллеров APIC |
68 | Разрешение кэш L1/L2 |
69 | Подготовка System Management Mode RAM |
6A | Визуализируется объем External Cache |
6B | Установка значений CMOS Setup по умолчанию |
6C | Визуализация информации об использовании Shadow RAM |
6E | Визуализация информации об Upper Memory Blocks (UMB) |
70 | Вывод сообщений об ошибках |
72 | Проверка текущей конфигурации системы и информации в CMOS |
76 | Проверка информации об ошибках клавиатуры |
7A | Проверка состояния средств программной (System Password) или аппаратной (Key Lock Switch) блокировки клавиатуры |
7C | Установка векторов аппаратных прерываний |
7D | Инициализации системы слежения за питанием |
7E | Инициализация сопроцессора |
80 | Запрещается бортовой контроллер ввода/вывода SIO |
81 | Выполняется подготовка к загрузке операционной системы |
82 | Поиск и определение портов RS232 |
83 | Конфигурирование внешних IDE контроллеров |
84 | Поиск и определение параллельных портов |
85 | Инициализация устройств ISA PnP |
86 | Бортовые ресурсы контроллера SIO конфигурируются в соответствии с установками CMOS Setup |
87 | Конфигурирование MCD (Motherboard Configurable Devices) |
88 | Устанавливаются значения блока переменных в области BIOS Data Area |
89 | Разрешается формирование немаскируемого прерывания |
8A | Установка значений переменных, находящихся в области Extended BIOS Data Area |
8B | Проверка схем подключения PS/2 Mouse |
8C | Инициализация контроллера дисковода |
8F | Определение количества подключенных ATA устройств |
90 | Инициализация и конфигурирование контроллеров жестких дисков |
91 | Установка временных параметров работы жестких дисков в режиме PIO |
92 | Передача управления на выполняемый блок, генерируемый производителем системной платы (Patch2) |
93 | Построение таблицы конфигурации мультипроцессорной системы |
95 | Выбор процедуры обслуживания CD-ROM |
96 | Возврат в Real Mode |
97 | Построение MP Configuration Table |
98 | Выполняется процедура ROM Scan |
99 | Проверка состояния параметра SMART 9A Содержимое ROM переписывается в RAM |
9C | Настройка подсистемы Power Management |
9D | Инициализация ресурсов для защиты от несанкционированного доступа |
9E | Разрешаются аппаратные прерывания |
9F | Определяется количество накопителей IDE и SCSI |
A0 | Установка DOS Time по состоянию RTC A1 Назначение данного кода неизвестно A2 Проверка состояния Key Lock |
A4 | Установки характеристик автоповтора клавиатуры |
A8 | Сообщение «Press F2 to enter Setup» удаляется с экрана |
AA | Проверяется наличие SCAN кода клавиши F2 во входном буфере AC Запускается программа Setup |
AE | Очищается флаг перезапуска, выполняемого по CTRL+ALT+DEL B0 Генерируется сообщение «Press F1 to resume, F2 to Setup» |
B1 | Снимается флаг выполнения POST B2 Процедура POST завершена |
B4 | Выдача звукового сигнала перед загрузкой |
B5 | Фаза Quiet Boot завершена |
B6 | Проверка пароля, если данный режим включен в Setup B7 Инициализация ACPI BIOS |
B9 | Поиск загрузочных устройств на USB шине BA Инициализация параметров DMI |
BB | Повторное выполнение процедуры ROM Scan |
BC | Обнуляется триггер фиксации ошибки четности RAM |
BD | Визуализируется меню для выбора загрузочного устройства BE Очистка экрана перед загрузкой операционной системы BF Активизация антивирусной поддержки |
C0 | Запускается процедура обработки программного прерывания INT 19h — загрузчик Boot Sector. Процедура обработки прерывания последовательно пытается загрузить Boot Sector, опрашивая дисковые устройства в порядке, предписанном Setup |
C1 | Начальная инициализация процедуры обслуживания сбоев (PEM) C2 Вызов служебных процедур для ведения протокола ошибок |
C3 | Визуализация сообщений об ошибках в порядке их поступления С4 Установка флагов начальных состояний |
C5 | Инициализация расширенного блока ячеек CMOS RAM |
C6 | Первичная инициализация док-станции |
C7 | Отложенная инициализация док-станции |
С8 | Выполнение находящихся в составе Boot Block тестовых процедур определения целостности структур BIOS |
С9 | Проверка целостности внешних по отношению к системному BIOS структур и/или модулей |
CA | Запуск Console Redirect для обслуживания удаленной клавиатуры CB Эмуляция дисковых устройств в RAM/ROM |
CC | Запуск Console Redirect для обслуживания видео CD Поддержка обмена данными с PCMCIA |
CE | Настройка контроллера светового пера |
Сообщения о фатальных ошибках
D0 Ошибка, вызванная исключительной ситуацией (Exception error) D2 Вызов процедуры обработки прерывания от не идентифицированного источника D4 Ошибка, связанная с нарушением протокола выдачи и снятия запросов на пре- рывание D6 Выход из защищенного режима с программным формированием сброса D7 Для сохранения состояния видеоадаптера требуется больший объем памяти, чем доступно в SMRAM D8 Ошибка при программном формировании импульса сброса процессора DA Потеря управления при возврате в Real Mode DC Выход из защищенного режима с программным формированием сброса без по- вторной инициализации контроллера прерываний DD Ошибка при тестировании расширенной памяти DE Ошибка контроллера клавиатуры DF Ошибка управления линией A20 19
Выполнение процедур из Boot Block
Код ошибки | Описание ошибки |
---|---|
E0 | Настройка конфигурационных регистров чипсета E1 Инициализация Северного и Южного мостов |
E2 | Инициализация CPU |
E3 | Инициализация системного таймера |
E4 | Инициализация ресурсов Super I/O |
E5 | Проверка состояния Recovery Jumper, установка которого принудительно запускает режим BIOS Recovery |
E6 | Проверка контрольной суммы BIOS |
E7 | Управление передается BIOS, если его контрольная сумма вычислена правильно E8 Инициализация поддержки MPS |
E9 | Переход к плоской 4Gb модели памяти |
EA | Инициализация нестандартного оборудования |
EB | Настройка контроллера прерываний и прямого доступа к памяти |
EC | Путем записей и контрольных считываний по специальному алгоритму определя-ется тип памяти: FPM, EDO, SDRAM, в соответствии с результатом настраиваются конфигурационные регистры Host Bridge |
ED | Путем записей и контрольных считываний по специальному алгоритму определя-ется объем банков памяти и размещение по строкам. В соответствии с результа том настраиваются конфигурационные регистры Host Bridge (DRAM Row Boundary) |
EE | Содержимое Boot Block копируется в Shadow RAM EF Подготовка SMM RAM для обработчика SMI |
F0 | Тест памяти |
F1 | Инициализация векторов прерываний |
F2 | Инициализация Real Time Clock |
F3 | Инициализация видео подсистемы |
F4 | Генерация звукового сигнала перед загрузкой |
F5 | Загрузка операционной системы, хранящейся во Flash ROM |
F6 | Возврат в Real Mode |
F7 | Boot to Full DOS |
F8 | Инициализация контроллера USB |
FA…FF | Коды взаимодействия с процедурой PhDebug |
5.
Insyde BIOS Mobile Pro
Insyde Software Corp.
Инсайдер рынка мобильных систем прочно обосновался там, где требуется верность традициям и консервативный подход к построению BIOS. Получив в наследство исходный код от SystemSoft, компания постоянно работает над его совершенствованием. Последняя из ревизий MobilePRO активно используется в ноутбуках Mitac и Clevo, документация к которым и легла в основу таблицы Error Codes — так в Insyde Software называют контрольные точки выполнения POST.
Контрольные точки загрузочного блока
Несмотря на то, что свой первый BIOS компания Insyde Software создала в 1992 году, устоявшая модель загрузочного блока, — или Boot Loader, как его назвали сами создатели, — окончательно сформировалась только к концу 1995 года. С этого момента стартовая процедура получила нумерацию по версии и дате создания.
Наиболее существенным моментом с точки зрения сервисного инженера, иссле- дующего процесс загрузки компьютерной системы с InsydeBIOS, становится устройство отображения диагностических кодов. Хотя, как правило, Boot Loader использует стандартный в таких случаях Manufacture»s Diagnostic Port 80h, в некоторых случаях вывод контрольных точек выполняется только на PIO Port (Parallel Input/Output port for diagnostic purpose), который представляет собой не что иное, как параллельный порт 378h. Существуют реализации, в которых диагностические коды, посылаемые в порт 80h, дублируются и в параллельный порт.
Код ошибки | Описание ошибки |
---|---|
00 | Стартовая точка выполнения загрузочного блока 01 Запрет линии А20 (не используется) |
02 | Обновление микрокода центрального процессора |
03 | Тестирование оперативной памяти |
04 | Перенос загрузочного блока в оперативную память |
05 | Выполнение загрузочного блока из оперативной памяти |
06 | Форсирование процедуры восстановления Flash ROM |
07 | Перенос системного BIOS в оперативную память |
08 | Верификация контрольной суммы системного BIOS |
09 | Запуск процедуры POST |
0A | Запуск процедуры восстановления Flash ROM с накопителя FDD |
0B | Инициализация синтезатора частот |
0C | Завершение процедуры восстановления BIOS |
0D | Альтернативная процедура восстановления Flash ROM с FDD |
0F | Останов в случае возникновения фатальной ошибки |
BB | Ранняя инициализация LPC SIO |
CC | Стартовая точка начала восстановления Flash ROM |
88 | Разрешение функций ACPI |
99 | Ошибка при выходе из режима STR |
60 | Переход в режим Big Real Mode |
61 | Инициализация SM Bus. Данные SPD сохраняются в CMOS A0 Чтение и анализ полей SPD, ранее сохраненных в CMOS A1 Инициализация контроллера памяти |
A2 | Определение логических банков модуля DIMM |
A3 | Программирование регистров DRB (DRAM Row Boundary) |
A4 | Программирование регистров DRA (DRAM Row Attributes) |
AE | В системе обнаружены модули DIMM, которые разнятся между собой функциями Error Correcting Codes (ECC) |
AF | Первичная инициализация регистров контроллера памяти, отображаемых в пространстве памяти |
E1 | Выполнение загрузочной процедуры прекращается, если модуль DIMM не оснащен микросхемой SPD |
E2 | Тип модуля DIMM не соответствует требованиям системы |
EA | Минимальное время между активацией строк DIMM модуля и переходом в состояние регенерации не соответствует системным требованиям |
EC | Регистровые модули не поддерживаются ED Проверка режимов CAS Latency |
EE | Организация модуля DIMM не поддерживается системной платой |
Выполнение процедур POST из RAM
Самые современные решения InsydeBIOS используют 16-битное отображение контрольных точек. Для этого используются порты 80h и 81h, последний из которых предназначен для расширения стандартной диагностики.
Изучение контрольных точек затрудняется их нерегулярным построением, когда различные по смыслу процессы сопровождаются одними и теми же кодами. В дуальных диагностических системах существуют разнородности другого порядка: некоторые POST коды отображаются только в один из портов без привычного в таких случаях дублирования.
Код ошибки | Описание ошибки |
---|---|
10 | Инициализация кэш-памяти, проверка CMOS |
11 | Запрет линии А20. Установка регистров контроллеров 8259. |
12 | Определение способа загрузки |
13 | Инициализация контроллера памяти |
14 | Поиск подключенного к шине ISA видео адаптера |
15 | Установка значений системного таймера |
16 | Установка регистров системной логики по CMOS |
17 | Подсчет общего объема оперативной памяти |
18 | Тестирование младшей страницы Conventional Memory |
19 | Проверка контрольной суммыы образа Flash ROM |
1A | Повторная установка регистров контроллера прерываний |
1B | Инициализация видео адаптера |
1C | Инициализация подмножества регистров видео адаптера, совместимых с программной моделью 6845 |
1D | Инициализация EGA адаптера |
1E | Инициализация CGA адапетра |
1F | Тест страничных регистров DMA контроллера |
20 | Проверка контроллера клавиатуры |
21 | Инициализация контроллера клавиатуры |
22 | Сравнение полученного объема оперативной памяти со значением в CMOS |
23 | Проверка автономного батарейного питания и Extended CMOS |
24 | Тестирование регистров контроллера DMA |
25 | Установка параметров DMA контроллера |
26 | Формирование таблицы векторов прерываний |
27 | Ускоренное определение объема установленной памяти |
28 | Защищенный режим |
29 | Тест системной памяти выполнен |
2A | Выход из защищенного режима |
2B | Перенос процедуры Setup в оперативную память |
2C | Запуск процедуры инициализации видео |
2D | Повторный поиск CGA адаптера |
2E | Повторный поиск EGA/VGA адаптера |
2F | Вывод на экран сообщений VGA BIOS |
30 | Пользовательская процедура инициализации контроллера клавиатуры |
31 | Проверка подключенной клавиатуры |
32 | Проверка прохождения запроса от клавиатуры |
33 | Проверка регистра статуса клавиатуры |
34 | Тест и обнуление системной памяти |
35 | Защищенный режим |
36 | Расширенный тест памяти завершен |
37 | Выход из защищенного режима |
38 | Запрет линии А20 |
39 | Инициализация кэш-контроллера 3A Проверка системного таймера |
3B | Установка счетчика DOS Time в соответствии с Real Time Clock |
3C | Инициализация таблицы аппаратных прерываний |
3D | Поиск и инициализация манипуляторов и указателей |
3E | Установка статуса клавиши NumLock |
3F | Инициализация последовательных и параллельных портов |
40 | Конфигурирование последовательных и параллельных портов |
41 | Инициализация FDD контроллера |
42 | Инициализация HDD контроллера |
43 | Инициализация Power Management для шины USB |
44 | Поиск и инициализация дополнительных BIOS |
45 | Повторная установка статуса клавиши NumLock |
46 | Проверка функциональности сопроцессора |
47 | Инициализация PCMCIA |
48 | Подготовка к старту операционной системы |
49 | Передача управления исполняемому Bootstrap коду |
50 | Инициализация ACPI |
51 | Инициализация Power Management |
52 | Инициализация контроллера шины USB |
Любой ремонтник компьютеров знает, что POST Card PCI применяется для диагностики неисправностей при ремонте и модернизации компьютеров типа IBM PC (или совместимых с ним).
Такие карты в России и СНГ производит несколько компаний: Мастер Кит (Москва), e-KIT Post Cards, ACE Lab (Н.Новгород), BVG Group (Москва), ЕПОС: PCI TESTCARD (Украина), IC Book: IC80 (Украина), Jelezo: Jpost Full (Украина), VL Comp: PC Analyzer (Белорусия). Есть и зарубежные решения, но у нас их не найти в свободной продаже.
POST Card PCI представляет собой плату расширения компьютера, которая может быть установлена в любой свободный PCI слот (33 МГц) и предназначена для отображения POST кодов, генерируемых BIOS»ом компьютера, в удобном для пользователя виде.
Условно все POST-карты можно разделит на серийные и внесерийные (комплекты для самостоятельной сборки).
Обзор существующих POST-карт
Рассмотрим недостатки POST-карт различных производителей.
Родоначальником производства PCI POST-карт в России считается компания ACE Lab, которая имеет большой опsn в производстве программно-аппаратных комплексов для диагностики и реионта компьютеров.
Мастер Кит
POST Card PCI NM9221 (набор для самостоятельной сборки)/BM9221 (готовая плата). Один недостаток — семисегментный индикатор смотрит «мордой вниз».
Достоинства данной POST Card: собрана на ПЛИС серии EPM3XXX, поддерживающей Hot-socketing (более надежна, так как меньше вероятность сжечь POST Card) и работающей на 3.3V (лучше совместимость с современными спецификациями PCI2.3 и PCI3.0), поддержка новых и старых чипсетов благодаря сменным прошивкам.
e-Kit_02
Недостатки данной POST Card: собрана на ПЛИС устаревшей серии EPM7XXX, не поддерживающей Hot-socketing (менее надежна, так как больше вероятность сжечь POST Card) и работающей на 5.0V (могут быть проблемы с современными PCI2.3 и PCI3.0).
ACE Lab PC-POST PCI-2
. Не удобно, что индикатор смотрит вниз, зато есть возможность выбрать один из 4х возможных портов, откуда будет считываться информация.
ACE Lab PC POWER PCI-2
— полнофункциональный программно — аппаратный комплекс, который позволяет выполнять ряд диагностических тестов, запускаемых из установленного на плате ПЗУ, ориентированных на выявление системных ошибок и конфликтов оборудования.
BVG Group Dual POST
. Достоинства: простая и дешевая ПОСТ-карточка. Сделана на базе ПЛИС Altera EPM3032ALC44-10. Несет на себе пять светодиодов (питание на PCI — -12V, +12V, +3.3V, +5V, и сигнал RESET) и два семисегментных индикатора с обоих сторон платы. Индикатор может показывать одну цифру — это значит, что на PCI слот, в который вставлена эта ПОСТка, тактирование не приходит.
Характерным недостатком данной карточки из-за её урезанности является снятие тактирования со слота PCI, в который установлена эта карточка после этапа POST, на котором происходит инициализация генератора (для Award BIOS — 26h), в результате чего посткоды перестают отображаться. Методы «борьбы» с этой болезнью следующие:
- Если в BIOS Setup присутствует пункт Detect DIMM/PCI Clock — перевод оного в Disable не даст генератору снять частоту с неиспользуемых слотов, в результате чего Dual POST будет работать «как нормальная» , показывая все «полагающиеся» посткоды.
- Если проверяемая плата имеет Sharing PCI Slots (обычно — дальние от процессора два разъема, у которых одно прерывание «на двоих»), то можно в один из них вставить любое «нормальное» PCI-устройство (видео, звуковую, сетевую и т.п.), а в другой — посткарточку. При инициализации генератор, увидев «полноценное» PCI-устройство на Sharing PCI Slots — часто (зависит от конкретной платы-биоса) не снимает тактирование с обоих, чем с успехом «воспользуется» Dual POST.
BVG Group POST Pro.
Вместо семисегментников используется ЖК-дисплей с бегущей строкой, но стоимость карты при этом около 300 у.е., что неоправданно высоко.
ЕПОС: PCI TESTCARD.
Продвинутая серия «Master» из полезных «наворотов» по большому счету позволяет дополнительно лишь выбирать переключателями на плате диагностический порт в диапазоне 0-3FFh, который используется для вывода POST-кодов. Недостатки данной POST Card: собрана на ПЛИС устаревшей серии EPM7XXX, не поддерживающей Hot-socketing (менее надежна, так как больше вероятность сжечь POST Card) и работающей на 5.0V (могут быть проблемы с современными PCI2.3 и PCI3.0). Имеется также информация о выводе неверных POST кодов на некоторых материнских платах.
IC Book: IC80
. Известный представитель «взрослых» посткарточек, отличительной особенностью которого является присутствие не только «наворотов» в области мониторинга, но также и уникальные (не имеющие аналогов) возможности по отладке системы в пошаговом режиме. Плата имеет несколько отличительных особенностей:
- Выбор адресов, используемых в целях диагностики: 80h/81h и 84h/85h, 378h, 1080h
- Вывод диагностических кодов выполняется на два индикатора
- Вывод информации на внешний индикатор
- Индикация напряжения Stand-By 3.3V
- Поддержка четности на шине PCI
- Поддержка серверных вариантов шины PCI
Небольшой недостаток: не совсем корректно работает пошаговый режим на новых платах.
Jelezo: Jpost Full.
Зависает на некоторых материнках (в основном GIGABYTE) в чёрный экран после первой перезагрузки.
VL Comp: PC Analyzer
. Простенький и дешевый пост-контроллер, изюминкой которого является совмещение в одном конструктиве сразу двух типов посткарточек — для ISA и для PCI.
POST Card PCI BM9222 с ЖК-диплеем
Сегодня мы рассмотрим PCI POST-карту нового поколения POST Card PCI BM9222 производства московской компании Маскер Кит.
Технические характеристики
- Напряжение питания: +5 В.
- Ток потребления, не более: 100 мА.
- Частота шины PCI: 33 МГц.
- Адрес диагностического порта: 0080h
- Индикация POST кодов: на ЖК-дисплее в две строки по 16 символов (первая строка – POST-код в шестнадцатеричном виде и через тире — тип БИОСа, вторая строка – описание ошибки в виде бегущей строки).
- Индикация сигналов PCI шины: светодиоды на лицевой стороне платы — RST (сигнал сброса PCI) и
- CLK (тактовый сигнал PCI).
- Индикаторы наличия напряжений питания PCI шины: +5V, +12V, -12V, +3,3V.
- Совместимость с материнскими платами чип-сетах: Intel, VIA, SIS.
- Размер печатной платы: 95.5 x 73.6 мм.
Конструкция
Конструктивно POST Card PCI выполнен на двусторонней печатной плате из фольгированного стеклотекстолита с размерами 95.5 x 73.6 мм. В целях улучшения электропроводности контактов устройства, ламели покрыты никелем.
Принцип работы POST Card PCI
При каждом включении питания компьютера, совместимого с IBM PC, и до начала загрузки операционной системы процессор компьютера выполняет процедуру BIOS под названием «Самотест по включению питания» — POST (Power On Self Test). Эта же процедура выполняется также при нажатии на кнопку RESET или при программной перезагрузке компьютера. Во избежание недоразумений здесь следует отметить, что в некоторых особых случаях с целью сокращения времени загрузки компьютера процедура POST может быть несколько урезана, например, в режиме «Quick Boot» или при выходе из режима «сна» Hibernate.
Основной целью процедуры POST является проверка базовых функций и подсистем компьютера (таких как память, процессор, материнская плата, видеоконтроллер, клавиатура, гибкий и жесткий диски и т. д.) перед загрузкой операционной системы. Это в некоторой степени застраховывает пользователя от попытки работать на неисправной системе, что могло бы привести, например, к разрушению пользовательских данных на HDD. Перед началом каждого из тестов процедура POST генерирует так называемый POST код, который выводится по определенному адресу в пространстве адресов устройств ввода/вывода компьютера. В случае обнаружения неисправности в тестируемом устройстве процедура POST просто «зависает», а предварительно выведенный POST код однозначно определяет, на каком из тестов произошло «зависание». Таким образом, глубина и точность диагностики при помощи POST кодов полностью определяется глубиной и точностью тестов соответствующей процедуры POST BIOS»а компьютера.
Следует отметить, что таблицы POST кодов различны для различных производителей BIOS и, в связи с появлением новых тестируемых устройств и чипсетов, несколько отличаются даже для различных версий одного и того же производителя BIOS. Таблицы POST кодов можно найти на соответствующих сайтах производителей BIOS: для AMI это http://www.ami.com , для AWARD — http://www.award.com , иногда таблицы POST кодов приводятся в руководствах к материнским платам.
Для отображения POST кодов в удобном для пользователя виде служат устройства под названием POST Card. Предлагаемая POST Card для шины PCI — это плата расширения компьютера, вставляемая (при выключенном питании!) в любой свободный PCI слот (33 МГц) и имеющая текстовый индикатор для отображения POST кодов и текстовой информации о текущем коде. Из особенностей работы данной POST Card хочется отметить то, что после включения питания компьютера и до появления первого активного сигнала RESET PCI на индикатор POST Card выводится сообщение приветствия “BM9222 MASTERKIT POSTCARD”.
Кроме того, на POST Card имеются светодиоды, отражающие состояния сигналов CLK и RST шины PCI.
Поиск неисправностей при помощи POST Card PCI
Последовательность действий при ремонте компьютера с использованием POST Card выглядит следующим образом:
1. Выключаем питание неисправного компьютера.
2. Устанавливаем POST Card в любой свободный PCI слот материнской платы.
3. Включаем питание компьютера.
4. При необходимости подстраиваем контрастность (при установке LCD экрана, для PLED – подстройка не требуется) изображения путем нажатия на кнопки (дальняя от материнской платы кнопка увеличивает контрастность, ближняя — уменьшает) или изменяем тип отображаемого БИОСа – путем нажатия и удерживания одной из кнопок и нажатия на вторую (после отжатия кнопок смениться тип БИОСа, отображаемый в первой строке индикатора после кода ошибки). Все вышеперечисленные настройки сохраняются при отключении питания и загружаются при следующей подаче напряжения на POST Card.
5. Читаем информацию на индикаторе POST Card – это POST код, на котором «зависает» загрузка компьютера, и его описание во второй строке.
6. Осмысливаем вероятные причины.
7. При выключенном питании производим перестановки шлейфов, модулей памяти и других компонентов с целью устранить неисправность.
8. Повторяем пункты 3-7, добиваясь устойчивого прохождения процедуры POST и начала загрузки операционной системы.
9. При помощи программных утилит производим окончательное тестирование аппаратных компонентов, а в случае плавающих ошибок — осуществляем длительный прогон соответствующих программных тестов.
При ремонте компьютера без использования POST Сard пункты 3-6 этой последовательности просто опускают и со стороны ремонт компьютера выглядит просто как лихорадочная перестановка памяти, процессора, карт расширения, блока питания, и в довершение всего — материнской платы.
Если в крупных фирмах имеется большой запас исправных комплектующих, то для мелких фирм и частных лиц ремонт компьютера путем установки заведомо исправных компонентов превращается в сложную проблему.
Как же на практике осуществляется ремонт компьютера с использованием POST-Card?
Прежде всего, при включении питания перед началом работы процедуры POST должен произойти сброс системы сигналом RST (RESET), что индицируется на POST Card сменой сообщения приветствия на другие сообщения POST Card. Если смены не происходит в течение 2-4 секунд (время отображения приветствия примерно 0.7 сек) или появилось одно из сообщений “NO CODES” или “RESET” на более чем 1 сек, то в этом случае рекомендуется немедленно выключить компьютер, вытащить все платы и кабели, а также модули памяти из материнской платы. В системном блоке необходимо оставить подключенной к блоку питания материнскую плату с установленным процессором и плату POST Card. Если при последующем включении компьютера нормально проходит сброс системы и появляются первые POST коды, то, очевидно, проблема заключается во временно извлеченных компонентах компьютера; возможно также, в неправильно подключенных шлейфах. Вставляя последовательно память, видеоадаптер, а затем и другие карты, и наблюдая за POST кодами на индикаторе, обнаруживают неисправный модуль.
Вернемся теперь к случаю, когда даже не проходит начальный сброс системы (на индикаторе POST Card не происходит смена сообщения приветствия другими сообщениями). В этом случае либо неисправен блок питания компьютера, либо сама материнская плата (неисправны цепи формирования сигнала RESET) или процессор не стартует. Точную причину можно установить, подсоединив к материнской плате заведомо исправный блок питания.
Рассмотрим теперь случай, когда сигнал сброса проходит, но никакие POST коды на индикатор не выводятся (удерживается сообщение “NO CODES”); при этом, как было описано ранее, тестируется система, состоящая только из материнской платы, процессора, POST Card и блока питания. Если материнская плата совершенно новая, то причина может быть заключена в неправильно установленных джамперах материнской платы. Если все джамперы и процессор установлены правильно, а материнская плата все же не запускается, следует заменить процессор на заведомо исправный. Если же и это не помогает, то можно сделать вывод о неисправности материнской платы либо ее компонентов (например, причиной неисправности может являться повреждение информация в FLASH BIOS).
Главным достоинством POST Card является то, что она не требует для своей работы монитор. При этом тестирование компьютера при помощи POST Card возможно на ранних этапах процедуры POST, когда еще не доступна звуковая диагностика. Еще одна немаловажная особенность – отображение POST-кодов на всех типах БИОСов, выводящих коды по адресу 0×0080), но не описанных в ПЗУ.
PLED индикатор
Данное устройство проверки комплектуется индикатором с отображающим элементом типа PLED. Преимущества такого типа дисплея в том, что он обладает высокой контрастностью и широким углом обзора – это очень важно потому что часто POST-плату приходится устанавливать в компьютер в корпусе, когда в соседних слотах установлены другие платы (сетевые, звуковые и пр.).
Многоязыковая поддержка
POST-карта позволяет выводить коды для различных типов БИОСов на различных языках (английский и русский по умолчанию). Смена типа БИОСа осуществляется путем одновременного нажания сразу обеих кнопок. Данная пост карта расшифровывает 3 вида БИОСов в 2 языках (всего 6 типов). Русифицированный БИОС в названии содержит строку “RU”.
Сами строки с описанием кодов располагаются с микросхеме 24С256 — 32кБ SEEPROM. Эта микросхема установлена в панельку, и опытные пользователи могут извлечь её и перепрограммировать другой (более новой или с другим языком) версией в случае её появления на сайте www.masterkit.ru. Обновление происходит регулярно, с отслеживанием тенденций развития компьютерной техники.
В случае если данный код не дешифрируется в вашей версии, то следует воспользоваться Интернетом для оперативного поиска расшифровки типа теста, а так же написать в компанию МастерКит письмо с указанием данного случая, и в последующей версии данный код будет уже включен.
Для перепрограммирования можно воспользоваться набором NM9215 (программатор) совместно с переходником на данный тип микросхем NM9216/4.
Проверка системного блока РС тестером Post Card PCI на практике
Последовательность тестирования компонентов компьютера следующая:
1. Тестирование процессора.
2. Проверка контрольной суммы ROM BIOS.
3. Проверка и инициализация контроллеров DMA, IRQ и таймера 8254.
После этой стадии становится доступной звуковая диагностика.
4. Проверка операций регенерации памяти.
5. Тестирование первых 64 КБ памяти.
6. Загрузка векторов прерываний.
7. Инициализация видеоконтроллера.
После этого этапа диагностические сообщения выводятся на экран.
8. Тестирование полного объема ОЗУ.
9. Тестирование клавиатуры.
10. Тестирование CMOS памяти.
11. Инициализация COM и LPT портов.
12. Инициализация и тест контроллера FDD.
13. Инициализация и тест контроллера HDD.
14. Поиск дополнительных модулей ROM BIOS и их инициализация.
15. Вызов загрузчика операционной системы (INT 19h, Bootstrap), при невозможности загрузки операционной системы- попытка запуска ROM BASIC (INT 18h); при неудаче- останов системы (HALT).
Прохождение тестов
При прохождении каждого из тестов POST генерирует POST-код, который записывается в специальный диагностический регистр. Информация, содержащаяся в диагностическом регистре, становится доступной для наблюдения при установке в свободный слот компьютера диагностической платы POST Card и отображается на семисегментном индикаторе в виде двух шестнадцатиричных цифр. Адрес диагностического регистра зависит от типа компьютера, в более старых версиях это: ISA, EISA- 80h, ISA-Compaq- 84h, ISA-PS/2- 90h, MCA-PS/2- 680h, 80h, некоторые EISA- 300h.
Прежде всего, необходимо определить фирму-производителя BIOS материнской платы. Это можно сделать либо по наклейке на микросхеме BIOS, либо по надписям, которые выводятся на экран аналогичной исправной материнской платой. В России и СНГ наиболее распространенными являются BIOS фирм AMI и AWARD. С приобретением некоторого опыта уже по первым POST кодам можно с уверенностью назвать производителя BIOS.
Таблицы POST кодов различны для различных производителей BIOS и, в связи с появлением новых тестируемых устройств и чипсетов, отличаются даже для различных версий одного и того же производителя BIOS.
Исторически сложилось, что значения POST кодов в соответствующих таблицах производителей BIOSов даются в виде шестнадцатиричных чисел в диапазоне 00h- FFh (0- 255 в десятичной системе счисления), поэтому для удобства использования таких таблиц необходимо обеспечить отображение POST кодов в шестнадцатеричном виде.
Коды неисправностей
Award Software International, Inc.
AwardBIOS V4.51PG Elite
Динамично развивающаяся компания Award Software в 1995 году предложила новое на то время решение в области низкоуровневого программного обеспечения AwardBIOS «Elite», более известное как V4.50PG. Режим обслуживания контрольных точек не изменился ни в широко распространенной версии V4.51, ни в раритетном исполнении V4.60. Суффиксы P и G обозначают соответственно поддержку механизма PnP и обслуживание функций энергосбережения (Green Function).
Выполнение стартовых процедур POST из ROM
C0
Запрет External Cache. Запрет Internal Cache. Запрет Shadow RAM. Программирование контроллера DMA, контроллера прерываний, таймера, блока RTC
C1
Определение типа памяти, суммарного объем и размещение по строкам
C3
Проверка первых 256К DRAM для организации Temporary Area. Распаковка BIOS в Temporary Area
C5
Выполняемый код POST переносится в Shadow
C6
Определение присутствия, объема и типа External Cache
C8
Проверка целостности программ и таблиц BIOS
CF
Определение типа процессора
Выполнение POST в Shadow RAM
03
Запрет NMI, PIE (Periodic Interrupt Enable), AIE (Alarm Interrupt Enable), UIE (Update Interrupt Enable). Запрет генерации программируемой частоты SQWV
04
Проверка формирования запросов на регенерацию DRAM
05
Проверка и инициализация контроллера клавиатуры
06
Тест области памяти, начинающейся с адреса F000h, где размещен BIOS
07
Проверка функционирования CMOS и батарейного питания
BE
Программирование конфигурационных регистров Южного и Северного Мостов
09
Инициализация кэш-памяти L2 и регистров расширенного управления кэшированием процессора Cyrix
0A
Генерация таблицы векторов прерываний. Настройка ресурсов Power Management и установка вектора SMI
0B
Проверка контрольной суммы CMOS. Сканирование шины PCI устройств. Обновление микрокода процессора
0С
Инициализация контроллера клавиатуры
0D
Поиск и инициализация видеоадаптера. Настройка IOAPIC. Измерения тактовой частоты, установка FSB
0E
Инициализация MPC. Тест видеопамяти. Вывод на экран Award Logo
0F
Проверка первого контроллера DMA 8237. Определение клавиатуры и ее внутренний тест. Проверка контрольной суммы BIOS
10
Проверка второго контроллера DMA 8237
11
Проверка страничных регистров контроллеров DMA
14
Тест канала 2 системного таймера
15
Тест регистра маскирования запросов 1-го контроллера прерываний
16
Тест регистра маскирования запросов 2-го контроллера прерываний
19
Проверка пассивности запроса немаскируемого прерывания NMI
30
Определение объема Base Memory и Extended Memory. Настройка APIC. Программное управление режимом Write Allocation
Подготовка таблиц, массивов и структур для старта операционной системы
31
Основной отображаемый на экране тест оперативной памяти. Инициализация
32
Выводится заставка Plug and Play BIOS Extension. Настройка ресурсов Super I/O. Программируется Onboard Audio Device
39
Программирование тактового генератора по шине I2C
3C
Установка программного флага разрешения входа в Setup
3D
Инициализация PS/2 mouse
3E
Инициализации контроллера External Cache и разрешения Cache
BF
Настройка конфигурационных регистров чипсета
41
Инициализация подсистемы гибких дисков
42
Отключение IRQ12 если PS/2 mouse отсутствует. Выполняется программный сброс контроллера жестких дисков. Сканирование других IDE устройств
43
Инициализация последовательных и параллельных портов
45
Инициализация сопроцессора FPU
4E
Индикация сообщений об ошибках
4F
Запрос пароля
50
Восстановление ранее сохраненного в ОЗУ состояния CMOS
51
Разрешение 32 битного доступа к HDD. Настройка ресурсов ISA/PnP
52
Инициализация дополнительных BIOS. Установка значений конфигурационных регистров PIIX. Формирование NMI и SMI
53
Установка счетчика DOS Time в соответствии с Real Time Clock
60
Установка антивирусной защиты BOOT Sector
61
Завершающие действия по инициализации чипсета
62
Чтение идентификатора клавиатуры. Установка ее параметров
63
Коррекция блоков ESCD, DMI. Очистка ОЗУ
FF
Передача управления загрузчику. BIOS выполняет команду INT 19h
Рассмотрим процедуру тестирования системного блока персонального компьютера. Установим тестер BM9222 в свободный PCI слот материнской платы. Включим питание. BIOS — программа загрузки компьютера, хранящаяся в ПЗУ материнской платы, производит последовательный опрос всех включенных в системный блок устройств (процессор, модули памяти, винчестер, видеокарта, контроллеры, оптический привод, внешняя периферия: клавиатура мышь и т.д.).
Если все периферийные устройства системного блока исправны, то после окончания загрузки на экране тестера загорится следующая надпись FFh.
«Введем неисправность» в системный блок. Выключим питание и удалим из системного блока модуль памяти.
После подачи питания и загрузки компьютера на экране тестера появляется код ошибки оперативной памяти 4Eh.
Тестер точно определил, что память в системном блоке «неисправна». После выключения питания и возвращения модуля памяти на свое место тестер показал исправность персонального компьютера.
Аналогично можно определить коды ошибок других периферийных устройств и быстро устранить неисправность, заменив неисправный блок на исправный.
Выводы
POST-
коды
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 ошибка в младшей странице памяти.
Сокращенная процедура выполняется при установке в 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)
- 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
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
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-коды для
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 остановилась на одном из предыдущих этапов, то увидеть на каком именно не представляется возможным.
Контрольные точки процедур 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 сетевого адаптера
Код ошибки может принимать следующие значения: * 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К |
. Если он найден, а установками CMOS Setup в меню Boot Device Priority загрузка по сети указана как первое устройство, выполняется настройка процедур INT18h и INT19h.
Любой ремонтник компьютеров знает, что POST Card PCI применяется для диагностики неисправностей при ремонте и модернизации компьютеров типа IBM PC (или совместимых с ним).
Такие карты в России и СНГ производит несколько компаний: Мастер Кит (Москва), e-KIT Post Cards, ACE Lab (Н.Новгород), BVG Group (Москва), ЕПОС: PCI TESTCARD (Украина), IC Book: IC80 (Украина), Jelezo: Jpost Full (Украина), VL Comp: PC Analyzer (Белорусия). Есть и зарубежные решения, но у нас их не найти в свободной продаже.
POST Card PCI представляет собой плату расширения компьютера, которая может быть установлена в любой свободный PCI слот (33 МГц) и предназначена для отображения POST кодов, генерируемых BIOS»ом компьютера, в удобном для пользователя виде.
Условно все POST-карты можно разделит на серийные и внесерийные (комплекты для самостоятельной сборки).
Обзор существующих POST-карт
Рассмотрим недостатки POST-карт различных производителей.
Родоначальником производства PCI POST-карт в России считается компания ACE Lab, которая имеет большой опsn в производстве программно-аппаратных комплексов для диагностики и реионта компьютеров.
Мастер Кит
POST Card PCI NM9221 (набор для самостоятельной сборки)/BM9221 (готовая плата). Один недостаток — семисегментный индикатор смотрит «мордой вниз».
Достоинства данной POST Card: собрана на ПЛИС серии EPM3XXX, поддерживающей Hot-socketing (более надежна, так как меньше вероятность сжечь POST Card) и работающей на 3.3V (лучше совместимость с современными спецификациями PCI2.3 и PCI3.0), поддержка новых и старых чипсетов благодаря сменным прошивкам.
e-Kit_02
Недостатки данной POST Card: собрана на ПЛИС устаревшей серии EPM7XXX, не поддерживающей Hot-socketing (менее надежна, так как больше вероятность сжечь POST Card) и работающей на 5.0V (могут быть проблемы с современными PCI2.3 и PCI3.0).
ACE Lab PC-POST PCI-2
. Не удобно, что индикатор смотрит вниз, зато есть возможность выбрать один из 4х возможных портов, откуда будет считываться информация.
ACE Lab PC POWER PCI-2
— полнофункциональный программно — аппаратный комплекс, который позволяет выполнять ряд диагностических тестов, запускаемых из установленного на плате ПЗУ, ориентированных на выявление системных ошибок и конфликтов оборудования.
BVG Group Dual POST
. Достоинства: простая и дешевая ПОСТ-карточка. Сделана на базе ПЛИС Altera EPM3032ALC44-10. Несет на себе пять светодиодов (питание на PCI — -12V, +12V, +3.3V, +5V, и сигнал RESET) и два семисегментных индикатора с обоих сторон платы. Индикатор может показывать одну цифру — это значит, что на PCI слот, в который вставлена эта ПОСТка, тактирование не приходит.
Характерным недостатком данной карточки из-за её урезанности является снятие тактирования со слота PCI, в который установлена эта карточка после этапа POST, на котором происходит инициализация генератора (для Award BIOS — 26h), в результате чего посткоды перестают отображаться. Методы «борьбы» с этой болезнью следующие:
- Если в BIOS Setup присутствует пункт Detect DIMM/PCI Clock — перевод оного в Disable не даст генератору снять частоту с неиспользуемых слотов, в результате чего Dual POST будет работать «как нормальная» , показывая все «полагающиеся» посткоды.
- Если проверяемая плата имеет Sharing PCI Slots (обычно — дальние от процессора два разъема, у которых одно прерывание «на двоих»), то можно в один из них вставить любое «нормальное» PCI-устройство (видео, звуковую, сетевую и т.п.), а в другой — посткарточку. При инициализации генератор, увидев «полноценное» PCI-устройство на Sharing PCI Slots — часто (зависит от конкретной платы-биоса) не снимает тактирование с обоих, чем с успехом «воспользуется» Dual POST.
BVG Group POST Pro.
Вместо семисегментников используется ЖК-дисплей с бегущей строкой, но стоимость карты при этом около 300 у.е., что неоправданно высоко.
ЕПОС: PCI TESTCARD.
Продвинутая серия «Master» из полезных «наворотов» по большому счету позволяет дополнительно лишь выбирать переключателями на плате диагностический порт в диапазоне 0-3FFh, который используется для вывода POST-кодов. Недостатки данной POST Card: собрана на ПЛИС устаревшей серии EPM7XXX, не поддерживающей Hot-socketing (менее надежна, так как больше вероятность сжечь POST Card) и работающей на 5.0V (могут быть проблемы с современными PCI2.3 и PCI3.0). Имеется также информация о выводе неверных POST кодов на некоторых материнских платах.
IC Book: IC80
. Известный представитель «взрослых» посткарточек, отличительной особенностью которого является присутствие не только «наворотов» в области мониторинга, но также и уникальные (не имеющие аналогов) возможности по отладке системы в пошаговом режиме. Плата имеет несколько отличительных особенностей:
- Выбор адресов, используемых в целях диагностики: 80h/81h и 84h/85h, 378h, 1080h
- Вывод диагностических кодов выполняется на два индикатора
- Вывод информации на внешний индикатор
- Индикация напряжения Stand-By 3.3V
- Поддержка четности на шине PCI
- Поддержка серверных вариантов шины PCI
Небольшой недостаток: не совсем корректно работает пошаговый режим на новых платах.
Jelezo: Jpost Full.
Зависает на некоторых материнках (в основном GIGABYTE) в чёрный экран после первой перезагрузки.
VL Comp: PC Analyzer
. Простенький и дешевый пост-контроллер, изюминкой которого является совмещение в одном конструктиве сразу двух типов посткарточек — для ISA и для PCI.
POST Card PCI BM9222 с ЖК-диплеем
Сегодня мы рассмотрим PCI POST-карту нового поколения POST Card PCI BM9222 производства московской компании Маскер Кит.
Технические характеристики
- Напряжение питания: +5 В.
- Ток потребления, не более: 100 мА.
- Частота шины PCI: 33 МГц.
- Адрес диагностического порта: 0080h
- Индикация POST кодов: на ЖК-дисплее в две строки по 16 символов (первая строка – POST-код в шестнадцатеричном виде и через тире — тип БИОСа, вторая строка – описание ошибки в виде бегущей строки).
- Индикация сигналов PCI шины: светодиоды на лицевой стороне платы — RST (сигнал сброса PCI) и
- CLK (тактовый сигнал PCI).
- Индикаторы наличия напряжений питания PCI шины: +5V, +12V, -12V, +3,3V.
- Совместимость с материнскими платами чип-сетах: Intel, VIA, SIS.
- Размер печатной платы: 95.5 x 73.6 мм.
Конструкция
Конструктивно POST Card PCI выполнен на двусторонней печатной плате из фольгированного стеклотекстолита с размерами 95.5 x 73.6 мм. В целях улучшения электропроводности контактов устройства, ламели покрыты никелем.
Принцип работы POST Card PCI
При каждом включении питания компьютера, совместимого с IBM PC, и до начала загрузки операционной системы процессор компьютера выполняет процедуру BIOS под названием «Самотест по включению питания» — POST (Power On Self Test). Эта же процедура выполняется также при нажатии на кнопку RESET или при программной перезагрузке компьютера. Во избежание недоразумений здесь следует отметить, что в некоторых особых случаях с целью сокращения времени загрузки компьютера процедура POST может быть несколько урезана, например, в режиме «Quick Boot» или при выходе из режима «сна» Hibernate.
Основной целью процедуры POST является проверка базовых функций и подсистем компьютера (таких как память, процессор, материнская плата, видеоконтроллер, клавиатура, гибкий и жесткий диски и т. д.) перед загрузкой операционной системы. Это в некоторой степени застраховывает пользователя от попытки работать на неисправной системе, что могло бы привести, например, к разрушению пользовательских данных на HDD. Перед началом каждого из тестов процедура POST генерирует так называемый POST код, который выводится по определенному адресу в пространстве адресов устройств ввода/вывода компьютера. В случае обнаружения неисправности в тестируемом устройстве процедура POST просто «зависает», а предварительно выведенный POST код однозначно определяет, на каком из тестов произошло «зависание». Таким образом, глубина и точность диагностики при помощи POST кодов полностью определяется глубиной и точностью тестов соответствующей процедуры POST BIOS»а компьютера.
Следует отметить, что таблицы POST кодов различны для различных производителей BIOS и, в связи с появлением новых тестируемых устройств и чипсетов, несколько отличаются даже для различных версий одного и того же производителя BIOS. Таблицы POST кодов можно найти на соответствующих сайтах производителей BIOS: для AMI это http://www.ami.com , для AWARD — http://www.award.com , иногда таблицы POST кодов приводятся в руководствах к материнским платам.
Для отображения POST кодов в удобном для пользователя виде служат устройства под названием POST Card. Предлагаемая POST Card для шины PCI — это плата расширения компьютера, вставляемая (при выключенном питании!) в любой свободный PCI слот (33 МГц) и имеющая текстовый индикатор для отображения POST кодов и текстовой информации о текущем коде. Из особенностей работы данной POST Card хочется отметить то, что после включения питания компьютера и до появления первого активного сигнала RESET PCI на индикатор POST Card выводится сообщение приветствия “BM9222 MASTERKIT POSTCARD”.
Кроме того, на POST Card имеются светодиоды, отражающие состояния сигналов CLK и RST шины PCI.
Поиск неисправностей при помощи POST Card PCI
Последовательность действий при ремонте компьютера с использованием POST Card выглядит следующим образом:
1. Выключаем питание неисправного компьютера.
2. Устанавливаем POST Card в любой свободный PCI слот материнской платы.
3. Включаем питание компьютера.
4. При необходимости подстраиваем контрастность (при установке LCD экрана, для PLED – подстройка не требуется) изображения путем нажатия на кнопки (дальняя от материнской платы кнопка увеличивает контрастность, ближняя — уменьшает) или изменяем тип отображаемого БИОСа – путем нажатия и удерживания одной из кнопок и нажатия на вторую (после отжатия кнопок смениться тип БИОСа, отображаемый в первой строке индикатора после кода ошибки). Все вышеперечисленные настройки сохраняются при отключении питания и загружаются при следующей подаче напряжения на POST Card.
5. Читаем информацию на индикаторе POST Card – это POST код, на котором «зависает» загрузка компьютера, и его описание во второй строке.
6. Осмысливаем вероятные причины.
7. При выключенном питании производим перестановки шлейфов, модулей памяти и других компонентов с целью устранить неисправность.
8. Повторяем пункты 3-7, добиваясь устойчивого прохождения процедуры POST и начала загрузки операционной системы.
9. При помощи программных утилит производим окончательное тестирование аппаратных компонентов, а в случае плавающих ошибок — осуществляем длительный прогон соответствующих программных тестов.
При ремонте компьютера без использования POST Сard пункты 3-6 этой последовательности просто опускают и со стороны ремонт компьютера выглядит просто как лихорадочная перестановка памяти, процессора, карт расширения, блока питания, и в довершение всего — материнской платы.
Если в крупных фирмах имеется большой запас исправных комплектующих, то для мелких фирм и частных лиц ремонт компьютера путем установки заведомо исправных компонентов превращается в сложную проблему.
Как же на практике осуществляется ремонт компьютера с использованием POST-Card?
Прежде всего, при включении питания перед началом работы процедуры POST должен произойти сброс системы сигналом RST (RESET), что индицируется на POST Card сменой сообщения приветствия на другие сообщения POST Card. Если смены не происходит в течение 2-4 секунд (время отображения приветствия примерно 0.7 сек) или появилось одно из сообщений “NO CODES” или “RESET” на более чем 1 сек, то в этом случае рекомендуется немедленно выключить компьютер, вытащить все платы и кабели, а также модули памяти из материнской платы. В системном блоке необходимо оставить подключенной к блоку питания материнскую плату с установленным процессором и плату POST Card. Если при последующем включении компьютера нормально проходит сброс системы и появляются первые POST коды, то, очевидно, проблема заключается во временно извлеченных компонентах компьютера; возможно также, в неправильно подключенных шлейфах. Вставляя последовательно память, видеоадаптер, а затем и другие карты, и наблюдая за POST кодами на индикаторе, обнаруживают неисправный модуль.
Вернемся теперь к случаю, когда даже не проходит начальный сброс системы (на индикаторе POST Card не происходит смена сообщения приветствия другими сообщениями). В этом случае либо неисправен блок питания компьютера, либо сама материнская плата (неисправны цепи формирования сигнала RESET) или процессор не стартует. Точную причину можно установить, подсоединив к материнской плате заведомо исправный блок питания.
Рассмотрим теперь случай, когда сигнал сброса проходит, но никакие POST коды на индикатор не выводятся (удерживается сообщение “NO CODES”); при этом, как было описано ранее, тестируется система, состоящая только из материнской платы, процессора, POST Card и блока питания. Если материнская плата совершенно новая, то причина может быть заключена в неправильно установленных джамперах материнской платы. Если все джамперы и процессор установлены правильно, а материнская плата все же не запускается, следует заменить процессор на заведомо исправный. Если же и это не помогает, то можно сделать вывод о неисправности материнской платы либо ее компонентов (например, причиной неисправности может являться повреждение информация в FLASH BIOS).
Главным достоинством POST Card является то, что она не требует для своей работы монитор. При этом тестирование компьютера при помощи POST Card возможно на ранних этапах процедуры POST, когда еще не доступна звуковая диагностика. Еще одна немаловажная особенность – отображение POST-кодов на всех типах БИОСов, выводящих коды по адресу 0×0080), но не описанных в ПЗУ.
PLED индикатор
Данное устройство проверки комплектуется индикатором с отображающим элементом типа PLED. Преимущества такого типа дисплея в том, что он обладает высокой контрастностью и широким углом обзора – это очень важно потому что часто POST-плату приходится устанавливать в компьютер в корпусе, когда в соседних слотах установлены другие платы (сетевые, звуковые и пр.).
Многоязыковая поддержка
POST-карта позволяет выводить коды для различных типов БИОСов на различных языках (английский и русский по умолчанию). Смена типа БИОСа осуществляется путем одновременного нажания сразу обеих кнопок. Данная пост карта расшифровывает 3 вида БИОСов в 2 языках (всего 6 типов). Русифицированный БИОС в названии содержит строку “RU”.
Сами строки с описанием кодов располагаются с микросхеме 24С256 — 32кБ SEEPROM. Эта микросхема установлена в панельку, и опытные пользователи могут извлечь её и перепрограммировать другой (более новой или с другим языком) версией в случае её появления на сайте www.masterkit.ru. Обновление происходит регулярно, с отслеживанием тенденций развития компьютерной техники.
В случае если данный код не дешифрируется в вашей версии, то следует воспользоваться Интернетом для оперативного поиска расшифровки типа теста, а так же написать в компанию МастерКит письмо с указанием данного случая, и в последующей версии данный код будет уже включен.
Для перепрограммирования можно воспользоваться набором NM9215 (программатор) совместно с переходником на данный тип микросхем NM9216/4.
Проверка системного блока РС тестером Post Card PCI на практике
Последовательность тестирования компонентов компьютера следующая:
1. Тестирование процессора.
2. Проверка контрольной суммы ROM BIOS.
3. Проверка и инициализация контроллеров DMA, IRQ и таймера 8254.
После этой стадии становится доступной звуковая диагностика.
4. Проверка операций регенерации памяти.
5. Тестирование первых 64 КБ памяти.
6. Загрузка векторов прерываний.
7. Инициализация видеоконтроллера.
После этого этапа диагностические сообщения выводятся на экран.
8. Тестирование полного объема ОЗУ.
9. Тестирование клавиатуры.
10. Тестирование CMOS памяти.
11. Инициализация COM и LPT портов.
12. Инициализация и тест контроллера FDD.
13. Инициализация и тест контроллера HDD.
14. Поиск дополнительных модулей ROM BIOS и их инициализация.
15. Вызов загрузчика операционной системы (INT 19h, Bootstrap), при невозможности загрузки операционной системы- попытка запуска ROM BASIC (INT 18h); при неудаче- останов системы (HALT).
Прохождение тестов
При прохождении каждого из тестов POST генерирует POST-код, который записывается в специальный диагностический регистр. Информация, содержащаяся в диагностическом регистре, становится доступной для наблюдения при установке в свободный слот компьютера диагностической платы POST Card и отображается на семисегментном индикаторе в виде двух шестнадцатиричных цифр. Адрес диагностического регистра зависит от типа компьютера, в более старых версиях это: ISA, EISA- 80h, ISA-Compaq- 84h, ISA-PS/2- 90h, MCA-PS/2- 680h, 80h, некоторые EISA- 300h.
Прежде всего, необходимо определить фирму-производителя BIOS материнской платы. Это можно сделать либо по наклейке на микросхеме BIOS, либо по надписям, которые выводятся на экран аналогичной исправной материнской платой. В России и СНГ наиболее распространенными являются BIOS фирм AMI и AWARD. С приобретением некоторого опыта уже по первым POST кодам можно с уверенностью назвать производителя BIOS.
Таблицы POST кодов различны для различных производителей BIOS и, в связи с появлением новых тестируемых устройств и чипсетов, отличаются даже для различных версий одного и того же производителя BIOS.
Исторически сложилось, что значения POST кодов в соответствующих таблицах производителей BIOSов даются в виде шестнадцатиричных чисел в диапазоне 00h- FFh (0- 255 в десятичной системе счисления), поэтому для удобства использования таких таблиц необходимо обеспечить отображение POST кодов в шестнадцатеричном виде.
Коды неисправностей
Award Software International, Inc.
AwardBIOS V4.51PG Elite
Динамично развивающаяся компания Award Software в 1995 году предложила новое на то время решение в области низкоуровневого программного обеспечения AwardBIOS «Elite», более известное как V4.50PG. Режим обслуживания контрольных точек не изменился ни в широко распространенной версии V4.51, ни в раритетном исполнении V4.60. Суффиксы P и G обозначают соответственно поддержку механизма PnP и обслуживание функций энергосбережения (Green Function).
Выполнение стартовых процедур POST из ROM
C0
Запрет External Cache. Запрет Internal Cache. Запрет Shadow RAM. Программирование контроллера DMA, контроллера прерываний, таймера, блока RTC
C1
Определение типа памяти, суммарного объем и размещение по строкам
C3
Проверка первых 256К DRAM для организации Temporary Area. Распаковка BIOS в Temporary Area
C5
Выполняемый код POST переносится в Shadow
C6
Определение присутствия, объема и типа External Cache
C8
Проверка целостности программ и таблиц BIOS
CF
Определение типа процессора
Выполнение POST в Shadow RAM
03
Запрет NMI, PIE (Periodic Interrupt Enable), AIE (Alarm Interrupt Enable), UIE (Update Interrupt Enable). Запрет генерации программируемой частоты SQWV
04
Проверка формирования запросов на регенерацию DRAM
05
Проверка и инициализация контроллера клавиатуры
06
Тест области памяти, начинающейся с адреса F000h, где размещен BIOS
07
Проверка функционирования CMOS и батарейного питания
BE
Программирование конфигурационных регистров Южного и Северного Мостов
09
Инициализация кэш-памяти L2 и регистров расширенного управления кэшированием процессора Cyrix
0A
Генерация таблицы векторов прерываний. Настройка ресурсов Power Management и установка вектора SMI
0B
Проверка контрольной суммы CMOS. Сканирование шины PCI устройств. Обновление микрокода процессора
0С
Инициализация контроллера клавиатуры
0D
Поиск и инициализация видеоадаптера. Настройка IOAPIC. Измерения тактовой частоты, установка FSB
0E
Инициализация MPC. Тест видеопамяти. Вывод на экран Award Logo
0F
Проверка первого контроллера DMA 8237. Определение клавиатуры и ее внутренний тест. Проверка контрольной суммы BIOS
10
Проверка второго контроллера DMA 8237
11
Проверка страничных регистров контроллеров DMA
14
Тест канала 2 системного таймера
15
Тест регистра маскирования запросов 1-го контроллера прерываний
16
Тест регистра маскирования запросов 2-го контроллера прерываний
19
Проверка пассивности запроса немаскируемого прерывания NMI
30
Определение объема Base Memory и Extended Memory. Настройка APIC. Программное управление режимом Write Allocation
Подготовка таблиц, массивов и структур для старта операционной системы
31
Основной отображаемый на экране тест оперативной памяти. Инициализация
32
Выводится заставка Plug and Play BIOS Extension. Настройка ресурсов Super I/O. Программируется Onboard Audio Device
39
Программирование тактового генератора по шине I2C
3C
Установка программного флага разрешения входа в Setup
3D
Инициализация PS/2 mouse
3E
Инициализации контроллера External Cache и разрешения Cache
BF
Настройка конфигурационных регистров чипсета
41
Инициализация подсистемы гибких дисков
42
Отключение IRQ12 если PS/2 mouse отсутствует. Выполняется программный сброс контроллера жестких дисков. Сканирование других IDE устройств
43
Инициализация последовательных и параллельных портов
45
Инициализация сопроцессора FPU
4E
Индикация сообщений об ошибках
4F
Запрос пароля
50
Восстановление ранее сохраненного в ОЗУ состояния CMOS
51
Разрешение 32 битного доступа к HDD. Настройка ресурсов ISA/PnP
52
Инициализация дополнительных BIOS. Установка значений конфигурационных регистров PIIX. Формирование NMI и SMI
53
Установка счетчика DOS Time в соответствии с Real Time Clock
60
Установка антивирусной защиты BOOT Sector
61
Завершающие действия по инициализации чипсета
62
Чтение идентификатора клавиатуры. Установка ее параметров
63
Коррекция блоков ESCD, DMI. Очистка ОЗУ
FF
Передача управления загрузчику. BIOS выполняет команду INT 19h
Рассмотрим процедуру тестирования системного блока персонального компьютера. Установим тестер BM9222 в свободный PCI слот материнской платы. Включим питание. BIOS — программа загрузки компьютера, хранящаяся в ПЗУ материнской платы, производит последовательный опрос всех включенных в системный блок устройств (процессор, модули памяти, винчестер, видеокарта, контроллеры, оптический привод, внешняя периферия: клавиатура мышь и т.д.).
Если все периферийные устройства системного блока исправны, то после окончания загрузки на экране тестера загорится следующая надпись FFh.
«Введем неисправность» в системный блок. Выключим питание и удалим из системного блока модуль памяти.
После подачи питания и загрузки компьютера на экране тестера появляется код ошибки оперативной памяти 4Eh.
Тестер точно определил, что память в системном блоке «неисправна». После выключения питания и возвращения модуля памяти на свое место тестер показал исправность персонального компьютера.
Аналогично можно определить коды ошибок других периферийных устройств и быстро устранить неисправность, заменив неисправный блок на исправный.