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

 

Изобретение относится к вычислительной технике и может быть использовано для отладки программ специализированных вычислительных машин в реальном масштабе времени. Целью изобретения является повышение достоверности отладки программ. Устройство содержит регистр 9 считанной информации, блок 8 оперативной памяти, регистры 1-4,7 адреса, буферный регистр 6, коммутаторы 25, 26, 27, 33, триггер 28, счетчик 5 времени, элементы И 14-18, элементы ИЛИ 13,21, элемент задержки 10, триггер 11 записи переходов, регистр 12 управления, генератор 20 одиночных импульсов, элементы ИЛИ-НЕ 30-31, элемент И-НЕ 34, входы 19, 22-24 устройства, вход 35 единичного потенциала устройства, выход 29 устройства и выход 36 устройства "Останов" с соответствующими связями. Вновь ввденные элементы обеспечивают анализ записываемой информации и в случае повторной записи происходит вывод накопленной информации, тем самым сохраняется вся информация о всех переходах. 1 ил.

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

СОЦЩЛИСТИЧЕСНИХ

РЕСПУБЛИК (5)) 5 С 01 F 1 1/30

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

И А ВТОРСКОМУ СВИДЕТЕЛЬСТВУ

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

ПО ИЗОБРЕТЕНИЯМ И ОТКРЫТИЯМ

ПРИ ГКНТ СССР (21) 4430418/24-24 (22) 05.04.88 (46) 07.08.90. -Бюл. i9- 29 (72) А.К.Чеботарь и Л.Т.Кирьяк (53) 681.3 (088.8) (56) Авторское свидетельство СССР

М 598077, кл. G ОЬ F 9/20, 1974.

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

Ф 1166122, кл. С ОЬ F 11/30, 1984. (54) УСТРОЙСТВО ДЛЯ ОТЛАДКИ ПРОГРАММ (57) Изобретение относится к вычислительной технике и может быть использовано для отладки программ специализированных вычислительных машин в реальном масштабе времени. Целью изобретения является повышение достоверности отладки программ. Устройство содержит регистр 9 считанной ин„„S0„„1583744 А 1

2 формации, блок 8 оперативной памяти, . регистры 1,4,7 адреса, буферный регистр

6, коммутаторы 25, 26, 27, 33, триггер 28, счетчик 5 времени, элементы И 14-18, элементы HJIH 13, 21, элемент задержки 10,триггер 11 записи переходов, регистр 12 управления, генератор 20 одиночных импульсов, .элементы ИЛИ-HF. 30-3 1, элемент И-HE

34, входы 19, 22 — 24 устр-ва, вход 35 единичного потенциала уства, выход 29 уст-ва и выход 36 уства "Останов" с соответствующими свяv зями. Вновь введенные элементы обеспечивают анализ записываемой информации и в случае повторной записи происходит вывод накопленной информации, тем самым сохраняется вся информация о всех переходах. 1 ил.

1583744

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

Цель изобретения — повышение достоверности отладки программ.

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

Устройство для отладки программ содержит регистр 1 адреса, регистры

2-4, счетчик 5 времени, буферный регистр 6, регистр 7 адреса, блок 8 оперативной. памяти, регистр 9 считанной информации, элемент 10 задержки, триггер 11 записи переходов, регистр

12 управления, элемент ИЛИ 13, элементы И 14-18, вход 19 устройства, генератор 20 одиночных импульсов, элемент ИЛИ 21, входы 22-24 устройства, коммутаторы 25-27, триггер 28, выход 29 устройства, элементы ИЛИ-НЕ

30 и 31, элемент HE 32, коммутатор 25

33,элемент И-HE 34, вход 35 единичного потенциала устройства, выход 36 останова устройства.

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

