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

 

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

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

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

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

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

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

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

Устройство вырабатывает сигналы прерывания по двум каналам. На первом выходе устройства вырабатывается сигнал при переполнении второго счетчика, а на втором выходе по достижении первым счетчиком состояния, соответствующего содержимому первого регистра. При этом оба счетчика работают от единого генератора. Очередность выработки сигналов на первом и вторым выходах устройства, а также интервал времени между ними определяются исходными состояниями счетчиков и первого регистра. При установке первого счетчика используются его входы для параллельного заноса информации. Установку второго счетчика, не имеющего цепей параллельного заноса информации, осуществляют в два этапа. Сначала в первый счетчик заносят код, дополнительный к загружаемому во второй счетчик. Затем на счетные входы обоих счетчиков подают сигналы с генератора до тех пор, пока первый счетчик не выработает сигнал переполнения.

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

На фиг. 1 приведена структура устройства, где 1 генератор, 2-5 элементы И, 6 и 7 счетчики, 8 и 9 блоки сравнения, 10 и 11 регистры, 12, 13 и 14 элементы ИЛИ, 15, 16 и 17 триггеры, 18 и 19 элементы задержки, 20 формирователь длительности, 21 элемент НЕ, 22 первый выход прерывания устройства, 23 второй выход прерывания устройства, 24 второй режимный вход устройства, 25 первый режимный вход устройства, 26 пусковой вход устройства, 27 вход начальной установки устройства, 28 выход неисправности устройства, 29 установочный вход устройства, 30 информационный вход устройства.

Выход генератора 1 соединен с первым входом элемента И 2, второй вход которого связан с прямым выходом триггера 15, а выход со счетными входами счетчиков 6 и 7. Вход обнуления счетчика 6 подключен к входу 27 начальной установки устройства, а выход переполнения к первому выходу 22 прерывания устройства, первому входу элемента ИЛИ 13 и единичному входу триггера 16. Установочный вход счетчика 7 соединен с входом 29 устройства, информационный вход с входом 30 устройства, выход переполнения с первым входом элемента И 3, а информационный выход с первыми входами блоков 8 и 9 сравнения. Второй вход элемента И 3 связан с вторым режимным входом 24 устройства, а выход с первым входом элемента ИЛИ 12, второй вход которого соединен с выходом элемента И 5 и выходом 28 устройства, третий вход с первым входом элемента ИЛИ 14 и входом 27 начальной установки устройства, а выход с нулевым входом триггера 15, единичный вход которого подключен к пусковому входу 26 устройства. Выход блока 8 соединен с вторым выходом 23 прерывания устройства, а второй вход с выходом регистра 10. Второй вход блока 9 связан с выходом регистра 11, а выход с вторым входом элемента ИЛИ 13 и единичным входом триггера 17, прямой выход которого соединен с первым входом элемента И 4, второй вход которого подключен к прямому выходу триггера 16, а выход к входам элемента НЕ 21 и формирователя 20. Выход элемента ИЛИ 13 соединен с входом элемента 18, выход которого связан с первым входом элемента И 5, второй вход которого подключен к выходу элемента НЕ 21, а третий вход к первому режимному входу 25 устройства. Вход элемента 19 соединен с выходом формирователя 20, а выход с вторым входом элемента ИЛИ 14, выход которого связан с нулевыми входами триггеров 16 и 17.

Установка устройства в исходное состояние осуществляется подачей на его вход 27 начальной установки сигнала, который, пройдя через третий вход ИЛИ 12 на R-вход триггера 15, устанавливает его в нулевое состояние. В результате этого сигналом с прямого выхода триггера 15 на втором входе элемента И 2 блокируется прохождение через него тактовых сигналов с генератора 1 на счетные входы счетчиков 6 и 7. Кроме того, сигналом с входа 27 через первый вход ИЛИ 14 триггеры 16 и 17, а также счетчик 6 устанавливаются в исходное состояние.

Перед использованием устройства в основном режиме необходимо выполнить установку счетчиков в определенные состояния, определяющие очередность сигналов прерывания на первом и втором выходах устройства, а также интервал времени между этими сигналами. При этом надо иметь ввиду, что сигнал на первом выходе формируется при переполнении счетчика 6, а сигнал на втором выходе по достижении счетчиком 7 состояния, соответствующего содержимому регистра 10.

