Skip to content

Ролик 5.4. Частичный инит хаба, ME контроллер. — Transcript

Ролик объясняет структуру и этапы инициализации ME контроллера Intel, основанный на практическом опыте автора.

Key Takeaways

  • ME контроллер играет ключевую роль в ранней инициализации аппаратного окружения платы.
  • Документация по Intel ME ограничена, поэтому практический опыт важен для понимания технологии.
  • ME контроллер использует специализированные микроконтроллеры и ОС, оптимизированные для энергоэффективности.
  • Криптопроцессор и внутренняя шина обеспечивают безопасность и изоляцию данных внутри ME контроллера.
  • RTC контроллер необходим для запуска и тактирования ME контроллера.

Summary

  • Видео посвящено предварительной инициализации чипа и роли ME контроллера на раннем этапе запуска платы.
  • ME контроллер располагается в чипе хабе или хабовой секции SLC и отвечает за настройку аппаратного окружения.
  • Информация о технологии Intel ME ограничена из-за закрытости и отсутствия полной документации от Intel.
  • Автор делится практическим опытом и анализом событий, связанных с работой ME контроллера.
  • Рассматривается структура ME контроллера, включая микроконтроллеры ARC Tangent 3/5 и ARC600, а также операционные системы FreeRTOS и Minix.
  • Обсуждаются основные компоненты контроллера: кэш кода, кэш данных, внутренняя шина и криптопроцессор с поддержкой SHA-256.
  • Поясняется роль RTC контроллера в формировании тактового сигнала для ME контроллера.
  • Приводится последовательность запуска программных модулей ME контроллера, включая этапы загрузки и инициализации ядра системы.
  • Отмечается, что обновление памяти ME контроллера не предусмотрено производителем.
  • Видео сочетает теоретическую часть с практическими наблюдениями и анализом.

Full Transcript — Download SRT & Markdown

