![](/user_photo/_userpic.png)
книги из ГПНТБ / Королев, Л. Н. Структуры ЭВМ и их математическое обеспечение учебное пособие
.pdfзадача. Например, если для задачи требуется гораздо больше памяти, чем объем оперативного ЗУ, приходится организовывать частые обращения к медленным внешним запоминающим устройствам, и общее время решения задачи определяется временем работы внешних уст ройств. О производительности ЭВМ при решении опре деленного круга задач можно судить лишь по сово купности нескольких параметров: скорости арифметиче ского устройства, объему оперативной памяти, характе ристикам внешних запоминающих и вводных-выводных устройств.
Основные характеристики некоторых из машин пер вого поколения таковы:
1. Машина БЭСМ-1 (1953 г.). Емкость памяти — 2048 слов; скорость — 7000—8000 операций/сек; разряд ность — 39 разрядов; арифметика — двоичная с плаваю щей запятой; система команд — трехадресная; устройство ввода — перфолента двухдорожечная; объем аппара туры — около 4000 ламп; внешние ЗУ — барабаны на 5120 слов; магнитная лента — до 120 000 слов; вывод на быструю цифровую печать — 300 строк в минуту.
2.Машина БЭСМ-2 (1959 г.). Отличается от БЗСМ-1 расширенным набором команд и увеличенной скоростью печати (900 строк в минуту).
3.Машина «Стрела» (1953 г.). Объем оперативной па мяти — 2047 слов (память электростатическая); разряд
ность — 43; скорость — 2000—3000 операцнй/mc. «Стре ла» — трехадресная машина, выполняющая действия с плавающей запятой и с достаточно большим диапазоном представления чисел (2±64).
4. Машина «Минск-1» (1960 г.) универсальная, об щего назначения. Разрядность — 31 двоичный разряд (бит). Объем оперативного запоминающего устройства — от 1024 до 2048 слов. Время обращения к запоминающему
устройству — 40 мксек; время: сложения — 54 |
мксек, |
умножения — 1200 мксек, деления — 1500 мксек, |
логи |
ческих операций — 35 мксек.
Эти цифры говорят о том, что быстродействие АУ машины «Минск-1» равно 1,5—5 тысячам операций в се кунду.
Внешняя память — на магнитной ленте, с плотностью
записи 7 импульсов на |
1 мм, емкость одной ленты — |
64 зоны по 1024 слова, |
скорость протяжки— 1,2 м/сек. |
20
Общая емкость — до 4 лентопротяжных механизмов, ■г. е. до 256К слов *). Устройство ввода — с бумажной перфоленты со скоростью 50 знаков в секунду. Уст ройство вывода — быстропечатающий механизм со ско ростью 20 строк в секунду (БПМ-20).
Машина работает в двоичной системе счисления с фик сированной запятой. Числа представлены в обратном коде. Система команд — двухадресная.
5. Машина М-20, получившая широкое признание и нашедшая сферу применения во многих областях науки и техники, начала серийно выпускаться в 1959 г. Главный конструктор машины — академик С. А. Лебедев. Для своего времени М-20 была одной из самых быстродейст вующих машин первого поколения в мире. Технические характеристики М-20 таковы:
Объем оперативной памяти — 4096 слов; быстродей ствие — 20 000 операций/mc; время выборки из оператив
ной памяти — 9 мксек-, |
время |
сложения |
с плавающей |
||
запятой — 28,5 |
мксек; |
время |
умножения — 70 |
мксек-, |
|
разрядная сетка для чисел |
и команд — 45; |
система |
|||
команд — трехадресная; |
количество |
используемых |
|||
команд — 52. |
Внешние |
запоминающие |
устройства — |
три магнитных барабана по 4096 слов каждый, четыре магнитофона емкостью по 75К каждый. Ввод — с 80-ко- лонных перфокарт (60 карт в минуту). Вывод — на перфокарты и на быструю печать (20 строк/сек).
В машине предусмотрено некоторое совмещение опе раций. Пока арифметическое устройство занято выпол нением некоторого действия, производится подготовка к выполнению следующей команды. Предусмотрена воз можность совмещения операций вывода с работой цент рального процессора. Информация, предназначенная на вывод, сначала записывается на барабан, а затем произ водится независимая выдача непосредственно с барабана на печать. Отличительной особенностью системы команд машины М-20 является использование индексной ариф метики, так называемого регистра РА, что позволяет во многих случаях избавиться от переменных команд и дает широкие возможности по организации циклов. Развер
*) При описании объемов запоминающих устройств мы, следуя многим авторам, будем упоминать коэффициент К =1024=210 («двоич ная тысяча»).
21
нутая система условных и безусловных переходов осно вана на анализе признаков, вырабатываемых предыду щей операцией.
В машине аппаратно выполняется извлечение корня. Интересно арифметическое устройство с усложненной схемой, резко увеличивающей скорость выполнения опе раций умножения и сложения. Например, при операции умножения используется алгоритм умножения сразу на четыре разряда. При сложении работает схема анализа цепочек переносов и их однотактного выполнения.
Именно на машине М-20 было решено большинство теоретических и прикладных задач, связанных с разви тием самых передовых областей науки и техники того времени.
Краткие технические характеристики, приведенные для нескольких машин первого поколения, дают пред ставление о том, каковы они были.
Что касается основных особенностей структуры этих машин, то это машины обычно с жестким циклом выпол нения операций, работающие без совмещения. Это озна чает, что следующая команда начинает выполняться только после завершения предыдущей операции. Для большинства этих машин характерно, что во время ввода с перфолент (перфокарт) центральный процессор про стаивает. Его арифметическое устройство занимается перекачкой информации от внешних устройств в ЗУ машины.
Период разработки и создания машин первого лампо вого поколения продолжался до 1959 г.
Но это только техническая сторона, касающаяся машин первого поколения. Наверное, более интересна другая характеристика — стиль их использования, стиль программирования, особенности их математиче ского обеспечения.
Для них характерен «открытый» режим использова ния, который состоял в том, что математик, составивший программу, садился за пульт управления машиной и производил необходимые вычисления. Чаще всего ра бота за пультом была связана с отладкой своей собствен ной программы — наиболее емким по времени процес сом. Класс математика-программиста определялся его умением быстро находить и исправлять ошибки в своих программах, хорошо ориентироваться за пультом ЭВМ.
22
Этот же период характерен большим вниманием к тех нике составления стандартных и типовых программ, к методам накопления и использования библиотеки про грамм во внешней памяти машины.
В50-х годах для многих машин математиками были разработаны и внедрены в практику системы использо вания библиотечных подпрограмм. В это же время нача лась разработка входных символических языков как средства ускорения процесса составления программ и сокращения времени отладки.
В1954 г. в Советском Союзе были составлены первые программы по трансляции арифметических выражений
вкод команды машины. Эти работы были проведены А. П. Ершовым. В них принимал участие также и автор этих строк. Работы носили в это время, разумеется, чисто экспериментальный характер, так как в составе обору дования тогдашних машин не было средств ввода симво лической буквенно-цифровой информации, и символи ческий материал приходилось кодировать в двоичной либо в восьмеричной форме, чтобы внести его в машину.
Опыт использования машин первого поколения, опыт составления программ, их отладки и организации счета дал очень много для развития структур машин следую щих поколений. Прежде всего, стало ясно, что сущест вует огромный разрыв между временем, затрачиваемым на разработку программ, и временем счета. Стала оче видной диспропорция между временем, в которое ЭВМ занята вычислением, и временем, когда она исполь зуется для отладки. В ряде случаев для отладки про грамм использовалось более 50% машинного времени. Н. Винер в одной из своих статей, относящихся к концу 50-х годов, указывал на то, например, что машинный парк США эффективно используется лишь на 10%. Все это потребовало отыскивать пути для преодоления возник ших в этой области проблем.
Началась интенсивная разработка средств автомати зации программирования, создание входных языков разных уровней, создание систем обслуживающих про грамм, упрощающих работу на машине и увеличиваю щих эффективность ее использования. Это, в свою оче редь, потребовало значительных изменений в структурах ЭВМ, направленных на то, чтобы приблизить структуру машин к требованиям, которые возникли из опыта их
23
эксплуатации, Если с технической точки зрения переход к машинам второго поколения четко очерчен переходом на полупроводники, то с точки зрения структуры резкую
грань |
провести, по-видимому, трудно. |
Со |
структурной точки зрения переход к машинам |
второго поколения связан с разработкой такой логики ЭВМ, которая позволяет совмещать операции по вводу и выводу с вычислениями на центральном процессоре; связан с увеличением объемов оперативного и внешних запоминающих устройств, с созданием широкоформатных алфавитно-цифровых печатающих устройств, с созданием алфавитно-цифровых устройств подготовки данных, с вве дением в состав команд машин средств, позволяющих более просто оперировать с нечисловой, символьной информацией.
3.2. Машины второго поколения. Итак, согласно принятому делению к машинам второго поколения отно сятся транзисторные машины, с расширенными возмож ностями по вводу-выводу, с увеличенным объемом за поминающих устройств, с развитыми системами програм мирования.
Для стиля их использования характерен так назы ваемый «закрытый режим», когда математик-програм мист не допускается в машинный зал. Свою программу, обычно записанную на языке высокого уровня, про граммист отдает в группу обслуживания, которая зани мается дальнейшей обработкой его задачи — перфори рованием и пропуском на машине. Для того чтобы сделать этот процесс более эффективным, необходимо прежде всего предоставить программисту или тому, кто поль зуется машиной — пользователю, средства автономной отладки и средства управления режимом работы задачи.
Конец 50-х годов характерен сильным развитием не только языков программирования, но, что очень важно, мониторных систем.
Современный транслятор включает три части; 1. Собственно транслятор, который готовит либо
модули загрузки (объективную программу), либо про грамму в машинных кодах, проводя при этом синтакси ческий и семантический контроль исходной информации.
2. Административную систему, которая состоит из ряда подпрограмм, работающих на стадии выполнения программы.
24
3. Мониторную систему, управляющую режимом трансляции и исполнения.
К административной системе можно отнести блоки, занимающиеся динамическим распределением памяти во время счета, подпрограммы вычисления индексов и выборки элементов из массивов, подпрограммы, органи зующие контроль границ массивов, подпрограммы, ор ганизующие передачу параметров процедурам, их вызов
иобращение к ним.
Вфункции мониторной системы входит управление режимами транслирующей и административной систем. Мониторная система получает директивы от управляю щих карт. Эти директивы носят характер инструкций по организации счета. Например: «оттранслировать и выдать оттранслированную программу на карты», «от транслировать и записать готовую программу в библио теку», «выдать на печать всю информацию по стадиям трансляции», «пустить задачу на счет», «пропустить про грамму в режиме отладки» и т. д. Приведенных примеров директив мониторной системе вполне достаточно, чтобы
понять ее назначение. Это, по существу, инструкции некоему оператору, а мониторная система играет роль этого оператора. Собственно, мониторные системы и выросшие из них современные операционные системы — вещи весьма близкие, и тем не менее, как мы увидим дальше, между ними существуют различия, позволяю щие рассматривать их отдельно.
3.3. Машины третьего и четвертого поколений. Ма шины третьего поколения, которые пришли на смену машинам второго поколения, сточки зрения своей струк туры отличаются значительно большими возможностями, предоставляемыми пользователю. Многие функции, вы полнявшиеся в машинах второго поколения программным путем, в машинах третьего поколения возложены на аппаратуру. Дальнейшее развитие в машинах третьего поколения получила система прерываний, защита па мяти, механизмы динамического распределения памяти. Пожалуй, одна из главных характеристик машин третьего поколения связана с появлением семейств программно-преемственных машин. Модели одного такого семейства покрывают широкий диапазон по быстродействию и производительности, предоставляют широкий выбор для экономного использования вычн-
25
слительных мощностей в различных сферах примене ния ЭВМ.
Основное содержание книги посвящено рассмотрению структур машин третьего поколения, и ниже мы более подробно проанализируем их основные черты. Следует отметить, что многие машины, которые по своей электро нике относятся к ЭВМ второго поколения, обладают всеми структурными особенностями, свойственными ма шинам третьего поколения. В этом смысле деление на поколения достаточно условно.
В настоящее время на смену машинам третьего поко ления приходят так называемые машины четвертого поколения. С точки зрения структуры машины этого грядущего поколения представляют собой многопро цессорные вычислительные комплексы, работающие на общую память и общее поле внешних устройств. Системы машин четвертого поколения служат для объединения вычислительных мощностей в единые центры, соединен ные с многочисленными абонентами современными ли ниями связи. Речь идет, таким образом, о коммунальном использовании вычислительных средств, о предоставле нии возможности массовому пользователю, будь то от дельный человек или группа исследователей, связываться из любого места страны по телеграфу или телефону с центром, выдавать задания и получать необходимый ответ в заданный срок. Создание систем коммунального использования вычислительных средств требует не только дальнейшего развития структур ЭВМ, но и решения многочисленных задач общегосударственного уровня. А именно: необходимо и количественное и качественное развитие государственных средств связи, покрывающих всю страну, необходимо создать целую индустрию по вы пуску так называемого терминального (оконечного) обо рудования, обеспечивающего выдачу результатов и прием сообщений в форме, пригодной для ввода в машину и для получения результатов. Причем это терминальное оборудование должно быть, с одной стороны, достаточно дешевым, с другой стороны, должно уметь выполнять достаточно сложные действия по редактированию вво димой и выводимой по линиям связи информации и по управлению вводными и выводными устройствами тер минала.
ЧАСТЬ П Е Р В А Я
ОТЕЧЕСТВЕННАЯ ВЫЧИСЛИТЕЛЬНАЯ ТЕХНИКА
Г л а в а 1
ТЕХНИЧЕСКИЕ ПАРАМЕТРЫ НЕКОТОРЫХ ОТЕЧЕСТВЕННЫХ МАШИН ВТОРОГО ПОКОЛЕНИЯ
ИИХ СТРУКТУРНЫЕ ОСОБЕННОСТИ
§1. Малые электронные машины
ВСоветском Союзе серийно выпускались и выпу скаются сейчас следующие малые электронные вычисли
тельные машины: «Наири», МИР (1, 2), «Проминь-М», «Проминь-2». Это — малогабаритные машины, выпол ненные на полупроводниках, обладают небольшим быстродействием, около 1000 операций/mc. Они служат для выполнения сравнительно несложных инженерных расчетов в КБ и НИИ. Все эти машины построены по принципу микропрограммного управления и обычно работают в режиме программно-аппаратной интерпрета ции входного языка, ориентированного на инженерные расчеты.
По-видимому, принцип микропрограммного управле ния впервые в Советском Союзе был применен при созда нии этих малых машин. В чем же он состоит и какое его отличие от так называемой «схемной» реализации уст ройств управления большинства машин второго и отчасти третьего поколений?
Выполнение любой простой операции, например сло жения, для машины выливается в довольно емкую после довательность элементарных действий: сдвигов на один разряд при выравнивании порядков, проверок условий
27
окончания выравнивания порядков, сложения мантисс, анализа цепочек переносов, проверки условий денорма лизации, формирования результата на сумматоре и т. д. и т. п. Такая последовательность действий управляется последовательностью сигналов, вырабатываемых уст ройством управления.
Если проанализировать совокупность всех элемен тарных действий, которые выполняются на всей сово купности операций, то их окажется не столь много! это главным образом сдвиги, передачи информации с од ного регистра на другой, логические поразрядные опе рации, проверки условий. Эти действия можно задавать последовательностью микрокоманд, которые, так же как и обычные команды, могут храниться в оперативной па мяти или в специальной памяти, допускающей быструю выборку. Тогда привычные действия, указываемые в командах большинства машин, можно программировать, задавая соответствующую последовательность микро команд. Сами микрокоманды построены с учетом того, чтобы информация, закодированная в них, дешифриро валась и «понималась» устройством управления наиболее простым способом. Каждая микрокоманда обычно зани мает 2—3 сотни разрядов, и каждый ее разряд несет индивидуальную логическую нагрузку, смысл которой формулируется в терминах управляющих сигналов. Например, некий разряд микрокоманды может означать сигнал очистки (обнуления) какого-то регистра, посылку сигнала в цепочку сдвигов, посылку сигнала в цепь пере носов и т. д. Организация управления по микропро граммному принципу открывает широкие возможности для гибкого изменения возможностей машины и набора тех действий, которые она выполняет. Схемное построе ние открывает возможность выполнять многие действия значительно быстрее, чем микропрограммирование, но суживает возможности расширения репертуара команд, жестко закоммутированных в схемах управления. Умест
на аналогия с методом постройки зданий |
из кирпичей |
и зданий из крупных панелей. Из кирпичей |
можно пост |
роить здание любой произвольной архитектуры, из крупных панелей можно строить здания только опреде ленного типа — правда, значительно быстрее.
В состав математического обеспечения малых вычи слительных машин входят пакеты подпрограмм, реали
28
зующих алгоритмы, часто встречающиеся в практике инженерных расчетов.
Одним из важных достоинств малых машин является их дешевизна и простота использования. Это наклады вает особые условия на разработку математического обеспечения этих машин. Дешевизна по необходимости определяет существенные ограничения на технические параметры таких машин — их оборудование должно быть минимальным по стоимости и, соответственно, по объему.
Перед разработчиками математического обеспечения встает трудная задача, требующая особой изобретатель
ности и |
кропотливого труда,— задача «вложения» как |
|
можно |
более широких математических |
возможностей |
в узкие |
рамки технических ограничений |
аппаратуры |
машины. Для решения этой задачи требуется разработка таких алгоритмов и численных методов, программы ко торых занимали бы минимальное место в памяти. Вторая задача — учитывая небольшое быстродействие малых ЭВМ, отыскать алгоритмы решения, требующие по воз можности минимального числа операций. Эти две за дачи обычно противоречивы: алгоритмы, минимизирую щие пространство памяти, как правило, увеличивают время счета. Условия для отыскания компромисса априори плохо определены, так как разработчики математического обеспечения и аппаратуры стараются создать машину широкого профиля применения. Соответ ственно возникает задача анализа частоты применений тех или иных численных методов в инженерных расчетах. Однако трудность состоит в том, что внедрение ЭВМ в инженерные расчеты резко меняет картину примени мости численных методов. Эти рассуждения общего ха рактера приведены для того, чтобы у читателей не созда лось впечатление, что понятию «малая машина» отвечает понятие «простое математическое обеспечение». В неко тором смысле программное оборудование малых машин более сложно.
1.1. Машины «Проминь», МИР, МИР-1 и -2. Машина «Проминь», разработанная в Институте кибернетики АН УССР под руководством академика В. М. Глушкова, представляет собой малогабаритную вычислительную машину, работающую в двоично-десятичной системе счи сления с 6 десятичными знаками, с плавающей запятой.
29