UNIVAC LARC (сокр. от англ.Livermore Advanced Research Computer (рус.Ливерморский передовой исследовательский компьютер), или англ.Livermore Automatic Reaction Calculator, или англ.Livermore Atomic Research Computer[1]) — первая попытка компании Remington Rand (точнее её подразделения UNIVAC) создать суперкомпьютер. Он был задуман как мультипроцессор с двумя ЦПУ (которые назывались компьютерами) и одной системой ввода-вывода (которая называлась процессор).
В мае 1955 года Remington Rand получила заказ от Ливерморской лаборатории на создание транзисторного компьютера после участия в тендере, где соперником выступала компания IBM. Заявка лаборатории требовала создать компьютер с вычислительной мощностью 1~2 MIPS за 2-3 года и с бюджетом в 2,5 миллиона долларов США.
Представители IBM решили предложить Ливерморской лаборатории другой, более дорогой, но более совершенный компьютер, превосходивший во много раз то, что требовалось в заявке. Лаборатория отказалась от предложения IBM и отдала предпочтение компании Remington Rand. IBM, узнав о том, что Лос-Аламосская лаборатория тоже подумывает о заказе суперкомпьютера, тут же предложила свои услуги и создала компьютер IBM 7030 Stretch, установленный в Лом-Аламосе в 1961 году.
К моменту начала контракта в 1955 году Remington Rand объединилась с компанией Sperry и образовала новую компанию под названием Sperry-Rand. При обсуждении спецификации со стороны Ливерморской лаборатории в переговорах активное участие принимал начальник вычислительного отдела Лаборатории Сидни Фернбач (Sydney Fernbach).
Директором проекта был назначен Герман Лукофф, архитектура компьютера была разработана Артуром Гехрингом (Arthur Gehring) и Альбертом Тоником (Albert Tonik), электрическая часть - Джошем Грейем (Josh Grey) при помощи Лукоффа, Билла Винтера (Bill Winter) и Ллойда Стоуна (Lloyd Stone).[2]
Первый LARC был поставлен в Ливерморскую лабораторию с опозданием на три года, с перерасходом бюджета в несколько раз и финансовым убытком для UNIVAC/Remington-Rand. Например, для борьбы с паразитными шумами, возникавшими при сбросе паразитных токов с шин на корпус, весь корпус и места контактов шин с корпусов было решено покрыть золотом, а контакты на самом шасси - серебром.[3] LARC был построен на базе поверхностно-барьерных транзисторов, которые вышли из употребления к тому моменту, когда машина была завершена. Тем не менее производительность LARC соответствовала заявке Лаборатории.
В январе 1960 года LARC был разобран и отправлен в 18 грузовиках в компании с целой командой инженеров через всю Америку из Филадельфии в Калифорнию в Ливерморскую лабораторию. Сборка компьютера на месте началась в марте 1960 года и закончилась в июне 1960 года. После чего последовал еще год его тестирования и приемки.
Было построено только два экземпляра компьютера LARC:
Обе машины имели только один компьютер, так что ни один из двух экземпляров не являлся фактически мультипроцессором.[4]
Для своего времени LARC был очень быстрой машиной. Сложение выполнялось за 4 микросекунды, умножение - за 8 микросекунд, деление - за 28 микросекунд. Это был самый быстрый компьютер в период 1960-1961 годов, пока на рынке не появился компьютер IBM 7030 Stretch.
LARC проработал в Ливерморской лаборатории и David Taylor Model Basin примерно до 1968-1969 года.
Описание
LARC был десятичной машиной с 48-битной длиной слова. Он использовал двоично-десятичную арифметику, где каждые четыре бита отводились под одну цифру, допуская максимум 11-значное число со знаком. Размер инструкции составлял 48 бит, то есть одно слово. Каждая цифра в машине имела один контрольный бит для отслеживания ошибок, это значило, что каждое слово занимало 60 бит (48 бит + 12 битов чётности). Базовая конфигурация имела 26 регистров общего назначения, и при желании можно было их расширить до 99 регистров общего назначения. Регистры общего назначения имели время доступа 1 микросекунду.
Базовая конфигурация имела один компьютер, к этой конфигурации можно было добавить второй компьютер и превратить машину в мультипроцессор.
Процессор представлял собой отдельный ЦПУ (с набором инструкций, отличающимся от компьютера), который управлял доступом к 12-24 магнитным барабанам, 4-44 устройствам записи на магнитную лентуUNISERVO II, двум записывающим устройствам Electronic Page Recorder (EPR), позволявшими выводить текст и графики на 35 мм фотоплёнку, 1-2 высокоскоростным принтерам и высокоскоростному считывателю перфокарт.
В качестве ОЗУ в LARC использовалась память на магнитных сердечниках, сформированная в банки памяти по 2500 слов в каждом. В каждом шкафу хранилось четыре банка памяти. В базовой конфигурации было 8 банков памяти (два шкафа), то есть ОЗУ объемом в 20000 слов. ОЗУ можно было расширить до 39 банков (десять шкафов с одним пустым банком), то есть до объема 97500 машинных слов. ОЗУ имело бит четности на каждую цифру, так что каждое слово в памяти занимало 60 бит. Время доступа к ОЗУ составляло 8 микросекунд, а время цикла — 4 микросекунды. При умелом распределении данных по банкам памяти можно было добиться постоянного времени доступа в 4 микросекунды при любом запросе данных (например, если инструкции программы расположены в одном банке, а данные в другом).
Шина передачи данных, соединявшая два компьютера и процессор с ОЗУ, поддерживала мультиплексирование для достижения большей пропускной способности; каждый 4-микросекундный цикл шины передачи данных делился на 8 500-наносекундных отрезков: