Spacelab был многоразовой лабораторией, которую можно было размещать в грузовом отсеке Space Shuttle: она давала место для работы астронавтов и проведения экспериментов. Управлял Spacelab французский мини-компьютер Mitra 125 MS. В отличие от современных компьютеров, в нём не было микропроцессора. Вместо этого его 16-битный процессор был собран из нескольких плат с микросхемами. 

В этой статье я разбираю одну из процессорных плат, показанную ниже: это часть арифметико-логического устройства компьютера (АЛУ).

The Mitra 125 MS computer, built by CIMSA, with one of the ALU/register cards shown.
Компьютер Mitra 125 MS производства CIMSA с одной из плат ALU/регистров.

Spacelab представлял собой герметичную цилиндрическую лабораторию, где размещались эксперименты, компьютеры и рабочие места исследователей. Лаборатория соединялась с шаттлом туннелем, так что исследователи могли перемещаться между Shuttle и Spacelab. Кроме того, Spacelab поддерживал до пяти негерметичных платформ, открытых космосу: на них размещались эксперименты вроде телескопов и датчиков. На иллюстрации ниже показаны туннель, лаборатория Spacelab и платформа, установленная в грузовом отсеке шаттла.(примеч.1)

Illustration of the Spacelab-3 mission. From NASA.
Иллюстрация миссии Spacelab-3. Источник: NASA

Поскольку Spacelab был европейским проектом, в нём использовали европейский компьютер — Mitra 125 MS. Линейка Mitra появилась в 1971 году, когда французская компания CII представила мини-компьютер Mitra 15 — 16-битную машину на памяти с магнитными сердечниками. Mitra — французская аббревиатура,(примеч.2) которую можно перевести как «мини-машина для вычислений в реальном времени и автоматического управления».

Как следует из названия, Mitra была небольшой и при этом рассчитанной на работу в реальном времени, поэтому хорошо подходила для управления экспериментами. Mitra 15 стала популярной: всего было продано почти 8000 машин.

В 1975 году CII выпустила преемника — Mitra 125. По сравнению с Mitra 15 новая модель получила управление памятью, процессоры ввода-вывода, более высокую производительность и дополнительные инструкции. В Spacelab использовался мини-компьютер Mitra 125 MS(примеч.3) — военизированный вариант Mitra 125, который выпускала компания CIMSA.

На миссии Spacelab было три таких компьютера: Subsystem Computer управлял самим Spacelab и его подсистемами, Experiment Computer отвечал за эксперименты, а Backup Computer мог подхватить работу, если один из двух основных компьютеров выходил из строя.(примеч.1) Эти компьютеры входили в командно-информационную подсистему Spacelab, которая управляла экспериментами и собирала данные.(примеч.4)

Обычно все три компьютера устанавливались в лаборатории Spacelab под стойкой Work Bench Rack (подробнее). Управление шло через клавиатуру и цветной ЭЛТ-дисплей, называвшийся Data Display System (DDS). На фото ниже видны компьютерная установка и один DDS.

This photo shows astronauts inside Spacelab (but not in space). The Spacelab computers were mounted under the Work Bench (right arrow). The Data Display System (left arrow) provided the interface to the computers. Photo is STS-51B Crew Portrait, 1984.
На этом фото астронавты находятся внутри Spacelab, но не в космосе. Компьютеры Spacelab были установлены под Work Bench (стрелка справа). Data Display System (стрелка слева) служила интерфейсом к компьютерам. Фото — STS-51B Crew Portrait, 1984 год.

В некоторых миссиях Spacelab лабораторный модуль вообще не использовался, чтобы освободить больше места под экспериментальные платформы. В таком случае компьютеры размещали в небольшом герметичном цилиндре, который назывался igloo. Исследователи оставались в шаттле и управляли экспериментами через две системы Data Display System, установленные на задней полётной палубе Shuttle (фото).

Микросхема АЛУ 74181

В компьютере Spacelab не использовался микропроцессорный чип. Как и большинство мини-компьютеров того времени, он был построен из простых интегральных схем, которые вместе реализовывали логику компьютера. В отличие от современных CMOS-микросхем, эти чипы содержали биполярные транзисторы: быстрые, но крупные и энергоёмкие. Такая технология известна как TTL (transistor-transistor logic) — транзисторно-транзисторная логика. Радиолюбители определённого возраста наверняка вспомнят популярную серию TTL-микросхем 7400. Компьютер Spacelab был построен на военном варианте этих микросхем — серии 5400.

