Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

khor32

.pdf
Скачиваний:
26
Добавлен:
29.02.2016
Размер:
8.16 Mб
Скачать

1.2. Вычислительные машины на электронных лампах

Следующим шагом в совершенствовании вычислительной техники явилось создание ВМ c программным управлением, использующих в качестве «носитeля» программ перфокарты и перфоленты. B конце 1930-x годов начались работы по созданию ВМ на электромагнитных реле, т. e. внедрению электромеханической элeментной базы.

Первой релейной ВМ была машина Z2 Цузе. B ней арифметическое

устройство и устройство управления были построены на реле (см. разд. 1.1.4).

Многие годы считалось, что машина Mark 1 (H-Mark 1, Harvard Mark 1),

созданная в США в 1944 г., является первой в мире релейной ВМ c про-

гpаммным управлением. Работы по созданию машины H-Mark 1 проходили в Гарвардском университете (Harvard University) под руководством Говарда Айкена (Нoward Aiken, 1900-1973) c 1939 по 1944 г.

Машина Mark 1 была десятичной. Арифметическое устройство и устрой-

ство управления в ней были вьшолнены на десятипозиционньх электромеха- я ческих элементах, при этом реле было основным логическим элементом. Программа работы ВМ размещалась на перфоленте и вводилась покомандрКо.

B машине Mark 1 использовалась форма представления чисел c фик-

сированной запятой. Машина обладала достаточно высоким для своего времени быстродействием: сложение двух 23-разрядных десятичных чисел вы-

полнялось за 0,3 c, умножение за б c, деление за 11 c.

Стремление повысить надежность ВМ привело к созданию машины

Mark 2 на шестиконтактных реле улучшенной конструкции, в которой было

использовано 13 тыс. реле. Она могла выполнять операции сложения и умножения соответственно за 0,125 и 0,25 c.

Ради исторической справедливости следует подчеркнуть, что первым электромеханическим компьютером c программным управлением является

мама Цyзе Z3 (двоичная, c плавающей запятой), a не ВМ Айпсена Mark 1 (де-

сятичная, c фиксированной запятой).

1.2. Вычислительные машины на электронных лампах

Вычислительные машины на реле были ненадежны и не удовлетворя-

ли требованиям по производительности и емкости памяти, которые пpeдъявлялиcь к средствам обработки информации уже в 30-x и 40-x годах

XX столетия. Указанные причины и достижения в электронике позволили

начать разработку вычислительных машин на электронных лампах. B кaчe-

cтвe основного элемента стали использовать ламповый тpиrrep (пepeключaтeльный элемент c двумя устойчивыми состояниями). Tpиrrep был создан

M.A. Бoнч-Бpyeвичeм еще в 1918 r. (аналогичную электронную схему пpeд-

лoжили в США Икклз и Джopдaн в 1919 r.).

23

1. Предыстория вычислительной техники

После налаживания производства достаточно надежных электронных элементов (1940-е годы) на их основе были созданы первые ВМ. Разработки такиe ВМ выполнялись одновременно и за рубежом (в США, Англии), и в СССР.

Многие годы, вплоть до середины 80-x годов ХХ в., считалось, что

американская машина ENIAC (1943 —1945) является первым в мире компью-

тером на электронных лампах. Однако и здесь была своя предыстория.

1.2.1.Вычислительная мaшг^на Colossus

В1936-1937 гг. английский математик Алан Тьюринг (Alan Turing,

1912-1954) теоретически доказал возможнoсть создания универсальной цифровой вычислительной машины. Именно эн показал, что любой алгоритм, в принципе, может быть реализован на дискретном автомате, и предложил такой автомат (абстрактный эквивалЕ;нт алгоритма), получивший позднее название «машина Тьюринга».

В начале 40-x годов прошлого столетия F Великобритании A. Тьюрингом совместно c X.A. Ньюменом была сконструирована специализированная электронная цифровая ВМ Colossus («Колосс.> название, подчеркивающее колоссальные возможности данного средтва обработки информации). Данная ВМ предназначалась для разведывательных целей, для дешифрации германской секретной информации во время второй мировой войны.

