Top.Mail.Ru
PCI-Express: революционный стандарт подключения | Блог Serverflow Скачать
прайс-лист
Бесплатная
доставка по РФ
Бонус за
обратную связь
Интернет-магазин
Серверного оборудования
8 (800) 222-70-01 Консультация IT-специалиста Сравнение

PCI-Express: революционный стандарт подключения

~ 20 мин
68
Средний
Статьи
PCI-Express: революционный стандарт подключения

Введение

Мы часто говорим о высокопроизводительных процессорах, передовых вычислительных решениях и скоростных накопителях, но редко задумываемся о том, как все эти компоненты соединяются воедино, создавая то, что мы называем сервером. Еще каких-то тридцать лет назад ситуация напоминала лоскутное одеяло: для подключения разного оборудования использовались разные порты и шины передачи данных. Клавиатура подключалась через один разъем, мышь — через другой, а для видеокарты и жесткого диска и вовсе требовались отдельные технологии, часто несовместимые между собой. Это колоссально усложняло проектирование систем, удорожало производство и сводило на нет какую-либо унификацию. PCI Express (PCIe) стал выходом из этой ситуации, который не просто объединил все внутренние компоненты, а создал единую экосистему, способную развиваться и удваивать скорость каждые несколько лет. В этой статье специалисты компании ServerFlow расскажут вам, что такое PCIe, как он появился и почему его появление стало технологическим прорывом.

История PCI-Express: что было в ходу до универсального интерфейса

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

На заре развития информационных технологий, основным драйвером развития индустрии интерфейсов была компания IBM. Первым массовым стал ISA (Industry Standard Architecture). Рожденный в недрах IBM PC, он был 8-битным, а позже расширился до 16 бит. Это был медленный, топорный интерфейс (скорость передачи составляла до 8 МБ/с или около 0,064 Гбит/с), работавший на частоте самого процессора, что создавало массу проблем. Однако, благодаря тотальному доминированию IBM, он стал де-факто стандартом на долгие годы.

IBM попыталась пойти дальше и создала MCA (Micro Channel Architecture) — 32-битную шину, которая была настоящим прорывом: высокая скорость (до 40 МБ/с или 0,32 Гбит/с), автоматическое распознавание устройств (прообраз Plug-and-Play) и умные возможности для многозадачности. Но была одна проблема: IBM запатентовала все до последнего винтика. Лицензия была дорогой, а использовать шину могли только партнеры IBM. Закрытость экосистемы вынудила группу производителей “консорциум девяти”— создать собственный стандарт. Так появилась шина EISA (Extended ISA). Она была открытой, 32-битной, быстрой (до 33 МБ/с или 0,264 Гбит/с), и, что важно, совместимой со старыми картами ISA. По возможностям она не уступала MCA, но была чудовищно дорогой в производстве из-за сложной конструкции разъемов, поэтому использовалась преимущественно в серверах и рабочих станциях.

И тут на сцену вышла Intel, выпустив VLB (VESA Local Bus). Понимая, что старый ISA душит производительность новых процессоров i486, Intel предложила решение «в лоб» — фактически подключить периферию напрямую к локальной шине процессора. VLB был быстрым (до 133 МБ/с или 1,06 Гбит/с), использовался преимущественно для видеокарт, но был чудовищно капризен. Он работал только на системах с i486 и был очень чувствителен к частоте и длине проводников.

Затем Intel, наконец, совершила прорыв, выпустив открытый стандарт PCI (Peripheral Component Interconnect). Это была первая по-настоящему универсальная 32-битная шина (позже и 64-битная), работавшая на частоте 33 или 66 МГц. Она могла использоваться для подключения любых периферийных устройств: видеокарт, сетевых и звуковых карт, контроллеров. Скорость стандартного 32-битного 33-МГц слота составляла 133 МБ/с (1,064 Гбит/с). PCI заменила устаревшие ISA и VLB, предложив не только более высокую скорость, но и полноценную поддержку технологии Plug-and-Play, избавив пользователей от плясок с бубном при настройке перемычек (джамперов).

ECS (EliteGroup) GeForce7050M-M V2.0
Материнская плата ECS (EliteGroup) GeForce7050M-M V2.0 с поддержкой PCIe 1.1.

