PCI и PCI-X

PCI в инструментальных системах: cPCI и PXI

Для устройств промышленного назначения в начале 1995 года был принят стандарт Compact PCI. Шина Compact PCI (cPCI) разрабатывалась на основе спецификации PCI 2.1. Этот стандарт принят Организацией производителей промышленных компьютеров PCIMG (PCI Industrial Computer Manufacturers Group). Шина отличается поддержкой большого количества слотов: 8 против 4 в обычной PCI. Как и PCI, шина поддерживает 32-битный и 64-битный обмен. Шина обладает всеми возможностями автоконфигурирования, присущими PCI. Кроме того, шина дает возможность программного прочтения «географического адреса» модуля. Географическая адресация дает дополнительную возможность идентификации физического местоположения модуля (хотя его можно определить и по номерам шины и устройства, пользуясь стандартными конфигурационными функциями PCI). Конструктивно платы Compact PCI представляют собой еврокарты высотой 3U (100×160 мм) с двумя коннекторами (J1 и J2) или 6U (233,35×160 мм) с 4–5 коннекторами (J1…J5). На шасси разъемы обозначаются P1…P5; платы (модули) устанавливаются с шагом 20,32 мм (0,8 дюйма). Одно посадочное место (слот), как правило крайнее левое, отводится под системный модуль, остальные — под периферийные. В системный слот устанавливается контроллер шины, на который возлагаются функции арбитража и синхронизации. На его коннекторе шиной используется большее число контактов, чем на остальных. Вид шасси и модулей Compact PCI приведен на рисунке, на рисунке видно символическое обозначение места контроллера (номер системного слота — в треугольнике, периферийных — в круге). На шасси может быть несколько сегментов cPCI — независимых шин; если требуется, связь между ними организуется через модули-мосты, устанавливаемые в слоты. В каждом сегменте должен быть собственный контроллер шины.

Коннекторы — 7-рядные экранированные штырьковые разъемы с шагом 2 мм между контактами, на кросс-плате — вилка, на модулях — розетки. Поскольку модули (и разъемы) обычно устанавливаются вертикально, ряды удобнее назвать колонками, что и подразумевается ниже. Из 7 колонок контактов (z, a, b, c, d, e, f) только 5 (a–e) используются для сигнальных цепей, а колонки z и f — только для экрана (соединяются с шиной GND)1. Контакты коннекторов имеют разную длину: более длинные контакты цепей питания при установке модуля соединяются раньше, а при вынимании разъединяются позже, чем сигнальные. Такое решение позволяет производить «горячую» замену модулей. Собственно шина использует только коннекторы J1 и J2, плотно примыкающие друг к другу (они могут выглядеть как единый 47-позиционный разъем). Контакты J1 используются для сигналов 32-битной шины PCI; периферийная 32-битная плата может и не иметь разъема J2. Ряды 12– 14 используются как ключи для вариантов с уровнями сигналов 5В/3,3В. Здесь возможны универсальные платы, но не допускаются универсальные шасси. Разъем J2 используется по-разному: системный контроллер использует его для сигналов арбитража и синхронизации, разводящихся по периферийным слотам радиально. На периферийных платах он может и отсутствовать. В 64-разрядных системах J2 используется для расширения шины; в 32-разрядных он может использоваться для сигналов ввода-вывода, разводящихся через шасси. На этот же разъем выведены сигналы географической адресации (которые можно и не использовать). Назначение контактов разъемов J1 и J2 Compact PCI версии 2.1 приведено в таблице ниже. Разъемы J3…J5 отводятся для прикладного использования. Конструкция коннекторов позволяет применять для них специфические модификации (например, с разделяющим экраном и механическими ключами). В шине предусматривается наличие независимых источников питания + 5 В, + 3,3 В и ± 12 В.