Самой сложной микросхемой в компьютере, вероятно, была ’181 Arithmetic/Logic Unit (ALU), содержавшая около 170 транзисторов. Арифметико-логическое устройство — сердце компьютера: оно выполняет арифметические операции и операции булевой логики. В 1970 году Texas Instruments уместила полноценное 4-битное арифметико-логическое устройство в одной микросхеме под названием 74181. Чип был быстрым, компактным и недорогим, поэтому получил широкое распространение: его использовали как АЛУ в самых разных компьютерах — от популярных PDP-11 и Xerox Alto до мощного «супермини-компьютера» VAX-11/780.

74181 поддерживает полный набор двоичных логических операций, включая AND, OR, XOR и инверсию. Из арифметики есть сложение, вычитание, инкремент и декремент.(примеч.5) Неудобство в том, что 74181 не поддерживает сдвиг вправо. Кроме того, умножение и деление были слишком сложными, чтобы поместить их в 74181. Вместо этого процессор реализовывал умножение и деление через повторяющиеся сложения или вычитания в сочетании со сдвигами. Операции с плавающей точкой тоже были далеко за пределами возможностей 74181, но процессор мог использовать 74181 при выполнении отдельных шагов такой операции.

Хотя 74181 обрабатывала только четыре бита, несколько таких микросхем можно было объединить, чтобы работать с более широкими словами — например, 16- или 32-битными. Для обработки переносов микросхемы можно было соединить цепочкой: выход переноса одной микросхемы подавался на вход переноса следующей. Такой подход был простым, но медленным, потому что перенос должен был пройти через все микросхемы, прежде чем становился известен результат. Ускорить этот процесс позволяла микросхема упреждающего переноса 74182: она ускоряла сложение, вычисляя переносы от четырёх микросхем 74181, то есть для 16 бит, параллельно.

Платы АЛУ/регистров в Mitra

В компьютере Spacelab восемь микросхем ALU ’181 использовались для реализации 32-битного сумматора.(примеч.6) Если точнее, это были 54S181 — вариант 74181: «54» означает, что микросхемы рассчитаны на военный температурный диапазон, а «S» — что чип построен на быстрой логике Шоттки. Но одних АЛУ-чипов для этих плат было недостаточно: требовалось множество дополнительных микросхем.

В зависимости от инструкции АЛУ могло получать данные с восьми разных входов. Нужное значение выбирали микросхемы-мультиплексоры, и таких мультиплексоров требовалось 32. Три 32-битных регистра хранили входные и выходные значения ALU — на них уходило ещё 24 микросхемы. Две микросхемы упреждающего переноса 54S182 обеспечивали быстрое вычисление переносов. Наконец, всё это связывали вместе простые логические микросхемы — инверторы и элементы NAND.

Из-за такого количества микросхем схема АЛУ/регистров была разнесена по трём платам, как показано ниже. Я реверс-инжинирил плату справа.(примеч.7) Микросхемы ’181 сразу бросаются в глаза: они заметно крупнее остальных, у них 24 вывода против 14 или 16 у других чипов. На первой плате установлены две микросхемы ’181, а на двух последних — по три. Последние две платы похожи, но не идентичны.

The three ALU/register boards from the Spacelab computer. Click this image (or any other) for a larger version.
Три платы АЛУ/регистров из компьютера Spacelab. Полная версия изображения.

Обнаружить 32-битное АЛУ было для меня неожиданностью, ведь сам компьютер 16-битный. Расширенное АЛУ, вероятно, сделали ради производительности. При умножении двух 16-битных чисел получается 32-битный результат, так что 32-битное АЛУ ускоряет умножение. Кроме того, компьютер поддерживает 32-битные числа с плавающей точкой, поэтому 32-битное АЛУ, скорее всего, ускоряло и операции с плавающей точкой.

На диаграмме ниже показана архитектура 32-битной системы АЛУ этого компьютера. В центре находится само АЛУ, работающее с двумя 32-битными операндами: A и B. Слева мультиплексоры («mux») выбирают одно из четырёх значений для A и одно из четырёх значений для B. Справа результат АЛУ может быть сохранён в одном из трёх 32-битных регистров или отправлен в остальную часть компьютера по шине.