Казалось бы, вот оно, счастье. Но индустрия 3D-графики развивалась бешеными темпами, и даже PCI начал задыхаться в попытках передать текстуры и геометрию для игр тех лет. Выход нашелся снова от Intel — AGP (Accelerated Graphics Port). Появившись в 1997 году, это был специализированный высокоскоростной порт, предназначенный исключительно для видеокарт. В отличие от PCI, работавшего в режиме разделяемой шины, AGP был выделенным каналом “точка-точка” от чипсета к видеоадаптеру. Скорость оригинального AGP 1x составляла 266 МБ/с (2,1 Гбит/с), а в версии AGP 8x доросла до 2,1 ГБ/с (16,8 Гбит/с). В системе был только один слот AGP, но этого было достаточно, так как он решал главную проблему своего времени — пропускную способность для видеокарт. Однако многие производители по инерции продолжали выпускать видеокарты под PCI для офисных систем или мультимониторных конфигураций, что создавало еще больше путаницы.

ASUS P4S800-MX LGA487
Слот AGP 4x/8x (v 3.0) на материнской плате ASUS P4S800-MX LGA487)

А для серверов в это же время IBM, HP и Compaq разработали PCI-X. По сути, это был тот же PCI, но с увеличенной частотой (до 133 МГц и выше) и 64-битной архитектурой. Скорость достигала 1,06 ГБ/с (8,5 Гбит/с) и более в версии PCI-X 2.0. Все оценили идею универсального интерфейса, которую продвигала Intel, и начали массово переходить на PCI и его производные. При этом стандарт PCI был открытым, и Intel не получила с него ни копейки лицензионных отчислений. Представьте себе иронию судьбы: сейчас Intel, переживающая не лучшие времена, с трудом сводит концы с концами в погоне за технологическими конкурентами, а раньше она была главным инноватором.

Слоты 64-bit 133MHz PCI-X и 64-bit 100MHz PCI-X
Слоты 64-bit 133MHz PCI-X(белые) и 64-bit 100MHz PCI-X(лазурный) на материнской плате Supermicro X7DB8+ LGA771.

И все равно это был полный хаос. Представьте себе материнскую плату конца 90-х — начала 2000-х. На ней были длинные черные слоты ISA, короткие белые слоты PCI, коричневый слот AGP (с одним ключом в начале), и в серверном сегменте — длинные PCI-X (с ключом в другом месте, чтобы карту PCI-X нельзя было воткнуть в обычный PCI). Скорости росли за счет увеличения частоты (и, как следствие, проблем с синхронизацией и помехами) или за счет увеличения количества контактов (масштабирования ширины шины). PCI-X 2.0 и вовсе разогнался до 4,3 ГБ/с, но требовал таких инженерных ухищрений, что становился золотым. Индустрия задыхалась от разнобоя, и требовалось решение, которое разорвет этот порочный круг раз и навсегда. И оно пришло в 2002 году.

Разнообразие интерфейсов и слотов PCI
Разнообразие интерфейсов PCI и слотов под них. С этой путаницей приходилось сталкиваться пользователям вычислительных систем до появления унифицированного PCIe.

Что такое PCI-Express?

PCI Express (PCIe) — это не просто очередная шина передачи данных. Это основной, универсальный, максимально стандартизированный интерфейс высокоскоростной передачи данных в современных компьютерах и серверах.

Его главная магия — в обратной совместимости и универсальности. Вы ни о чем не думаете — просто берете старую карту расширения с интерфейсом PCIe 2.0 и вставляете ее в современную материнскую плату со слотами PCIe 5.0. И все будет работать! Интерфейс умеет договариваться: карта и слот обмениваются служебными сигналами и выбирают версию, которая комфортна для обоих устройств. Миссия, заложенная разработчиками — удовлетворить потребности индустрии в пропускной способности на 20, а то и 30 лет вперед, создав единый стандарт на все случаи жизни.

PCIe настолько универсален, что сфера его применения колоссальна, ведь с его помощью можно подключать буквально все: от GPU (потребительских и корпоративных) и сверхбыстрых NVMe SSD накопителей до различных USB-хабов, контроллеров, средств доверенной загрузки и прочей периферии.

