Pci выходы. Характеристики и пропускная способность шины PCI-E. Как работает шина PCI Express

Если спросить, какой интерфейс следует использовать для твердотельного накопителя с поддержкой протокола NVMe, то любой человек (вообще знающий, что такое NVMe) ответит: конечно PCIe 3.0 x4! Правда, с обоснованием у него, скорее всего, возникнут сложности. В лучшем случае получим ответ, что такие накопители поддерживают PCIe 3.0 x4, а пропускная способность интерфейса имеет значение. Иметь-то имеет, однако все разговоры об этом начались только тогда, когда некоторым накопителям на некоторых операциях стало тесно в рамках «обычного» SATA. Но ведь между его 600 МБ/с и (столь же теоретическими) 4 ГБ/с интерфейса PCI e 3.0 x4 - просто пропасть, причем заполненная массой вариантов! А вдруг и одной линии PCIe 3.0 хватит, поскольку это уже в полтора раза больше SATA600? Масла в огонь подливают производители контроллеров, грозящиеся в бюджетной продукции перейти на PCIe 3.0 x2, а также тот факт, что у многих пользователей и такого-то нет. Точнее, теоретически есть, но высвободить их можно, лишь переконфигурировав систему или даже что-то в ней поменяв, чего делать не хочется. А вот купить топовый твердотельный накопитель - хочется, но есть опасения, что пользы от этого не будет совсем никакой (даже морального удовлетворения от результатов тестовых утилит).

Но так это или нет? Иными словами, нужно ли действительно ориентироваться исключительно на поддерживаемый режим работы - или все-таки на практике можно поступиться принципами ? Именно это мы сегодня и решили проверить. Пусть проверка будет быстрой и не претендующей на исчерпывающую полноту, однако полученной информации должно оказаться достаточно (как нам кажется) хотя бы для того, чтобы задуматься... А пока вкратце ознакомимся с теорией.

PCI Express: существующие стандарты и их пропускная способность

Начнем с того, что́ представляет собой PCIe и с какой скоростью этот интерфейс работает. Часто его называют «шиной», что несколько неверно идеологически: как таковой шины, с которой соединены все устройства, нет. На деле имеется набор соединений «точка-точка» (похожий на многие другие последовательные интерфейсы) с контроллером в середине и присоединенными к нему устройствами (каждое из которых само по себе может быть и концентратором следующего уровня).

Первая версия PCI Express появилась почти 15 лет назад. Ориентация на использование внутри компьютера (нередко - и в пределах одной платы) позволила сделать стандарт скоростным: 2,5 гигатранзакции в секунду. Поскольку интерфейс последовательный и дуплексный, одна линия PCIe (x1; фактически атомарная единица) обеспечивает передачу данных на скоростях до 5 Гбит/с. Однако в каждом направлении - лишь половина от этого, т. е. 2,5 Гбит/с, причем это полная скорость интерфейса, а не «полезная»: для повышения надежности каждый байт кодируется 10 битами, так что теоретическая пропускная способность одной линии PCIe 1.x составляет примерно 250 МБ/с в каждую сторону. На практике нужно еще передавать служебную информацию, и в итоге правильнее говорить о ≈200 МБ/с передачи пользовательских данных. Что, впрочем, на тот момент времени не только покрывало потребности большинства устройств, но и обеспечивало солидный запас: достаточно вспомнить, что предшественница PCIe в сегменте массовых системных интерфейсов, а именно шина PCI, обеспечивала пропускную способность в 133 МБ/с. И даже если рассматривать не только массовую реализацию, но и все варианты PCI, то максимумом были 533 МБ/с, причем на всю шину, т. е. такая ПС делилась на все подключенные к ней устройства. Здесь же 250 МБ/с (поскольку и для PCI приводится обычно полная, а не полезная пропускная способность) на одну линию - в монопольном использовании. А для устройств, которым нужно больше, изначально была предусмотрена возможность агрегирования нескольких линий в единый интерфейс, по степеням двойки - от 2 до 32, т. е. предусмотренный стандартом вариант х32 в каждую сторону мог передавать уже до 8 ГБ/с. В персональных компьютерах х32 не использовался из-за сложности создания и разведения соответствующих контроллеров и устройств, так что максимумом стал вариант с 16 линиями. Использовался он (да и сейчас используется) в основном видеокартами, поскольку большинству устройств столько не требуется. Вообще, немалому их количеству и одной линии вполне достаточно, но некоторые применяют с успехом и х4, и х8: как раз по накопительной теме - RAID-контроллеры или SSD.

Время на месте не стояло, и около 10 лет назад появилась вторая версия PCIe. Улучшения касались не только скоростей, но и в этом отношении был сделан шаг вперед - интерфейс начал обеспечивать 5 гигатранзакций в секунду с сохранением той же схемы кодирования, т. е. пропускная способность удвоилась. И еще раз она удвоилась в 2010 году: PCIe 3.0 обеспечивает 8 (а не 10) гигатранзакций в секунду, но избыточность уменьшилась - теперь для кодирования 128 бит используется 130, а не 160, как ранее. В принципе, и версия PCIe 4.0 с очередным удвоением скоростей уже готова появиться на бумаге, но в ближайшее время в железе мы ее массово вряд ли увидим. На самом деле и PCIe 3.0 до сих пор в массе платформ используется совместно с PCIe 2.0, потому что и производительность последней для многих сфер применения просто... не нужна. А где нужна - работает старый добрый метод агрегации линий. Только каждая из них стала за прошедшие годы вчетверо быстрее, т. е. PCIe 3.0 х4 - это PCIe 1.0 x16, самый быстрый слот в компьютерах середины нулевых. Именно этот вариант поддерживают топовые контроллеры SSD, и именно его рекомендуется использовать. Понятно, что если такая возможность есть - много не мало. А если ее нет? Будут ли возникать какие-то проблемы, и если да, то какие? Вот с этим-то вопросом нам и предстоит разобраться.

Методика тестирования

Провести тесты с разными версиями стандарта PCI e несложно: практически все контроллеры позволяют использовать не только поддерживаемый ими, но и все более ранние. Вот с количеством линий - сложнее: нам хотелось непосредственно протестировать и варианты с одной-двумя линиями PCIe. Используемая нами обычно плата Asus H97-Pro Gamer на чипсете Intel H97 полного набора не поддерживает, но кроме «процессорного» слота х16 (который обычно и используется) на ней есть еще один, работающий в режимах PCIe 2.0 х2 или х4. Вот этой тройкой мы и воспользовались, добавив к ней еще и режим PCIe 2.0 «процессорного» слота, дабы оценить, есть ли разница. Все-таки в этом случае между процессором и SSD посторонних «посредников» нет, а вот при работе с «чипсетным» слотом - есть: собственно чипсет, фактически соединяющийся с процессором тем же PCIe 2.0 x4. Можно было добавить еще несколько режимов работы, но основную часть исследования мы все равно собирались провести на другой системе.

Дело в том, что мы решили воспользоваться случаем и заодно проверить одну «городскую легенду», а именно поверие о полезности использования топовых процессоров для тестирования накопителей. Вот и взяли восьмиядерный Core i7-5960X - родственника обычно применяемого в тестах Core i3-4170 (это Haswell и Haswell-E), но у которого ядер в четыре раза больше. Кроме того, обнаруженная в закромах плата Asus Sabertooth X99 нам сегодня полезна наличием слота PCIe x4, на деле способного работать как х1 или х2. В этой системе мы протестировали три варианта х4 (PCIe 1.0/2.0/3.0) от процессора и чипсетные PCIe 1.0 х1, PCIe 1.0 х2, PCIe 2.0 х1 и PCIe 2.0 х2 (во всех случаях чипсетные конфигурации отмечены на диаграммах значком (c) ). Есть ли смысл сейчас обращаться к первой версии PCIe, с учетом того, что вряд ли найдется хоть одна плата с поддержкой только этой версии стандарта, способная загрузиться с NVMe-устройства? С практической точки зрения - нет, а вот для проверки априори предполагаемого соотношения PCIe 1.1 х4 = PCIe 2.0 х2 и подобных оно нам пригодится. Если проверка покажет, что масштабируемость шины соответствует теории, значит, и неважно, что нам не удалось пока получить практически значимые способы подключения PCIe 3.0 x1/х2: первый будет идентичен как раз PCIe 1.1 х4 или PCIe 2.0 х2, а второй - PCIe 2.0 х4. А они у нас есть.

В плане ПО мы ограничились только Anvil’s Storage Utilities 1.1.0: разнообразные низкоуровневые характеристики накопителей она измеряет неплохо, а ничего другого нам и не нужно. Даже наоборот: любое влияние других компонентов системы является крайне нежелательным, так что низкоуровневая синтетика для наших целей безальтернативна.

В качестве «рабочего тела» мы использовали Patriot Hellfire емкостью 240 ГБ . Как было установлено при его тестировании, это не рекордсмен по производительности, но его скоростные характеристики вполне соответствуют результатам лучших SSD того же класса и той же емкости. Да и более медленные устройства на рынке уже есть, причем их будет становиться все больше. В принципе, можно будет повторить тесты и с чем-нибудь более быстрым, однако, как нам кажется, необходимости в этом нет - результаты предсказуемы. Но не станем забегать вперед, а посмотрим, что же у нас получилось.

Результаты тестов

Тестируя Hellfire, мы обратили внимание на то, что максимальную скорость на последовательных операциях из него можно «выжать» лишь многопоточной нагрузкой, так что это тоже надо принимать во внимание на будущее: теоретическая пропускная способность на то и теоретическая, что «реальные» данные, полученные в разных программах по разным сценариям, будут больше зависеть не от нее, а от этих самых программ и сценариев - в том случае, конечно, когда не помешают обстоятельства непреодолимой силы:) Как раз такие обстоятельства мы сейчас и наблюдаем: выше уже было сказано, что PCIe 1.x x1 - это ≈200 МБ/с, и именно это мы и видим. Две линии PCIe 1.x или одна PCIe 2.0 - вдвое быстрее, и именно это мы и видим. Четыре линии PCIe 1.x, две PCIe 2.0 или одна PCIe 3.0 - еще вдвое быстрее, что подтвердилось для первых двух вариантов, так что и третий вряд ли будет отличаться. То есть в принципе масштабируемость, как и предполагалось, идеальная: операции линейные, флэш с ними справляется хорошо, так что интерфейс имеет значение. Флэш перестает справляться хорошо на PCIe 2.0 x4 для записи (значит, подойдет и PCIe 3.0 x2). Чтение «может» больше, но последний шаг дает уже полутора-, а не двукратный (каким он потенциально должен быть) прирост. Также отметим, что заметной разницы между чипсетным и процессорным контроллером нет, да и между платформами тоже. Впрочем, LGA2011-3 немного впереди, но на самую малость.

Все ровно и красиво. Но шаблоны не рвет : максимум в этих тестах составляет лишь немногим больше 500 МБ/с, а это вполне по силам даже SATA600 или (в приложении к сегодняшнему тестированию) PCIe 1.0 х4 / PCIe 2.0 х2 / PCIe 3.0 х1 . Именно так: не стоит пугаться выпуску бюджетных контроллеров под PCIe х2 или наличию лишь такого количества линий (причем версии стандарта 2.0) в слотах М.2 на некоторых платах, когда больше-то и не нужно. Иногда и столько не нужно: максимальные результаты достигнуты при очереди в 16 команд, что для массового ПО не типично. Чаще встречается очередь с 1-4 командами, а для этого обойтись можно и одной линией самого первого PCIe и даже самым первым SATA. Впрочем, накладные расходы и прочее имеют место быть, так что быстрый интерфейс полезен. Однако излишне быстрый - разве что не вреден.

А еще в этом тесте по-разному ведут себя платформы, причем с единичной очередью команд - принципиально по-разному. «Беда» вовсе не в том, что много ядер - плохо. Они тут все равно не используются, разве что одно, и не настолько, чтоб вовсю развернулся буст-режим. Вот и имеем разницу где-то в 20% по частоте ядер и полтора раза по кэш-памяти - она в Haswell-E работает на более низкой частоте, а не синхронно с ядрами. В общем, топовая платформа может пригодиться разве что для вышибания максимума «йопсов» посредством максимально многопоточного режима с большой глубиной очереди команд. Жаль только, что с точки зрения практической работы это совсем уж сферическая синтетика в вакууме:)

На записи положение дел принципиально не изменилось - во всех смыслах. Но, что забавно, на обеих системах самым быстрым оказался режим PCIe 2.0 х4 в «процессорном» слоте. На обеих! И при многократных проверках/перепроверках. Тут уж поневоле задумаешься, нужны ли эти ваши новые стандарты или лучше вообще никуда не торопиться...

При работе с блоками разного размера теоретическая идиллия разбивается о то, что повышение скорости интерфейса все же имеет смысл. Результирующие цифры такие, что хватило бы пары линий PCIe 2.0, но реально в таком случае производительность ниже, чем у PCIe 3.0 х4, пусть и не в разы. И вообще тут бюджетная платформа топовую «забивает» в куда большей степени. А ведь как раз такого рода операции в основном в прикладном ПО и встречаются, т. е. эта диаграмма - наиболее приближенная к реальности. В итоге нет ничего удивительного, что никакого «вау-эффекта» толстые интерфейсы и модные протоколы не дают. Точнее, переходящему с механики - дадут, но ровно такой же, какой ему обеспечит любой твердотельный накопитель с любым интерфейсом.

Итого

Для облегчения восприятия картины по больнице в целом мы воспользовались выдаваемым программой баллом (суммарным - по чтению и записи), проведя его нормирование по «чипсетному» режиму PCIe 2.0 x4: на данный момент именно он является наиболее массово доступным, поскольку встречается даже на LGA1155 или платформах AMD без необходимости «обижать» видеокарту. Кроме того, он эквивалентен PCIe 3.0 x2, который готовятся освоить бюджетные контроллеры. Да и на новой платформе AMD АМ4, опять же, именно этот режим как раз можно получить без влияния на дискретную видеокарту.

Итак, что мы видим? Применение PCIe 3.0 x4 при наличии возможности является, безусловно, предпочтительным, но не необходимым: NVMe-накопителям среднего класса (в своем изначально топовом сегменте) он приносит буквально 10% дополнительной производительности. Да и то - за счет операций в общем-то не столь уж часто встречающихся на практике. Для чего же в данном случае реализован именно этот вариант? Во-первых, была такая возможность, а запас карман не тянет. Во-вторых, есть накопители и побыстрее, чем наш тестовый Patriot Hellfire. В-третьих, есть такие области деятельности, где «атипичные» для настольной системы нагрузки - как раз вполне типичные. Причем именно там наиболее критично быстродействие системы хранения данных или, по крайней мере, возможность сделать ее часть очень быстрой. Но к обычным персональным компьютерам это все не относится.

