ИСТОРИЯ ВТ
Юрий Полунов
Англичанин-хитрец,
Чтоб работе помочь,
Изобрел за машиной машину...
Русская народная песня "Дубинушка"
Из трех предыдущих статей цикла следует, что в истории первых серийно выпускавшихся ламповых британских ЭВМ наблюдалась определенная закономерность. Они, как правило, создавались в два этапа: в течение первого научные учреждения (обычно университеты) разрабатывали прототип машины, а в течение второго промышленные компании серийно изготавливали модифицированные (иногда значительно) версии прототипа.
Исключение составляла старейшая британская приборостроительная компания Elliott Brothers, основанная Уильямом Элиотом (William Elliott) в начале XIX века и производившая различные навигационные приборы, топографические устройства и т. д. Во время Второй мировой войны она поставляла британскому флоту аналоговые электромеханические устройства управления палубной артиллерией, а в послевоенные годы в соответствии с требованиями наступавшего "цифрового века" попыталась создать более совершенную цифровую систему управления огнем, действующую в режиме реального времени и получившую название "Система среднего диапазона 5" (Medium Range System 5, MRS5). С этой целью в Бохэмвуде, графство Хертфордшир, компания организовала научно-исследовательские лаборатории (Borehamwood Research Laboratories, BRL), в состав которых входило несколько подразделений, в том числе отделы цифровых электронных схем, вычислительной техники, конструкторское бюро, мастерские, а также небольшая теоретическая группа, состоявшая в основном из математиков-вычислителей. BRL возглавил выпускник Кембриджского университета математик Джон Флейвел Коулс (John Flavell Coales, 1907-1991), занимавшийся в годы войны радарной техникой и другими военными разработками (впоследствии Коулс был избран президентом Международной организации по автоматическому управлению - International Federation of Automatic Control, IFAC). В рамках проекта MRS5, начавшегося по контракту с Адмиралтейством в октябре 1946 г., предполагалось создать специализированную вычислительную машину (впоследствии известную под кодом 152), которая бы принимала и обрабатывала по определенным программам сигналы от моноимпульсного высокоточного радара, определявшего воздушную цель в диапазоне до восьми миль, и выдавала управляющие сигналы для наведения орудий на цель.
Первый вариант такой машины был изготовлен в сентябре 1950 г. 152-я представляла собой одноадресную синхронную ЭВМ, работавшую на тактовой частоте 0,333 MГц. Она была построена примерно на 600 миниатюрных пентодах и оперировала с числами с фиксированной запятой. ЭВМ содержала сумматор, соединенный с аккумулятором данных и поразрядно-последовательно выполнявший операции сложения, вычитания, сдвига; блок логических операций; устройство управления; дополнительный аккумулятор данных двойной длины; оперативную память на трубке Уильямса емкостью 64 двадцатиразрядных числа; быстродействующее множительное устройство и постоянное запоминающее устройство, хранившее программы работы машины. В качестве ПЗУ использовались стеклянные платы, на которых двоичные числа представлялись светлыми или затемненными точками; считывание информации с плат осуществлялось сканером. Время выполнения арифметических операций находилось в пределах 60 мкс, причем входные данные поступали одновременно на все блоки машины, которые параллельно выполняли вычисление отдельных параметров наведения, - их значения через мультиплексор подавались на систему управления орудием (по-видимому, это была первая попытка распараллелить ход выполнения вычислений в ЭВМ).
Рис. 1. Модульная конструкция ЭВМ
Структура и схемотехнические решения машины были разработаны руководителем отдела вычислительной техники, однофамильцем основателя компании Уильямом Сиднеем Эллиотом (William Sidney Elliott, 1917-2000)*1 и инженером-электронщиком Чарльзом Э. Оуэном (Charles E. Owen) из отдела цифровых электронных схем. Они предложили напаивать электронные компоненты, катушки и т. д. на печатные платы*2, которые в то время изготовлялись на стеклянных подложках, а сами платы и электронные лампы размещать во взаимозаменяемых ячейках (модулях), имевших одинаковые геометрические размеры, но различавшихся по функциональному назначению. Каждая ячейка помимо платы снабжалась ламповой панелью и ножевой частью стандартного разъема ("вилкой") и вставлялась в его ответную часть ("розетку"), установленную в корпусе машины. Такой метод конструирования, получивший название модульного (plug-in package technology), стал впоследствии типовым для вычислительных машин: он хотя и вносил определенную аппаратную избыточность, но упрощал обслуживание машин и обнаружение мест сбоев, обеспечивая хорошую ремонтопригодность (бракованная ячейка просто заменялась аналогичной запасной).
_____
*1 У. С. Эллиот был по специальности физиком, докторскую диссертацию он защитил в знаменитой Кавендишской лаборатории. Во время войны занимался проблемами радиолокации в Научно-исследовательском институте дальней связи (TRE) в Малверне, в котором работали многие будущие инженеры-компьютерщики.
*2 Изобретателем печатной платы, по-видимому, является австрийский инженер Пауль Эйслер (Paul Eisler, 1907—1995), который работал в Британии и примерно в 1936 г. начал применять платы в создаваемых им радиоприемниках. В большом объеме американцы приступили к использованию плат в военной радиоаппаратуре в 1943 г.
Модифицированный вариант 152-й, содержавший оперативную память большей емкости и дополнительный аккумулятор двойной длины, появился в марте 1951 г. и использовался вплоть до июня 1952-го. Но в конечном счете Адмиралтейство решило вернуться к аналоговым системам: цифровая машина оказалась недостаточно надежной ("плохо переносила качку"), а система охлаждения - неэффективной. Нельзя, однако, не отметить, что это была первая попытка использования ЭВМ для управления процессом в режиме реального времени.
Вторая специализированная машина предназначалась для обнаружения местонахождения подводных лодок. Существовавшая тогда система состояла из разбросанных по всему миру станций слежения, которые выполняли радиоперехват вражеских сообщений, определяли ориентировочные координаты лодки и передавали их по телетайпной оборонной сети (Defense Teleprinter Network, DTN) в центр, находившийся в городе Скарборо. Поскольку при этом неизбежны были ошибки и расхождения в данных, полученных от различных станций, Адмиралтейство в 1949 г. заключило контракт с Elliott Brothers на создание вычислительной машины, в которую бы поступали данные из DTN, а ЭВМ по довольно сложному алгоритму вычисляла истинное положение цели и направление ее движения.
Новая ЭВМ под кодовым номером 153 была изготовлена и отлажена в середине августа 1954 г., но окончательно автоматизированная система обработки телетайпной информации на ее основе была введена в действие только через полтора года и успешно эксплуатировалась до конца 1960-х.
Рис. 2. Никелевая линия задержки
Так же как и ее предшественница, новая машина производила некоторые операции параллельно и имела модульное исполнение. В качестве оперативной памяти (или - по англоязычной терминологии - главной памяти, main store) использовался магнитный диск, выполненный из дюралюминия и покрытый порошком оксида железа. Диск имел в диаметре 15,25 дюйма, устанавливался в вертикальном положении и вращался со скоростью 3000 об/мин. Сторона "А" диска имела 48 дорожек, хранивших рабочие, тестовые и другие программы (в том числе дорожку с метками, считывание которых создавало синхронизирующие импульсы для всей машины). В непосредственной близости к стороне "А" жестко крепились считывающие головки. На 40 дорожках стороны "В" диска, оснащенной головками записи/считывания, содержалась оперативная информация, полученная по каналам DTN, данные о станциях слежения и т. д. Общая емкость диска в современных единицах измерения составляла 45 Кб*1
_____
*1 Впервые магнитный диск был использован в австралийской ЭВМ CSIR Mark I, публично представленной в августе 1949 г.
Впервые в мире в качестве быстродействующих регистров были использованы никелевые линии задержки (НЛЗ), действие которых основывалась на эффекте продольной магнитострикции. Каждая НЛЗ содержала спиралеобразную плоскую катушку тонкой никелевой проволоки, приклеенную с помощью бумажных полосок на алюминиевую плату; возбудитель электромагнитного поля - небольшую катушку, диаметром около 3 мм и длиной 1 мм, соединенную с генератором импульсов и расположенную около одного конца проволоки; приемную катушку на противоположном конце проволоки, преобразующую продольные механические импульсы в электрические; усилитель этих импульсов. Основные достоинства такой памяти заключались в ее сравнительной дешевизне и отсутствии необходимости в высокоточной температурной стабилизации.
Наряду с Адмиралтейством интерес к разработкам Elliott Brothers проявил Королевский научно-исследовательский авиационный институт (Royal Aircraft Establishment, RAE) в Фарнборо. По его заданию в течение всего лишь одного 1952 г. небольшая команда сотрудников теоретической группы BRL - Норман Хилл (Norman Hill), Брюс Бэмбро (Bruce Bambrough), Эдуард Хэрсом (Edward Hersom) и примкнувший к ним Чарльз Э. Оуэн - разработала для авиаторов ЭВМ NICHOLAS - первую универсальную вычислительную машину, в которой в качестве оперативной памяти сравнительно большой емкости были использованы НЛЗ.
Эта синхронная одноадресная машина имела классическую фон-неймановскую архитектуру, работала на тактовой частоте 0,333 MГц и выполняла операции над числами с фиксированной запятой. Длина машинного слова (включая разряд знака) составляла 32 разряда (на самом деле длина машинного слова составляла 34 разряда, но два разряда были недоступны программисту и служили иным целям), в каждом слове размещались две 16-разрядные команды (под операционное поле отводилось 6 разрядов, под адресное - 10), всего же в распоряжении программиста было 47 (!) команд. Оперативная память состояла из восьми "длинных" НЛЗ общей емкостью 1024 слова (4 Кб в современных единицах измерения). В машине было пять быстродействующих регистров на "коротких" НЛЗ емкостью в одно слово, которые использовались в качестве аккумулятора, программного счетчика, командного регистра, счетчика адресов и регистра множителя. Ввод данных и команд осуществлялся с помощью пятиканальных бумажных перфолент, а результаты вычислений печатались телепринтером или выводились на бумажную перфоленту. Машина содержала 250 миниатюрных пентодов и 250 (по другим данным - 1500) германиевых диодов и выполняла операцию сложения в среднем за 12,5 мкс. NICHOLAS имела небольшую библиотеку подпрограмм, которую разработал бывший сотрудник Уилкса талантливый программист Джордж Э. Фелтон (George E. Felton), и успешно эксплуатировалась до 1958 г.
На мирные рельсы
Разовые заказы оборонных организаций, как бы щедро они ни оплачивались, вряд ли смогли бы в течение длительного времени "прокормить" сотрудников Elliott Brothers. И в том, что компания занялась разработкой и изготовлением ЭВМ общего назначения, большая заслуга Национальной научно-исследовательской корпорации (National Research Development Corporation, NRDC), сыгравшей значительную роль в становлении британской компьютерной индустрии.
В послевоенные годы многие государственные мужи Британии были озабочены тем, как поставить на мирные рельсы национальную промышленность и науку, ранее почти всецело работавшую "на войну"; как ликвидировать технологическое отставание страны от заокеанских союзников (теперь - торговых конкурентов); как использовать в гражданской сфере многочисленные военные патенты (разумеется, те, что не нарушали режима секретности) и т. д. В частности, для ускорения развития ВТ в стране правительство инициировало создание в июне 1949 г. NRDC, которую возглавил Джон Энтони Хардинг Гиффорд, третий граф Хэлсбери (John Anthony Hardinge Giffard, Third Earl of Halsbury, 1908-2000) - бывший директор по исследованиям компании Decca Record. Это была коммерческая организация: предполагалось, что для осуществления своей деятельности она получит под небольшие проценты возвратный заем от Министерства торговли.
Одна из задач, стоявших перед корпорацией, заключалась в сборе патентов, появившихся в процессе работ, оплаченных государством, и организации их лицензирования как в стране, так и за рубежом (либо финансирование из собственных фондов доработки мирных патентов, представляющих общественный интерес). Любопытно, что первый патент NRDC в 1949 г. лицензировала в США (это был патент на "трубку Уильямса"); лицензию купила корпорация IBM.
Рис. 3. ЭВМ NICHOLAS
Другая, более амбициозная задача состояла в координации действий различных компаний и/или оказании им финансовой поддержки с целью становления британской компьютерной индустрии. По мнению лорда Хэлсбери, для решения этой задачи необходимо было создать пул (например, в форме совместного предприятия) из компаний, выпускавших счетно-перфорационную технику, и компаний - производителей электронного оборудования (при координирующей роли NRDC). Однако здесь усилия корпорации окончились неудачей: то ли британские предприниматели не видели коммерческой выгоды в выпуске ВМ, то ли не доверяли друг другу (а заодно - государству и NRDC). Позднее лорд Хэлсбери в сердцах говорил о времени, "потраченном на попытки затолкать упрямых ослов на гору".
Оставался еще один вариант - субсидировать отдельные фирмы, которые бы согласились разрабатывать и выпускать ЭВМ. Я уже писал в одной из предыдущих статей о поддержке, которую NRDC оказала в 1951 г. при модификации и производстве ЭВМ Ferranti Mark 1*1 (см. PC Week/RE, N 33/2006, c. 45). Годом ранее эксперты корпорации заинтересовались конструктивно-технологическими методами, использовавшимися в Elliott Brothers при построении "152-й" (печатные платы, модульная конструкция). В сентябре 1950-го NRDC заключила с компанией контракт на проработку эскизного проекта небольшой ЭВМ общего назначения, в которой были бы использованы упомянутые методы. В январе 1952 г. корпорация одобрила представленный проект и несколько позднее заключила новый контракт: в соответствии с ним, Elliott Brothers бралась в кратчайший срок построить прототип машины, в случае его удачных испытаний откорректировать документацию и изготовить еще 10 экземпляров ЭВМ. Так началась работа над машинами серии "400".
_____
*1 Вскоре после завершения работы над Elliot 401 команда разработчиков компании оказалась обескровленной: основные ее "мозги" (У. С. Эллиот,Ч. Оуэн, Дж. Фелтон Х. Девонолд и некоторые другие) "утекли" в другую организацию. В Бохэмвуде отдел вычислительной техники возглавил А. Сент-Джонстон. Под его руководством малыми силами продолжилось создание промышленных образцов ЭВМ 400-й серии.
Первый такой образец предназначался для научных и инженерных расчетов (научная ЭВМ) и был впервые введен в действие весной 1955 г. Машина выпускалась в двух модификациях - Elliott 402E и Elliott 402F. Обе выполняли операции над числами с фиксированной запятой, но последняя была также оснащена аппаратурой для работы с числами с плавающей запятой. Elliott 402E/F в целом повторяла архитектуру и технические решения своего прототипа, хотя и имела некоторые различия. Так, число "коротких" НЛЗ было увеличено до 15 - они хранили по одному слову размером в 32 рабочих разряда (включая знак) и два резервных разряда; в состав оборудования вместо магнитного диска был включен магнитный барабан емкостью 2944 слова, вращавшийся с частотой 4600 об/мин, можно было вводить/выводить данные с помощью перфорационного оборудования. Операции сложения и вычитания выполнялись за 0,2 мс, умножения и деления - примерно за 3,3 мс. Всего в период с 1955 по 1963 гг. было изготовлено 10 (по другим данным - 11) машин, причем две из них были поставлены за рубеж: Elliott 402E - в апреле 1955-го парижскому Институту Блеза Паскаля (Institut Blaise Pascal), Elliott 402F - в феврале 1958-го компании Ernst Leitz GmbH (Wezlar, ФРГ). Машина-прототип (Elliott 401) создавалась под общим руководством У. С. Эллиота и Эндрью Сент-Джонстона (A. St. Johnston, ум. в 2005 г.). В команду разработчиков входили электронщики Лоренс Кларк (Laurence Clark) и Джон Хэлси (John Halsey), конструктор-механик Кристофер Филлипс (Christopher Phillips), программист Хьюго Девонолд (Hugh Devonald) и некоторые другие. Машина была изготовлена в марте 1953-го и в следующем месяце с большим успехом показана на выставке Физического общества в лондонском Имперском колледже. Для ее демонстрации сотрудник NRDC Кристофер Стречи (Christopher Strachey, 1916-1975) разработал программы генерации простых чисел и вычисления логарифмов.
В машине были использованы электронные схемы "153-й" (с той разницей, что пентоды были заменены двойными триодами) и ее множительное устройство, усовершенствованное Кларком. Изменилось назначение пяти "коротких" НЛЗ: две из них по-прежнему выполняли роль аккумулятора и регистра множимого, две другие являлись индексными регистрами, пятая НЛЗ могла последовательно соединяться с аккумулятором, образуя регистр двойной длины (что было необходимо, например, при выполнении операций сдвига). В качестве оперативной памяти использовался магнитный диск, причем дабы избежать проблем "оптимального кодирования" (см. статью "Ни на что не похожая", PC Week/RЕ, N 35/2006, c. 52), применялся двухадресный формат команд (во втором адресном поле находился адрес очередной команды). Дисплеями служили две электронно-лучевые трубки, позволявшие просмотреть содержание оперативной памяти, отдельных регистров, контролировать ход вычислений и т. д.
После окончания выставки Elliott 401 была передана Кембриджскому университету, где по решению NRDC эксперты корпорации во главе с К. Стрейчи приступили к тщательному анализу машины с целью подготовки рекомендаций по ее модификации для производства серийных образцов. Результаты этой работы не только оказали влияние на архитектуру и технические решения следующих машин серии "400", но и имели большое значение для развития архитектуры вычислительных машин (об этом читайте в следующей статье цикла).
(Окончание следует)