Futurebus — стандарт магистрально-модульной шины, разработанный под эгидой IEEE и призванный обеспечить передачу данных как между всеми компонентами компьютера, включая процессор, оперативную память и карты расширения, так и по соединениям локальной сети. Комплект стандартов, связанных с Futurebus, также, определял элементы крейтовой системы, алгоритмы обеспечения когерентности кэшей и иные аспекты работы компьютерных систем. Этот проект был начат в 1979 году и длился до 1987 года, закончившись принятием первой версии стандарта и немедленным началом работы над его редизайном. Переделка стандарта продолжалась до 1994 года, после чего ещё некоторое время выпускались различные дополнения. К этому моменту отрасль, в основном, начала использовать иные технологии и поддержка Futurebus не давала серьёзного преимущества производителям. Тем не менее, поддержка стандарта отдельными производителями фрагментарно продолжается и до настоящего[1] времени.
Futurebus, Futurebus+, ФЬЮЧЕБАС+ | |
---|---|
История | |
Разработчик |
IEEE Microcomputer Standards Committee, IEEE Bus Architecture Standards Committee (BASC) |
Разработано | 1987 |
Спецификации | |
Горячая замена | да |
Параметры данных | |
Битовая ширина | 32—256 |
Протокол | параллельный |
История
правитьПервый этап разработки
правитьВ конце 1970-х годов компьютерная техника распространилась в достаточной степени, чтобы встал вопрос о стандартизации интерфейсов обмена между отдельными элементами компьютерных систем. Именно в тот период инженерное сообщество начало предпринимать активные усилия по созданию всеобъемлющих, не привязанных к конкретным производителям, стандартов в сфере телекоммуникации и у него были определённые основания считать, что совместная разработка в рамках деятельности нейтрального комитета и принятие промышленного стандарта на компьютерную шину будут реализуемыми, а само техническое решение останется актуальным достаточное время, чтобы быть полезным отрасли.
Собравшиеся в рамках комитета IEEE 896 инженеры намеревались повторить успех систем Multibus и начавшей развиваться почти одновременно с Futurebus шины VMEbus, продвигавшейся компанией Motorola и, в то же время, собирались выпустить набор более широких и увязанных между собой стандартов, наряду с компьютерной шиной определяющих иные аспекты построения компьютерных систем.
В этот период времени пропускная способность упомянутой выше шины VMEbus, которая выступала для участников комитета IEEE 896 в качестве одного из ориентиров, превышала требования к скорости передачи данных со оперативной памяти и наиболее современных микропроцессоров. Это давало основания строить новую шину как магистрально-модульную, то есть рассчитанную на подключение к ней системы из унифицированных плат — CPU, оперативной памяти и плат расширения для подключения периферийных устройств. Естественным образом вопрос о межмашинных коммуникациях, по крайней мере, в локальной сети, сводился к реализации специализированных плат расширения, передающих информацию между отдельными устройствами и стойками. Таким образом, будущий универсальный стандарт планировался, так же, как стандарт локальной вычислительной сети.
При этом подходе к шине возникало естественное требование работы в асинхронном режиме, с тем, чтобы медленные устройства могли работать совместно с быстрыми, она должна была поддерживать разные скорости передачи данных.
Участники комитета так же были знакомы с опытом использования систем NIM и КАМАК и для них была очевидна полезность стандартизации механических конструктивов плат и крейтов. Разработчики Futurebus общались с разработчиками близкого по функционалу, но в большей степени ориентированного на системы сбора данных стандарта FASTBUS, позднее стандартизированного как IEEE 960. Общий инженерный контекст привёл к тому, что ряд технических решений, таких, как техника распределённого арбитража в этих стандартах оказались реализованы схожим образом.
Типичная разработка стандарта IEEE начиналась с того, что компания, разработавшая технологию и реализовавшая её в своих устройствах, представляла эту технологию комитету для стандартизации. В случае Futurebus всё происходило в обратном порядке — энтузиасты-инженеры решили сначала разработать универсальный и полезный для всех стандарт, а конкретные устройства разрабатывать уже на основе готовой спецификации. Этот подход стал причиной провала всей затеи. Компании, в которых работала часть из членов комитета, дружно присоединились к поддержке проекта, после чего каждая стала проталкивать для включения в стандарт те аспекты и особенности технических устройств, которые были интересны именно этой конкретной фирме. Проект стандарта рос, а его разработка всё замедлялась и замедлялась. В итоге, от начала разработки до финального согласования документов стандарта, произошедшего в 1987 году, прошло восемь долгих лет.
Ряд компаний, включая Tektronix и American Logic Machines[англ.] начали выпуск систем, полностью основанных на Futurebus или, хотя бы гибридных. Поддержку технологии обеспечивали так же производители отдельных компонент — Texas Instruments, Molex Inc, Tyco Electronic и ряд других.
Futurebus +
правитьПрактически в момент выпуска стандарта, представители ВМФ США, заинтересованные в технологии высокоскоростной передачи данных для проекта Next Generation Computer Resources (NGCR), который должен был обеспечить обработку данных сонаров проектировавшихся в то время подводных лодок типа «Сивулф», заявили участникам комитета, что они готовы были бы принять Futurebus в качестве технического стандарта для своего проекта, но… только, если в сам стандарт будут внесены очередные и, довольно серьёзные по объёму дополнения. Предвкушая масштабные госзакупки, участники комитета немедленно приступили к разработке новой версии стандарта — Futurebus+, потратив ещё четыре года на доработку его основной части, ещё более замедлив принятие стандарта промышленностью.
Каждый из сторонников Futurebus+ имел свои идеи о том, что конкретно должно быть включено в стандарт. В результате, в ставший весьма обширным стандарт было включено понятие «профилей» — типовых подмножеств стандарта, ориентированных на то или иное специфическое применение. Реализация профилей привела к тому, что промышленность выпустила на рынок множество частично совместимых продуктов, каждый из которых формально соответствовал Futurebus+, но совместная работа которых была не гарантирована. Сложность разработки стандарта Futurebus+ росла и росла. Это, в итоге, привело к тому, что единая рабочая группа стандарта IEEE 896 начала разделяться. Из комитета IEEE Microcomputer Standards Committee выделился IEEE Bus Architecture Standards Committee (BASC).
Окончание разработки и текущий статус
правитьИтог разработки стандарта оказался неоднозначен. Futurebus оказал серьёзное влияние на отрасль, но сам по себе нашёл широкого применения. Первоначальный широкий коллектив, ведший его разработку, разбился, в дальнейшем, на отдельные группы и начал оформлять свои идеи в новых форматах. Участники комитета по разработке Futurebus в дальнейшем приняли участие в создание стандартов SCI, QuickRing, IEEE 1355/SpaceWire и ряда других, а сами разработки, частично делавшиеся в рамках деятельности комитета, такие как протокол когерентности кэшей, горячая замена плат, и технология LVDS были использованы, в дальнейшем, вне контекста Futurebus.
Futurebus стал источником разработки такой технологии как Trapezoidal Transceiver, являющийся одним из видов сетевого трансивера. Эта техника построения микросхем существенно облегчает реализацию компьютерных шин и объединительных панелей. Оригинальные устройства Trapezoidal Transceivers были разработаны National Semiconductor. Более новая версия устройств, соответствующая требованиям Futurebus+ и, конкретнее, стандарта IEEE Std 1194.1-1991 Backplane Transceiver Logic (BTL) до сих пор выпускается и этой компанией и компанией Texas Instruments.
Наиболее известные применения
правитьВыпуск оборудования Futurebus/Futurebus+ продолжался некоторое время после публикации стандарта, а отдельных его видов — и по состоянию дел на 2019 год. В частности, трансиверы Futurebus+, соответствующие требованиям стандарта IEEE Std 1194.1-1991 Backplane Transceiver Logic (BTL) продолжают выпускаться компанией Texas Instruments.
Futurebus+ использовался в качестве шины ввода-вывода в некоторых компьютерах компании DEC — системах серий DEC 4000 AXP[англ.] и DEC 10000 AXP[англ.]. Работа с платами Futurebus+ с интерфейсом FDDI по прежнему поддерживается в операционной системе OpenVMS.
Описание
правитьFuturebus был описан в целом наборе стандартов, неполный список которых приводится ниже:
Электрическая составляющая и логическая составляющая
править- 896.1-1987 IEEE Standard Backplane Bus Specifications for Multiprocessor Architectures: Futurebus — первоначальная версия логического протокола
- 896.1-1991 IEEE Standard for Futurebus+ — Logical Protocol Specification — логический протокол Futurebus+
- 896.2-1991 IEEE Standard Backplane Bus Specification for Multiprocessor Architectures: Futurebus+
- 896.3-1993 IEEE recommended practice for Futurebus+
- 896.4-1993 IEEE Standard for Conformance Test Requirements for Futurebus+
- 896.7 Interconnect between Futurebus+ systems
- 896.9-1994 Fault tolerant extensions to the Futurebus+ architecture
- 896.11 Standard for IEEE 1355 Links on Futurebus+ Backplane Connector
- 896.12 Standard for Fault Tolerance Classification of Computer-Based Systems
Futurebus — один из немногих стандартов шины, которые не был жёстко привязан к какой-либо стандартной логике уровня электронных схем. Он был спроектирован таким образом, чтобы его можно было реализовать с использованием TTL-логики, ECL-логики, CMOS-логики или иными способами.[2].
Тем не менее, в рамках деятельности рабочей группы была разработана электрическая спецификация
- 1194.1-1991 IEEE Standard for Electrical Characteristics of Backplane Transceiver Logic (BTL) Interface Circuits
Futurebus+ поддерживает ширину шины от 32 до 256 бит. При желании разработчика, устройство может быть реализовано таким образом, чтобы взаимодействовать с другими устройствами, работающими на любой ширине шины, в том числе с такими, которые способны работать только с подмножеством протокола, привязанным к конкретной ширине
Механическая составляющая
правитьВ качестве стандартного для систем Futurebus был принят конструктив Евромеханика, описанный в документе 1101—1987 IEEE Standard for Mechanical Core Specifications for Microcomputers Using IEC 603-2 Connectors.
Ниже приводится ряд иных стандартизирующих документов, тесно связанных с Futurebus в части механических характеристик его модулей, охлаждения и разъёмов.
- 1301 Standard for Metric Equipment Practice for Microcomputers — Coordination Document
- 1301.1-1991 IEEE Standard for a Metric Equipment Practice for Microcomputers—Convection-Cooled with 2 mm Connectors
- 1156.1 Standard Microprocessor Environmental Specifications for Computer Modules
- EIA IS-64 (1991) 2 mm Two-Part Connectors for Use with Printed Boards and Backplanes
Профили
правитьПервоначально, документ IEEE 896.2 определял три профиля для целевых применений.
- Профиль A для систем общего назначения. Его разработка поддерживалась сообществом, сложившимся вокруг VMEbus.
- Профиль B для шины ввода-вывода. Его разработку поддерживала Digital Equipment Corporation. Этот профиль был использован для реализации шины ввода-вывода в машинах серии VAX и ряде систем, основанных на DECовском RISC-процессоре Alpha.
- Профиль F, содержащий технические требования для максимального ускорения Futurebus+. Его разработка велась инженером John Theus, работавшим в компании Tektronix и ориентировалась на высокопроизводительные рабочие станции.
Впоследствии, был стандартизирован ряд новых профилей.
- 896.5-1993 IEEE Standard for Futurebus+, Profile M (Military) — для военных систем.
- 896.6 Futurebus+ telecommunications systems, profile T (telecommunications) — для использования в телекоммуникациях.
- 896.8 Small computer expandibility module for Futurebus+ systems, profile D (desktop) — для использования в персональных компьютерах.
- 896.10-1997 Standard for Futurebus+ Spaceborne Systems — Profile S — для использования в бортовых информационных сетях космических аппаратов.
Стандартизация в России
правитьВ России текст стандарта IEEE 896.2 переведён на русский язык и принят в качестве ГОСТ 34.31-96 Интерфейс ФЬЮЧЕБАС+ спецификации физического уровня. Перевод создан научным коллективом НИИ Ядерной Физики МГУ, под руководством профессора С. Г. Басиладзе.