Текущее время: 25 апр 2024 22:57


Часовой пояс: 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
Сообщения: 2107
Откуда: 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 КБ]
Скачиваний: 1806
Вернуться к началу
 Профиль  
Ответить с цитатой  
 Заголовок сообщения: 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], goodfix, Google [Bot], puntolimpio, Yandex [Bot], Фрекауцан Михаил(дядьмиша)


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

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