Мощным стимулом для создания машины Colossus служила необходимость противодействия германскому подвод оному флоту и авиации, которые наносили большой ущерб Великобритании в начале войны. Для связи между германским командованием и войсками широко использовались радиопередачи информации. При кодировании этой информации применялись

шифровальные машины Enigma («головоломка»). Дешифрация закодиро-

ванной информации требовала огромного объема вычислений, который невозможно было выполнить даже большому коллективу профессионаловвычислителей в необходимые сроки. Ясно, чтя указанную проблему можно было решить только при помощи высокопроиз водительной ВМ.

Электронная машина Colossus запущена в эксплуатацию в 1943 г., однако публикаций o ней не было на протяжении последующих 30 лет.

1.2.2. Вычислительная машина ABC

Машина АВС является первым цифро.аым вычислительным средством, реализованным на электронных лампах, идея создания которой при-

надлежит болгарину Джону Винсенту Атанасову (John Vincent Atanasoff,

1903-1995).

24

1.2.Вычислительные машины на электронных лампах

В193 0-x годах испытывалась острая потребность в быстродействующих вычислительных средствах. В самом деле, в эти годы бурно развивалась квантовая физика, требовалось численными методами решать большие системы алгебраических уравнений (к которым сводились дифференциаль-

ные уравнения в частных производных) . Существовавшие в то время электpомеханические ВМ и аналоговые дифференциальные анализаторы не обладали необходимыми быстpодействием и точностью.

Атанасов Дж.В., работая профессором теоретической физики в Кол-

ледже штата Айова США (Iowa State College), уже в 1933 г. стал задумы-

ваться над тем, как повысить скорость работы цифровых ВМ, и пришел к пониманию необходимости использования электронной (a не электромеханической) элементной базы. Однако он смог приступить к проектиро -

ванию своей ВМ только в 1939 г., заручившись согласием частной корпора-

ции Research Corp. и Агрономической станции штата Айова o финансовой поддержке. Атанасов со своим аспирантом Клиффордом Верри (Clifford Berry, 1918-1963) планировал построить специализированную цифровую

ВМ на электронных лампах для решения систем линейных алгебраических уравнений (c 30-ю неизвестными).

Вначале были построены две малые машины, которые послужили прототипами большой электронной ВМ, которую позднее стали называть машина АВС (Аtапаsогг-Вепу Computer). Машина АВС должна была войти

в строй в 1943 г., но призыв Атанасова в армию не позволил завершить работy. Вместе c этим необходимо констатировать, что в 1942 г. машина АВС уже функционировала и осуществлялась отладка устройств ввода-вывода

информации.

Остановимся на архитектурных особенностях машины АВС. Прежде всего функциональная структура АВС была рассчитана не на универсальные вычисления, a на реализацию операции сложения и вычитания векторов данных. B состав машины входили арифметическое устройство (АУ), запоминающие устройства: оперативное (ОЗУ) и внешние (ВЗУ). Для построения АУ были использованы радиолампы.

Машина АВС работала в двоичной системе счисления, слово состояло из 50 разрядов и представлялось в форме c фиксированной запятой.

Запоминающие устройства предназначались для хранения только дан-

ных. Память (или ОЗУ) имела емкость, рассчитанную на 32 слова. Она состояла из барабана, вращавшегося со скоростью 1 об./c. B барабане было смонтировано 1632 бумажных конденсатора, по 51 на каждую из 32 дорожек. Считывание и запись информации в память осуществлялись при помощи щеток (таких же, как в электродвигателях). Эта память была регенера-

ТИВНОЙ, При каждом Обороте барабана осуществлялось восстановление информации. Последнее было вызвано тем, что при считывании информации

25

1. Предыстория вычислительн )й техники

происходил разряд конденсаторов и имели место естественные утечки заряда. Стоит отметить, что и в современной дин мической памяти (например, на основе МОП-схем) также используется регенерация информации.

B качестве внешнего запоминающего устройства в АВС использовалось типовое перфокарточное оборудование. данные представлялись в де-

сятичнои системе счисления и вводились в мz.шину и выводились из нее c помощью перфокарт. Переводы чисел из десятичной системы в двоичную и

обратно выполнялись аппаратурно. Программирование машины АВС осу-

