Добавлен: 23.11.2023
Просмотров: 37
Скачиваний: 3
ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
Поскольку PCI Express обеспечивает скорость передачи 200 Мбайт/с уже при ширине X1, шина является очень эффективным решением по отношению стоимость/число контактов.
На повестке дня находится ещё один вопрос: начнёт ли PCI Express новую войну шин с другими решениями типа PCI-X и HyperTransport? Рабочая группа PCI Express, Arapahoe, утверждает, что эти шины нацелены на другие области. RapidIO и HyperTransport были разработаны для специфических применений, в то время как PCI Express выступает в роли универсального варианта.
Вряд ли PCI Express сможет заменить HyperTransport в качестве связи между процессорами. PCI Express не хватает протокола когерентности кэшей, к тому же шина обладает более длительными задержками, чем параллельные проводники с синхронизацией по источнику. Очевидно, что AMD и nVidia бояться нечего.
PCI Express обладает великолепным потенциалом. Шина позиционируется как универсальное решение для связи компонентов платы и имеет очевидные преимущества по гибкости, что гарантирует её пригодность для широкого диапазона вариантов реализации.
Как и другие важные изменения, переход с PCI на PCI Express не случится за одну ночь. Слоты ISA жили на платах почти 10 лет, перед тем как они наконец-то исчезли. Так что не следует полагать, что периферия PCI скоро отомрёт.
Спецификации PCI Express Base 1.0a Specification и Card Electromechanical 1.0a Specification уже утверждены. Вероятно, первыми появятся видеокарты от nVidia и ATi, сопровождаемые материнскими платами на новом чипсете Grantsdale от Intel. Что касается серверной стороны рынка, Intel планирует выпустить PCI Express в паре с чипсетами Lindenhurst и Twin Castle. Будущее выглядит в радужных тонах, на что немало влияют новые форм-факторы и потенциально высокая производительность.
1.3 Основные сведения о PCI
Первоначально 32 проводника адрес/данные на частоте 33 МГц. Позже появились версии с 64 проводниками (используется дополнительная колодка разъема) и частотой 66 МГц.
Шина децентрализована, нет главного устройства, любое устройство может стать инициатором транзакции. Для выбора инициатора используется арбитраж с отдельно стоящей логикой арбитра. Арбитраж «скрытый», не отбирает времени — выбор нового инициатора происходит во время транзакции, исполняемой предыдущим инициатором.
Транзакция состоит из 1 или 2 циклов адреса (2 цикла адреса используются для передачи 64-битных адресов, поддерживаются не всеми устройствами, дают поддержку DMA на памяти более 4 Гб) и одного или многих циклов данных. Транзакция со многими циклами данных называется «взрывной» (burst), понимается как чтение/запись подряд идущих адресов и даёт более высокую скорость — один цикл адреса на несколько, а не на
каждый цикл данных, и отсутствие простоев (на «успокоение» проводников) между транзакциями.
Специальные типы транзакций используются для обращений к конфигурационному пространству устройства.
«Взрывная» транзакция может быть временно приостановлена обеими устройствами из-за отсутствия данных в буфере или его переполнения.
Поддерживаются «расщеплённые» транзакции, когда целевое устройство отвечает состоянием «в процессе» и инициатор должен освободить шину для других устройств, захватить её снова через арбитраж и повторить транзакцию. Это делается, пока целевое устройство не ответит «сделано». Используется для сопряжения шин с разными скоростями (сама PCI и frontside процессора) и для предотвращения тупиковых ситуаций в сценарии с многими межшинными мостами.
Богатая поддержка межшинных мостов. Богатая поддержка режимов кэширования, таких, как:
posted write — данные записи немедленно принимаются мостом и мост сразу отвечает «сделано», уже после этого пытаясь провести операцию записи на ведомой шине.
write combining — несколько запросов на posted write, идущих подряд по адресам, соединяются в мосте в одну «взрывную» транзакцию на ведомой шине.
prefetcing — используется при транзакциях чтения, означает выборку сразу большого диапазона адресов одной «взрывной» транзакцией в кеш моста, дальнейшие обращения исполняются самим мостом без операций на ведомой шине.
Прерывания поддерживаются либо как Message Signaled Interrupts (новое), либо классическим способом с использованием проводников INTA-D#. Проводники прерываний работают независимо от всей остальной шины, возможно разделение одного проводника многими устройствами.
Конфигурирование
PCI-устройства с точки зрения пользователя самонастраиваемы (Plug and Play). После старта компьютера системное программное обеспечение обследует конфигурационное пространство PCI каждого устройства, подключённого к шине, и распределяет ресурсы.
Каждое устройство может затребовать до семи диапазонов в адресном пространстве памяти PCI или в адресном пространстве ввода-вывода PCI.
Кроме того, устройства могут иметь ПЗУ, содержащее исполняемый код для процессоров x86 или PA-RISC, Open Firmware (системное ПО компьютеров на базе SPARC и PowerPC) или драйвер EFI.
Настройка прерываний осуществляется также системным программным обеспечением (в отличие от шины ISA, где настройка прерываний осуществлялась переключателями на карте). Запрос на прерывание на шине PCI передаётся с помощью изменения уровня сигнала на одной из линий IRQ, поэтому имеется возможность работы нескольких
устройств с одной линией запроса прерывания; обычно системное ПО пытается выделить каждому устройству отдельное прерывание для увеличения производительности.
1.4 Версии шины PCI
PCI 2.0 - первая версия базового стандарта, получившая широкое распространение, использовались как карты, так и слоты с сигнальным напряжением только 5В.
PCI 2.1 - отличалась от 2.0 возможностью одновременной работы нескольких bus-master устройств (т.н. конкурентный режим), а также появлением универсальных карт расширения, способных работать как в 5В, так и в 3.3В слотах. Способность работать с 3.3В картами и наличие соответствующих линий питания в версии 2.1 являлась опциональной.Появились расширения PCI66 и PCI64.
PCI 2.2 - версия базового стандарта шины, допускающая подключение карт расширения с сигнальным напряжением как 5В, так и 3.3В. 32-битные версии этих стандартов являлись наиболее распространённым типом слотов на материнских платах на момент написания FAQ. Используются слоты типа 32-бита, 5В.
Cделанные в соответствии с этими стандартами карты расширения имеют универсальный разъём и способны работать практически во всех более поздних разновидностях слотов шины PCI, а также, в некоторых случаях, и в слотах 2.1.
PCI 2.3 - следующая версия общего стандарта на шину PCI, слоты расширения, соответствующие этому стандарту, несовместимы с картами PCI 5В, несмотря на продолжающееся использование 32-битных слотов с 5В-ключом. Карты расширения имеют универсальный разъём, но не способны работать в 5В-слотах ранних версий (до 2.1 включительно).
Напоминаем, что напряжение питания (не сигнальное!) 5В сохраняется абсолютно на всех версиях разъёмов шины PCI.
PCI 64 - расширение базового стандарта PCI, появившееся в версии 2.1, удваивающее число линий данных, и, следовательно, пропускную способность. Cлот PCI64 является удлинённой версией обычного PCI-слота. Формально совместимость 32-битных карт с 64-битным слотами (при условии наличия общего поддерживаемого сигнального напряжения) полная, а совместимость 64-битной карты с 32-битным слотами является ограниченной (в любом случае произойдёт потеря производительности), точные данные в каждом конкретном случае можно узнать из спецификаций устройства.
Первые версии PCI64 (производные от PCI 2.1)использовали слот PCI 64-бита 5В и работали на тактовой частоте 33МГц.
PCI 66 - появившееся в версии 2.1 расширение стандарта PCI с поддержкой тактовой частоты 66МГц, также, как и PCI64 позволяет удвоить пропускную способность. Начиная с версии 2.2 использует 3.3В-слоты (32-битый вариант на ПК практически не встречается), карты имеют универсальный либо 3.3В форм-фактор. (Имелись и основанные на версии 2.1 казуистически редкие на рынке ПК 5В 66МГц решения, подобные слоты и платы были совместимы только между собой)
PCI 64/66 - комбинация двух вышеописанных технологий, позволяет учетверить скорость передачи данных по сравнению с базовым стандартом PCI, и использует 64 бита 3.3В слоты, совместимые только с универсальными и 3.3В 32-битными картами расширения. Карты стандарта PCI64/66 имеют универсальный (имеющий ограниченную совместимость с 32-битными слотами) либо 3.3В форм-фактор(последний вариант принципиально не совместим с 32-битными 33МГц слотами популярных стандартов)
В настоящее время под термином PCI64 подразумевается именно PCI64/66, поскольку 33МГц 5В 64-битные слоты не применяются уже достаточно давно.
P CI-X 1.0 - Расширение PCI64 с добавлением двух новых частот работы, 100 и 133МГц, а также механизма раздельных транзакций для улучшения производительности при одновременной работе нескольких устройств. Как правило, обратно совместима со всеми 3.3В и универсальными PCI-картами.
PCI-X карты обычно выполняются в 64-бит 3.3В формате и имеют ограниченную обратную совместимость со слотами PCI64/66, а некоторые PCI-X карты - в универсальном формате и способны работать (хотя практической ценности это почти не имеет) в обычном PCI 2.2/2.3.
В сложных случаях для того, чтобы быть полностью уверенным в работоспособности выбранной вами комбинации из мат.платы и карты расширения, случае надо посмотреть таблицы совместимости (compatibility lists) производителей обоих устройств.
PCI-X 2.0 - дальнейшее расширение возможностей PCI-X 1.0, добавлены скорости в 266 и 533МГц, а также коррекция ошибок чётности при передаче данных.(ECC). Допускает расщепление на 4 независимых 16-битных шины, что применяется исключительно во встраиваемых и промышленных системах, сигнальное напряжение снижено до 1.5В, но сохранена обратная совместимость разъёмов со всеми картами, использующими сигнальное напряжение 3.3В.
PCI-X 1066/PCI-X 2133 - проектируемые будущие варианты шины PCI-X, c результирующими частотами работы 1066 и 2133МГц соответственно, изначально предназначенные для подключения 10 и 40Гбит Ethernet адаптеров.
Вот почему в некоторых ситуациях для обеспечения стабильности работы нескольких установленных устройств необходимо ограничивать максимальную частоту работы использованной шины PCI-X (обычно это делается джамперами)
СompactPCI - стандарт для разъёмов и карт расширения, применяемый в промышленных и встраиваемых компьютерах. Механически не совместим ни с одним из "общих" стандартов.