Ключевое технологическое отличие PCIe от своего предка PCI — способ передачи данных. В старом PCI использовалась параллельная шина: данные передавались одновременно по множеству проводников (32 или 64 линии). С ростом частоты синхронизировать все линии становилось невозможно. PCIe пошел другим путем. Он использует последовательную передачу данных по принципу “точка-точка”. Каждое устройство соединяется напрямую с процессором или чипсетом через выделенные линии. Данные передаются последовательно, бит за битом, но на бешеной частоте. Это позволило избавиться от проблем синхронизации, помех и сделать контроллеры намного проще и быстрее. При этом, если нужно больше пропускной способности, мы просто объединяем несколько таких линий в один пучок. Именно поэтому скорость передачи данных с каждым новым поколением PCIe увеличивается ровно в два раза: инженеры удваивают частоту сигнала, сохраняя при этом основные принципы кодирования и передачи.

Каждый слот PCIe физически состоит из одной или нескольких таких линий передачи данных. Одна линия (x1) представлена всего четырьмя контактами (два для передачи, два для приема), что обеспечивает полноценный дуплексный канал, по которому данные могут идти одновременно в обе стороны.

Количество линий PCIe

Количество линий — это физическая ширина канала. Чем их больше, тем больше данных может пройти за один такт. Давайте рассмотрим, какие конфигурации встречаются в природе:
  • PCIe x1. Это базовый стандарт, слот, снабженный всего одной линией. Его длина составляет около 25 мм. Это самый компактный слот, предназначенный для подключения не самых требовательных устройств: простых звуковых карт, внутренних USB-хабов, адаптеров Wi-Fi или низкоскоростных сетевых карт. Его производительности хватает для большинства задач ввода-вывода, не требующих огромных потоков данных.
Разъем PCI Express x1
Разъем PCI Express x1.
  • PCIe x4. Слот с четырьмя линиями, длина которого составляет 39 мм. Это «золотая середина» для многих производительных контроллеров. Он идеально подходит для высокоскоростных сетевых карт, RAID-контроллеров, а также, что особенно важно, для NVMe SSD-накопителей в форм-факторе M.2, которые обычно используют 4 линии для достижения своих фантастических скоростей.
  • PCIe x8. Шина с восемью линиями, длиной 56 мм. Этот слот часто можно встретить на серверных материнских платах, где он используется для подключения производительных контроллеров хранения данных или сетевых карт. Также в некоторых конфигурациях видеокарты начального или среднего уровня могут работать в режиме x8 без существенной потери производительности, особенно в многопроцессорных серверах, где количество линий процессора распределяется между множеством устройств.
Разъем PCI Express x8
Разъем PCI Express x8.
  • PCIe x16. Самый крупный слот, знакомый каждому геймеру. Он насчитывает 16 линий и достигает в длину 89 мм. Это основной интерфейс для подключения мощных игровых и профессиональных видеокарт, ускорителей искусственного интеллекта, FPGA-плат и сетевых карт серверного уровня, требующих максимальной пропускной способности.
Разъем PCI Express x16
Разъем PCI Express x16.

! Существует также экзотическая конфигурация PCIe x24. Это очень редкий и, на первый взгляд, странный формат, который почти не используется в стандартных слотах. Иногда он применяется в специальных райзер-картах на серверных материнских платах. Однако официально спецификацией закреплены только форм-факторы до x16.


Разница в длине слотов PCIe
Разница в длине слотов PCIe с разным количеством линий.

Версии PCI-Express

Эволюция PCI Express — это история планомерного удвоения пропускной способности примерно каждые три-четыре года. Каждое новое поколение требует титанических инженерных усилий для борьбы с затуханием сигнала и помехами на высоких частотах.

Материнские платы Supermicro H12SSL-N и H13SSL-N
Материнские платы Supermicro H12SSL-N с поддержкой PCIe 4.0 и H13SSL-N с поддержкой PCIe 5.0. Никаких явных визуальных отличий между между стандартами PCIe на материнских платах нет.

PCIe 1.0

Появившийся в 2003 году, PCIe 1.0 пришел на смену AGP и PCI, появившись на первых материнских платах для процессоров Intel и AMD. Это был тектонический сдвиг. Пропускная способность составляла 2.5 гигатранзакций в секунду (GT/s). Откуда такое странное измерение? Дело в том, что из-за схем кодирования (в первом поколении использовалось кодирование 8b/10b, где каждые 8 бит данных превращались в 10 бит для передачи) полезная скорость отличается от скорости передачи сигнала. Поэтому производительность меряют в количестве переданных символов (транзакций). Так вот, полезная скорость на одну линию составила 250 МБ/с. В максимальной конфигурации x16 это давало 4 ГБ/с в каждом направлении. Главное значение этой версии в том, что она заложила основы последовательной архитектуры, которой мы пользуемся до сих пор.