ществлялось путем ручных перекоммутаций, т. e. аппаратурно (hard, a не soft). Реализация операций условного перехода не предусматривалась.

Разработка АВС относится к числу пионерских, однако профессор Атанасов не удосужился получить патент на срою машину.

1.2.3. Вычислительная машина ENIAC

Вычислительная машина на электронно элементной базе ENIAC [1]

была сконструирована и построена в Электротехнической школе Мура Пен-

сильванского университета США (Moore school of Electrical Engineering of

the University of Pennsylvania) в 1943-1945 гг.: СНервая задача была решена на

машине ENIAC в декабре 1945 г.; официально ее представление состоялось

в феврале 1946 г. Машина ENIAC подвергала сь неоднократной модерниза-

ции и эксплуатировалась до 1955 г.

Идея создания машины ENIAC (Electronic Numerical Integrator And Computer электронный цифровой интегратор и вычислитель) принадлежит Джону Мочли (John W. Mauchly, 1907— 1 S 80). Техническое руководство

работами по конструированию ENIAC Мочли осуществлял совместно со

своим молодым сотрудником Преспером Эккертом (John Presper Eckert, 1919-1995). B разработке ENIAC принимал участие и Джон фон Нейман (John von Neumann, 1903-1957).

Прежде чем обратиться к архитектуре ENIAC, заметим, что в начале

1940-x годов Атанасов поделился c Мочли информацией o принципах построения машины АВС. Более того, по приглашению Атанасова в 1941 г. Мочли посетил его лабораторию, где он детально изучил машину АВС. Позднее Мочли в своем письме обратился к Атанасову c просьбой разрешить ему продолжить разработки по электронной ВМ и получил от него положительный ответ. B 1973 г. в результате судебных разбирательств был доказан приоритет Атанасова в разработке принципов построения электpонных ВМ, Мочли и Эккерт лишились возможности быть обладателями соответствующего патента.

Архитектурные возможности и состав машины ENIAC. Вычислительная машина ENIAC кардинально отличалась не только от предшест-

1.2. Вычислительные машины на электронных лампах

вyющих ВМ, но и от машин, созданных позднее. B частности, от последних ВМ ее отличало использование множества полуавтоматических электронных вычислительных устройств, работающих параллельно и полунезависимо, и реализация памяти только на электронных лампах.

Вычислительная машина ENIAC имела следующие показатели: Такто-

вaя частота 100 кГц; быстродействие 5000 и 350 опер./c соответственно при сложении и умножении десятирaзрядных десятичных чисел; количество электронных ламп и электромагнитных реле 18 000 и 1500 соответственно; потребляемая мощность 150 кВт; масса 27 т; занимаемая

площадь 200 м2.

Создание машины ENIAC оценивалось в 486 000 долл. и эта сумма

превысила начальный бюджет на 225 %.

Машина ENIAC это вручную перестраиваемая конфигурация, со-

стоявшая из трех подсистем: управляющей, собственно вычислительной и ввода-вывода (рис. 1.2). Управляющая подсистема была представлена композицией из главного программного устройства (ГПY) и двух дополнительных программных устройств (ДНУ). Вычислительная подсистема формиро - валась из 20 устройств накопления и суммирования (УНС), устройства ум- ножения (УУМ), устройства деления и извлечения квадратного корня (УДК)

I-

Главное программное устройство

 

 

 

 

 

Дп J

r l УнсF lУнс

- IУнс

- lУнс

-

iУнс-

I УнсF Nuch lУнс - lУнсF

hсF

^C Г

^C Г I^C I I ^C I I CГ

