Устройство для контроля хода программы
Похожие патенты | МПК / Метки | Текст | Заявка | Код ссылки
Текст
Изобретение относится к вычислительной технике и может быть использовано для контроля хода программыцифровых ЭВМ,Целью изобретения является новы"шение оперативности контроля.Устройство для контроля хода программ представлено на чертеже.Устройство .содержит регистр 1 10кода команды для хранения кода выполняемой команды, регистр 2 адресакоманды для хранения адреса выполняемой команды, регистр 3 адреса перехода для .хранения адреса перехода, 15счетчик 4 слов адреса, счетчик 5 начальной установки, элемент ИЛИ 6,дешифратор 7, сумматор 8, первуюсхему 9 сравнения, вторую схему 10сравнения, элементы И 11-13, элемент 20ИЛИ-НЕ 14, триггер 15 ошибки, информационный вход (шину данных) 16 уст"ройства, адресный вход (адресную шину) 17 устройства, вход 18 чтенияустройства, вход 19 признака первого 25байта команды устройства, вход 20начальной установки в исходное состояние устройства, вход 21 подтверждения прерывания, выход 22 запроса1прерывания устройства, шину 23 управления,Устройство работает следующим образом,В основу работы устройства контроля положен тот факт, что по ходу выполняемой команды определяется адрес следующей команды.Все команды разделены на две группы: линейные команды, после выполне-. 40 ния которых выполняется следующая команда; команды перехода, после выполнения которых, в зависимости от усло- вий, выполняется следующая команда ,д или же команда, адрес которой указан45 в команде перехода.1При выполнении очередной команды сравнивается ее адрес с ранее рассчитанными адресами, Положительный результат сравнения свидетельствует о50 том, что программа выполняется о адресам правильно, Отрицательный результат сравнения свидетельствует о нарушении хода выполнения программы,Запись информации в регистр 1 .кода .:команды и регистр 2 адреса команды выполняется по заднему фронту сигнала чтения первого слова команды, а запись информации в регистр 3 адре, -са перехода выполняется по заднему фронту сигнала чтения.Счетчик 4 слов адреса предназначен для формирования сигнала запрещения счета, поступающего на вход запрещения счета регистра 3 адреса перехода. После записи адреса перехо" да в регистр 3 сигнал с выхода счетчика 4 слов адреса запрещает запись информации в регистр 3 адреса перехода. После этого счетчик 4 слов ад" реса устанавливается в исходное состояние, разрешая запись в регистр 3 адреса перехода по чтению первого байта команды или же по сигналу "Сброс". Переключение счетчика 4 слов адреса происходит по заднему фронту.Счетчик 5 начальной установки предназначен для установки в исход ное состояние триггера 15 ошибки.Счетчик 5 начальной установки блокирует запись в триггер 15 ошибки сигнала ошибки, который возникает при выполнении первой команды программы, а также первой команды подпрограммы обработки прерывания, поскольку в этих случаях адрес выполняемой команды нельзя рассчитатьзаранееСчетчик 5 начальной установки устанавливается в исходное состояние по сигналу Сброс" или "Подтверждение прерывания", после чего по заднему фронту сигнала "Чтение" первогобайта команды он переключается исамоблокируется,Счетчик 4 слов адреса, счетчик 5начальной установки являются счетчиками-делителями, т.е, с дешифраторомна выходе, и поэтому в текущий моментвремени может быть возбужден лишьодин из выходов каждого счетчика,Дешифратор 7 предназначен дляопределения длины йыполняемой команды, информация о которой поступаетна вход сумматора 8, и выдачи сигналов разрешения на входы второго итретьего элементов И 11 и 13. Например, при выполнении линейной командысигнал разрешения с выхода дешифратора 7 поступает только на второй элемент И 11, при выполнении команды условного перехода на второй и третий элементы И 11 и 13, а в случае выполнения команды безусловного перехода или вызова подпрограммы " на вход третьего элемента И 13.5 1 О 15 20 25 31415Сумматор 8, на один вход которогопоступает адрес выполняемой команды,а на другой (с выхода дешифратора)код длины этой команды, определяетадрес следующей команды.Схемы 9 и 10 сравнения выполняютсравнение адреса выполняемой командыс ранее рассчитанными адресами, Вслучае совпадения адресов на выходахсхем 9 и 10 сравнения появляютсяуровни "1", которые через элементы И11 и 13 и элемент ИЛИ-НЕ 14 поступаютна информационный вход триггера 15ошибки,Триггер 15 ошибки предназначендля фиксации результата сравнениявыполняемой команды с ранее рассчитанными адресами, Начальная установка триггера 15 ошибки выполняетсяпо сигналу с выхода счетчика 5 начальной установки. Запись сигнала синформационного входа выполняетсяпо переднему фронту сигнала "Чтениепервого байта команды". При обнаружении устройством контроля ошибки хода выполнения программы на выходетриггера 15 ошибки появляется уровень "1", который формирует сигнал"Запрос прерывания".Рассмотрим работу устройства напримере использования контроля вмикроЭВИ на основе микропроцессоратипа К 580,По сигналу "Сброс", который возбуждается по системной управляющеймагистрали 23, счетчик 5 начальнойустановки через вход 20 и элементИЛИ 6 устанавливается в исходноесостояние. Установка в "0" счетчика5 начальной установки вызывает появление уровня "1" на входе установкив ноль триггера 15,ошибки, при этомна выходе триггера ошибки 15 устанавливается ноль.После снятия сигнала "Сброс" процессор формирует сигналы "Чтение","Признак первого байта команды" иобращается за командой, Процессорвыставляет на адресных шинах 17 адреснулевой ячейки, а по шине 23 управления - сигнал 18 чтения, Содержимоенулевой ячейки ПЗУ устанавливаетсяна шине 16 данныхСигналы на входах 18 и 19 устройства для контроля формируют на выходе элемента И 12 ."1", передний фронткоторой не изменяет состояния триггера 15 ошибки, поскольку на его входе 103 4 установки в ноль сохраняется "1", а счетчик 4 слов адреса по сигналу "Чтение первого байта команды" (с вы-, хода элемента И 12) устанавливается в ноль.По заднему фронту сигнала с входа 18 выполняется запись информации с шины 16 данных в регистр 3 адреса перехода, при этом счетчик 4 слов адреса не изменяет своего состояния, так как сигнал на его входе установки в ноль еще не принял значения "О" иэ-за задержки на элементе И 12. По заднему фронту сигнала с выхода элемента И 12 выполняется запись кода команды в регистр 1 кода команды, запоминание адреса выполняемой команды в регистре 2 адреса команды и переключение счетчика 5 начальной установки, который переходит в режим самоблокировки,снимая уровень "1" с входа установки в ноль триггера 15 ошибки.При выполнении команды процессор может выдать более одного сигналачтения, например, для считыванияпоследующих байтов команды из ПЗУили же считывания операндов из ОЗУ,При этом содержимое ячейки памятиустанавливается на шине 16 данных.По задним фронтам второго и третьего сигналов "Чтение" информацияс шины данных заносится в регистр 335адреса перехода, По заднему фронтутретьего.:сигнала "Чтение" на выходесчетчика 4 слов адреса устанавливается уровень "1", по которому запрещается запись в регистр 3 адресаперехода, и счетчик 4 слов адресасамоблокируется,На один вход сумматора 8 поступает код длины выполняемой команды,на другой - адрес выполняемой команды, На выходе сумматора 8 появляется45адрес следующей команды.При появлении переднего фронтасигнала "Чтение первого байта команды" с выхода элемента И 12 в триггер5015 ошибки записывается результатсравнения текущего адреса команды. сранее рассчитанными адресами. Еслипрограмма движется по адресам правильно, то на выходе элемента ИЛИ 55НЕ - уровень нуля и на выходе триггера 15 ошибки также сохраняется зна-чение "0",Цикл работы устройства повторяется,1451703 соединены с информационными входамирегистра адреса команды и первойгруппой входов первой схемы сравнения, выходы регистра кода командысоединены с входами дешифратора, выход признака линейного хода программы которого соединен с первым входомвторого элемента И, выход равенствапервой схемы сравнения соединен свторым входом, второго элемента И,о т л и ч а ю щ е е с я тем, что,с целью повышения оперативности контроля, в устройстве введены сумматор,вторая схема сравнения, счетчик начальной установки, счетчик слов адреса, третий элемент И, элемент ИЛИНЕ. элемент ИЛИ, причем выходы регистра адреса команды соединены с входами первого операнда сумматора,выход кодадлины команды дешифраторасоединен с входами второго операндасумматора, выходы которого соединеныс второй группой входов первой схемысравнения, адресные входы устройстваи выхопы регистра адреса перехода соединены соответственно с первой ивторой группами входов второй схемысравнения, выход равенства которойсоединен с первым входом третьегоэлемента И, выход признака безусловного перехода .дешифратора соединенс вторым входом третьего элемента И,выходы третьего и второго элементовИ соединены соответственно с первыми вторым входами элемента ИЛИ-НЕ,выход элемента ИЛИ-НЕ соединен с информационным входом триггера ошибки,входы начальной установки и подтверж.дения прерывания устройства соединены соответственно с первым и.вторымвходами элемента ИЛИ, выход которогосоединен с входом установки в исходное состояние счетчика начальнойустановки, первый разрядный выходкоторого соединен с входом установкинуля триггера ошибки, выход первогоэлемента И соединен с входом исходной установки счетчика слов адресаи с входом синхронизации счетчиканачальной установки, второй разряд-."ный выход которого соединен со счетным входом счетчика начальной установки, вход чтения устройства соединен с синхронизирующим входом счет.-чика слов адреса, выход которогосоединен с входом блокировки записирегистра адреса перехода и со счетнымвходом счетчика слов адреса,35 Если при выполнении программы обнаруживаются нарушения хода программы, то на выходе элемента ИЛИ-НЕ 14появляется уровень "1" и триггер 15ошибки формирует сигнал запрос преры 6 ания, который через выход 22 ишину 23 поступает на устройство приоритетного прерывания.Сигнал "Запрос прерывания" с выхода триггера 15 поступает в процессор.В ответ на этот сигнал процессорформирует сигнал Подтверждение прерывания", который поступает на вход21 подтверждения прерывания и вызывает установку в исходное состояниесчетчика 5 начальной установки, ана входе установки в ноль триггера15 ошибки появляется уровень "0", исигнал "Запрос прерывания" снимается 20.При появлении в процессоре прерываний от других устройств сигнал"Подтверждение прерывания , поступающий на вход 21 подтверждения прерывания устройства, вызывает установку 2 Бв исходное состояние счетчика 5 начальной установки, предотвращая формирование триггером 15 ошибки сигнала ".Запрос прерывания", который должен быть сформирован, поскольку адрес первой команды подпрограммы обработки прерывания не совпадает стеми адресами, которые устройствоконтроля рассчитывает при выполнениипредыдущей команды, и на выходе элемента ИЛИ-НЕ 14 . устанавливаетсяуровень "1".,Формула изобретенияУстройство для контроля хода программы, содержащее регистр хода ко-.манды, регистр адреса команды, регистр адреса перехода, дешифратор,первую схему сравнения, два элемента.И, триггер ошибки, причем вход признака чтения устройства соединен свходом записи регистра адреса пере Входа и первым входом первого элемента И, вход признака перврго байтакоманды устройства соединен с вторымвходом первого элемента И, выходкоторого соединен с входом записи 50регистров кода команды и адреса команды и с входом синхронизации триг"гера ошибки, выход которого являетсявыходом запроса прерывания устрой"ства, информационные входы устройства соединены с информационными входами регистров кода команды и адресаперехода, адресные входы устройства1451703 аказ 7081/47 Тираж 667 ПодписноеНИИПИ Государственного комитета по изобретениям и открыт113035, Москва, Ж, Раушская наб., д. 4 ям при ГКНТ СССР роизводственно-полиграфическое предприятие, г. Ужгород,роектна Составитель А.Сигаловедактор И.Рыбченко Техред А.Кравчук Корректоро М. емчик
СмотретьЗаявка
4261494, 15.06.1987
ПРЕДПРИЯТИЕ ПЯ Г-4190
КУЦЕНКО ВИКТОР НЕСТЕРОВИЧ, АНАНСКИЙ ЕВГЕНИЙ ВИКТОРОВИЧ, ПЕТРОВ ИГОРЬ ИВАНОВИЧ, КОЛЕСНИК СЕРГЕЙ ГРИГОРЬЕВИЧ, БЕГЛЫЙ АЛЕКСАНДР ВАСИЛЬЕВИЧ, ЯРУСЕВИЧ ВИТАЛИЙ ИВАНОВИЧ, НАКОНЕЧНЫЙ НИКОЛАЙ ПЕТРОВИЧ
МПК / Метки
МПК: G06F 11/28
Опубликовано: 15.01.1989
Код ссылки
<a href="https://patents.su/5-1451703-ustrojjstvo-dlya-kontrolya-khoda-programmy.html" target="_blank" rel="follow" title="База патентов СССР">Устройство для контроля хода программы</a>
Предыдущий патент: Устройство для имитации отказов дискретной аппаратуры
Следующий патент: Устройство для формирования маски
Случайный патент: Микропрограммное устройство управления