Для загрузки счетчика 7 на его информационный вход подают код через информационный вход 30 устройства. Затем формируют сигнал на входе 29 устройства, связанном с установочным входом счетчика. В результате в счетчике фиксируется вводимый код. Указанная операция используется для установки счетчика в произвольное состояние, включая нулевое.

Для загрузки счетчика 6 на первом режимном входе 24 устройства устанавливается разрешающий потенциал, который открывает элемент И 3 по второму входу. С использованием информационного и установочного входов устройства загружают в счетчик 7 код, являющийся дополнительным к коду, который необходимо установить в счетчике 6. После этого подачей сигнала на пусковой вход 26 устройства устанавливают в "1" триггер 15. Сигналы с генератора 1 начинают поступать через элемент И 2 на счетный вход счетчиков 6 и 7. При переполнении счетчика 7 на соответствующем его выходе вырабатывается сигнал, который через первый вход элемента И 3 и первый вход элемента ИЛИ 12 сбрасывает триггер 15, блокируя поступление на счетчики сигналов с генератора. В результате этого в счетчике 6 зафиксировано необходимое значение. Кроме установки счетчиков в нужное состояние устанавливаются необходимые коды в регистры 10 и 11. В регистр 10 записывается значение, равное состоянию счетчика 7, при котором должен вырабатываться сигнал на втором выходе 23 прерывания устройства. При этом на первом выходе 22 прерывания устройства сигнал вырабатывается при переполнении счетчика 6. В регистре 11 устанавливается значение, которое при исправной работе устройства должен иметь счетчик 7 в момент выработки сигнала на выходе 22 устройства.

В основном режиме работы на первом режимном входе 25 устройства устанавливают разрешающий потенциал, открывая по третьему входу элемент И 5. Устройство запускается установкой триггера 15 в "1" через вход 26, после чего тактовые сигналы начинают поступать через первый вход элемента И 2 на счетные входы счетчиков. Блоки 8 и 9 совпадения оперативно сравнивают текущее состояние счетчика 7 с содержимым регистров 10 и 11 эталона соответственно. При совпадении содержимого счетчика 7 со значением, хранимым в регистре 10, на выходе блока 8 формируется сигнал, поступающий на второй выход 23 прерывания устройства.

Элементы ИЛИ 13, 14, И 4, 5, формирователь 20, триггеры 16 и 17, элементы 18 и 19 задержки, а также элемент НЕ 21 образуют схему контроля счетчиков, которая работает следующим образом. Запуск схемы осуществляется сигналом с выхода счетчика 6 либо с выхода блока 9 сравнения при совпадении содержимого счетчика 7 и регистра 11. Появление указанных сигналов фиксируется в триггерах 16 и 17 соответственно установкой их через единичные входы. Временные диаграммы работы схемы контроля представлены на фиг. 2-5, причем диаграммы на фиг. 2 и 3 соответствуют исправной работе устройства при различной последовательности появления сигналов на выходах блока 9 и счетчика 6, диаграммы на фиг. 4 и 5 описывают неисправную работу устройства при запаздывании сигналов с выходов счетчика 6 и блока 9 соответственно.

Рассмотрим случай, когда первым приходит сигнал с блока 9. Пройдя через второй вход элемента ИЛИ 13 и элемента 18, этот сигнал, задержанный на время, определяемое параметром элемента 18, поступает на первый вход элемента И 5. Кроме того, сигнал с выхода блока 9 устанавливает триггер 17 в единичное состояние. При этом на втором входе элемента И 4, связанном с прямым выходом триггера 17, формируется разрешающий потенциал. Если к моменту появления импульса на первом входе элемента И 5 на схему контроля успеет поступить сигнал с выхода счетчика 6 и при этом установить в единичное состояние триггер 16, то оба входа элемента И 4, а следовательно, и его выход имеют потенциалы высокого уровня. В результате инверсии этого сигнала на элементе НЕ 21 элемент И 5 закрывается по второму входу и не пропускает импульс с первого входа. В этом случае сигнал неисправности (положительный импульс) на соответствующем выходе 28 устройства не формируется. При этом сигнал с выхода элемента И 4, сформированный на формирователе 20 и задержанный на элементе 19, через второй вход элемента ИЛИ 14 и его выход поступает на нулевые входы триггеров 16 и 17, сбрасывая их в исходное состояние.

