Доклад: БЭСМ-6
Наталия Дубова
В 1966 году была завершена разработка БЭСМ-6
Две шестерки этого года ассоциируются с легендарной шестеркой советского компьютеростроения — БЭСМ-6. К концу 1966 года разработка машины в стенах ИТМиВТ была завершена. В середине следующего новое творение Лебедева, которое многие называют вершиной его научной карьеры, успешно пройдет испытания и получит путевку в жизнь. Эта жизнь будет долгой — машину выпускали почти 20 лет, с 1968-го по 1987-й. Эта жизнь будет трудовой — крупные научные и военно-научные центры имели в своих ВЦ БЭСМ-6, которая своей производительностью в 1 млн. операций в секунду, для середины 60-х рекордной, да и для последующих лет немалой, покрывала их потребности в быстром счете. В 1975 году совместным полетом «Союз — Аполлон» управляли с помощью вычислительного комплекса, в состав которого входила БЭСМ-6. На БЭСМ-6 появились первые полноценные операционные системы, мощные трансляторы, ценнейшая библиотека численных методов. На БЭСМ-6 росли поколения советских инженеров и программистов. Перечень заслуг этой машины можно продолжать и продолжать. Наконец, назовите мне еще какую-нибудь ЭВМ, по крайней мере советскую, про которую рассказывали анекдоты. Неоспоримое свидетельство популярности машины.
БЭСМ-6 выпускали почти 20 лет, с 1968-го по 1987-й. Лебедев с самого начала работ над созданием цифровой вычислительной техники делал ставку на сверхбыстродействие и последовательно проводил в жизнь основной принцип его достижения — распараллеливание вычислительных процессов. В самых первых его разработках, МЭСМ и БЭСМ, использовались арифметические устройства параллельного действия. Создавая БЭСМ-6, он пришел к реализации принципа конвейера — совмещения нескольких команд, находящихся на разных стадиях выполнения. Сам Лебедев назвал этот принцип водопроводным. Для того чтобы «водопровод» заработал, в структуру машины внесли несколько важных новшеств — разделили оперативную память на восемь блоков с возможностью одновременной выборки информации из них, реализовали буфер заказов к системе памяти, так что устройство управления могло просматривать команды «вперед», организовали асинхронную и параллельную работу модулей памяти, управления и арифметики, сделали системный кэш — небольшую сверхоперативную память на регистрах для хранения наиболее часто используемых операндов и командных циклов. В итоге получалось, что при достаточном большом времени от начала выполнения команды до ее полного завершения общий темп обработки информации совмещенными командами оказывался очень высоким. Отсюда аналогия с водопроводом — одна капля воды медленно проходит определенный его участок, а скорость потока огромна.
В БЭСМ-6 появилась виртуальная память — механизм преобразования математического адреса в физический с помощью специальных таблиц (термин «виртуальная», правда, еще не использовался). Впервые идея виртуальной памяти была реализована (совсем не так, как в БЭСМ-6) в машине «Атлас», разработанной в Манчестерском университете (Англия) в 1961 году. Такое преобразование плюс развитая система прерываний и механизмы защиты памяти позволили реализовать в разрабатываемой почти одновременно операционной системе для БЭСМ-6 мультипрограммный режим и режим разделения времени. Отвечавший за создание ОС Лев Николаевич Королев был заместителем Лебедева в работе над БЭСМ-6.
Один из основных разработчиков БЭСМ-6, Владимир Иванович Смирнов, вспоминает, что в начале работ над машиной он вместе со своими коллегами внимательно следил за всей поступающей литературой, и больше всего ценной информации почерпнул из иностранных источников, а не отечественных, многие из которых несли на себе гриф «секретно». В те времена наши поиски в области структуры ЭВМ шли вровень с западными, и наши конструктора успешно развивали собственные оригинальные идеи. К идее конвейера подошли совершенно самостоятельно. На этом этапе у советских разработчиков не было возможностей, а главное, необходимости в копировании. Достаточно было понять общие тенденции и реализовать их самостоятельно. Было огромное желание самим сделать нечто совершенно новое и передовое.
В БЭСМ-6 было много принципиально новых идей. При этом получилась изящная и простая по внутренней организации, а потому надежная машина — в этом проявилась инженерная гениальность Лебедева, его умение найти оптимальное для массового производства решение, не перегружая машину излишней аппаратурой.
БЭСМ-6 была первой советской суперЭВМ второго поколения, на полупроводниковых транзисторах. Одновременно с разработкой новой структуры Лебедев искал и новые подходы к элементной базе. Несколько человек его команды, в том числе заместитель по разработке аппаратной части машины Владимир Мельников, Андрей Соколов, Марк Тяпкин (все они работали с Лебедевым начиная с первой БЭСМ), занимались одновременно проработкой всех вопросов — и структурных и элементных. Надо сказать, что поиск новых схемотехнических решений был во многом не от хорошей жизни — у советских разработчиков всегда были проблемы с элементами. Покупать на Западе их было нельзя, а для собственного качественного производства не хватало технологического уровня. Поэтому и приходилось проявлять изобретательность. В результате создателям БЭСМ-6 удалось получить оригинальные схемы на основе новых советских высокочастотных транзисторов.
В процессе работы над машиной формировались основные принципы САПР ЭВМ. Впервые схемы машины записывались формулами булевой алгебры, и из таких формул состояла ее документация для наладки и эксплуатации. Документация для монтажа поставлялась на завод в виде таблиц, которые делались в институте на БЭСМ-2. Машина, кстати, разрабатывалась в тесном сотрудничестве с инженерами будущего завода-изготовителя, Московского завода счетно-аналитических машин (САМ).
Нестандартный подход к формальному описанию БЭСМ-6 послужил источником неприятностей к моменту ее сдачи. Комиссия затребовала обычные, сделанные с помощью кульмана чертежи всех схем. Но сложность этих схем сделала эту задачу практически неразрешимой. Сдача машины в эксплуатацию оказалась под угрозой. К счастью, принимать БЭСМ-6 должна была не ВПК, а гражданская госкомиссия, которую возглавлял президент Академии наук Келдыш. А он был умный человек и не мог не видеть, как нужна такая машина и ученым, и военным. Поэтому БЭСМ-6 прошла испытания, была принята и получила от комиссии высокую оценку. А в 1969-м основной костяк разработчиков БЭСМ-6 получил Государственную премию.
О матобеспечении БЭСМ-6 особый разговор. Вокруг машины начало складываться сообщество пользователей и программистов, которые, благодаря полной открытости всех разработок, вместе создавали программную «начинку» для самой мощной советской ЭВМ. Но поскольку операционные системы для БЭСМ-6 появляются в 1967 году, мы отложим этот разговор до следующего выпуска.