Борис Малиновский - Информационные технологии в СССР. Создатели советской вычислительной техники
Вдохновленные успехом, сотрудники группы предложили создать на базе БЭСМ-3М машину, повторяющую структурно-логическую схему удачной М-20, но с использованием новых элементов. Их поддержал руководитель СКБ ИТМ и ВТ О. П. Васильев, а Лебедев не возражал. Полученная в результате машина БЭСМ-4 имела несколько расширенную систему команд в сравнении с М-20, повторяла ее по быстродействию (20 тыс. операций/с), но была намного надежней. По тогдашнему обычаю каждая смена обслуживающего персонала ЭВМ состояла пополам из инженеров и техников, устранявших возникающие неполадки, и программистов, занимавшихся непосредственно эксплуатацией.
Когда через год после установки БЭСМ-4 в Вычислительном центре АН СССР поинтересовались, как она работает, ответ был такой: «Ваша машина разлагает молодых инженеров. Они не выполняют профилактических работ, так как машина не имеет сбоев — она слишком надежна». О том, насколько полупроводники экономичнее ламп, можно составить представление, сравнивая паспортную потребляемую мощность: если ламповые БЭСМ и БЭСМ-2 потребляли порядка 30–35 кВт, а М-20 и вовсе около 50, то БЭСМ-4 всего-навсего 8 кВт, причем значительная часть этой энергии уходила на систему охлаждения — температура блоков на полупроводниках того времени не должна была превышать 35 градусов.
В 1961 году БЭСМ-4 была передана в серийное производство на тот же ульяновский завод им. Володарского, который до этого выпускал БЭСМ-2. До 1966 года, когда ей на смену пришла БЭСМ-6, было произведено 30 машин. Для БЭСМ-4 на факультете ВМиК МГУ была разработана операционная система «БЭСМ-МГУ», впервые в серии БЭСМ использовавшая систему прерываний.
Однако простой перевод ЭВМ с одной элементной базы на другую, пусть и более совершенную, не приносил Сергею Алексеевичу удовлетворения. Не случайно сверхплановая полупроводниковая БЭСМ-4, повторявшая структуру и команды М-20, не была его инициативой. Он не мог не поддержать молодежь в стремлении создать первую полупроводниковую ЭВМ, но сам в это время вместе со своими помощниками уже моделировал будущую БЭСМ-6.
Вершина
Проектирование новой машины БЭСМ-6 началось сразу после окончания работ по М-20, и продолжалось почти десять лет. Основная цель, которую преследовали авторы проекта машины БЭСМ-6, была такова: создать быстродействующую серийную машину, сравнительно дешевую, но удовлетворяющую наиболее важным современным требованиям. С. А. Лебедеву в этой работе активно помогали его молодые заместители — Владимир Андреевич Мельников, отвечавший за аппаратную часть новой машины, и Лев Николаевич Королев, отвечавший за программное обеспечение.
О БЭСМ-6 написано очень много, потому отметим здесь лишь основные моменты. Машина впервые в отечественной практике разрабатывалась с применением методов автоматизированного проектирования и моделирования ее работы на другой ЭВМ. Монтажную и отладочную документацию на завод выдавали в виде таблиц, которые делались в институте на БЭСМ-2. Сотрудник ИТМ и ВТ Ю. И. Митропольский так описывает историю с принятием системы документации для БЭСМ-6:
«Для более компактного описания логических схем Владимир Иванович Смирнов предложил их формульное описание, однако оно не обеспечивало полного описания всех конструктивных элементов схем. Мною была предложена система таблиц для схем отдельных блоков, так называемых карточек, на которых показывалась схема одного блока или таблица для усилительного блока, а также указывались все связи данного блока с другими. Благодаря этой системе вся схемная документация приобретала регулярный характер, ускорялся поиск нужной схемы и цепи, а главное, сокращался объем графической работы, при этом основную работу по заполнению карточек могли выполнять техники.
Мнения по поводу этой системы в лаборатории разделились. Ее противники утверждали, что без привычных схем будет трудно разобраться другим людям, например, наладчикам на заводе. Окончательное решение должен был принять Сергей Алексеевич. На совещании он внимательно выслушал все мнения и предложил воспользоваться принципом „бани“, который содержался в ответе мудреца на вопрос строителей, строгать ли доски для пола в бане. Мудрец ответил, что строгать надо с одной стороны, а укладывать строганной стороной вниз. Сергей Алексеевич решил поддержать новые идеи, но не хотел вносить раскол в коллективе. Он предложил опробовать новую систему и найти способ согласования с существующими конструкторскими нормами».
Нестандартный подход к формальному описанию БЭСМ-6 даже послужил источником неприятностей к моменту ее сдачи: комиссия затребовала обычные, сделанные с помощью кульмана чертежи всех схем. Но сложность этих схем сделала такую задачу практически неразрешимой, и комиссии пришлось отступить.
БЭСМ-6 имела страничную организацию памяти с механизмами виртуализации (с аппаратной поддержкой преобразования виртуального адреса в физический), сверхбыструю кэшпамять с автоматическим управлением загрузкой команд, конвейерную («водопроводную», по терминологии Лебедева) организацию обработки потока команд (до восьми команд на разных стадиях), развитую систему прерываний и возможность мультипрограммного режима работы для одновременного решения нескольких задач с заданными приоритетами.
БЭСМ-6 в Новосибирском институте теоретической и прикладной механики, 1970-е годы
Объем ОЗУ БЭСМ-6 мог составлять от 32 до 128 тыс. машинных слов. Память собиралась из блоков емкостью по 4 Кслов, состоявших из матриц на ферритовых сердечниках диаметром 2 мм, каждый из которых пронизывался четырьмя тонкими проволочками. В то время прошивка матриц производилась вручную, и только через много лет эта нелегкая работа была автоматизирована.
ОЗУ дополнялось промежуточной памятью на магнитном барабане емкостью 512 тыс. слов. Кроме того, могли быть подключены 32 внешних накопителя на магнитной ленте, каждый емкостью до 1 млн слов. К БЭСМ-6 возможно было подключение дисков и графопостроителей, однако до начала семидесятых они отсутствовали: в комплектацию серийных БЭСМ-6 дисковые накопители были включены лишь в 1972 году. Для ввода-вывода в комплектацию машины входили два алфавитно-цифровых печатающих устройства (400 строк в минуту), два устройства вывода на перфокарты (ПИ-80), четыре устройства вывода на перфоленту, четыре устройства ввода с перфоленты, два устройства ввода с перфокарт (ВУ-700), 24 телетайпа.
В электронных схемах БЭСМ-6 использовано 60 тыс. германиевых транзисторов и 180 тыс. полупроводников-диодов, общая тактовая частота — 10 МГц, быстродействие — 1 млн операций с плавающей запятой в секунду. Для сравнения — в мультипроцессорной CDC 6600 (1964 год) примерно в 6 тыс. типовых модулей было упаковано около 400 тыс. транзисторов, причем более прогрессивных, чем в БЭСМ-6 — кремниевых, с временем переключения около 5 нс (хотя основная тактовая частота в этой машине была такой же, как в БЭСМ — 10 МГц) [1.17]. И все-таки CDC 6600 не превышал БЭСМ-6 по производительности. Вот что значит продуманная и тщательно оптимизированная архитектура!