FutureBus (IEEE 896) — стандартна комп'ютерна шина, призначена для заміни всіх локальних шин, в тому числі процесора, пам'яті, змінних карт і навіть, деякою мірою, LAN зв'язку між комп'ютерами.
В основу технології FutureBus була покладена асинхронна передача, що дозволяло пристроям, підключеним до неї, використовувати будь-яку швидкість. Інша проблема, яка вирішувалася, була можливість мати кілька карт-«майстрів» в системі, що дозволяло в майбутньому будувати багатопроцесорні машини. Це зажадало деякої форми «розподіленого арбітражу», щоб дозволити різним картам отримати доступ до шини з будь-якої точки, на відміну від VMEbus, яка мала одного «майстра» з повним контролем. Для того щоб мати чіткий виграш в продуктивності, FutureBus був розроблений з перспективою, щоб мати продуктивність, необхідну на десять років уперед.
Кожен мікропроцесор має в своєму розпорядженні допоміжну кеш-пам'ять . Під час виконання паралельних гілок програми в одного з процесорів з'являється проміжний результат, необхідний іншим процесорам для подальшої роботи. Цей результат потрібно швидко передати в кеш-пам'ять процесорів. Процедура таких передач якраз і передбачена в стандарті Futurebus.
Історія
Наприкінці 1970-х VMEbus був швидшим, ніж підключені до нього частини. Було цілком розумно підключити процесор і оперативну пам’ять до VME на окремих картах для створення комп’ютера. Однак у міру швидкого зростання швидкості процесорів і оперативної пам’яті VME швидко перевантажився. Збільшити швидкість VME було непросто, тому що всі підключені до нього частини також повинні були підтримувати ці високі швидкості.
Futurebus прагнув вирішити ці проблеми та створити наступника таких систем, як VMEbus із системою, яка могла б зростати у швидкості, не впливаючи на існуючі пристрої. Щоб зробити це, основна технологія Futurebus була створена з використанням асинхронних каналів зв’язку, що дозволило підключеним до нього пристроям працювати з будь-якою швидкістю, яку вони підтримують. Іншою проблемою, яку необхідно було вирішити, була можливість мати в системі кілька карт як «головних», що дозволило Futurebus створювати багатопроцесорні машини. Це вимагало певної форми «розподіленого арбітражу», щоб дозволити різним картам отримати доступ до шини в будь-якій точці, на відміну від VME, який ставив одну головну плату в слот 0 із загальним контролем. Щоб мати явну перевагу в продуктивності, Futurebus був розроблений таким чином, щоб забезпечити продуктивність, необхідну через десять років у майбутньому.
Типові стандарти IEEE починаються з того, що компанія створює пристрій, а потім подає його в IEEE для стандартизації. У випадку з Futurebus це було навпаки, уся система розроблялася під час стандартизації. Це виявилося його крахом. Коли компанії почали сприймати Futurebus як систему, вони всі приєдналися. Незабаром зустрічі зі стандартів відвідували сотні людей, і всі вони вимагали врахувати їхні особливі потреби та бажання. Оскільки складність зростала, процес стандартизації сповільнювався. Зрештою знадобилося вісім довгих років, перш ніж у 1987 році нарешті було узгоджено специфікацію. Tektronix справді виготовила кілька робочих станцій на основі Futurebus. American Logic Machines (ALM) продовжує розробляти комплексні гібридні рішення Futurebus, включаючи VME-to-Futurebus+ та інші мостові технології Bus-to-Futurebus.
Це було якраз вчасно для військово-морських сил США, які шукали нову високошвидкісну систему для проекту комп’ютерних ресурсів наступного покоління (NGCR) для передачі даних гідролокатора на своїх нещодавно розроблених підводних човнах класу Seawolf, і вони сказали, що вони стандартизують на Futurebus, якби було внесено ще кілька змін. Побачивши потенційну масову державну закупівлю, зусилля щодо додавання одразу почалися на Futurebus+. Знадобилося ще чотири роки, перш ніж Futurebus+ Standard був випущений, і на цей час спеціальна версія Futurebus зайняла лідерство в галузі.
Усі прихильники Futurebus+ мали своє уявлення про те, яким має бути Futurebus+. Це виродилося в «профілі», різні версії Futurebus+, орієнтовані на певний ринок. Плати, сумісні з одним профілем Futurebus+, не гарантовано працюватимуть із платами, побудованими за іншим профілем. Політика розробки стандартів Futurebus+ стала настільки складною, що комітет IEEE 896 відокремився від Комітету стандартів мікрокомп’ютерів IEEE і сформував Комітет стандартів архітектури шини IEEE (BASC).
Зрештою, було зроблено дуже мало спроб використовувати Futurebus. Десятилітній розрив продуктивності, який вони дали системі, випарувався в десятирічному процесі стандартизації, і звичайні локальні шинні системи, такі як PCI, були близькі за продуктивністю. Тим часом екосистема VME розвинулася до такого ступеня, що продовжує використовуватися сьогодні, через ще одне десятиліття. Спеціальні реалізації технології Futurebus наразі використовуються як технології об’єднавчої плати для мережевих додатків високого класу, маршрутизаторів корпоративного класу, високопродуктивних блейд-серверів і програм із високим попитом на вміст, наприклад відео на вимогу.
Зусилля Futurebus дійсно послужили каталізатором для простіших серійних технологій. Потім група організувалася, щоб створити систему, спрямовану безпосередньо на цю потребу, що врешті призвело до створення масштабованого когерентного інтерфейсу (SCI). Тим часом інший учасник вирішив просто відтворити всю концепцію на набагато простішій основі, що призвело до появи QuickRing. Через простоту цих стандартів обидва стандарти були завершені до Futurebus+. У 1980-х Futurebus+ випередив свій час. VME та інші стандарти паралельної шини все ще намагаються адаптувати концепції, реалізовані в Futurebus, особливо у високопродуктивних програмах.
Futurebus був джерелом деяких оригінальних робіт щодо когерентності кешу, живої вставки плат і трапецієподібних трансиверів. Трапецієподібні трансивери мають контрольований час наростання та значно спрощують конструкцію задньої плати та шини. Оригінальні трапецієподібні трансивери були виготовлені компанією National Semiconductor. Нові трансивери Futurebus+, які відповідають стандарту IEEE Std 1194.1-1991 Backplane Transceiver Logic (BTL), все ще виробляються Texas Instruments. Futurebus+ використовувався як шина введення/виведення в системах DEC 4000 AXP і DEC 10000 AXP. Плати Futurebus+ FDDI все ще підтримуються в операційній системі OpenVMS. Спеціальні мікросхеми Futurebus+ підтримують розширені симетричні та асиметричні версії Unix-подібних операційних систем, які підтримують такі компанії, як American Logic Machines. Багато технічних особливостей (асинхронна шина даних, розподілений арбітраж шини, великий розмір плати) спільні зі стандартом IEEE FASTBUS.
FASTBUS використовувався як система збору даних у багатьох експериментах з фізики високих енергій у 1980-х і 1990-х роках.