Алгоритм - Учебный центр

Версия сайта для слабовидящих
Заполните форму ниже! Мы вам перезвоним!

Нажав на кнопку "Отправить", Я даю своё согласие на автоматизированную обработку указанной информации, распространяющейся на осуществление всех действий с ней, включая сбор, передачу по сетям связи общего назначения, накопление, хранение, обновление, изменение, использование, обезличивание, блокирование, уничтожение и обработку посредством внесения в электронную базу данных, систематизации, включения в списки и отчетные формы.


Режимы пониженного энергопотребления на шине PCI Express.

Режимы пониженного энергопотребления на шине PCI Express. 

 

В шине PCI Express активно поддерживаются режимы пониженного энергопотребления — в полном соответствии с «четырехуровневыми» стандартами ACPI. Линия PCI Express может «отключаться», если она не используется в данный момент для передачи данных: отключаются линии передачи тактового сигнала, линии приема и передачи данных (и вместе с ними могут отключаться и приемник и передатчик в PCI Express контроллере), с устройства может быть снято питание — целиком (устройство «логически выключено») или частично (остается маломощное дежурное напряжение питания. Функционирует «линия пробуждения» WAKE#, по которой передается сигнал на перевод устройства в нормальный рабочий режим). Если шина состоит из нескольких линий, то при небольшой загрузке шины можно отключать ненужные в данный момент линии (например, использовать PCI Express x4 как x1, а три линии выключить). Переключение в «энергосберегающий» режим при этом может потребовать как само устройство PCI Express, так и «система» в целом — скажем, при переходе в «спящий режим» (hibernate). В «десктопных» вариантах шины PCI Express энергосберегающие режимы являются необязательными (то есть могут быть реализованы, а могут и не быть), но в мобильных описанные возможности являются обязательными. 

Управление питанием PCI Express. Механизм PCI Express-PM. Рассмотрим функции и протоколы управления питанием PCI Express механизма PCI Express-PM. PCI Express-PM предоставляет следующие сервисы:

 - механизм для идентификации функциональных возможностей управления питанием данной функции;

 - способность переводить функцию в определенное состояние энергопотреб­ления;

 - сообщение текущего состояния энергопотребления функции;

 - возможность пробуждения системы по определенному событию.

PCI Express-PM совместим со спецификациями "PCI Bus Power Management Interface" версии 1.1 (PCI-PM) и "Advanced Configuration and Power Interface" версии 2.0 (ACPI). В данном разделе также определены функциональные возможности собственного механизма управления питанием PCI Express. Он предоставляет дополнительные возможности управления питанием по срав­нению со спецификацией "PCI Power Management Interface". PCI Express-PM определяет состояния, в которые может переходить физический канал PCI Express в ответ на программно-управляемые переходы в D-состояния или при активизации механизма Active State Link PM. Состояния каналов PCI Express "не видны" напрямую для существующего ПО драйвера шины, но информация может быть получена из состояния управления питанием компонен­тов, размещенных на этих каналах. Определены состояния канала L0, L0s, L1, L2 и L3. Уменьшение потребления питания направлено при переходе от со­стояния L0 к L3.

Компоненты PCI Express могут пробуждать систему из любого поддерживае­мого состояния энергопотребления через запрос события управления питанием (РМЕ - Power Management Event). Системы PCI Express могут обеспечивать дополнительный источник питания (Vaux), необходимый для операций РМЕ из состояния системы "откл.". В этом отношении механизм PCI Express-PM расширен по сравнению с его прототипом PCI-PM, это выражается в под­держке PCI Express "сообщений" РМЕ, включающие географическое разме­щение (Requestor ID) внутри иерархии запрашивающего агента. Данные сооб­щения РМЕ являются внутриполосными пакетами TLP, направленными из за­прашивающего устройства в корневой комплекс. Другое отличие механизма PCI Express-PM от РМЕ состоит в его разделении двух следующих событий, связанных с РМЕ:

 - пробуждение иерархии ввода-вывода (т. е. запуск синхронизирующих и основных шин питания, соединенных с компонентами PCI Express);

 - посылка сообщения РМЕ (вектора) корневому комплексу.

Самоуправляющийся аппаратный механизм активного состояния (Active State Link PM) допускает потребление питания, даже когда присоединенные ком­поненты находятся в состоянии D0. По истечении некоторого периода ожи­дания (простоя) канала механизм "Active State Link PM" приводит в действие протокол физического уровня, который переводит свободный канал в состояние с низким потреблением питания. Переход из состояния низкого потребления в полнофункциональное состояние L0 запускается появлением трафика на обе­их сторонах канала. Конечные точки инициируют вход в состояние низкого потребления питания канала. Данная функция может быть отключена про­граммным обеспечением.

В терминологии PCI Express термин Upstream-компонент или Upstream-устройство обозначает компонент PCI Express, находящийся на конце канала PCI Express и являющийся закрывающим устройством по отношению к корню иерархического дерева PCI Express. Термин Downstream-компонент или Downstream-устройство обозначает компонент PCI Express, находящийся на конце канала, который иерархически отдален от корня иерархического дерева PCI Express.

Все компоненты PCI Express, за исключением корневого комплекса, должны выполнять минимум требований, определенных программным обеспечением PCI-PM, совместимым с функциями PCI Express-PM. Корневые комплексы должны участвовать в управлении питанием канала протоколов DLLP, ини­циированных downstream-устройством, когда все функции downstream-компонента входят в состояние с низким потреблением, совместимое с про­граммным обеспечением PCI-PM. Функциональности Active State Link PM являются обязательными (вход в со­стояние L0s как минимум) для всех компонентов, включая корневые ком­плексы, и конфигурируются раздельно через собственные конфигурационные механизмы PCI Express.

Стандарт PCI Express определяет состояния энергопотребления канала вме­сто состояний энергопотребления шины, которое было определено в специ­фикации PCI-PM. Информация о состоянии канала не доступна для сущест­вующего ПО, совместимого с PCI-PM, и может быть получена либо через D-состояния соответствующего компонента, соединенного с каналом либо через протоколы управления питанием "Active State". Физический уровень PCI Express может определить дополнительные промежуточные состояния.

PCI Express-PM устанавливает следующие состояния энергопотребления ка­нала:

    1) L0  -  активное состояние. Разрешены все транзакции PCI Express и другие операции. Поддержка состояния L0 требуется для управления питанием Active State Link и для PCI-PM-совместимой модели.

    2) L0s  -  состояние с малой задержкой возобновления работы, экономичное потребление типа "Standby". Поддержка состояния L0s обязательна для модели Active State Link и не применима к модели совместимой с PCI-PM. Все основные источники питания, генераторы тактовых импульсов ком­понентов и внутри компонентные ФАПЧ должны находиться в активном состоянии при нахождении системы в состоянии L0s. Передача информа­ции пакетами TLP и DLLP через канал, который находится в состоянии L0s, запрещена. Состояние L0s используется исключительно для активно­го состояния. Физический уровень PCI Express обеспечивает механизм для быстрых переходов из этого состояния в состояние L0. Когда общие (рас­пределенные) генераторы синхроимпульсов используются на обеих сторо­нах данного канала, время перехода из состояния L0s в L0 обычно меньше, чем 100 нс.

    3) L1  -  состояние с большой задержкой, низким потреблением питания ти­па "Standby". Поддержка состояния L1 обязательна для модели совмести­мой с PCI-PM и необязательна для модели Active State Link. Все содержа­щиеся на платформе основные источники питания и компонентные гене­раторы синхроимпульсов должны оставаться в активном состоянии все время нахождения системы в состоянии L1. Внутренние ФАПЧ down­stream-компонента могут быть отключены при нахождении в состоянии L1, обеспечивая большую экономию энергии за счет увеличения выходно­го времени задержки (например, отключение внутреннего ФАПЧ может быть желательно при нахождении в состоя­нии D3hot, но не желательно для состояний D1 или D2). Переход в состояние L1 осуществляется, когда все функции downstream-компонента данного канала PCI Express запрограм­мированы в D-состояние, отличное от состояния DO, либо, если down­stream-компонент запросил переход в состояние LI (Active State Link PM) и получил положительный ответ. Выход из состояния L1 происходит при инициировании транзакции со стороны upstream-устройства, направлен­ной в downstream-компонент, или если downstream-компонент хочет ини­циировать транзакцию по направлению к upstream-устройству. Переход из состояния L1 в L0 занимает несколько микросекунд. Передача информа­ции пакетами TLP и DLLP через канал при нахождении его в состоянии L1 запрещена.

    4)  L2/L3 Ready -   состояние не предназначено специально для переходов D-состояний PCI-PM или для управления питанием Active State Link. Канал переходит в состояние L2/L3 Ready, когда платформа готова перейти в со­стояние покоя (Sleep). После выполнения протокола перехода в состояние L2/L3 Ready канал готов к переходу в состояние L2 или L3, но не перейдет ни в одно из них до тех пор, пока не будет снято основное питание. В зави­симости от реализации, для конкретной платформы после выключения ос­новного питания канал может переходить в состояние L2 (в случае, если при­сутствует источник Vaux) или в состояние отключения "off (L3).  Процесс перехода в состояние L2/L3 Ready должен начаться после получения уведомления  -  сообщения "PM_TURN_OFF" (т.е. TLP-пакета "РМ_ТО_Аск"). Downstream-компонент инициирует переход в состояние L2/L3 Ready путем выдачи DLLP-пакета "PM_Enter_L23" в передающий порт. Передачи пакетов TLP и DLLP через канал при нахождении в состоянии L2/L3 Ready запреще­ны. Выход из состояния L2/L3 Ready обратно в состояние L0 может быть инициирован только транзакцией, инициированной со стороны upstream и направленной к downstream-компоненту. Механизм такой же, как и при "от­пирании" компонента upstream-транзакцией из состояния L1 в L0. Выход из состояния L2/L3 Ready, инициированный со стороны upstream, приведет к тому, что при переходе канала в состояние L2/L3 Ready до выключения основного питания менеджер питания платформы примет решение не входить в состояние Sleep. Переход канала в состояние L2/L3 Ready является одной из заключительных стадий, относящихся к протоколу PCI Express при подготов­ке к переходу платформы в состояние Sleep, когда снимается основное пита­ние (например, состояние ACPI S3 или S4).

      5)  L2   -   состояние экономичного потребления питания с дополнительного источника. Поддержка состояния L2 является необязательной, и зависит от поддержки платформой источника Vaux. При нахождении в состоянии, L2 вход источника питания компонента и вход генератора синхроимпуль­сов отключены. При нахождении в состоянии L2 вся детектирующая ло­гика РМЕ, логика возобновления канала типа "Beacon", контекст РМЕ и любая другая "оживляющая" логика запитываются от источника Vaux. Пере­дачи пакетов TLP и DLLP через канал, который находится в состоянии L2, запрещены. Выход из состояния L2 завершается путем восстановления ос­новного питания и генератора синхроимпульсов для всех компонентов внутри области менеджера питания, это происходит после полной регули­ровки и инициализации канала. Как только данный канал выполнит регули­ровку и инициализацию, то он находится в состоянии L0 и может посылать и принимать пакеты TLP и DLLP.

      6)  L3    -     состояние отключения канала, напряжение питания равно нулю.