Первые два регистра — сдвиговые: они позволяют сдвигать значение влево или вправо. Третий регистр просто хранит значение в триггерах. Первые два регистра подключены к остальной части компьютера через шины, а значение третьего можно использовать только как вход для следующей арифметической операции.(примеч.8) Подозреваю, что сдвиговые регистры применялись при умножении и делении, чтобы на каждом шаге сдвигать аргументы.

Block diagram of the ALU/register board.
Блок-схема платы АЛУ/регистров.

Входы мультиплексоров дают схеме гибкость. Например, можно сложить регистр 1 с числом с шины или сложить регистр 2, сдвинутый вправо, с регистром 3. Обратите внимание: этот сдвиг реализован просто разводкой входов мультиплексора со смещением влево или вправо и никак не связан со сдвигом внутри сдвигового регистра.

Вход «все единицы» — это либо нулевой вход при отрицательной логике, либо -1 в дополнительном коде. Вход B может браться с шины, так что значение может приходить из памяти или из регистра общего назначения. Вход mix — это мешанина из сигнальных линий, битов регистров, входа сдвигового регистра и подтяжки к питанию без видимой системы. Ещё несколько загадок я описываю в сноске;(примеч.9) вероятно, они прояснились бы, если бы я реверс-инжинирил весь компьютер.

Функции мультиплексоров, АЛУ-чипов и регистров зависят от выполняемой инструкции. Если точнее, микрокодовый движок компьютера генерирует управляющие сигналы для всей машины, в том числе для плат АЛУ/регистров. Одни управляющие сигналы выбирают, какие входы мультиплексоров использовать. Другие задают функцию АЛУ. Наконец, отдельные управляющие сигналы выбирают, в какой регистр записать результат АЛУ.

Плата, которую я реверс-инжинирил, реализует 12 из 32 бит АЛУ и регистров. На изображении ниже показана роль каждой микросхемы на плате. Три 4-битных АЛУ-чипа обозначены как 2, 1 и 0. У каждого АЛУ-чипа есть две микросхемы-мультиплексора для выбора четырёх входных битов A и ещё две — для выбора четырёх входных битов B.(примеч.10) Итого на плате 12 микросхем-мультиплексоров. Три 12-битных регистра A, B и C реализованы тремя 4-битными микросхемами каждый. Завершают плату три шестиканальных инвертора и одна микросхема 4-входового NAND.(примеч.11)

The ALU/register board with the chips labeled.
Плата АЛУ/регистров с подписанными микросхемами.

У этих печатных плат (PCB) есть несколько интересных особенностей. В большинстве электроники отверстия на платах делают только там, где они нужны, но платы Spacelab имеют отверстия, расположенные по фиксированной сетке. В 1960-х IBM использовала похожие платы в компьютерах System/360.(примеч.12) В отверстие можно вставить вывод микросхемы или другого компонента. Либо оно может работать как переходное отверстие, соединяя дорожки печатной платы на разных слоях. Ещё одна интересная деталь — вертикальные металлические планки под интегральными схемами. Они отводят тепло от микросхем.

Дорожки печатной платы лучше видны с обратной стороны, на фото ниже. Они настолько тонкие, что между парой отверстий помещаются две дорожки. Обратите внимание на жёлтые проводки-доработки, исправляющие ошибки в разводке платы. Полагаю, в компьютерах, которые реально летали, эти ошибки уже были исправлены.

Back of an ALU/register board. This is a different board from the one I reverse engineered, since I wanted to show the yellow wires.
Обратная сторона платы АЛУ/регистров. Это другая плата, не та, которую я реверс-инжинирил: мне хотелось показать жёлтые проводки.

Внизу каждой платы находится 96-контактный разъём, который вставляется в материнскую плату компьютера. Обратите внимание на три цилиндрических штыря, выступающих из разъёма. Это механические ключи: они гарантируют, что плату можно вставить только в правильный слот. У каждого штыря есть металлический выступ, ориентированный в одном из шести направлений. На материнской плате в разъёмах сделаны соответствующие вырезы. Если выступы и вырезы не совпадают, плату просто не получится вставить.