00:01
Speaker A
Всем привет, друзья! Сегодня тема ролика у нас будет предварительно инициализация чипа, и поговорим мы в этом ролике про ME контроллер, так как именно он на раннем этапе запуска платы осуществляет настройку и инициализацию своего аппаратного окружения. Прежде всего, контроллер располагается в самом чипе хабе, ну либо же в хабовой секции SLC. Поговорим мы в ролике про структуру ME контроллера, его запуск, ну и соответственно разберем этапы инициализации, которые ME контроллер выполняет на ранней стадии запуска платы. Итак, технология Intel ME.
00:18
Speaker A
самом чипе хабе Ну либо же в хабовой секции slc поговорим мы в ролике про структуру имея контроллера его запуск ну и соответственно разберем этапы инициализации которые имеют контроллер выполняет на раннем на ранней стадии запуска палаты Итак технология Intel PE
00:42
Speaker A
Сразу хочу сказать, что по данному вопросу, по всем вопросам, которые касаются этой технологии, у меня, к сожалению, полного объема информации нет. Так как это технология закрытая, со всеми вытекающими последствиями, и информации в свободном доступе просто напросто нет. Ну, по крайней мере важной информации.
01:02
Speaker A
информации даже в даташитах от компании Intel вы сможете обнаружить лишь парочку страниц кратким описанием данного вопроса Ну вот как пример таташит на хаб 7 серии вот пожалуйста Одна страница полноценная текста далее на вторая страница следует где 70 процентов листа
01:22
Speaker A
Даже в даташитах от компании Intel вы сможете обнаружить лишь парочку страниц с кратким описанием данного вопроса. Ну вот, как пример, даташит на хаб 7 серии. Вот, пожалуйста, одна страница полноценного текста, далее на второй странице следует, где 70 процентов листа занимает картинка, и соответственно вторую половину занимает текст. На этом описание работы технологии заканчивается.
01:46
Speaker A
важнейшие вопросы Ну допустим когда работает имя контроллер Какие необходимые условия наплатить для того чтобы он был запущен На каких этапах какие функции Он выполняет Какая последовательность его запуска Какие необходимые условия для того чтобы он выполнял тот или иной этап
02:05
Speaker A
Разумеется, есть еще и отсылки, то есть упоминания этой технологии, но по сути это лишь краткое знакомство пользователя с этой технологией, в принципе с работой контроллера в целом. А найти ответы на важнейшие вопросы, ну допустим, когда работает ME контроллер, какие необходимые условия на плате для того, чтобы он был запущен, на каких этапах какие функции он выполняет, какая последовательность его запуска, какие необходимые условия для того, чтобы он выполнял тот или иной этап предварительной детализации — такой информации, к сожалению, нет. И привязку, соответственно, к железу вы также не найдете.
02:31
Speaker A
будет печаль беда что по факту мы и наблюдаем одним словом в этом ролике я не смогу оперировать информацией из datashita делать отсылки информации из datashita Я лишь смогу с вами поделиться своим практическим опытом эту информацию которая соответственно я смог собрать по
02:51
Speaker A
К событиям, которые происходят во внешнем мире чипа, это, к сожалению, накладывает свой отпечаток на полноту информации. Да, раз нет документации от Intel, соответственно, в интернете тоже будет печаль-беда, что по факту мы и наблюдаем. Одним словом, в этом ролике я не смогу оперировать информацией из даташита, делать отсылки к информации из даташита. Я лишь смогу с вами поделиться своим практическим опытом, этой информацией, которую, соответственно, я смог собрать по данному вопросу.
03:12
Speaker A
практический опыт Вот и в любом случае каждый из вас сталкивается при работе с платами на чипоход Intel с вопросом который напрямую связан с этой технологией с технологией me и как раз таки я когда такие ситуации попадаю я соответственно снимаю максимум
03:31
Speaker A
Поэтому, исходя из этой ситуации, я не претендую на истину последней инстанции и заблаговременно вас предупреждаю, что в этом ролике я делюсь исключительно своей информацией. Возможно, в каких-то вопросах я могу и ошибаться, но тем не менее я опираюсь прежде всего на практический опыт. Вот и в любом случае каждый из вас сталкивается при работе с платами на чипах Intel с вопросом, который напрямую связан с этой технологией, с технологией ME. И как раз таки, когда такие ситуации попадаются, я, соответственно, снимаю максимум информации с такой платы, анализирую ее, ну и какие-то выводы делаю. Как раз этими выводами, практическим опытом, я в этом ролике с вами буду делиться.
03:50
Speaker A
составе Чипа Сейчас вы видите картинку из даташита здесь В общих чертах представлен и мне контроль То бишь те части из которых он по факту состоит в абсолютно любом чипе Разумеется что этих частей может быть и больше но тем не
04:04
Speaker A
Что ж, давайте приступать. Начало — немного теории, а потом уже перейдем к практике. Начнем мы, пожалуй, со структуры этого контроллера в составе чипа. Сейчас вы видите картинку из даташита. Здесь в общих чертах представлен ME контроллер, то есть те части, из которых он по факту состоит в абсолютно любом чипе. Разумеется, что этих частей может быть и больше, но тем не менее основные присутствуют в абсолютно любом чипе.
04:26
Speaker A
Чипа включительно Intel для me контроллера использует микроконтроллер от компании арт-компакт который именуется как арктангенс и 5 до этого кстати использовался и четвертый но с появлением чипов прежде всего комбинированного процессора для мобильных платформ Разумеется энергоэффективного синдром хацл и хабов
04:49
Speaker A
И начнем, друзья, мы рассмотрим блок-схему упрощенную, как раз таки с сердцем системы — с микроконтроллером. Вот прямоугольник синий под подписью процессор, начиная с платформы контроллер H5 серии, это наши хабы 5, 5, 7 и по 7 серию чипа включительно. Intel для ME контроллера использует микроконтроллер от компании Арт-Компакт, который именуется как Арктангенс 5. До этого, кстати, использовался и четвертый, но с появлением чипов, прежде всего комбинированного процессора для мобильных платформ, разумеется, энергоэффективного синдрома HACL и хабов 8 серии, Intel доработал ME контроллер.
05:19
Speaker A
Что же касается операционной системы для intelme то во всех случаях которые я перечислил используется Linux который называется fradex RT OS то есть работает связка либо ark Tang 3/5 + freddx RS в случае с хабами начиная с 5 серии по
05:39
Speaker A
Прежде всего изменения коснулись ядра системы микроконтроллера, и Intel отдала предпочтение более совершенному, прежде всего с точки зрения энергоэффективности, микроконтроллеру ARC600, также от компании Арт-Компакт. На этом микроконтроллере строится именно контроллер в хабах 9 серии Broadwell.
06:03
Speaker A
глобальные случились во-первых они затронули сердце контроллера микроконтроллер был заменен на новые 32-битные под названием и также изменения коснулись операционки она также Lin но уже совершенно другая называется она minix такая связка minix Plus minite функционирует во всех современных чипах от Intel Разумеется на
06:32
Speaker A
Что же касается операционной системы для Intel ME, то во всех случаях, которые я перечислил, используется Linux, который называется FreeRTOS. То есть работает связка либо ARCTangent 3/5 + FreeRTOS в случае с хабами, начиная с 5 серии по седьмую, либо же связка ARC600 плюс FreeRTOS — это в случае хабов восьмой, девятой серии и соответственно со всей системой Haswell и ядром Broadwell.
06:54
Speaker A
микроконтроллерами системой мы с вами вопрос закрыли теперь что касается оставшихся частей и контроллера кэш кэш кода кэш данных куда же без кэша далее шина это у нас внутренняя шина которая объединяет все устройствами контроллера это шина не имеет связи с
07:14
Speaker A
Следующее глобальное обновление контроллер получил с выходом чипов синдром Skylake 6 поколения и хабов 100 серии. Там изменения поистине глобальные случились. Во-первых, они затронули сердце контроллера — микроконтроллер был заменен на новый 32-битный под названием, и также изменения коснулись операционки. Она также Linux, но уже совершенно другая, называется она Minix. Такая связка Minix плюс Minite функционирует во всех современных чипах от Intel.
07:39
Speaker A
независимой она интегрирована структуру самого Чипа и она программируется на заводе обновление этой памяти не предусмотрено производителем не хранятся начальные инструкции контроллер далее У нас контроллер который отвечает за прямой доступ к интернету Селинг input так контроллер прямого доступа к
08:07
Speaker A
Разумеется, на всем пути Intel допиливает как софт, так и соответственно дорабатывает железо. Как и где соответственно изменения либо доработки осуществляются, мы скорее всего никогда не узнаем, потому что Intel не будет публиковать, мне так кажется, информацию по данным вопросам. В принципе, с микроконтроллерами и системой мы с вами вопрос закрыли.
08:29
Speaker A
является хастом и это шина предназначена для прямого взаимодействия операционной системы и м.е контроллер также мы не будем обнять внимание Крипто процессор который поддерживает алгоритм sha-256 и SR и Крипто процессор отвечает за калькуляцию ключей необходимых для проекта цифровой подписи а также отвечает за шифрование
08:57
Speaker A
Теперь что касается оставшихся частей ME контроллера: кэш кода, кэш данных — куда же без кэша. Далее шина — это у нас внутренняя шина, которая объединяет все устройства контроллера. Эта шина не имеет связи с внешним миром, и соответственно на эту шину извне повлиять никак нельзя.
09:18
Speaker A
который входит ее контроллер к сожалению так-то просто и найти но по факту эти компоненты они присутствуют абсолютно любом мье контроллере в хабе либо же в хабавой секции теперь друзья что касается вопроса запусками контроллера Или другими словами когда он начинает
09:35
Speaker A
Как вы видите, на этой шине у нас болтается, во-первых, оперативная память ME контроллера статического типа и контроллер этой памяти. Далее видим здесь ROM-память — это ME ROM-память, которая является энергонезависимой, она интегрирована в структуру самого чипа и она программируется на заводе. Обновление этой памяти не предусмотрено производителем. В ней хранятся начальные инструкции контроллера.
09:57
Speaker A
состоянии и для того чтобы ему в это состояние перейти необходимо наличие питающего напряжения на плате и работы rtc секции так как именно rtc контроллер который входит состав Чипа хаба либо хаба секции отвечает за формирование тактового сигнала для логики меди
10:15
Speaker A
Далее у нас контроллер, который отвечает за прямой доступ к памяти — DMA контроллер, контроллер шины HECI. Эта шина позволяет взаимодействовать напрямую, отмечу, напрямую хоста и ME контроллера. То есть в роли хоста выступает либо BIOS на раннем этапе, но после загрузки операционной системы у нас соответственно уже операционной системой является хост, и эта шина предназначена для прямого взаимодействия операционной системы и ME контроллера.
10:34
Speaker A
серий под контроллер обладающий персональным IP mac-адресом и имеющий прямой доступ интернет-контроллер по факту прилетевший пакетик Извне по сети адресуемые контроллеру может вызвать соответственно реакцию соответствующую это событие контроллер который запустит плату и начнет выполнять сценарии которые заложены в те команды поступившие Извне допустим
11:03
Speaker A
Также мы не будем обнимать внимание криптопроцессор, который поддерживает алгоритмы SHA-256 и SR. Криптопроцессор отвечает за калькуляцию ключей, необходимых для проекта цифровой подписи, а также отвечает за шифрование содержимого в модулях ME региона. Ну и также отвечает за шифрование информации.
11:23
Speaker A
немножко там замешанный спецслужбы то Вполне себе такой сценарий развития событий очень-очень хорошо вяжется с таким положением где но тем не менее несмотря на запуски мне контроллера Да на этапе формирования дежурки запуска rtc контроллера хаба либо хабовой секции с Россией любом
11:49
Speaker A
В состав любого контроллера также входит контроллер прерываний, Watchdog таймер и прочие компоненты, которых может быть различное количество. К сожалению, точной информации о полном суповом наборе, который входит в ME контроллер, к сожалению, так-то просто и найти, но по факту эти компоненты присутствуют в абсолютно любом ME контроллере в хабе либо же в хабовой секции.
12:17
Speaker A
инструкции me Controller не выполняет все и сразу выполнив малую часть он соответственно находится в режиме ожидания получения сигнала подтверждения от pmc который входит в состав это контроллер электропитание Пауэр менеджмент контроля о том что все условия для дальнейшего продолжения
12:38
Speaker A
Теперь, друзья, что касается вопроса запуска ME контроллера, или другими словами, когда он начинает работать, какие условия для этого на плате должны быть созданы. И судя по информации даташитов, точнее по обрывкам информации из других источников и по моим личным убеждениям, можно предположить, что ME контроллер запускается уже в дежурке, находясь при этом, так сказать, в будущем состоянии.
12:57
Speaker A
ждет этого сигнала вот мультиконтроллера я этот сигнал уже упоминал в ролике про обращение к SPF флешки различных микросхем на плате вы уже прекрасно знаете звучит он как писечка в руке либо может называться pmcore Power Key функцию Это сигнал выполняет
13:13
Speaker A
И для того, чтобы ему в это состояние перейти, необходимо наличие питающего напряжения на плате и работы RTC секции, так как именно RTC контроллер, который входит в состав чипа хаба либо хабовой секции, отвечает за формирование тактового сигнала для логики ME контроллера. Я так понимаю, что в даташите от Intel это состояние звучит как "cold on always correct" — на связи всегда. Ну и в принципе это похоже на правду, а если вз...
13:35
Speaker A
соответственно проинформирует контроллер а то что все условия для дальнейшего выполнения инструкции на плате есть только после этого me контроллер осуществит инициализацию контроллера входящего в состав хабада далее произведет обращение к SPI флешке по определенному адресу для того чтобы проверить цифровую подпись заголовка
14:04
Speaker A
ftpr раздела если цифровая подпись будет проверена и все будет в норме то соответственно ме контроллер загрузит первый модуль из FTP раздела me региона из 5 Flash называется этот модуль RB отвечает он за проверку контрольных сумм модулей которые Он загружает из 5 Flash
14:27
Speaker A
все эти модули жизненно важны для корректного запуска платы и все как один эти модули располагаются в теперь разделе me региона я не буду забегать вперед Давайте по порядку начиная с проверки цифровой подписи будем разбирать все процессы которые происходят на плате после получения
14:53
Speaker A
где контроллера подтверждение от pmc о том что соответственно все условия на плате сформированы для начала этой процедуры перед вами сейчас большой семпл при помощи которого крайне удобно наблюдать за очередностью происходящего на плате в том числе и при участии
15:13
Speaker A
контроллера И как вы видите Заветная активность ношения SPI наблюдается только лишь после того как пенсии в составе хаба получит сигнал сечков от мульта то есть мульт выдает сигнал его получает передает информацию и контроллеру и тот лезет проверять цифровую под в семье регион как он эту
15:32
Speaker A
цифровую подпись проверяет самый контроль скажу вам сразу ребят что в этом вопросе я еще тот специалист поэтому объясняю именно так как сам этот я понимаю Итак контроллер мы знаем что имеет своем составе миром память где производитель производства Разумеется в эту память
15:55
Speaker A
прописывает стартовый код без начальной инструкции помимо стартового кода он туда еще кладет хэш публичного ключа при помощи публичного ключа и осуществляется проверка цифровой подписи как это происходит у меня есть картинка с последовательностью событий и видим Что первым шагом
16:17
Speaker A
который делает мир контроллер является загрузка манифеста при помощи которого Крипто процессор будет рассчитывать Хеш публичного ключа rsa после расчета результат будет сравниваться с тем что присутствует в м.е ROM памяти если соответственно не совпадают эти хешек ключей да то тогда тогда этот код будет
16:43
Speaker A
считаться подписанным Intel и такой код имея контроллер исполнять будет А вот если будет не совпадение то в таком случае контроллер не подписаны код исполнять не будет И что из этого получится вы соответственно узнаете в практической части где намерена грохнул
17:02
Speaker A
премьера регион ну и соответственно будем наблюдать что будет происходить Если же результат совпали то соответственно после проверки у нас не контроллер осуществляет загрузку первого модуля иди компрессию его опять же Привет криптопроцессор он всех этих делах принимает самое что есть прямое
17:25
Speaker A
участие и расчет ключей декомпрессия содержимого модулей и вот первый модуль который будет загруженными контроллером называется рбм модуль RB как я уже говорил ранее отвечает за проверку контрольных сумм модулях которые Он загружает это модуль стены библиотеки систем lideryb модуль ядра и модуль первого
17:49
Speaker A
процесса который запускается ядро перед вами сейчас последовательность запуска программных модулей me и здесь прослеживается четкая последовательность сначала выполняется Нейрон далее выполняется airbay RB готовит среду загружая все необходимые компоненты и соответственно запускается по финалу ядро системы после запуска ядра системы
18:16
Speaker A
выполняется первые сценарий это запуск нулевого процесса коим является программа bringcap платформ сокращенного аббревиатуре она звучит как баб и вот как раз таки баб у нас отвечает за нитилизацию всего аппаратного окружения начиная СМС контроллером контроллер электропитания Вот на этом этапе
18:42
Speaker A
начинается все самое интересное потому что по факту как раз таки инициализация частично Чипа начинается вот с этого самого момента запуска программы bringcap платформ кстати после запуска этой программы ядро после инициативе больше ничего не запускает далее всё управление берет свои руки Bring Up
19:04
Speaker A
платфор именно эта программа и запускает все последующие процессы м.е мы помимо этого Разумеется производит инициализацию аппаратного окружениями контроллера первая стадия по сути как бы можно разбить эту процедуру на несколько стадий на ранней стадии Разумеется проходит детализация контроллеры во внутри самого
19:26
Speaker A
Чипа Ну а потом имея контроллер пытается проинициализировать игроков во внешний мир прежде всего центральные процессор и соответственно оперативную память Давайте по порядку пожалуй самого начала начнем платформ первая стадия инициализации на этой стадии создается диагностическая файловая система в оперативной памяти
19:49
Speaker A
контроллера происходит инициализация контроллера электропитания То бишь pmc в хабе и завершение этого баб получаете информацию от контроллера электропитания что привело к этому запуску платформы допустим Если вы нажали кнопку включения то pmc передаст имея контроллеру то что запуск системы обусловлен нажатием
20:19
Speaker A
кнопки включения на следующей стадии на второй происходит инициализация меня контроллером integrated Clock Controller тонус контроллер который отвечает за формирование тактовых сигналов для основных потребителей на материнской плате также На этом этапе происходит загрузка рабочего профиль для этого контроллера что немаловажно ребят на
20:41
Speaker A
второй стадии ме инициализирует bootboard самом деле после инициализации бульвар если установлен чип Ну допустим slc где уже в User прописан Хеш ключа впоследствии установки такого Чипа могут быть самые разные я специально для демонстрации подготовил пример когда на плату установлен soc как раз таки с
21:13
Speaker A
активированным будуардом именно чип где хэш ключа прописан уже во флюзе со значением bootguard четверочка это у нас выключение немедленно и продемонстрирую какие будут плачевные последствия на плате если такой нехорошее дело сделать поставить чип абсолютно рабочий но с активированным будуардом и заканчивается
21:37
Speaker A
соответственно вторая стадия началом циклического опроса ме контроллера контроллер электропитания на предмет подтверждения запуска центрального процесса третья стадия у нас в принципе это не что иное как ожидание контроллера подтверждение запуска центрального процессора кстати все нехорошие вещи которые связаны с
22:07
Speaker A
бутгуардом Особенно это касается slc где профиль четверка либо пятерка происходит как раз таки на третьей стадии вот плата выключается либо уходит Freeboot Ну в большинстве случаев выключается А те процессы которые происходят с участием процессора мы пока не будем
22:26
Speaker A
рассматривать но по факту имейте ввиду между второй стадией инициализации которая производит abab в рамках соответственно меда и между третьей стадией Существует еще процессы которые происходят с участием камня но о них мы поговорим соответствующем ролике Я надеюсь Итак третьей стадии Мы закончили
22:49
Speaker A
четвертая стадия начинается с того момента когда контроллер получает наконец-таки получается сообщение от контроллера электропитания о том что Центральный процессор на плате успешно запущен именно с этого момента me Controller он начинает циклический опрос шины хэйси на предмет того чтобы получить сообщение от Хоста
23:19
Speaker A
Ну в роли Хоста сейчас выступает BIOS именно BIOS после того как произведет инициализацию оперативной памяти это у нас получается уже выполнение микропрограммы Self теста То бишь пост Да после того как оперативная память пройдет инициализацию и BIOS специально для контроллера зарезервирует особо
23:43
Speaker A
кусок в этой памяти это специальный регион который именуется соответственно это сообщение me контроллер получит Ну и по факту на этом 4 стадия закончится и начинается финальная стадия которая по сути для нас сейчас никакого интереса не имеет так как мы уже добрались немножко дальше
24:09
Speaker A
чем я планировал это уже прохождение Self теста платформой но тем не менее мы еще вернемся к me контроллеру Да и тем процессом который происходит далее Вот Но пока мы наверное остановимся потому что упускаем ряд важных событий для того
24:30
Speaker A
чтобы у нас картина была в целом нам нужно разобрать еще те процессы которые происходят на плате с участием процессора дабы не выпадать системы и так как мне прежде всего хочется чтобы ролики несли практическую пользу мы с теории данный момент пока закончим и
24:46
Speaker A
приступим к
Topics:Intel MEME контроллеринициализация чипамикроконтроллер ARCFreeRTOSMinixRTC контроллеркриптопроцессорэнергоэффективностьхаб Intel

Answers

Frequently Asked Questions

Что такое ME контроллер и какую роль он выполняет?

ME контроллер — это встроенный в чип хаб Intel микроконтроллер, который отвечает за раннюю инициализацию аппаратного окружения платы и выполнение функций безопасности.

Почему информации о технологии Intel ME так мало?

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

Какие операционные системы используются в ME контроллере?

В ME контроллере используются специализированные версии Linux: FreeRTOS для хабов 5-9 серии и Minix для современных чипов Skylake и новее.

Get More with the Söz AI App

Transcribe recordings, audio files, and YouTube videos — with AI summaries, speaker detection, and unlimited transcriptions.

Or transcribe another YouTube video here →