[УнсF Nuch I ^c

Г I ^c

Г I Унс

УУМ

УДК

I хт

H хт

HУхг 1--

УВв

 

ВЗУ .-

 

вывj_.

Рис. 1 .2. Функциональная структура ENIAC:

ДНУ — дополнительное программное устройство; УНС устройство накопления и сумми

-рования;УУМ—устройствоумножения;УДК—устройстводеленияиизвлеченияквадрат- ного корня; УХТ — устройство хранения таблиц; УВв — устройство ввода; ВЗУ — внешнее.

запоминающее устройство; УВыв — устройство вывода

27

1.Предыстория вычислительной техники

итрех устройств хранения таблиц (УХТ). Подсистема ввода-вывода состояла из устройств ввода (УВв) и вывода (УВыв) и Нформации.

Устройства программного yправления фс рмировали последовательно-

сти управляющих сигналов для остальных устройств. Каждое УНС могло запоминать и суммировать 10-разрядные десятичные числа, оно, по сути,

являлось регистром-аккумулятором информащ и. B ENIAC любое из вычис-

лительных устройств (УНС, УУМ, УДК) выполняло функции как специализированного арифметического устройства, так и ячейки для хранения информации. Каждое УХТ предназначалось для ранения всевозможных констант. Оно было рассчитано на 104 десятичных числа.

B ENIAC использовалась любопытная система представления чисел c

фиксированной запятой, a не двоичная (см. разд. 1.1.5) и не двоично-

десятичная (при которой каждый десятичный разряд представляется тетрадой, т. e. четырьмя двоичными разрядами). B данной системе каждый разряд десятичного числа (каждая из цифр от 0 до 9) представлялся десятью двоичными разрядами, из которых только один был равен единице. При этом номер позиции, в которой стояла единица, определял значение всей цифры. Например, цифра 3 выглядела как 0000001000, a цифра 9 как 1000000000.

Физически это было реализовано следующим образом: десять триггеров на электронных лампах соединялись в кольцо, десять таких колец плюс два знаковых триггера образовывали одно УНС. Триггер был реализован на одной лампе двойном триоде.

B машине параллелизм обеспечивался на макро- и микроуровнях. B самом деле, каждое вычислительное устройство (УНС, УУМ, УДК) имело свое локальное программное оборудование; следовательно, допускалась одновременная (параллельная) работа всех устройств. Кроме того, в каждом устройстве могла осуществляться и параллельная обработка всех 10 десятичных разрядов чисел.

Все схемы для логического управления и для выполнения арифмети-

ческих операций, a также оперативная память ENIAC были реализованы на

лампах. Для представления одного разряда десятичного числа в данной ВМ требовалось 10 электронных ламп. Машина с одержала 18 000 электронных ламп. Частота срабатывания электронных цепей составляла 100 000 импульсов в секунду (тактовая частота 100 кГц; . Среднее время выполнения операций сложения, умножения и деления составляло 200, 2800 и 6000 мкс

соответственно. Таким образом, машина ENIAC имела быстpодействие на 3 порядка выше, чем у Z3, Н-Mapк 1 и Н-Мар к 2 (за счет применения элек-

тронных элементов вместо релейных).

B машине ENIAC не было отдельного устройства оперативной памя-

ти. Как уже отмечалось, для запоминания информации могло использовать-

ся 20 УНС, 3 УХТ, 1 УУМ и 1 УДК. Следовательно, можно считать, что

28

1.2. Вычислительные машины на электронных лампах

максимальное количество запоминаемых в ENIAC десятичных чисел было

равно 334.

B качестве устройств для ввода исходных данных и вывода результатов использовалась распространенная в то время перфорационная аппарату-

ра (для перфокарт и перфолент).

Функциональная структура ENIAC позволяла осуществлять подклю-

чение внешних запоминающих устройств. Для формирования ВЗУ могли быть применены элементы различных видов, в частности электромагнитные реле и управляемые вручную механические переключатели.

Структуру машины ENIAC можно было реконфигypировать; алгоритм

ее функционирования проблемно не фиксирован (не специализирован). Адаптация структуры и алгоритма функционирования ВМ под конкретную задачу или программирование машины для решения выбранной задачи дос-

тигались вручную. При программировании ENIAC проводились соответст-

вующие ручные перекоммyтации (механическими переключателями) в блоках программных управлений каждого из вычислительных устройств, используемых при решении задачи, устанавливались соединения (при помощи

гибких кабелей со штекерами) между блоками программных управлений, задавались таблицы функций (путем установки механических переключате-

лей). Такая процедура программирования была длительной, трудоемкой,

плохо контролируемой.

Области применения и эффективность машины ENIAC. Разработка машины ENIAC была поддержана Артиллерийским департаментом Ар-

мии США. C начала 1947 г. эта машина находилась на испытательном полигоне Баллистической исследовательской лаборатории в г. Абердине. Машина предназначалась прежде всего для расчетов по баллистике, в частности для составления таблиц стpельб. Она обеспечивала рекордную по тому времени скорость вычислений. Так, например, 60-минутная баллистическая

траектория на машине ENIAC могла быть рассчитана всего лишь за 30 c, в

то время как этот расчет квалифицированным человеком-вычислителем мог быть проведен на электромеханическом арифмометре за 20 ч. Данная ВМ

работала в тысячу раз быстрее вычислительных машин Z3 или н-Mapк 2.

На ЕNIАС был сделан предварительный расчет первого американского термоядерного боеприпаса Мгке («Майк»). Расчеты подобны устройств весь-

ма трудоемки и громоздки, их практически нельзя выпотппить без компьютера.

Однако машина ENIAC все же мало устраивала специалистов-вычислителеи

из-за низкой производительности, надежности, малой емкости памяти.

Для удовлетворения потребностей Лос-Аламосского вычислительного

центра в 1952 г. была создана новая генерация машины MANIAC. Эта

машина имела быстродействие 10 000 операций умножения в секунду, a ее память была реализована на магнитной ленте. Машина МАNIАС по своей

29

1. Предыстория вычислительной техники

архитектуре принципиально отличалась от ЕЛ ВАС и прежде всего тем, что она обеспечивала автоматизацию (a не механизацию) вычислений (т. e. обладала способностью хранить программу расчЕ тов в своей памяти).

Основные вычисления по термоядерному боеприпасу Mike были вы-

полнены на MANIAC, он был взорван 1 ноября 1952 г. в Тихом океане. Вычислительная машина MANIAC вошла в историю в качестве пер-

вой, на которой была реализована программа игры в шахматы.

Анализ машины ENIAC. Создание ENIAC расценивается как эпо-

хальное событие в области механизации вычислений. Даже сейчас ни один экскурс в область истории информационных т ехнологий не может игнорировать эту важнейшую разработку.

Машина ENIAC не имела жесткой стру^:туры, более того, она не могла быть названа машиной (в современном по Нимании). Это был конструкторский набор из з 0 основных вычислительных устройств, предоставляемый для программирования (по сути, конфигу рирования) специализированно? ВМ.

Программирование любой задачи осущ :ствлялось аппаратурно и за- ключaлось в ручных перекоммутациях внутри вычислительных устройств и соединении между ними.

Независимо от проблемной ориентации запрограммированной маши-

ны ENIAC ее архитектура относилась к классу SIMD, если придерживаться классификации* М. Флинна (M.J. Flynn), профессора Стенфордского уни-

верситета (США). B средствах c такой архитектурой один поток команд

управляет обработкой многих потОков дань ых (SIMD: Single Instruction stream / Multiple Data stream). Общее управление в ENIAC осуществлялось

главным программным устройством (см. рис....2).

Отметим архитектурные достоинства машины ENIAC:

SIMД-архитектypа, распределенность и иерархия средств управления, смешанный синхронно-асинхронный способ у правления вычислениями;

параллелизм при обработке данных (допускалась одновременная работа нескольких вычислительных устройств и параллельная обработка десятичных разрядов чисел);

ручная реконфигурируемость структур ы (ручное программирование «неспециализированной» машины под структуру решаемой задачи);

однородность, модульность и масштаб лруемость (варьируемость количества устройств).

Следовательно, машина ENIAC обладала совокупностью архитектур-

., ных свойств, которые присущи современным высокопроизводительным па-

* Flynn M. Some Computer Organizations and their Effectiveness//IEEE Trans. Computer. 1972. V. 21. N2 9. P. 948-960.

30

1.3. Первые электронные вычислительные машины

раллельным вычислительным системам. Проект ENIAC опережал возмож-

ности элементной базы (ламповой электроники).

Если исходить из характеристик элементной базы 1940-x годов (a в то

время ламповые элементы были самыми быстродействующими), то можно

указать на следующие недостатки машины ENIAC:

• ручное (hard; механическое) трудоемкое программирование ВМ под структуру решаемой задачи (такое программирование длилось несколько

часов или даже дней);

• низкая надежность, обусловленная применением большого числа

ламп, электромагнитных реле, механических переключателей и кабелей, a

также ручным программированием структуры машины;

малая емкость оперативной памяти (334 10-разрядных десятичных чисел);

громоздкость и дороговизна машины (18 000 электронных ламп, 486 000 долл. ! );

аппаратурная избыточность.

Поясним два последних пункта. Для представления 10-разрядного де

сятичного числа в ENIAC требовалось 100 триггеров (ламп), не считая зна-

ковых. Однако если бы использовались двоичная или двоично-десятичная системы представления чисел, то в этой ситуации необходимо было бы 34 или 40 триггеров соответственно.

Машина ENIAC это первая электронная ВМ, которая нашла прак-

тическое применение и была для своего времени инструментом решения сложных задач. Она завершает эпоху механизации вычислений, исчисляемую c появления первых арифмометров XVII в.

1.3. Первые электронные вычислительные машины

Прежде всего обратим внимание на предпосылки создания электронных вычислительных машин (ЭВМ) c хранимой программой.

B результате эксплуатации машины ENIAC стало ясно, что дальней-

шее расширение возможностей ЭВМ по решению задач может быть достиг - нуто за счет автоматизации вычислений, повышения надежности, увеличения емкости памяти, совершенствования элементной базы. Для осуществления автоматизации вычислений ЭВМ должна обладать возможностью хранения программы в оперативной памяти. Следовательно, переход от ме-

ханизации к автоматизации вычислений также связан c увеличением емко-

., сти оперативной памяти.

C целью создания оперативной памяти большей емкостью (по сравне-

нию c памятью ENIAC) и более дешевой, чем ламповая, Эккерт предложил

31

1. Предыстория вычислительной техники

использовать ртутные линии задержки. Опыт применения таких линий задержки уже был в военном радарном оборудов tнии. Идея Эккерта заключа-

лась в том, чтобы создать циклическую (если гсворить современным языком, динамическую) память на ртутной линии задержки путем подключения ее выхода к входу через ламповые усилитель и фсрмирователь. B такой памяти можно было хранить порядка 1000 бит информации, a для ее реализации требовaлась всего лишь одна линия задержки и несколько ламп (в то время как в

ENIAC требовался ламповый двойной триод на каждый бит информации).

Необходимость автоматизации вычислений, возможности электронной элементной базы и физическая природа п мяти на линиях задержки во многом предопределили архитектуру будущих ЭВМ, именно то, что они должны были быть полностью синхронными и последовательными и использовать двоичную систему счисления. К заким ЭВМ относится амери-

канская машина EDVAC [1], построенная в 19:10 г.

Принято считать, что EDVAC положила начало первому поколению

современных средств обработки информациг.. Данные средства обеспечивают автоматизацию вычислений, они способны не только хранить программу своей работы в собственной памяти, но и модифицировать ее. Последнее раскрывает суть предложений, сформулированных Дж. фон Нейма-

ном в ходе работ над проектом EDVAC, или, как сейчас говорят, составляет

сущность понятия «фоннеймановская архитек гура».

Однако исторический анализ убеждает } -iас в том, что машина EDVAC

была лишь третьей в ряду ЭВМ c хранимой программой. B самом деле, обратимся к работам 1940-x годов, которые ве. лись по созданию автоматических ЭВМ и в Европе.

1.3.1. Вычислительная машина M-Mark 1

Машина M-Mark 1 является первой в ис,ории реально работавшей ЭВМ c хранимой программой. Эта машина была построена в Манчестерском уни-

верситете Великобритании (М-Маrk 1 М nchester Mark 1). Работы по ее

созданию выполнялись в 1946-1948 гг. под руководством Ф. Уильямса и

T. Килберна (F.C. Williams and T. Kilburn).

B машине M-Mark 1 арифметическое устройство и память были построены как раздельные устройства. Причем арифметическое устройство реализовывалось на электронных лампах, a память на электронно-луче- вой трубке. B данной памяти двоичная информация представлялась в виде зарядов на поверхности экрана трубки. Пам5 ть на электронно-лучевой трубке была предложена Ф. Уильямсом в 1948 г.

Числа в ЭВМ М-Mark 1 представлялись в двоичной форме с фиксиро-

ванной запятой; способ обработки чисел

последовательный. Архи-

32

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]