Если сигнал с выхода счетчика 6 поступает на схему контроля с задержкой, превышающей задержку на элементе 18, то с учетом присутствия в рассматриваемом режиме на третьем входе элемента И 5 разрешающего потенциала сигнал с первого входа элемента И 5 проходит на его выход и устройство вырабатывает сигнал неисправности на выходе 28. Кроме того, через второй вход элемента ИЛИ 12 обнуляется триггер 15, что ведет к блокировке генератора.

Аналогично работает схема контроля и в том случае, если первым приходит сигнал с выхода счетчика 6. Этот сигнал устанавливает в единичное состояние триггер 16, а также поступает через первый вход элемента ИЛИ 13 и элемент 18 задержки на первый вход элемента И 5. Чтобы не был сформирован сигнал неисправности на соответствующем выходе устройства, необходимо, чтобы к моменту появления импульса на первом входе элемента И 5 на его втором входе сформировался запрещающий уровень. Для этого необходимо, чтобы к указанному моменту времени на схему контроля успел поступить сигнал с выхода блока 9, устанавливающий триггер 17 в единичное состояние, в результате чего в момент опроса элемента И 5 по первому входу оба входа элемента И 4 имеют потенциалы высокого уровня и, следовательно, элемент И 5 закрыт по второму входу.

Благодаря тому, что величина задержки сигнала на элементе 19 превышает задержку на элементе 18, триггеры 16 и 17 сбрасываются не раньше момента появления второго импульса на первом входе элемента И 5. За счет этого исключается формирование ложного сигнала неисправности.

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

Формула изобретения

УСТРОЙСТВО ДЛЯ ФОРМИРОВАНИЯ СИГНАЛОВ ПРЕРЫВАНИЯ ПРИ ОТЛАДКЕ ПРОГРАММ, содержащее первый и второй счетчики, первый и второй элементы И, генератор импульсов, первый триггер, первый элемент ИЛИ, первый регистр и первый блок сравнения, причем информационный выход первого счетчика соединен с первым входом первого блока сравнения, второй вход которого подключен к выходу первого регистра, выход первого элемента ИЛИ соединен с нулевым входом первого триггера, отличающееся тем, что в него введены второй блок сравнения, второй регистр, третий и четвертый элементы И, второй и третий элементы ИЛИ, первый и второй элементы задержки, второй и третий триггеры, формирователь длительности и элемент НЕ, причем выход генератора импульсов соединен с первым входом первого элемента И, второй вход которого подключен к прямому выходу первого триггера, единичный вход которого является пусковым входом устройства, выход первого элемента И соединен со счетными входами первого и второго счетчиков, выход переполнения второго счетчика является первым выходом прерывания устройства и соединен с первым входом второго элемента ИЛИ и единичным входом второго триггера, выход второго элемента ИЛИ через первый элемент задержки соединен с первым входом третьего элемента И, второй вход которого является первым режимным входом устройства, а третий вход подключен к выходу элементов НЕ, вход которого соединен со входом формирователя длительности и с выходом четвертого элемента И, входы которого соединены соответственно с прямыми выходами второго и третьего триггеров, единичный вход третьего триггера объединен со вторым входом второго элемента ИЛИ и соединен с выходом второго блока сравнения, входы которого подключены соответственно к выходу второго регистра и информационному выходу первого счетчика, выход переполнения которого соединен с первым входом второго элемента И, второй вход которого является вторым режимным входом устройства, а выход соединен с первым входом первого элемента ИЛИ, второй вход которого объединен со входом обнуления второго счетчика, первым входом третьего элемента ИЛИ и является входом начальной установки устройства, второй вход третьего элемента ИЛИ через второй элемент задержки подключен к выходу формирователя длительности, а выход соединен с нулевыми входами второго и третьего триггеров, выход третьего элемента И подключен к третьему входу первого элемента ИЛИ и является выходом неисправности устройства, информационный и установочный входы первого счетчика являются одноименными входами устройства, выход первого блока сравнения является вторым выходом прерывания устройства.

РИСУНКИ

Рисунок 1, Рисунок 2, Рисунок 3, Рисунок 4, Рисунок 5



 

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Изобретение относится к способам управления перегрузкой сообщениями элементарной программы в электронной системе коммутации

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

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

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

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