PCI-E PCI Express | |
PCI Express logo | |
Год разработки | 2002 (1.0) январь 2007 (2.0) ноябрь 2010 (3.0) |
Разработчик | Intel, PCI Special Interest Group |
Что эта шина заменила | AGP, PCI-X, PCI |
Ширина в битах | 32 |
Тип | Последовательная |
Поддерживает горячее подключение? | да |
Внешняя шина? | нет |
PCI Express, или PCIe, или PCI-e (также известная как 3GIO for 3rd Generation I/O; не путать с PCI-X и PXI) — компьютерная шина (хотя на физическом уровне шиной не является, будучи соединением типа «точка-точка»), использующая программную модель шины PCI и высокопроизводительный физический протокол, основанный на последовательной передаче данных.
Разработка стандарта PCI Express была начата фирмой Intel после отказа от шины InfiniBand. Официально первая базовая спецификация PCI Express появилась в июле 2002 года.[1][2] Развитием стандарта PCI Express занимается организация PCI Special Interest Group.
В отличие от стандарта PCI, использовавшего для передачи данных общую шину с подключением параллельно нескольких устройств, PCI Express, в общем случае, является пакетной сетью с топологией типа звезда.
Устройства PCI Express взаимодействуют между собой через среду, образованную коммутаторами, при этом каждое устройство напрямую связано соединением типа точка-точка с коммутатором.
Кроме того, шиной PCI Express поддерживается:[1][2]
Шина PCI Express нацелена на использование только в качестве локальной шины. Так как программная модель PCI Express во многом унаследована от PCI, то существующие системы и контроллеры могут быть доработаны для использования шины PCI Express заменой только физического уровня, без доработки программного обеспечения. Высокая пиковая производительность шины PCI Express позволяет использовать её вместо шин AGP и тем более PCI и PCI-X.[2] Де-факто PCI Express заменила эти шины в персональных компьютерах.
Выводы PCI Express X1 | |||
---|---|---|---|
№ вывода | Назначение | № вывода | Назначение |
B1 | +12V | A1 | PRSNT1# |
B2 | +12V | A2 | +12V |
B3 | +12V | A3 | +12V |
B4 | GND | A4 | GND |
B5 | SMCLK | A5 | JTAG2 |
B6 | SMDAT | A6 | JTAG3 |
B7 | GND | A7 | JTAG4 |
B8 | +3.3V | A8 | JTAG5 |
B9 | JTAG1 | A9 | +3.3V |
B10 | 3.3V__AUX | A10 | 3.3V |
B11 | WAKE# | A11 | PERST# |
B12 | RSVD | A12 | GND_A12 |
B13 | GND | A13 | REFCLK+ |
B14 | PETP0 | A14 | REFCLK- |
B15 | PETN0 | A15 | GND |
B16 | GND | A16 | PERP0 |
B17 | PRSNT2# | A17 | PERN0 |
B18 | GND | A18 | GND |
Mini PCI Express — формат шины PCI Express для портативных устройств.
Для этого стандарта разъёма выпускается много периферийных устройств:
Выводы Mini PCI-E | |||
---|---|---|---|
№ вывода | Назначение | № вывода | Назначение |
51 | Зарезервировано | 52 | +3.3V |
49 | Зарезервировано | 50 | GND |
47 | Зарезервировано | 48 | +1.5V |
45 | Зарезервировано | 46 | LED_WPAN# |
43 | Зарезервировано | 44 | LED_WLAN# |
41 | Зарезервировано (+3.3V) | 42 | LED_WWAN# |
39 | Зарезервировано (+3.3V) | 40 | GND |
37 | Зарезервировано (GND) | 38 | USB_D+ |
35 | GND | 36 | USB_D- |
33 | PETp0 | 34 | GND |
31 | PETn0 | 32 | SMB_DATA |
29 | GND | 30 | SMB_CLK |
27 | GND | 28 | +1.5V |
25 | PERp0 | 26 | GND |
23 | PERn0 | 24 | +3.3Vaux |
21 | GND | 22 | PERST# |
19 | Зарезервировано (UIM_C4) | 20 | W_DISABLE# |
17 | Зарезервировано (UIM_C8) | 18 | GND |
15 | GND | 16 | UIM_VPP |
13 | REFCLK+ | 14 | UIM_RESET |
11 | REFCLK- | 12 | UIM_CLK |
9 | GND | 10 | UIM_DATA |
7 | CLKREQ# | 8 | UIM_PWR |
5 | Зарезервировано (COEX2) | 6 | 1.5V |
3 | Зарезервировано (COEX1) | 4 | GND |
1 | WAKE# | 2 | 3.3V |
Контакты SSD Mini PCI Express[источник не указан 1976 дней] | |||
---|---|---|---|
33 | Sata TX+ | 34 | GND |
31 | Sata TX- | 32 | IDE_DMARQ |
29 | GND | 30 | IDE_DMACK |
27 | GND | 28 | IDE_IOREAD |
25 | Sata RX+ | 26 | GND |
23 | Sata RX- | 24 | IDE_IOWR |
21 | GND | 22 | IDE_RESET |
19 | IDE_D7 | 20 | IDE_D8 |
17 | IDE_D6 | 18 | GND |
15 | GND | 16 | IDE_D9 |
13 | IDE_D5 | 14 | IDE_D10 |
11 | IDE_D4 | 12 | IDE_D11 |
9 | GND | 10 | IDE_D12 |
7 | IDE_D3 | 8 | IDE_D13 |
5 | IDE_D2 | 6 | IDE_D14 |
3 | IDE_D1 | 4 | GND |
1 | IDE_D0 | 2 | IDE_D15 |
Слоты ExpressCard применяются в ноутбуках для подключения:[4]
Для подключения устройства PCI Express используется двунаправленное последовательное соединение типа точка-точка, называемое линией (англ. lane — полоса, ряд); это резко отличается от PCI, в которой все устройства подключаются к общей 32-разрядной параллельной двунаправленной шине.
Соединение (англ. link — связь, соединение) между двумя устройствами PCI Express состоит из одной (x1) или нескольких (x2, x4, x8, x12, x16 и x32) двунаправленных последовательных линий.[1][2] Каждое устройство должно поддерживать соединение, по крайней мере, с одной линией (x1).
На электрическом уровне каждое соединение использует низковольтную дифференциальную передачу сигнала (LVDS), приём и передача информации производится каждым устройством PCI Express по отдельным двум проводникам, таким образом, в простейшем случае устройство подключается к коммутатору PCI Express всего лишь четырьмя проводниками.
Использование подобного подхода имеет следующие преимущества:
В обоих случаях на шине PCI Express будет использоваться максимальное количество линий, доступных как для карты, так и для слота. Однако это не позволяет устройству работать в слоте, предназначенном для карт с меньшей пропускной способностью шины PCI Express. Например, карта x4 физически не поместится в стандартный слот x1, несмотря на то, что она могла бы работать в слоте x1 с использованием только одной линии. На некоторых материнских платах можно встретить нестандартные слоты x1 и x4, у которых отсутствует крайняя перегородка, таким образом, в них можно устанавливать карты большей длины, чем разъём. При этом не обеспечивается питание и заземление выступающей части карты, что может привести к различным проблемам.
PCI Express пересылает всю управляющую информацию, включая прерывания, через те же линии, что используются для передачи данных. Последовательный протокол никогда не может быть заблокирован, таким образом задержки шины PCI Express вполне сравнимы с таковыми для шины PCI (заметим, что шина PCI для передачи сигнала о запросе на прерывание использует отдельные физические линии IRQ#A, IRQ#B, IRQ#C, IRQ#D).
Во всех высокоскоростных последовательных протоколах (например, гигабитный Ethernet), информация о синхронизации должна быть встроена в передаваемый сигнал. На физическом уровне PCI Express использует метод канального кодирования 8b/10b (8 бит в десяти, избыточность — 20 %)[1][2] для устранения постоянной составляющей в передаваемом сигнале и для встраивания информации о синхронизации в поток данных. Начиная с версии PCI Express 3.0 используется более экономное кодирование 128b/130b с избыточностью 1,5 %.
Некоторые протоколы (например, SONET/SDH) используют метод, который называется скремблинг (англ. scrambling) для встраивания информации о синхронизации в поток данных и для «размывания» спектра передаваемого сигнала. Спецификация PCI Express также предусматривает функцию скремблинга, но скремблинг PCI Express отличается от такового для SONET.
PCIe является полнодуплексным[5] протоколом. То есть потоки приёма и передачи имеют независимые каналы и одинаковые максимальные скорости. Скорость компьютерных шин принято выражать в гигатранзакциях в секунду. За 1 транзакцию передаётся одно кодовое слово. Для расчёта пропускной способности 1 линии шины необходимо учесть кодировку 8b/10b (англ. 8b/10b encoding) (в каждых 10 битах 8 информационных)[1][2] (для PCI-E 3.0 и выше — 128b/130b (англ. 128b/130b encoding). Например, пропускная способность линии PCIe 1.0 составляет:
Несмотря на то, что стандарт допускает x32 линий на порт, такие решения физически достаточно громоздки и не выпускаются.
Год выпуска |
Версия PCI Express |
Кодирование | Скорость передачи |
Пропускная способность на x линий | ||||
---|---|---|---|---|---|---|---|---|
×1 | ×2 | ×4 | ×8 | ×16 | ||||
2002 | 1.0 | 8b/10b | 2,5 ГТ/с | 250 Мбайт/с | 0.50 Гбайт/с | 1.0 Гбайт/с | 2.0 Гбайт/с | 4.0 Гбайт/с |
2007 | 2.0 | 8b/10b | 5 ГТ/с | 500 Мбайт/с | 1.0 Гбайт/с | 2.0 Гбайт/с | 4.0 Гбайт/с | 8.0 Гбайт/с |
2010 | 3.0 | 128b/130b | 8 ГТ/с | 984.6 Мбайт/с | 1.97 Гбайт/с | 3.94 Гбайт/с | 7.88 Гбайт/с | 15.8 Гбайт/с |
2017 | 4.0 | 128b/130b | 16 ГТ/с | 1969 Мбайт/с | 3.94 Гбайт/с | 7.88 Гбайт/с | 15.75 Гбайт/с | 31.5 Гбайт/с |
2019[6][7] | 5.0 | 128b/130b | 32 ГТ/с | 3938 Мбайт/с | 7.88 Гбайт/с | 15.75 Гбайт/с | 31.51 Гбайт/с | 63.0 Гбайт/с |
Кроме PCI Express, существует ещё ряд высокоскоростных стандартизованных последовательных интерфейсов, вот только некоторые из них: HyperTransport, InfiniBand, RapidIO, и StarFabric. Каждый интерфейс имеет своих сторонников среди промышленных компаний, так как на разработку спецификаций протоколов уже ушли значительные суммы, и каждый консорциум стремится подчеркнуть преимущества именно своего интерфейса над другими.
Стандартизированный высокоскоростной интерфейс, с одной стороны, должен обладать гибкостью и расширяемостью, а с другой стороны, должен обеспечивать низкое время задержки и невысокие накладные расходы (то есть доля служебной информации пакета не должна быть велика). В сущности, различия между интерфейсами заключаются именно в выбранном разработчиками конкретного интерфейса компромиссе между этими двумя конфликтующими требованиями.
К примеру, дополнительная служебная маршрутная информация в пакете позволяет организовать сложную и гибкую маршрутизацию пакета, но увеличивает накладные расходы на обработку пакета, также снижается пропускная способность интерфейса, усложняется программное обеспечение, которое инициализирует и настраивает устройства, подключённые к интерфейсу. При необходимости обеспечения горячего подключения устройств необходимо специальное программное обеспечение, которое бы отслеживало изменение в топологии сети. Примерами интерфейсов, которые приспособлены для этого, являются RapidIO, InfiniBand и StarFabric.
В то же время, укорачивая пакеты, можно уменьшить задержку при передаче данных, что является важным требованием к интерфейсу памяти. Но небольшой размер пакетов приводит к тому, что доля служебных полей пакета увеличивается, что снижает эффективную пропускную способность интерфейса. Примером интерфейса такого типа является HyperTransport.
Положение PCI Express — между описанными подходами, так как шина PCI Express предназначена для работы в качестве локальной шины, нежели шины процессор-память или сложной маршрутизируемой сети. Кроме того, PCI Express изначально задумывалась как шина, логически совместимая с шиной PCI, что также внесло свои ограничения.
Также существуют специализированные шины для подключения чипсетов (между северным и южным мостом), созданные на базе физического протокола PCI Express (обычно x4), но с иными логическими протоколами. Например, в платформах Intel используется шина DMI, а в системах AMD с чипсетом AMD Fusion — шина UMI[en][8].
Группа PCI-SIG выпустила спецификацию PCI Express 2.0 15 января 2007 года. Основные нововведения в PCI Express 2.0:
PCI Express 2.0 полностью совместим с PCI Express 1.1 (старые видеокарты будут работать в системных платах с новыми разъёмами, но только на скорости 2,5 ГТ/с, так как старые чипсеты не могут поддерживать удвоенную скорость передачи данных; новые видеоадаптеры будут без проблем работать в старых разъёмах стандарта PCI Express 1.х.).
7 февраля 2007 года PCI-SIG выпустила спецификацию внешней кабельной системы PCIe. Новая спецификация позволяет использовать кабели длиной до 10 метров, работающие с пропускной способностью 2,5 ГТ/с.
По физическим характеристикам (скорость, разъём) соответствует 2.0, в программной части добавлены функции, которые в полной мере планируют внедрить в версии 3.0. Так как большинство системных плат продаются с версией 2.0, наличие только видеокарты с 2.1 не даёт задействовать режим 2.1.
В ноябре 2010 года[9] были утверждены спецификации версии PCI Express 3.0. Интерфейс обладает скоростью передачи данных 8 GT/s (Гигатранзакций/с). Но, несмотря на это, его реальная пропускная способность всё равно была увеличена вдвое по сравнению со стандартом PCI Express 2.0. Этого удалось достигнуть благодаря более агрессивной схеме кодирования 128b/130b, когда 128 бит данных, пересылаемых по шине, кодируются 130 битами. При этом сохранилась полная совместимость с предыдущими версиями PCI Express. Карты PCI Express 1.x и 2.x будут работать в разъёме 3.0 и, наоборот, карта PCI Express 3.0 будет работать в разъёмах 1.х и 2.х.
По данным PCI-SIG, первые тесты PCI Express 3.0 начались в 2011 году, средства для проверки совместимости для партнёров появились лишь в середине 2011-го, а реальные устройства ― только в 2012-м.
PCI Special Interest Group (PCI SIG) заявила, что PCI Express 4.0 может быть стандартизирован до конца 2016 года[10], однако на середину 2016 года, когда ряд чипов уже готовился к изготовлению, СМИ сообщали, что стандартизация ожидается в начале 2017[11]. Ожидалось, что он будет иметь пропускную способность 16 GT/s, то есть будет в два раза быстрее PCIe 3.0[12][13]. Позднее сроки стандартизации были перенесены, и спецификация была опубликована только 5 октября 2017 года[14]. По сравнению со спецификацией PCI Express 3.0, максимальная скорость передачи данных по шине PCI Express удвоена — с 8 до 16 GT/s. Кроме того, уменьшены задержки, улучшена масштабируемость и поддержка виртуализации[15]. 7 ноября 2018 года AMD объявила о планах выпуска в продажу в четвёртом квартале 2018 года первого GPU с поддержкой PCI Express 4.0 x16[16].
PCI SIG сообщила, что окончательная спецификация стандарта PCI Express 5.0 появится в первом квартале 2019 года. Ожидается, что скорость передачи данных по шине PCI Express составит 32 GT/s и будет идеально подходить для проектов, связанных с виртуальной реальностью.[17]
Данная страница на сайте WikiSort.ru содержит текст со страницы сайта "Википедия".
Если Вы хотите её отредактировать, то можете сделать это на странице редактирования в Википедии.
Если сделанные Вами правки не будут кем-нибудь удалены, то через несколько дней они появятся на сайте WikiSort.ru .