PCIe 2.0

Вышедший в 2007 году стандарт удвоил частоту до 5 GT/s, что дало 500 МБ/с на линию (или 8 ГБ/с для x16). Он сохранил полную программную совместимость с версией 1.x, но добавил улучшенные протоколы управления питанием. Зачем это было нужно? Рынок видеокарт тогда рос как на дрожжах: появление таких монстров, как NVIDIA GeForce 200 серия и AMD Radeon HD 4000, требовало более широкого и быстрого канала для передачи текстур и данных. Старый PCIe 1.0 для топовых карт становился узким местом.

PCIe 3.0

Этот стандарт, утвержденный в 2010 году, стал настоящим технологическим прорывом и долгожителем. Вместо простого повышения частоты инженеры изменили схему кодирования с неэффективной 8b/10b на более совершенную 128b/130b. Это позволило поднять эффективность передачи данных с ~80% (как у 2.0) до впечатляющих ~98%. Частота сигнала выросла до 8 GT/s, но благодаря новому коду полезная скорость составила 984.6 МБ/с на линию — фактически 1 ГБ/с. PCIe 3.0 продержался на рынке дольше всех и до сих пор остается актуальным для огромного количества систем. Именно в эпоху господства PCIe 3.0 произошла революция в мире хранения данных — появились NVMe-накопители, особенно в форм-факторе M.2, которые сейчас стремительно вытесняют устаревшие SATA SSD.

PCIe 4.0

В 2017 году спецификация была готова, и стандарт вновь удвоил скорость, достигнув 16 GT/s. Благодаря сохранению эффективного кодирования, полезная скорость составила около 2 ГБ/с на линию. Первыми пользователями новинки стали серверы, корпоративные NVMe-накопители и сфера высокопроизводительных вычислений (HPC). На массовый рынок PCIe 4.0 пришел только в 2019 году с выходом процессоров AMD Ryzen 3000 и чипсета X570. Это дало толчок развитию сверхбыстрых потребительских SSD, способных читать данные со скоростью 5-7 ГБ/с.

PCIe 5.0

Утвержденный в 2019 году стандарт разогнался до 32 GT/s, обеспечив ~4 ГБ/с на одну линию (или 64 ГБ/с для x16). Это уже территория дата-центров, ИИ-ускорителей и сетевых карт следующего поколения (400G Ethernet, InfiniBand). На момент написания статьи PCIe 5.0 активно внедряется в серверных процессорах (Intel Xeon Scalable, AMD EPYC Genoa) и работает в топовых потребительских платформах. Может показаться, что 64 ГБ/с — это невероятно много. Но давайте представим ситуацию: у вас есть сервер с двумя мощными ускорителями ИИ и сетевой картой 400G. Если вдуматься, одна карта 400G — это 50 ГБ/с в каждом направлении. И если вы используете оба порта на карте (а они часто используются для отказоустойчивости или агрегации), то два порта, работающих на полную катушку, будут загружены под завязку, и вы поймете, что 5.0 — это не роскошь, а жизненная необходимость для современных ЦОДов.

PCIe 6.0

В 2022 году была финализирована спецификация PCIe 6.0. Это, без преувеличения, революция. Для достижения 64 GT/s (8 ГБ/с на линию) инженерам пришлось перейти на новую схему модуляции сигнала — PAM-4 (импульсно-амплитудная модуляция с 4 уровнями). Да-да, это та самая технология, которая используется в современных высокоскоростных сетях Ethernet. Вместо того чтобы передавать простые 0 и 1 (NRZ), PAM-4 кодирует информацию, используя четыре уровня сигнала, передавая два бита за один символ. Это позволило удвоить скорость без удвоения частоты. Однако PAM-4 более чувствителен к помехам, поэтому стандарт также ввел поддержку FEC (прямое исправление ошибок) для сохранения целостности сигнала. Перспективы применения — экзафлопсные суперкомпьютеры, ускорители ИИ следующего поколения и сети 800G.

PCIe 7.0

