Устройство для контроля следования модулей программы

 

Изобретение относится к вычисли,- тельной технике и может быть использовано в вычислительных машинах. Цель изобретения - увеличение глубины контроля за счет обеспечения контроля очередности следования модулей программь и контроля глубины прерываний. Поставленная цель достигается тем, что в устройство для контроля следования модулей программы, содержащее генератор импульсов, счетчик времени, дешифратор, два элемента И и два элемента ИЛИ, введены два блока формирования кодов, блок памяти, группа счетчиков, регистр сдвига, регистр адреса, две группы элементов И, группа элементов ИЛИ, три элемента задержки , три элемента НЕ и два элемента ИЛИ..4 ил., 1 табл. (f С

СОЮЗ СОВЕТСКИХ

СОЦИАЛИСТИЧЕСКИХ

РЕСПУБЛИН

„.80„„12495 1

А1 (5g 4 С 06 F 11/28

+»Q

) l

ОПИСАНИЕ ИЗОБРЕТЕНИЯ

К А BTOPCHOMY СВИДЕТЕЛЬСТВУ

Ы!Кьь1»

»» »

ГОСУДАРСТ8ЕННЫЙ КОМИТЕТ СССР

flO ДЕЛАМ ИЗОБРЕТЕНИЙ И ОТКРЫТИЙ (21) 3832907/24-24 (22) С2.0 1.85 (46) 07.08.86. Бюл. В 29 (72) A.À.Ïîäñâèðîâ, Н.П.Кормилицына, Е.В.Глонти и Ю.В.Шуленин (53) 681.3(088.8) (56) Авторское свидетельство СССР

9 834713, кл. Г 06 F 11/28, 1980.

Авторское свидетельство СССР

N- 1101831, кл. С 06 F 11/28, 1983, (54) УСТРОЙСТВО ДЛЯ -КОНТРОЛЯ СЛЕДОВАНИЯ МОДУЛЕЙ ПРОГРАММЫ (57) Изобретение относится к вычислительной технике и может быть использовано в вычислительных машинах. Цель изобретения — увеличение глубины контроля за счет обеспечения контроля очередности следования модулей программы и контроля глубины прерываний.

Поставленная цель достигается тем, что в устройство для контроля следования модулей программы, содержащее генератор импульсов, счетчик времени, дешифратор, два элемента И и два элемента ИЛИ, введены два блока формирования кодов, блок памяти, группа счетчиков, регистр сдвига, регистр адреса, две группы элементов И, группа элементов ИЛИ, три элемента задержки, три элемента НЕ и два элемента ИЛИ..4 ил., 1 табл. 3

1249521 2

Изобретение относится к вычислительной технике и может быть использовано в бортовых вычислительных машинах.

Целью изобретения является увеличение глубины контроля за счет обеспечения контроля очередности следования модулей программы и контроля прерываний.

На фиг.1 приведена блок-схема устройства для контроля следования модулей программы; на фиг.2 — схема шифратора адреса; на фиг ° 3 — схема счетного регистра; на фиг.4 — таблица программирования блока памяти.

Устройство содержит дешифратор 1, блок 2 памяти, регистр 3 адреса, первый 4 и второй 5 шифраторы адреса, элементы НЕ 6-8, генератор 9 импульсов, элементы И 10 и 11, две группы

12 и 13 элементов И, счетчик 14 времени, группу 15 счетчиков, группу 16 элементов ИЛИ, элементы ИЛИ 17-20, регистр 21 сдвига, элементы НЕ 2224, адресные входы 25, первую 26 и вторую 27 группы информационных входов; вход 28 начальной установки, вход 29 продолжения программы, выход

30 правильности включения, выход 31 ошибки включения, выходы 32-34 сбоя,,адресные выходы 35 и вход 36 признака адреса.

Каждый из формирователей 4 и 5 адреса (фиг.2) содержит элементы ИЛИ

371 — 37„ и Р групп элементов

И 38,- 38р. мера модуля программы, который подается на первую группу информационных входов регистра 3 адреса. Вход 36 предназначен для стробирования адресной информации, поступающей с входов

25 устройства на дешифратор 1. В качестве стробирующего импульса на входе 36 может быть использован сигнал, 10 сопровождающий адресную информацию из внешнего устройства.

"Склеенный" с кодом адресного смещения, поступающего на вторую группу информационных входов регистра 3 с

15 первой группы выходов блока 2 памяти, он запишется в регистр 3 адреса по сигналу с элемента ИЛИ 20, задержанному на элементе 22 задержки, величи" на которой должна быть больше или

20 равна времени формирования кода дешифратором 4 °

По сформированному таким образом адресу произойдет выборка из блока 2 памяти. При этом на выходе блока 2, 25 соединенном с элементом И 11, будет единица, если прохождение данного модуля разрешено, и ноль, если произощпо ошибочное обращение к модулю.

На второй группе выходов блока 2

30 памяти появится код дополнения максимального времени прохождения данного модуля программы. Если прохождение данного модуля разрешено, то единица с выхода блока 2 памяти запишется в нулевой разряд реверсивного регистра

21 сдвига по сигналу с выхода элемента И 11, второй вход которого соединен с выходом блока 2 памяти, а первый — с выходом элемента 23 задержки.

Счетный регистр (фиг.3) содержит элемент HE 39, элементы И-HE 40-47, элементы И 48-5 1, счетные триггеры

52-55 и элементы НЕ-ИЛИ 56-59.

Устройство работает следующим образом.

По сигналу начальной установки на входе 28 устройства обнуляются счетчики группы 15, регистр 3 адреса, счетчик 14 времени. На выходах блока

2 памяти через время, равное времени задержки в блоке памяти (время выборки), устанавливается код, соответствующий ячейке с нулевым адресом.

Далее,при появлении на, входах 25 устройства кода адреса, соответствующего началу очередного модуля программы, íà i-ом из выходов первой группы дешифратора 1 появится сигнал

"Начало модуля", который поступит на соответствующий вход шифратора 4. Под воздействием этого сигнала на выходах шифратора 4 сформируется код но 0,Этим элементом сигнал "Начало модуля" с дешифратора 1 прошедший элемент

ИЛИ 20 и элемент 22 задержки, задер.живается на время распространения сигналов в регистре 3 адреса и время выборки из блока 2 памяти.

По сигналу с выхода элемента И 11 произойдет запись кода дополнения максимального времени прохождения модуля программы в счетчик 14 вре50

Наличие. единицы на выходе нулевого разряда регистра 21 сдвига обусловит прохождение через элемент И 10 импульсов с генератора 9 на счетный вход счетчика 14 времени. Если в счетчике 14 не произойдет записи нового кода до того момента времени, когда выработается сигнал его пере1249521 продолжения текущей программы обработки прерываний, поступающий на вход

29 устройства и сдвигающий единицу в

К-й разряд регистра 2 1 сдвига.

Кроме того, сигнал на выходе 33 (" Сбой прерывания") может служить запрещающим для прихода любого прерывания.

В разрядах ячеек, соответствующих

55 первой группе выходов блока 2 памяти, 3 полнения, то на выходе 34 устройства выработается сигнал "Сбой модуля по времени

При поступлении на адресную магистраль (входы 25) кода адреса начала программы прерывания на одном из выходов второй группы выходов дешифратора 1, соответствующем номеру обработки прерывания, появится сигнал, который, пройдя элемент ИЛИ 18, поступит на вход сдвига вправо SR-регис. тра 21 сдвига. По этому сигналу единица, записанная в нулевом разряде регистра, перепишется в первый разряд, По сигналу с одного из выходов второй группы выходов дешифратора t, поданного на соответствующий вход шифратора 5, на выходе этого блока сформируется код, который поступит на информационные входы счетчиков группы 15.

Наличие единицы в первом разряде регистра 21 сдвига позволит прохождению сигнала "Начало прерывания" с выхода элемента ИЛ.! 18, задержанного на элементе 24 задержки, через первый элемент И группы 13 на тактовый вход первого счетчика группы. По этому сигналу произойдет запись кода дополнения максимально возможного времени обработки прерывания в первый счетчик группы 15. На время действия этого сигнала элементы И группы 12 закрыты сигналами с выхода инвертора

8. Наличие единицы на выходе первого разряда регистра 21 обусловит прохождение импульсов с генератора 9 через первый элемент И группы 12 на счетный вход первого счетчика группы и обеспечит, таким образом, подсчет времени прохождения обработки прерывания первым счетчикам группы, сигнал переполнения которого, поступив на один из входов элемента ИЛИ 19, сформирует на его выходе и, следовательно, на выходе 32 устройства сигнал "Сбой прерывания по времени".

При появлении на адресной магистрали ЦВМ, т.е. на входах 25 устройства кода адреса последней команды программы обработки прерываний, на одном иэ выходов третьей группы дешифратора 1 появится сигнал, который через элемент ИЛИ 17 поступит на вход сдвига влево регистра 21 сдвига и передвинет единицу, записанную в нашем случае в первый разряд, влево в нулевой разряд.

Единица в нулевом разряде регистра обеспечит прохождение импульсов генератора 9 через элемент И 1О на счетный вход счетчика 14,времени, т.е, обеспечит продолжение счета времени прохождения модуля программы, и, поданная на вход первого элемента ИЛИ группы 16, сформирует на его выходе, ( а следовательно, и на установочном входе первого счетчика группы 15 сигнал его обнуления.

Разрядность регистра 2 1 определяется числом К, равным максимально допустимой глубине прерываний. Если в момент прохождения программы прерывания время прохождения которой отсчитывается i-ым счетчиком группы 15 счетчиков, на выходе дешифратора 1 появится адрес начала программы следующего прерывания, т.е, на выходе элемента ИЛИ 18 формируется сигнал

"Начало прерывания", то единица, записанная в i-ом разряде регистра 21 сдвига, перепишется по сигналу, поступающему с выхода элемента ИЛИ 18, на вход сдвига вправо регистра 2 1, в (i + 1)-й разряд. Если i ф К, то в (i + 1)-й счетчик группы 15 запишется дополнение максимального времени прохождения данной программы прерывания и этот счетчик будет отсчитывать время прохождения программы прерывания, а на предыдущем i-ом счетчике сохранится значение кода, накопленного в нем до прихода очередного прерывания.

Если же i = К, где К вЂ” максимально допустимая для ЦВМ глубина прерывания, то единица, записанная в К-ом разряде по сигналу с выхода элемента

ИЛИ 18, перепишется в (К + 1)-й разряд и сформирует сигнал на выходе 33 устройства (" Сбой прерывания"). по которому в устройстве управления ЦВМ может быть сформирован либо сигнал начального запуска ЦВМ, поступающий на вход 28 устройства, либо сигнал записываются коды адресов, по которым должно быть произведено обращение в случае ошибочного включения модуля.

1249521

При этом на выходе 31 устройства сформируется сигнал ошибки включения, В случае зацикливания текущего модуля программы, когда на выход блока

2 памяти, соединенном с элементом

И 11, записана единица и прои,ovmo переполнение счетчика времени 1 ;, сформируется сигнал на выходе 34 устройства. 10

Если зацикливание произойдет в процессе обработки программы прерывания, то сформирует" ÿ сигнал на выходе переполнения одного из счетчиков группы 15 и, следовательно, на выходе 32 сбоя.

Этот сигнал можно использовать в устройстве управления ЦВМ для организации повторного прохождения этой программы обработки прерываний, или 20 же для начального пуска ЦБИ.

Программирование ячеек блока 2 па= мяти определяется очередностью следования модулей программы.

Для простоты положим, что програм- 21 ма сОстоит из четырех модулей, причем сначала должен выполняться толь-ко первый модуль, затем может выполняться второй и третий мод,пи и последним обрабатывается четв.:-pòûé ггсдуль. Блок-схема. такой про.-раммы показана на фиг.4, Модуль с номером 000 представляет собой модуль подготовки машины к, ра-боте (обнуление регистров пересылки

-5 констант Не ПЗУ H ОЗУ H T p.),.

Как упоминалось вьыпе, в соответ-. ствунгщег: разряде блока 2 памяти программируется единица„ если грохождение модуля программы с номером, сфор- . мированным шифратором 4, разрешено,, и нуль — если запрещено.

В разрядах второй гругпы выходов записывается код дополнения максимально возможного времени выполнения

Я го1Tóä ò ессли прохожден ге : 1 о зз ° шено, и нули в противном случае.

В разрядах третьей групььг в .iгхо . i> блока 2 памяти записы ReTc3. код;;:дреса программы, по которому ЦВМ долж- на обратиться, если прохождение ггодуля не разрешено„ или в случае переполнения счетчика 14 времени (зацик-ливание модуля). если прохождение модуля разрешено.

В разрядах первой группы вы:::.одов записывается код адреснога см meumÿ,. задающего зону блока 2 памяти, в;го-орую должно быть обращено по приходе следующего модуля программы, т.е. каждая зона, задаваемая адресным смещением, характеризует определенное состояние программы.

Из програггмы видно, что сначала выполняется только первый модуль, т.е, нулевая зона соответствует приходу первого модуля, поэтому в разряде. соответствующем отдельному выходу блока 2 паг::яти,е„-.,èíèöà будет записана топько по адресу 0001.0000, где точкой отделены разряды, поступающие с шифратора 4 формирования кодов (0001),. и разряды адресного смещения (ОООО), причем, в разрядах, соответствующих первой группе выходов блока 2 памяти, загишем 0001, что означает: после прохождения первого гчодуггя программы должно быть обращение к первой зоне, соответствующей состоянию программы, в котором ЦВМ выполнила первый модуль и ожидает прихода либо второго, либо третьего

"..оцуля, следовательно„ в зоне 0001 единицы в разряде, соответствующем отдельному выходу, будут записаны по адресам 0010.0001 и 0011.0001. В адресном смещении по этим адресам будет.записан код 0010, что соответствует обращени.о ко.второй зоне блока

2 памяти чо приходе следующего модуля. Вторая зона блока 2 пагляти соответствует состоянию программы, при котором выполнены первыи модуль, второй или третий, и ожидается приход четвертого модуля. Поэтому в разряде, e0îòüeòñòçóþöåè отдельному выходу блока 2 памяти, оудет записана единица лишь по адресу 0100.0010.

Б таблице программирования блока памяти символами ХХХХ.„ ХХХ2, ХХХЗ„

Х Х4 обозначены коды дополнения максимально возможного времени прохождегвгя модулей программы соответственно

I первого., в орого, третьего и четвертого модулей программы:, Разряды, cooT8eTeтвующие третьей гpy IETIe .=лоzа 2 памяти, в таблице не привегтен .

При циклич,с кой- орг.анизации О1 ранг в я.-",ейках адресно-:о смещения по адресу 0100.0010 необходимо запи а"ü ОООО. орьгулаизэбрeтения устройство для контроля с. едовагг.q .:;одулей :;;ограг:ь ., содержащее

1249521 элементов ИЛИ группы, вторая группа выходов дешифратора соединена с соответствующим входом второго элемента

ИЛИ и с первой группой информационных входов второго шифратора адреса, группа входов времени прохождения модуля программа устройства соединена с второй группой информационных входов второго шифратора адреса, выход которого соединен с информационными входами счетчиков группы, выход переполнения каждого счетчика группы соединен с соответствующим входом третьего элемента ИЛИ, выход которого является выходом сбоя прерывания времени устройства, выход переполнения счетчика времени является выходом сбоя времени проходящего модуля программы устройства, выход второго элемента ИЛИ соединен с входом разрешения сдвига вправо регистра сдвига, через третий элемент задержки с первыми входами элементов И второй .группы и через третий элемент НЕ с

1 вторыми входами элементов И второй группы, выход каждого элемента И первой группы соединен с счетным входом соответствующего счетчика группы, гретья группа выходов дешифратора соединена с группой входов четвертого элемента ИЛИ, выход которого соединен с входом разрешения сдвига влево регистра сдвига, вход продолжения программы устройства соединен с входом четвертого элемента ИЛИ, каждый выход регистра сдвига с первого по (К вЂ” 1)-ый, где К вЂ” количество разрешенных прерываний, соедин-н с вторым входом соответствующего элемента И первой группы, с вторым входом соответствующего элемента И второй группы, К-ый выход регистра сдвига соединен с третьим входом К-го элемента

И первой группы, с вторым sxc.„ oì К-ro элемента И второй группы, нулевой выход регистра сдвига соединен с третьим входом второго элемента И и с вторым входом первого элемента ИЛИ. группы, (К + 1)-ый выход регистра сдвига является выходом сбоя прерывания устройства, выходы элементов

KIN группы соединены с входами начальной устанОвки соответствующих счетчиков группы, выход каждого элемента И второй группы соединены с входом записи соответствующего счетчика группы. i0 генератор импульсов, счетчик времени, дешифратор, два элемента И и два элемента ИЛИ, о т л и ч а ю щ е е с я тем, что, с целью увеличения глубины контроля, в устройство введены первый и второй шифраторы адреса, блок памяти, группа счетчиков, регистр сдвига, регистр адреса, две группы элементов И, группа элементов ИЛИ, три элемента задержки, три элемента

НЕ, два элемента ИЛИ, причем адресные входы устройства соединены с информационными входами дешифратора, вход признака адреса устройства соединен !5 с тактовым входом дешифратора, первая группа выходов дешифратора соединена с входами первого элемента

ИЛИ и с первой группой информационных входов первого шифратора адреса, 20 группа входов номера модуля программы устройства соединена с второй группой информационных входов первого шифратора адреса, выход элемента

ИЛИ через первый элемент задержки соединен с входом записи регистра адреса и через второй элемент задержки — с первым входом первого элемента И, выход которого соединен с входом записи счетчика времени, и регис- 30 тра сдвига, и через первый элемент

НŠ— с первым входом второго элемента И, выходы первого шифратора адре.са соединены с первой группой информационных входов регистра адреса, выходы которого соединены с адресными входами блока памяти, первая, вторая и третья группы выходов блока памяти соединены соответственно с второй группой информационных входов 40 регистра адреса, с группой адресных выходов устройства, с информационными входами счетчика времени, выход генератора импульсов соединен с первь ми входами элементов И первой груп- 45 пы и с вторым входом второго элемента И, выход которого соединен с счет- ным входом счетчика времени, выход блока памяти соединен с вторым входом первого элемента И, с информаци- 50 онным входом регистра сдвига, с выходом правильности обращения устройства и через второй элемент НŠ— с выходом ошибки обращения устройства, вход начальной установки устройства соединен с входом начальной установки регистра адреса, счетчика времени регистра сдвига и с первым входами

1249521

Адрес

Содержание ячейки

Зона

Зона

0000

0000

0000

0001

0000

0001

0000

0010

0000

0011

0100

0000

0000

0001

0001

0001

001 1

0010

0010

0010 0001.0011

0100

0001

0010

0000

0010

0001

0010

0010

0010

0011

ХХХХ4 .

0000

0100

0010 . — в случае циклического повторения программьц +- пусковой модуль.

Номер Адресное модуля смещение адресного смещения

Зона разрешения прохождения модуля времени кодов

ХХХХО

ХХХХ1

ХХХХ2

КХХХЗ

1249521

1249521

1249521

Составитель И.Сигалов

Редактор Н.Егорова Техред Q Гортвай Корректор C.me@Map

Заказ 4326/50 Тирах 671 Подписное

ВНИИПИ Государственного комитета СССР по делам изобретений и открытий

113035, Москва, Ж-35, Раушская наб., д. 4/5

Пооизводственно-полиграфическое предприятие, r.Óâãoðoä, ул.Проектная, 4

Устройство для контроля следования модулей программы Устройство для контроля следования модулей программы Устройство для контроля следования модулей программы Устройство для контроля следования модулей программы Устройство для контроля следования модулей программы Устройство для контроля следования модулей программы Устройство для контроля следования модулей программы Устройство для контроля следования модулей программы Устройство для контроля следования модулей программы 

 

Похожие патенты:

Изобретение относится к вычислительной технике и может быть использовано при автономной и комплексной отладке программ в вычислительных ;комплексах, а также для контроля и трассировки .решаемых программ

Изобретение относится к вычислительной технике и может быть использовано для контроля хода программы специализированных ЭВМ и является усовершенствованием устройства по авт

Изобретение относится к вычислительной технике и может быть использовано в вычислительных системах, состоящих из высокопроизводительных ЭВМ, управляемых автономными операционными системами

Изобретение относится к вычис-, лительной технике и может быть использованб при создании микроЭВМ на основе микропроцессоров.Цель изобретения - расширение области использования и повьшение достоверности отладки

Изобретение относится к области вычислительной техники и может быть использовано в системах контроля и испытаний

Изобретение относится к области вьиислительной техники и может быть применено в устройствах для отладки программ

Изобретение относится к области автоматики и вычислительной техники, в частности к .устройствам контроля ЭВМ, и может быть использовало при построении устройств программного и микропрограммного управления с высокой достоверностью функционирования

Изобретение относится к вычислительной технике и может быть использовано при отладке программ специализированных цифровых вычислительных систем реального времени

Изобретение относится к вычислительной технике и может быть использовано в составе процессора ЭВМ

Изобретение относится к области вычислительной техники

Изобретение относится к вычислительной технике, а именно к устройствам для контроля и отладки цифровых управляющих систем, и может быть использовано для имитации функционирования объекта управления, в частности корабельного оружия

Изобретение относится к компьютерным технологиям, в частности к системам и способам формирования дамп файла при возникновении сбоя в работе программы (аварийном завершении программы) в вычислительных системах с ограниченными ресурсами

Изобретение относится к системе с многоядерным центральным процессором, в частности к способу устранения исключительной ситуации в многоядерной системе

Изобретение относится к вычислительной технике и может быть использовано при построении управляющих вычислительных машин (УВМ), нечувствительных к сбоям программ

Изобретение относится к вычислительной технике и может быть использовано в управляющих вычислительных машинах (УВМ), например в системах управления газотурбинного двигателя

Изобретение относится к вычислительной технике и предназначено для автоматизированной отладки программного обеспечения мультимашинных систем, работающих в реальном масштабе времени и имеющих общую память

Изобретение относится к вычислительной технике и может быть использовано в управляющих вычислительных машинах (УВМ)

Изобретение относится к вычислительной технике и может быть использовано для выявления циклических процессов анализируемой программы, регистрации их параметров и хранения регистрируемой информации в блоке памяти с последующей выдачей по запросу
Наверх