Коллектив Авторов - Цифровой журнал «Компьютерра» № 78
Развернутая схема с подключением всей «периферии»
Почему именно пять? Ответ кроется в стратегии вычислительной избыточности, именуемой NASA «fail operational / fail operational / fail-safe», обеспечивающей практически полную безотказность компьютерной системы. Что кроется за этим заклинанием? Все просто: один отказ — продолжаем работать, второй отказ — все еще трудимся, третий отказ — спасаем корабль.
Исходя из хорошо проработанной в то время троированной системы с мажоритированием, принять решение о правильном сигнале управления можно было только в случае выдачи его не менее чем тремя компьютерами. Значит, избыточная схема GPC, способная минимум два раза отказать и сохранить при этом три работоспособные машины, должна состоять из пяти ЭВМ. Простая арифметика. Чуть позже число избыточных машин было сокращено до четырех, но пятый компьютер всё равно оставался «на подхвате» с резервной копией полетной программы.
Такой подход в корне отличался от компьютерных реализаций миссий Gemini и Appolo, где основная компьютерная система просто однократно дублировалась, и дубль включался только при явном отказе основного компьютера.
Но эти пилотируемые программы работали в режиме баллистического запуска и неуправляемой посадки. Компьютеры же шаттла трудились и на взлете и на орбите и при посадке. Любой промах в любой из этих моментов может оказаться фатальным.
Посему, все пять GPC разбросаны по разным углам челнока и полный отказ минимум двух из них никак не повлияет на полет корабля.
Но раз компьютеры GPC (то бишь, AP-101) голосовали за правильность сигнала, значит они были связаны. И еще как! Шинная архитектура, связывающая всё на шаттле, начиная от GPC и заканчивая, например, контроллерами закрылков, — даже более поразительное творение чем «пятиголовая» компьютерная система.
Процессоры ввода/вывода. Наложим шину?Шинная архитектура шаттлов объединяла и вычислительные модули системы DPS, и исполнительные компоненты системы авионики, и управление реактивными двигателями корабля, и его многочисленные датчики и измерительные приборы.
Каждый из пяти GPC был интегрирован с процессором ввода/вывода (Input/Output Processor — IOP). К каждому из пяти IOP, разделяющих память со «своим» GPC, подключено целых 24 шины! Все подсистемы корабля с помощью мультиплексоров могут одновременно работать с нужными им шинами. Так, пять шин используются для взаимодействия пяти GPC, через четыре шины работают дисплеи системы DEU, к двум шинам подключены два устройства внешней памяти на магнитной ленте (MMU). Остальные шины используются системой телеметрии и авионики корабля.
В IOP каждой 18-битовой шиной управляет отдельный (!) микрокомпьютер, именуемый Bus Controller Element (BCE). Кроме того, в IOP работает мощный процессор ввода/вывода, курирующий все двадцать четыре BCE. Частота тактирования каждой шины всего один мегагерц, но так как шины работают параллельно и независимо друг от друга, передача данных осуществляется практически в реальном времени.
Каждый из блоков GPC может работать с шиной в двух режимах: «командовать» и «слушать». Командовать каким-либо компонентом полетной программы может только один из GPC. Остальные же только слушают его действия. Таким образом, каждый из пяти GPC командует пятой частью дел на челноке и слушает оставшиеся четыре пятых. То есть, любой из них «в курсе» всех дел, выполняемых остальными вычислительными собратьями.
Как же происходит то самое избыточное голосование, «вычисляющее» неисправный компьютер? GPC, слушая командующие ЭВМ, дублировано выполняют их микропрограммы. Выполнение каждой из них компьютеры завершают формированием трехбитного кода, однозначно определяющего вид процедуры (например, «010 — вывод выполнен без ошибки»). Если все компьютеры из избыточного набора генерируют один и тот же код, значит всё в норме, если же один или даже два из них врут, три оставшиеся с правильным кодом могут понять, кто из пятерки сбоит.
Такая схема проверки создает сильносвязанную группу GPC. Чтобы убедиться, что вся группа трудится слаженно, используется 64-битная структура под названием «sumword». Она отправляется в шину каждым GPC каждые 6,25 секунды и содержит биты последних вызовов к ключевым системам корабля. Сравнивая чужие «sumword» со своим, каждый GPC раз в 6,25 секунды убеждается, что его избыточные братья работоспособны. Или нет.
Space Shuttle DPS. Что еще?Связанные через систему шин между собой и с исполнительными элементами компьютеры GPC составляют основу DPS.
Но короля делает свита. В ней состоят устройства внешней памяти и дисплейно-клавиатурная система. Устройства внешней памяти (Mass Memory Unit — MMU) представляют собой два накопителя на магнитной ленте производства компании Odetics, хранящие все программы миссии. Всего каждый из них может хранить по восемь миллионов 16-разрядных слов, что в три раза больше чем объем всех микропрограмм миссии.
При запуске и посадке четыре GPC из пяти загружают из MMU одинаковые программы, именуемые «Управляющая последовательность» (Operational Sequence — OPS). На орбите полетную OPS загружают всего два избыточных GPC. И в любом случае один из компьютеров загружает полную программу миссии, используемую как быстрый бэкап.
Отображение работы всех GPC и их управление производится в помощью модуля дисплейной электроники (Display Electronic Unit — DEU) производства компании Norden. Всего используются четыре электронно-лучевых дисплея диагональю семь дюймов, отображающих 51 строку по 26 символов в каждой. Три из них располагаются в кабине пилотов, а четвертый — на корме, для специалиста по программе полета.
Система DEU в кабине пилотов шаттла
Вводить команды в ПЗУ можно с помощью специализированных клавиатур марки Ebonex. Всего их три: две у пилотов и одна на корме.
Конечно, за время существования STS, компьютерная система DPS неоднократно совершенствовалась. Так, в 1984 году компьютеры IBM AP-101 были модернизированы и стали обрабатывать более миллиона операций в секунду. Память на магнитных сердечниках сменилась флэш-модулями. Появились, усиливающие автономность, аккумуляторы. Компактность и вес системы также были оптимизированы.
Миссии системы STS завершены. Оставшиеся в живых космические челноки достойно заняли почетные места в музее. Сотни успешных полетов доказали надежность как самих кораблей, так и их уникальной компьютерной системы.
Обновленный в 1984 году IBM AP-101
Все компоненты обновленной DPS
И сбой и последующее восстановление двух из пяти GPC «Атлантиса» на орбите скорее подтверждают чем опровергают высочайшую степень отказоустройчивости уникальной во всех отношениях системы Space Shuttle Data Processing System.
К оглавлению
После шаттла: актуальные и отменённые программы
Юрий Ильин
Опубликовано 22 июля 2011 года
Эпоха шаттлов — великая, драматичная и противоречивая — завершилась. К тому моменту, как три уцелевшие корабля осуществили свои финальные вылеты, к сожалению, полноценной замены им разработать не смог никто, поэтому в ближайшие несколько лет, по крайней мере, к МКС будут летать только одноразовые корабли — российские «Союзы».
Что будет дальше? Конечно, много приходится слышать про частные аэрокосмические компании, вполне успешно разрабатывающие корабли и ракеты-носители — то есть, орудующие в сфере, прежде монополизированной государственными структурами, однако этих компаний не так много, а самые успешные на данный момент занимаются, главным образом, разработками или испытаниями суборбитальных пассажирских аппаратов, которые будут возить состоятельных граждан к границам атмосферы Земли.
Пока же «Роскосмос» объявляет «начало нового этапа работы по программе МКС, на котором у кораблей «Союз» нет дублеров» и с сомнительным ехидством проезжаются по "красивым и комфортным «птичкам», которые, дескать, уходят, а «Союзы», мол, остаются.
Впрочем, похоже, эта язвительность главным образом представляет собой ответ на вчерашний выпад журнала Time, сравнившему комфортность полёта на «Союзе» с путешествием через всю Америку в желобе авиационного шасси.
К настоящему моменту только две державы смогли разработать технологии кораблей многоразового использования — Россия и США. И только США регулярно использовали эти корабли. Сконструированный на излёте Холодной войны советский «Буран» совершил один-единственный полёт — и был полностью уничтожен в 2002 году в результате обрушения Монтажно-Испытательного Корпуса № 112 на космодроме Байконур.