На рис. 1 показан «граф» разрешенных переходов между L-состояниями, которые могут происходить во время функционирования канала. Дуга, обозначенная отдельно на рис. 4, показывает случай, когда на плат­форме не реализован дополнительный источник Vaux. В этом случае, протокол перехода из состояния L2/L3 Ready приводит к готовности снятия основного пи­тания, и как только оно снимается, канал переходит в состояние L3.  Переходы канала РМ из любого L-состояния в любое другое L-состояние должны проходить через состояние L0 во время процесса перехода, исключая переходы из состояния L2/L3 Ready в состояние L2 или L3. В этом случае, переходы канала из состояния L2/L3 Ready направлены в состояние L2 или L3, когда снято основное питание компонента (это следует одновременно с соответствующим переходом компонента из состояния D3h hot  в D3cold т. е. из со­стояния пассивного потребления в состояние практически полного отключения.)

 etSMz62j.png (435×209) 

Рис. 1. Граф допустимых переходов между состояниями канала

 

Рассмотрим последовательность, подготавливающую систему к переходу в состояние Sleep (многошаговый процесс перехода канала из состояния в состояние):

  1. Системное ПО направляет все функции downstream-компонента в состоя­ние D3hot.
  2. Downstream-компонент инициирует переход канала в состояние L1 установ­ленным порядком.
  3. Системное ПО заставляет корневой комплекс послать широковещательное сообщение "РМ TurnOff', подготавливающее к снятию основного питания.
  4. Данное сообщение заставляет перейти подчиненный канал обратно в состоя­ние L0, чтобы послать это сообщение, что позволяет downstream-компоненту ответить сообщением "РМ_ТО_Аск".
  5. После посылки сообщения "РМ_ТО_Аск" downstream-компонент иницииру­ет протокол перехода L2/L3 Ready.  L0 > LI > L0 > L2/L3 Ready