A close-up of the connector, showing the keying. Also note that the zig-zag pin numbering on the left changes to an irregular number on the right. Unexpectedly, pin 52 is between pins 49 and 51, for example,
Крупный план разъёма с механическим кодированием. Также обратите внимание, что зигзагообразная нумерация выводов слева к правому краю становится нерегулярной. Например, неожиданно оказывается, что вывод 52 расположен между выводами 49 и 51.

Платы в компьютере Spacelab очень плотные: интегральные схемы упакованы тесно, чтобы уменьшить габариты компьютера. Однако по плотности они заметно уступают американским аэрокосмическим компьютерам. В частности, в Spacelab использовались те же корпуса интегральных схем, что и в бытовой электронике: выводные DIP-корпуса (dual in-line package, корпус с двумя рядами выводов).

Для сравнения, в аэрокосмических компьютерах IBM серии 4 Pi применялись интегральные схемы в flat-pack-корпусах: они были заметно меньше и тоньше. В результате на двусторонних платах IBM помещалось 156 интегральных схем, тогда как на плате Mitra примерно того же размера, с компонентами только с одной стороны, — 30.

Краткая предыстория французской компьютерной индустрии перед появлением этого компьютера

Bull — одна из старейших компьютерных компаний Франции, основанная в 1931 году. Сначала Bull продавала перфокарточное оборудование и конкурировала с IBM. К 1960-м Bull стала крупной компьютерной компанией с продуктами вроде транзисторного Gamma 60 — большого мейнфрейма, который называли первой системой, специально спроектированной для параллельной работы и мультипрограммирования. К сожалению, Bull с трудом конкурировала с IBM, её акции обвалились, и в 1964 году компанию купила General Electric, образовав Bull-GE. Крах Bull и спорное поглощение стали ударом по французской компьютерной индустрии; этот эпизод получил название Affaire Bull. Хуже того, GE вскоре закрыла два компьютера Bull, переключившись на собственную линейку компьютеров.

Affaire Bull была не только ударом по французской гордости, но и признаком того, что Франция сильно зависела от США в компьютерных технологиях. Второй эпизод показал, насколько критичными могут быть военные последствия этой слабости. В начале 1960-х Франция пыталась усилить свой ядерный потенциал, разрабатывая термоядерную бомбу. Математика термоядерного синтеза требует серьёзных вычислительных ресурсов, поэтому Франция попыталась купить мощные американские компьютеры: суперкомпьютер CDC 6600 и IBM 360/92.(примеч.13) Однако правительство США заблокировало экспорт этих машин во Францию, пытаясь ограничить распространение ядерного оружия.

Эти проблемы привели президента Франции Шарля де Голля к выводу, что стране нужна собственная сильная компьютерная индустрия. В 1966 году он разработал «план информатизации» — Plan Calcul,(примеч.14) в рамках которого французское правительство должно было реорганизовать компьютерную отрасль и выбрать компании-лидеры для каждого сектора: от мини-компьютеров до полупроводников.

В секторе мини-компьютеров правительство создало компанию CII, объединив три французские компьютерные компании: SEA, CAE и SETI. Основным владельцем CII была крупная французская компания Thomson-CSF, ныне Thales.(примеч.15) CII сыграла ключевую роль в истории компьютера Spacelab, потому что именно она разработала линейку Mitra. В середине 1970-х CII объединилась с американской Honeywell, а компьютерное подразделение было выделено в новую компанию SEMS, где мажоритарным акционером стала Thomson. Другая «дочка» Thomson, CIMSA, занималась военной электроникой и выпускала военизированные версии линейки Mitra. В частности, именно CIMSA произвела компьютер для Spacelab.(примеч.16)

Французский Plan Calcul обычно считают провалом. Несмотря на дорогие субсидии, французская компьютерная индустрия оставалась слабой и так и не смогла уйти от американского доминирования. Когда в 1974 году президентом Франции был избран Жискар д’Эстен, он свернул Plan Calcul. Есть разные трактовки — от провала государственного планирования до победы свободного рынка, — но, на мой взгляд, в 1960-х и 1970-х IBM фактически вытеснила большинство конкурентов в компьютерной индустрии, как американских, так и зарубежных, так что у Plan Calcul почти не было шансов. Что касается Bull, компания прошла через головокружительную череду американских поглощений и французских национализаций.(примеч.17) Всего два месяца назад, в марте 2026 года, её снова выкупило французское государство.

