Прерывания на шине PCI Express.
Модель прерываний PCI Express поддерживает два механизма:
- эмуляцию INT x;
- поддержку сообщения о прерывании, иначе MSI (Message Signaled Interrupt).
В целях обратной совместимости PCI Express предоставляет механизм эмуляции PCI INT x (рис. 1) для сообщения прерываний системному контроллеру прерываний (обычно как часть системной базовой логики). Данный механизм совместим с существующим программным обеспечением PCI, и обеспечивает такой же уровень и тип обслуживания, как соответствующий механизм сообщений о прерывании РСI, при этом он является независимым от особенностей системного контроллера прерываний.
Рис. 1. Механизм PCI Express MSI
Механизм обратной совместимости допускает поддержку загрузочных устройств без необходимости комплекса сервисных стеков конфигурирования/управления прерываниями уровня BIOS. Он виртуализирует физические сигналы прерываний PCI путем использования механизма внутриполосной системы сигналов. В дополнение к PCI INTx-совместимой эмуляции прерываний, PCI Express поддерживает механизм сообщения о прерывании (MSI). Механизм PCI Express MSI (рис. 2) является совместимым с функциональностью MSI, определенной в спецификации PCI версии 2.3.
Рис. 2. Пример реализации концепции MSI (Message Signaled Interrupt).
PCI Express применяет эволюционный подход от PCI по отношению к поддержке прерываний. Как требуется для механизмов прерываний PCI/PCI-X, каждое устройство должно использовать различные режимы для функционирования INTx и MSI (cложно требовать от устройства PCI Express поддержки обеих схем, не отличающихся от используемых для устройств PCI/PCI-X). Данный подход обладает следующими преимуществами и недостатками:
- совместимостью с существующими программными моделями PCI;
- непосредственной поддержкой для загрузочных устройств;
- постепенным прекращением поддержки (Easier End of Life-EOL) механизмов INTx.
Существующая программная модель используется для разделения существующего режима (INT x) и режима функционирования MSI, таким образом, для PCI Express не требуется специальной программной поддержки.