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

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

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


Технологии PCI Express 3.0

Технологии PCI Express 3.0

 

                В версии  PCI Express  3.0 максимальная полоса пропускания канала была увеличена до 8 ГТ/с  с незначительными изменениями протокола обмена, форм-фактора и методов обеспечения целостности данных.

Реальная скорость передачи данных по PCI Express 3.0 вдвое выше, чем у PCI Express 2.0. Материнские платы с поддержкой PCI Express 3.0 смогут работать с видеокартами, потребляющими до 300 Вт. Дополнительная мощность будет потребляться через разъёмы питания, подключаемые к видеокарте. Увеличение скорости передачи данных осуществляется и за счет развития новых технологий.

Именно для обеспечения высокой пропускной способности при ограниченной частоте было принято решение перейти на использование более агрессивной схемы кодирования 128b130b, которая предусматривает передачу всего 1,6% избыточной информации, по сравнению с 20% в текущей схеме кодирования 8b10b. Выбор такого принципа устранения избыточности вместо перехода на 10 ГТ/с был обусловлен тем, что 8 ГТ/с является наиболее оптимальным компромиссом между затратами, возможностями производства, энергопотреблением и совместимостью. Отказаться от повышения частоты до 10 ГГц пришлось, прежде всего, из соображений сохранения уровня энергопотребления в разумных границах, поскольку рост частоты сопровождается экспоненциальным увеличением потребляемой мощности. Вместе с тем, планируется сохранение механической совместимости PCIe 3.0 с разъемами, используемыми в более ранних версиях стандарта.

Рост частоты до 8 ГГц повлечет за собой значительное усложнение структуры чипов, для реализации которых, скорее всего, понадобится применять, по меньшей мере, 65-нм техпроцесс. Среди остальных новшеств нового стандарта отметим усовершенствования каналов, улучшенную систему передачи сигналов, уравнивание приема и передачи, улучшения системы фазовой автоподстройки частоты.

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

Поддержка виртуальных каналов. Механизм виртуальных каналов, иначе VC (Virtual Channel), является "фун­даментом" для поддержки различных сервисов внутри структуры PCI Express. Он разрешает развертывание физически независимых ресурсов, ко­торые в совокупности с маркировкой трафика необходимы для оптимизиро­ванной обработки разнородного трафика. Маркировка трафика поддерживает­ся через использование маркеров (меток) класса транзакций или, иначе, ТС (Transaction Class) TLP-уровня. Точная политика для разнородного трафика регулируется путем отображения TC/VC и путем арбитража на уровне VC. Отображение TC/VC зависит от требований применения платформы. Эти тре­бования управляют выбором алгоритма арбитража VC и конфигурируемостью/программируемостью арбитров, что обеспечивает точную настройку политики обслуживания трафика. Механизмы виртуальных каналов (VC) с прицелом на бу­дущее адресуют следующие уровни детализации:

  -   поддерживаемые конфигурации TC/VC;

  -   правила и алгоритмы арбитража, основанного на VC;

  -   рассмотрение упорядочивания трафика;

  -   изохронную поддержку, как определенную пользовательскую модель.

Поддерживаемые конфигурации TC/VC. Виртуальный канал (VC) устанавливается, когда один или несколько клас­сов транзакций (ТС) связываются с физическим ресурсом VC, назначенным идентификатором ID VC. Каждый поддерживаемый класс трафика "Traffic Class" должен быть отображен в один из виртуальных каналов. Основная (базо­вая) конфигурация PCI Express должна поддерживать пару по умолчанию TC0/VC0, которая является постоянной, т. е. не конфигурируемой. Любая под­держка выше данного уровня является необязательной. Процесс конфигуриро­вания TC/VC управляется системным ПО, использующим программную модель. Для упрощения взаимодействия при конфигурировании множества виртуальных каналов через канал PCI Express, в стандарте определены ограничения для мно­жества разрешенных (правильных) конфигураций VC. В общем, отображение трафика в виртуальный канал, отличный от TC0/VC0, является задачей сис­темного ПО. Основными конфигурациями TC/VC являются следующие:    

   -  симметричное отображение трафика в виртуальный канал;

   -  реотображение трафика в виртуальный канал.

Многопортовые компоненты (коммутаторы и корневые комплексы) должны поддерживать  независимое  отображение  TC/VC  для   каждого  порта  PCI Express.