Замена на компьютер IBM AP-101SL

Поскольку Spacelab был европейским проектом, использование европейского компьютера было вопросом престижа. К сожалению, со временем французские компьютеры заменили машинами IBM — из-за требований к производительности и, без сомнения, политических факторов.

За время программы Space Shuttle компьютеры самого Shuttle и Spacelab успели устареть: компьютерные технологии развивались очень быстро. Хотя изначально эти машины считались мощными, со временем их производительности и объёма памяти стало не хватать. Компьютеры IBM AP-101 на Space Shuttle модернизировали до IBM AP-101S, которые впервые полетели в 1991 году. AP-101S был вдвое меньше, в три раза быстрее и имел более чем вдвое больший объём памяти, причём вместо памяти на магнитных сердечниках в нём использовалась полупроводниковая память.

Компьютерной системе Spacelab требовалась похожая модернизация, и в 1991 году компьютеры CIMSA в Spacelab заменили на IBM AP-101SL. AP-101SL был основан на модернизированном шаттловском AP-101S, но его доработали так, чтобы он поддерживал аппаратную архитектуру, набор инструкций и возможности ввода-вывода Mitra. Корпус компьютера IBM немного изменили, чтобы он соответствовал размерам компьютера CIMSA и использовал внешний теплообменник вместо внутреннего.

The IBM AP-101SL Spacelab computer. The circuit boards are much larger than the original Spacelab computer boards or the original AP-101B boards. Note the flat-pack ICs on the boards. Photo courtesy of Kyle Owen.
Компьютер IBM AP-101SL для Spacelab. Его печатные платы заметно больше, чем платы оригинального компьютера Spacelab или исходные платы AP-101B. Обратите внимание на flat-pack-микросхемы на платах. Фото предоставлено Kyle Owen.

Переделать 32-битный шаттловский компьютер AP-101S так, чтобы он выполнял 16-битный набор инструкций Mitra, оказалось проще, чем можно было бы ожидать: AP-101S уже поддерживал несколько наборов инструкций. Один был 32-битным и происходил от IBM System/360, второй — 16-битным набором 1750A, стандартом ВВС США. Поскольку AP-101S реализовывал свои инструкции в микрокоде — низкоуровневом программном слое, который задавал шаги выполнения машинной инструкции, — набор инструкций можно было изменить обновлением микрокода.

Я сравнил печатные платы AP-101S с платами AP-101SL, чтобы оценить масштаб изменений. Платы полупроводниковой памяти и блоки питания были практически одинаковыми. Платы CPU отличались незначительно. Платы ввода-вывода, что неудивительно, оказались совершенно другими, а сложный процессор ввода-вывода (IOP) из шаттловского AP-101S убрали. 

Выводы

Компьютер Spacelab даёт интересный взгляд на то, как строили компьютеры до того, как микропроцессоры взяли верх. Компоненты компьютера — АЛУ, регистры, управляющая логика — собирались из простых микросхем. Поскольку каждая такая микросхема умела совсем немного, компьютеру требовалось 36 плат, забитых чипами. И всё же он был достаточно компактным, чтобы отправиться в космос. По современным меркам эти компьютеры выглядят скромно: у каждого было всего 128 КБ памяти на магнитных сердечниках. Но в космической программе они играли критически важную роль.

Примечание автора: несмотря на наличие длинных тире, при написании этой статьи ИИ не использовался.

Примечания и ссылки (осторожно, много текста)

1. Подробнее о Spacelab см. Spacelab News Reference.

