Текущее время: 28 мар 2024 21:22


Часовой пояс: UTC + 4 часа




Начать новую тему Ответить на тему  [ Сообщений: 8 ] 
Автор Сообщение
 Заголовок сообщения: Стартовые POST-коды InsydeBIOS H2O
СообщениеДобавлено: 15 фев 2012 23:20 
Аватара пользователя
Не в сети

Зарегистрирован: 15 мар 2007 16:02
Сообщения: 80
Откуда: Киев
Специально для сайта http://www.notebook1.ru/
По материалам IC Book Labs.

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

С появлением нового продукта от Insyde Software — EFI BIOS InsydeH2O —сложностей у ремонтников только добавилось. К сожалению, регулярность использования POST-кодов (или, по-модному, Status-кодов) в этом BIOS желает лучшего. Уже несколько лет из сервис-мануалов ноутбуков Acer, Gateway, eMachines известен «классический перечень» диагностических последовательностей, описывающие самый ранний этап старта EFI, так называемую Sec-фазу (от слова Security). Происхождение названия и его смысл оставим в покое. Отметим лишь, что по сути — все это напоминает загрузочный блок.

Рассмотрим таблицу POST Code Reference Table, с самого начала описывающего именно SEC-фазу. В зависимости от установки параметра NO_EVICTION_MODE_DEBUG, разрешающего генерацию POST-кодов, выбирается сценарий диагностики платформы.
Код:
; Set to 1 to enable debug
;
NO_EVICTION_MODE_DEBUG   EQU   1

Из этого следует, что там где Debug-режим запрещен, по старту в диагностическом порту в принципе не могут быть зарегистрированы POST-коды, возникающие в SEC-фазе. Кроме того, в отличие от «классического перечня» контрольных точек, который может как дополняться, так и сокращаться, существует семантическая зависимость значений POST от производителя центрального процессора. Сегодня можно с уверенностью сказать, что решения на AMD тяготеют к выдаче в 80-й порт в стартовой фазе диагностических кодов, начинающихся со значения C0h, в то время когда платформы на Intel используют новую кодификацию, начинающуюся с POST 01.

Примечание!
Для ранних релизов InsydeH2O характерно однообразное применение POST-кодов, наблюдаемых в SEC-фазе BIOS, в равной степени применимых к платформам различных производителей. Все они тяготеют к классической кодификации, известной из ряда руководств мобильных платформ.


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

«Классика»
C0
Запрет кэш-памяти, предварительная инициализация MTRR, FPU и системных регистров процессора.
C1
Выполнение инструкции CPUID для определения Processor Family. Выполнение model-specific процедур для инициализации процессора.
C2
Инициализация регистров MTRR (Memory Type and Range Registers) для управления кэш-памятью. Предварительная проверка кэш-памяти записью и последующим контрольным считыванием.
C3
Один из этапов процедуры инициализации временного ОЗУ в кэш-памяти. Разрешатся кэширование читаемых данных. В регистре CR0 обнуляются биты CD и NW.
C4
Один из этапов процедуры инициализации временного ОЗУ в кэш-памяти. Тэги кэш памяти загружаются таким образом, чтобы диапазон адресов, в котором создается временное ОЗУ, оказался кэшированным. Для этого выполняется чтение или запись данного диапазона.
C5
Один из этапов процедуры инициализации временного ОЗУ в кэш-памяти. Запрещается кэширование данных. В регистре CR0 устанавливаются биты CD и NW. Это запрещает размещение в кэш-памяти новых данных, но не приводит к удалению из кэш-памяти ранее кэшированных данных, они продолжают использоваться, и доступны для чтения и записи, пока не будет выполнена явная очистка кэш-памяти, например инструкцией WBINVD. Намеренно не сделав такую очистку, мы и получаем Cache as RAM.
CE
Инициализация Application Processors.
CF
Pass Control into the PEI Core
Завершена инициализации временного ОЗУ в кэш-памяти (Cache as RAM). Для дальнейшей работы выполняется дополнительная настройка MTRR.

