Изобретение относится к вычислительной технике, может найти применение при создании устройств контроля мультипроцессорных и мультипрограммных вычислительных систем и является усовершенствованием устройства по авт.св № 894713.
Цель изобретения - повышение быстродействия устройства за счет селекции прерываний от системных программ и прекращения модификации оставшегося времени выполнения пользовательской программы на период работы системных программ.
На чертеже представлена функциональная схема устройства.
Устройство содержит первый счетчик 1, суммирующий вход которого подключен к выходу генератора 2 импульсов, а выход переполнения является управляющим выходом 3 устройства, группу из К регистров -4, входную группу блоков 5 элементов И, выходную группу блоков 6 элементов И, второй счетчик 7, первый 8 и второй 9 дешифраторы, блок 10 элементов ИЛИ, первый 11 и второй 12 элементы ИЛИ, вход 13 сброса устройства, вход 14 восстановления устройства, вход 15 максимального времени выполнения программы, вход 16 прерывания устройства, третий дешифратор 17,третий счетчик 18, третий элемент ИЛИ 19, элемент НЕ 20, эле менты И 21 и 22. Устройство работает следующим образом.
В начале работы на вход 13 устройства подается сигнал, обнуляющий
сл
СП
ю
00 О5
N)
содержимое третьего счетчика 18.
При каждом исполнении программы в счетчик 1 программно заносится через информационные входы 15 устрой ства и блок 10 элементов ИЛИ дополнительный код максимального времени выполнения программы. В процессе выполнения программы на суммирующий вход счетчика 1 поступают импульсы от генератора 2 импульсов временных меток. Если время выполнения программы превосходит максимально допустимое, то в счетчике 1 формируется сигнал переполнения, который через управляющий выход 3 устройства поступает в систему прерываний вычислительной системы,, При нормальном ходе программы переполнение счетчика 1 не происходит„
Однако и при нормальном ходе программы при мультипрограммном режиме работы возможны прерывания данной программы за счет необходимости выполнения пользовательских программ с более высоким приоритетом или системных программ обработки прерываний от устройств вычислительной системы.
В первом случае возникает необходимость запоминания и восстановления оставшегося времени выполнения прерванных программ с тем, чтобы в счетчик 1 занести дополнительный код максимального времени выполнения прерывающей программы и иметь возможность продолжить в последующем выполнение прерванной программы.
Во втором случае необходимо лишь
приостановить про цесс модификации
и содержимого счетчика 1 на период ра
боты системной программы.
Сигналы прерывания поступают через второй информационный вход 16 устройства на третий дешифратор 17„ Управляющие сигналы на первом выходе дешифратора 17 появляются при поступлении на дешифратор сигналов прерывания от пользовательских программ с более высоким приоритетом, а на втором выходе - при поступлении сигналов прерывания от системных программ обработки прерываний от устройств вычислительной системы
Сигналы с первого выхода дешифратора 17 поступают на тактовый вход дешифратора 8. Входы первого 8 и второго 9 дешифраторов соединены с выходами второго счетчика 7 числа прерываний от пользовательских про0
5
0
5
0
5
0
5
0
5
грамм. При поступлении первого сигнала прерывания от пользовательской программы единичный сигнал формируется на первом выходе дешифратора 8, который поступает на управляющие входы первого входного блока элементов И 5 группы и осуществляет прием кода со счетчика 1 в первый регистр 4 группы. Одновременно сигнал с первого выхода дешифратора 8 через первый элемент ИЛИ 11 поступает на суммирующий вход счетчика 7 и увеличивает его содержимое на единицу. Вследствие этого при поступлении второго сигнала прерывания от пользовательской программы единичный сигнал формируется на втором выходе дешифратора 8, который осуществляет запись содержимого счетчика 1 во второй регистр 4 группы. После этого начинается выполнение пользовательской программы более высокого приоритета, при этом в счетчик 1 через входы 15 устройства и блок 10 элементов ИЛИ снова заносится дополнительный код максимально допустимого времени выполнения программы. При поступлении последующих сигналов прерываний от пользовательских программ работа схемы устройства аналогична описанной выше.
При поступлении К-го сигнала прерывания от пользовательской програм- - мы содержимое счетчика 1 переписывается в К-й регистр 4 группы.
При поступлении на вход 16 устройства сигнала прерывания от системной программы управляющий сигнал появляется на втором выходе дешифратора 17. Этот сигнал поступает на суммирующий вход счетчика 18 и увеличивает его содержимое на единицу. Таким образом, счетчик 18 содержит глубину прерываний системных программ Кроме того, сигнал с второго выхода дешифратора 17 поступает на останавливающий вход генератора 2. Генератор 2 останавливается, тем самым прекращается процесс модификации содержимого счетчика 1. При поступлении на вход 16 устройства последующих сигналов прерывания от системных программ устройство работает аналогично. Следует иметь в виду, что приоритеты системных программ различны, но приоритет любой системной программы обработки прерываний от устройств всегда выше приоритета любой пользовательской программы.
51552
При возвращении к обработке преранных пользовательских программ стройство работает следующим обраом.
Сигналы на восстановление от поль- овательских и системных программ оступают на четвертый управляющий ход 14 устройства. Если содержимое четчика 18 не равно нулю, то нуле- 10 вой сигнал с выхода обнуления счетчика 18 поступает на элемент ИЛИ 19, второй вход элемента И 22 и через элемент НЕ 20 на второй вход элемента И 22. Сигнал восстановления 1S с входа 14 поступает только на вычитающий вход счетчика 18. При этом происходит уменьшение содержимого счетчика 18 на единицу. Если в резуль- тате модификации содержимое счетчи- уп ка становится нулевым, то единичный сигнал с выхода обнуления счетчика 18 через элемент ИЛИ 19 запускает генератор 2, а также поступает через элемент НЕ 20 на второй вход 25 элемента И 21 и второй вход элемента И 22. Очередной сигнал восстановления поступает на первый вход элемента И 21, с выхода элемента И 21 - на тактовый вход дешифратора 9. Еди- 30 ничный сигнал формируется на выходе дешифратора 9 в соответствии с содержимым счетчика 7. Так, если последняя запись содержимого счетчика 1 была осуществлена в К-й регистр 4 группы, то при поступлении первого сигнала 5 восстановления единичный сигнал формируется на К-м выходе второго дешифратора 9, который поступает на управляющие входы К-го выходного блока 6 элементов И группы и осуществляет перепись содержимого К-го регистра в счетчик 1.
Одновременно этот же сигнал через элемент ИЛИ 12 поступает на вычитающий вход счетчика 7, уменьшая его содержимое на единицу. Вследствие этого при поступлении второго сигнала восстановления через управляющий вход 14 устройства единичный сигнал формируется на (К-1)-м выходе дешифра- тора 9, поступает на управляющие входы (К-1)-го выходного блока 6 элементов И группы и осуществляет перепись содержимого (К-1)-го регистра 4 группы в счетчик 1. Одновременно этот же сигнал через второй элемент ИЛИ 12 поступает на вычитающий вход
40
45
5 0 5
0
5
1866
второго счетчика 7, уменьшая его содержимое на единицу.
Аналогичным образом осуществляется возвращение к обработке других пользовательских программ с более низким приоритетом. Предлагаемое устройство обеспечивает селекцию прерываний от системных программ обработки прерываний, поступающих от устройств вычислительной системы, и приостановку модификации счетчика оставшегося времени выполнения программ вместо отработки полного цикла запоминания и восстановления кода оставшегося времени выполнения, который проходит при отработке прерываний от пользовательских программ с более высоким приоритетом, что повышает быстродействие вычислительной системы снабженной устройством для контроля хода программ.
Формула изобретения
Устройство для контроля хода программ по авт.св. № 894713, о т- личающееся тем, что, с целью повышения быстродействия устройства, в него введены третий дешифратор, третий счетчик, третий элемент ИЛИ, первый и второй элементы И, элемент НЕ, причем вход третьего дешифратора является входом признака прерывания устройства, первый выход третьего дешифратора соединен с первым входом третьего элемента ИЛИ и с тактовым входом первого дешифратора, второй выход третьего дешифратора соединен с суммирующим входом третьего счетчика и с входом блокировки генератора импульсов, вычитающий вход третьего счетчика соединен с выходом первого элемента И, вход сброса третьего счетчика является входом сброса устройства, выход обнуления третьего счетчика соединен с первым входом второго элемента И и вторым входом третьего элемента ИЛИ, выход третьего элемента ИЛИ соединен с запускающим входом генератора импульсов, выход обнуления третьего счетчика через элемент НЕ соединен с первым входом первого элемента И, вторые входы первого и второго элементов И соединены с входом признака восстановления программы устройства, выход второго элемента И соединен с тактовым входом второго дешифратора.
16
название | год | авторы | номер документа |
---|---|---|---|
Устройство для контроля хода программ | 1980 |
|
SU894713A1 |
Устройство для управления прерыванием программ | 1976 |
|
SU696459A1 |
Устройство многоуровневого прерывания | 1985 |
|
SU1287158A1 |
Устройство управления обменом | 1977 |
|
SU771655A1 |
Устройство приоритетного доступа к общей шине | 1990 |
|
SU1711173A1 |
Устройство для контроля микропроцессорной системы | 1989 |
|
SU1640693A1 |
Мультимикропроцессорная система | 1980 |
|
SU907551A1 |
Управляющая векторная вычислительная система | 1982 |
|
SU1120340A1 |
Устройство для контроля и перезапуска ЭВМ | 1987 |
|
SU1464162A1 |
Многоканальное устройство управления шаговым двигателем | 1990 |
|
SU1789970A1 |
Изобретение относится к вычислительной технике, может быть использовано для контроля хода программ в мультипроцессорных и мультипрограммных вычислительных системах и является усовершенствованием изобретения по а.с. N 894713. Целью изобретения является повышение быстродействия устройства для контроля хода программ. С этой целью в устройство введен счетчик, переполнение которого свидетельствует о недопустимой длительности выполнения программы. Кроме того, в устройство введены элемент ИЛИ, два элемента И, элемент НЕ и дешифратор. Устройство обеспечивает селекцию прерываний от системных программ и приостановку процесса модификации счетчика оставшегося времени выполнения пользовательской программы на период работы системных программ. 1 ил.
Устройство для контроля хода программ | 1980 |
|
SU894713A1 |
Приспособление для точного наложения листов бумаги при снятии оттисков | 1922 |
|
SU6A1 |
Способ получения фтористых солей | 1914 |
|
SU1980A1 |
Авторы
Даты
1990-03-23—Публикация
1988-07-18—Подача