2. Чтобы не перегружать основную статью, я кратко расшифрую французские аббревиатуры и названия компаний в этой сноске.

  • CAE: Compagnie européenne d'automatisme électronique (European Electronic Automation Company). Французская компьютерная компания, основанная в 1960 году; продавала версии американских компьютеров, например TRW RW-300. Вошла в слияние 1966 года, в результате которого появилась CII.

  • CII: Compagnie internationale d'informatique (International Computer Company): компания, создавшая линейку мини-компьютеров Mitra. CII также продавала компьютеры, разработанные американской компанией SDS (Scientific Systems), которую в 1969 году купила Xerox и переименовала в XDS (Xerox Data Systems). XDS закрыли в 1975 году, что обошлось Xerox в сотни миллионов долларов.

  • CIMSA: Compagnie d'informatique militaire, spatiale et aéronautique (Military, Space, and Aeronautical Computing Company): компания, изготовившая компьютер Spacelab.

  • CSF: Compagnie Générale de Télégraphie Sans Fil (General Wireless Telegraphy Company). Радиотехническая компания, история которой начинается в 1918 году. В 1968 году она объединилась с Thomson, образовав Thomson-CSF.

  • MATRA: Mécanique Aviation Traction (Mechanics-Aviation-Traction). Электронная компания, которая была подрядчиком по системам обработки данных Spacelab.

  • Mitra: Mini-machine pour l'Informatique Temps Réel et Automatique («мини-машина для вычислений в реальном времени и автоматического управления»). Линейка мини-компьютеров.

  • SEA: Société d'électronique et d'automatisme (Electronics and Automation Company): французский производитель компьютеров, основанный в 1947 году и влившийся в CII в 1966-м.

  • SEMS: Société Européenne de Mini-informatique et de Systèmes (European Society for Minicomputers and Systems). Дочерняя компания Thomson, созданная французским правительством в 1976 году во время слияния CII и Honeywell. SEMS забрала у CII производство компьютеров Mitra.

  • SETI: Société européenne de traitement de l'information (European Information Processing Society). Французская компьютерная компания, созданная в 1961 году. Американской Packard Bell принадлежала четверть SETI, а сама SETI продавала настольный компьютер Packard Bell 250 размером с письменный стол.

3. На земле в проекте Spacelab использовались компьютеры Mitra 125 S, функционально идентичные Mitra 125 MS (подробнее).

4. Командно-информационная подсистема Spacelab (CDMS) устроена неожиданно сложно из-за каналов передачи данных между Spacelab, Shuttle и наземным сегментом. Кроме того, несколько блоков хранят, кодируют и декодируют данные. На блок-схеме CDMS ниже я выделил три компьютера; это лишь небольшая часть CDMS. Подробнее о CDMS см. раздел 3.5 Spacelab News Reference или The Command and Data Management System of Spacelab.

A block diagram of Spacelab's Command and Data Management Subsystem. From The Command and Data Management System of Spacelab. Click for a larger version.
Блок-схема командно-информационной подсистемы Spacelab. Источник: The Command and Data Management System of Spacelab. Нажмите, чтобы открыть увеличенную версию.

5. Я проводил реверс-инжиниринг микросхемы АЛУ 74181 в этой статье

6. В компьютере Spacelab есть ещё одна плата с четырьмя микросхемами 74S181, реализующими 16-битное АЛУ. Думаю, эта плата относится к процессору ввода-вывода. На ней стоит загадочная маркировка «HMSG». 

7. Сам процесс реверс-инжиниринга был прямолинейным, но утомительным. Я использовал мультиметр, чтобы прозвонить соединения между интегральными схемами, а также соединения с разъёмом. В отличие от многих систем, которые я исследую, на этих платах не было защитного конформного покрытия, поэтому прозванивать соединения было вполне реально. По этим данным я создал схему в KiCad; она была «физической», то есть расположение микросхем и выводов на схеме соответствовало их реальному расположению на плате. Затем я преобразовал обозначения интегральных схем из физических прямоугольников в логические символы.

Наконец, я переставил символы на схеме так, чтобы получилась осмысленная принципиальная схема. По ходу дела мне приходилось возвращаться и прозванивать дополнительные соединения, когда я находил ошибки или пропуски. Теоретически я мог бы реверс-инжинирить весь компьютер, но одной из 36 плат мне вполне достаточно.

8. Полная схема платы АЛУ/регистров, восстановленная в ходе реверс-инжиниринга, показана ниже. Нажмите, чтобы открыть увеличенную версию.

Schematic of the ALU/register board.
Схема платы АЛУ/регистров.