Разъем, контакт Ряд
a b c d e
J2 22 GA4 GA3 GA2 GA1 GA0
21 CLK6 GND RSV RSV RSV
20 CLK5 GND RSV GND RSV
19 GND GND RSV RSV RSV
18 BRSVP2A18 BRSVP2B18 BRSVP2C18 GND BRSVP2E18
17 BRSVP2A17 GND PRST# REQ6# GNT6#
16 BRSVP2A16 BRSVP2B16 DEG# GND BRSVP2E16
15 BRSVP2A15 GND FAL# REQ5# GNT5#
14 AD35 AD34 AD33 GND AD32
13 AD38 GND V(I/O) AD37 AD36
12 AD42 AD41 AD40 GND AD39
11 AD45 GND V(I/O) AD44 AD43
10 AD49 AD48 AD47 GND AD46
9 AD52 GND V(I/O) AD51 AD50
8 AD56 AD55 AD54 GND AD53
7 AD59 GND V(I/O) AD58 AD57
6 AD63 AD62 AD61 GND AD60
5 C/BE5# GND V(I/O) C/BE4# PAR64
4 V(I/O) BRSVP2B4 C/BE7# GND C/BE6#
3 CLK4 GND GNT3# REQ4# GNT4#
2 CLK2 CLK3 SYSEN# GNT2# REQ3#
1 CLK1 GND REQ1# GNT1# REQ2#
J1 25 5V REQ64# ENUM# 3.3V 5V
24 AD1 5V V(I/O) AD0 ACK64#
23 3.3V AD4 AD3 5V AD2
22 AD7 GND 3.3V AD6 AD5
21 3.3V AD9 AD8 M66EN C/BE0#
20

AD12

