воскресенье, 13 июля 2008 г.

ЭВМ "Сетунь"

  Всем известно, что в компьютерах для вычислений и представления информации используется двоичная система, в соответствии с которой единица данных, байт, представляет собой последовательность нулей и единиц. Но многие ли знают о том, что в Советском Союзе была создана и несколько лет успешно работала троичная машина? Речь идет об ЭВМ "Сетунь", разработка которой завершилась в 1959 году в стенах МГУ. Ее главный конструктор - Николай Петрович Брусенцов.
  Брусенцов начал работу в Московском университете в 1953 году, сразу после окончания МЭИ. Вначале занимался разовыми работами в только что созданном СКБ при МГУ. Благодаря знакомству с сотрудником Брука, Николай Петрович смог увидеть работающую машину М-2, недавно законченную в этой лаборатории. Это предопределило его дальнейшую научную судьбу.
  Возглавлявший в те годы кафедру вычислительной математики мехмата МГУ Сергей Львович Соболев намеревался заполучить М-2 в университет. Но по стечению обстоятельств машина в МГУ не попала. Соболев же загорелся идеей разработки малой ЭВМ специально для использования в учебных заведениях. Для этого при только еще организующемся ВЦ МГУ открывается специальная проблемная лаборатория, а при ней - семинар, где первые университетские программисты - Шура-Бура, Семендяев, Жоголев и, конечно, сам Соболев - искали пути к созданию малогабаритной, надежной, простой в использовании и недорогой машины. Брусенцов, который также по инициативе Соболева был переведен на мехмат, включился в работу семинара.
  Один из основных обсуждавшихся вопросов - на какой элементой базе строить машину. Ламповые машины уже тогда казались чересчур громоздкими и энергоемкими, их эксплуатация и обслуживание требовали значительных усилий. Полупроводниковые транзисторы только начинали появляться и были слишком ненадежны. Остановились на магнитных элементах. 23 апреля 1956 года состоялось заседание семинара, участники которого приняли окончательное решение о разработке малой ЭВМ на магнитных логических элементах (пока речь идет о машине с двоичным представлением данных), сформулированы технические требования и назначен руководитель разработки - Брусенцов. Он же и единственный исполнитель.
  К этому времени уже существовала машина, полностью выполненная на магнитных элементах, - в ИТМиВТ, в лаборатории Гутенмахера. За несколько лет до того именно Гутенмахер должен был стать основным разработчиком ЭВМ в СКБ-245, причем планировалось делать машину на разработанных им феррит-диодных элементах. Однако с приходом в СКБ Рамеева работа была переориентирована на электронные лампы, и в результате появилась ЭВМ "Стрела", о которой мы уже рассказывали. Гутенмахер же закончил свою машину в ИТМиВТ, где она и работала. Машина была низкой производительности, с большим количеством недостатков, особенно в отношении электротехники. Поскольку новую университетскую ЭВМ решено было строить на магнитных элементах, Брусенцова по протекции Соболева допустили в окутанную атмосферой большой секретности лабораторию Гутенмахера на стажировку.
  Размышления о том, как устранить многочисленные проблемы этой машины, неожиданно привели его к мысли об использовании троичной системы счисления. Вот что пишет он сам: "Оказалось, что эти элементы не только весьма удобны для построения троичных цифровых устройств. Троичные устройства получаются существенно более экономными в отношении количества оборудования и потребляемой мощности, более быстрыми и структурно более простыми, чем двоичные устройства, реализованные на тех же элементах".
  Соболев поддержал замысел Брусенцова - создать троичную ЭВМ. Штат лаборатории увеличился до 20 человек, которые собственными руками изготовили опытный образец машины (он эксплуатировался в МГУ 15 лет). Наладка была выполнена очень быстро - за десять дней. Назвать новую ЭВМ решили по имени речки, протекавшей недалеко от университета - "Сетунь".
  Наверно, такая необычная машина могла родиться только в университетских стенах. В троичной цифровой технике используются трехзначные сигналы и трехстабильные элементы памяти (трит). Аналог байта - трайт (шестерка тритов). Очевидно, что по сравнению с двоичной машиной в троичной элементы усложняются, но зато удается упростить создаваемые из них структуры и увеличить скорость обработки данных. Своей простотой и практичностью "Сетунь" обязана представлению чисел и команд в симметричном коде - (-1,0,1). По существу, у университетских разработчиков получился первый RISC-компьютер: длина машинного слова - 9 тритов, всего 24 команды, при этом удавалось с большой эффективностью реализовать разнообразные алгоритмы. На "Сетуни" решались задачи: математического моделирования в физике и химии, оптимизации управления производством, краткосрочных прогнозов погоды, конструкторских расчетов, компьютерного обучения, автоматизированной обработки экспериментальных данных и т. д.
  Еще одной особенностью машины была страничная двухуровневая организация памяти. Магнитный барабан, позаимствованный у ЭВМ "Урал", был связан с быстрой оперативной памятью постраничным обменом. Таким образом получался своего рода кэш, который способствовал повышению производительности машины.
  Брусенцов стремился опровергнуть миф о трудной постижимости, даже некой мистичности трехзначной логики, на которой основывается работа "Сетуни". Миф этот берет начало в средних веках, когда проповедовавшего идеи трехзначной логики Уильяма Оккама чуть не сожгли на костре. Себе в союзники Брусенцов берет Аристотеля и Льюиса Кэрролла, также развивавших принципы трехзначной логики. На самом деле в жизни очень многие вопросы предполагают тройственный ответ: да - нет - может быть, поэтому трехзначная логика вполне адекватна действительности, и, может быть, как форма мышления даже более удобна и привычна для людей, чем логика двузначная.
  Однако, несмотря на очевидные плюсы нетрадиционной машины, зеленой улицы ей не дали. "Сетунь" выпускалась серийно в Казани, но небольшими партиями, по 15-20 машин в год без большого энтузиазма со стороны производственников. За пять лет было выпущено 50 машин, 30 из них стояли в высших учебных заведениях. "Сетунь" действительно оказалась надежной - практически без всякого сервиса она работала и в Калининграде, и в Магадане.
  Брусенцов развил свои идеи в новой машине "Сетунь-70", которая была закончена в 1968 году. Убежденный в том, что "истинный RISC может быть только троичным" (хотя в те годы эта терминология еще не употреблялась), он создал машину, в которой объединил принципы эффективной архитектуры на минимальном наборе команд, трехзначную логику, троичный код и идеи структурного программирования. Но после завершения работ над "Сетунью-70" лаборатория Брусенцова была вынуждена прекратить разработки ЭВМ, фактически изгнана из МГУ. Тем не менее на новой машине удалось сделать систему "Наставник", которая использовалась в процессе обучения студентов с помощью компьютера.

Наталия Дубова

Комментариев нет: