Изобретение относится к вычислительной технике и может быть исполь- зовано при отладке программ.
Цель изобретения - повьшение быст родействия -при отладке.
На чертеже представлена блок-схема предлагаемого устройства.
Устройство содержит блок 1 памяти адреса, блок 2 памяти данных, вто- рой 3 и первый 4 элементы И, блок 5 управления, счетчик 6,адреса, счетчик 7 импульсов, третий элемент И 8, блок 9 памяти контрольных точек, элемент ИЛИ 10, мультиплексор J, тай- мер 12, блок 13 индикации, адресный вход 14, информационный вход J5, вход 16 синхронизации и выхрд J7 останова.
Блок 1. памяти адресов предназна- чен для формирования признака достижения отлсикиваемым устройством одного из адресов, заданных как контрольная точка, и формирования сигнала разрешения анализа признака дости жения контролируемых условий., по совокупности достижения этих условий по адресной и информационной шинам.
Блок 2 памяти данных служит для формирования признака достижения от- лаживаемым устройством одной из заданных контрольных точек по информационной шине,
рлок 5 упра 5ления пре|ДС7 а;вляет со боц набор тумблеров, посредством которых задаются исходные данные для управления индикацией, задания режимов отладки, управления счетчиком 6 адреса трассы отлаживаемой программы
Счетчик 6 адреса предназначен для формирования адреса ячеек блока 9 па мяти, в (из) которые осуществляется запись (считывание) информации. Счетчик 7 импульсов служит для задержки сигнала синхронизации на заданную блоком 5 величину.
Блок 9 памяти контрольных точек предназначен для записи и последующего считывания трассы отлаживаемой программыII составленной по состояниям адресного входа 14, информационного входа 15 устройства, а также по состояниям выхода первого элемента И 3 и выхода таймера 12 на моменты достижения контрольных точек.
Мультиплексор 11 обеспечивает коммутацию информации с выходов блока 9 на вход блока 13 индикации в соответг
5
0 5
0
5
5
0
0
5
ствии с управляю1цими сигналами, поступающими с первого выхода блока 5 управления на пятый управляющий вход мультиплексора J1,
Таймер 12 формирует двоичный эквивалент временных интервалов между соседними контрольными точками. Блок 13 индикации предназначен для преобразования электрической информации в визуальную.
Отлаживаемое программное устройство подключается к адресному 4 и информационному 5 входам, входу J 6 синхронизации и выходу 17 останова устройства для отладки программы.
Устройство работает следующим образом.
Значения адресных и информационных Шин отлаживаемого устройства, определенные как контрольные точки, являются адресами, подаваемыми на адресные входы блока 1 памяти адресов и блока 2 памяти данных соответственно с адресного входа 14 и информационного входа 15 устройства, т.е, если контролируемым значением информационной шины является ее нулевое значе ние, тогда по нулевому адресу в блоке 2 памяти данных должен быть записан признак достижения контрольной точки. Аналогично по адресу, численное значение которого равно контролируемому (определенная как контрольная точка) значению адреса на адресном входе 14 устройства, должен быть записан признак достижения контрольг ной точки в блок 1 памяти адресов. Кроме того, в блоке 1 памяти адресов выделяется еще один разряд, выполняющий функцию строба разрешения анализа достижения контрольной точки по совокупности достижения этой точки на адресном 14 и информационном J5 входах устройства.
Таким образом, отслеживание прохождения контрольных точек программы можно вести либо только по шине адреЬ ica отлаживаемого устройства, либо по; совокупности достижения контрольных точек как по шине адреса, так и по шине данных отлаживаемого устройства . Признак достижения контрольной точки по адресной шине отлаживаемого программного устройства кодируется в бло- ке памяти адресов потенциалом 1, признак достижения контрольной точки по- информационной шине отлаживаемого программного устройства кодируется
в блоке 2 памяти данных потенциалом О, разрешение анализа достижения контрольной точки по совокупности информации на адресной магистрали и магистрали данных отлаживаемого устройства кодируется во втором разряде блока 1 памяти адресов потенциалом 1. Перед началом отладки программного устройства необходимо обну- лить счетчик 6 адреса, подачей на его третий сбросовый вход строба обнуления с пятого управляющего выхода и третьего выхода блока 5 на управляющий вход блока 9, подать потенци- ал, соответствующий операции Запись При отладке программного устройства на вход 16 синхронизации устройства для отладки программ синхронно с появлением информации на адресном входе 14 и информационном входе 15 поступает синхросигнал, которьй одновременно поступает на третий вход элемента И 3 и на один вход элемента И 4.
Рассмотрим два конкретных случая, в первом из которых информация на адресном входе 14 устройства является контролируемой, т.е. достигнута контрольная точка и контрольная точка оп- ределена только по признаку достижения одного из контролируемых адресов, Во втором случае контрольная точка определяется по совокупности достижения определенного адреса на магистра- ли адреса и определенной информации на магистрали данных отлаживаемого программного устройства,
По достижении отлаживаемым устройством контролируемого адреса в первом случае на первом выходе блока J памяти адресов присутствует потенциал 1, а на втором выходе - потенциал о, который запирает элемент И 3, По выдаче отлаживаемым устройством синхросигнала, который с входа J6 синхронизации поступает на третий вход элемента И 3 и на один вход эле- мента И 4, происходит его срабатывание и высокий потенциал с его выхода поступает одновременно на счетный вход счетчика 7 импульсов и на первый вход прямого счета счетчика 6 адреса, что приводит к наращиванию счетчика и формированию на его первом адресном выходе увеличенного адреса, который поступает на пятый адресный вход блока 9, одновременно с выхода счетчика 7 импульсов на шестой вход
разрешения записи блока 9 поступает строб записи с задержкой, заданной с блока 5 исходя из времени срабатывания счетчика 6 адреса и таймера 12, При этом информация, записываемая в блок 9, определяется следующим; состояние адресной магистрали отлаживаемого устройства; состояние магистрали данных отлаживаемого устройства; информация с выхода таймера 12; признак достижения контрольной точки по совокупности достижения контролируемых условий на информационной и адресной магистралях отлаживаемого устройства.
Информация с выхода таймера 12 представляет собой двоичный эквивалент времени, прошедшего с момента прихода предыдущей контрольной точки
Необходимость введения в информацию о контрольных точках данных с выхода таймера 12 обуславливается появляющейся возможностью оценивать время между двумя соседними контрольными точками. Это важно для контроля выполнения отлаживаемым устройством программ, содержащих циклические участки.
В случае если контрольная точка определяется по совокупности достижения определенного адреса на магист рали адреса и определенной информации на магистрали данных отлаживаемого устройства, на втором выходе блог ка 1 памяти адресов в момент достижения контрольной тонки присутствует потенциал J, разрешая срабатывание элемента И 3 в случае если на его втором и третьем входах присутствует потенциал I, Если по достижении контрольной точки информация на информационном входе 15 устройства является контролируемой, то низкий потенциал на выходе блока 2 памяти данных запрещает срабатывание элемента И З.Если в момент достижения контрольной точки информация на информационном входе 15 устройства не является контролируемой (заданной как контрольная точка), то, так как на ; выходе блока 2 памяти данных присут-i ствует потенцкал логической единицы, по приходу сигнала синхронизации с входа 16 синхронизации устройства срабатывает элемент И 3 и высокий пЬтенциал с его выхода поступает на один вход третьего элемента И 8 и на четвертый информационный вход блока 9
Присутствие высокого потенциала На выходе элемента Н 3 свидетельствует о том, что в выполнении отлаживаемым устройством программы произошел с сбой, так как в момент достижения определенного адреса информация на информационном входе 16 устройства отличается от ожидаемой и заданной как контрольная точка. При этом устройст- 10 Эо позволяет реализовать одну из двух возможных режимов отладки про граммного устройства.
В первом режиме с шестого выхода блока 5 управления на другой вход 1| элемента И 8 подается низкий потенциал, что запрещает прохождение потенциала 1 с выхода элемента И 3 на йыход элемента И 8. Это исключает
не по окончании выполнения отлаживаемым устройством программы, а именно в момент сбоя в ее выполнении. Для рестарта отлаживаемого программного устройства после его останова по условию несовпадения информации на информационном входе 15 устройства с ожидаемой (заданной как контрольная точка) в момент достижения определенного адреса на адресном входе 14 устройства необходимо подать низкий потенциал с шестого выхода блока 5 на один вход третьего элемента И 8, что приводит к снятию высокого актив-. ного потенциала на выходе 7 останова устройства для отладки программ. Для того, чтобы в процессе работы отлаживаемого программного устройст
название | год | авторы | номер документа |
---|---|---|---|
Устройство для отладки программно-аппаратных блоков | 1984 |
|
SU1290329A1 |
Устройство для отладки многопроцессорных систем | 1988 |
|
SU1541616A1 |
Устройство для отладки программно-аппаратных блоков | 1987 |
|
SU1497617A1 |
Устройство для отладки программно-аппаратных блоков | 1986 |
|
SU1363219A1 |
Устройство для отладки программно-аппаратных блоков | 1985 |
|
SU1315984A1 |
Устройство для отладки программ | 1988 |
|
SU1654827A1 |
Устройство для отладки микроЭВМ | 1985 |
|
SU1410708A1 |
ВНУТРИСХЕМНЫЙ ЭМУЛЯТОР | 1999 |
|
RU2214621C2 |
Устройство для отладки программно-аппаратных блоков | 1986 |
|
SU1425683A1 |
Устройство для отладки микропроцессорных систем | 1986 |
|
SU1462326A1 |
Изобретение относится к вычислительной технике и может быть.ис-- пользовано при отладке программ.Цель- изобретения - повьппение быстродейст-; ВИЯ при отладке. Устройство содержит: блок памяти адресов, блок 2 памяти данных, элементы И 3,4 и 8, блок 5 управления, счётчик 6 адреса, счетчик 7 импульсов, блок 9 памяти контрольных точек, элемент ИЛИ JO, мультиплексор 11, таймер 12, блок индика - ции 13. Изобретение позволяет создать более информационно емкую трассу от-; лаживаемой программы, увеличить быстродействие устройства, 1задать ческие условия достижения контрольиьйс точек программ. J ил.j о S (Л с 00 QO СО 1 4 сл
Появление на выходе 17 останова зысо- 20 ва не; происходило затирание информа :ого потенциала (который является я отлшкиваемого устройства актив- jibiM уровнем сигнала Останов) в слу iiae, если в -момент достижения опредеции по ранее пройденным контрольным точкам, второй выход переполнения счетчика 6 адреса соединен с одним входом элемента ИЛИ JO. Таким обраЛенного адр€;са информация на информа- 25 зом, по переполнении разрядной сетДионном входе 15 устройства отличается от ожидаемой и за,данной как контрольная-точка. Это позволяет прово- Йить отладку программного устройства
ки счетчика 6 адреса с его второго переполнения на один вход элемента ИЛИ 10 подается высокий- потенциа что также приводит к останову от
35
40
дает возможность просмотреть сод жимое блока 9, чтобы исключить п рю информации о пройденных контр ных точках. При этом второй вых переполнения счетчика 6 адреса и код элемента И 8 подключены соот ственно к второму и первому вход блока 5. Это дает возможность ор зовать на блоке 5 индикацию мом и причины останова отлаживаемого раммного устройства.
вез остановов, в реальном режиме вре- 30 ваемого программного устройства мени. Однако сам факт сбоя в программе отлаживаемого устройства не теряется, так как высокий потенциал с выхода элемента И 3 поступает одно- : ременно на четвертый информационный ход блока 9. В дальнейшем при про- |:мотре трассы отлаживаемой программы блоке 9 можно выявить все случаи фбоев в программе отлаживаемого устройства. Во втором режиме с шестого ыхода блока. 5 на другой вход элемен- ta И 8 подается высокий потенциал, Что разрешает прохождение высокого по- генциала с выхода,элемента И 3 через Элемент ИЛИ 10 на выход 17 останова устройства,Тогда если в момент достижения определенного адреса (заданного как контрольная точка) информация на информационном вхо- де 15 устройства отличается от
г ожид,аемой и заданной как контрольная точка, то после выдачи отлалсиваемым Программным устройством синхросигнала Иа выходе Г/ останова появляется высокий потенциал с выхода элемента ИЛИ 10, Отлаживаемое программное уст- .ройство прекращает обработку программы, что позволяет просмотреть содержимое блока 9 по нескольким адресам
50
Для просмотра содержимого бло в момент останова отлаживаемого
45-раммного устройства предусмотрен возможность реверсивного отсчета реса, подаваемого с адресного вы счетчика 6 адреса на пятый адрес вход блока 9. Для чтения содержи блока 9 с третьего выхода блока на седьмой управляющий вход блок подается логический потенциал, с ветствующий операции Чтение дл блока 9. С второго выхода блока
gg на второй вход реверсивного счет ка 6 адреса подается одиночный пульс, содержимое счетчика 6 адр уменьшается на единицу Последов тельная подача N таких импульсов
ции по ранее пройденным контрольным точкам, второй выход переполнения счетчика 6 адреса соединен с одним входом элемента ИЛИ JO. Таким обраки счетчика 6 адреса с его второго выхода переполнения на один вход элемента ИЛИ 10 подается высокий- потенциал, что также приводит к останову отлаживаемого программного устройства
и
дает возможность просмотреть содержимое блока 9, чтобы исключить потерю информации о пройденных контрольных точках. При этом второй выход переполнения счетчика 6 адреса и зы- код элемента И 8 подключены соответственно к второму и первому входам блока 5. Это дает возможность организовать на блоке 5 индикацию момента: и причины останова отлаживаемого программного устройства.
ваемого программного устройства
ваемого программного устройства
Для просмотра содержимого блока 9 момент останова отлаживаемого прог
аммного устройства предусмотрена возможность реверсивного отсчета адреса, подаваемого с адресного выхода счетчика 6 адреса на пятый адресный вход блока 9. Для чтения содержимого блока 9 с третьего выхода блока 5 на седьмой управляющий вход блока 9 подается логический потенциал, соответствующий операции Чтение для блока 9. С второго выхода блока 5
на второй вход реверсивного счетчика 6 адреса подается одиночный импульс, содержимое счетчика 6 адреса уменьшается на единицу Последовательная подача N таких импульсов да
ет возможность просмотреть содержимое блока 9 на необходимую глубину, По окончании просмотра содержимое блока 9 для рестарта программы отла- живаемого устройства с третьего выхода блока 5 на седьмой управляющий :вход блока 9 памяти подается потенци - ал, соответствующий операции Запись что переводит блок 9 в режим записи. G пятого выхода блока 5 на третий . сбросовый вход счетчика 6 адреса подается обнуляющий импульс, что приво - дит к снятию высокого активного потенциала на .выходе 7 останова устройства для отладки программ. Визу- ; альный контроль записанной в блоке 9 информации в момент останова отлаживае- :мого программного устройства осущест- вляется заданием кода отображаемой информации, подаваемого с первого вьр- хода блока 5 на пятый управляющий :вход мультиплексора 1 1, который в зависимости от этого кода коммутирует на вход блока 13 индикации информацию с первого, второго, третьего и четвертого выходов блока 9. Чередуя подачу вычитающего строба с второго выхода блока 5 и кода отображаемой информации с его первого выхода, можно провести ретроспективный анализ информации о прохождении программы отлаживаемого устройства в необходи - мом объеме. Таким образом, задавая последовательность контролируемых ресов В блоке памяти адресов по программе отлаживаемого устройства, можно составить в блоке 9 трассу вы полнения этой программы, просмотр которой в моменты останова дает возможность делать выводы об условиях ходов в программе, причинах сбоев, рбщей работоспособности программы. Кроме того, введение в устройство дли отладки программы таймера 12 дает возможность оценить время обработки; программой отлаживаемого устройства циклических участков алгоритма и ти поиск оптимальных условий входа (выхода) и (из) участка.
-
Формула изобретения
Устройство для отладки программ, содержащее первый элемент И, элемент ИЛИ, мультиплексор, блок индикации блок11амяти контрольных точек, блок уп- (равления, счетчик адреса, счетчик импульсов, причем выходы эыбора индикации.
11
20
26
g , 10 . -; - - - - ; -
.
3997458
.признака записи и задания временной задержки блока управления соединени соответственно с входом управления мультиплексора, входом записи блока памяти контрольных точек и информационным входом счетчика импульсов, выход первого элемента И соединен со счетным входом счетчика импульсов, адресный вход устройства соединен с первым информационным входом блока памяти контрольных точек, выходы которых соединены с информационными , входами мультиплексора, выход которого соединен с эходом блока индикации, отличающееся тем., что, с целью повышения быстродействия, в него введены блок памяти адресов, блок памяти данных, 1 второй и третий элементы И и таймер, причем адресный вход устройства соединен с адресным |ВХодом блока памяти адресов, пёрйый и второй выходы которого соединены с первыми входами соответственно пер- ,вого и второго элементов И, выход первого элемента И соединен со счетным входом сложения счетчика адреса, информационный выход и выход перепол нения которого соединены соответст- ; венно с адресным входом блока памяти контрольных точек, первым входом ос-; танова таймера и выходом пр 1знака ос танова устройства, выход кода време- ни таймера соединен с вторым информационным входом блока памяти конт- рольных точек, информационный вход устройства соединен с адресным входом блока памяти данных и третьим ин|- формационным входом блока памяти кон|г- рольных точек, выход блока памяти данных соединен с вторым входом второго элемента И, выход которого соединен с входом обращения блока памя- :ти контрольных точек и первым входом, третьего элемента И, выход которого соединен с вторым входом элемента ИЛИ и первым входом признака сбоя блока управления, выход переполнения счетчика адреса соединен с вторым , входом признака сбоя блока управлени|1, выход переполнения счетчика импуль- сов соединен с входом записи блока памяти контрольных точек, вход синхронизации устройства соединен с вторым входом первого элемента И и третьим входом второго элемента И, выходы управления счетом, начальной , установки и блокировки сбоя блока равления соединены соответственно с
- 30
35
40
45
50
55
913997А510
признаком реверсивного счета счетчи- третьего элемента И, выход первого Ка адреса, с входом начальной установ- элемента И соединен с входом запуска ки счетчика адреса и вторым входом таймера.
Устройство для отладки программ | 1982 |
|
SU1049914A1 |
Приспособление для точного наложения листов бумаги при снятии оттисков | 1922 |
|
SU6A1 |
Устройство для отладки программ | 1983 |
|
SU1174932A1 |
Приспособление для точного наложения листов бумаги при снятии оттисков | 1922 |
|
SU6A1 |
Авторы
Даты
1988-05-30—Публикация
1986-11-05—Подача