GND V(I/O) AD11 AD10
19 3.3V AD15 AD14 GND AD13
18 SERR# GND 3.3V PAR C/BE1#
17 3.3V IPMB_SCL (SDONE)1 IPMB_SDA (SBO#)1 GND PERR#
16 DEVSEL# GND V(I/O) STOP# LOCK#
15 3.3V FRAME# IRDY# BD_SEL# (GND)2 TRDY#
12-14 Зона ключа - - - -
11 AD18 AD17 AD16 GND C/BE2#
10 AD21 GND 3.3V AD20 AD19
9 C/BE3# IDSEL AD23 GND AD22
8 AD26 GND V(I/O) AD25 AD24
7 AD30 AD29 AD28 GND AD27
6 REQ# GND 3.3V CLK AD31
5 BRSVP1A5 BRSVP1B5 RST# GND GNT#
4 IPMB_PWR (BRSVP1A4)1 HEALTHY# (GND)1 V(I/O) INTP INTS
3 INTA# INTB# INTC# 5V INTD#
2 TCK 5V TMS TDO TDI
1 5V -12V TRST# +12V 5V

1 - Назначение в скобках — для старых версий.
2 - На системном слоте — GND.

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

Сигнал Назначение
BD_SEL# Сигнал от модуля о том, что он установлен в слот и питание подано (подается через один из укороченных контактов, который соединяется после всех основных)
BRSVxxxx Зарезервированные на будущее сигналы, шинно разведенные по слотам; xxxx обозначает позиционный номер контакта (BRSVP1A4 — на контакте A4 разъема P1)
CLK[0:6], GNT#[0:6], REQ#[0:6] Сигналы, радиально разводящиеся от разъема J2 системного слота к периферийным (сигналы CLK0, GNT0# и REQ0# расположены на местах CLK, GNT# и REQ# разъема J1)
DEG# Предупреждение о деградации питания
ENUM# Все аппаратные модули установлены, можно производить нумерацию и конфигурирование устройств
FAL# Отказ питания
GA0-GA4 Географический адрес. Коммутацией на «землю» для каждого слота задается его двоичный географический адрес на шасси
SMB_SDA, SMB_SCL, Сигналы шины SMBus (только на системном слоте)
SMB_ALERT# Сигнал прерывания по шине SMBus
HEALTHY# Сигнал от модуля, что он получает нормальное питание (PwrGood) и сигнал его сброса снят
INTP, INTS Прерывания от первичного и вторичного контроллеров IDE
IPMB_PWR, Батарейное питание шины IPMB (Independent Platform Management Bus, независимая последовательная шина управления платформой)
IPMB_SCL, IPMB_SDA Синхронизация и данные шины IPMB
PRST# Push Button Reset, сигнал от кнопки «Сброс»
RSV Резерв на будущее
SYSEN# Идентификация системного слота (на системном слоте контакт заземлен, что позволяет модулю опознать установку в это место)
UNC Не подключен

 На базе шины Compact PCI фирмой National Instruments разработана спецификация PXI (PCI eXtensions for Instrumentation — расширение PCI для инструментальных систем) в тех же конструктивах. По сравнению с cPCI в PXI более жестко определяется местоположение модулей. На шасси левый слот отводится для контроллера шины, следующий за ним — для контроллера синхронизации (его номер пишут в ромбе), остальные — для периферийных модулей. При необходимости контроллер может расширяться влево, занимая дополнительные слоты, разъемы которых не связаны с общей шиной.

В шине PXI часть контактов J2/P2, определенных в Compact PCI как резервные, предназначаются для организации дополнительных локальных шин и синхронизации. Резервными остались только PXI_BRSVA15 и PXI_BRSVB4, разведенные по всем слотам шасси. Топологию соединений на шасси PXI иллюстрирует следующий рисунок.

В инструментальных системах зачастую требуется синхронизация разных модулей, для этого в PXI имеются специальные сигнальные линии. Шина синхронизирующих сигналов Trigger Bus (8 линий) PXI_TRIG[0:7] объединяет все слоты одного сегмента PXI, за исключением системного. Кроме того, имеются 13 линий индивидуальной синхронизации (Star Trigger), звездообразно соединяющих слот контроллера синхронизации с остальными периферийными слотами всего шасси (может распространяться и на два сегмента PXI). Каждая из линий PXI_STAR[0:12] слота контроллера синхронизации соединяется с линией PXI_STAR своего слота. Разводка линий обеспечивает идентичность задержек, вносимых ими в распространение сигнала между слотом контроллера синхронизации и периферийными слотами. Линии PXI_TRIG[0:7] и PXI_STAR[0:12] могут использоваться двояко: как для подачи команд запуска модулям от контроллера синхронизации, так и для сообщения модулями своего состояния (зависит от приложения шасси). Для прецизионной синхронизации имеется сигнал опорной частоты 10 МГц PXI_CLK10, который шасси синхронно (со сдвигом не более 1 нс) доставляет ко всем слотам. Для каждого слота предоставляется отдельный выход буфера; источником сигнала может быть как шасси, так и контроллер синхронизации (через сигнал PXI_CLK10_IN).

Локальные шины в PXI предназначены для связи соседних пар слотов. Локальные шины объединяют смежные слоты попарно (исключая слот системного контроллера), образуя цепочку устройств (daisy chain). Каждая локальная шина имеет 13 линий, соединяющих цепи PXI_LBR[0:12] левого слота с цепями PXI_LBL[0:12] правого слота пары. Линии могут использоваться как для цифровых, так и аналоговых (до 48 В, 200 мА) сигналов. Цепи PXI_LBR[0:12] последнего (самого правого) слота могут выводиться на внешний разъем шасси. Для слота контроллера синхронизации линии PXI_LBL[0:12] недоступны — их контакты заняты звездообразными сигналами синхронизации.

Кроме механических и электрических характеристик PXI определяет ПО модулей: основной ОС считается Windows NT/2000/9x, и модули должны поставляться с соответствующими драйверами. Это экономит время, необходимое для системной интеграции. В качестве средств разработки ПО предлагается использовать пакеты LabVIEW, LabWindows/CVI фирмы National Instruments; Visual Basic, Visual C/C++ от Microsoft и Turbo C/C++ от Borland. Модули PXI совместимы с шиной Compact PCI, а модули Compact PCI — с шиной PXI. Однако все преимущества спецификации реализуются только при установке модулей PXI в шину PXI.

 

Таблица. Разъем J2/P2 PXI для периферийного слота

Контакт a b c d e
22 GA4 GA3 GA2 GA1 GA0
21 PXI_LBR0 GND PXI_LBR1 PXI_LBR2 PXI_LBR3
20 PXI_LBR4 PXI_LBR5 PXI_LBL0 GND PXI_LBL1
19 PXI_LBL2 GND PXI_LBL3 PXI_LBL4 PXI_LBL5
18 PXI_TRIG3 PXI_TRIG4 PXI_TRIG5 GND PXI_TRIG6
17 PXI_TRIG2 GND RSV PXI_STAR PXI_CLK10
16 PXI_TRIG1 PXI_TRIG0 RSV GND PXI_TRIG7
15 PXI_BRSVA15 GND RSV PXI_LBL6 PXI_LBR6
Ряды 5–14 как у Compact PCI
4 V(I/O) PXI_BRSVB4 C/BE7# GND C/BE6#
3 PXI_LBR7 GND PXI_LBR8 PXI_LBR9 PXI_LBR10
2 PXI_LBR11 PXI_LBR12 UNC PXI_LBL7 PXI_LBL8
1 PXI_LBL9 GND PXI_LBL10 PXI_LBL11 PXI_LBL12

 

Таблица. Разъем J2/P2 PXI для системного слота

Контакт a b c d e
22 GA4 GA3 GA2 GA1 GA0
21 CLK6 GND RSV RSV RSV
20 CLK5 GND RSV GND RSV
19 GND GND SMB_SDA SMB_SCL SMB_ALERT#
18 PXI_TRIG4 PXI_TRIG4 PXI_TRIG5 GND PXI_TRIG6
17 PXI_TRIG2 GND PRST# REQ6# GNT6#
16 PXI_TRIG1 PXI_TRIG0 DEG# GND PXI_TRIG7
15 PXI_BRSVA15 GND FAL# REQ5# GNT5#
Ряды 5–14 как у Compact PCI
4 V(I/O) PXI_BRSVB4 C/BE7# GND C/BE6#
3 CLK4 GND GNT3# REQ4# GNT4#
2 CLK2 CLK3 SYSEN# GNT2# REQ3#
1 CLK1 GND REQ1# GNT1# REQ2#

 

Таблица. Разъем J2/P2 PXI для слота контроллера синхронизации

Контакт a b c d e
22 GA4 GA3 GA2 GA1 GA0
21 PXI_LBR0 GND PXI_LBR1 PXI_LBR2 PXI_LBR3
20 PXI_LBR4 PXI_LBR5 PXI_STAR0 GND PXI_STAR1
19 PXI_STAR2 GND PXI_STAR3 PXI_STAR4 PXI_STAR5
18 PXI_TRIG3 PXI_TRIG4 PXI_TRIG5 GND PXI_TRIG6
17 PXI_TRIG2 GND RSV PXI_CLK10_IN PXI_CLK10
16 PXI_TRIG1 PXI_TRIG0 RSV GND PXI_TRIG7
15 PXI_BRSVA15 GND RSV PXI_STAR6 PXI_LBR6
Ряды 5–14 как у Compact PCI
4 V(I/O) PXI_BRSVB4 C/BE7# GND C/BE6#
3 GND PXI_LBR8 PXI_LBR9 PXI_LBR10 -
2 PXI_LBR12 UNC PXI_STAR7 PXI_STAR8 -
1 GND PXI_STAR10 PXI_STAR11 PXI_STAR12 -

 



Sitelinkx by eXtro-media.de
Яндекс.Метрика