Современные компьютеры используют высокоскоростной стандарт PCI Express (PCI-E) для подключения основных компонентов - видеокарт, накопителей, сетевых адаптеров. От распиновки PCI-E напрямую зависит производительность устройств и их совместимость друг с другом. Давайте разберемся в тонкостях спецификаций и стандартов PCI-E распиновки.
История стандартов PCI-E
Распиновка PCI Express берет свое начало от более ранних шин PCI, AGP и PCI-X, использовавшихся в компьютерах:
- PCI - первая версия спецификации, появившаяся в начале 90-х годов
- AGP - специализированная шина для видеокарт
- PCI-X - обновленный стандарт шины PCI с увеличенной пропускной способностью
Однако все эти технологии использовали параллельную шину и имели ограничения по скорости передачи данных. В начале 2000-х годов консорциум PCI-SIG начал разработку принципиально нового стандарта PCI Express 1.0 на основе последовательной передачи данных. Первые спецификации PCI-E 1.0 были утверждены в 2003 году.
Уже через 4 года, в 2007 году появляется обновленная версия - PCI Express 2.0, где скорость передачи данных была увеличена в 2 раза по сравнению с изначальной спецификацией.
Следующим важным этапом развития стандарта стал 2010 год и выход PCI Express 3.0. Благодаря переходу на новое 128б/130б кодирование, реальная скорость была увеличена еще в 2 раза по сравнению с PCI-E 2.0.
PCI Express 4.0 появился в 2017 году, удваивая пропускную способность шины по сравнению с PCI-E 3.0 до 16 GT/c.
Самая актуальная на данный момент версия PCI-E 5.0 была утверждена в 2019 году и обеспечивает 32 GT/s на каждую линию.
Архитектура и особенности PCI-E
Главное отличие PCI Express от предыдущих шин в том, что это не общая шина, а точечные соединения напрямую между устройствами. Такая архитектура называется "точка-точка".
Основными элементами PCI-E являются:
- Линии (lanes) - дифференциальные линии связи, каждая из которых передает данные со скоростью от 2,5 до 32 Гбит/с в зависимости от версии PCI-E.
- Соединения (links) - набор линий между двумя устройствами, например x1, x4, x8, x16.
Для кодирования данных PCI-E использует схемы 8б/10б (20% накладных расходов) и 128б/130б (1.5% накладных).
На физическом уровне передача данных осуществляется с помощью дифференциальной сигнализации LVDS.
В отличие от классической шины, где данные передаются всем устройствам параллельно, в PCI-E используется пакетная коммутация. Это позволяет добиться большей скорости и масштабируемости.
Сравнение с другими шинами
По сравнению с классической шиной PCI, где все устройства подключались к общей магистрали параллельно, в PCI-E используется последовательная точка-точка топология, что увеличивает скорость передачи данных.
Infiniband, RapidIO и HyperTransport - другие высокоскоростные шины, ориентированные на масштабируемость и низкие задержки. PCI-E занимает компромиссное положение между скоростью и гибкостью, поскольку изначально разрабатывалась как локальная шина, совместимая с классической PCI.
Форм-факторы и распиновка PCI-E на практике
На практике PCI-E реализуется в различных форм-факторах и конфигурациях распиновки:
- x1 - одна дифференциальная линия, используется для небольших устройств вроде сетевых карт
- x4 - часто применяется для подключения накопителей к чипсету
- x8 - встречается в слотах расширения на материнских платах
- x16 - стандарт для дискретных видеокарт
- x32 - максимальная конфигурация, редко используется из-за громоздкости
Наиболее распространенный вариант распиновки PCI-E - X16 (для дискретных видеокарт). Такое соединение использует 16 дифференциальных линий PCI-E и обеспечивает максимальную пропускную способность для графического адаптера.
Для компактных устройств существуют малые форм-факторы PCI-E: M.2 для SSD накопителей и Mini PCI-E для ноутбуков.
В ряде случаев производители используют нестандартные конфигурации, например x24 или даже x48 в мощных видеокартах.
6-контактный разъем PCI-E x1 часто используется для подключения небольших устройств, например адаптеров беспроводной сети. Такая распиновка содержит по одной паре дифференциальных линий приема и передачи данных.
Особенности протокола PCI-E
Рассмотрим некоторые отличия протокола PCI Express от предшественников:
- Поддержка горячей замены устройств plug-and-play.
- Автоматическое распределение пропускной способности между устройствами.
- Низкоуровневое управление питанием для энергосбережения.
- Нативная поддержка виртуализации и разделения ресурсов.
Это делает шину PCI-E гибкой и удобной в применении.
Будущее стандарта
У PCI-E большой потенциал для дальнейшего развития. Ожидается переход на оптические кабели, что позволит увеличить скорость и снизить энергопотребление. В PCI-E 8.0 скорость может достигнуть 256 Гбит/с на линию.
Активно обсуждается использование шины PCI-E не только внутри ПК, но и для внешних подключений, например в центрах обработки данных.