@ Карта сайта News Автора!

Bog BOS: hardware:  PCI Express

Последнее изменение файла: 2022.02.22
Скопировано с www.bog.pp.ru: 2024.04.20

Bog BOS: hardware: PCI Express

Стандарт PCI Express (3GIO) на локальное соединение (local interconnect) между микросхемами, платами и системами (PCI Express Advanced Switching, 2004). Разработан Arapahoe Working Group (произносится как "I-n-t-e-l") и утверждён бесприбыльной организацией PCI-SIG в 2003 году. Последовательный интерфейс "точка-точка", 2.5 Gbps в версии 1.0, 5 Gbps в версии 2.0, 8 Gbps в версии 3.0, 16 Gbps в версии 4.0, 32 Gbps в версии 5.0, 64 Gbps в версии 6.0 (необходимо учесть кодирование 8b/10b в версиях 1 и 2 и 64b/66b в версии 3, накладные расходы на протокол и пакетирование). В PCIe 6.0 используется кодировка 242b/256b и кодировка сигнала PAM-4, что позволяет снизить частоту передачи. Разработчики PCI Express осуществили переход от шинной архитектуры PCI к соединениям типа "точка-точка" и от параллельного физического интерфейса к последовательному (2 дифференциальные пары, LVDS), однако оставили "деревянную" структуру (обеспечивается коммутаторами - bridge; корень дерева - root complex), единое адресное пространство (иерархия окон адресов устройств, получатель пакета определяется адресом памяти) и низкоуровневый интерфейс с ПО для PCI. Осталась и терминология, например, используется Bridge вместо Switch. Передача данных производится пакетами байтов, размер пакета - от 4 до 4096 байт. Управляющая информация (включая прерывания) пересылается по тем же линиям, что и данные. Возможно агрегирование каналов (lane) расщеплением (stripe) пакета данных по линиям - x1, x2, x4, x8, x16, x32 (не реализовано). Механически разъём может быть на большую ширину, чем сигнально (питание и земля должны быть разведены полностью). Предусмотрено управление потоком, QoS, горячая замена, очереди, контроль целостности передаваемых данных, отчёт об ошибках, управление ошибками, управление питанием. Стандартизованы разъёмы и размер плат. Задержки: (чтение из чужой памяти SDRAM 333 MHz - от 240 нс).

PCI Express AS предназначен для обмена данными между системами: утрачена совместимость с PCI, добавлена возможность "общения с равными", поддержка инкапсуливанных протоколов, передача сообщений, множество адресных пространств, виртуальные каналы, групповые рассылки. Умер?

NTB (Non Transparent Bridge) - передача данных между системами.

Архитектура

Уровни:

Размеры плат (толщина - 20.32 мм):

Разъёмы:

К шине PCIe устройства PCIe (контроллеры, агенты) подключены с помощью двунаправленного последовательного физического интерфейса (LVDS, PAM-4 для PCIe 6.0). Шина PCIe (или сегмент, см. ниже) подключается к системной шине корневым мостом (PCI Root Bridge, Host Bridge). Корневой мост (это тоже PCIe устройство) имеет первичную [системную шину] (primary, upstream, ЦП - PCI Express Root Port A, чипсет - PCI Express Root Port #4) и вторичную шину PCIe (secondary, downstream, тупичок - Root Complex Integrated Endpoint). Через корневой мост устройства PCIe непосредственно доступны в едином адресном пространстве памяти (MMIO) и IO портов. Устройство может реализовывать до 8 функций, функция 0 обязательна, номера не обязаны быть непрерывными. Шины PCIe могут соединяться с помощью мостов PCIe to PCIe (PCI-to-PCI, P2P Bridge) в сегмент PCI (топология - иерархия, дерево) для преодоления лимита на количество устройств на шине, до 256 шин. Корневых мостов может быть несколько, через них может быть подключено несколько сегментов PCI или общий сегмент с общим конфигурационным пространством. ?Корневой мост не описывается в стандарте, поэтому все корневые мосты должны инициализироваться прошивкой и описаны в ACPI (_HID, _CID, _CRS, _PRT, _BBN и пр.). PCIe устройства имеют прямой доступ к памяти системы через корневой мост.

Логический набор шин PCI или сегментов PCI с 1 или несколькими хостовыми мостами образует домен PCI (Segment Group?). Использование нескольких доменов позволяет повторно использовать номера шин PCI.

Устройства PCI работают с 3 физическими адресными пространствами: адресное пространство памяти (MMIO), адресное пространство портов ввода-вывода (IO) и адресное пространство конфигурации устройства (256/4096 байт на функцию, little endian), которое используется для инициализации устройства и обработки ошибок.

Коммутатор Intel SP3SW080X8

Коммутатор (Bridge) Intel SP3SW080X8 на базе Microsemi/Microchip PMC switchtec PFX 48XG3 PM8533 (x16 к корню и 8 по x4 к устройствам) обеспечивает подключение 8 устройств PCIe 3.0 x4 (OCuLink, 4 горизонтальных и 4 вертикальных) к шине PCIe x8 (перепродажа 1:4). Определяется как PMC-Sierra Inc. Device 8533, например, коммутатор и подключённые к нему SSD

17:00.0 PCI Express Root Port A
18:00.0 PCI bridge: PMC-Sierra Inc. Device 8533; Upstream от 17:00.0
18:00.1 Memory controller: PMC-Sierra Inc. Device 8533; NUMA 0; Endpoint
19:00.0 PCI bridge: PMC-Sierra Inc. Device 8533; NUMA 0; Downstream от 18:00.0
19:01.0 PCI bridge: PMC-Sierra Inc. Device 8533; NUMA 0; Downstream от 18:00.
19:02.0 PCI bridge: PMC-Sierra Inc. Device 8533; NUMA 0; Downstream от 18:00.0
19:03.0 PCI bridge: PMC-Sierra Inc. Device 8533; NUMA 0; Downstream от 18:00.0
19:04.0 PCI bridge: PMC-Sierra Inc. Device 8533; NUMA 0; Downstream от 18:00.0
19:05.0 PCI bridge: PMC-Sierra Inc. Device 8533; NUMA 0; Downstream от 18:00.0
19:06.0 PCI bridge: PMC-Sierra Inc. Device 8533; NUMA 0; Downstream от 18:00.0
19:07.0 PCI bridge: PMC-Sierra Inc. Device 8533; NUMA 0; Downstream от 18:00.0
1a:00.0 NVMe SSD Controller Cx6 от 19:00.0
1b:00.0 NVMe SSD Controller Cx6 от 19:01.0
1c:00.0 NVMe SSD Controller Cx6 от 19:02.0
1d:00.0 NVMe SSD Controller Cx6 от 19:03.0
1e:00.0 NVMe SSD Controller Cx6 от 19:04.0
1f:00.0 NVMe SSD Controller Cx6 от 19:05.0
20:00.0 NVMe SSD Controller Cx6 от 19:06.0
21:00.0 NVMe SSD Controller Cx6 от 19:07.0

В дополнение к оборудованию выдаётся модуль ядра switchtec.ko под разные версии Linux (исходники? не проверял) и утилита switchtec (с исходниками), позволяющая посмотреть список коммутаторов - list, посмотреть состояние портов восходящего и нисходящих - status (ширина, скорость, количество принятых и переданных байт, адрес устройства), мониторинг передачи - gui, измерение задержек и производительности, температура, список событий, обновить прошивку.

Ссылки

@ Карта сайта News Автора!

Bog BOS: hardware:  PCI Express



Copyright © 1996-2024 Sergey E. Bogomolov; www.bog.pp.ru