Устройство может работать в пяти режимах з апис и информации в блок памяти (один режим обнуления и четыре рабочих режима), а также в режиме считывания из блока памяти. Режим работы устройства определяется текущими задачами при отладке программ и устанавливается с помощью соответствующих тумблеров на наборном поле, соединенных с регистром 12 управления и вторым ка- 40 налом коммутатора 25. Перед началом работы обнуляются регистры 1-4, 6 и 7, счетчик 5 времени, триггер 11 записи переходов, триггер 28 и блок 8 оперативной памяти (цепи сброса регистров, 45 счетчика и триггеров не показаны), Регистр 1 адреса при записи информации через кодовый вход функционирует как параллельный статический регистр, а при подаче импульса на счетный вход — как последовательный счетчик. На вход 19 устройства поступает код со счетчика команд СЦВМ, который в каяспом цикле работы увеличивается на единицу (СК+1). Когда

55 в СЦВИ вырабатывается условие программного перехода, то в машине вырабатывается сигнал "Перезапись счетчика команд" (Пер.,K), который сбрасывлет в нуль счетчик команд СЦВМ, и после этого в него записывается адрес команды, куда произошел переход.

Каждый цикл работы .отлаживаемой

СЦВИ сопровождается импульсами синхронизации (СИ). 3а один цикл из намяти СЦВМ производится считывание одной команды, адрес которой соответствует состоянию счетчика команд

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

Обнуление блока оперативной памяти 8 происходит следующим образом.

C второго выхода регистра 12 управления выдается сигнал на первый вхоц триггера 11 записи переходов, который устанавливает его в состояние логическои "1" и через элемент ИЛИ 13 выдается постоянное разрешение на запись в регистр 1 и на элементы И

15-18. С пятого выхода регистра 12 управления выдается логическая "1" на управляющие входы коммутаторов

26 и 27 для прохождения информации со счетчика 5 времени. С четвертого выхода регистра 12 управления выдается сигнал запрета на элемент И 14 и одновременно сигнал разрешения на. втором входе триггера 28, удерживающий его во взведенном состоянии. С седьмого выхода регистра 12 управления выдается сигнал на первый вход коммутатора 33, разрешающий прохождение логической " 1" по второму входу коммутатора 33 на третий вход элемента И-HE 34, а с шестого выхода регистра 12 управления выдается логическая "1" на первый вход элемента И-НЕ 34.

При подаче сигнала на генератор 20 одиночных импульсов вырабатывается импульс, длительность которого превосходит длительность последовательности тактов, формируемая элементом

10 задержки, от переднего фронта этого импульса на элементе 10 задержки формируется последовательность тактов.

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

И 15 производит запись в регистр 4 состояния регистра 3 ° Второй импульс с третьего выхода элемента 10 задержки через элемент И 17 производит запись в регистр 3 состояния регистра

2. Третий импульс с первого выхода

1583744 6 элемента 10 задержки через элемент И иэ регистра 2 в регистр 3 и из регист18

8 производит запись в регистр 2 сос- ра 1 в регистр 2. Таким образом постояния регист а 1 р 1. Четвертый импульс ле третьего такта в регистрах 2-4 с второго выхода элемента 10 задерж- находятся адреса команд тр и

5 д трех послед- ки через элемент И 16 и элемент И-HE них переходов, выданных со счетчика

34 производит запись по нулевому ("О") команд СЦВМ. адресу в блок 8 оперативной памяти При этом из блока 8 оперативной состояния б фе ного ег уфер регистра 6, т.е. памяти происходит считывание информанулевое состояние. Задний фронт имуль- 0 ции через мн

1О через многоступенчатый элемент са с генератора 20 одиночных импульсов ИЛИ-НЕ Если

