Устройство для контроля правильности выполнения команд микропроцессорной системы
Иллюстрации
Показать всеРеферат
Изобретение относится к вычислительной технике и может быть использовано для синтаксического контроля выполнения команд микропроцессорной системы. Цель изобретения - повышение оперативности контроля за счет обеспечения контроля выполнения каждой команды с точностью до такта. Устройство содержит блок 1 постоянной памяти, схему 2 сравнения, триггер 3 ошибки, регистр 4 кода команды, счетчик 5, элементы И 6-10, элементы ИЛИ 11 и 12, элемент НЕ 13. Использование устройства позволяет расширить возможности по обнаружению ошибок хода программы с точностью до неправильно выполненной команды. 6 ил.
СОЮЗ СОВЕТСНИХ
СОЦИАЛИСТИЧЕСКИХ
РЕаЪБ ЛИК
ОПИСАНИЕ ИЗОБРЕТЕНИЯ
Н ABTOPCHOMY СВИДЕТЕЛЬСТВУ
ГОСУДАРСТВЕННЬ Й КОМИТЕТ
Г10 ИЗОБРЕТЕНИЯМ И ОТНРЫТИЯМ
ПРИ ГННТ СС СР
1 (21) 4351561/24-24 (22) 17.11.87 (46) 07.10.89. Бюп. № 37 (72) Н.П.Наконечный, С.Г.Колесник, В.H.Êóöåíêî, E.Â.Àíàíñêèé и И.И.Петров (53) 681.3 (088.8) (56) Авторское свидетельство, СССР № 1019451, кл. G 06 F 11/ОО, 1981 °
Авторское свидетельство СССР № 1260960, кл. G 06 F 11/00, 1985. (54) УСТРОЙСТВО ДЛЯ КОНТРОЛЯ ПРАВИЛЪНОСТИ ВЫПОЛНЕНИЯ КОМАНД ИИКРОПРОЦЕССОРНОЙ СИСТЕМЫ (57). Изобретение относится к вычислительной технике и может быть ис„„Я0„„1513455 . A1 д) 4 G 06 F 11/28, 11/00
2 пользовано для синтаксического контроля выполнения команд микропроцессорной системы. Цель изобретения— повышение оперативности контроля за счет обеспечения контроля выполнения каждой команды с .точностью до такта.
Устройство содержит блок 1 постоянной памяти, схему 2 сравнения, триггер .3 ошибки, регистр 4 кода команды, счетчик 5, элементы И 6-10, элементы
ИЛИ 11 и 12, элемент НЕ 13. Использование устройства позволяет расширить возможности по обнаружению ошибок мода программы с точностью до неправильно выполненной команды.
6 ил.
1513455
Изобретение относится к вычислительной технике и может быть использовано для контроля хода программы цифровых ЭВМ.
Целью изобретения является повьгшение оперативности контроля.
На фиг.1 изображена функциональная схема устройства для контроля правильности выполнения команд микропроцессорной системы; на фиг.2-6временные диаграммы работы устройства °
Устройство содержит блок 1 постоянной памяти, схему 2 сравнения, триг15 гер 3 ошибки, регистр 4 кода команды, счетчик 5 тактов элементы И 610, элементы ИЛИ 1 } и 12, элемент HE
13, информационный вход 14, управляющие входы 15, вход 16 сброса, вход 20
17 чтения вектора прерывания, вход
18 чтения памяти, вход 19 признака первого байта команды, вход 20 синхронизации, вход 21 подтверждения ожидания, вход 22 подтверждения захвата, выход 23 запроса прерывания.
Устройство работает следующим образом.
В основу работы устройства положен тот факт, что выполнение команд в 30 микропроцессоре типа К580, 1NTEL8080 или другого аналогичного разделяется на элементарные отрезки времени. Наименьший отрезок времени, в течение которого процессор выполняет определенные действия, называется тактом (Т). Такт процессора равен периоду следования синхроимпульсов. Такт процессора является неизменяемым временным отрезком (его можно изменять 4п только изменением частоты генератора синхроимпульсов) .
Из тактов складываются элементарные отрезки времени большей величины, которые называются машинными цик-45 лами (М), в общем случае число машинных циклов в команде может .быть от 1 до 5.
Первый машинный цикл М1 всегда являющийся циклом выборки первого байта команды, длительностью 4 или
5 тактов. Машинные циклы М2-М5 выполняются за три и более тактов каждый. Принцип работы устройства для контроля команд микропроцессорной системы на примере временной диаграммы выполнения и контроля команды
ВЫВОД во внешнее устройство показан на фиг.2. В первом такте Т1 машинного цикла М1 все команды имеют одинаковые уровни сигналов шины управления, а код команды поступает по входу 14 только в такте Т2 цикла М1.
Поэтому контроль команд смещен так, что такт Т1 контролируется последним. По коду выполняемой команды определяются сигналы шины. управления, необходимые для выполнения данной команды.
На каждом такте работы микропроцессорной системы сравниваются сигналы на управляющих входах 15 с их рассчитанными значениями, хранимыми в блоке постоянной памяти.
Положительный результат сравнения свидетельствует о том, что микропроцессорная система работает правильно, а отрицательный — о нарушении работы микропроцессорной системы.
По сигналу СБРОС (вход 16), который возбуждается по системной управляющей магистрали, контролируемый процессор переходит в исходное состояние, а в устройстве контроля в исходное состояние устанавливается регистр 4 текущей команды, триггер 3 ошибки (через элемент И 10) и счетчик 5 тактов (через элемент И 6).
Сброс счетчика 5 тактов и запись информации с входа 14 совместно с сигналом с входа 17 в регистр 4 производится одновременно при изменении выхода элемента ИЛИ 11 из состояния логической " 1" в состояние логического "0". По переходу синхросигнала с входа 20 из состояния логической " 1" в состояние логического "0" при наличии сигналов с входа 18 или 17 и сигнала с входа 19 на элементах И 7 или
ИЛИ 11 формируется сигнал записи кода текущей команды в регистр 4 (фиг.3).
Одновременно обнуляется счетчик 5 тактов.
Код команды с выхода регистра 4 и код такта команды с выхода счетчика 5 поступают на вход блока 1. На его выходе устанавливаются ожидаемые уровни управляющих сигналов, поступающие по входам 15.
По переходу синхросигнала с входа
20 из состояния логического "0" в состояние логической "1" и при отсутствии сигнала на входе 22 триггером 3 фиксируется результат сравнения текущих и ожидаемых управляющих сигналов.
5 1513
В случае несовпадения текущих сигналов с ожидаемыми или при превьппении количества тактов данной команды схема 2 сравнения формирует че-. рез элемент ИЛИ 12 сигнал ошибки.Сиг- 5 нал ошибки с элемента ИЛИ 12 поступает на вход триггера 3, который на выходе формирует сигнал запроса прерывания.
При выполнении команд перехода по условию, если условия истинны, адрес возврата помещается в стек и выполнение программы продолжается с адреса, указанного в самой команде.
Если условие. ложно, то выполнение программы продолжается последовательно.
В устройстве контроля команды перехода и возврата по условию {при его истинности) проверяются на максимальное количество тактов.
В случае ложности условия команды выполнение ее сокращается на 6 тактов. При этомна вход 19 поступа- 25 ет признак первого байта команды, а на вход 20 по переходу синхросигнала «2 из состояния логической "1 в состояние логического "0" в регистр 4 заносится код последующей команды и одновременно обнуляется счетчик 5 тактов.
Для контроля команды беэусловного вызова подпрограммы (CALL) в регистр 4 по входу 17 поступает сигнал чтения вектора прерывания. Это необходимо для контроля команды в режиме обработки запроса прерывания, где команду CALL формирует системное устройство прерывания и управляющие сигналы (по входам 15)
40 отличаются от других режимов выполнения данной команды. Временные диаграммы фиг.4-6 отражают работу устройства при различных вариантах изменения управляющих сигналов.
45 .Формула изобретения устройство для контроля правильности выполнения команд микропроцессорной системы, содержащее блок постоянной памяти, регистр кода команды, счетчик, тактов, схему сравнения, триггер ошибки, первый элемент-ИЛИ, причем выходы регистра кода команды и счетчика тактов соединены соответственно с первой и второй группами адресных входов блока
453 6 постоянной памяти, выходы которого соединены с первой группой входов схемы сравнения, выход неравенства схемы сравнения соединен с первым входом первого элемента ИЛИ, выход разряда контроля блока постоянной памяти соединен с вторым входом первого элемента ИЛИ, выход которого соединен с информационным входом триггера ошибки, выход триггера ошибки является выходом сигнала контроля устройства, информационный вход устройства соединен с информационным входом регистра кода команды, о т— л и ч а ю щ е е с я тем, что, с целью повьппения оперативности контроля за счет обеспечения контроля выполнения каждой команды с точностью до такта, в него введены пять элементов И, элемент НЕ, второй элемент ИЛИ, причем вход чтения вектора прерывания устройства соединен с дополнительным информационным входом регистра кода команд и первым входом первого элемента И, вход чтения памяти устройства соединен с вторым входом первого элемента И, выход которого соединен с первым входом второго элемента ИЛИ, вход признака первого байта устройства соединен с вторым входом второго элемента ИЛИ, выход которого соединен с первым входом второго элемента И и входом синхронизации регистра кода команды, вход синхронизации устройства соединен с третьим входом второго элемента ИЛИ и входом элемента НЕ, вход подтверждения прерывания устройства соединен с первым входом третьего элемента И, выход которого соединен со счетным входом счетчика тактов, выход элемента НЕ и вход подтверждения захвата устройства соединены соответственно с первым и вторым входами четвертого элемента И, выход которого соединен с входом синхронизации триггера ошибки и вторым входом третьего элемента
И, вход сброса устройства соединен с входом начальной установки регистра кода команды, с первым входом пятого элемента И и вторым входом второго элемента И,выход которого соединен с входом начальной установки счетчика тактов, вход чтения вектора прерывания устройства соединен с вторым входом пятого элемента И, выход которого соединен с единичным входом триггера ошибки.
ЛЛЖ сзоас
/7ЛЮВ
ОР(И
ЧТП
УПП
ВИХОР счюгю
° ° e
ПП6К
ЛОФ
4ТП
Маг
Яи!
Л д
Яю1
/7/7Ж
Лч0
Ч7ЗП
Auz.д
Лоа 7 дылд зленента или Л Фгд
Л й7
Выюдрегистд и
AoLO
ШЦНЫ дОННб/Х 14 дб/ЮУ сытна джим (8x„c"СфЯ
ЧТП
° ° й/Х Сч дьи
ЖЮ/УЮУ/77
ФУ
Составитель И.Сигалов
Редактор Н.Лазаренко Техред Л.Олийнык Корректор Т.Палий
Заказ 6080/48 Тираж 668 Подписное
ВНИИПИ Государственного комитета по изобретениям и открытиям при ГКНТ СССР
113035, Москва, Ж-35, Раушская наб., д. 4/5
Производственно-издательский комбинат "Патент", r. Ужгород, ул. Гагарина, 101