|
Николай Петрович Брусенцов Архитектор первого в мире троичного компьютера
Да, Николай Петрович Брусенцов впервые в мире создал троичный компьютер “Сетунь”, который, к тому же, серийно выпускался нашей промышленностью.
В 50-е годы XX века много писалось статей о тех или иных системах счисления и их использовании в вычислительной технике. Причем для их оценки рассматривались различные критериальные подходы. Один из критериев связан с экономичностью системы счисления. Под этим понимается тот запас чисел, которые можно записать в данной системе с помощью определенного количества знаков. Математически было доказано, что самой экономичной системой счисления является система с основанием е = 2,71… (основание натурального логарифма). Ближайшим к этому иррациональному числу является число 3, т. е. троичная система — самая экономичная. Но “главное преимущество, — как писал в те годы Брусенцов, — троичного представления чисел перед принятым в современных компьютерах двоичным состоит не в иллюзорной экономичности троичного кода, а в том, что с тремя цифрами возможен натуральный код чисел со знаком, а с двумя невозможен. Несовершенство двоичной арифметики и реализующих ее цифровых машин обусловлено именно тем, что двоичным кодом естественно представимы либо только неотрицательные числа, либо только неположительные, а для представления всей необходимой для арифметики совокупности — положительных, отрицательных и нуля — приходится пользоваться искусственными приемами типа прямого, обратного или дополнительного кода, системой с отрицательным основанием или цифрами + 1, —1 и другими ухищрениями”.
И все же, несмотря на положительные качества троичной системы счисления, не следует забывать, что ее применение в вычислительной технике вместо двоичной влечет некоторые конструктивные трудности: элементы, на которых строится машина, должны иметь не два устойчивых состояния, а три.
Необходимые для реализации троичной системы три устойчивых состояния Н. П. Брусенцов получил с помощью пары магнитных усилителей.
Николай Петрович Брусенцов родился на Украине в городе Днепродзержинске 7 февраля 1925 года. Его отец, Петр Николаевич, участвовал в строительстве, а затем работал на коксохимическом заводе, а мать, Мария Дмитриевна, заведовала детским садом при заводе.
Во время войны вместе с заводом семья была эвакуирована в Оренбургскую область.
В феврале 1943 года, когда Николаю исполнилось 18 лет, его призвали в армию и послали в Свердловск на курсы радистов, по окончании которых его отправили на фронт. Он воевал в Белоруссии, Прибалтике и Восточной Пруссии, день Победы встретил под Кенигсбергом.
После демобилизации Николай Брусенцов закончил десятый класс школы рабочей молодежи в г. Калинине (ныне Тверь) и в 1948 году поступил на радиотехнический факультет Московского энергетического института. Он учился в институте вместе с М. А. Карцевым, который впоследствии также стал одним из выдающихся конструкторов вычислительных систем.
Как исследователь, Брусенцов проявил себя уже при написании дипломного проекта — он рассчитал и составил таблицы дифракции на эллиптическом цилиндре, известные как таблицы Брусенцова.
По окончании института в 1953 году Брусенцова направили на работу в СКБ при Московском университете. В тот год бывший сокурсник М. А. Карцев познакомил его с машиной М-2, только что разработанной им в бруковской лаборатории, и это определило дальнейшую судьбу Николая Брусенцова.
В конце прошлого столетия газета “Computerworld Россия” опубликовала серию статей, посвященных развитию компьютерной отрасли в мире за последние 50 лет. Одна из статей называлась “Первая и единственная” и была посвящена машине “Сетунь”. Наш дальнейший рассказ о Николае Петровиче Брусенцове построен на материалах статьи и на воспоминаниях Бориса Николаевича Малиновского.
Возглавлявший в те годы кафедру вычислительной математики мехмата МГУ Сергей Львович Соболев намеревался заполучить М-2 в университет. Но по стечению обстоятельств машина в МГУ не попала. Соболев же загорелся идеей разработки малой ЭВМ специально для использования в учебных заведениях. Для этого при организующемся ВЦ МГУ была открыта специальная проблемная лаборатория, а при ней — семинар, где первые университетские программисты (Шура-Бура, Семендяев, Жоголев и, конечно, сам Соболев) искали пути к созданию малогабаритной, надежной, простой в использовании и недорогой машины. Брусенцов, который также по инициативе Соболева был переведен на мехмат, включился в работу семинара.
Один из основных обсуждавшихся вопросов — на какой элементной базе строить машину. Ламповые машины уже тогда казались громоздкими и энергоемкими. Транзисторы только начали появляться и были слишком ненадежны. Остановились на магнитных элементах. 23 апреля 1956 года состоялось заседание семинара, участники которого приняли окончательное решение о разработке малой цифровой машины на магнитных логических элементах (пока речь идет о машине с двоичным представлением данных), сформулированы технические требования и назначен руководитель разработки — Брусенцов. Он же и единственный исполнитель.
К этому времени уже существовала машина, полностью выполненная на магнитных элементах, — в ИТМиВТ, в лаборатории Гутенмахера. За несколько лет до того именно Гутенмахер должен был стать основным разработчиком ЭВМ в СКБ-245, причем планировалось делать машину на разработанных им феррит-диодных элементах. Однако с приходом в СКБ Рамее-ва работа была переориентирована на электронные лампы, в результате чего появилась ЭВМ “Стрела”. Гутенмахер же закончил свою машину в ИТМиВТ, где она и работала. Машина была низкой производительности, с большим количеством недостатков. Поскольку новую универсальную ЭВМ решено было строить на магнитных элементах, Брусенцова по протекции Соболева допустили в окутанную атмосферой секретности лабораторию Гутенмахера на стажировку.
Размышления о том, как устранить многочисленные проблемы этой машины, неожиданно привели его к мысли об использовании троичной системы счисления. Вот что он пишет: “Оказалось, что эти элементы не только весьма удобны для построения троичных цифровых устройств. Троичные устройства получаются существенно более быстрыми и структурно более простыми, чем двоичные устройства, реализованные на тех же элементах”.
Соболев поддержал замысел Брусенцова — создать троичную ЭВМ. Штат лаборатории увеличился до 20 человек, которые изготовили опытный образец машины (он эксплуатировался в МГУ 15 лет). Наладка была выполнена очень быстро — за десять дней. Назвать новую машину решили по имени речки, протекавшей недалеко от университета — “Сетунь”. Наверно, такая необычная машина могла родиться только в университетских стенах. Своей простотой и практичностью “Сетунь” обязана представлению чисел и команд в симметричном коде — (— 1, 0, 1). По существу, у университетских разработчиков получился первый RISC-компьютер: длина машинного слова — 9 тритов, всего 24 команды, при этом ей удавалось с большой эффективностью реализовать разнообразные алгоритмы. На “Сетуни” решались задачи математического моделирования в физике и химии, оптимизации управления производством, краткосрочных прогнозов погоды, конструкторских расчетов, компьютерного обучения, обработки экспериментальных данных и т. д.
Еще одной особенностью машины была страничная двухуровневая организация памяти. Магнитный барабан, позаимствованный у ЭВМ “Урал”, был связан с быстрой оперативной памятью постраничным обменом. Таким образом, получался своего рода кэш, который способствовал повышению производительности машины.
Серийное производство “Сетуни” было поручено Казанскому заводу математических машин. Завод производил 15—20 машин в год, всего было выпущено 50 машин, 30 из которых работали в вузах страны.
В 1961 — 1968 годах Брусенцов вместе с Жоголевым разработал новую машину, впоследствии названную “Сетунь-70”. Действующий образец прошел испытания в апреле 1970 года. Но, к сожалению, после завершения работ по “Сетуни-70” лаборатория Брусенцова была вынуждена по указанию нового начальства прекратить разработки машин. “Сетунь-70” стали использовать в системе компьютерного обучения “Наставник”.
“Мне, конечно, было горько от того, что нас не поняли, но затем я увидел, что это нормальное положение в человеческом обществе, и что я еще легко отделался, — с горьким юмором писал Брусенцов. — А вот Уильям Оккам, проповедовавший трехзначную логику в XIII веке, с большим трудом избежал костра и всю жизнь прожил изгоем. Другой пример — Льюис Кэрролл, которому только под личиной детской сказки удалось внедрить его замечательные находки в логике, а ведь эта наука до сих пор их замалчивает и делает вид, что никакого Кэрролла не было и нет”. И далее он продолжает: “Все же главным применением трехзначной логики стали теперь силлогистика и модальная логика Аристотеля. Арифметические и машинные достоинства троичности в достаточной степени были освоены нами уже в “Сетуни-70” — операции со словами варьируемой длины, оптимальный интервал значений мантиссы нормализованного числа, единый натуральный код чисел, адресов и операций, идеально естественное округление при простом усечении длины числа, алгебраические четырехвходные сумматоры и реверсивные счетчики, экономия соединительных проводов и контактов за счет передачи по каждому проводу двух несовместимых двузначных сигналов (т. е. одного трехзначного).
Короче говоря, все, о чем мечтает Д. Кнут в “Искусстве программирования для ЭВМ”, мы уже осуществили. Адекватное отображение логики Аристотеля в трехзначной системе откроет выход компьютерам на те проблемы, которые он в свое время исследовал, которые сегодня, по-моему, актуальнее вычислительной математики, электронной почты и тем более одуряющих компьютерных игр”.
Отдельные примеры алгебраизации аристотелевской логики Н. П. Брусенцов изложил в статьях “Диаграммы Льюиса Кэрролла и аристотелева силлогистика” и “Полная система категорических силлогизмов Аристотеля”, опубликованных в конце 70-х — начале 80-х годов XX века. Всего им опубликовано более 100 научных работ, в том числе монографии “Малая цифровая вычислительная машина “Сетунь”, “Миникомпьютеры”, “Микрокомпьютеры”, а также получено 11 авторских свидетельств на изобретения.
Американцы до сих пор интересуются троичным компьютером “Сетунь” и его создателем Николаем Петровичем Брусенцовым.
|
|