Компьютерра PDA N151 (24.12.2011-30.12.2011) - Компьютерра
Шрифт:
Интервал:
Закладка:
Сумматор
Ячейки компоновались в функциональные блоки: сумматоры, дешифраторы троичного кода, регистры сдвига. С помощью тридцатиконтактного разъёма каждый блок стыковался с другими блоками "Сетуни", формируя базовые компоненты ЭВМ: арифметическое устройство и устройство управления.
Память в "Сетуни", подобно современным гибридным системам хранения данных, была двухступенчатой: ферритовый куб ёмкостью в одну страницу постранично обменивался с традиционным для того времени запоминающим устройством - магнитным барабаном.
Программист и пользователь первого варианта "Сетуни" общался с ней с помощью рулонного телетайпа. Позднее для ввода данных стали применять фотоэлектрические перфоратор и считыватель с перфоленты, а для вывода - электроуправляемую печатную машинку.
"Нам видеть её и знать не надо"По своим возможностям "Сетунь" относилась к малым ЭВМ. Иначе быть и не могло: троичный компьютер задумывался как университетская ЭВМ, обеспечивающая поддержку учебного процесса и научных изысканий вуза.
Однако простота и естественность работы с "Сетунью", обусловленная применением в ней троичной логики, снискала добрую славу. На варианте компьютера, установленном в вычислительном центре МГУ, решались экономические задачи, велись метеорологические расчёты, обрабатывались самые разнообразные статистические данные.
Попытка запустить массовое производство "Сетуни" не просто не увенчалась успехом, а чуть было не закончилась закрытием проекта. На тщательно сделанный и оттестированный образец "Сетуни", установленный на выставке научно-технических достижений вузов, высокое руководство не обратило никакого внимания.
Реализации первого варианта "Сетуни" (1958 год) и экземпляр, демонстрировавшийся на ВДНХ в 1961 году
Более того, проект "Сетунь" попал под закрытие в рамках наведения порядка в разнообразном парке советских ЭВМ того времени. Один из членов государственного радиотехнического комитета (ГКРЭ), всеми уважаемый директор конструкторского бюро, отмахнулся от "Сетуни" фразой: "Нам видеть её и знать не надо. Покажите бумагу с с авторитетными подписями и печатями". Только благодаря вмешательству академика Соболева межведомственная комиссия ГКРЭ летом 1960 года провела тщательные недельные испытания троичного компьютера, в результате которых признала "Сетунь" "первым действующим образцом универсальной вычислительной машины на безламповых элементах, создание которой является определённым достижением в вычислительной технике". Ни больше ни меньше.
Серийное производство троичного компьютера навязали Казанскому заводу математических машин, хотя Брусенцов с командой разработчиков получал предложения от других производителей, в том числе и из-за рубежа.
Казанские инженеры, не вдохновлённые низкой стоимостью "Сетуни" (27 500 рублей), не горели желанием выпускать её серийные образцы в запланированные сроки. При том, что феррит-диодные усилители, базовые элементы троичного компьютера, поставляли в Казань с Астраханского завода электронной аппаратуры, они стоили всего три рубля пятьдесят копеек. Более того, своими "инженерными" изысканиями казанские производители так и норовили внести в отлаженную конструкцию троичного компьютера модификации, приводившие к его неработоспособности.
Бригада разработчиков "Сетуни" фактически поселилась на заводе, занимаясь постоянной отладкой серийных машин.
Дружный коллектив разработчиков "Сетуни"
Несмотря на все препоны, к 1965 году завод произвёл и реализовал пятьдесят экземпляров "Сетуни". Промышленные образцы компьютера заработали по всей стране - в военно-воздушной академии имени Жуковского и в одесском НИИ "Пищепромавтоматика", в якутском институте космофизических исследований и ведущих московских вузах.
И везде "Сетуни" зарекомендовали себя исключительно надёжными и простыми в освоении и эксплуатации машинами. Так, первый вариант "Сетуни", собранный для вычислительного центра МГУ, безотказно трудился более пятнадцати лет.
"Сетунь-70"Идеи, заложенные в архитектуру первого троичного компьютера и реализованные в "Сетуни", оказались настолько удачными, что в 1967 году было принято решение выпустить её модифицированную версию.
Наряду с аппаратными улучшениями (увеличение объёма оперативной памяти, реализация системы прерываний, уменьшение потребляемой мощности и размеров ЭВМ), важнейшим нововведением стала реализация двухстековой архитектуры.
Выпущенный в 1970 году вариант обновлённого троичного компьютера получил название "Сетунь-70".
Стремление к реализации более продуманного и компактного представления программ привело разработчиков "Сетуни-70" к идее отказа от традиционного машинного кода и использования в качестве машинного языка обратной польской записи (ПОЛИЗ). Стандартные машинные команды, состоящие из кода операции и адреса операнда были заменены на трайты операций и операндов. Применение обратной польской записи и обусловило стековую архитектуру "Сетуни-70". В первом стеке адресные трайты управляют передачей данных из оперативной памяти в стек, а операционные трайты - преобразованием данных и возвращением результата из стека в оперативную память. При этом, как и положено при стековой обработке, эти операции выполняются над данными в вершине стека и нижележащими данными.
Пятьдесят четыре операции были реализованы аппаратно. Из них половина была операциями общего пользования, а оставшиеся двадцать семь были служебными и не могли выполняться в пользовательском режиме. Кроме аппаратных операций "Сетунь-70" поддерживала работу с двадцатью семью макрооперациями - подпрограммами, создаваемыми пользователем и по мере надобности вызываемыми из оперативной памяти. Для работы с макрооперациями использовался второй (системный) стек ЭВМ.
Академик Соболев постоянно курировал проект троичного компьютера, используя свой авторитет в случае бюрократических препон и проволочек
Подобная реализация архитектуры "Сетуни-70" была неслучайной. Применение стеков и разработка операций в нотации ПОЛИЗ предполагали внедрение в процесс разработки программ идей структурированного программирования, концепция которого была предложена Эдсгером Дейкстрой. Структурированный подход существенно экономил время на разработку и отладку сложных программ, разбивая их на ряд структурных единиц, с каждой из которых можно было работать как с независимым объектом.
Специально для реализации этой идеи разрабатывалась среда ДССП (Диалоговая система структурированного программирования) - прообраз нынешних интегрированных сред программирования.
К сожалению, как следует обкатать идеи, реализованные в "Сетуни-70", не получилось. Очередная волна бюрократических зачисток, направленная на искоренение в вузах проектов разработки собственных ЭВМ, привела к тому, что "Сетунь-70" переселилась на чердак студенческого общежития в главном корпусе МГУ.
На этот чердак была отправлена в ссылку "Сетунь-70".
Возможно, её судьба была бы аналогична судьбе первой "Сетуни", варварски уничтоженной после многолетнего труда, если бы не научно-исследовательская работа "Разработка автоматизированной обучающей системы на базе малой цифровой машины".
Так "Сетунь-70" превратилась в электронного учителя и экзаменатора, а её ведущий системный программист Хосе Рамиль Альварес стал разработчиком программно-аппаратного комплекса "Наставник" - уникальной в своем роде обучающей среды.
Хосе Рамиль Альварес рассказывает: "После того как нашей лаборатории запретили заниматься компьютерами, профессор МВТУ имени Баумана Анисимов предложил Николаю Петровичу Брусенцову заняться применением компьютеров в обучении, чтобы, как он выразился, "никто не сказал, что мы этого не можем". Вот тогда Николай Петрович предложил мне перейти к нему для развития идей программированного обучения. До этого я занимался эмуляцией команд "Сетуни-70" на "Сетуни" для отладки макропрограмм системы ДССП.
С самого начала нашей работы Николай Петрович сказал, что "Наставник" не пойдёт в серию, как из-за дешевизны производства, так и из-за того, что система не позволяла халтурить ни ученику, ни преподавателю...
...Однажды к Николаю Петровичу пришёл академик Бахвалов и сказал, что ему необходимо ехать в командировку, а у него в это время должен быть коллоквиум по численным методам. Нельзя ли для его проведения использовать "Наставник"? Мы рассказали ему идею системы, Бахвалов сделал шаблоны заданий, и коллоквиум успешно прошёл. Позже, во время пересдачи тестов, мы с Бахваловым наблюдали, как один студент сел за тот же терминал "Наставника", что и в прошлый раз, думая, что ему попадутся те же самые вопросы. Я пояснил, что вопросы выбираются случайным образом. Бахвалов спросил, какой алгоритм используется в качестве генератора случайных чисел. "Всё очень просто, - ответил я, - алгоритм подсчитывает число нажатий на клавиши терминалов во всём дисплейном классе. А это всякий раз случайное число..."