Механизм "Device Synchronization Stop". Изменение нумерации шин системным ПО во время функционирования сис­темы может привести к изменению ID запросчика данного устройства (осно­ванного на номерах шин); это может привести к тому, что любые запросы или выполнения для этого устройства еще в процессе их передачи могут быть изменены неверно в соответствии с изменением в ID запросчика. Также жела­тельно гарантировать, чтобы во время извлечения устройства Hot-Plug не про­исходило никаких выходящих транзакций. Механизм "Device Synchronization Stop" позволяет системному ПО гарантировать, что в процессе передачи по от­ношению к конкретному оконечному устройству не будет находиться никаких транзакций до выполнения операции ренумерации шин, которая может при­вести к изменению номера данного устройства (и ID запросчика). Синхронная остановка для оконечных устройств реализована через механизм "Stop" и связана с битом Stop регистра Device Command и битом Transac­tions Pending регистра Device Status. Системное ПО сообщает устройству требование остановиться путем установ­ки бита Stop в регистре Device Command устройства. ПО считает операцию остановки выполненной, если устройство сообщает, что больше нет незавер­шенных транзакций путем сбрасывания бита статуса Transactions Pending в регистре Device Status; при этом устройству не запрещено издавать любой новый запрос после того, как установлен бит Stop. Прежде чем сбросить бит Transaction Pending, оконечное устройство долж­но гарантировать, что:

   - выполнения небуферизуемых запросов для всех используемых классов трафика были приняты соответствующими запросчиками;

   -  все запросы, инициированные данным устройством, имеют возвращенные выполнения;

   - все буферизованные запросы всех классов трафика были "очище­ны/сброшены" (т. е. были приняты предназначенными целями) во всех на­правлениях между оконечным устройством и системой и между одноранго­выми оконечными устройствами.

Механизмы очищения/сброса. В самом простом случае, когда оконечное устройство соединяется только с главной памятью, очистка может быть реализована путем направленного чте­ния памяти. Чтение памяти должно быть выполнено на всех классах трафика, которые использует устройство. Если устройство имеет незавершенные тран­закции (включая незавершенные выполнения), тогда оно должно использовать небуферизуемые транзакции типа направленного чтения памяти, адресованное в определенное равноправное местоположение для очистки. Описанный меха­низм является специфическим для реализации, но должен выполняться аппа­ратными средствами без участия ПО.

Блокированные транзакции. Поддержка задержанных транзакций необходима для предотвращения бло­кировки в системе при использовании унаследованного ПО, которое иниции­рует доступы к устройствам ввода-вывода. Некоторые процессоры могут ге­нерировать блокированные доступы как результат выполнения инструкций, которые неявно блокируют счетчик. Некоторое старое ПО неправильно приме­няет эти транзакции и генерирует блокированные последовательности, даже ко­гда монопольный доступ не требуется. Поскольку блокированные доступы к устройствам ввода-вывода приводят к потенциальным блокировкам помимо упомянутых выше, что может привести к серьезному снижению производи­тельности, то для оконечных устройств PCI Express запрещена поддержка мо­нопольных доступов. Новое ПО также не должно использовать инструкции, которые будут инициировать монопольные доступы к устройствам ввода-вывода. Поддержка оконечными устройствами монопольных доступов введена только из-за вопросов совместимости с существующим ПО. Инициирование блокированных запросов PCI Express разрешено только корне­вому комплексу. Блокированные запросы, инициированные оконечными устройствами и мостами, не поддерживаются. Данная непротиворечивость с ограничениями для блокированных транзакций использует принципы специфи­кации "PCILocal Bus Specification" версии 2.3. Данный раздел определяет правила, связанные с поддержкой монопольных доступов от главного процессора к устройствам Legacy Endpoint, включая рас­пространение таких транзакций через коммутаторы и мосты PCI Express/PCI.

Правила инициирования и распространения блокированных транзакций. Блокированные последовательности генерируются главным процессором(ми) как одна или больше операций чтения, следующих за равным количеством записей в ту же область(ти). Когда установлен монопольный доступ, весь ос­тальной трафик блокируется от использования пути между корневым комплек­сом и заблокированным устройством Legacy Endpoint или мостом.

   - блокировка инициируется на PCI Express, используя тип "lock" – Read Request/Completion (MRdLk/CplDLk) и завершается с сообщением "Unlock" (семантика MRdLk, CplDLk и Unlock разрешена только для класса

трафика, определенного по умолчанию (ТСО)).

   -  сообщение "Unlock" является широковещательным из корневого ком­плекса для всех оконечных устройств и мостов (любое устройство,  которое вовлечено в блокированную  последова­тельность, должно игнорировать это сообщение.

Введение и распространение блокированной транзакции через PCI Express выполняется следующим образом:

   - последовательности блокированных транзакций начинаются  с запроса MRdLk (любые последовательные чтения для блокированных транзакций также используют запросы MRdLk; выполнения для любого запроса MRdLk используют тип выполнения CplDLk).

Оконечные устройства Legacy Endpoint. Устройствам Legacy Endpoint запрещено поддерживать монопольные доступы, хотя и допускается их использование. Если монопольный доступ поддержан, устройство должно обрабатывать его в соответствии со следующими прави­лами:

   - устройство становится блокированным, когда оно передает первое вы­полнение для первою запроса чтения монопольного доступа. (один раз заблокированное устройство должно оставаться в этом состоя­нии, пока оно не примет сообщения "Unlock");

   - при нахождении в заблокированном состоянии устройство не должно ге­нерировать никакого запроса, использующего классы трафика, которые отображаются в виртуальный канал по умолчанию (VC0) (данное требование применяется ко всем возможным источникам запросов внутри оконечного устройства, в случае, когда внутри него присутствуют больше чем один возможный источник; запросы могут быть сгенерированы путем использования класса трафика, отображаемого в виртуальный канал, отличный от виртуального канала «по умолчанию»).

Оконечные устройства PCI Express. Оконечные устройства PCI Express не поддерживают монопольный доступ. Данные устройства должны интерпретировать запросы MRdLk как непод­держиваемые запросы.

Правила сброса для PCI Express. Данный раздел определяет поведение канала PCI Express при сбросе. Сброс может быть сгенерирован платформой или на компоненте, но любые отноше­ния между сбросом канала PCI Express и сбросом компонента или платформы являются специфическими для компонента или платформы соответственно. Должен присутствовать аппаратный механизм для установления или воз­вращения всех состояний порта в начальные условия, определенные стан­дартом  -  этот механизм называется Power Good Reset.

            Сброс Power Good Reset, происходящий после подачи питания к ком­поненту, называется холодным сбросом или, иначе, Cold Reset. В некоторых случаях возможен запуск механизма "Power Good Reset" аппаратным обеспечением без снятия и подачи питания компонента. Такой сброс называется теплым сбросом или, иначе, Warm Reset.

            Также существует внеполосный механизм для распространения сброса за пределами канала, он называется горячим сбросом или, иначе, Hot Reset. Переход в состояние "DL_Inactive" в некоторых случаях идентичен сбросу Hot Reset.

            При выходе из любого типа сброса (Cold, Warm или Hot), все регистры порта и конечные автоматы должны быть установлены в их начальные состояния, определенные стандартом PCI Express.

При выходе из состояния Power Good Reset физический уровень будет пы­таться запустить ("поднять") канал. Как только оба компонента вошли в со­стояние начальной проверки канала, то далее их состояние будет изменять­ся через инициализацию канала для физического уровня и затем через инициализацию для виртуального канала VC0, подготавливая таким обра­зом уровень транзакций и канальный уровень к использованию канала. После инициализации VC0 пакеты TLP и DLLP могут быть переданы через канал.

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

Правила требований адресации для компонентов и устройств разделяются на два подмножества:

    - требования к компонентам;

    -  требования к системе.

Требования правил адресации к компонентам. Компонент должен входить в начальное активное состояние проверки канала в пределах 80 мс после завершения сброса Power Good Reset. В некоторых системах возможно, что два компонента на канале могут выйти из состояния Power Good Reset в разное время. Каждый компонент должен соблюдать требования для входа в начальное активное состояние провер­ки канала в пределах 80 мс после окончания Power Good Reset с их точки зрения, т. е. после того, как они определили, что произошел выход из сброса. При выполнении проверки канала (вхождении в состояние "DL_Active") компонент должен быть способен принять и обработать пакеты TLP и DLLP.

Требования правил адресации к системе. В целях корректного выполнения компонентом внутренней инициализа­ции системное ПО должно ожидать минимум 100 мс после окончания сброса (Cold/Warm/Hot), перед тем как разрешать генерирование конфигу­рационных запросов к устройствам PCI Express. Система должна гарантировать, что все компоненты, предназначенные для взаимодействия с ПО во время загрузки, готовы принять конфигурацион­ные запросы в пределах 100 мс после окончания состояния Power Good Reset (реализация не определена стандартом и возлагается на разработчика).

       Корневой комплекс и/или системное ПО после сброса (Hot/Warm/Cold) должны ожидать от устройства возвращения статуса "Successful Completion" для правильного конфигурационного запроса 1.0 с. По истечении этого времени устройство считается неисправным. Если корневой комплекс повторяет конфигурационные запросы, за­вершенные со статусом "Configuration Request Retry", тогда они долж­ны быть повторены до 1 с после истечения времени Tоrc (время задержки корневого комплекса), в этой точке корневой комплекс может завершить запрос как неподдерживаемый. Данная задержка аналогична параметру Trhfa, определенному для PCI/PCI-X, и предназначена для выделения адекватного количества времени устройству, которому необходимо провести собственную ини­циализацию.      При попытке конфигурационного доступа к устройствам в PCl или PCI-X сегменте позади PCI xpress/PCI(PCI -X) моста временной параметр Trhfa дол­жен соответствовать данным стандартам.

Правила при нормальном функционировании канала. Если для каких-то целей понижается нормальное функционирование кана­ла, то канальный уровень и уровень транзакций войдут в состояние "DLJnactive".            Для любого виртуального или реального PCI-моста любое из следующих событий вызывает сброс вторичной стороны моста, используя механизм физического уровня для сообщения сброса канала:

  - установка бита Secondary Bus Reset в регистре Bridge Control;

  - переход в состояние "DL_Inactive" на основной стороне моста;

  - сброс канала с использованием механизма физического уровня для со­общения "Link Reset".

Определенные аспекты сброса Power Good Reset, описанные в стандарте PCI Express, являются специфическими для реализации платформы и форм-фактора. Определенные платформы, форм-факторы или приложения могут требовать дополнительной спецификации временных и/или отношений по­рядка между компонентами системы для Power Good Reset. Например, они могут требовать, чтобы все компоненты PCI Express внутри шасси соблюдали переход в состояние Power Good Reset и выход из него в одно и то же время (в пределах некоторых допусков). В многошассийном окружении для выхода из состояния Power Good Reset может потребоваться, чтобы корпус, содержа­щий корневой комплекс, был последним.

Во всех случаях, когда подано питание, должны быть определены следующие временные параметры:

   - Tpvpgl   -   минимальное время, в течение которого сигнал PowerGood дол­жен оставаться неактивным после подачи питания;

   - Tpwrgd  -  минимальное время, в течение которого сигнал Power_Good дол­жен находиться в неактивном состоянии после снятия;

   - Тfail   -  после подачи питания сигнал Power_Good должен быть снят внутри этого временного интервала.

Кроме того, могут быть определены и дополнительные параметры.

Во всех случаях, когда поддержан генератор синхроимпульсов, должен быть определен параметр  Tpwrgd-clk  -  минимальное время, в течение которого сигнал Power_Good должен оставаться неактивным, после того как любой поддерживаемый генератор перейдет в стабильное состояние. Также при необходимости могут быть определены дополнительные параметры.

Поддержка механизма Hot-Plug. Возможность "горячего" подключения устройств является ключевым условием обеспечения высокого уровня готовности систем. Современные технологии "горячего" подключения достаточно дороги и создают множество проблем, вытекающих из сложного и уязвимого комплекса взаимоотношений, которые существуют между аппаратными средствами и программным обеспечением. Это ведет к повышению денежных и временных затрат компаний. Технология PCI Express позволяет повысить производительность системы и увеличить время ее непрерывной работы, а также способствует значительному повышению уровня удобства ее обслуживания и снижению расходов – за счет стандартизации модели использования и исключения зависимости от поставщиков программных кодов и аппаратных компонентов, обеспечивающих надежную работу устройств, подключаемых горячим методом.

Технология PCI Express подходит к решению проблем, характерных для обычной технологии "горячего" подключения устройств, следующим путем:

  - технология PCI Express изначально разрабатывалась с учетом возможности горячего подключения устройств, поэтому регистры управления "горячим" подключением являются частью стандарта PCI Express (в отличие от стандарта SHPC1.0);

   - орперационной системе предоставляется простой интерфейс доступа к аппаратным регистрам управления "горячим" подключением, обеспечивающий поддержку технологии "горячего" подключения (в отличие от прежних методов, базировавшихся на BIOS);

   - обеспечена стандартная возможность "горячего" подключения аппаратными средствами, определенная на базовом архитектурном уровне;

   - в основе технологии лежит стандартная базовая архитектура контроллеров "горячего" подключения (Standard Hot-Plug Controller, SHPC).

   - усовершенствование конструктивных характеристик повышает надежность платформы при относительно низких затратах на производство OEM-продукции.

Технология PCI Express поддерживает стандартную возможность горячего подключения, определяя и требуя выделение соответствующих регистров для управления функциями, связанными с тремя важнейшими уровнями платформы, а именно:

  - с корпусом

  - с разъемом шины

  - с оконечным устройством (адаптером)

Это обеспечивает функциональную совместимость продукции различных поставщиков. В свою очередь, IT-специалисты и менеджеры информационных центров тратят меньше времени на техническое обучение и обслуживание систем ввиду значительного снижения различий между платформами поставщиков. Кроме того, повышается окупаемость инвестиций в силу устранения необходимости приобретать все системные компоненты у одного производителя во избежание проблем с совместимостью.

Базовая архитектура технологии PCI Express основана на стандартной архитектуре контроллеров "горячего" подключения (Standard Hot-Plug Controller, SHPC), как определено в спецификации PCI Standard Hot-Plug Controller and Subsystem Specification, Revision 1.0. Эта спецификация опубликована группой PCI Special Interest Group (PCI SIG) и доступна на Web-сайте группы PCI-SIG. Технология PCI Express использует всю совокупность компонентов стандартной архитектуры SHPC, которые сведены в таблицу, представленную ниже. В столбцах "Области компонентов" представлены составляющие платформы, реализующие модель SHPC.

Хотя спецификация "горячего" подключения PCI определяет аппаратные требования, она не описывает полную модель управления операциями подключения/отключения устройства – спецификация SHPC 1.0 определяет необходимую модель программного обеспечения. Технология PCI Express, представленная в 2002 году, полностью поддерживает предшествующую технологию "горячего" подключения PCI, а также модель SHPC, а использование простого интерфейса к регистрам устраняет зависимость реализации технологии от BIOS и переносит ее на операционную систему. По существу, технология PCI Express избавляет от необходимости опираться на ACPI BIOS и определяемый платформой драйвер контроллера "горячего" подключения, обеспечивая стандартное соединение с этим контроллером, которое может использоваться на любой платформе любого поставщика.

Технология PCI Express использует достоинства имеющейся архитектуры ввода/вывода и в то же время отвечает насущным и будущим потребностям благодаря возможности включения и отключения поддержки элементов расширения собственными средствами операционной системы. Этот метод управления, названный «горячим подключением под управлением операционной системы» (Operating System Hot-Plug, OSHP), должен обеспечиваться резидентной программой платформенной BIOS с поддержкой механизма ACPI. Если поддержка расширения Native отключена, то управление горячим подключением передается интерфейсу ACPI BIOS. Если поддержка расширения собственными средствами операционной системы включена, то ACPI BIOS не задействуется, позволяя операционной системе самостоятельно управлять "горячим" подключением устройств.

В то время как технологии PCI Express и SHPC обеспечивают одинаковую функциональность, набор регистров, используемых для реализации технологии PCI Express, немного отличается от набора регистров для стандарта SHPC; тем не менее сама операционная система может обслуживать и SHPC, и PCI Express с некоторыми небольшими изменениями в интерфейсе, связанном с регистрами.

Технология PCI Express поддерживает возможность "горячего" подключения устройств как для модульных, так и для интегрированных решений. Значительным усовершенствованием, которое внесла технология PCI Express в существующие принципы, является разъем типа "mate-last/break-first" (сначала питание, затем подключение), который защищает аппаратные средства от сбоев. Одно из ключевых преимуществ технологии "горячего" подключения PCI Express по сравнению с предыдущими моделями заключается в уникальности модулей PCI Express – их подключение осуществляется через заднюю или переднюю панель и не требует вскрытия корпуса.

И модульные, и интегрированные решения базируются на одной модели ПО. Стоимость реализации различных вариантов модульных платформенных решений значительно ниже, чем стоимость предлагавшихся ранее альтернативных решений. Модульные решения даже менее дороги, поскольку контроллер питания перемещен на модуль (нет управления питанием на базовой стороне разъема), и соответствующая стоимость входит в общую стоимость модуля. Дополнительное преимущество модульного решения состоит в том, что его стоимость растет с расширением его масштабов, обеспечивая возможность постепенного инвестирования в решение по мере его роста.

Для того чтобы воспользоваться преимуществами более высокой надежности при меньших затратах, которые может обеспечить технология PCI Express, необходимо выполнить следующие условия:

  - разработчики аппаратных средств должны включать в свои новые проекты поддержку технологии

PCI Express;

 -  разработчики программного обеспечения должны включать поддержку OSHP в новые версии BIOS и внедрить модель использования на базе архитектуры SHPC;

  - OEM-производители должны распространять интегрированную серверную продукцию на базе компонентов, поддерживающих технологию PCI Express;

  - IT-специалисты и менеджеры информационных центров должны перейти к использованию платформ на базе технологии PCI Express, чтобы получить максимум преимуществ от использования технологии "горячего" подключения.

Архитектура PCI Express разработана с собственной поддержкой горячего подключения и горячей замены устройств (стандартная пользовательская модель) для всех форм факторов PCI Express, поддерживающих "горячую" замену и "горячее" подключение устройств. Эта модель предоставляет основу для поведения индикаторов и кнопок, если они реализованы в системе. Определение индикаторов и кнопок применяется ко всем моделям PCI Express Hot-Plug .

Пользовательская модель PCI Express Hot-Plug. Стандартная пользовательская модель, как следует из названия, в первую очередь нацелена на пользователей, которые эксплуатируют системы со сло­тами Hot-Plug. Такое назначение объясняется тем, что обычно в пользова­тельских системах присутствует аппаратное и программное обеспечение от различных производителей. Модель позволяет пользователям использовать слоты Hot-Plug их систем без дополнительного переобучения. Стандартная пользовательская модель PCI Express Hot-Plug выведена из стандартной поль­зовательской модели, определенной в спецификации "PCI Standard Hot-Plug Controller and Subsystem Specification" версии 1.0. Данные модели идентичны с точки зрения пользователя. Были произведены лишь незначительные изменения в определениях регистров и соответствия со стандартной пользовательской моделью, требуемые всеми форм-факторами PCI Express, которые реализуют Hot-Plug и используют индикаторы и кнопки.

Девиация форм-факторов PCI. Отклонение от стандартной пользовательской модели приводит к несовмес­тимым с PCI-Express решениям и будет проявляться в нежелательных резуль­татах, таких как:

   - сложность эксплуатации для пользователя;

   - более дорогое тестирование аппаратного обеспечения;

   - функциональная несовместимость с системным ПО;

   - ошибки системного ПО из-за непроверенного поведения системы.

Индикаторы. Стандартная пользовательская модель определяет два индикатора: индикатор питания и индикатор внимания. Платформа может обеспечить два индикато­ра в каждый слот или панель модуля, индикаторы могут быть реализованы на корпусе или модуле, детали реализации зависят от требований форм-фактора "горячего" подключения. Каждый индикатор находится в одном из трех со­стояний:

   -  включено,

   -  выключено,

   - мерцание.

Системное ПО Hot-Plug обладает исключительным контролем над состоянием индикаторов за счет возможности записи в командный регистр, связанный с индикатором. Порт совместимый с Hot-Plug управляет частотой мерцания индикаторов, рабочим циклом и фазой.

Мерцающие индикаторы функционируют на часто­те от 1 до 2 Гц с коэффициентом заполнения 50% (± 5%). Мерцающие инди­каторы не должны быть синхронизированы и синфазны между портами.

Индикаторы должны находиться в непосредственной близости от связанного с ними слота Hot-Plug, если индикаторы реализованы на корпусе, чтобы со­единение между индикаторами и слотом Hot-Plug было как можно более сво­бодным.

Оба индикатора полностью контролируются системным ПО. Устройство коммутатора или корневого порта никогда не изменяет состояние индикатора при отклике на событие, типа сбоя питания или внезапного открытия защел­ки MRL, если только системное ПО специально не пошлет такую команду. Ис­ключение предоставляется платформам, которые совместимы с механизмом определения контактной неисправности (типа "залипания") питания. В этом специфическом случае сбоя платформе разрешено "подавить" устройство ком­мутатора или корневого порта и силой включить индикатор питания (как ука­зание, что плата расширения не может быть извлечена). Во всех случаях внут­реннее состояние порта для индикатора питания должно соответствовать со­стоянию, выбранному программным обеспечением. Обработка системным ПО константных неисправностей является необязательной функциональностью и отдельно не описывается. Поэтому производитель платформы должен гаран­тировать, что эта дополнительная функциональность стандартной пользова­тельской модели выполняется дополнительным ПО, описывается в документа­ции платформы или каким-либо другим способом.

Индикатор внимания. Индикатор внимания "Attention" желтого или янтарного цвета используется для указания на проблемы функционирования или указывает, что слот Hot-Plug находится в процессе идентификации, что позволяет локализовать его состояние.

Индикатор внимания выключен. Когда индикатор внимания "Attention" выключен, это означает, что плата расширения (если таковая представлена) и слот Hot-Plug функционируют нормально и не требуют внимания.

Индикатор внимания включен. Если индикатор внимания "Attention" включен, это означает, что существуют проблемы функционирования платы или слота. Под проблемами функционирования понимаются условия, которые предот­вращают продолжение функционирования платы расширения. Операционная система или другое системное ПО определяет это состояние платы расшире­ния через состояние соответствующего индикатора внимания.. Примерами проблем функционирования могут служить неполадки внешнего кабеля, пла­ты расширения, программных драйверов и сбои питания. В общем случае включенное состояние индикатора внимания означает, что была предпринята попытка функционирования, и она была неудачной, или что произошло не­предвиденное событие.

Индикатор внимания не используется для сообщения о проблемах, обнару­женных при проверке достоверности запроса для операции Hot-Plug. Термин "проверка достоверности" применяется к любой проверке, которую выполня­ет системное ПО для гарантии, что запрошенная операция не вызовет про­блем. Примерами сбоя проверки достоверности может быть отказ в выполне­нии операции Hot-Plug, неудовлетворительное распределение питания, и другие состояния, которые могут быть обнаружены перед началом операции.

Мерцание индикатора внимания. Мерцание индикатора внимания "Attention" означает, что системное ПО идентифицирует данный слот при запросе оператора. Данное поведение управляется пользователем (например, через программный интерфейс поль­зователя или средства управления).

Индикатор питания. Индикатор питания имеет приятный зеленый цвет и используется для указа­ния состояния питания слота (табл. 9).

Индикатор питания отключен. Когда индикатор питания выключен, это означает, что разрешена установка или извлечение платы расширения. Основное питание слота снято, если это необ­ходимо для форм-фактора, примером снятия основного питания является форм-фактор платы PCI Express. Если платформа обеспечивает напряжение Vaux в слоты Hot-Plug и защелка MRL закрыта, то любые сигналы, коммутируе­мые защелкой MRL, сообщаются в слот независимо от состояния индикатора. При открытии защелки MRL коммутируемые ей сигналы снимаются. Систем­ное ПО должно отключать индикатор питания, когда слот не запитан и/или разрешено вставлять или извлекать платы расширения. Данное правило дик­туется соответствующей электромеханической спецификацией на форм-фак­тор.

Индикатор питания включен. Когда индикатор питания включен, это означает, что основное питание пода­но в слот и что установка или извлечение платы расширения запрещено.

Мерцание индикатора питания. Мерцание индикатора питания означает, что в слот подается питание или снимается из него и что установка или извлечение плат расширения запреще­но. Мерцание индикатора питания также обеспечивает оператора зрительной обратной связью при нажатии кнопки "Attention Button".

Ручная защелка MRL. Защелка MRL (Manually-operated Retention Latch) - это управляемый вруч­ную механизм удержания, который удерживает плату расширения в слоте и предотвращает извлечение платы пользователем. Эта защелка жестко держит плату в слоте, так что кабели могут быть присоединены без риска создания прерывистого контакта. В платформах, которые не реализуют сенсоры MRL, разрешены защелки MRL, которые держат две или больше плат расширения одновременно.

Сенсор MRL. Сенсором MRL может быть коммутируемое, оптическое или другое сенсорное устройство, которое сообщает порту позицию защелки MRL. Сенсор MRL со­общает "закрыто", когда защелка MRL полностью закрыта, и "открыто" во всех других случаях (т. е. полностью открыта и все промежуточные поло­жения). Если питание Vaux подведено к слотам Hot-Plug, то коммутируемые защел­кой MRL сигналы должны быть автоматически сняты со слота, если сенсор MRL указывает, что защелка MRL открыта, и сигналы должны быть поданы в слот, если сенсор MRL указывает, что защелка MRL была снова закрыта. Сенсор MRL позволяет порту отслеживать позицию защелки MRL и, следо­вательно, позволяет определить внезапное открытие защелки MRL. Когда внезапное открытие защелки MRL связано с уже идентифицированным слотом, то порт изменяет состояние этого слота на выключенное и уведомляет системное ПО. Порт не изменяет состояние индикаторов питания и внимания.

Электромеханическая блокировка. Электромеханическая блокировка -  это механизм для физического блокиро­вания платы расширения или защелки MRL до тех пор, пока системное ПО и порт не освободят ее. Реализация блокировки необязательна, а в программном интерфейсе отсутствует механизм для точного управления электромеханиче­ской блокировкой. Стандартная пользовательская модель предполагает, что если электромеханические блокировки реализованы, то они управляют одним выходным сигналом порта, который подает основное питание в слот. Систе­мы могут дополнительно расширять управление блокировками для обеспече­ния физической защиты плат расширения.

Кнопка внимания. Кнопка внимания (Attention Button) является кнопкой мгновенного срабаты­вания, размещенной рядом с каждым слотом Hot-Plug или на модуле, и управляется пользователем для начала операции "горячего" извлечения или замены в данном слоте. Индикатор питания обеспечивает визуальную обратную связь с оператором (если системное ПО принимает запрос, инициированный кнопкой внимания) путем мерцания. Как только индикатор питания замерцал, то пользователю дается пятисекундный интервал времени на отмену, во время которого по­вторное нажатие кнопки отменяет операцию.

Если операция, инициированная кнопкой, срывается по любым причинам, то рекомендуется,  чтобы  системное ПО представило сообщение, объясняющее сбой, через программный пользовательский интерфейс или добавило его в сис­темный журнал.

Программный интерфейс пользователя. Системное ПО должно обеспечивать программный пользовательский интер­фейс  -  Software User Interface, который позволяет запустить операции горя­чего извлечения и замены и который позволяет отследить состояние захва­ченного порта. Детальное рассмотрение пользовательского интерфейса горя­чего подключения является спецификой ОС и поэтому не определено в стандарте PCI Express.

В системах с несколькими слотами Hot-Plug системное ПО должно позволять пользователю инициировать операции в каждом слоте независимо от состоя­ния остальных слотов. Таким образом, пользователю разрешено инициировать операции Hot-Plug в слоте, используя либо программный пользовательский интерфейс, либо кнопку внимания (Attention Button), пока на другом слоте происходит операция Hot-Plug, независимо от того, какой интерфейс был ис­пользован для начала первой операции.

Функция распределения питания. С добавлением возможности горячей замены для плат расширения возникает необходимость в способности системы правильно выделить питание для лю­бого нового устройства, добавленного в систему. Данная функциональная возможность отделена от управления питанием; базовый уровень поддержки должен гарантировать правильное функционирование системы. Концепция распределения питания допускает блочное (узловое) построение узлов, что по­зволяет устройствам взаимодействовать с системой для достижения перечислен­ных ранее целей. Существует множество путей, которыми возможно реализо­вать в системе функциональности управления питанием, и как они выходят за пределы стандарта.

Устройства, которые будут представлены на платах расширения Hot-Plug, должны реализовывать функции распределения питания. Устройства, предна­значенные для использования на платах расширения или материнских платах, имеют опцию поддержки функции распределения питания. Устройства, кото­рые разработаны и для плат расширения, и для модулей, должны также реали­зовывать распределение питания. Стандарт PCI Express требует, чтобы уст­ройства и/или платы расширения превышали допустимый предел "конфигу­рационного" питания, определенный в соответствующей электромеханической спецификации, до окончания процесса конфигурирования и их включения сис­темой. Системы должны правильно распределять питание до включения плат расширения.

Рекомендации процесса системного распределения питания. Рекомендуется, чтобы системное встроенное ПО предоставляло агенту управления распределением питания следующую информацию:

   - полное питание системы (информация об источнике питания);

   - полное питание, выделенное системным встроенным ПО (устройствами материнской платы);

   - полное количество слотов и типов слотов.

Системное встроенное ПО отвечает за выделение питания для всех устройств на материнской плате, которые не имеют функций распределения питания. Встроенное ПО может как охватывать стандартные устройства PCI Express, которые соединены со стандартными шинами питания, так и не выделять пи­тание для них. При выделении встроенным ПО питания для устройства, ПО должно установить бит SYSTEM_ALLOC регистра Power Budget Capability (регистр устройства) в состояние логической " 1", для указания успешности опе­рации. Менеджер распределения питания отвечает за выделение питания всем устройствам PCI Express, в том числе устройствам материнской платы, имеющим функции распределения питания, но которые были помечены для выделения. Менеджер распределения питания также отвечает за определение возможности подключения устройств Hot-Plug в системе.

Указанные методы могут обеспечить одинаковую функциональность, и не тре­буется, чтобы процесс распределения питания был реализован именно в этой манере.

Управление ограничением питания слота. PCI Express предоставляет механизм для программно-управляемого ограни­чения максимальной мощности в каждый слот, которую может потреблять плата/модуль PCI Express (связанные с этим слотом). Ключевыми элементами этого механизма являются:

   - поля Slot Power Limit Value и Scale регистра Slot Capability, реализован­ного в Downstream-портах корневого комплекса и коммутатора;

   - поля Slot Power Limit Value и Scale регистра Device Capability, реализованно­го в Upstream-портах оконечного устройства, коммутатора и моста PCI Express-to-PCI;

   - сообщение "Set_Slot_Power_Limit". Это сообщение передает содержимое полей Slot Power Limit Value и Scale регистра Slot Capability порта Down­stream (корневого комплекса или коммутатора) в соответствующие поля Slot Power Limit Value и Scale регистра Device Capability порта Upstream компо­нента, присоединенного к тому же каналу.

Пределы потребляемой мощности на платформе обычно контролируются ПО (например, встроенным ПО платформы), которое учитывает специфику плат­формы, такую как:

   - разделение платформы, включая слоты для расширения ввода-вывода, ис­пользующие платы/модули расширения;

   - возможности по обеспечению питанием;

   - температурные возможности.

Данное ПО отвечает за корректное программирование полей Slot Power Limit Value и Scale регистров Slot Capability портов Downstream, соединенных со слотами расширения. После того как значение было записано в регистр внут­ри Downstream-порта, оно передается к другому компоненту, соединенному с этим портом путем сообщения "Set_SlotJPower_Limit". Получатель должен использовать содержащееся в сообщении значение для ограничения использова­ния питания всей платы/модуля. Исключение составляют платы/модули, кото­рые ни при каких условиях не выходят за предел минимального значения, определенного в соответствующей электромеханической спецификации. Предполагается, что программное обеспечение драйвера устройства платы/модуля будет в состоянии (путем чтения значения полей Slot Power Limit Value и Scale регистра Device Capability) отконфигурировать аппаратное обеспечение платы/модуля таким образом, что плата/модуль не превысят продиктованный предел. В случае, когда платформа определяет предел, кото­рый ниже минимума, необходимого для нормального функционирования, драйвер устройства должен быть в состоянии сообщить данное несоответствие верхнему уровню конфигурационного ПО.

Системой должны соблюдаться следующие правила относящиеся к механизму управления "Slot Power Limit" для плат/модулей: 

   - до тех пор, пока не будет принято сообщение "Set_Slot_Power_Limit", ука­зывающее значение предела, большее чем минимальное значение, опреде­ленное в электромеханической спецификации для форм-фактора платы или модуля, плата/модуль не должны потреблять питания больше, чем оп­ределено этим минимальным значением;

   - максимально допустимая потребляемая мощность для платы/модуля оп­ределяется самым большим значением из всех принятых сообщений " Set_Slot_Power_Lim it".

   - оконечным устройствам, коммутатору и мосту PCI Express-to-PC 1, которые предназначены для объединения на плате/модуле, где полное потребление мощности ниже минимального предела для данного форм-фактора, запре­щено игнорировать сообщения "Set_Slot_Powcr_Limit" и возвращать значе­ние "0" в нолях Slot Power Limit Value и Scale регистра Device Capability.

Перечисленные ранее компоненты должны корректно принять сообщение "Set_Slot_Power_Limit", но вместо обработки просто отменить его.

Правила относящиеся к механизму управления "Slot Power Limit" для корневых комплексов и коммутаторов, содержащих слоты:

   - downstream-порт не должен передавать сообщение "Set_Slot_Power_Limit", предел которого будет меньше, чем минимальное значение, определенное в электромеханической спецификации для форм-фактора этих слотов.

Управляющие регистры Slot Power Limit. Обычно регистры Slot Power Limit внутри Downstream-портов корневого комплекса или коммутатора программируются специфическим программным обеспечением платформы. Некоторые реализации могут использовать аппа­ратный метод для инициализации значения этих регистров и таким образом не требуют программной поддержки.

Оконечные устройства, коммутатор и мост "РСТ Express-to-PCI", предназна­ченные для объединения на плате/модуле, где полная потребляемая мощ­ность ниже минимального предела, определенного для данного форм-фактора, могут игнорировать сообщения "Set_Slot_Power_Limit". Компонен­ты PCI Express, реализованные подобным образом, могут быть не совмести­мы с потенциальными будущими форм-факторами. Такие форм-факторы воз­можно будут сообщать более низкий предел потребляемой мощности, чем минимально необходимый для новой платы/модуля, разработанной на сущест­вующих компонентах.

 

 


Лицензия