В них, как видим, и использование PCIe 2.0 x2 (или, соответственно, PCIe 3.0 х1) не приводит к драматическому снижению производительности - лишь на 15-20%. И это несмотря на то, что потенциальные возможности контроллера в этом случае мы ограничили в четыре раза! Для многих операций и такой пропускной способности достаточно. Вот одной линии PCIe 2.0 уже недостаточно, поэтому контроллерам имеет смысл поддерживать именно PCIe 3.0 - и в условиях жесткой нехватки линий в современной системе это будет работать неплохо. Кроме того, полезна ширина х4 - даже при отсутствии поддержки современных версий PCIe в системе она все равно позволит работать с нормальной скоростью (пусть и медленнее, чем могло бы потенциально), если найдется более-менее широкий слот.

В принципе, большое количество сценариев, в которых узким местом оказывается собственно флэш-память (да, это возможно и присуще не только механике), приводит к тому, что четыре линии третьей версии PCIe на этом накопителе обгоняют одну первой примерно в 3,5 раза - теоретическая же пропускная способность этих двух случаев различается в 16 раз. Из чего, разумеется, не следует, что нужно спешно бежать осваивать совсем медленные интерфейсы - их время ушло безвозвратно. Просто многие возможности быстрых интерфейсов могут быть реализованы лишь в будущем. Или в условиях, с которыми обычный пользователь обычного компьютера никогда в жизни непосредственно не столкнется (за исключением любителей меряться известно чем). Собственно, и всё.

В рамках данной статьи будут рассмотрены наиболее распространенные на сегодняшний день PCI-устройства. Что этотакое, и когда без него не обойтись - ключевые вопросы этого материала. Хотя данный стандарт постепенно уходит в прошлое, но все равно он будет актуальным еще достаточно долгое время. Его, по существу, можно считать прародителем самых современных интерфейсов ЮСБ и PCI-Express, которые пришли ему на смену.

Характеристики шины

Перед тем как получим ответ на вопрос: «PCI-устройства: что это такое и где они используются?», рассмотрим характеристики данной шины. Свое победоносное шествие этот стандарт начал в 1991 году. Первым процессором, который мог с ним полноценно функционировать, был 80486. Чуть позже появились первые «Пентиумы», еще больше раскрывшие его потенциал. Физически за этой аббревиатурой скрывается группа разъемов, распаянных на материнской плате. За организацию их работы отвечает одна из микросхем, установленных на ней. Характеристики у PCI следующие:

  • Разрядность - 32/64 бита.
  • Частота работы - 33 или 66 МГц.
  • Максимальная - 500 Мбайт/с (для 64 бит версии PCI 2.0).
  • Напряжение питания - 3,3 В (для 32 бит) или 5 В (для 64 бит).

Еще один важный нюанс, который предопределил будущее этого стандарта. «Интел» сделала его «открытым». То есть каждый разработчик мог при желании разработать любую плату расширения, которая без проблем работала бы с этим стандартом.

Какие устройства могут быть установлены

В слот расширения PCI могут быть установлены различные устройства. Среди них можно выделить:

  • Графический адаптер.
  • Звуковую карту.
  • Тюнер.
  • Плату расширения.
  • Сетевую карту.

Это список можно продолжать до бесконечности. По существу - это полный аналог современной шины ЮСБ, но только с более низкой скоростью передачи данных. Даже драйвер PCI-устройств инсталлируется аналогичным образом. Многие идеи, которые были реализованы в этой устаревшей шине, получили дальнейшее развитие в более современных стандартах. оказала очень большое влияние на дальнейшее развитие компьютерной техники.

Графические адаптеры

Для вывода графического изображения использовалась PCI-видеокарта. В свое время это позволило значительно увеличить производительность компьютерных систем и полностью раскрыть потенциал процессоров 80486 и первых «Пентиумов».

Но время не стоит на месте. То, что тогда стало революционным решением, на сегодняшний день устарело как морально, так и физически. До 1997 года у таких графических ускорителей не было аналогов. Поэтому их можно было встретить на каждом персональном компьютере. И лишь только с появлением на материнской плате такие адаптеры уступили новым графическим решениям пальму первенства по производительности.

Сейчас PCI-видеокарта - большая редкость. Ее можно встретить только на очень старых персональных компьютерах. Можно сказать, что это уже анахронизм. Их производительности достаточно только для решения наиболее простых задач - набора текста, работы с и просмотра картинок. А вот с более сложными приложениями обязательно возникнут проблемы, и в таком случае их лучше не запускать.

Звуковая плата