9. В плате АЛУ/регистров остаётся несколько загадок. Три регистра, вероятно, работают как аккумулятор, временный регистр и дополнительный регистр для умножения и деления, но непонятно, какой именно регистр за что отвечает. Я не понимаю, почему входы организованы именно так; например, нельзя сложить регистр 1 со сдвинутым регистром 2. Вход mix выглядит довольно случайным набором сигналов; возможно, эти линии используются для самотестирования? На плате я ожидал увидеть 12 бит из однородного 32-битного АЛУ.

Однако два старших 4-битных «ниббла» имеют другие управляющие линии и другую схему детектирования нуля по сравнению с третьим. Возможно, это связано с тем, что числа с плавающей точкой в Mitra состоят из 24 бит мантиссы и 8 бит экспоненты. Было бы логично, если бы плата АЛУ/регистров обрабатывала эти части по-разному.

Ещё одна загадка: на плате есть схема, которая по какой-то причине проверяет два жёстко заданных бита и два внешних бита на то, все ли они равны 0 или все равны 1. 

10. Микросхемы мультиплексоров — это сдвоенные мультиплексоры 4-к-1. Поэтому для поддержки четырёх бит требуются две микросхемы-мультиплексора. 

11. В компьютере Spacelab используются микросхемы с разными системами обозначений. У нескольких чипов стандартные отраслевые номера, например «SNJ5483» — эквивалент сумматора 7483. Большинство микросхем промаркированы военными номерами деталей вроде JM38510/07801 BJB по стандарту MIL-M-38510. Эти номера можно сопоставить со стандартными компонентами по справочнику MIL-HDBK-983.

У других чипов, например показанных ниже, стоят номера Fairchild, которые остаются для меня загадкой. Первая строка, предположительно, номер детали — «929 567» и «929 705», — но я нигде не смог найти эти обозначения. Если вы знаете, что они означают, пожалуйста. 07263 — это CAGE-код Fairchild, а последняя строка — код даты.

Two Fairchild ICs with mysterious part numbers.
Две микросхемы Fairchild с загадочными номерами деталей.

Плата АЛУ/регистров, которую я исследовал, использует следующие номера JM38510; я сопоставил их со стандартными компонентами:

/01403 = 54153, сдвоенный мультиплексор 4-к-1
/07003 = 54S04, шестиканальный инвертор
/07006 = 54S20, 4-входовый NAND
/07601 = 54S194, 4-битный сдвиговый регистр
/07801 = 54S181, 4-битное ALU
/30107 = 54LS175, четыре D-триггера

12. На фото ниже сравниваются плата IBM (сверху) и плата из компьютера Spacelab (снизу); обе относятся к началу 1980-х. Интересно, насколько они похожи. В обеих используется сетка отверстий с шагом 0,1 дюйма — в отличие от большинства печатных плат, где отверстия делают только там, где они нужны. Обе платы многослойные, с интегральными схемами на одной стороне. Плата IBM плотнее: микросхемы расположены с интервалом 0,1 дюйма, а не 0,3 дюйма.

An IBM computer board (top) and a board from the Spacelab computer (bottom).
Плата компьютера IBM (сверху) и плата из компьютера Spacelab (снизу).

Я не знаю, в какой системе IBM использовалась эта плата, но это была коммерческая, а не аэрокосмическая система. Для IBM эта плата немного необычна: большинство микросхем на ней — стандартные DIP, а не квадратные металлические корпуса, которые IBM обычно применяла. 

13. США заблокировали экспорт компьютеров во Францию меморандумом NSAM 294 — National Security Action Memorandum 1964 года. Позже США разрешили продать Франции компьютеры CDC 6600 и IBM 360/91 при условии, что Франция не будет использовать их для разработки атомного оружия. Судя по всему, Франция это условие нарушила. См. A.E.C. Bids Industry Avoid Sales Aiding French Tests (1964) и Paris Promises Not to Use Equipment for Atomic Weapons (1966).

Суперкомпьютер CDC 6600 выполнял до 10 миллионов инструкций в секунду (MIPS), а IBM 360/91 — около 17 MIPS. Для сравнения: Pentium Pro 1995 года или мобильный телефон 2012 года быстрее этих компьютеров. В 1971 году Генри Киссинджер всё ещё блокировал экспорт компьютеров во Францию, что видно из этой расшифровки. Один момент в этих статьях может сбивать с толку: IBM анонсировала компьютер 360/92 в 1964 году, но перед поставками в 1967-м переименовала его в 360/91. 

