Урал-1
«Урал-1» — малая (по существовавшей на момент создания классификации) ламповая программно-управляемая вычислительная машина из семейства ЭВМ «Урал», предназначенная для решения инженерных задач в научно-исследовательских институтах, конструкторских бюро, в высших учебных заведениях и полигонах[3]. Первая серийно производимая ЭВМ на территории СССР (ранее неё была модель ЭВМ «Стрела», произведённая в количестве 7 шт). В сравнении с БЭСМ была существенно дешевле[1]. По утверждению Энтони Саттона в его книге «The best enemy money can buy», ЭВМ серии «Урал» были единственными серийно производимыми компьютерами в СССР в 1960-х годах, что неверно, так как серийно выпускались ЭВМ серии БЭСМ, в том числе БЭСМ-6 (1968 г.) — одна из лучших в мире среди ЭВМ 2-го поколения, а также ЭВМ серий М-20 и «Минск»[4]. ИсторияЭВМ была разработана в 1954—1955 годах, первый образец был создан тогда же (в 1955 году) на Московском заводе счётно-аналитических машин. Наладка осуществлялась СКБ-245. Частично налаженная машина была отправлена в Пензенский филиал (будущий Пензенский НИИ математических машин). Там же с 1957 по 1961 год осуществлялось серийное производство. Всего было произведено 183 машины. Одна из машин использовалась на космодроме «Байконур» для расчёта полёта ракет[5]. Главный конструктор — Б.И.Рамеев, разработчики: В. С. Антонов, Б.П. Бурдаков, А. Г. Калмыков, А. И. Лазарев, В. И. Мухин, А. Н. Невский, А. И. Павлов, Д. И. Юдицкий[5][6]. ОписаниеПри занимаемой площади в 70—80 м2 машина содержала 1000 ламп (преимущественно 6Н8) и диодно-резисторные вентили, потребляла 7—10 кВт мощности.[7] Лампы выходили из строя примерно после 50 часов работы.[7] Большинство инструкций выполнялось за два такта, однако в машине был реализован механизм совмещения по времени выполнения двух инструкций[8], являвшийся по сути двухступенчатым конвейером, поэтому фактическое быстродействие приближалось к 100 операциям с фиксированной запятой в секунду (операция деления выполнялась в четыре раза, а нормализации в два раза медленнее). Ёмкость оперативной памяти составляла 1024 полных машинных слова (которые в 1960-е годы назывались «коды»), или примерно 4,5 кБ. Оперативная память реализовывалась на магнитных барабанах (100 оборотов в секунду). При этом размер ячейки памяти (36 или 18 бит) определялся адресом — одно и то же место на магнитном барабане могло быть прочитано как 36-битное число, так и как любое из двух 18-битных. Время доступа к машинному слову в памяти занимало 1 такт (в некоторых «неудачных» случаях — 2). Скорость последовательного чтения составляла 75 кодов в секунду.[1]. Для ввода-вывода использовался перфоратор. В качестве перфоленты использовалась зачернённая фотоплёнка. Скорость ввода составляла 3600 бод (100 слов в секунду) вывод — 5600 бод (150 слов в минуту). Пульт управления состоял из индикаторов, показывающих в двоичном коде значение регистров блоков управления и АЛУ (процессора, как отдельного устройства, машина не имела), позволял оператору выставлять значения этих регистров и осуществлять отладку с помощью нескольких клавиш и тумблеров. Данные в памяти сохранялись при выключении машины; записав на бумагу или распечатав значения регистров и введя их после включения, можно было продолжить расчёты с места прерывания. Машина также могла осуществлять цифровой вывод на печатающее устройство (100 машинных слов в минуту). «Урал-1» также имел накопитель на магнитной ленте со скоростью чтения 75 слов в секунду (2700 бод), скоростью записи 150 слов в минуту. Данные на плёнке хранились в форме зон (две зоны параллельно друг другу), которые отделялись друг от друга перфорацией (по магнитной плёнке). При том, что плёнка была медленнее перфоленты, она обеспечивала бо́льшую ёмкость (40 000 слов, то есть 180 кБ)[1]. При конструировании последующих моделей (Урал-2, Урал-3, Урал-4) была сохранена частичная программная и аппаратная совместимость с моделью «Урал-1»[5]. Архитектура[1]
Арифметическое устройство и регистрыВ состав Арифметического устройства (АУ) входят следующие основные блоки:
Оперативное запоминающее устройствоОперативное запоминающее устройство (ОЗУ) выполнено на магнитном барабане (называющееся «накопителем на магнитном барабане» НМБ) состоит из 2048 неполных ячеек, ёмкостью 18 разрядов. Ячейки нумеруются с 00008 до 37778 (восьмеричная система счисления). Две соседние неполные ячейки могут объединяться для создания одной полной 36-разрядной ячейки. Полные ячейки нумеруются (восьмеричные числа): 40008+n (где n — номер первой неполной ячейки, использующейся для хранения полной ячейки). Полные ячейки имеют адреса с 40008 до 77768 (с шагом в 2, то есть 40008, 40028, 40048…). Устройство управленияУстройство управления (УУ) содержит:
Пульт управленияПульт управления состоит из сигнальной и командной частей. Сигнальная представляет собой ряд индикаторов (неоновых лампочек), отображающих содержимое регистра-сумматора АУ, контрольного регистра, регистра команд, регистра-счётчика команд, сигналов φ и ω и др. Управляющая часть содержит:
Устройства ввода-выводаЗапись на накопитель на магнитной ленте (НМЛ) блочная (зонная). Зоны нумеруются от 0000 до 01778 и от 10008 до 11778 (всего 256 зон). Размер зоны произвольный, может достигать размеров ОЗУ (1024 36-разрядных коды). Физически на ленте зоны диапазона 0000-01778 и диапазона 10008−17778 располагаются попарно (первая зона слева, вторая справа по ширине ленты). Разметка ленты осуществляется перфорацией. Лента двигается в одну сторону, максимальная длина ленты 300 м. Время поиска зоны — до 5 минут. Перфорированная лента (зачернённая киноплёнка) используется для ввода, максимальная длина 300 метров. Для чтения используется фотоэлетрический считыватель (скорость до 75 кодов в секунду). Считывание производится блоками (зонами), номера зон от 0000 до 01778. Максимальная ёмкость зоны — 1024 36-разрядных кодов или 2048 18-разрядных кодов. Обратное движение перфоленты не предусмотрено. Время поиска до 2 минут. Вывод осуществляется на печатающее устройство или на перфоратор. Используется буферный регистр для кеширования. Вывод происходит без замедления работы машины при интервалах между выводом: 0,64 с при печати, 0,46 с при перфорировании. Схема работы УУТактовая частота (длительность рабочего цикла) определяется по времени оборота магнитного барабана. Такт делится на две части: первая часть (0.8 оборота барабана) — считывание (или запись — в зависимости от значения регистра команд) из/в ОЗУ числа, с которым производится операция. Одновременно производится считывание команды для следующего такта (согласно регистру-счётчику команд); вторая часть (0.2 оборота барабана) — выполнение арифметической (или другой) операции согласно коду операции, находившемуся перед выполнением такта в регистре команд. (В это время текущая команда сохраняется на специальном пятиразрядном регистре). Во время второй половины такта также производится инкремент счётчика команд и переадресация на содержимое регистра переадресации, если считанная команда содержит признак переадресации. Выполнение операций нормализации и деления занимает 4 и 2 такта (оборота магнитного диска). Во время этих тактов выборка команд не производится. Если исполнительный адрес команды ã находится в интервале от C до С+64 (C — регистр-счётчик команд), то время выполнения инструкции может увеличиться на 1 такт. КомандыУрал-1 поддерживает 29 различных инструкций (35, включая 6 инструкций, которые «ничего не делают», аналог современного NOP). Существенным отличием от современной архитектуры компьютеров является равноправие операций с регистрами, оперативной памятью и устройствами ввода-вывода. Арифметические команды: запись в регистр, сложение, сложение, допускающее переполнение, вычитание, разница модулей, два вида умножения, деление, смена знака, сдвиг влево и право (одна команда, направление сдвига определяется флагом), поразрядное умножение (конъюнкция), поразрядное сложение (дизъюнкция), сравнение, нормализация представления Управляющие команды: запись в память, запись в регистр, запись адреса в сумматор, условный переход, безусловный переход, операция выбора по ключу (близкий аналог case в Си), команды организации цикла, команда изменения кода программы, команда остановки Команды ввода-вывода: обмен данными с перфоленты (или магнитной ленты) и оперативной памяти, команда чтения с перфоленты, записи на перфоленту, вывод содержимого сумматора на перфораторе, команда «прогона» перфоленты. ПрименениеМашины Урал-1 использовались для инженерных и экономических расчётов. В частности, Урал-1 применялся для расчёта полёта ракет на Байконуре, для моделирования процесса обучения, связанном с процессом творчества[9]. ЭВМ Урал-1 использовались и в школах. Например, в середине 1960-х гг. такая машина была передана в 30-ю математическую школу Ленинграда[10]. ЭВМ Урал-1 также использовалась как учебная в 239-й физико-математической школе Ленинграда до переезда в новое здание в 1975 году, где была заменена на ЭВМ Минск-22 и, к сожалению, не сохранилась. В 1965 г. машина Саратовского государственного университета (серийный номер в пределах первого десятка) после списания была передана в среднюю школу №13[11] (ныне Физико-технический лицей № 1) и использовалась для обучения школьников программированию. Впоследствии была расширена до Урал-3, а затем заменена ЭВМ 2-го поколения (БЭСМ). К сожалению, "Урал" не был принят на хранение местным краеведческим музеем и потому разобран. Дополнительная литература
Источники
Примечания
Ссылки |