Звуковая плата - это тоже одна из разновидностей PCI-устройства. Что этотакое? Ответ на этот вопрос достаточно прост. До 1997 года на материнских платах не было интегрированных звуковых адаптеров. Поэтому для организации акустической системы использовались именно такие приспособления. С одной стороны такая плата оснащалась «классическим» разъемом для установки в слот расширения. Интерфейсная ее панель выводилась на тыльную сторону системного блока.

Для фиксации внутри компьютера использовался один болт. Качество звучания их оставляло желать лучшего. Но все равно это был прорыв, который нельзя недооценивать. Именно установка таких устройств позволяла раньше любой компьютер превратить в настоящий мультимедийный центр. Можно было на такой ЭВМ и музыку послушать, и фильм посмотреть, и в игру поиграть.

Тюнеры

Еще один важный тип устройств для данной шины - это тюнер. Такой PCI-контроллер позволяет просматривать телевизионные передачи и прослушивать радио. Для обеспечения работоспособности такой платы к ней нужно в обязательном порядке подключить внешнюю антенну. Иначе качество принимаемого сигнала будет далеким от идеала.

Кроме того, в комплекте с тюнером в обязательном порядке шел пуль дистанционного управления. Это позволяло превратить компьютер в настоящий телевизор. Большого распространения подобная практика не получила, но все равно бывали случаи, когда без такого ноу-хау было не обойтись. Например, занятому человеку такое решение позволяло постоянно быть в курсе событий.

Модем

Важный атрибут старых компьютеров - это модем. С его помощью можно было раньше подключаться к Интернету. Большая часть таких устройств была внутреннего исполнения, то есть устанавливалась в слот PCI. Сейчас их с этого сегмента благополучно вытеснили Хотя еще остались сферы, где им нет альтернативы. Одна из них - это система «Клиент-Банк», которая часто встречается в бухгалтерии. С ее помощью бухгалтер может контролировать состояние счетов компании и при необходимости делать платежи.

Плата расширения

Нередко в можно встретить следующее устройство: «PCI контроллер simple communications». За этим словосочетанием скрывается плата расширения. Она позволяет увеличить количество портов для подключения или жестких дисков. То есть подобное приспособление устанавливается в слот расширения материнской платы, а с внешней стороны оно оснащено разъемами ЮСБ, КОМ или ЛПТ. Лет 5 назад это позволяло существенно увеличить количество подключенных периферийных устройств. Сейчас же количество портов на материнской плате выросло в разы, и потребность в установке подобных контроллеров просто отпала.

Итоги

В данном материале был дан ответ на вопрос: «PCI-устройства - что это такое и где они используются?»

Как видим, это достаточно широкая гамма устройств, которая позволяет превратить ваш компьютер в настоящий центр для развлечений. По крайней мере, это утверждение было справедливо до недавних пор. Сейчас ситуация немного изменилась. Все больше компонентов интегрируются непосредственно в сам процессор или на материнскую плату. Поэтому и потребность в них отпадает. Можно встретить и прочее устройство моста PCI, например, сетевая карточка, которая позволяет объединить компьютеры в локальную вычислительную сеть. Единственное устройство, которое пока не имеет достойной альтернативы, - это тюнер для приема телепередач и прослушивания радио. Но уже и в этом сегменте начали появляться компактные ЮСБ-аналоги. В общем, стандарт PCI постепенно уходит в прошлое, но он все равно будет продолжительное время присутствовать на рынке.

#PCI_Express

Последовательная шина PCI Express, разработанная Intel и ее партнерами, призвана заменить параллельнуrю шину PCI и ее расширенный и специализированный вариант AGP. Несмотря на похожие наименования, шины PCI и PCI Express имеют мало общего. Протокол параллельной передачи данных, используемый в PCI, накладывает ограничения на ширину полосы пропускания и частоту работы шины; последовательная передача данных, примененная в PCI Express, обеспечивает возможность масштабирования (в спецификациях описываются реализации PCI Express 1x, 2x, 4x, 8x, 16x и 32x). На данный момент актуальной является версия шины с индексом 3.0

PCI-E 3.0

В ноябре 2010 года организация PCI-SIG, которая занимается стандартизацией технологии PCI Express, объявила о принятии спецификации PCIe Base 3.0.
Ключевым отличием от предыдущих двух версий PCIe можно считать измененную схему кодирования - теперь вместо 8 бит полезной информации из 10 бит переданной (8b/10b), по шине можно передать 128 бит полезной информации из 130 бит отправленной, т.е. коэффициент полезной нагрузки практически приблизился к 100%. Кроме того, увеличилась скорость передачи данных до 8 GT/s. Напомним, что это значение для PCIe 1.x составляло 2.5 GT/s, а для PCIe 2.x - 5 GT/s.
Все вышеперечисленные изменения привели к удвоению пропускной способности шины, по сравнению с шиной PCI-E 2.x. Это значит, что общая пропускная способность шины PCIe 3.0 в конфигурации 16x будет достигать 32 Гб/с. Первыми процессорами, которые были оснащены контроллером PCIe 3.0, стали процессоры Intel, созданные на основе микроархитектуры Ivy Bridge.

