Копия для печати
"Сетунь"
История компьютера на
основе троичной логики
Популярная тема
околокомпьютерных (и не только)
анекдотов - некая троичная женская
логика, построенная по принципу
"да - нет - может быть". И мало
кто из рассказчиков таких
анекдотов знает, что троичная
логика реально существует и
применяется в прикладной
математике. Более того, существовал
и весьма эффективный по тем
временам компьютер, основанный на
троичной логике. Создан он был в
Советском Союзе в те годы, когда
компьютеры именовались
электронно-вычислительными
машинами, а информатика -
кибернетикой.
В конце 1955 года в МГУ
планировалось установить большую
ЭВМ "Стрела". Специально для
неё в университете был создан
вычислительный центр с собственным
отделом электроники, который
возглавил Николай Брусенцов. Тогда
же было решено создать "с нуля"
и собственную ЭВМ - более
"скромную", дешёвую, надёжную и
лёгкую в производстве и в
использовании. Такая ЭВМ была
востребована в учебных заведениях,
НИИ, лабораториях и т.д.
В то время транзисторы были ещё
недоступны. Но разработчики
понимали, что время ламповых ЭВМ
проходит. Машины на ламповой базе
значительную часть времени
простаивали - инженеры заменяли
лампы, имевшие тогда очень короткий
срок службы. Достаточно сказать,
что типичная ламповая ЭВМ тех лет
работала в лучшем случае несколько
часов подряд - а потом
останавливалась на очередной
ремонт и переналадку.
Тогда Николаю Брусенцову пришла
мысль сделать ЭВМ на феррит-диодных
элементах. В то время в похожих
машинах под каждый бит
использовалась пара сердечников -
рабочий и компенсационный.
Брусенцов догадался задействовать
компенсационный сердечник в
вычислениях. Таким образом каждая
ячейка становилась трёхзначной. В
итоге получилось так, что в
"Сетуни" количество
сердечников было в семь раз
меньшим, чем в компьютере ЛЭМ-1, но
при этом "Сетунь" имела почти
вдвое большую разрядность.
Тогда же создавалась архитектура
машины (хотя самого понятия
"архитектура ЭВМ" ещё не
существовало). В конечном итоге всё
удалось свести к 24 машинным
командам, и в дальнейшем
архитектура "Сетуни" не
подверглась никаким изменениям.
Рабочий прототип "Сетуни"
появился в 1958 году. В апреле 1960 года
прошли межведомственные испытания,
на которых "Сетунь" показала 95%
полезного времени (то есть занятого
решением задач, а не
тестово-наладочными работами). Для
сравнения: в то время если машина
показывала 60%, это считалось очень
хорошим результатом.
После испытаний появилось
постановление Совмина СССР об
организации серийного
производства, для которого был
выбран Казанский завод. ЭВМ
"Сетунь" выпускали по 10-12 штук
в год, но эта цифра даже частично не
покрывала поступающие на машину
заявки.
При всех своих преимуществах
"Сетунь" была очень простой
машиной. Правда, её программисты
фактически должны были работать в
пространстве трёхзначной логики.
Позднее сам Брусенцов в одном из
интервью рассказывал: "Дело в
том, что "Сетунь" была
естественной машиной. Там нет этого
идиотского дополнительного кода
для отрицательных чисел. И
положительные, и отрицательные
числа задаются естественно. Потом
всего 24 команды. Освоить такую
машину и программировать в
машинном коде было ничуть не
сложнее, чем, скажем, осваивать
"Алгол" или "Фортран".
Строго говоря, в самой "Сетуни"
логическая часть была не особенно
развита. Правда, та трёхзначная
логика, которая была в
"Сетуни", с избытком покрывала
то, что было в двоичных машинах. Но
аристотелевских суждений там,
конечно, не было. Мы в то время
собственно логикой не занимались. Я
уже после создания "Сетуни"
стал понимать, что логику как
таковую не знаю, стал читать книги.
Оказалось, что у меня были
предшественники. И у них, кстати,
путь тоже не был устлан розами".
В 1965 году "Сетунь" была снята
с производства, а сам проект -
практически свёрнут. Однако о
машине вспомнили к 100-летию со дня
рождения Ленина - тогда было
принято делать "родине и
партии" всякого рода
"производственные подарки".
Коллектив ВЦ МГУ взял
обязательство к этой дате
разработать "Сетунь-70". Это,
впрочем, оказалась уже фактически
другая машина. Новая ЭВМ
основывалась на стековом принципе,
по аналогии с уже
разрабатывавшимся тогда
"Эльбрусом". Однако
"Эльбрус" имел лишь один стек -
стек операндов. Его более поздний
конкурент - американский компьютер
PDP-11 - также имел один стек -
процедурный. "Сетунь-70"
заметно опередила своё время, так
как изначально имела два стека -
команд и операндов.
В техническом отношении
"Сетунь-70" была намного
совершеннее "Сетуни". Так,
реализация однопроводной передачи
трёхзначных сигналов позволила
почти вдвое уменьшить число
электрических соединений;
логические элементы стали проще,
миниатюрней и при большей
релейности потребляли в 2,5 раза
меньше энергии. Также были
значительно улучшены параметры
троичной памяти и магнитной записи
троичного кода. Дальнейшее
развитие получила пороговая
техника осуществления операций
трёхзначной логики. Разработанная
применительно к электромагнитным
средствам, эта техника была
переносима и на полупроводниковые
элементы, например, типа И2Л.
Примерно тогда же появились
разработки в области структурного
программирования и обнаружилось,
что "Сетунь-70" лучше всех
других ЭВМ подходит для реализации
этой идеи. По словам разработчиков,
"программирование на
"Сетунь-70" было даже не
структурированное, а
структурирующее. Программы
получались легко читаемыми и
осваиваемыми, легко
модифицированными. Эти программы
не подвергались отладке, а делалась
так называемая контрольная сборка.
После того, как программу сверху
вниз написали, её проходили снизу
вверх. После этого программа
оказывалась, как правило,
безошибочной".
Интересный момент: принято
считать, что в некоторой степени
американским аналогом
"Сетуни" был компьютер PDP-8,
известный многим по биографии
Билла Гейтса. Но всё же сравнивать
"Сетунь" и PDP-8 достаточно
сложно. Процессор PDP-8 был
восьмибитный, а в "Сетуни"
процессор (в пересчёте на биты) был
30-битным. PDP-8 стоила $20 тыс. без
периферии, и эта цена считалась
рекордно низкой. "Сетунь"
стоила 27,5 тысяч советских рублей со
всей периферией.
(Окончание следует)
Виктор ДЕМИДОВ
Справка "КВ"
"Сетунь" - малая ЭВМ на основе
троичной логики, разработанная в
вычислительном центре Московского
государственного университета в
1959. Руководитель проекта - Николай
Петрович Брусенцов, основные
разработчики: Е.А. Жоголев, В.В.
Веригин, С.П. Маслов, А.М. Тишулина.
ЭВМ названа по имени протекавшей
рядом с МГУ речки.
Окончание разработки: 1959 год,
начало выпуска: 1961 год, прекращение
выпуска: 1965 год. Всего выпущено 50
машин (30 из них использовались в
университетах СССР). Заводская
цена: 27,5 тыс. рублей.
Завод-изготовитель: Казанский
завод математических машин
Минрадиопрома СССР. Изготовитель
логических элементов -
Астраханский завод электронной
аппаратуры и электронных приборов.
Изготовитель магнитных барабанов -
Пензенский завод ЭВМ. Изготовитель
печатающего устройства -
Московский завод пишущих машин.
Характеристики:
- 27 команд (3 зарезервированы)
- Оперативная память - 162
9-тритных ячейки
- Основная память - магнитный
барабан ёмкостью 36 либо 72
страницы (страница - 54 ячейки).
- Средняя оперативная скорость
машины - 2000-4500 операций в
секунду
- Тактовая частота - 200 кГц
- Потребляемая мощность - 2,5 кВА
- Площадь для размещения - 25-30
кв.м.
- Рабочий диапазон температур -
15-30°С
Брусенцов Николай
Петрович родился в 1925 году в
Украине, в городе Днепродзержинск.
В феврале 1943 года призван в армию,
направлен на курсы радистов. Через
полгода направлен радистом в
артиллерийский полк, в отделение
разведки. Награждён медалью "За
Отвагу" и Орденом Красной звезды.
После войны вернулся в
Днепродзержинск, работал на заводе.
В 1948 году поступил на
радиотехнический факультет
Московского энергетического
института.
На последнем курсе МЭИ составил
таблицы дифракции на эллиптическом
цилиндре, сегодня известные как
таблицы Брусенцова. После
окончания института в 1953 году
направлен на работу в СКВ МГУ. В 1956-58
годах с группой единомышленников
создал в МГУ единственную в мире
троичную ЭВМ "Сетунь". В 1970-м
создал новую машину "Сетунь-70",
имевшую ряд конструктивных
новаций. В настоящее время -
заведующий лаборатории ЭВМ на
Факультете вычислительной
математики и кибернетики МГУ.
Обсуждение статьи (записей: 22)