1 сли по данному адресу ранее подаваемого на счетный вход регистра . не было записи информации (ни одной

1Ä 1 логической "1"") то по четвертому на единицу. От следующего импульса такту с элемента 10 задержки через генератора 20 процедура повторяется 15 элементы И 16 и И-HF. 34 производится и в блоке оперативной памяти произ- запись в ячейку блока 8 оперативной водится обнуление следующего адреса. памяти. Информация записывается из

Таким образом, обнуляется блок 8 буферного регистра 6 по адресу, запиоперативной памяти. санному в регис 7, К г стре, роме того, Устройство в остальных четырех 20 четвертый такт задним фронтом перерабочих режимах записи информации рабо- водит триггер 11 записи переходов в тает следующим образом. исходное сост ходное состояние, т.е. в регистр

Работа устройства в первом режиме адреса и соответствующие схемы И вызаключается в фиксации блоком 8 one- дается запрет до прихода очередного ративной памяти по каждому его адре- 25 сигнала "Перепись СК". При наличии су, совпадающему с адресом данного хотя бы одной логической 1 в блоке перехода кода, соответствующего адре- 8 оперативной памяти на выходе многосам предыдущего и последующего пере- ступенчатого элемента ИЛИ-НЕ 30 будет ходов относительно данного; При.этом логический "О" и по приходу четвертос регист а 12 п ав р у р ления и четвертого 30 го такта низким уровнем с элемента HE выхода выдается сигнал запрета на 32 на выходе элемента ИЛИ-НЕ 31 форвторой вход элемента И 14 ента И 14 и на еди- мируется высокий уровень сигнала ничный вхо т игге а 28 д Р Р 28, которыи посII

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

35 разрешение (Лог. "0")1 (ог. "О ) на адресные следующего циклического учасгка. входы коммутаторов 25 и 26-27 соот- Работа устройства во втором режиме ветственно. С вто OI о вь

P хода регист- заключается в фиксации времени исполIpa 12 управления вь ается аз щ р решение О нения команд переходов. Сигналами на триггер записи пе ехо ов р д работы меток времени являются синхроимпульсы по второму вхо (вхо 23 му ду (д 23 устройст- количество которых равно количеству

Э ва, с третьего выхода — логический циклов (СИ), пройденных СЦВМ с момен(разрешение) на первый вход эле- та включения дан ия данного режима. С четвермента ИЛИ 13 а с шестог

У oro выхода ре- 45 того выхода регистра 12 управления гистра 12 п авления

У Р вьщ ае т ся ло ги- выдается разрешение на второй вход ческая "1" на вход 23 устройства элемента И 14, сигнал со второго вхо да триггера 28, удерживающий его во записи переходов устанавливается в взведенном состоянии, снимается, а а через вход 19 устройства и - 5О с пятого выхода регистра 12 управлекоммутатор 25 в регистр 1 поступает ния на управляющие входы выдается адрес команды перехода. По сигналу разрешение на передачу информации со

СИ, поступающему из СЦВМ, после при- счетчика 5 времени. Остальные сигнахода адреса перехода через вход 22 лы с выхода Регистра 12 управления устройства и элемент ИЛИ 21 н

1 на эле- 5 остаются неизменными по сравнению с мент 10 задержки вырабатывается по- предыдущим режимом. Таким образом, следовательность тактов и производит- B этом Режим СИ ( жим по каждому СИ (после ся по ним последовательная перезапись каждого цикла работы СЦВМ) содержиинформации из регистра 3 в регистр 4 мое счетчик .5 а . времени вторым тактом

1583744 элемента 10 задержки увеличивается на единицу через элемент И 14.

После прихода из СЦВМ адрега команды перехода, записанного в регистре i взводится триггер 28 и на буферном регистре 6 выдается разрешение записи информации из счетчика 5 времени через коммутаторы 26 и 27. В регистр 6 записывается (фиксируется) время поступления из СЦВМ адреса команды перехода. По первому такту следующего цикла триггер 28 сбрасывается и выдает запрет на запись в регистр 6. При поступлении нового сигнала "Перепись! СК" вторым тактом схем задержки через регистр 3 и регигтр 7 адреса записывается адрес команды перехода,время выборки которого иэ памяти СЦВМ записано уже в регистр 6 2О по предыдущему сигналу "Перепись СК .

Четвертым тактом информация с ре.гистра 6 записывается в блок 8 оперативной памяти по адресу, записанному в регистре 7, и выдается разрешение записи информации в регистр 6 до первого такта следующего цикла.

Если программа переходит на циклический участок программы, то по четвертому такту с выхода формируется сиг- 3О нал 110тстанов".

Работа устройства в третьем режиме заключается в фиксации времени выборки команд из памяти СЦВМ. В этом режиме с второго выхода регистра 12 управления на первый вход триггера 11 записи перехода выдается сигнал, который удерживает его постоянно во взведенном состоянии и на регистр 1 адреса через элемент ИЛИ 13 выдается 40 сигнал разрешения на запись постоянно. Остальные сигналы регистра 12 управления такие же, как в предыдущем режиме. При этом все адреса команд, поступающие на вход 19 устройства, записываются в регистр 1 и при поступлении СИ (в каждом цикле работы

СЦВМ) переписываются из регистра 3 в регистр 7, определяя номер ячейки блока 8 оперативной памяти, в которой из счетчика 5 времени через регистр 6 записывается время .(т.е., номер цикла) выборки этой команды.

Если программа переходит на циклический участок программы, то по четвертому такту с выхода формируется игнал Останов

Работа устройства в четвертом режиме заключается в фиксации адресов — откуда и куда произведен переход, при этом с третьего выхода регистра 12 управления выдается. сигнал разрешения на элемент ИЛИ 13, благодаря которому на элементах И 15,17,18 и регистре 1 выдается разрешение независимо от состояния триггера записи переходов. С пятого выхода регистра 12 управлени4 выдается сигнал на управляющий вход коммутаторов 26 и 27, который подключает регистры 2-4. С четвертого выхода регистра 12 управления выдается запрет на элемент И 14 и постоянное разрешение записи в буферный регистр 6

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

СК".. Поэтому в момент записи информации в блок 8 оперативной памяти из регистра 6 через коммутатор 27 имеется адрес команды, откуда производится переход (с регистра 4), и через коммутатор 26 с регистра 2 адрес команды, на который производится переход. Остальные сигналы аналогичны. первому режиму.

В режиме считывания информации из блока 8 оперативной памяти с шестого выход регистра 12 управления выдается сигнал Считывание оперативной памяти (логический "О"), а с первого выхода сигнал на третий вход коммутатора 25, к которому через вход 24 устройства подключается сигнал на первый вход триггера 11 записи перехода, .который удерживает его во взведенном состоянии-, с выхода триггера 11 записи перехода. Таким образом; выдается постоянное разрешение на "Запись" регистра 1 адреса и на элементах И

15-18. При этом на наборном поле набирается код, соответствующий исходному адресу ячейки памяти блока 8 оперативной памяти.

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

Ф что в этом режиме производится считывание информации блока 8 оперативной памяти через регистр 9 считанной информации. Таким образом, можно просf583744

Устройство для отладки программ, содержащее генератор одиночных импульсов, триггер, три коммутатора и ре» 10 гистр управления, первый и второй регистры адреса, пять элементов И, блок оперативной памяти, элемент задержки, регистр считанной информации, триггер записи переходов и буферный регистр, 15 первый, второй и третий регистры, счетчик времени, два элемента ИЛИ, причем выход буферного регистра соединен с информационным входом блока оперативной памяти, выход которого 20 ,соединен с входом регистра считанной информации, выход которого является выходом устройства, выход первого

jpeгистра адреса соединен с адресным

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

45 элемента И-НЕ и через элемент HE с вто-.

I рым входом второго элемента ИЛИ-HE вымотреть всю информацию с блока 8 опе, ративной памяти на световом табло или вывести на цифропечать.

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

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

ИЛИ-НЕ, выход которого соединен с пер.вым входом второго элемента ИЛИ-НЕ и с первым информационным входом четвертого коммутатора, выход четвертого элемента И соединен с третьим входом

1583744

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

Редактор Н.Тупица Техред Л.Кравчук Корректор M.Ñàìáopñêàÿ

3акаэ 2246

Тираж 539

Подпис ное

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

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

Производственно-издательский комбинат "Патент", г.ужгород, ул. Гагарина,1 )1 ход которого является выходом останона устройства, выход элемента И-HE соеДинен с входом записи блока оперативной памяти, второй информационный вход коммутатора соединен с единичным потенциалом устройства.

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

 

Наверх