«Модерн»
01
Инициализация Bootstrap Processor для работы в защищенном режиме (Protected Mode). Загрузка адреса глобальной дескрипторной таблицы (GDT) и переход в защищенный режим. Инициализация регистров CR0, CR4, установка селекторов сегментов в регистрах DS, ES, FS, GS, SS.
02
Инициализация механизма доступа в [url=http://icbook.com.ua/press/memory_mapped_configuration/index.html]конфигурационное пространство посредством Memory Mapped I/O[/i].
03
Инициализация механизмов доступа к регистровому блоку Root Complex Register Block, входящему в состав микросхемы PCH (Platform Control Hub).
04
Проверка BSP-статуса процессора, выполняющего данный код.
05
Установка Ratio максимального множителя.
06
Инициализация технологии Hyper Threading.
07
Запись блока CPU Micro Code.
08
Анализ BIST-информации (опционально)
09
Инициализация регистров MTRR (Memory Type and Range Registers) для временного использования кэш-памяти в качестве оперативной памяти.
0A
Инициализация стека, загрузка адреса стека в регистр ESP. Создание стекового фрейма, хранящего базовый адрес и размер стека.
0B
Запуск Pre-EFI Initialization Phase.
D0
Ошибка при проверке оперативной памяти, организованной в кэш
D1
Ошибка конфигурирования платформы
0C
Pass Control into the PEI Core

POST-коды CRC
На современных платформах в стартовый SEC-модуль входит подпрограмма инициализации центрального процессора, что продиктовано интеграцией в его состав контроллера памяти и других аппаратных ресурсов. Это фрагмент кода называется CPU Reference Code, сокращенно CRC. Аналогия с избыточным циклическим кодом (CRC) здесь служит плохим советчиком, так как не имеет ничего общего с инициализацией CPU.

Процедура выполнения CPU Reference Code сопровождается выводом в смежные диагностические порты 80h и 81h шестнадцатибитной информации в формате слова, где старший байт имел фиксированное значение 0Ch. В связи с тем, что не все POST-карты отображают состояние 81-го порта, а значение 80-го порта может совпадать с «обновленными» POST-кодами SEC-фазы, такая ситуация может привести к недоразумениям в диагностике возможных причин останова.

0C01
Доступ к регистрам конфигурационного пространства в составе CPU разрешен
0C02
Ошибка связанная с тем, что установленный процессор (процессоры) не поддерживают конфигурацию шин QuickPath Interconnect
0C04
Ошибка инициализации No-Eviction Mode и режима использования Cache-as-RAM
0C08
Инициализация регистров, управляющих шиной Common System Interface
0C09
Инициализация контроллера памяти в составе центрального процессора
0C10
Определяется необходимость выполнения системного Reset
0C1F
Корректное завершение выполнения CPU Reference Code


Вернуться к началу
 Профиль WWW  
Ответить с цитатой  
 Заголовок сообщения: Re: Стартовые POST-коды InsydeBIOS H2O
СообщениеДобавлено: 15 фев 2012 23:28 
Мастер и Администратор
Аватара пользователя
Не в сети

Зарегистрирован: 11 ноя 2005 11:31
Сообщения: 15489
Откуда: Украина
Город: Odessa
:co_ol:


Вернуться к началу
 Профиль ICQ WWW  
Ответить с цитатой  
 Заголовок сообщения: Re: Стартовые POST-коды InsydeBIOS H2O
СообщениеДобавлено: 16 фев 2012 00:06 
Мастер
Аватара пользователя
Не в сети

Зарегистрирован: 08 июл 2009 11:57
Сообщения: 2106
Откуда: Krasnodar
Город: Krasnodar
+ в "репу"
... задумался.... кое что из "прошлой жизни" прояснилось.

_________________
Ремонт ноутбуков в Краснодаре. +7 961 5O8-57-55
Изображение


Вернуться к началу
 Профиль ICQ  
Ответить с цитатой  
 Заголовок сообщения: Re: Стартовые POST-коды InsydeBIOS H2O
СообщениеДобавлено: 16 фев 2012 03:42 
Мастер
Аватара пользователя
Не в сети

Зарегистрирован: 29 дек 2008 10:52
Сообщения: 725
Откуда: Чита
:co_ol:
есть над чем подумать!

_________________
В делах любых, при максимуме сложностей, Подход к проблеме все-таки один: Желанье - это множество возможностей, А нежеланье - множество причин.


Вернуться к началу
 Профиль ICQ WWW  
Ответить с цитатой  
 Заголовок сообщения: Re: Стартовые POST-коды InsydeBIOS H2O
СообщениеДобавлено: 16 фев 2012 03:47 
Не в сети

Зарегистрирован: 16 ноя 2011 23:49
Сообщения: 302
Город: Polotsk
если интересно, могу выложить "Insyde three tables of R3.5 NAPA CRB"


Вернуться к началу
 Профиль  
Ответить с цитатой  
 Заголовок сообщения: Re: Стартовые POST-коды InsydeBIOS H2O
СообщениеДобавлено: 16 фев 2012 08:44 
Аватара пользователя
Не в сети

Зарегистрирован: 15 мар 2007 16:02
Сообщения: 80
Откуда: Киев
makarog писал(а):
если интересно, могу выложить "Insyde three tables of R3.5 NAPA CRB"

Это всегда интересно. Будет возможность сравнить.


Вернуться к началу
 Профиль WWW  
Ответить с цитатой  
 Заголовок сообщения: Re: Стартовые POST-коды InsydeBIOS H2O
СообщениеДобавлено: 16 фев 2012 13:15 
Не в сети

Зарегистрирован: 16 ноя 2011 23:49
Сообщения: 302
Город: Polotsk
выкладываю :)


Вложения:
NAPA POST Code.pdf [223.96 КБ]
Скачиваний: 1804
Вернуться к началу
 Профиль  
Ответить с цитатой  
 Заголовок сообщения: Re: Стартовые POST-коды InsydeBIOS H2O
СообщениеДобавлено: 16 фев 2012 16:35 
Аватара пользователя
Не в сети

Зарегистрирован: 15 мар 2007 16:02
Сообщения: 80
Откуда: Киев
С этим нужно разбираться, как с любым ориентированным на Intel решением Insyde. Кстати, у Intel есть несколько десктопных решений с InsydeH20, которые весьма специфичны в части POST-кодов. У нас в качестве стендовой машинки стоит D201GLY, по которой в пошаговом режиме тестируются контрольные точки BIOS.


Вернуться к началу
 Профиль WWW  
Ответить с цитатой  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 8 ] 


Часовой пояс: UTC + 4 часа


Кто сейчас на конференции

Зарегистрированные пользователи: Bing [Bot], Google [Bot], Mail.ru [Bot], Yandex [Bot]


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Перейти:  
Создано на основе phpBB® Forum Software © phpBB Group
Русская поддержка phpBB