Устройство для отладки программно-аппаратных блоков
Иллюстрации
Показать всеРеферат
Изобретение относится к области вычислительной техники и может быть использовано при создании микро- ЭВМ, микроконтроллеров и другихустройств на основе микропроцессоров. Целью изобретения является расширение функциональных возможностей за счет увеличения полноты автономной отладки программного обеспечения. Устройство содержит три коммутатора, два запоминающих блока переадресации, синхронизатор, два регистра, элемент 2И-Ш1И, дешифратор, счетчик, запоминающие блоки адреса и данных, регистр управления, коммутатор управляющих сигналов, блок сравнения, два триггера, четырнадцать групп элементов И, шесть элементов ИЛИ, три элемента И и одновибратор. Устройство через управляющие, адресные и информационные шины подключено к управляющей и отлаживаемой ЭВМ. 2 з.п. ф-лы, 9 ил. (Л
СОЮЗ СОВЕТСНИХ
СОЦИАЛИСТИЧЕСКИХ
РЕСПУБЛИН
А1. (19) (11) (5D 4 G 06 F 11/00
ОПИСАНИЕ ИЗОБРЕТЕНИЯ
ГОСУДАРСТВЕННЫЙ НОМИТЕТ СССР
ПО ДЕЛАМ ИЗОБРЕТЕНИЙ И ОТКРЫТИЙ
H А ВТОРСИОМУ СВИДЕТЕЛЬСТВУ (21) 3816650/24-24 (22) 02.10,84 (46) 15.02.87. Бюл. № 6 (71) Институт кибернетики им. B.M.Ãëóøêîâà (72) В.И.Ланда, A.В.Палагин и В,И.Сигалов (53) 681.3(088.8) (56) Иванов Ю.В., Масленников И.А. .Вопросы проектирования систем автоматизации разработки программ для микроЭВМ. — Управляющие системы и машины, 1978, ¹ 5. (54) УСТРОЙСТВО ДЛЯ ОТЛАДКИ ПРОГРАММНО-AImAPATHbIX БЛОКОВ (57) Изобретение относится к области вычислительной техники и может быть использовано при создании микроЭВМ, микроконтроллеров и других. устройств на основе микропроцессоров °
Целью изобретения является расширение функциональных возможностей sa счет увеличения полноты автономной отладки программного обеспечения.
Устройство содержит три коммутатора, два запоминающих блока переадресации, синхронизатор, два регистра, элемент
2И-ИЛИ, дешифратор, счетчик, запоминающие блоки адреса и данных, регистр управления, коммутатор управляющих сигналов, блок сравнения, два триггера, четырнадцать групп элементов И, шесть элементов ИЛИ, три элемента И и одновибратор. Устройство через управляющие, адресные и информационные шины подключено к управляющей и отлвеиввемой ЭВИ . 2 s.ï. фмлы, Я
9 ил.
12903
Изобретение относится к вычислительной технике и может быть испольsовано при создании микроЭВМ,, микроконтроллеров и других устройств на основе микропроцессоров. 5
Цель изобретения — расширение функциональных возможностей за счет возможности имитации функционирования системы ввода-вывода при отладке программного обеспечения. 10
На фиг.1 и 2 представлена схема устройства для отладки программноаппаратных блоков; на фиг.3 — схема синхронизатора; на фиг.4 — схема алгоритма работы устройства; на фиг.5 — схема запоминающего блока (ЗБ) переадресации; на фиг.б — схема ЗБ данных (адреса); на фиг.7 схема регистра управления; на фиг.8— схема блока сравнения; на фиг. 9 -. 20 схема коммутатора управляющих сигналов.
Устройство (фиг. l и 2) содержит первый 1 и третий 2 коммутаторы, пер- 25 вый 3 и второй 4 ЗБ переадресации, синхронизатор 5, счетчик 6, ЗБ 7 адреса и 8 данных, шестой элемент
ИЛИ 9 второй регистр 10, элемент
2 И-ИЛИ 11, первый регистр 2, вто- 30 рой коммутатор 13, первую 14 и вторую 15 группы элементов И, дешифратор 16, десятую 17 и восьмую 18 группы элементов И, регистр 19 управления, коммутатор 20 управляющих сигналов, девятую 21, седьмую 22, тринадцатую 23 и четырнадцатую 24 группы элементов И, второй элемент И
25, первый элемент ИЛИ 26, одновибратор 27, первый 28 и второй 29 триг- 40 геры, третий элемент ИЛИ 30,первый элемент И 31, второй элемент ИЛИ 32, третий элемент И 33, пятый элемент
ИЛИ 34, четвертый элемент ИЛИ 35, блок 36 сравнения, группу входов 37 45 блокировки, тактовый вход 38, первый
39 и второй 40 входы блокировки син-. хронизатора, второй 41 и первый 42 выходы синхронизатора, выход 43 шес— того элемента ИЛИ, входы 44 чтения, первый вход 45 выбора и второй вход
46 выбора первого ЗБ переадресации, третий 47 и второй 48 выходы первого
ЗБ переадресации, выход 49 сигнала запроса прерывания устройства, пер- 55 вый выход 50 первого ЗБ переадресации, выход 51 захвата шин устройства, второй вход 52 выбора, вход 53 записи, первый вход 54 выбора второ29 2 го ЗБ переадресации, выход 55 второго ЗБ переадресации, первые входы
56, 57 и 58 элементов И соответственно десятой, пятой и шестой групп, пятую 59, шестую 60, четвертую 61, третью 62 группы элементов И, первые
63 и вторые 64 входы элементов И восьмой группы, одиннадцатую 65 группу элементов И, вторые бб, третьи
67, первые 68 входы элементов И первой группы, вторые 69, третьи 70, первые 71 входы элементов И второй группы,, выходы 72 сигнала инициации и 73 сигнала блокировки устройства для подключения к управляющей шине отлаживаемой ЭВМ, второй вход 74 синхронизации, группу 75 входов синхронизации и первый вход 76 синхронизации регистра управления, выходы полей сброса 77, захвата 78, готовности 79, блокировки 80 регистра управления, четвертый информационный
81, второй управляющий 82, первый информационный 83, второй информационный 84„третий информационный 85 и второй управляющий 86 входы коммут атор а управляющих сигналов, вто1.ой
87, четвертый 88, третий 89 и первый
90 выходы коммутатора управляющих сигналов, первые входы 91, 92 и 93 элементов И соответственно девятой, четвертой и третьей групп, двенадцатую 94 группу элементов И, первые
95 и вторые 96 входы элементов
И седьмой группы, входы-выходы
97 и 98 устройства для подключения к адресной шине отлаживаемой ЭВМ, входы 99 сигналов приема и выдачи устройства, первые входы 100 элементов И тринадцатой группы, вторые входы 101 элементов И одиннадцатой группы, вторые входы 102 элементов
И,цвенадцатой группы, вторые 103 и первые 104 входы элементов И четырнадцатой группы, входы-выходы 105 устройства для подключения к информационной шине отлаживаемой ЭВМ, входы
106 сигналов признаков обращения устройства, выход 107 сигнала готовycTpoHcTBGy Bxop 108 сигнала подтверждения захвата устройства, второй разрешающий 109, первый разрешающий 110, первый информационный
111 синхронизации 112, второй информационный 113, третий информационный
114 входы и выход 115 блока сравнения, четыре старших разряда входов" выходов 116 устройства дпя подключения к адресной шине управляющей ЭВМ, микроЭВМ подключается к первой группе входов — выходов устройства для отладки программно-аппаратных блоков. Вторая группа входов — выходов подключается к шинам отлаживаемой микроЭВМ. Устройство может работать в одном из двух режимов. режиме управления и режиме прогона програми|.
B режиме управления управляющая микроЭВМ осуществляет обмен информацией с. внутренними блоками устройства отладки, памятью и портами ввода-вывода отлаживаемой микроЭВМ, а также внутренними узлами микропроцессора последйей. Работой устройства в этом режиме управляет блок, включающий синхронизатор 5, регистр 12 и дешифратор 16. Для обращения к тому или иному блоку устройства отладки управляющая микроЭВМ устанавливает через адресные входы-выходы
119 на входах 37 синхронизатора 5 адрес, логически являющийся одним из портов ввода-вывода управляющей микроЭВМ, на информационных входах регистра 12 через информационные входы-выходы 118 — код блока устройства отладки, к которому производится обращение, а на входе 39 синхронизатора через управляющий вход
121 — сигнал признака обращения к порту ввода-вывода. При, поступлении на вход 40 синхронизатора через управляющий вход-выход 117 сигнала выдачи информации управляющей микроЭВМ на выходе 41 появляется сигнал записи в регистр 12. После записи кода синхронизатор начинает подсчет сигналов начала машинного цикла управляющей микроЭВМ, поступающих через управляющий вход 120 на вход
38 синхронизатора. На седьмом цикле на выходе 42 синхронизатора появляется сигнал, включающий дешифратор
16 и блокирующий обращение к памяти и портам ввода-вывода управляющей микроЭВМ (выход 122), При включении дешифратора 16 на одном из его выхо" дов (в зависимости от кода, ранее записанного s регистр 12) появляется сигнал обращения к соответствующему блоку устройства отладки. Первый выход дешифратора 16 управляет загрузкой информации в ЗБ 3 переадресации. В ЗБ 3 загружается информация о состоянии каждого сегмента памяти, адресуемой отлаживаемой микроЭВМ. При этом весь объем адресуемой
3 1290329 входы-выходы 117 приема и выдачи устройства, входы-выходы 118 устройства дпя подключения к информационной шине управляющей ЭВМ, младшие разряды входов-выходов 119 устройства для подключения к адресной шине управляющей ЭВМ, вход 120 начала машинного цикла устройства, вход 121 признака обращения к порту ввода-вывода устройства, выход 122 блокиров- 10 ки устройства для подключения к шине управляющеи ЭВМ, выход 123 сигнала готовности устройства для подключения к шине управления управляющей
ЭВМ, выходы 124 элементов И одиннад- 15 датой группы, выходы 125 элементов
И тринадцатой группы, выходы 126 элементов И четырнадцатой группы, выходы 127 элементов И двенадцатой группы, выход 128 сигнала захвата 20 устройства, четвертый 129, третий
130, первый 131 и второй 132 входы элемента 2И-ИЛИ, вход 133 сигнала начала машинного цикла устройства для подключения к шине управления 25 отлаживаемой ЭВМ.
Синхронизатор (фиг. 3) содержит первый элемент И 134, счетчик 135, второй элемент И 136, триггер 137, ЗБ переадресации (фиг.5) содержит 30 первый 138 и второй 139 элементы
BE первый элемент И 140, элемент
ИЛИ 141, второй элемент И 142, запоминающий узел 143.
ЗБ данных (адреса, фиг,6) содержит элемент ИЛИ 144 и запоминающий у эел 145.
Регистр управления (фиг. 7) содержит элемент И 146 и регистр 147.
Блок сравнения (фиг. 8) содержит 40 первый элемент И 148, дешифратор 149, с первого по четвертый регистры 150153, элементы 154-185 равнозначности, второй 186 и третий 187 элементы
И, элемент ИЛИ 188, интегрирующую 45 цепь 189, триггер 190.
Коммутатор управляющих сигналов (фиг.9) содержит первый 191, второй
192 элементы И, первый элемент ИЛИ
193, третий элемент И 194, второй 50 элемент ИЛИ 195, четвертый элемент
И 196, третий элемент ИЛИ 197.
Устройство работает под управлением управляющей микроЭВМ, в качестве которой может быть испОльзована, например, микроЭВМ УВС-01, и обеспечивает отладку устройства на основе микропроцессоров, например К580ИК80 или 8080. Системная шика управляющей
1290329
5 !
О !
20
5 памяти разбивается на 16 сегментов, определяемых четырьмя старшими разрядами адреса. Для каждого сегмента указывается, какой сегмент памяти управляющей микроЭВМ соответствует данному сегменту памяти отлаживаемой микроЭВМ. Эта информация записывается в ЗБ 3 переадресации по информационным шинам управляющей микроЭВМ подключенным к информационным входам ЗБ 3 переадресации через информационные входы-выходы 118, Адрес, по которому записывается эта информация, определяется адресом на четырех старших адресных шинах управляющей микроЭВМ, подключенных к первым йнформационным входам коммутатора 1 через адресные входЫ-выходы 116. При появлении на выходе дешифратора 16 сигнала обращения к
ЗБ 3 переадресации по входу 44 включается ЗБ 3 переадресации, а старшие четыре разряда адреса управляющей микроЭВМ через коммутатор 1 поступают на адресные входы ЗБ 3 переадресации. Запись в ЗБ 3 переадресации производится при подаче на его вход 44 сигнала выдачи информации управляющей микроЭВМ через управляющий входвыход 117. Пятый выход дешифратора
16 управляет загрузкой информации в ЗБ 4 переадресации. В это ЗБ загружается информация о том, какие устройства ввода-вывода отлаживаемой микроЭВМ должны имитироваться, памятью управляющей микроЭВМ. Один из шестнадцати сегментов памяти управляющей микроЭВМ резервируется для области памяти, к которой будет производится обращение при обращении к устройствам ввода-вывода отлаживаемой микроЭВМ. При появлении на выходе дешифратора 16 сигнала обращения к ЗБ 4 переадресации по входу 53 включается ЗБ 4 переадресации, а на его адресные входы через коммутатор 2 !оступают младшие восемь разрядов адреса управляющей микроЭВМ, определяющие адрес устройства ввода-вывода. Этим же сигналом в регистр IO по четырем младшим информационным шинам записывается код номера резервируемого сегмента памяти управляющей микроЭВМ. При подаче на вход 52 сигнала выдачи информации управляющей микроЭВМ в ЗБ 4 переадресации по пятой информационной шине управляющей микроЭВМ записывается признак переадресации устройства ввода-вывода.
6
Второй выход дешифратор а 16 управляет обращениями к блоку 36 сравнения и к регистру 19 управления, Bb16op каждого из этих 6JIQKoB водится в зависимости от кода на трех младших адресных шинах управляющей микроЭВМ, подключенных к входам
112 блока 36 сравнения и 75 регистра 19 управления. В блок 36 сравнения записываются адреса точек останова прогона программы. Эти адреса записываются в блок сравнения по информационным шинам управляющей микроЭВМ, подключенным к входам 111 блока 36 сравнения. Запись производится при поступлении на вход 110 сигнала выдачи информации управляющей микроЭВМ, сигнала обращения на вход 109 и кода адреса 0 на вход
Il2.
В регистре 19 управления устанавливаются следующие сигналы, управляющие отлаживаемой микроЭВМ:
"Сбро с" (выход 77), "Готов" (выход
79), "Захват" (выход 78), "Блокировка" (выход 80) . Назначение этих сигналов следующее. Сигнал "Сброс сигнал инициации, после поступления .которого микропроцессор отлаживаемой микроЭВМ начинает обращение к нулевой ячейке памяти. Сигнал
1 Готов 1 высоким уровнем разрешает работу микропроцессора отлаживаемой микроЭВМ, а низким уровнем останавливает его. При низком уровне сигнала Готов" микропроцессор останавливается на обращении к очередной ячейке памяти или порту ввода †вывода и не заканчивает это обращение до тех пор, пока уровень сигнала
"Готов" не станет высоким. Сигнал нЗахват отключает микропроцессор отлаживаемой микроЭВМ от шин отлаживаемой микроЭВМ, позволяя тем самым осуществить прямой доступ к па11 1t мяти последней, Сигнал Блокировка запрешает обращение к памяти и портам ввода-вывода отлаживаемой микроЭВМ, Установка этих сигналов производится по информационным шинам управляющей микроЭВМ, подключенным к информационным входам регистра управления. Установка производится при подаче на вход 76 сигнала выдачи информации управляющей микроЭВМ и кода адреса "1" на вход 75. Тре3 тий выход дешифратора 16 управляет обращениями к ЗБ 7 адреса и ЗБ 8
7 12 данных. В режиме управления из этих
ЗБ считывается информация о ходе выполнения программы отлаживаемой микроЭВМ, записанная в ЗБ адреса и
ЗБ данных в режиме прогона программы.
Эта информация включает состояние адресных и информационных шин отлаживаемой микроЭВМ в каждом машинном цикле. Адрес ячейки ЗБ адреса и ЗБ данных, поступающий на информационные входы счетчика 6, записывается в счетчик при поступлении на его вход параллельного занесения сигнала обращения к ЗБ адреса и ЗБ данных.
Этот же сигнал стробирует группу элементов И 14 или группу 15 элементов И, через которые информация из
ЗБ адреса и ЗБ данных поступает на информационные шины управляющей микроЭВМ. Группа 14 элементов И стробируется уровнем "0", на младшей адресной шине управляющей микроЭВМ (вход 68), а группа 15 элементов И стробируется уровнем "! на младшей адресной шине управляющей .микроЭВМ (вход 71).
Четвертый выход дешифратора 16 управляет обращениями к памяти и портам ввода-вывода отлаживаемой микроЭВМ, а также обращениями к внутренним узлам микропроцессора последней. Для обращения к -памяти отлаживаемой микроЭВМ в регистре 19 управления предварительно устанавливается сигнал иЗахват", передающийся через элемент ИЛИ 35 и управляющий выход 128 на шину сигнала "Захват" отлаживаемой микроЭВМ. При поступлении этого сигнала микропроцессор отлаживаемой микроЭВМ отключается от шин и позволяет осуществить прямой доступ к памяти. Дешифратор 16 вырабатывает сигнал обращения к отлаживаемой микроЭВМ, который поступает на вход 132 элемента 2И-ИЛИ и вход
86 коммутатора 20 управляющих сигналов. Эти коммутаторы представляют собой комбинационные схемы, управляющие передачей адресных, информационных и управляющих сигналов управляющей микроЭВМ на шины отлаживаемой микроЭВМ через группы элементов
И 21, 61, 62 и 22 при обращении к памяти, портам ввода-вывода или внутренним узлам микропроцессора отлаживаемой микроЭВМ, передачей адресных, информационных и управляющих сигналов отлаживаемой микроЭВМ на внутренние шины устройства.отлад25
90329 8 ки через группы 23, 65, 94 и 24 элементов И в режиме прогона программа отлаживаемой микроЭВМ и передачей информационных сигналов с внутренних шин устройства отладки на шины управляющей микроЭВМ через группу 18 элементов И при прямом доступе отлажнваемой микроЭВМ к памяти управляющей микроЭВМ и при чтении информации из отлаживаемой микроЭВМ. Коммутаторы реализуют следующие логические выражения: элемент 2И-ИЛИ 11: 7
° (Х«.„ЛХ«„) Ч (Х„, Л Х,„, ), (1) ,15 где Т вЂ” mrH aa xope элемента
2И-ИЛИ llХ вЂ” сигнал на входе 131 (сиг«5« нал приема информации управляющей микроЭВМ);
Х, — сигнал на входе 132 (сигнал обращения к отлаживаемой микроЭВМ);
Х вЂ” сигнал на входе 129 (приз-! го нак прямого доступа отлаживаемой микроЭВМ к памяти управляющей микроЭВМ);
Х вЂ” сигнал на входе 130 (сиг«эо нал выдачи информации отлаживаемой микроЭВМ, переданный на внутреннюю шину устройства отладки) .
Коммутатор 20 управляющих сигна-лов: Я7 в6 Л 85 (2) где X — сигнал обращения к отлажи86 ваемой микроЭВМ;
Х вЂ” сигнал с нулевого выхода
85 триггера 29 при отсутствии обращения. к внутренним уз40 лам микропроцессора отлаживаемой микроЭВМ (имеет уровень ".1"); (Х„Л Х„) " (Х„" Хвг) > (3)
45 где Хв. — сигнал выдачи информации управляющей микроЭВМ;
Х, — признак прямого доступа;
Х вЂ” сигнал приема информации отлаживаемой микроЭВМ;
50 7з5 = (Хвд ч Х 6) Л Х85 ° (4) где Х вЂ” сигнал включения дешифраВФ тора 16, т.е. признак обращения управляющей микроЭВМ к блокам устройства
55 отладки (5)
Таким образом, если. производится запись в память отлаживаемой микроЭВМ, в соответствии с выражениями
12903
Для обмена информацией с BIãóòðåíними узлами микропроцессора отлажи- 30 ваемой микроЭВМ в регистре управления предварительно устанавливается сигнал "Блокировка" (выход 80) и снимается сигнал "Готов" (т. е, на выходе 79 регистра управления устанавливается уровень "01). Сигнал "Готов с выхода 79 регистра 19 управления через элемент ИЛИ 34 и управляющий выход 107 поступает на шину сигнала
"Готов" отлаживаемой микроЭВМ, Сиг- 40 нал "Блокировка" с выхода 80 регистра 19 управления через управляющий выход 73 поступает на шину сигнала
"Блокировка" отлаживаемой микроЭВМ, Затем дешифратор 16 вырабатывает 45 сигнал обращения к отлаживаемой микроЭВМ. При совпадении этого сигнала с сигналов Блокировка" сигнал уровня "1" с выхода элемента И 25 через одновибратор 27 устанавливает по S-входу триггеры 28 и 29. Сигнал уровня 1" поступает на вход элемента И 31, а сигнал уровня "0" с нулевого выхода триггера 28 поступает на вход элемента ИЛИ 32, Так как в начале, машинного цикла убравляющей микроЭВМ сигналы выдачи информации и приема информации (управляющие входы — выходы 117) отсутствуют
9 (2) и (3) стробируются группы 21, 61, 62, 22 элементов И и адресные, информационные и управляющие сигналы управляющей микроЭВМ передаются на шины отлаживаемой микроЭВМ. При чтении информации из памяти отлаживаемой микроЭВМ направление передачи адресных и управляющих сигналов остается таким же, как и в режиме записи, а направление передачи ин- !О формационных сигналов меняется на противоположное, так как в соответ. ствии с выражениями (3) и (5) группа элементов И 22 блокируется, а группа элементов И 24 стробируется, Сигналы с информационных шин отлаживаемой микроЭВМ через группу элементов И 24 поступают на внутренние информационные шины 126, устройства отладки, а оттуда через группу элементов И 18,20 которая стробируется в соответствии с выражением (1), они поступают на информационные шины управляющей микроЭВМ. Таким образом, информация из отлаживаемой микроЭВМ считывает?5 ся на информационные шины управляющей микроЗВМ, 1
29 10 ("0"), то на выходе элемента И 31 и на выходе элемента ИЛИ 34 сохраняется урсвень "0", а на выходе элемента ИЛИ 32 появляется сигнал уровня
"0", Таким образом,. при обращении управляющей микроЗВИ к микропроцессору отлаживаемой микроЭВМ на шине
"Готов" управляющей микроЭВМ (управляющий выход 123) и шине "Готов" отлаживаемой микроЗВИ (управляющий выход 107) устанавливается "0", Сигнал с единичного выхода триггера 29 через элемент ИЛИ 35 устанавливает уровень "I" сигнала "Захват" (шина
128 отлаживаемой микроЭВМ). Сигнач с нулевого выхода триггера 29 поступает на вход 85 коммутатора 20 и в соответствии с выражениями (2) и (4) блокирует прохождение адресных и управляющих сигналов через группы
21, 61, 62, 23, 65, 94 элементов И, Таким образом, в этом режиме производится обмен только информационными сигналами, Обмен информационными сигналами осуществляется так же, как и в режиме обращения к памяти отлаживаемой микроЭВИ.
Если управляющая микроЭВИ выполняет за1гись во внутренние узлы микропроцессора отлаживаемой микроЗВМ, то при появлении сигнала "1" выдачи информации из управляющей микроЭВМ на выходе элемента И 31 появляется си гнал " 1", который блокирует эл емент ИЛИ 34 и устанавливаеf "1" на шине Готов" (выход 107) отлаживаемой микроЭВИ. В результате микропроцессор отлаживаемой микроЭВМ заканчивает цикл приема информации и задним фронтом сигнала приема информации отлаживаемой микроЭВМ через элемент ИЛИ 26 по С вЂ” входу сбрасывает триггер 28, При этом сигнал "l" с нулевого выхода триггера 28 блокирует элемент ИЛИ 32 и на шине "Готов управляющей микроЭВМ устанавливается "1", После этого управляющая микроЗВМ заканчивает свой цикл выдачи информации. После окончания микропроцессором отлаживаемой микроЭВИ своего цикла он выдает сигнал
"Подтверждение захвата" уровня "1" на. управляющий вход 108. 3 гот сигнал по R-входу сбрасывает триггер 29.
На единичном выходе этого триггера появляется "0", и на шине 128 "Захват также устанавливается "0", т.е. сигнал "Захват" снимается. После!
90329
ll 12 этого сигнал Подтверждение захвата" также снимается и микропроцессор отлаживаемой микроЭВМ переходит в состояние ожидания (низкий уровень сигнала "Готов" ). Когда управляющая микроЭВМ выполняет цикл приема информации из внутренних узлов микропроцессора отлаживаемой микроЭВМ, последний производит цикл выдачи информации. Начало обращения протекает так же, как в вышеописанном режиме. После установки триггеров 28 и 29 в состояние "1" при появлении сигнала приема информации уровня ")" на одном из управляющих входов — выходов 117 блокируется элемент ИЛИ
32 и устанавливает сигнал "Готов" управляющей микроЭВМ уровня "1".
После этого управляющая микроЭВМ заканчивает цикл приема информации и задним фронтом сигнала приема информации через элемент ИЛИ 26 сбрасывает по С-входу триггер 28. При этом на выходе элемента И 33 появляется "1", которая блокирует элемент ИЛИ 34, и на шине сигнала "Готов" отлаживаемой микроЭВМ появляется сигнал уровня "1". После этого микропроцессор отлаживаемой микроЭВМ заканчивает цикл выдачи информации и выдает на управляющий вход
108 сигнал "Подтверждение захвата", сбрасывающнй триггер 29, При этом сигналы "Захват" и "Готов" снимаются ("0") и.микропроцессор отлаживаемой микроЭВМ переходит в состояние ожидания.
После обмена информацией с внутренними, блоками устройства отладки, памятью отлаживаемой микроЭВМ и внутренними узлами микропроцессора отлаживаемой микроЭВМ управляющая микроЭВМ переводит устройство отладки в режим прогона программы.. Для этого в регистре управления снимаются сигналы "Сброс", "Захват", "Блокировка" и устанавливается уровень "1" сигнала "Готов". Микропроцессор отлаживаемого устройства начинает выполнять программу.
Информация с шин отлаживаемой микроЭВМ через группы 23, 65, 94 и
24 элементов И, которые стробируются в соответствии с выражениями (4) и. (5), поступает на внутренние шины устроиства отладки. Информация с адресных и информационных шин поступает на информационные входы ЗБ
7 адреса и ЗБ 8 данных. Запись информации в эти ЗБ производится сигналами приема или выдачи информации отлаживаемой микроЭВМ (группа шнн
125). Сигналом начала машинного цикла отлаживаемой микроЭВМ на управляющем входе 133 содержимое счетчика 6 увеличивается на единицу. Таким образом, информация о состоянии адресных и информационных шин отлаживаемой микроЭВМ в следующем машинном цикле будет записана в следующие ячейки памяти ЗБ 7 адреса и ЗБ 8 данных.
На вторые информационные входы коммутатора 1 поступают сигналы с четырех старших адресных шин отлаживаемой микроЭВМ (группа шин 124), определяющие номер сегмента памяти отлаживаемой микроЭВМ, а на вторые информационные входы коммутатора 2 поступают сигналы с восьми младших адресных шин отлаживаемой микроЭВМ (группа шин 127), определяющие номер адресуемого порта ввода-вывода.
В режиме прогона программы сигналы с четырех старших адресных шин отлаживаемой микроЭВМ через коммутатор
1 поступают на адресные входы ЗБ 3 переадресации, а сигналы с восьми младших адресных шин отлаживаемой микроЭВМ через коммутатор 2 поступают на адресные входы ЗБ 4 переадресации.-Выбор ЗБ переадресации (3 или 4) определяется сигналом признака обращения к порту ввода-вывода отлаживаемой микроЭВМ, поступающим на управляющий вход 106. Если этот сигнал имеет уровень "1" (обращение к памяти), то по входу 46 включается ЗБ 3 переадресации. Если же этот сигнал имеет уровень "I" (обращение к порту ввода-вывода), то по входу
54 включается ЗБ 4 переадресации.
При обращении к памяти из ЗБ 3 переадресации считывается записанная в режиме управления информация о текущем сегменте памяти отлаживаемой микроЭВМ. В случае, если сегмент памяти, номер которого установлен, saщищен, на выходе 50 ЗБ 3 переадресации считывается "1", которая через элемент ИЛИ 30 и управляющий выход
49 устанавливает сигнал "Запрос прерывания" для управляющей микроЭВМ, .а через элемент.HJlH 35 — сигнал
"Захват" для отлаживаемой микроЭВМ.
Выполнение программы микропроцессором отлаживаемой микроЭВМ прекращает12903
При обращении к порту ввода-вывода включается ЗБ 4 переадресации, Если для данного порта ввода-вывода в ЗБ 4 переадресации записано, что он размещается в управляющей микроЭВМ, то на выходе 55 ЗБ 4 переадресации считывается "1" и через элемент
ЕТ н
ИЛИ 9 вырабатывается сигнал Захват для управляющей микроЭВМ, инициирующий прямой доступ к памяти управляющей микроЭВМ. Код номера сегмента памяти, к которому должно, производится обращение, записанный в регистре 10, через коммутатор 13 и группу
60 элементов И поступает на адресные шины управляющей микроЭВМ. Группы
13 ся, а сигнал "Запрос прерывания" сигнализирует управляющей микроЭВМ о необходимости перевода устройства отладки в режим управления. Если сегмент памяти находитбя в управляющей микроЭВМ, то на выходе 48 ЗБ 3 переадресации считывается "1", которая через элемент ИЛИ.9 и управляющий выход 51 вырабатывает сигнал
"Захват для управляющей микроЭВМ, 10 инициирующий прямой доступ к памяти управляющей микроЭВМ и стробирующий группы 17, 59 и 60 элементов И, Код номера сегмента памяти, к которому должно производиться обращение f5 (старшие четыре разряда адреса), считывается с выходов 47 ЗБ 3 переадресации и через коммутатор 13, который переключается сигналом признака обращения к порту ввода-вывода отла- 20 живаемой микроЭВМ, поступает на входы 58 группы 60 элементов И, Этот код номера сегмента„ а также одиннадцать Младших разрядов адреса (немодифицируемые) и сигналы приема и выдачи 25 информации через группы 17 и 59 элементов И поступают на соответствующие шины управляющей микроЭВМ. В случае чтения информации из памяти управляющей микроЭВМ в соответствии 30 с выражением (3) стробируется группа 22 элементов И, и информация из памяти управляющей микроЭВМ считывается на информационные шины отлаживаемой микроЭВМ. В случае записи информации в память управляющей ми— кроЭВМ в соответствии с выражением (1) стробируется группа 18 элементов И и информация с информационных шин отлаживаемой микроЭВМ поступает 40 на информационные шины управляющей микроЭВМ.
29 14
17, 59, 60 и 18 элементов И работают так же как и в случае обраще.-,ия к памяти. Таким образом, если в одном из ЗБ переадресации записано, что какой-либо сегмент памяти или порт ввода-вывода отлгживаемой микроЭВМ находится в управляющей микроЭВМ, то отлаживаемгя ьжкроЭВМ производит прямой доступ к памяти управляющей микроЭВМ. Номер сегмента памяти, к которому производится прямой доступ, хранится в ЗБ 3 переадресации (в случае переадресации сегмента памяти) или в ЗБ 4 переадресации (в случае переадресации порта ввода †вывода).
На входы 113 и 114 блока 36 сравнения поступают адресные сигналы отлаживаемой ьякроЭВМ, где они сравни— ваются с адресами точек останова прогона программы, записанными в режиме управления. При совпадении текущего адреса, установленного на шинах отлзживаемой микроЭВМ, с адресом одной иэ точек останова, на выходе
115 блока сравнения вырабатывается сигнал уровня "1", устанавливают;ий через элемент ИЛИ 30 и управляюший выход 49 сйгнал "Запрос прерывания" для управляющей микроЭВМ, а через элемент ИЛИ 35 и управляющий выход
1?8 — сигнал "Захват" для стлаживгемой микроЭВМ. После получения сигнала "Запрос прерывания" управляющая микроЭВМ переводит устройс-â.î отладки в режим управления и производит анализ хода выполнения программы, информация о котором записана в ЗБ
7 адреса и ЗБ 8 данных.
Блок-схема алгоритма взаимодействия управляющеи микроЭВМ с устрой— ством для отладки программно-аппаратных блоков представлена на фиг. 4.
Синхронизатор работает следующим образом.
Для обращения к тому или иному блоку устройства отладки управляющая микроЭВМ устанавливает на входах 37 адрес синхронизатор- на входе 39 — признак обращения к порту ввода-вывода (синхронизатор логически является однйм из пор-.îí вывода управляющей микроЭВМ), а нг входе
40 — сигнал выдачи информации, При этом на выходе элемента И 134 появляется сигнал уровня "1", который устанавливает по S-входу триггер 137, и .через выход 41 записывает в ре15
12903 гистр 12 код блока устройства отладки к которому будет производиться обращение (: м. фиг. I и 2) . После установки триггера 137 сигнал сброса счетчика 135 снимается ("0") и последний начинает подсчет сигналов начала машинного цикла управляющей микроЭВМ, поступающих на его счетный вход с входа 38 синхронизатора. .При поступлении, например, седьмого !О сигнала начала машинного цикла на выходах счетчика 135 устанавливается код, вызывающий появление сигнала уровня "1", на выходе элемента
И 136. Этот сигнал поступает на f5 выход 42, включая дешифратор 16, и устанавливает сигнал блокировки памяти и портов ввода-вывода управляющей микроЭВМ. При поступлении на счетный вход счетчика !35 следующего 20 сигнала начала машинного цикла управляющей микроЭВМ на выходе элемента И 136 снова появляется сигнал уровня "0", по С-входу сбрасывается триггер 137, который, в свою очередь, 25 сбрасывает счетчик 135. Цикл обращения к блоку устройства отладки окончен, 3Б переадресации работает следующим образом. 30
В режиме управления запоминающий узел 143 включается сигналом обращения к ЗБ переадресации (уровень "1"), поступающим на вход 45. Запись информации в запоминающий узел 143 осуществляется сигналом выдачи информации управляющей микроЭВМ, поступающим на вход 44, Этот сигнал через элемент И 142 который строби- !0 руется сигналом обращения к ЗБ переадресации, поступает на вход записи информации з апоминающего узла 1 43.
В режиме прогона программы на входе обращения к ЗБ переадресации установлен уровень "0", элемент И 142 блокируется и поэтому запись в запоминающий узел 143 запрещена. В этом режиме стробируется элемент
И 140. Поэтому, когда сигнал призна- 50 ка обращения к порту ввода-вывода отлаживаемой микроЭВМ, поступающий на вход 46, имеет уровень "0" (т,е. производится обращение к памяти), включается запоминающий узел 143 и оттуда считывается ранее записанная информация о распределении сегментов памяти отлаживаемой микроЭВМ, ЗБ 4 переадресации организован ана29 16 логично ЗБ 3, однако в нем отсутствует инвертор 138. Поэтому в режиме прогона программы запоминающий узел
143 включается, когда сигнал признака обращения к порту ввода-вывода отлаживаемой микроЭВМ. имеет уровень
"1", т,е. когда производится обращение к порту ввода-вывода.
ЗБ 8 данных (7 адреса) работает следующим образом.
В режиме прогона программы на информационные входы запоминающего узла 145 поступают адресные или информационные сигналы отлаживаемой микроЭВМ. Эта информация записывается в запоминающий узел 145 сигналами приема или выдачи информации отлаживаемой микроЭВМ, поступающими на вход записи запоминающего узла 145 через элемент ИЛИ 144, Блок сравнения работает следующим образом, В режиме управления в четыре восьмиразрядных регистра 150-153 записываются адреса двух точек останова прогона .програмж . Адрес первой точки останова записывается в регистры
150 и 151, а адрес второй точки останова — в регистры 152 и 153. Запись этих адресов производится по информациойным шинам управляющей микроЭВМ, подключенным к входам 111 блока сравнения. Выбор соответствующего р еги стр а о суще ствля ет ся кодом на двух старших адресных входах 112, а код на младшем входе этой группы входов ("0") вместе с сигналом на входе !09 осуществляет выборку всего блока. Запись информации производится сигналом выдачи информации на входе 110. В регистры 150 и 151
-1 записывается соответственно младший и старший байты адреса первой точки останова программы, а в регистры
152 и 153 — соответственно младший и старший байты адреса второй точки останова программы. В режиме прогона программы эти адреса точек останова сравниваются с адресами на адресных шинах отлаживаемой микроЭВМ, подключенным к входам 113, 114 блока сравнения. При совпадении адреса на шинах отлаживаемой микроЭВМ с адресом одной из точек останова на выходах элементов равнозначности
154-169 или 170-185 появляются уровни. "I". При этом на выходах элемента
И 186 или 187 также появляется сигнал уровня "1", который через эле12903
17 мент ИПИ 188 и интегрирующую цепь
189 устанавливает по S-входу триггер
190. Сигнал на единичном выходе этого триггера является выходным сигналом блока сравнения. Интегрирующая цепь 189 служит для устранения паразиткой установки триггера, 190 во время переключения адресов отлаживаемой микроЭВМ. Триггер 190 сбрасывается по К-входу сигналом включения дешифратора 149, т. е. при записи следующего адреса точки останова.
Устройство ввода-вывода позволяет имитировать работу системы ввода-вы- 15 вода разрабатываемой микроЭВМ благодаря тому, что при обращении отлаживаемой микроЭВМ к отсутствующим устройствам ввода-вывода адреса портов модифицируются в адреса ячеек 20 памяти управляющей микроЭВМ, имитирующих работу этих устройств вводавывода.
Формула изобретения
1.Устройство для отладки программно-аппаратных блоков, содержащее первый коммутатор, первый з апоминающий блок переадресации, синхрониэа- 30 тор, первый регистр, дешифратор, счетчик, запоминающий блок адреса, запоминающий блок данных, регистр управления, блок сравнения, коммутатор управляющих сигналов, элемент
2И-ИЛИ, четырнадцать групп элементов
И, три элемента И, пять элементов
ИЛИ, одновибратор и два триггера, причем первая группа информационных входов первого коммутатора, группа 40 входов блокировки синхронизатора, группа информационных входов счетчика, первые входы элементов И первой и второй групп, группа входов синхронизации регистра управления, первые входы элементов И третьей и четвертой групп, группа входов синхронизации блока сравнения подключены к . группе входов устройства для отладки программно-аппаратных .блоков для. подключения к адресной шине управляющей ЭВМ, выходы элементов И пятой и шестой групп подключены к группе выходов устройства дпя отладки программно-аппаратных блоков для подключения к адресной шине yïðàâ" ляющей ЭВМ, первый информационный вход блока сравнения, первые входы элементов И седьмой группы, информа29 18 ционный вход первого запоминающего блока переадресации, информационный вход перво