Файл: Дроздов Е.А. Многопрограммные цифровые вычислительные машины.pdf

ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 11.04.2024

Просмотров: 312

Скачиваний: 0

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

выполнения; обычно запоминается содержимое программно-доступ­ ных регистров (СчК, ИРг, регистров АУ и т. д.), т. е. таких, состоя­ ния которых могут изменяться при выполнении прерывающей про­ граммы;

— выполнение прерывающей программы; оно осуществляется в обычной последовательности действий по расшифровке и исполне­ нию отдельных команд;

— возврат к прерванной программе; он заключается в восста­ новлении состояния прерванной программы путем пересылки ин­ формации из фиксированных ячеек ОЗУ в соответствующие про­ граммно-доступные регистры и из регистров-дублеров в основные регистры АУ и УУ.

777 ■ ш .

ЗП 1

/7/7 - ш

Тр, Я

ь ! Н

Ж ,

ъ

_____________ _

t

! t

t 3

Рис. 9.17. Общая временная диаграмма прерывания

Такой последовательности действий отвечает общая временная диаграмма прерывания, приведенная на рис. 9.17. При выполнении текущей программы ТП в момент времени f\ поступает сигнал за­ проса на прерывание ЗП. Переход к прерывающей программе ПП осуществляется не сразу, так как необходимо время на анализ за­ проса и окончание действий по выполнению команды прерываемой программы. Выполнение прерывающей программы начинается в мо­ мент времени t2, который лишь в идеальном случае совпадает с моментом окончания действий по текущей прерываемой программе. Время, протекающее от /] до t2, называется временем реакции на запрос прерывания; на рис. 9.17 оно обозначено как тр; т3 — время, необходимое для запоминания состояния текущей прерываемой

программы;

тп. п— время

выполнения

собственно прерывающей

программы;

тв — время,

необходимое

для восстановления состоя­

ния прерванной программы.

 

Время реакции -ср и время обслуживания прерывания

А)бсл А) “Ь

являются важными характеристиками системы прерываний как комплекса аппаратно-программных средств, так как характеризуют потери машинного времени на организацию процесса прерывания и «быстродействие» ЦВМ по обслуживанию запросов на преры­ вания.

302


Важной характеристикой системы прерываний и ее составной части — блока прерываний — считается также глубина прерыва­ ний, которая определяется максимальным количеством программ, которые могут прерывать одна другую. При глубине прерываний у= 0 выполнение первой прерывающей программы не может пре­ рываться никакой другой программой. При у=1 возможно пре­ рывание первой прерывающей программы второй прерывающей программой и т. д.

Степень важности запросов на прерывания в общем случае за­ висит не от времени их поступления в блок прерываний, а от ха­ рактера источников запросов. Поэтому каждому источнику за-

Рис. 9.18. Временная диаграмма прерываний с учетом приори­ тетов

просов на прерывания присваивается постоянный, как правило, уровень приоритетности. Принимается, что нулевой уровень обла­ дает наивысшим приоритетом. Прерывание нулевого уровня, т. е. прерывание, отвечающее источнику запросов с нулевым уровнем приоритетности, может прервать любую из программ, отвечающих уровням 1, 2, ..., т при выделении т + 1 уровней. Прерывание первого уровня может прервать любую из программ, отвечающих уровням 2, 3, ..., т, но не может прервать программу, отвечаю­ щую уровню 0, и т. д. Прерывания одинакового уровня произво­ дятся в порядке поступления на них запросов; текущая рабочая программа имеет, как правило, низший приоритет, т. е. она отве­ чает условному уровню т + 1.

Обслуживание запросов на прерывания с учетом их приорите­

тов иллюстрируется общей временной диаграммой

(рис. 9.18).

ЗП-2 обозначает запрос прерывания

второго уровня,

ЗП-4 — за­

прос прерывания

четвертого

уровня,

ЗП-6 — запрос

прерывания

шестого уровня.

В связи с

введением приоритетов

фактическое

303


время Тр. реакции на отдельные запросы увеличивается посколь­

ку очередь на обслуживание формируется в соответствии с при­ нятыми приоритетными уровнями.

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

Структура блоков прерываний во многом зависит от общих ха­ рактеристик системы прерываний и приоритетов, принятой для дан­ ной ЦВМ, а также от принятых принципов формирования адреса первой команды прерывающей программы. Вариант схемы блока прерываний при 7 ф 0 и аппаратно-программном формировании адреса первой команды прерывающей программы приведен на рис. 9.19. Эта схема обеспечивает учет приоритетности запросов на прерывания и защиту от прерываний по коду маски.

