VMEbus
VMEbus (VersaModule Eurocard bus) — это стандарт компьютерной шины, разработанный в начале 1980-х годов для подключения модулей (плат) в системах промышленной автоматизации, встраиваемых системах и научном оборудовании. Шина обеспечивает параллельную передачу данных, адресов и управляющих сигналов между процессорными модулями, памятью и периферийными устройствами, работающими в едином шасси (крейте). VMEbus основана на механическом и электрическом стандарте Eurocard (IEC 60297) и логическом протоколе, заимствованном из шины Motorola 68000. Стандарт поддерживает многопроцессорные конфигурации, арбитраж доступа и синхронную или асинхронную передачу данных.
История
Разработка и стандартизация
VMEbus была разработана в 1981 году компаниями Motorola, Mostek и Philips как открытая шина для микропроцессорных систем на базе процессора Motorola 68000. Первоначально она называлась VERSAbus (Versatile Backplane Bus), но позже была адаптирована под европейский стандарт Eurocard, что привело к появлению названия VMEbus. В 1985 году спецификация была передана для стандартизации в IEEE (Институт инженеров электротехники и электроники), и в 1987 году был принят стандарт IEEE 1014-1987. В дальнейшем стандарт неоднократно обновлялся, в том числе для поддержки 64-разрядной адресации и более высоких скоростей (VME64, VME64x, VME320).
Распространение
В 1980–1990-х годах VMEbus стала доминирующей шиной для встраиваемых систем в оборонной, аэрокосмической, медицинской и телекоммуникационной отраслях. Её открытость, надёжность и поддержка многопроцессорности обеспечили широкое применение в системах управления оружием, радиолокационных станциях, авионике, ускорителях частиц и промышленных контроллерах. С появлением более быстрых последовательных шин (PCI Express, RapidIO) и компактных форм-факторов (CompactPCI, VPX) популярность VMEbus снизилась, однако она остаётся в эксплуатации в унаследованных системах, особенно в военной и авиационной технике, где требуется длительный жизненный цикл оборудования.
Архитектура и устройство
Механическая конструкция
VMEbus использует формат Eurocard, определяющий размеры плат и соединителей. Стандартные размеры плат:
- 3U (100 × 160 мм) — компактные модули с одним соединителем (P1/J1).
- 6U (233,35 × 160 мм) — полноразмерные модули с двумя соединителями (P1/J1 и P2/J2).
Платы вставляются в шасси (крейт), которое содержит объединительную панель (backplane) с шинами данных, адреса и управления. Крейт может содержать от 2 до 21 слота (обычно 21 слот для 6U-модулей). Соединители имеют 96 контактов (три ряда по 32 контакта) для P1 и дополнительные 96 контактов для P2.
Электрическая спецификация
Шина VMEbus является параллельной и асинхронной, то есть передача данных не привязана к фиксированному тактовому сигналу, а синхронизируется сигналами подтверждения (handshake). Основные сигнальные линии:
- Линии адреса (A01–A31) — для 32-разрядной адресации (в VME64 — до 64 бит).
- Линии данных (D00–D31) — для 32-разрядной передачи данных (в VME64 — до 64 бит).
- Линии управления — сигналы чтения/записи, подтверждения, прерывания, арбитража.
- Линии арбитража — для управления доступом нескольких модулей к шине.
Шина поддерживает адресацию как байтов, так и слов (16, 32, 64 бит). Максимальная скорость передачи данных в стандартной VMEbus составляет около 40 Мбайт/с, в VME64 — до 80 Мбайт/с, в VME320 — до 320 Мбайт/с.
Арбитраж
VMEbus поддерживает многопроцессорные конфигурации благодаря арбитражу доступа к шине. Используется распределённый арбитраж с четырьмя уровнями приоритета (0–3). Каждый модуль может запрашивать шину, и арбитр (обычно встроенный в первый слот) предоставляет доступ модулю с наивысшим приоритетом. Также возможна циклическая (round-robin) схема арбитража.
Прерывания
Система прерываний VMEbus основана на семи линиях прерывания (IRQ1–IRQ7). Модуль-инициатор прерывания (прерыватель) выставляет сигнал на одной из линий, а модуль-обработчик (прерывающий контроллер) считывает вектор прерывания для идентификации источника. Вектор прерывания передаётся по шине данных.
Разновидности и совместимость
VME
Базовая версия, определённая стандартом IEEE 1014-1987. Поддерживает 32-разрядную адресацию и 32-разрядную передачу данных. Максимальная скорость — 40 Мбайт/с.
VME64
Расширение, стандартизированное в 1995 году (IEEE 1014-1995). Добавляет 64-разрядную адресацию и 64-разрядную передачу данных, а также новые режимы передачи (блочный, с мультиплексированием адреса/данных). Скорость — до 80 Мбайт/с. Обратно совместимо с VME.
VME64x
Улучшенная версия (1997 год) с дополнительными сигналами для горячей замены плат, улучшенной синхронизацией и поддержкой более высоких скоростей. Включает расширенный соединитель P0/J0 для дополнительных линий ввода-вывода.
VME320
Разработка 1999 года, направленная на увеличение пропускной способности до 320 Мбайт/с за счёт использования синхронной передачи и более быстрых протоколов. Не полностью совместима с более старыми версиями.
VPX (VITA 46)
Современная эволюция VMEbus, использующая последовательные высокоскоростные линии (например, PCI Express, Serial RapidIO) вместо параллельной шины. VPX сохраняет механический формат Eurocard, но электрически несовместим с VMEbus. Применяется в новых системах, требующих высокой пропускной способности.
Применение
Промышленная автоматизация
VMEbus широко использовалась в программируемых логических контроллерах (ПЛК), системах управления производственными линиями, робототехнике и измерительных комплексах. Благодаря модульности и надёжности, она позволяла создавать гибкие и масштабируемые системы.
Оборонная и аэрокосмическая техника
VMEbus стала стандартом для бортовых компьютеров самолётов, вертолётов, ракет и беспилотных летательных аппаратов. Она применялась в системах управления полётом, навигации, радиолокации и связи. Например, в истребителях F-16 и F/A-18, а также в вертолётах AH-64 Apache использовались модули VMEbus.
Научное оборудование
VMEbus использовалась в ускорителях частиц (например, в Большом адронном коллайдере ЦЕРН), телескопах, спектрометрах и других научных приборах для сбора и обработки данных в реальном времени.
Телекоммуникации
В 1990-х годах VMEbus применялась в коммутаторах, маршрутизаторах и базовых станциях сотовой связи. Однако с развитием специализированных телекоммуникационных платформ (ATCA, MicroTCA) её использование сократилось.
Критика и ограничения
- Низкая пропускная способность по сравнению с современными последовательными шинами (PCI Express, RapidIO). Даже VME320 (320 Мбайт/с) уступает PCIe 3.0 x1 (около 1 Гбайт/с).
- Большие габариты плат (6U) и шасси, что ограничивает применение в компактных устройствах.
- Сложность арбитража и синхронизации при большом количестве модулей, что может приводить к снижению производительности.
- Высокая стоимость модулей и шасси по сравнению с коммерческими решениями (например, CompactPCI).
- Отсутствие поддержки горячей замены в базовой версии (добавлена только в VME64x).
- Устаревшая элементная база — многие компоненты (контроллеры шины, интерфейсные микросхемы) сняты с производства.
Интересные факты
- VMEbus является одной из первых открытых шин, не привязанных к конкретному производителю процессора.
- Стандарт VMEbus используется в Международной космической станции (МКС) для некоторых систем управления.
- В 1990-х годах на базе VMEbus создавались суперкомпьютеры, например, Intel Paragon (1992 год) использовал модифицированную версию шины.
- Форм-фактор Eurocard, на котором основана VMEbus, также применяется в стандартах CompactPCI, PXI и VPX.
Источники
- IEEE Standard for a Versatile Backplane Bus: VMEbus. IEEE Std 1014-1987.
- IEEE Standard for a Versatile Backplane Bus: VMEbus. IEEE Std 1014-1995.
- VITA (VMEbus International Trade Association). VME64x Specification. 1997.
- VMEbus Specification Manual. Motorola, 1982.
- «VMEbus: A Practical Guide» by John R. Pierce. 1990.
- «The VMEbus Handbook» by Wayne Fischer. 1994.
BFOmetr — база данных и аналитика по компаниям России.
На главную BFOmetr →