Несмотря на увеличившуюся более чем в три раза пропускную способность PCI-E 3.0 по сравнению с PCI-E 1.1, производительность одних и тех же видеокарт при использовании разных интерфейсов отличается не сильно. В таблице ниже представлены результаты тестов GeForce GTX 980 в разных тестах. Измерения проводились при одних графических настройках, в одной конфигурации Версия шины PCI-E изменялась в настройках BIOS.

PCI Express 3.0 по-прежнему сохраняет обратную совместимость с предыдущими версиями PCIe.

PCI-E 2.0

В 2007 году была принята новая спецификация шины PCI Express - 2.0, главное отличие которой заключается в удвоенной пропускной способности каждой линии передачи в каждом направлении, т.е. в случае с самой популярной версии PCI-E 16x, применяемой в видеокартах, пропускная способность составляет 8Гб/cек в каждом направлении. Первым чипсетом с поддержкой PCI-E 2.0 стал Intel X38.

PCI-E 2.0 полностью обратно совместим с PCI-E 1.0, т.е. все существующие устройства с интерфейсом PCI-E 1.0 могут работать в слотах PCI-E 2.0 и наоборот.

PCI-E 1.1

Первая версия интерфейса PCI Express, появившаяся в 2002 году. Обеспечивала пропускную способность 500 МБ/с на одну линию.

Сравнение скорости работы различных поколений PCI-E

Шина PCI работает на частоте 33 или 66 МГц и обеспечивает пропускную способность 133 или 266 Мб/сек, но эта пропускная способность делится между всеми устройствами PCI. Частота, на которой работает шина PCI Express 1.1 - 2.5 ГГц, что дает пропускную способность 2500 МГц / 10 * 8 = 250 * 8 Мбит/сек = 250 Мб/сек (из-за избыточного кодирования для передачи 8 бит данных реально передается 10 бит информации) для каждого устройства PCI Express 1.1 x1 в одном направлении. При наличии нескольких линий для вычисления пропускной способности величину 250 Мб/сек надо умножить на число линий и на 2, т.к. PCI Express является двунаправленной шиной.

Число линий PCI Express 1.1 Пропускная способность в одном направлении Суммарная пропускная способность
1 250 МБ/сек 500 МБ/сек
2 500 Мб/сек 1 ГБ/сек
4 1 ГБ/сек 2 ГБ/сек
8 2 ГБ/сек 4 ГБ/сек
16 4 ГБ/сек 8 ГБ/сек
32 8 ГБ/сек 16 ГБ/сек

Обратите внимание! Не следует пытаться установить плату PCI Express в слот PCI, и, наоборот, платы PCI не устанавливаются в слоты PCI Express. Тем не менее, плата PCI Express 1x, например, может быть установлена и, скорее всего, будет нормально функционировать в слоте PCI Express 8x или 16x, но не наоборот: плата PCI Express 16x в слот PCI Express 1x не влезет.