В 2025 году ожидается финализация стандарта PCIe 7.0, который обещает скорость в 128 GT/s или ~16 ГБ/с на линию. Технологически это будет дальнейшее развитие PAM-4 и активная работа над снижением задержек и энергопотребления. Говорить о практическом применении пока рано, но гипотетические сценарии будущего включают сети 800G/1.6T Ethernet, интерконнекты для квантовых компьютеров и связь между оптическими чипами. Важно помнить железное правило IT-индустрии: если вы видите новость о том, что представили новый стандарт PCIe, это не значит, что завтра вы пойдете в магазин за устройством с его поддержкой. Релиз спецификации PCIe 7.0 означает, что инженеры только начинают проектировать чипы под него, а пока в магазинах появляются первые устройства на PCIe 6.0. Разработка новых стандартов всегда забегает далеко вперед, чтобы дать производителям время на внедрение.

PCIe vs CXL

В последнее время все чаще можно услышать аббревиатуру CXL. Многие пишут о ней, она становится невероятно популярной, и у неискушенного читателя может сложиться впечатление, что CXL вот-вот заменит привычный PCIe. Но это не так. И вот почему.

PCIe — это физический стандарт. Это разъем, дорожки на материнской плате, электрические сигналы и базовый протокол передачи пакетов. CXL (Compute Express Link) — это высокоуровневый протокол, который работает поверх физического уровня PCIe 5.0 и 6.0.

В чем же принципиальная разница в их работе? PCIe изначально проектировался для передачи данных между процессором и периферийными устройствами — это классический ввод-вывод (I/O). Устройство имеет свою собственную память (например, видеопамять на GPU), и для того чтобы процессор мог с этими данными работать, их нужно скопировать драйвером из памяти устройства в оперативную память, а потом обратно. Это занимает время и ресурсы.

CXL решает эту проблему, обеспечивая когерентность памяти. Что это значит? CXL позволяет процессору и ускорителям (GPU, FPGA, специализированным чипам для ИИ) работать с общей памятью на аппаратном уровне, без лишнего копирования. В архитектуре с CXL процессор и ускоритель могут обращаться к одним и тем же ячейкам данных одновременно. Исчезает необходимость в громоздких драйверах и двойном копировании туда-обратно — все устройства видят единое пространство памяти. Таким образом, CXL не заменяет PCIe, а расширяет его возможности для построения ЦОД и ИИ-задач.

Принцип работы интерконнекта CXL
Иллюстрация, показывающая принцип работы интерконнекта CXL. Источник: Compute Express Link.

Выводы

Интерфейс PCIe прошел удивительный путь: от разрозненных, несовместимых и зачастую проприетарных интерфейсов вроде ISA, MCA и AGP к единому и эффективному стандарту. Он стал не просто основой, а буквально фундаментом, на котором построены все современные вычислительные системы — от смартфонов (где используются его производные) до гигантских суперкомпьютеров. Эволюция этого стандарта не останавливается ни на минуту. Удвоение скорости каждые 3-4 года на протяжении уже более 20 лет — это колоссальный инженерный подвиг, требующий борьбы с фундаментальными законами физики на каждом новом витке. По иронии судьбы, PCIe, задуманный в первую очередь для видеокарт, в итоге убил не только ISA и MCA, но и даже стандарт SATA, который десятилетиями был королем в мире хранения данных — NVMe-диски просто не оставили ему шансов. Так что, в следующий раз, глядя на материнскую плату, помните: разъемы PCIe — это не просто "слоты для видюх", а сложнейшая, постоянно развивающаяся экосистема, от которой напрямую зависит производительность, масштабируемость и возможности вашего сервера.
Автор: Serverflow Serverflow
Поделиться

Комментарии 0

Написать комментарий
Сейчас тут ничего нет. Ваш комментарий может стать первым.
Написать отзыв
До 6 фото, размером до 12Мб каждое
Мы получили ваш отзыв!

Он появится на сайте после модерации.

Написать комментарий

Комментарий появится на сайте после предварительной модерации

До 6 фото, размером до 12Мб каждое
Мы получили ваш отзыв!

Он появится на сайте после модерации.

Мы свяжемся с вами утром

График работы: Пн-Пт 10:00-18:30 (по МСК)

Обработаем вашу заявку
в ближайший рабочий день

График работы: Пн-Пт 10:00-18:30 (по МСК)