Физический уровень интерфейса допускает как электрическую, так и оптическую реализацию. Базовое соединение электрического интерфейса(xl – 1 линия) состоит из двух дифференциальных низковольтных сигнальных пар — передающей (сигналы РЕТрО, РЕТпО) и принимающей (PERpO, PERnO). В интерфейсе применена развязка передатчиков и приемников по постоянному току, что обеспечивает совместимость компонентов независимо от технологии их изготовления и снимает некоторые проблемы передачи сигналов. Для передачи используется самосинхронизирующееся кодирование, что позволяет достигать высоких скоростей передачи:
2,5Г бит/с «сырых» данных (после кодирования 8В/10В) в каждую сторону – для интерфейса PCI Express 1.0;
5Г бит/с «сырых» данных (после кодирования 8В/10В) в каждую сторону – для интерфейса PCI Express 2.0;
8Г бит/с «сырых» данных (после кодирования 128 бит/130 бит) в каждую сторону – для интерфейса PCI Express 3.0.
Для увеличения (масштабирования) пропускной способности возможно объединение (агрегирование) сигнальных линий (сигнальных пар в электрическом интерфейсе) по одинаковому числу в обоих направлениях. Предусмотрены варианты соединений из 1, 2, 4, 8, 12, 16 и 32 линий (обозначаются как xl, х2, х4, х8, х12, х16 и х32); передаваемые данные между ними распределяются побайтно.
Во время аппаратной инициализации в каждом соединении согласуются число линий и скорость передачи; согласование выполняется на низком уровне без какого-либо программного участия. Согласованные параметры соединения действуют на все время последующей работы.
Обеспечение «горячего» подключения на физическом уровне интерфейса PCI Express не требует каких-либо дополнительных аппаратных затрат, поскольку двухточечное соединение не затрагивает «лишних» участников. Безопасная коммутация сигналов не требуется, возможности подключаемого устройства никак не влияют на режимы работы остальных устройств.
Малое число сигнальных контактов интерфейса дает большую свободу в выборе конструктивных реализаций интерфейсаPCI Express:
· соединение компонентов в пределах платы;
· разъемы (слоты) и карты расширения в конструктивах PC/AT и АТХ;
· внутренние и внешние карты расширения мобильных компьютеров;
· малогабаритные модули ввода-вывода для серверов и коммуникационной
аппаратуры;
· модули для промышленных компьютеров;
· разъемное подключение «дочерних» карт (mezannine interface);
· кабельные соединения блоков.
Для карт расширения в конструктивах PC/AT и АТХ предусматриваются разные модификации разъема (слота) интерфейса PCI Express, различающиеся числом пар сигнальных линий (xl, х4, х8, х16) и, соответственно, размером. При этом в разъемы (слоты) большего размера можно устанавливать карты с разъемом того же размера (или меньшего — это называется Up-plugging). Однако противоположный вариант (Down-plugging) — установка большой карты в меньший слот — механически невозможен (в интерфейсе PCI/PCI-X возможна). Как было показано ранее, самый «слабый» вариант интерфейса PCI Express обеспечивает пропускную способность на уровне стандартной шины PCI.
Набор сигналов интерфейса PCI Expressневелик:
♦ PETpO, PETnO,..., PETpl5, PETnl5 — выходы передатчиков сигнальных пар 0...15;
♦ PERpO, PERnO,..., PERpl5, PERnl5 — входы приемников;
♦ REFCLK+ и REFCLK — сигналы опорной частоты;
♦ PERST# — сигнал сброса карты;
♦ WAKE# — сигнал «пробуждения» (от карты);
♦ PRSNT1#, PRSNT2# — сигналы обнаружения подключения-отключения карты
для системы «горячего» подключения. На карте эти цепи соединяются между
собой, причем для PRSNT2# выбирается контакт с самым большим номером.
Это позволяет точнее отслеживать моменты подключения-отключения (в случае наклона карты). Для определения числа линий подключенной карты данные линии не используются — разрядность линий определяется автоматически при установлении соединения (в процедуре тренировки).
Дополнительно на разъеме (слоте) имеются необязательные сигналы интерфейса SMBus (SMB.CLK и SMB.DATA) и интерфейса JTAG (TCLK, TDI, TDO, TMS, TRST#).
На карты подается основное питание +3,3V, +12V и дополнительное +3,3Vaux.
С интерфейсом PCI Express удобно компонуются модули ввода-вывода как сетевых интерфейсов для серверов, так и коммуникационных устройств стоечного исполнения. Такие модули могут быть довольно компактными (высота 2U не вызывает проблем размещения разъема), при этом производительности интерфейса достаточно даже для таких критичных модулей, как Fibre Channel, Gigabit Ethernet (GbE), 10GbE.
Интерфейс PCI Express используется и в промышленных компьютерах, для чего имеются спецификации PICMG 3.4 (малогабаритные конструктивы для xl, х2 и х4), а также конструктивы в формате Compact PCI.
Интерфейс PCI Express существует и в кабельном исполнении для кабельных соединений блоков, находящихся на небольшом удалении друг от друга. Так, по интерфейсу PCI Express можно подключать док-станции к блокнотным ПК. Возможность вывода интерфейса системного уровня за пределы корпуса компьютера из предшественников интерфейса PCI Express поддерживал только интерфейс ISA, и то лишь при низких скоростях обмена (на частотах до 5 МГц). Из новых последовательных интерфейсов системного уровня эта возможность имеется в интерфейс InfiniBand. Наличие кабельного варианта высокопроизводительного интерфейса системного уровня позволяет отойти от традиционной компоновки компьютера, при которой в системном блоке концентрируются все компоненты, требующие интенсивного обмена с ядром компьютера.
Контрольные вопросы
1. Назовите типы интерфейсов
2. Что такое транзакция на интерфейсе?
3. Охарактеризуйте интерфейс без расщепления транзакций
4. Охарактеризуйте интерфейс с расщеплением транзакций
5. В чем состоят отличия между синхронным и асинхронным интерфейсом?
6. Назовите основные особенности интерфейса PCI Express
7. Как осуществляются транзакции на интерфейсе PCI Express?
8. Сколько адресных пространств на интерфейсе PCI Express?
9. Как организованы прерывания на интерфейсе PCI Express?
10. Функции уровня транзакций
11. Функции канального уровня
12. Пропускные способности интерфейса PCI Express
13. Физическая реализация интерфейса PCI Express
14. Масштабируемость интерфейса PCI Express
15. Топология интерфейса PCI Express
16. Как обеспечивается надежность передачи данных?
17. Особенности интерфейса PCI Express 2.0
18. Особенности интерфейса PCI Express 3.0