Энциклопедичный YouTube

  • 1 / 5

    В отличие от стандарта PCI, использовавшего для передачи данных общую шину с подключением параллельно нескольких устройств, PCI Express, в общем случае, является пакетной сетью с топологией типа звезда.

    Устройства PCI Express взаимодействуют между собой через среду, образованную коммутаторами, при этом каждое устройство напрямую связано соединением типа точка-точка с коммутатором.

    Кроме того, шиной PCI Express поддерживается:

    • гарантированная полоса пропускания (QoS);
    • управление энергопотреблением;
    • контроль целостности передаваемых данных.

    Шина PCI Express нацелена на использование только в качестве локальной шины. Так как программная модель PCI Express во многом унаследована от PCI, то существующие системы и контроллеры могут быть доработаны для использования шины PCI Express заменой только физического уровня, без доработки программного обеспечения. Высокая пиковая производительность шины PCI Express позволяет использовать её вместо шин AGP и тем более PCI и PCI-X . Де-факто PCI Express заменила эти шины в персональных компьютерах.

    Разъёмы

    • MiniCard (Mini PCIe) - замена форм-фактора Mini PCI . На разъём Mini Card выведены шины: x1 PCIe, USB 2.0 и SMBus.
    • ExpressCard - подобен форм-фактору PCMCIA . На разъём ExpressCard выведены шины x1 PCIe и USB 2.0, карты ExpressCard поддерживают горячее подключение.
    • AdvancedTCA - форм-фактор для телекоммуникационного оборудования.
    • Mobile PCI Express Module (MXM) - промышленный форм-фактор, созданный для ноутбуков фирмой NVIDIA . Его используют для подключения графических ускорителей.
    • Кабельные спецификации PCI Express позволяют доводить длину одного соединения до десятков метров, что делает возможным создание ЭВМ, периферийные устройства которой находятся на значительном удалении.
    • StackPC - спецификация для построения наращиваемых компьютерных систем. Данная спецификация описывает разъёмы расширения StackPC, FPE и их взаимное расположение.

    PCI Express X1

    Mini PCI-E

    Mini PCI Express - формат шины PCI Express для портативных устройств.

    Для этого стандарта разъёма выпускается много периферийных устройств:

    SSD Mini PCI Express

    • Питание 3.3 В

    ExpressCard

    Слоты ExpressCard на настоящее время (ноябрь 2010) применяются для подключения:

    • Плат SSD накопителей
    • Видеокарт
    • Контроллеров 1394/FireWire (iLINK)
    • Док-станций
    • Измерительных приборов
    • Памяти
    • Адаптеров карт памяти (CF, MS, SD, xD, и т. д.)
    • Мышей
    • Сетевых адаптеров
    • Параллельных портов
    • Адаптеров PC Card/PCMCIA
    • Расширения PCI
    • Расширения PCI Express
    • Дистанционного управления
    • Контроллеров SATA
    • Последовательных портов
    • Адаптеров SmartCard
    • ТВ-тюнеров
    • Контроллеров USB
    • Беспроводных сетевых адаптеров Wi-Fi
    • Беспроводных широкополосных интернет-адаптеров (3G, CDMA, EVDO, GPRS, UMTS, и т. д.)
    • Звуковых карт для домашнего мультимедиа и профессиональных аудиоинтерфейсов.

    Описание протокола

    Для подключения устройства PCI Express используется двунаправленное последовательное соединение типа точка-точка , называемое линией (англ. lane - полоса, ряд); это резко отличается от PCI , в которой все устройства подключаются к общей 32-разрядной параллельной двунаправленной шине.

    Конкурирующие протоколы

    Кроме PCI Express, существует ещё ряд высокоскоростных стандартизованных последовательных интерфейсов, вот только некоторые из них: HyperTransport , InfiniBand , RapidIO , и StarFabric. Каждый интерфейс имеет своих сторонников среди промышленных компаний, так как на разработку спецификаций протоколов уже ушли значительные суммы, и каждый консорциум стремится подчеркнуть преимущества именно своего интерфейса над другими.

    Стандартизированный высокоскоростной интерфейс, с одной стороны, должен обладать гибкостью и расширяемостью, а с другой стороны, должен обеспечивать низкое время задержки и невысокие накладные расходы (то есть доля служебной информации пакета не должна быть велика). В сущности, различия между интерфейсами заключаются именно в выбранном разработчиками конкретного интерфейса компромиссе между этими двумя конфликтующими требованиями.

    К примеру, дополнительная служебная маршрутная информация в пакете позволяет организовать сложную и гибкую маршрутизацию пакета, но увеличивает накладные расходы на обработку пакета, также снижается пропускная способность интерфейса, усложняется программное обеспечение, которое инициализирует и настраивает устройства, подключенные к интерфейсу. При необходимости обеспечения горячего подключения устройств необходимо специальное программное обеспечение, которое бы отслеживало изменение в топологии сети. Примерами интерфейсов, которые приспособлены для этого, являются RapidIO, InfiniBand и StarFabric.

    В то же время, укорачивая пакеты, можно уменьшить задержку при передаче данных, что является важным требованием к интерфейсу памяти. Но небольшой размер пакетов приводит к тому, что доля служебных полей пакета увеличивается, что снижает эффективную пропускную способность интерфейса. Примером интерфейса такого типа является HyperTransport.

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

    HighPoint RocketRAID 2320: второй RAID-контроллер SATA II в нашей лаборатории с интерфейсом PCIe.

    Интерфейс PCI Express (PCIe) находится на рынке уже примерно полтора года, но до сих пор он воспринимается, по большей части, как новый интерфейс графических карт. Настольные материнские платы с поддержкой PCI Express предлагают дополнительные слоты с этим интерфейсом, но используются они сегодня очень редко. Собственно, как и версии с большей пропускной способностью на материнских платах для серверов и рабочих станций.

    Хотя теоретически PCI Express x16 может обеспечить большую пропускную способность по сравнению с PCI-X 533 (8 Гбайт/с против 4,26 Гбайт/с), важно подчеркнуть, что PCIe был предназначен для замены не PCI-X, а других, более старых шинных интерфейсов. PCIe был нацелен на замену графического интерфейса AGP по маркетинговым соображениям, а также чтобы проложить путь использованию двух графических карт. Да и устаревшая 32-битная параллельная шина PCI тоже требовала замены. Вряд ли PCI можно назвать хорошей шиной по современным понятиям: она предлагает относительно низкую пропускную способность, которая, к тому, же разделяется между всеми устройствами PCI. Современные технологии - вроде гигабитного Ethernet, периферии с поддержкой высокого разрешения и контроллеров накопителей - требуют более высокой пропускной способности.

    Перейдём к сути PCI Express: этот интерфейс не обязательно быстрее PCI-X, но он проще и обеспечивает пропускную способность отдельно для каждого устройства. Именно поэтому сегодня появляется всё больше чипсетов класса "сервер/рабочая станция" с поддержкой PCI Express: слишком уж заманчиво, когда пропускная способность выделяется для каждого устройства.

    Одним из возможных применений можно сразу же назвать контроллеры сети и накопителей, так как они уже давно страдают из-за "узости" интерфейса. Вполне понятно, что построить 10-Гбит/с тестовое окружение Ethernet сложнее, чем использовать контроллеры накопителей. Поэтому для тестирования мы выбрали RAID.

    Мы отобрали два последних контроллера HighPoint Serial ATA II RAID RocketRAID, модели 2220 и 2320, поскольку они построены на одинаковой технологии и различаются только интерфейсом. 2220 является моделью PCI-X, а 2320 использует интерфейс x4 PCI Express.

    PCI-X является существенно доработанной версией параллельной шины Peripheral Components Interconnect (PCI). Она построена на классической шинной топологии и требует для подключения большое число дорожек/контактов. Как мы уже упоминали выше, доступная пропускная способность разделяется между всеми устройствами.

    В отличие от обычной PCI в вашем компьютере, имеющей ширину 32 бита, PCI-X является 64-битной шиной. В результате пропускная способность автоматически удваивается, равно как число дорожек/контактов и размеры слота. Но всё остальное, включая протоколы передачи, сигналы и типы разъёмов, обратно совместимо. То есть в слот PCI-X можно установить 32-битную карту PCI (3,3 В). Кроме того, многие 64-битные карты PCI-X могут работать в 32-битных слотах PCI, но, конечно, с заметно сниженной пропускной способностью.

    Но даже такое расширение шины всё равно не обеспечивало достаточную пропускную способность для профессиональных контроллеров накопителей SCSI, iSCSI, Fibre Channel, 10-Гбит/с Ethernet, InfiniBand и прочего. Поэтому группа PCI-SIG (Special Interest Group) добавила в спецификацию несколько скоростных градаций, меняющихся от PCI-X 66 (Rev. 1.0b) до PCI-X 533 (Rev. 2.0). В следующей таблице дана подробная информация.

    Ширина шины Тактовая частота Функции Пропускная способность
    PCI-X 66 64 бит 66 МГц "Горячее подключение", 3,3 В 533 Мбайт/с
    PCI-X 133 64 бит 133 МГц "Горячее подключение", 3,3 В 1,06 Гбайт/с
    PCI-X 266 133 МГц (DDR) 2,13 Гбайт/с
    PCI-X 533 64 бит, опционально только 16 бит 133 МГц (QDR) "Горячее подключение", 3,3 и 1,5 В, поддержка ECC 4,26 Гбайт/с

    Как можно видеть, по достижении 133 МГц с PCI-X 133 тактовая частота больше не возрастала. Чтобы обеспечить более высокую пропускную способность, были задействованы две технологии, с которыми вы наверняка уже знакомы по шинам памяти и FSB. PCI-X 266 опирается на технологию удвоенной передачи данных Double Data Rate, когда данные передаются на спаде и возрастании тактового импульса. PCI-X 533 заходит ещё дальше и использует учетверённую передачу данных (Quad Data Rate). Intel уже давно использует эту технологию для FSB процессоров Pentium 4 и Xeon.

    Широкие слоты слева - это и есть 64-битная шина PCI-X.


    Источник: презентация PCI-SIG PCI-X 2.0.

    Как мы уже указывали выше, общая пропускная способность с максимумом в 4,26 Гбайт/с разделяется между всеми устройствами, подключёнными к шине. Кроме того, если какое-либо устройство не способно работать на высокой тактовой частоте, система снизит скорость шины до наименьшего общего значения, вплоть до 33 МГц. Впрочем, именно такую цену приходится платить за совместимость. Но проблему можно решить, реализовав на материнской плате более одного моста PCI-X. Продукты с подобной возможностью предлагаются всеми производителями профессионального уровня, включая такие компании, как Asus, Supermicro и Tyan.

    Обратная совместимость является большим плюсом PCI-X. Администраторы желают быть абсолютно уверенными, что новое оборудование будет работать правильно. Именно поэтому внедрение новых технологий на рынке серверов и рабочих станций не такое быстрое. Зачем нужно прощаться с технологией, если она является обратно совместимой, обеспечивает достаточную производительность и отличается большой базой имеющегося оборудования? Эта ситуация вряд ли изменится в будущем, поскольку сегодня группа PCI-SIG работает уже над стандартом PCI-X 1066. Он ещё раз удвоит пропускную способность и, кроме того, получит новые функции вроде сжатия данных "на лету", автоматических резервных путей и защиты от сбоев. Кроме того, может появиться поддержка изохронной передачи, но тогда придётся отказаться от совместимости с обычной PCI.