Эти операции выполняются для конфигурационного пространства PCI карты. Размер области конфигурации составляет 256 байт, причем читать/записывать в нее можно только в 32-х разрядной сетке, т.е. двойными словами. Поэтому AD0 и AD1 должны быть установлены в 0, AD2-7 содержать адрес двойного слова, AD8-10 используются для выбора адресуемого устройства, а оставшиеся шины адреса игнорируются.
Двойной цикл адреса (1101)
Двойной цикл адреса необходим в том случае, если необходимо передать 64-х разрядный адрес в версии PCI с 32-х разрядной адресной сетке. В первом цикле передаются четыре младших байта адреса, затем четыре старших байта. Во втором цикле необходимо также передать команду, определяющую тип устройства, чей адрес выставлен (порт ввода/вывода, память и т.д.). Собственно PCI поддерживает 64 разряда адреса для портов ввода/вывода, но в PC на процессорах архитектуры от Intel такое адресное пространство не поддерживается (не позволяет сам процессор).
PCI-X
Летом 1999 года консорциум SIG по PCI принял спецификацию принципиально нового варианта шины PCI - PCI-X. Несмотря на превосходные технические параметры, новая шина разрабатывалась под скептическим взглядом Intel, которая активно ведет разработку собственной шины NGIO. До настоящего времени практически все интерфейсы, разрабатываемые Intel (AGP,PCI, USB) принимались компьютерной индустрией Официальный взгляд Intel на PCI-X выглядит так: PCI-X хорошая шина, но жизнь ее будет недолговечной, так как когда мы разработаем и утвердим NGIO, PCI-X уйдет с рынка, проиграв NGIO по переспективности и производительности. Время покажет, кто победит, но очевидно, что только при поддержке PCI-X Intel в своих chipset она может найти широкое распространение.
Активное участие таких крупных компаний как IBM, Compaq, Hewlett-Packard в разработке PCI-X тем не менее дает новой шине существенные шансы на успех, и, кроме этого, в ее пользу говорит принятие спецификации PCI-X в то время как NGIO еще находится в разработке.
Основные отличия PCI-X от PCI:
· тактовая частота шины до 133 MHz
· возможно использование различных слотов для разных скоростей обмена данными; стандарт предусматривает 1 слот с частотой 133 MHz, 2 слота на 100 MHz, остальные слоты могут использоваться на частоты 33 и 66 MHz.
· значительно уменьшено время, выделяемое на операции в PCI-X (все времена в наносекундах).
Параметр | 133 MHz PCI-X | 100 MHz PCI-X | 66 MHz PCI-X | 66 MHz обычная PCI | 33 MHz обычная PCI |
Tval (max) | 3.8 | 3.8 | 3.8 | 6 | 11 |
Tprop | 2.0 | 4.5 | 9.5 | 5 | 10 |
Tskew | 0.5 | 0.5 | 0.5 | 1 | 2 |
Tsu | 1.2 | 1.2 | 1.2 | 3 | 7 |
Tcyc | 7.5 | 10 | 15 | 15 | 30 |
Thold | 0 | 0 | 0 | 1 | 2 |
Основные функциональные отличия сведены в таблицу:
Возможности | PCI | AGP1.0 | AGP2.0 | PCI-X |
Совместимость с PCI | Да | Нет | Нет | Да |
Скорость шины 100 Mhz | Нет | Нет | Нет | Да |
Скорость шины 133 Mhz | Нет | 66 DDR | 66 DDR | Да |
Скорость шины 266 Mhz | Нет | Нет | 66 QDR | Нет |
Разрядность шины данных | 32/64 | 32 | 32 | 64 |
Разрядность шины адреса | 32/64 | 32/36/64 | 32/47/64 | 64 |
Максимальная скорость обмена, MBytes/s | 533 | 533 | 1064 | 1064 |
Допустимость нескольких слотов | Да | Нет | Нет | Да |
Иерархическая топология | Да | Нет | Нет | Да |
Некогерентные транзакции | Нет | Да | Да | Да |
Идентификатор устройства и шины (позволяет оптимизировать параметры обмена) | Нет | Нет | Нет | Да |
Примечания:
DDR - Double Data Rate - удвоенная скорость обмена данными
QDR - Quad Data Rate - учетверенная скорость обмена данными
ШинаCompact PCI (cPCI) разрабатывалась на основе спецификации PCI версии 2.1. От обычной PCI эта шина отличается большим количеством поддерживаемых слотов для одной шины: 8 против 4. Всвязи с этим появились новые 4 пары сигналов запросов и предоставления управления шиной. Шина поддерживает 32-битные и 64-битные обмены (с индивидуальным разрешением байт). При частоте шины 33 МГц максимальная пропускная способность составляет 133 Мб/с для 32 бит и 266 Мб/с для 64 бит (в середине пакетного цикла). Возможна работа и на частоте 66 МГц, при этом производительность удваивается. Шина поддерживает спецификацию PnP - в ней работают все механизмы идентификации и автоконфигурирования, имеющиеся в PCI. Кроме того, в шине возможно применение географической адресации, при которой адрес модуля (на который он отзывается при программном обращении) определяется его положением в каркасе.
Для этого на коннекторе J1 имеются контакты GA0...GA4, коммутацией которых на "землю" для каждого слота может быть задан его двоичный адрес. Географическая адресация позволяет переставлять однотипные модули, не заботясь о конфигурировании их адресов (хорошая альтернатива системе PnP - здесь модуль "встанет" всегда в одни и те же адреса, которые без физического вмешательства ничем не собъются). Конструктивно платы Compact PCI представляют собой еврокарты высотой 3U (100 x 160 мм) с одним коннектором или 6U (233 x 160 мм) с двумя коннекторами. Коннекторы - 7-рядные штырьковые разъемы с шагом 2 мм между контактами, на кросс-плате - вилка, на модулях - розетки. Контакты коннекторов имеют разную длину: более длинные контакты цепей питания при установке модуля соединяются раньше, а при вынимании разъединяются позже, чем сигнальные.
Такое решение закладывает основу для реализации возможности "горячей" замены модулей. Собственно шина использует только один коннектор (J1), причем в 32-битном варианте не полностью - часть контактов выделяются на использование по усмотрению пользователя. 64-битная шина использует коннектор полностью. Одно посадочное место на кросс-плате резервируется под контроллер шины, на который возлагаются функции арбитража и синхронизации. На его коннекторе шиной используется большее число контактов, чем на остальных. У больших плат коннектор J2 отдается на использование по усмотрению пользователя (разработчика), а между коннекторами J1 и J2 может устанавливаться 95-контактный коннектор J3. Конструкция коннекторов позволяет для J2 применять специфические модификации, в которых может, например, присутствовать разделяющий экран и механические ключи. В шине предусматривается наличие независимых источников питания +5 В, +3.3 В и +/-12 В.