![](/user_photo/_userpic.png)
книги из ГПНТБ / Королев, Л. Н. Структуры ЭВМ и их математическое обеспечение учебное пособие
.pdfрийных процессоров, а исполняется она аппаратурой центрального процессора.
Периферийный процессор, выполняя данную коман ду, вырабатывает некоторый адрес главной памяти. Уст ройство управления после этого выполняет следующую работу: содержимое всех управляющих регистров ЦП, а именно регистров Р, RA, FL, ЕМ, а также содержимое всех адресных, индексных и регистров операндов пере сылается в определенном порядке в массив главной па мяти, указанный в команде перехода со сменой. Одно временно из той же самой области памяти хранившаяся там информация в той же последовательности рассы лается по главным регистрам центрального процессора. Происходит, таким образом, процесс обмена содержимого указанного участка памяти с быстрыми регистрами. Это эквивалентно запоминанию состояния программы, прер ванной командой «перехода со сменой задач», и перехо дом к решению другой задачи, состояние которой хра нилось в этом же участке запоминающего устройства. Очевидно, если в дальнейшем возникнет необходимость продолжить выполнение прерванной программы, следу ет дать команду перехода с адресом этого участка памяти.
Такая схема идеально работает, если в мультипрог раммном режиме идут только две задачи. Когда задач несколько, использование этой схемы более сложно: в за висимости от динамики, переключения с задачи на зада чу, информация об одной и той же прерванной задаче может каждый раз располагаться в разных участках памяти. Операционной системе следует весьма внима тельно отслеживать эту динамику.
§ 2. Периферийные и управляющие процессоры
Как уже было сказано, в состав центральной части машины, центрального вычислителя, входят 10 перифе рийных процессоров, работающих независимо от цент рального процессора и друг от друга.
Центральный вычислитель может быть связан с внеш ним миром 12 мощными селекторными каналами, работающими в дуплексном режиме,т. е. способными одно временно принимать и выдавать информацию. Прием-пе редача по каждому такому каналу производится парал лельными наборами из 12 информационных двоичных
23D
разрядов. Пропускная способность каждого такого ка нала достигает 2 млн. битов в секунду. Любой из 10 внешних (периферийных) процессоров может обслужи вать один из 12 этих каналов, которые не имеют жесткого закрепления за каким-либо одним из процессоров. С ка налом могут быть связаны внешние устройства или уст ройства, управляющие группой внешних устройств. В ти повой конфигурации системы CDC-6000 обычно обслу живаемые каналы распределены между устройствами следующим образом.
Один канал выделен для связи с пультом управления системой. В состав этого пульта входят два экрана (дис плея), предназначенные для отражения на электронно лучевых трубках состояния системы и вывода графи ческой и текстовой информации. Два канала выделены для связи с управлением дисками.
Еще один канал связан с устройствами вывода, с ал фавитно-цифровым печатающим устройством и устройст вом вывода на перфокарты.
Выделен канал на обслуживание устройств ввода. Пять каналов выделено для связи с магнитными лента-
'ми. Наконец, выделен один канал для связи с машинойсателлитом и с телекоммуникационным оборудованием.
Распределение внешних устройств между каналами может меняться от системы к системе. Каждый из внеш них процессоров, как уже говорилось, может в любой данный момент взять на себя обслуживание любого ка нала, но в конкретных системах обычно функции строго распределены между внешними процессорами как в смысле обслуживания каналов, так и в смысле функций
управления центральным процессором.
С каждым внешним процессором связана его индиви дуальная память объемом в 4096 12-разрядных слов,
вкоторой хранятся программы и массивы принимаемой
ивыдаваемой внешним абонентом информации.
Следует отметить, что все десять процессоров физи-
*чески имеют одно устройство управления, которое цикли чески обслуживает один процессор вслед за другим, так называемым кольцевым методом. Этим достигается зна чительная экономия оборудования, а устройство управ ления столь быстро работает, что при этом делении вре мени обслуживания между десятью процессорами ско рость обслуживания каждого из них достаточно велика*
231
Грубо говоря, по быстродействию каждый из внешних процессоров в десять раз медленнее центрального про цессора, а все они, вместе взятые, по мощности сравнимы с ним. Работа по приему-выдаче информации по каналам, как правило, организована так, что принимаемая по ка налу информация сначала размещается блоками в собст венной памяти внешнего процессора, а затем специаль ными командами собирается в 60-разрядные слова и отправляется в главную память. Обратная последователь ность действий организуется при необходимости выдачи информации. Таким образом, и в этом случае предусмат ривается экономия обращений к центральному процес сору и его памяти. Каждый внешний процессор имеет в своем составе четыре управляющих регистра, играю щих важную роль при выполнении очередной команды.
A-регистр, или сумматор, длиной в 18 разрядов слу жит главным образом для суммирования адресных вели чин и, кроме того, несет много дополнительных нагру зок. Так, например, именно в A-регистре формируется адрес блока информации, используемого в команде пере хода с переключением задач.
Двенадцатиразрядный P-регистр служит в качестве счетчика команд внешнего процессора. Q-регистр со держит, как правило, 12-разрядную исполняемую коман ду либо 12-разрядное слово, считанное по адресу, содер жащемуся в команде.
Наконец, 9-разрядный К-регистр содержит информа цию о коде исполняемой операции или используется как управляющее слово в момент работы канала. Общее уст ройство управления внешними процессорами, последо вательно обращаясь к этим четырем регистрам, выпол няет действия, указанные в них, и меняет их содержание, подготовляя цикл выполнения следующей команды.
§ |
3. Репертуар команд центрального |
и |
внешних процессоров |
Основной единицей информации для центрального процессора является 60-разрядное слово. Арифметичес кое устройство может выполнять действия над числами, представленными с плавающей и фиксированной запя той. Числа с плавающей запятой представлены в виде
± 2 ±Л-М,
232
где для представления знака коэффициента служит 59-й разряд слова (нумерация разрядов от 0 до 59), для знака порядка — 58-й разряд, затем 10 разрядов использу ются для записи порядка п и 48 разрядов для записи М. Двоичная точка фиксирована после младшего нулевого разряда. Таким образом, М представлено целым чис лом. Соответственно диапазон представления чисел — 2±шз, что эквивалентно приблизительно 10±30°.
Арифметическое устройство может выполнять опера ции сложения и вычитания целых 60-разрядных чисел и целых 18-разрядных чисел, используемых в качестве адресов.
В состав операций, выполняемых центральным про цессором, входят 15 операций условных и безусловных переходов. Проверка условий связана с состоянием ука зываемых в команде регистров X,- и В,-. В состав булевых поразрядных логических операций входят команды: пе редача из регистра в регистр, логическое умножение, сложение и сравнение, передача отрицания. Логические операции определены только над Х-регистрами. Девять команд относятся к классу сдвигов; к их числу относятся 'также команды сборки и разборки по маске (упаковки и распаковки). Над числами с плавающей запятой опре делены шесть операций сложения и вычитания, включая сюда операции округления, три операции умножения и три операции деления, включая операцию приведения
кединице.
Врепертуар команд центрального процессора входят
также 24 операции адресной арифметики и 2 операции сложения (вычитания) длинных целых чисел.
Периферийный процессор может выполнять 64 раз личных команды, связанных с организацией ввода-вы вода, передачами информации. Набор арифметических действий весьма скуден: это, по существу, операции сло жения и вычитания 18-разрядных кодов и логические операции над кодами. Большое место в системе команд внешнего процессора отведено условным передачам по состоянию обслуживаемого канала. Определены пере дачи по условию активности канала, его неактивности, занятости и незанятости. Особое место занимают коман ды обращения к главной памяти центрального процессо ра по приему-передаче блоков данных из собственной памяти и обратно, а также команда передачи с переклю-
233
ченнем и команда считывания программного адреса. Эта последняя команда позволяет внешнему процессору оп росить счетчик команд центрального процессора и ус тановить, в каком состоянии он находится.
В отличие от центрального процессора, в системе команд внешних процессоров широко развита косвенная адресация операндов. Это и понятно, так как аппарат А- и В-регистров ЦП, отсутствующий во внешних про цессорах, по существу заменяет косвенные ссылки.
§ 4. Система математического обеспечения серии
CDC-6600
Главным элементом МО является операционная сис тема SIPROS (Si multaneous Processing Operating System)—
операционная система совместного процессирования). В функции управляющих программ этой системы входят обычные функции операционных систем: динамическое распределение ресурсов между программами, идущими в мультипрограммном и мультипроцессорном режиме, планирование потока задач в режиме пакетной обработки, управление вводом-выводом, программная реакция на сбои аппаратуры и диагностика неисправностей, управ ление связью с центральным пультом оператора, управ ление связью с аналоговыми устройствами и телекомму никационной связью.
Все эти функции выполняются внешними процессо рами и не отнимают времени у центрального процессора. В частности, один из внешних процессоров полностью занят организацией переключения с одной задачи на другую, приемом заказов на внешние обмены, т. е. несет функции диспетчера операционных систем. Один из внешних процессоров занимается обслуживанием эк ранов главного пульта системы. Пользуясь клавиату рой этого пульта, оператор системы может высветить на экранах информацию, указывающую состояние сис темы в любой данный момент. Он может увидеть, какие задачи находятся в системе, сколько времени они уже решаются, может запросить сведения о распределении памяти между программами, идущими в мультипрограм мном режиме. По заказу оператора на экранах можно наблюдать поведение переменных в динамике их счета, что бывает очень полезно для анализа скорости сходи
234
мости процессов вычислений. Оператор может на экране увидеть протокольные данные о загруженности системы, о числе решенных задач, о числе задач, ждущих своего решения. Функции операционной системы по организа ции связи с оператором, сбору статистики и обеспечению техники высвечивания на экранах требуемой информации весьма развиты.
Система |
программирования |
для |
машин серии |
|
CDC-6000 |
основана |
на языке |
ФОРТРАН — версии |
|
ФОРТРАНа-IV — с |
расширениями, |
учитывающими |
структурные особенности машин этой серии, а именно: в языке допускается использование имен регистров в ка честве идентификаторов переменных. Расширение сделано за счет возможности чередовать операторы ФОРТРАНа с операторами машинно-ориентированного языка ASCENT. Кроме того, язык расширен за счет макроко манд ввода-вывода, учитывающих возможности автома тического назначения буферов ввода-вывода.
В качестве языков более низкого уровня использует ся макроассемблер ASCENT, ориентированный на сис тему команд центрального процессора, и язык ASPER, ^ориентированный на систему команд внешнего процес сора. Именно на языке ASPER написаны основные блоки операционной системы.
Важной частью системы МО является система управ ления библиотекой LIBRIOUS. В библиотеке содержит ся большое число программ численных методов и прог рамм, обеспечивающих правильное функционирование системы в целом. В состав библиотеки входят програм мы управления вводом-выводом и служебные прог раммы.
Кроме перечисленных выше средств программирова ния, в состав МО серии 6000 входит расширенный язык COBOL-61 и интерпретатор системы команд машин IBM-7090/94. Этот интерпретатор сделан по требованию первых заказчиков машин CDC, которые до этого широко эксплуатировали довольно мощную машину второго по коления фирмы IBM, а именно 7090/94. Она в свое время использовалась главным образом для научных иссле дований, и почти во всех крупных физических лабора ториях. Для нее было создано очень богатое математи ческое обеспечение в части прикладных программ реше ния задач математической физики.
235
§ 5. Некоторые другие машины фирмы CDC
К числу наиболее известных машин этой фирмы отно сится машина CDC-7600, которая была создана для за мены машины CDC-6800, не вошедшей в серийное произ водство. CDC-7600 программно-преемственна с машинами серии 6000, но обладает более широкими возможностями в части мультипроцессорной организации. Быстродейст вие этой машины оценивается в 12 млн. операций/дас. Эта машина стала поступать заказчикам в 1969 г., и к настоящему времени их поставлено около двух де сятков.
В течение ряда лет фирма CDC вела разработку сверх быстродействующей многопроцессорной системы STAR. Первые сообщения об этой машине появились в 1969 г. Она предназначалась для поставки в Радиационную ла бораторию им. Лоуренса (Lawrence Radiation Labora tories). Ожидалось, что быстродействие STAR будет по рядка 50 млн. операций/mc. Затем, в 1970 г., фирма объя вила, что успехи в разработке этой машины позволяют получить быстродействие порядка 100 млн. операций/тс, и она получила название STAR-100. Такое большое быст родействие удалось получить за счет глубокого совме щения операций и значительного повышения параметров запоминающих устройств, усовершенствования логичес ких элементов. Сверхбыстродействующая память на ин тегральных схемах, непосредственно связанная с цент ральным процессором, обладает циклом обращения в 40 нсек. Память второго уровня, объемом около полумил лиона слов (32 млн. разрядов), разбита на 32 блока с независимым доступом, что обеспечивает высокие па раметры среднего времени обращения, несмотря на то что полный цикл каждого блока сравнительно неве лик — 1,6 мксек.
Вмашине широко использован принцип «водопрово да». Пожалуй, наиболее интересной является идея, реа лизованная в STAR-100, которая состоит в том, что од новременно в различных ее устройствах выполняются команды различных программ, не говоря уже о том, что выполнение команд одной программы максимально распараллелено.
В1972 г., по сообщениям фирмы, машина STAR-100 поступила в продажу. В то же время (1971 — 1972 гг.)
236
фирма приступила к разработке супермашины CDC-8600, которая должна превзойти по производительности STAR-100 в 4 раза. Эта машина, как предполагается, будет разрабатываться на дискретных элементах, так как необходимые очень высокие частоты Переключений логических элементов на интегральных схемй'Х пока еще недостижимы.
Кроме такого рода машин-гигантов, фирма CDC от дает дань выпуску машин малой и средней производи тельности, которые предназначаются для использования в качестве машин-сателлитов этих супермашин. В част ности, она выпустила машину средних возможностей
CDC-6200 и объявила о серии машин Cyber-70 (72, 73, 74, 76), которые должны заменить машины серий CDC6000 и CDC-7000. Фирма CDC тесно связана с правительст венными заказами и разрабатывает, кроме того, некото рые машины специального назначения.
В заключение следует еще раз подчеркнуть тот свое образный и оригинальный подход к разработке структур ЭВМ, которого придерживается фирма CDC, возглавляя целое направление, девиз которого можно сформулйро-
гвать, пожалуй, так: можно и нужно идти на усложнение структуры, если это повышает быстродействие; не сле дует усложнять структуру ради приближения к языкам высокого уровня.
З А К Л Ю Ч Е Н И Е
Принято делить ЭВМ на четыре поколения. Это деле ние с инженерной точки зрения четко разграничено: по коление ламповых машин, поколение машин на транзис торах и навесных деталях, поколение машин на интег ральных схемах и, наконец, поколение машин на больших интегральных схемах с уровнем интеграции больше 2000 активных элементов на одном кристалле.
С точки зрения архитектуры (структуры) ЭВМ также можно разделить на поколения, тесным образом связан ные с техническими возможностями их построения, так как эти технические возможности определяют такие важ ные характеристики ЭВМ, как быстродействие, объемы запоминающих устройств, возможности связи с внешними источниками информации (с каналами), надежность ра боты.
Однако принципиальные этапы в развитии структур ЭВМ более непосредственно связаны с теми требовани ями, которые возникли из опыта их применения в раз личных областях науки, техники, управления и произ водства.
Структуры ЭВМ менялись, отражая развитие рожден ных применением ЭВМ дисциплин, которые относятся к области численных методов, алгоритмических языков, операционных систем и систем управления.
Гораздо более трудно классифицировать структуры ЭВМ с этой точки зрения. Тем не менее можно сказать, что структура машин первого поколения в большей сте пени отражала именно потребности численных методов, потребности, связанные с обработкой числовой информа ции. В структурах ЭВМ второго поколения нашли свое
238
отражение требования алгоритмических языков и соот ветствующих систем программирования. Развитие ин дексной арифметики, приемов базирования адресов, косвенная адресация, магазинная (стековая) память, расширение возможностей по обработке символьной информации — вот те структурные характеристики ЭВМ, которые свойственны машинам второго поко ления.
Появление систем прерывания и связанных с ними изменений в структурах ЭВМ является заметной вехой
вразвитии ЭВМ. Машина из детерминированного уст ройства обработки заранее введенной в нее информации, благодаря системе прерываний, все более превращается
вавтомат, реагирующий на ситуации, которые разыгры ваются во внешней по отношению к ней среде, незави симо от нее или при ее активном участии. У ЭВМ поя вились сенсоры — органы восприятия внешней среды. Соответственно у ЭВМ появляются программы, которые реагируют целенаправленно на внешние события и со
бытия, протекающие «внутри» машины,— операционные системы. Именно операционные системы определяют стра тегию поведения ЭВМ в конкретных условиях ее исполь зования.
Для машин третьего поколения характерно развитие операционных систем, управляющих ресурсами ЭВМ с целью получения максимального эффекта использования оборудования в режиме поточной обработки, свойствен ной стилю использования ЭВМ в вычислительных цент рах. Идеи мультипрограммирования, идеи совмещения операций ввода-вывода, идеи параллелизма в обработке этапов решения одновременно нескольких задач привели к созданию ЭВМ, обладающих такими характеристиками, как наличие системы прерывания, защиты памяти, сов мещения работы нескольких устройств, привели к струк турному разграничению функций виртуальной и физи ческой памяти, к возникновению этих очень важных
хпонятий. На машинах третьего поколения возникли пер вые системы разделения времени, системы коллективного использования мощностей ЭВМ и получили дальнейшее развитие системы работы в реальном масштабе времени. Значение этих систем, этих режимов использования вы числительных мощностей трудно переоценить — это пер спективы развития ЭВМ, и это одновременно то, что
239