Информатика в техническом университете / Информатика в техническом университете. Архитектура вычислительных систем
.pdf1.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
1.3. Первые электронные вычислительные машины
тeктypным достоинством ЭВМ M-Mark 1 было и то, что в ней peaлизoвывa-
лacь операция условного перехода (позволявшая изменять ход вычиcли-
тeльнoro процесса).
1.3.2. Вычислительная машина EDSAC
Машина EDSAC (Electronic Delay Storage Automatic Calculator
электронный автоматический вычислитель на линиях задержки) является второй ЭВМ c хранимой программой. Она была построена М. Уилксом
(М. Wilkes) в 1949 г. в Кембриджском университете (Великобритания).
Вычислительную машину EDSAC характеризовали следующие пока-
затели: тактовая частота 500 КГц; быстродействие 14 000 и 117 опер./c соответственно при сложении и умножении 17-разрядных двоичных чисел c фиксированной запятой; емкость памяти 18 тыс. бит.
Следует считать, что EDSAC является первой ЭВМ c фоннеймановской архитектурой. Синтез функциональной структуры EDSAC основы-
вaлся на работах дж. фон Неймана [1].
B машине EDSAC впервые была применена память на ртyтных лини-
ях задержки. Она состояла из 32 ртутных линий задержки, каждая из которых имела емкость 576 бит. Эта ЭВМ была 17-разрядной (однако в ней была реализована возможность обрабатывать слова и двойной длины). Сложение
17-разрядных чисел в EDSAC занимало 0,07 мс, a умножение 8,5 мс.
Ввод данных в EDSAC производился c перфоленты, a вывод результа-
тов на пишyщyю машинку.
Работы по созданию первых ЭВМ в Советском Союзе велись независимо и параллельно c западными разработками. Первая отечественнаямашина МЭСМ была построена в период c 1948 г. по 1951 г., по своим архи-
тектypным возможностям она не уступала EDVAC [2-4].
Компьютер EDVAC по существу стал одним из прототипов всех ЭВМ,
разработанных в дальнейшем на Западе. Рассмотрим архитектурные воз-
можности и функциональную структуру EDVAC.
1.3.3. Вычислительная машина EDVAC
Конструирование и изготовление машины EDVAC (Electronic Discrete Variable Automatic Computer электронный автоматический вьчислитель
для дискретных величин) было осуществлено в 1944-1950 гг. в Электротех-
нической школе Мура Пенсильвaнского университета США (Moore School of Electrical Engineering of the University of Pennsylvania).
В основу ЭВМ были положены оригинальные принципы работы и решения no функциональной структуре и элементной базе, полученные
2-685 |
33 |
1.Предыстория вычислительнс ► й техники
у– Д. Мочли, П. Эккерто м и Дж. фон Нейманом. Автоматизация вычислений была одной из основных
AY |
парадигм при проектировании машины: EDVAC |
|
это автоматический : Компьютер (Automatic Сот- |
=t--- |
puter), т. e. ЭВМ, способная хранить в своей памя- |
УВьпс ^- |
ти программу вычислжий. |
о |
Машина EDVAC вступила в строй в 1950 г. |
ВЗУ |
(хотя усовершенствоЕ.ания вносились до 1952 г.). |
Рис. 1.3. Функциональ-
ная структура EDVAC:
УУ — центральное управ-
ляющее устройство; АУ —
арифмeтическое устройство; ОЗУ — оперативное
запоминающее устройство;
УВх — входной узел;
УВых — выходной узел;
ВЗУ — внешнее запоминающее устройство; = — данные; -+ — команды и
управляющие сигналы
Отметим некогорые показатели EDVAC:
тактовая частота 1 МГц (на порядок выше, чем в
ENIAC); быстродействие 1000 опер./c над 32-раз-
рядными двоичными числами; емкость оператив-
ной памяти 32 76;3 байт; количество электронных ламп —3000.
Функциональная структура машины
EDVAC. Вычислител: уная машина EDVAC (рис. 1.3)
состояла из центрагьного арифметического устройства (АУ), опера тивного запоминающего устройства (ОЗУ), внеш Них запоминающих устройств (ВЗУ), входного и выходного узлов (YBх, УВых) и центрального упраь,ляющего устройства (УУ).
B отличие от ENIAC данная ЭВМ была последовательной машиной, она не
могла выполнять две логические или арифмети ческие операции одновременно. B то время это было технико-экономически обосновано.
Арифметическое устройство предназнаи алось для выполнения опера-
., ции сложения, вычитания, умножения, деления, извлечения квадратного кор-
ня, для преобразования чисел из двоичной системы счисления в десятичную и обратно, для пересылок чисел из одних регистр ов АУ в другие, a также между ОЗУ и регистрами АУ и для осуществления вь [бора одного из двух чисел в за- висимости от знака третьего числа. После, дняя операция использовалась
для передачи управления (условного перехода) от одной команды программы к другой. Числа в АУ обрабатывались последо аательно, начиная c последнего значащего разряда, и в каждый момент времени выполнялась только одна операция. Регистры АУ представляют собой линии задержки на одно 32-раз- рядное двоичное слово.
Память (ОЗУ) содержала до 256 линий задержки, каждая из которых была способна хранить 32 слова, имеющих 32 двоичных разряда, a также переключательную схему, связывающую ячей ки памяти c остальной частью машины. Память предназначалась для хранег:ия начальных и граничных ус-
ловий для дифференциальных уравнений в частных производных, произвольных числовых функций, промежуточных результатов вычислений, a
34
1.3. Первые электронные вычислительные машины
также программы (последовательности команд), управляющей ходом вы-
числении.
Внешние ЗУ были рассчитаны на следующие носители информации: перфокарты, бумажные перфоленты, магнитные ленты, фотопленку. Пред-
полагалось использовать ВЗУ в качестве дополнительной медленнодействующей памяти, a также для ввода и вывода информации.
Следует подчеркнуть, что память EDVAC ( как и в EDSAC) была по-
следовательнои, слова считывались из нее и записывались в нее последовательно бит за битом.
Входной узел предназначался для пересылки информации из ВЗУ в ОЗУ, выходной из ОЗУ в ВЗУ. B оперативном запоминающем устройстве использовалась двоичная система счисления, a в ВЗУ десятичная.
Устройство управления предназначалось для координации работы остальных устройств ЭВМ, в частности, оно формировало поток команд в АУ. Синхронизация работы всех устройств ЭВМ осуществлялась от единого источника импульсов, названного «часами» (сейчас это генератор тактовых или синхронизирующих импульсов).
B машине EDVAC первый двоичный разряд каждого слова служил
для идентификации команд и чисел, причем единица соответствовала ко-
манде, a нуль числу. B EDVAC использовались одноадресные команды, для задания кода операции и адреса операнда в ОЗУ отводилось соответственно 8 и 13 разрядов.
Рассмотрим типичный фрагмент программы обработки числовых данных и работу устройств ЭВМ. Пусть в АУ находится первое слагаемое, a в регистрах или ячейках ОЗУ a, (a + 1) и (a + 2) размещаются соответствен-
но команда, задающая операцию сложения и адрес 13, второе слагаемое и команда, которую предстоит выполнить вслед за сложением. Адекватной последовательностью действий ЭВМ будет следующее: пересылка команды
из ячейки a в центральное УУ, передача слагаемого из (a + 1) в АУ, выпол-
нение операции сложения в АУ, запись суммы в ячейку R и, наконец, вы-
полнение команды из ячейки (a + 2).
Наряду c командой условного перехода (описанной выше) в машине
EDVAC имелась команда безусловной передачи управления, именно коман-
да c адресом y, обеспечивавшая возможность для центрального УУ извлече-
ния следующей команды из ячейки y ОЗУ. Кроме того, в EDVAC была за-
ложена возможность автоматической модификации адреса в команде. Последнее достигалось следующим образом:
• при пересылке некоторого числа из АУ в ячейку b ОЗУ осуществлялся предварительный просмотр ее содержимого;
2* |
35 |
1.Предыстория вычислительной техники
•если в b была команда (т. e. слово c единичным первым разрядом), то вместо 13 адресных разрядов содержимого этой ячейки записывались
13 первых значащих двоичных разрядов результата.
Таким образом, машина EDVAC была ,голностью автоматическим
программируемым вычислительным средство .
Анализ машины EDVAC. Машина имела жесткую функциональную структуру. По своей архитектуре EDVAC отн эсится к классу SISD (Single Instruction stream / Single Data stream), если следовать классификации М. Флинна. В машине EDVAC одиночный по-,ок команд обрабатывал оди-
ночный поток данных (см. рис. 1.3).
Архитектурные особенности машины EDVAC:
•SISД-архитектура, синхронный метод уп авления устройствами;
•автоматизация вычислений (возможность хранения программы в памяти и ее автоматической модификации);
•последовательный способ обработки информации;
•фиксированность структуры (невозможность даже ручного реконфи-
гурирования, за исключением ВЗУ);
•конструктивная неоднородность.
Архитектурные решения , положенные в о снову EDVAC, привели к про-
стоте ее реализации: потребовалось около 3000 электронных ламп (вместо 18 000 в ENIAC). Уровень сложности и достигнутые технические характеристики (показатели производительности, емкости памяти и надежности) ЭВМ
вполне отвечали ypовню техники и потребностям 50-x годов ХХ столетия.
Всамом деле, машина EDVAC характеризовалась следующими параметрами:
•количество двоичных разрядов для представления чисел 32;
•тактовая частота 1 МГц;
•емкость оперативной памяти 21 в бит = 32 K байт.
Несмотря на последовательный характер работы , ВМ EDVAC не уступала по производительности ENIAC. Напри] ►ер, быстродействия ENIAC и
EDVAC при выполнении операций умножени q оценивались соответственно величинами: 357 опер./c (над 10-разрядными десятичными числами) и 1000 опер./c (над 32-разрядными двоичными числами).
Таким образом, электронные вычислительные машины ENIAC и
EDVAC отражают дуализм в развитии циф ровых средств информатики, говоря иначе, констатируют неизбежности двух начал: параллельных и последовательных архитектур.
1.3.4. Вычислительные машины M:ADAM и JOHNIAC
Первые три ЭВМ: M-Mark 1, EDSAC и EDVAC, безусловно, свидетельствовали o крупных достижениях электронной вычислительной техники.
36
1.4. Путь развития отечественной электронной вычислительной техники
Они стали прототипами для последующих разработок и показали технико-
экономическую эффективность ОЗУ на электронно-лучевых трубках и ли-
ни х задержки. Однако наибольшую популярность получили ОЗУ на трубках;
их использовали, пока не была внедрена память на ферритовьх кольцах.
Машина MADAM. Вычислительная машина MADAM (MAnchester
Digital Automatic Machine) является первой в мире коммерческой разработ-
кой, использовавшей память на электронно-лучевой трубке. Руководителем
проекта был A. Тьюринг, машина MADAM была построена в 1951 г. в Ве-
ликобритании.
Машина JOHNIAC. Вычислительная машина JOHNIAC была созда-
на в 1953 г. в Институте перспективных исследований США группой инженеров, возглавляемой дж. Бигелоу. Название машине было дано в честь дж. фон Неймана.
Во время работы над проектом EDVAC дж. фон Нейман обратил
внимание на перспективность применения памяти на электронно-лучевой трубке. Он предложил вариант такой памяти, использующий иконоскоп. (Иконоскоп телевизионная передающая трубка c накоплением электрического заряда на мозаичной светочувствительной мишени.) Предполагалось хранить информацию на внутренней поверхности электронно-лучевой трубки, что стало основой разработки новой ЭВМ.
дж. фон Нейман понимал, что машина c памятью на электроннолучевой трубке будет намного превосходить по быстpодействию все существовавшие тогда ЭВМ в основном по двум причинам. Во-первых, применение электростатической памяти обеспечивало непосредственный доступ к каждому разряду слова (тогда как в линии задержки разряд или все слово становились доступными лишь после прохождения их до конца этой линии). Во-вторых, стало возможным обрабатывать все разряды слова параллельно.
Машина JOHNIAC сыграла важную роль при создании в США термо-
ядерной (водородной) авиационной бомбы. Бомба была испытана в США в
1954 г. (Термоядерная бомба впервые была испытана в СССР 12 августа 1953 г.)
1.4. Путь развития отечественной электронной вычислительной техники
Рассмотрим подробно отечественные электронные средства обработки информации. Путь развития электронных вычислительных средств в СССР
был весьма тернист: он сопровождался нeвocпpиятиeм кибернетики в 1950-x
годах, a тaкжe работ по параллельным вычислениям и по параллельным cиc-
тeмaм обработки информации в 1960-x годах. Тем не менее в Советском
37
1. Предыстория вычислительной техники
Союзе были и крупные достижения: построе:аы ЭВМ и вычислительные комплексы, не уступавшие зарубежным аналог ам, созданы научные школы и вычислительная индустрия.
1.4.1. Малая электронная счетная машина
Первая ЭВМ в СССР и в континентальной Европе [2-4] МЭСМ (Малая Электронная Счетная Машина) была сконструирована в Лаборатории моделирования и вычислительной техники Ин;,титута электротехники Академии наук УССР (г. Киев). Работы по созданы ю МЭСМ были выполнены в 1948-1951 гг. и проводились под руководством основоположника отечественной электронной вычислительной техники C.A. Лебедева (1902-1974; академик АН СССР c 1953 г.; академик АН У ССР c 1945 г.). Быстродействие МЭСМ составляло 50 опер./c; емкость оперативной памяти 94 слова
(63 для программы и 31 для чисел, двои чных 17-разрядных); количе-
ство электронных ламп 6000; потребляемая мощность 25 кВт, занимаемaя площадь б0 м 2.
Основные архитектурные принципы пост оения ЭВМ были разработаны C.A. Лебедевым (независимо от работ дж. фон Н еймана) в 1947 г. [3, c. 264] :
—в состав ЭВМ должны входить арифмЕ -тическое устройство, память, устройство управления и устройство ввода-выгода;
—программа в машинных кодах должна храниться в той же памяти, что и числа;
—для представления чисел и команд должна применяться двоичная система счисления;
—вычисления должны выполняться автоматически в соответствии c программой, хранящейся в памяти;
—логические операции должны выполи гяться наряду c арифметическими операциями;
—память машины должна быть организована по иерархическому
принципу.
Функциональная структура МЭСМ стала прототипом для последующих отечественных универсальных ЭВМ. B состав МЭСМ входили устройство управления (УУ), арифметическое устройство (АУ), запоминающее устройство (ЗУ), входное устройство и вывс дное устройство (для печати результатов). Остановимся на особенностях аа хитектуры МЭСМ.
МЭСМ была универсальной трехадресн эй синхронной ЭВМ. Машина имела всего 13 команд, которые позволяли реализовать, в частности, следyющие арифметические и логические операц ии:
•сложение, вычитание, умножение и деление;
•сдвиг числа на заданное количество разрядов;
38
1.4.Путь развития отечественной электронной вычислительной техники
•сравнения двух чисел c учетом их знаков по их абсолютным величинам;
•сложение команд;
•передачу управления (из блока центрального управления в местное и
обратно);
•останов машины.
Команды и числа представлялись словами из 17 двоичных разрядов.
Форма представления чисел c фиксированной запятой, один из 17 разрядов использовался для знака.
Команды условных переходов, изменение масштабов чисел, контроль
исправности устройств в МЭСМ реализовывались программно. При пере-
., ., полнении разрядной сетки осуществлялся автоматический останов машины.
Преобразование двоичныx кодов в десятичные было реализовано схемно. Устройство управления МЭСМ было представлено совокупностью
блоков, среди которых, в частности:
• блок центрального управления (ЦУ), осуществлявший управление всеми операциями в машине и инициирование, a также завершение работы необходимых схем;
•блок управления командами, служивший для рассылки управляющих импульсов;
•блок управления операциями, определявший последовательность выполнения элементарных действий в арифметическом устройстве в соответствии c работой ЦУ;
•блок местного управления командами, обеспечивавший, в частности, работу магнитного запоминающего устройства.
Арифметическое устройство предназначалось для выполнения всех элементарных арифметических и логических операций. Оно включало накапливающий сумматор и два регистра на триггерах. B сyмматоре была реализована цепочка сквозных переносов..
Запоминающее устройство включало оперативное ЗУ и внешнее ЗУ. Оперативная память состояла из электронных запоминающих устройств для чисел (ЭЗЧ) и для команд (ЭЗК). Емкость ЭЗЧ была рассчитана на 31 число, a ЭЗК на 63 команды. Оперативная память была построена из ламповых
тpиггеров и содержала 2500 триодов и 1500 диодов. Кроме того, имелось долговременное штекерное запоминающее устройство, которое позволяло
вводить и хранить 31 число и 63 команды.
Внешнее ЗУ магнитный барабан емкостью 5 тыс. слов. Была преду - смотрена возможность подключения ЗУ на магнитной ленте (трехдорожечного магнитофона), которое могло использоваться для хранения и ввода подпрогpамм.
Тактовая частота МЭСМ составляла 5 кГц. Полное время одного т икла, вктпочавшего выборку двух чисел из ОЗУ, производство операции над ними,
39
1. Предыстория вычислительн техники
передачу результатов в память и прием следующ ой команды, занимало 17,6 мс для всех операций, кроме деления, которое состар ляло от 17,6 до 20,8 мс.
Технические характеристики МЭСМ:
•система счисления двоичная c фиксированной запятой;
•количество разрядов 17 (из них один знаковый);
• вид запоминающего устройства |
на триггерных ячейках (преду- |
||
смотрена возможность использования магнитного барабана); |
|
||
• емкость запоминающего устройства |
'а4 слова (31 |
для чисел и |
|
63 для команд); |
|
|
|
• емкость штекерного устройства 94 слова (31 |
для чисел и 63 |
||
для команд); |
|
|
|
•проводимые операции: сложение, вычитание, умножение, деление, сдвиг, сравнение c учетом знака, сравнение по абсолют Кой величине, передача управ-
ления, передача чисел c магнитного барабана, сложение команд, останов;
•система команд тpехадресная;
• арифметическое устройство |
универсальное, параллельного дейст- |
вия, на триггерных ячейках; |
|
•скорость работы около 3000 опер. /мим ;
•система ввода чисел последовательная;
• ввод исходных данных c перфораци энных карт или посредством набора кодов на штекерном коммутаторе;
•вывод результатов фотографированиЕ: или посредством электромеханического печатающего устройства;
•контроль программный;
• определение неисправностей |
специальными тестами и переводом |
на ручную или полуавтоматическую работу; |
|
• количество электронных ламп: триодов около 3500, диодов 2500; |
|
|
•потребляемаямощность25кВт; |
• площадь помещения 60 м 2 |
[3, c. 76 или 4, c. 349]. |
Машина МЭСМ явилась предвестницей ряда (семейства) быстродействующих ЭВМ, известных как БЭСМ. B процессе создания МЭСМ разрабатывaлись, монтировались и опробовaлись быстродействующие устройства
иузлы для БЭСМ.
1.4.2.Быстродействующие электронные счетные машины
БЭСМ-1 и БЭСМ.-2
Главным конструктором машин семейства БЭСМ был академик C.A. Лебедев (БЭСМ Быстродействующая Электронная Счетная Машина).
40