Код прерываний, составляемый из сигналов прерываний, вво­ дится в регистр прерываний РгПр. Каждый триггер этого регистра отвечает вполне определенному источнику сигналов прерываний. Наивысший приоритет имеет сигнал, значение которого фиксирует­ ся триггером Тг 1. Для хранения кода маски, или кода защиты от прерываний, используется регистр маски РгМ, разрядность кото­ рого в общем случае равна разрядности регистра РгПр. Поскольку система имеет ненулевую глубину прерываний, то содержимое РгПр и РгМ должно сохраняться для каждой прерываемой про­ граммы. Выдача кодов маски и прерываний в ОЗУ осуществляется через группы вентилей В| и В= соответственно. Управляющие сиг­ налы УС1 и УС2, как и все остальные управляющие сигналы, фор­ мируются в блоке микрокоманд устройства управления.

Выделение сигнала прерывания, имеющего наибольший приори­ тет, осуществляется посредством последовательной цепочки эле­ ментов ИЛИ и И, которые управляются триггерами регистров РгМ и РгПр. Начало работы по выявлению и выделению такого сигнала определяется моментом поступления сигнала УСо, выра­ батываемого в соответствии с принятыми принципами определения возможных моментов прерываний. Цепочка из элементов И и ИЛИ составлена так, что, когда все возможные в данной ситуации пре­ рывания замаскированы, ни одна из входных для диодной сетки ДС шин не возбуждается. В этом случае вырабатывается только сигнал выдачи команды СВ К, разрешающий выборку очередной команды из выполняемой устройством управления последователь­ ности, т. е. данной текущей программы. Сигнал СВК вырабаты-

304


Код ОА.в БУК

Рис. 9.19. Блок прерываний

вается также тогда, когда все триггеры РгПр находятся в состоя­ нии нуля.

Возбуждение одной из входных шин ДС происходит только тогда, когда хотя бы в одном и том же разряде регистров РгПр и РгМ содержатся единицы. Пусть Тг1 и Тг2 этих регистров нахо­ дятся в состоянии 1. Тогда УС0 проходит через И| и возбуждает соответствующую входную для ДС шину. Элементы Hj и V[\ по

одному из выходов закрыты, поэтому на выходе Иг сигнал не фор­ мируется; сигнал СВК также не формируется.

Диодная сетка выполняет функции шифратора номера выде­ ленного сигнала, или причины прерывания. При возбуждении од­ ной из входных ее шин на выходах ДС формируется вполне опре­ деленный двоичный код. Образуемый на выходах ДС код причины прерывания вводится через группу вентилей В4 в регистр РгКПр. Этот код, выдаваемый в БУК через группу вентилей В5, обычно используется как код относительного адреса. При суммировании его с некоторой константой образуется действительный адрес пер­ вой команды прерывающей программы. Код из РгКПр может по­ даваться через вентили группы Вб на входы дешифратора ДшКПр, что обеспечивает в требуемый момент времени.гашение в РгПр сиг­ нала, по которому осуществлено прерывание; это действие обычно выполняется только после реализации соответствующей прерываю­ щей программы.

Организация всех действий по осуществлению прерывания на­ чинается с момента формирования сигнала выявленного прерыва­ ния СВПр. Этот сигнал может быть сформирован только при наличии незамаскированного прерывания и нахождении триггера запрета ТгЗп в состоянии 1. Сброс этого триггера в состояние О может осуществляться сигналом со схем контроля; это отвечает случаю запрета любых прерываний при выполнении тестовых и диагностических программ.


Г л а в а X

ОРГАНИЗАЦИЯ И РАСПРЕДЕЛЕНИЕ ПАМЯТИ МНОГОПРОГРАММНЫХ ЦВМ

§ 10.1. Структура запоминающих устройств многопрограммных ЦВМ

Состав запоминающих устройств и их структура определяются, в первую очередь, назначением соответствующих многопрограмм­ ных ЦВМ. При этом основные различия в составе и структуре за­ поминающих устройств имеют место для специализированных управляющих и универсальных многопрограммных ЦВМ.

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

Программы, реализуемые управляющей многопрограммной ЦВМ рассматриваемого типа, в процессе ее эксплуатации не из­ меняются. Поэтому они могут размещаться в постоянном запоми­ нающем устройстве; там же размещается и управляющая про­ грамма, определяющая необходимую последовательность выпол­ нения рабочих программ. Тогда оперативное ЗУ (оперативная память) используется в основном для размещения исходных дан­ ных, промежуточных и окончательных результатов вычислений; к оперативной памяти управляющей многопрограммной ЦВМ кроме собственно оперативного ЗУ относят также отдельные регистры,

11

307