14. Среди современных тому периоду статей о Plan Calcul можно посмотреть France Entering Computer Battle: Starts All-French Company to Compete (New York Times, 1967) и France: First the Bomb, Then the "Plan Calcul" (Science, 1967). Обзор французской компьютерной индустрии см. в History of Computing in France: A Brief Sketch

15. У Thomson сложная история. В 1883 году два американца, Томсон и Хьюстон, основали Thomson-Houston Electric Company. Десять лет спустя эта компания стала General Electric, а во Франции у неё появилась дочерняя компания Thomson Houston International. После нескольких слияний французская «дочка» превратилась в Thomson-CSF — крупную оборонную и электронную компанию.

В некотором смысле Thomson-Houston и создала GE, и разрушила её. Thomson-Houston Electrical Company стала GE, но французская «дочка» Thomson-Houston почти век спустя оказалась важной частью истории краха GE. В частности, французская железнодорожная компания Alsthom, позже Alstom, была образована в 1928 году из французского подразделения тяжёлого машиностроения Thomson-Houston; «thom» в названии Alsthom происходит от «Thomson». В 2014 году General Electric купила Alstom за 10,1 млрд долларов. Покупка оказалась катастрофой, и в 2018 году GE списала 23 млрд долларов. Эта потеря, вместе с другими финансовыми проблемами, привела к тому, что в 2021 году GE объявила о разделении на три компании. 

16. Стоит упомянуть ещё одну компанию — MATRA. Она была подрядчиком по системам обработки данных Spacelab, так что компьютер Spacelab производился по контракту с MATRA. Mitra, название компьютерной линейки, часто путают с MATRA. 

17. Из-за финансовых трудностей Bull в 1964 году купила General Electric, затем компанию приобрела Honeywell, потом её национализировала Франция, она сотрудничала с NEC, купила Zenith, была приватизирована Францией и затем приобретена Atos. Менее двух месяцев назад Франция снова купила Bull, продолжив эту череду реорганизаций. 

После платы Spacelab логично посмотреть, как похожие идеи жили уже внутри микропроцессоров: в АЛУ, микрокоде, сопроцессорах и отдельных участках кремния. Другие выпуски от Ken Shirriff:

  1. «Внутри винтажной микросхемы АЛУ 74181: как она работает и почему устроена так странно»

  2. «Реверс-инжиниринг АЛУ процессора 8086 по фотографиям кристалла»

  3. «Внутри АЛУ микропроцессора 8085»

  4. «У Z-80 4-битное АЛУ. Вот как оно работает»

  5. «Как работает движок микрокода процессора 8086»

  6. «Внутри Intel 8086: как микрокод управляет АЛУ»

  7. «Схемотехника стека сопроцессора Intel 8087 для чисел с плавающей запятой: реверс-инжиниринг»

  8. «Два бита на транзистор: ПЗУ микрокода повышенной плотности в FPU-сопроцессоре Intel 8087»

  9. «Анализ кристалла 8087: быстрый битовый шифтер математического сопроцессора»

  10. «Реверс-инжиниринг π: как Pentium считал синусы быстрее всех»

  11. «Исследование кремниевых кристаллов процессора Intel 386»

  12. «Невидимая оборона 386: как защищены входы и выходы процессора»

  13. «Внутри Intel 1405: фото кристалла памяти на регистре сдвига (1970)»

А если хочется не только читать разборы, но и подтянуть практические навыки, в июне пройдёт множество бесплатных уроков для тех, кто развивается в ИТ. В дайджесте собрали темы по инфраструктуре, разработке, архитектуре, безопасности, ИИ — выбирайте то, что ближе к вашей текущей роли или следующему шагу в карьере.

Комментарии (1)


  1. LiamBlue
    04.06.2026 20:41

    Очень складно написано. Так держать!

    Предлагаю ещё одну тему для освещения в статьях - Транспьютеры. Довольно интересные экзотические вычислительные системы 80-х годов.

    А ещё можно затронуть ЭВМ наших советских и российских космических аппаратов. Той же станции МИР.

    У нас порой встречались весьма экзотические архитектуры, которые могли бы быть любопытными для публики. На МИР, например ЭВМ была с тройным резервированием.