В табл. 1 обобщены все L-состояния, условия их использования и поведе­ние платформы PCI Express и компонентов PCI Express для каждого из них. Значение поля "Yes" указывает, что поддержка обязательна (кроме специаль­но указанных ниже). Значения "On" и "Off указывают на наличие и отсутст­вие синхронизации и питания соответственно. «On/Off» указывает на любую реализацию данной опции.

 etSMz62k.png (743×563)

 Примечания.

 

  1. Задержка выхода из состояния L0s будет большей для конфигурации кана­ла, который характеризуется независимыми входами генераторов синхро­импульсов для компонента, присоединенного с другой стороны данного канала (вместо общего используется распределенный генератор синхросигналов).
  2. Переход в состояние L1 может быть запрошен внутри протокола Active State Link PM, однако данная поддержка необязательна.
  3. Задержка выхода из состояния L1 будет более большой для компонентов, которые производят отключение их ФАПЧ внутренне при нахождении в этом состоянии.
  4. Последовательность входа в состояние L2/L3 инициируется выполнением про­токола рукопожатия "PM_Turn_Off"/"PM_TO_Ack". Данное правило не примы­кает к переходам из D-состояний или переходам в соответствии с политикой и процедурами Active State Link PM.
  5. В зависимости от реализации платформы, Sleep-состояния системы могут ис­пользовать состояние L2 или состояние полного отключения (L3). Протокол перехода состояния L2/L3 Ready инициируется downstream-компонентом по­сле приема и подтверждения TLP-сообщения "PM_Turn_Off". Если поддержка состояния L2 необязательна для конфигурации (т. е. для питания Vaux), то поддержка компонентом протокола PCI Express для перехода канала в со­стояние L2/L3 Ready является обязательной.
  6. Состояние L2 отличается от L3 только наличием источника Vaux. После вы­полнения протокола перехода состояния L2/L3 Ready и перед тем, как будет снято основное питание, канал укажет его готовность к снятию питания.

Что касается устройств, для которых потребуется быстродействие PCI Express 3.0, то это коммутаторы PLX, контроллеры Ethernet 40 Гбит/с, InfiniBand, твёрдотельные устройства, которые становятся всё популярнее, и, конечно, видеокарты. Все возможные инновации разработчики PCI Express еще не исчерпали, и они появляются не статически, а непрерывным потоком, который открывает путь для дальнейших улучшений в будущих версиях интерфейса PCI Express.

 


Лицензия