Система для отладки программ

 

Изобретение относится к области вычислительной техники и может быть использовано для отладки программ микропроцессорных вычислительных комплексов. Цель изобретения - повышение быстродействия при отладке. В состав системы входят блок 1 обработки, блок 3 отображения, коммутатор 5, дешифратор 8, генератор 7, блок 9 задания перехода, блок 10 синхронизации, счетчик 11 времени и блок 12 памяти. Новые конструктивные признаки системы позволяют реализовать непосредственный переход из заданной точки основной памяти в заданную точку теневой памяти так, как если бы точка перехода находилась в программе того же блока памяти, что и команда перехода. 1 з.п.ф-лы, 15 ил.

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

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

РЕСПУБЛИК

„„Я0„„1481774

Ai (51) 4 G 06 F 11/28

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

llO ИЗОБРЕТЕНИЯМ И ОТНРЫТИЯМ

ПРИ ГКНТ СССР

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

Н А BTOPCHOMV СВИДЕТЕЛЬСТВУ (21) 4226945/24-24 (22) 09.04.87 (46) 23.05.89. Вюл. № 19 (71) Харьковское научно-производственное объединение по системам автоматизированного управления (72) 10. В. Розен, Л. H. Рудченко, A. И. Федоров, С. H. Ткаченко, В. С. Харченко и Г. Н. Тимонькин (53) 681.3(088.8) (56) Авторское свидетельство СССР № 1213482, кл. G 06 F ll/28, 1984.

Макглин Д. P. Микропроцессоры. Технология, архитектура и применение. М.: Энергия, 1979, с. 161 — 162. (54) СИСТЕМА ДЛЯ ОТЛАДКИ ПРОГРАММ

2 (57) Изобретение относится к области вычислительной техники и может быть использовано для отладки программ микропроцессорных вычислительных комплексов. Цель изобретения — повышение быстродействия при отладке. В состав системы входят блок I обработки, блок 3 отображения, коммутатор 5, дешифратор 8, генератор 7, блок 9 задания перехода, блок 10 синхронизации, счетчик 11 времени и блок 12 памяти. Новые конструктивные признаки системы позволяют реализовать непосредственный переход из заданной точки основной памяти в заданную точку теневой памяти так, как если бы точка перехода находилась в программе того же блока памяти, что и команда перехода.

1 3. п. ф-лы, 5 ил.

1481774

55

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

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

На фиг. изображена структурная схема системы; на фиг. 2 — схема блока обработки; на фиг. 3 — схема блока ввода; на фиг. 4 — схема блока отображения; на фиг. 5 — схема блока асинхронной связи; на фиг. 6 — коммутатор сигналов обращения; на фиг. 7 — схема шинного формирователя адреса; на фиг. 8 — схема генератора; на фиг. 9 — схема дешифратора; на фиг. 10 — схема блока задания перехода; на фиг. 11 — схема блока синхронизации; на фиг. 12 — счетчик времени; на фиг. 13 -- клавиатура;. на фиг. 14 -- блок памяти; на фиг. 15 — временныс диаграммы работы систем ы.

Система для отладки программ (фиг. 1) содержит блок l обработки, блок 2 ввода, блок 3 отображения, блок 4 асинхронной связи, коммутатор 5 сигналов обращения, шинный формирователь 6 адреса, тактовый генератор 7, дешифратор 8, блок 9 задания перехода, блок 10 синхронизации, счетчик 11 времени, блок 12 памяти, шины адреса 13, данных 14 и управления 15. Символами

16 — 53 обозначены входы и выходы блоков и узлов системы. Выход 16 — выход блока 4, вход 7 установки в исходное состояние системы, вхо l 18 ответ блока 10, группа адресных выходов 19 микропроцессора l, входы-выходы 20 блока 1, выходы 21 управления микропроцессора 1, тактовый вход 22 блока 1, выход 23 блока 2 ввода, вход 24 запроса прерывания блока 1, выход 25 подтверждения прерывания системы, вход 26 начальной установки блока 3 отображения и блока 9 задания перехода, вход 27 управления записи и чтения блока 3, вход 28 выбора устройства, выход 29 дешифратора 8, адресный выход 30 системы, выход 31 генератора 7, группа управляющих выходов 32 системы. выход 33 переполнения счетчика, выход 34 шины данных 14, входы-выходы 35 коммутатора 5, группа 36 управляющих выходов коммутатора 5, тактовый вход 37 коммутатора 5, выход 38 блока 1, выходы 39 и 40 дешифратора 8, выход 41 признака перехода блока 9 задания перехода, адресный выход 42 блока 9, входы 43 — 45 блока 9, входы 46—

48 блока 10, вход 49 счетчика 11 времени, выход 50 блока 10, выход 5! дешифратора 8, вход 52 счетчика 11 времени, вход 53 блока 12 памяти.

Ьлок 1 (фиг. 2) предназначен для выполнения программ отладки или других заданных программ.

Он может быть реализован на известном БИС процессоре, например, типа

К580ИК80 или другом аналогичном.

Ьлок I содержит микропроцессор 54, группа адресных выходов 55 которой образует группу 19 адресных выходов блока 1.

Группа 56 входов-выходов данных блока 54 образует одноименную группу 20 входоввыходов блока 1.

Выходы RD, WR, %1, КАТК и SYN микропроцессора 54 образуют соответственно выходы чтения (приема) 57.1, записи

57.2, ожидания 57.3, запроса захвата 57.4 и синхронизации 57.5 группы 21 управляющих выходов блока .

Вход 24 запроса прерывания блока 1 является одноименным входом (RA) микропроцессора 54.

Входы первого 58.1 — четвертого 58.2 разрядов группы 22 входов блока 1 соединены соответственно с первым Fl, вторым

Г2 входами тактовых сигналов, входом начальной установки (1 ) и входом запроса захвата (RA) блока 54.

Алгоритмы функционирования блока полностью идентичны соответствующим алгоритмам известного микропроцессора

К580И К80.

Блок 2 ввода (фиг. 3) содержит клавиатуру 59 и шинный формирователь 60, группа выходов которого образует группу 23 выходов блока 2. Вход 25 блока 2 соединен с управляюгцим (CS) входом формировате. ля 60 и входом клавиатуры 59, группа 61 выходов и управляюший выход которой соединены соответственно с группой входов формирователя 60 и выходом 24 блока 2.

Блок 2 предназначен для ввода данны. с клавиатуры 59 па шину 14 данных системы.

При нажатии хотя бы одной из клавиш клавиатуры 59 вырабатывается сигнал запроса прерывания íà выходе 24 блока 2, который поступает на вход РО микропроцессора 54 (фиг. 2).

После формирования блоком 10 синхронизации сигнала подтверждения прерывания на выходе 25 (фиг. 1} включается на передачу формирователь 60 блока 2 (фиг. 3), а с выходов 61 клавиатуры 59 осуществляется выдача кода данных.

Этот код данных через формирователь

60 и выходы 23 блока 2 передается на шину данных 14 си-òåìû (фиг. 1,),для приема в блок 1 известным образом.

Блок 3 отображения (фиг. 4) содержит блок 62 ввода-вывода параллельной информации различного формата, дисплей 63 и клавиатуру 64.

Группа выходов 65 данных каналов БО блока 62 соединена с группой информационных входов дисплея 63.

Разряды 66.1 и 66.2 группы выходов 66 данных канала Вl блока 62 соединены соответственно с группами управляюгцих входов дисплея 63 и клавиатуры 64.

Группа 67 информационных выходов клавиатуры 64 соединена с группой входов к а н ал а В2 бл ока 62.

1481774

Группа 14 входов-выходов данных блока 3 соединена с одноименной группой входоввыходов блока 62.

Группа 13 адресных входов, входы 28 и 26 блока 3 соединены соответственно с ад- 5 ресными входами (А) выбора каналов, входом выбора устройства (CS) и входом (R) начальной установки блока 62.

Входы разрядов управления чтением 68.1 и записью 68.2 группы 27 входов блока 3 соединены соответственно с входами чтения (RD) и записи (WR) данных блока 62, Блок 3 предназначен для отображения информации при отладке. Он может быть выполнен по известной схеме с использованием программируемого устройства ввода- 15 вывода параллельной информации различного формата, а также знакосинтезирующего дисплея и матричной клавиатуры. При этом канал В! применяется известным образом для сканирования дисплея и клавиатуры, канал В Я вЂ” для записи кода очередного отображаемого разряда дисплея, а канал

В2 — — для чтения кода нажатой клавиши с матрицы клавиатуры. Дешифрирование и сканирование клавиатуры может осуществляться программно. 25

В частности, в блоке 3 к блоку 62 может быть подключено репрограммируемое ПЗУ для хранения информации при отладке.

Блок 4 асинхронной связи (фиг. 5) содержит синхронно-асинхронный приемопередатчик 69, группа входов-выходов (D) дан- 30 ных которого соединена с группой 34 входов-выходов данных блока 4.

Входы 31, 30, 29 блока 4 соединены соответственно с входами синхросигнала (SIN), управление/данные (AD) и выбора устройства (CS) приемопередатчика 69. 35

Вход приемника и выход 70 передатчика приемопередатчика 69 образуют группу !6 входов-выходов блока 4.

Вход 33 блока 4 соединен с входами синхронизации передатчика CD и приемника CD приемопередатчика 69.

Выход 71 запроса приемника терминала (RTS) приемопередатчика 69 соединен с входом готовности приемника терминала (QTS) приемопередатчик- 69.

Выход 72 запроса передатчика термина- 4 ла (DTR) соединен с входом готовности передатчика терминала (DSR) приемопередатчика 69.

Входы разрядов управления чтением 73,1 и записью 73.2 группы 32 управляющих вхо- 50 дов коммутатора 5 соединены соответственно с одноименным входами КЭ и WR приемопередатчика 69.

Блок 4 предназначен для организации двунаправленного обмена данными между системой и внешними устройствами и последовательном коде. Причем в качестве внешних устройств могут использоваться известным образом клавиатура, цифровой или телевизионный дисплей, АЦПУ, графопостроители и др. устройства.

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

Блок 4 может быть выполнен на известной микросхеме типа К580ВВ51А (на фиг. 5 показаны только те входы и выходы приемопередатчика 69, которые необходимы для пояснемия его работы).

При передаче данных приемопередатчик

69 преобразует данные в параллельном коде в последовательность символов со служебной информацией и выдает ее в канал с различной (задаваемой программой) скоростью.

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

Группа входов-выходов 34 данных предназначена для приема и передачи данных в и а р алл ел ь нам коде.

Вход 3! предназначен для подачи синхросигналов от генератора 7.

Вход 30 (управление/данные) служит для подачи сигнала записи-чтения данных или управляющих сигналов. Нулевой уровень сигнала на этом выходе указывает на возможность записи-чтения данных, а единичный разрешает запись в приемопередатчик 69 управляющего слова или считывание информации о состоянии схемы.

Вход 73.1 чтения предназначен для подачи входного сигнала, разрешающего передачу данных и информации состояния приемопередатчика 69 на шину данных системы.

Вход 73.2 записи предназначен для подачи входного сигнала, разрешающего передачу данных и управляющего слова с шины данных системы в приемопередатчик 69.

Вход 29 предназначен для выбора кристалла (CS) приемопередатчика 69.

Входы 33 синхронизации (CD) приема и передачи предназначены для приема тактовых сигналов от внешнего устройства синхронизации.

Вход STS готовности приемника терминала предназначен для информирования приемопередатчика 69 о готовности приемника терминала принять в ответ на сигнал запроса по выходу RTS запроса приемника терминала.

Выход 70.1 и вход 70.2 являются выходом передатчика и входом приемника приемопередатчика 69 соответственно.

Вход DSR готовности передатчика терминала предназначен для подачи входного сигнала, информирующего приемопередатчик 69 о готовности внешнего передатчика к посылке информации по каналу связи. Состояние сигнала на этом входе может быть опреде1481774 лено по разряду 0 7 слова состояния приемопередатчика 69 при его чтении.

Выход DTR предназначен для подачи сигнала, информирующего внешний передатчик о готовности канала приемника приемопередатчика 69 к приему информации и проверке готовности передатчика к работе.

Выход RTS запроса приемника терминала приемопередатчика 69 предназначен для подачи выходного сигнала запроса о готовности приемника терминала к приему данных.

Для работы с блоком в него записываются команды начальной установки. Посредством записи управляю1цих слов приемопередатчика 69 задается скорость приемапсредачи данных, количество разрядов в каждом данном, число разрядов останова, режим работы, ilHëè÷èå или отсутствие разряда четности каждОГО ",а11нОГО и р. информация.

I1ðè этом упранля с)1ц!1. сх1О1;а 11одраздсляются на два THlll: "1:, ;,ð" ê,:,: р! жима и инструкции кома!,! !! р и об м е и е да:1н ы. 1и и р и е)1О:1е р =дат "I è ê

69 11рсобразует информацию из парил ;Ib1!ОГО КОДа! В ПОС,1СДОВЯТел Ьн Ы !! ° 11 Иоб1)рот.

11рич M сo стороны системы Ocуществляется

Обмен в параллельном кодс, а со стороны

Впе1п них устройств в 11оследовательном.

Дешифратор сип1алов Обращения (фиг,6) содержит блок 74 формирования магистралей управления. ! руппа 20 входов-выходов данных коммута)ора 5 соединена с одноименной перВой группой входов-выходов (D) блока 74.

Вход 37 и группа 35 входов-выходов коммутатора 5 соеди11ены соответственно с Вхо,1ом и!равления системной шиной (8 ) 1х1)

11 Вто Рой ГP 3 и ПОЙ 13 ХОДОВ-Вы ходог! Дс1 H1 1 bl x (DB) блока 74.

Выходы управления запис)ИО (WRM), чтением (К1)м), приемом (wRJo) и выдачей (RDJO) блока 74 образуют соответственно выходы о.!поименных разрядов 75.1, 75.2, 75.3 и 75.4 группы 36 выходов коммутатора 5.

Входы разря,.!ов 76.1, 76.2 и 76.3 группы 21

Входов коммутатора 5 соединены соотвст ственно с Входами чтения (СК1Э), записи (СWR), разрешения доступа к магистрали (КАТК) блока 74.

Вход управления системной шиной (DE) соед)шен с входом разряда 76.3 группы 21 !

ЗхОдОВ K0%1!)yтатора 5.

Коммутатор 5 предназначен для организации управления доступом микропроцессора к шине данных, а также для формирования на группе 36 выходОВ сигналов па шину управления системы на основании выходных управляющих сип1алов блока 1 обработки, поступающих па группу 21 входов коммутатора 5.

Алгоритм функционирования коммутатора 5 идентичен известному для микросхем ы К580В К28. Шинный формирователь 6 адреса (фиг. 7) содержит шинные формирователи 77 и 78, выходы 79 и 80 — группу 13 выходов формирователя 6, информационные входы 81 и 82 которых образуют группу 19 входов формирователя 6. Управляющие входы (МС и CS) формирователей 77 и 78 соединены с шиной нулевого потенциала.

Формирователи 77 и 78 могут быть реализованы на известных микросхемах, например, типа К580ВА86, Формирователь 6 предназначен для соединения группы 19 адресных выходов блока 1 обработки с шиной 13 адреса системы.

Генератор 7 (фиг. 8) содержит генера15 тор 83 тактовых импульсов, который может быть выполнен на известной микросхеме типа К580ГФ24, или другой аналогичной.

Выходы 84.1, (Г 1), 84.2 (F 2), 31 (Г 21T), 84.3 (SR), 84.4 (WI) и 37 (CSA) предназна;сны соответственно для вь)дачи сигналов синхроимпульсон, сигнала фазы (уровнем

П ), сигнала «Сброс», сигнала готовности и строба фиксации состояния.

Выходы разрядов 84.1, 84.2, 84.3, 84.4 гругшы 22 выходов генератора 7 (фиг. 8)

25 соединены соответственно с входами 58.1 (Г 1), 58.2 (F 2), 58.3 (R) и 58.4 (RA) микропроцессора 54 (фиг. 2) .

Входы Cl и С2 генератора 83 (фиг. 8) предназначены для подключения колебательного контура, собранного из последовательЗО i!o включенных емкости С и кварцевого резонатора G 1.

Входы 17 (RII1I), 50 (АМ), 38 (SYX) генератора 83 предназначены для подачи сигналов сброса, готовности и синхронизации соответственно.

35 Генератор 7 предназначен для формирования периодической последовательности импульсов положительной полярности с несовпадающими фазами опорной частоты F 1 и

Г 2 на выходах 84.1 и 84.2.

Кроме того, на выходе 31 (F2TT) формируется тактовый импульс F2TT положит льной полярности со стандартными уровнями TTL логики, на выходе 37 — импульс стробирования состояния системы ком4 мутатора 5 (фиг. !).

На Вь|ходе SR (фиг. 8) формируется сигнал сброса микропроцессора, а на выходе )) 1 — сигнал, информирующий процессор о

1 ОТОВПОСТИ СИСТЕМЫ.

Дешифратор 8 (фиг. 9) содержит дешиф50 ратор 85, группа 13 входов которого является группой входов де1цифратора 8, а нулеВой --- четвертый выходы образуют соответственно выходы 39, 28, 40, 29 и 51 дешифратора 8.

Дешифратор 8 предназначен для задания собственного адреса устройства и блокОВ, к которым подключены егo выходы.

Ьлок 9 задания перехода (фиг. 10) содержит счетчик 86, первый триггер 87, второй

1481774

10

30 триггер 88, первый 89, второй 90, третий 91 и четвертый 92 элементы И.

Прямой 93.1 и инверсный 93.2 выходы триггера 88 образуют группу 41 выходов блока 9.

Входы разряда приема 94.1 и записи 94.2 группы 44 управляющих входов блока 9 соединены соответственно с первым входом элемента И 89 и первым входом элемента

И 90, группы информационных входов 45 блока 9 соединены с группой входов элемента И 90, группа выходов которого соединена с группой выходов 42 блока 9. Выходы переполнения (OF) и нулевого состояния (Z) счетчика 86 соединены соответственно с единичным и нулевым входами триггера 88, единичный выход которого соединен с первым входом элемента И 91.

Выходы элементов И 91 и И 92 соединены соответственно с суммирующим (+1) и вычитающим (— 1) входами счетчика 86 соответст вен но.

Вход 26 блока 9 соединен с нулевым входом (К) триггера 87 и установочным входом счетчика 86.

Единичный и нулевой выходы триггера 87 соединены с вторыми входами элементов И 91 и И 92 соответственно.

Вход 39 блока 9 соединен с вторым входом элемента И 89, выход которого соединен с синхровходом триггера 8?.

Вход 38 блока 9 соединен с третьим входом элемента И 91 и вторым входом элемента И 92.

Вход 43 блока 9 соединен с информационным (D) входом триггера 87.

Блок 9 предназначен для переключения блоков теневой и основной памяти по команде вывода в порт (триггер 87) переключения памяти с задержкой на время выборки блоком 1 команды перехода (ЗМР) из той же области памяти, из которой осуществлялась выборка команды вывода в порт перекл юче ни я.

Счетчик 86 предназначен для отсчета времени задержки на время выборки команды перехода (JNP). Время задержки отсчитывается путем подсчета сигналов синхронизации (SYX), поступающих на вход 38 блока 9 с выхода синхронизации 57.5 (фиг. 2) блока обработки 1 в начале каждого машинного цикла.

Сигнал на .выходе переполнения OF (нулевого состояния Z) выдается при отработке такого количества машинных циклов, которое необходимо для выборки команды перехода (JNP) при отсчете от нулевого состояния счетчика (состояния переполнения) .

Если счетчик 86 находится в нулевом состоянии, то при поступлении импульсов на вычитающий вход (— 1) его состояние не изменяется.

55

Триггер 87 выполняет роль, орта начала переключения типа памяти, а трипер 88— окончания переключения.

Элемент И 89 предназначен для формирования сигнала записи в триггер 87 переключения блоков памяти (теневой и основной) .

Элемент И 90 предназначен для управления передачей кода адреса в блок 12 памяти при наличии управляющего сигнала записи с входа 94.2 блока 9.

Элемент И 91 предназначен для управления подачей на счетный вход (+ 1) счетчика 86 импульсов синхронизации с входа 38 блока 9 для задержки переключения с основной памяти на теневую.

Триггер 88 предназначен для выдачи на выходы 93.1 и 93.2 сигнала включения основной и теневой памяти в блоке 12 памяти.

Единичное (нулевое) состояние триггера

88 соответствует включению теневой (основной) памяти в блоке 12.

Единичное (нулевое) состояние триггера 87 соответствует переходу к теневой (основной) памяти.

Блок !О синхронизации (фиг. 11) содержит первый 95, второй 96, третий 97 элементы И, первый 98 и второй 99 элементы ИЛИ.

Входы 18, 100.1, 100.2, 100.3, 46, 5! и группа 47 входов блока 10 соединены соответственно с первым входом элемента ИЛИ

98, первым, вторым входами элемента И 95, первым входом элемента ИЛИ 99, первым входом элемента И 97, вторым входом элемента ИЛИ 99 и группой входов элемента И 96.

Выход элемента И 95 соединен с входом элемента И 96, выход которого соединен с вторым входом элемента ИЛИ 98.

Выход элемента ИЛИ 98 соединен с вторым входом элемента И 97, выход которого является выходом 50 блока 10.

Выход элемента ИЛИ 99 соединен с выходом 25 блока 10.

Блок 10 предназначен для формирования сигналов синхронизации обмена с внешними устройствами на выходе 50 и подтверждения прерывания на выходе 25.

Вход 18 предназначен для подачи сигнала «Ответ» с соответствующего разряда шины 15 управления системы (фиг. ). Этот сигнал формируется при асинхронном обмене с внешними устройствами, которые могут подключаться к шинам 3, !4 и 15 системы в соответствии с известным интерфейсом ИК 1.

Входы разрядов 100.1, 100.2 и 100.3 группы 48 входов блока 10 предназначены для подачи сигналов чтения, записи и выдачи с соответствующих разрядов шины 15 управления системы (фиг. 1).

Группа 47 входов предназначена для подачи сигналов выбора собственного адреса блока 10 с шины 13 адреса системы (фиг. 1) .

1481774

Вход 48 предназначен (фиг. 11) для подачи сигнала — признака нахождения блока 1 (фиг. 2) в состоянии ожидания. Этот. сигнал поступает с выхода 57.3 микропроцессора 54. 5

Вход 51 предназначен для подачи сигнала, разрешающего формирование сигнала подтверждения на выходе 25 с выхода 51 дешифратора 8.

Выход 50 предназначен для формирования сигнала готовности на вход AN генератора 7 (фиг. 8).

Счетчик 11 (фиг. 12) времени предназначен для организации временных интервалов при отладке, а также для синхронизации работы блока 4 (фиг. 1) асинхронной связи. !5

Счетчик 11 (фиг. 12) может быть выполнен на известной микросхеме типа К580ВИ53.

Группа 14 входов-выходов счетчика 11 соединена с группой одноиме IIII х вхо1013ныходов блока 101 счета.

Входы первого 102.1 и второго !02.2 разрядов группы 49 входов счетчика 11 соединены соответственно с входами Ао и Al блока 101.

Входы разрядов управления чтением ! 03. и записью 103.2 группы 52 входов счетчика 11 соединены соответственно с входами чтения (RD) и записи (WR) блока 101.

Вход 40 счетчика 11 соединен с входом CS выбора устройства блока 101.

Вход 3! счетчика 11 соединен с входами 30 тактовой частоты первого (ЬУМ ф), второго (SYN1) и третьего (SYN2) каналов.

Выход (СКЯ) первого канала блока 101 соединен с выходом 33 блока 11.

Входы разрешения работы первого (STD) второго (STI ) и третьего (ST2) каналов Зу олока 101 соединены с шиной нулевого потенциала источника питания.

Выходы второго (CRI) и третьего (CR2) каналов блока 101 не используются.

Входы-выходы данных (D) блока 101 предназначены для передачи данных и управ- 40 ляющих слов между блоками 1 (фиг. 1, 2) и выбранными каналами блока 101.

Входы 102.1 и 102.2 блока 101 предназначены для задания блоку 101 выбора одного из каналов или регистра управления.

Входы управления чтением (RD) и запись (WR) блока 101 предназначены для подачи сигналов на выдачу данных из внутренних регистров блока 101 на входы-выходы 14 данных блока 101 и на запись данных с входов-выходов !4 в блок 101.

Всход,CS блока 101 предназначен для подачи сигнала выбора микросхемы.

Входы SYN, ST и выход CR каждого из трех каналов блока 101 предназначены для подачи импульсов входной частоты сигнала разрешения работы и выдачи выходных сиг- 55 н алов.

В системе блок 101 используется в режиме генератора тактовых импульсов.

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

Клавиатура 59 (фиг. 13) содержит триггер 104, шифратор 105, элемент ИЛИ-НЕ

106, элемент НЕ 107, группу 108 элементов коммутации.

Нулевой выход триггера 104 является выходом 24, а группа выходов шифратора 105 образует группу 61 выходов клавиатуры 59.

Нормально замкнутые контакты элементов 108.1 — 108.М коммутации и вход элемента НЕ 107 соединены с шиной нулевого потенциала источника питания. Выход элемента HE 107 соединен с нормально разомкнутыми контактами элементов 108.! †1.Х коммутации, выходы которых соединены с входами шифратора 105 и входами элемента ИЛИ-НЕ 106.

Выход элемента ИЛИ-HE соединен с Jи С-входами триггера 104, нулевой вход (К) которого подключен к входу 25 клавиатуры 59.

Клавиатура 59 предназначена для осуществления внешнего ввода данных в систему для отладки, Триггер 104 предназначен для формирования сигнала запроса в микропроцессор 1 на выходе 24 клавиатуры 59.

Шифратор 105 предназначен для формирования кода, соответствующего сигналу, который поступает с одного из элементов

108.1 — 108.N коммутации.

Элемент ИЛИ-НЕ !06 предназначен для формирования сигнала запроса в триггер 104 при замыкании одного из элементов 108.1— ! 08. N ком м ута ци и.

При замыкании одного из элементов

108.1 — 108.N коммутации на выходе С! шифратора устанавливается соответствующий код для передачи на шину 14 данных систем (фиг. 1). Кроме того, выходным сигналом элемента ИЛИ-НЕ 106 триггер 104 устанавливается в единичное состояние, вырабатывая инверсный сигнал запроса на выходе 24. По этому сигналу блок переходит в режим прерывания и подает на вход 25 клавиатуры 59 сигнал подтверждения прерывания, по которому осуществляется возврат триггера 104 в исходное состояние и снятие сигнала запроса.

Блок 12 памяти (фиг. 14) содержит блоки теневой 109 и основной 110 памяти, входывыходы данных (D) которых соединены с вхо. дом 14 данных блока 12. Входы управления включением блоков теневой 109 и основной 110 памяти группы 41 управляющих входов блока 12 соединены соответственно с входами выбора (CS) блоков 109 и 110.

Управляющий вход 53 блока 12 соединен с управляющими входами блоков !09 и 110.

1481774

Группа 42 адресных входов блока 12 соединена с одноименными группами входов блоков !09 и 110 памяти.

Входы 111.1 и 1.11.2 служат для подачи сигналов включения теневой 109 и основной !10 блоков памяти с выходов 93.1 и 93.2 блока 9 (фиг. 10) соответственно.

Вход 53 предназначен для управления режимом работы (запись/чтение) блоков 109 и 110 памяти.

Шины адреса 13, данных 14 и управления 15 системой предназначены для передачи соответствующих сигналов, например, в соответствии со стандартным интерфейсом ИК 1.

Группа 16 входов-выходов системы пред- 15 назначена для сопряжения ее с внешними устройствами, работающими в последовательном коде, например клавиатурой, цифровым или телевизионным дисплеем, АЦПУ, графопостроителями и другими устройствами

На фиг. 15 приведены временные диаграммы работы системы в различных режимах работы.

Для пояснения работы системы ее удобно подразделить на следующие подсистемы: процессорная часть, содержащая блок 1 об- 2д работки, коммутатор 5 сигналов обращения, шинный формирователь 6 адреса, генератор 7, дешифратор 8, блок 10 синхронизации и счетчик 11 времени; память системы, содержащая блок 9 задания перехода и блок

12 памяти; блок 3 отображения. зр

Поскольку цель. изобретения состоит в повышении оперативности отладки за счет специальной организации управления переходами между основной и теневой памятью блока 12, особенности функционирования системы рассмотрим на примере организа- 35 ции управления переходами между блоком теневой 109 и основной l! 0 памяти олока 12 (фи(. !4)

Блок 1 обработки (фиг. 1) обеспечивает обмен с памятью в пределах адресного пространства, не превосходящего размер каждого из блоков основной 110 или теневой 109 памяти. Поэтому для расширения объема памяти, используемого для хранения отлаживаемых программ (программ пользователей), физически массив всех программ системы подразделен на два подмассива. Первый подмассив, содержащий, в основном, программы пользователей, хранится в блоке 110 основной памяти, а второй, содержащий служебные программы, например, комплексы шаговой отладки, тестового конт- 5р роля и другие вспомогательные программы, хранится в блоке 109 теневой памяти.

Поскольку адресное пространство обоих блоков памяти идентично, то обращение микропроцессора к памяти происходит известным образом в соответствии с управляющими сигналами, которые вырабатываются коммутатором 5 (см. фиг. 6) на выходах 75.1 н 75.2.

Для задания соответствующего режима работы блока 1 обработки (фиг. 1) в первом такте каждого машинного цикла генерирует на шине 20 слово состояния, которое по сигналу с входа 37 блока 1 (фиг. 2) записывается s соответствующий регистр блока 74.

Всего для блока обработки (микропроцессора типа К580ИК80) предусмотрено десять типов машинных циклов, задаваемых соответствующим кодом слова состояния в блоке 74.

Управляющие выходы 36 коммутатора 5 подключаются к одноименным разрядам шины 15 управления.

Адресация внешних по отношению к блоку I устройств и блоков 9, 3, IO, 4 и 11 осуществляется аналогично адресации ячеек памяти.

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

Ввод-вывод информации в системе может осуществляться через блок 2 ввода данных, блок 4 асинхронной связи и, кроме того, посредством любых соответствующих внешних устройств, подключение которых допускается к шинам 13 — 15 в соответствии с интерфейсом ИК 1.

При этом с помощью блока 2 ввода (фиг. 3) осуществляется ввод данных с клавиатуры 59. Для реализации ввода из блока 2 используется аппарат прерываний блока 1.

При замыкании нормально разокнутого контакта 108 ((i с 1, N) срабатывает элемент ИЛИ-НЕ 106, выходной сигнал которого переводит триггер 104 в единичное состояние.

Сигнал (с активным низким уровнем) с нулевого выхода 24 триггера 104 поступает на вход запроса прерывания RQ микропроцессора 54 (фиг. 2).

После этого микропроцессор 54 известным образом переходит в цикл обработки прерывания, в котором на шине 19 адреса выставляется адрес обращения к блоку 2 (фиг. 1). Код адреса поступает на вход дешифратора 8, который срабатывает по выходу 51.

Сигнал с выхода 5! дешифратора 8 (фиг. 1) поступает на вход элемента ИЛИ 99 и далее с его выхода 25 — на одноименный нулевой вход (К) триггера 104 (фиг. 13), который, возвращаясь в исходное состояние, снимает сигнал запроса прерывания с выхода 24.

Сигнал с элементов 108 ((i e i, N) коммутации поступает на вход шифратора 105, на выходе 61 которого формируется соответствующий код, поступающий на группу А входов формирователя 60 блока 2 (фиг. 3).

Формирователь 60 открывается сигналом с входа 25 блока 2 и передает на шину 14

1481774

10

20 данных с выходов 23 код, сформированный шифратором 105 (фиг. 13), который считывается микропроцессором через коммутатор 5 (фиг. 6).

Ввод-вывод через блок 4 асинхронной связи (фи r. 5) осуществляется следующим образом.

Для обмена системой через блок 4 известным образом может подключаться цифровой или. телевизионный дисплей, АЦПУ, графопостроитель или любое другое устройство, осуществляющее обмен данными в последовательном коде.

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

69 В блоке 4 (фиг. 5).

Г!ри осуществлении двуняпрявл(нного o(>мена данными необходи 10 иметь не менее двух блоков 69, один из которых должен ряботать в режиме передач:; и, ., : (ч,

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

В системе блок 69 используется в асинхронном режиме.

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

В результате записи управляюгцих слов

Олок 69 получает информацию о скорости приема-передачи данных, количестве разрядов в каждом данном, числе разрядов останова, режиме работы (синхропный), наличии и !II отсутствии разряда четности каждого данного. При синхронном режиме приема данных указывается также тип внешней синхронизации.

Управляющие слова, принимаемые блоком 69 через группу 34 Входов-выходов, подразделяются на два типа: управления режимом работы и команды управления.

В любой момент времени блок 1 (фиг. 1) может осуществлять считывание слова состояния блока 69.

Для отображения информации в системе используется блок 3 отображения и, кроме того, могут применяться другие блоки аналогичного назначения, соответствующие стандарту интерфейса ИК 1.

Обращение блока 1 (фиг. 1) к блоку 62 (фиг. 4) осуществляется как к четырем ячейкам памяти. Для формирования сигнала выборки блока 3 дешифратор 8 (фиг. 1) срабатывает по выходу 28 (фиг. 4).

Комбинации режимов и типов работы блока 62 задаются с помощью управляющих слон, записываемых по адресу регистра управления блока 62.

Рассмотрим работу системы при осуществлении перехода между командами, расположенными в разных блоках памяти: теневой и основной.

Допустим, что н исходном состоянии триггер 88 блока 9, а также триггер 87 и счетчик 86 находятся в нулевом состоянии.

Сл(:дОВят(льно, сиГналом с ну. )евого выхода

93.2 триггера 8>8>, поступающим lid вход 11!.2 блока 12, подключен блок 110 основной пямя". и, х ран яп(и и и !)ОГ>)ам.",>> ы пол азов ят(ля и Ос>(О»пые 11рогр ям м1>! О Гл а;> ки.

При Ор(янизяции переходов!Iежду Kомандами программы, хранящейся В памяти 110, запись единицы в триггер 87 не производится. При наличии сигналоз записи или чтения на входах 94.2 или 94.3, соответственно, адрес обращения к памяти с группы 45 входов блока 9 (фиг. 10) через элемент И 90 поступde) на входы 42 блока 110, задавая тем самым ячейку для обращения. Тем самым обеспечивается выбор команды в том же блоке памяти.

Если же необходимо осуществить переход из основного блока 110 памяти в теневой 109, то блоком 1 (фиг. 1) на шине 13 адреса на входы дешифратора 8 задается адрес сбращенпя к триггеру 87 (фиг. 10).

При этом эл ìåíò И 89 открывается по входу 39 выходным сигналом дешифратора 8.

Далее по управляющему сигналх с в Ix()дя 75.3 коммутатора 5 (фиГ. 6) . Поступ як)ще vló Hd вход 94.1 элемента 89 И, разрешается запись по С-Входу в триггер 87.

Одновременно на шине данных 14 блоком 1 (фиг. 1) по г>торой команде стандартной последовательности перехода между теневой (основной) и основной (теневой) памятью-запис)но в порт (триггер 87) переключения памяти выстазляется байт данных, нулевой разряд которого, имеющий единичное значение, постугает на вход 43 блока 9 (фиг. 10) и устананпивает триггер 87 в едипичное состояние.

После этого блок 1 обработки переходит к выборке третьей команды (JM1 ) стандартной последовательности перехода, н процессе которой осугцествляется несколько (в слу <яе микропроцессора К580ИК80 или другого аналогичного — три) обращений )( памяти. 1!ри этом при каждом Обращении блоком 1 обработки (фиг. 2) на выходе

57.5 8 ) М вырабатывается синхросигнал, ко17

1481774 торый через открытый элемент И 91 поступает на счетный вход (+ 1) счетчика 86.

После выборки команды перехода (ЗМР), в процессе которой счетчик подсчитывает число обращений к памяти, счетчик 86 пере- 5 ходит в состояние переполнения, когда на его выходе OF появляется единичный сигнал.

По этому сигналу триггер 88 устанавливается в единичное состояние. Сигнал с единичного выхода 93.1 триггера 88 поступает на вход 111.1 блока 12 (фиг. 14), тем самым включая блок 109 теневой памяти.

Поэтому очередное обращение блока 1 обработки происходит уже к бло.<у 109 теневой памяти.

Переход из программы, находящейся в 15 блоке 109 теневой памяти, к команде, находящейся в блоке 1!О основной памяти, осуществляется следующим образом.

Аналогично описанному -,о второй команде стандартной последовательности перехода осуществляется з ;ï.è,ñü нуля в триггер 89. При это."л о крывается элсмен" И 92, разрешающий поступление импульсов с входа 38 на вы .итающий вход (— 1) счетчика 86.

После выборки третьей команды (коман- 25 дь перехода,)МР) появляется сигнал на выходе Z счетчика 86, которой устанавливает триггер 88 в нулевое состояние. Сигналом с нулевого выхода 93.2 триггера 88 происходит включение блока 110 основной памяти. 30

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

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

1. Система для отладки программ, содержащая блок обработки, блок отображения, коммутатор сигналов обращения, шинный формирователь адреса, тактовый гене- 4О ратор, дешифратор и блок памяти, причем группа выходов адреса блока обработки через шинный формирователь адреса подключена к шине адреса системы, группа входоввыходов данных и группа управляющих выходов блока обработки соединены с одно- 45 именными группами входов-выходов и входов коммутатора сигналов обращения соответственно, информационный вход-выход системы через магистраль соединен с группой входов коммутатора сигналов обращения, с входом-выходом блока памяти и с инфор- 50 мационным входом блока отображения, вход запроса системы соединен с входом требования прерывания блока обработки, адресный вход блока отображения через магистраль соединен с адресной шиной системы, выходы признака записи и чтения коммутатора сигналов обращения соединены соответственно с входами записи и чтения блока отображения, вход установки в исходное состояние системы соединен с установочным входом тактового генератора, группа выходов, первый, второй и третий выходы которого соединены соответственно с тактовым входом блока обработки, с тактовым входом коммутатора сигналов обращения, с тактовым входом блока отображения и является первым тактовым выходом системы, выход синхронизации группы управляк.щих выходов блока обработки соединен с в одом синхронизации тактового генератора, выход шинного формирователя адреса. соединен с входом коммутатора сигналов обращения, первый выход которого соединен с тактовым входом блока отображения, второй выход коммутатора сигнала обращения является первым тактовым выходом системы, выход признака чтения группы управляющих выходов коммутатора сигналов обрагцения соединен с входом чтения блока памяти, отличающаяся те:.1, что, с целью повышения быстродействия при отладУс, B систс Мх введены б.1ок 33 3 HHsl перехода, блок запуска и счетчик времени, причем выход признака перехода и адресный выход блока задания перехода соединены соответственно с входом признака перехода и адресным входом блока памяти, выход синхронизации группы управляющих выходов блока обработки соединен с первым тактовым входом блока задания перехода, второй и третий выходы тактового генератора соединены соответственно с входом начальной установки блока задания перехода и с входом синхронизации счетчика времени, нулевой разряд информационного входа системы соединен с информационным входом блока задания перехода, выход шинного формирователя адреса соединен с адресным входом блока задания перехода, выходы приема и записи группы выходов коммутатора сигналов обращения соединены с одноименными входами блока задания перехода, третий, четвертый и пятый выходы коммутатора сигналов обращения соединены соответственно с вторым тактовым входом блока задания перехода, с тактовым входом счетчик времени и с тактовым входом блока запуска, первый и второй выходы которых соединены соответственно с входом готовности тактового генератора и с выходом запрсса системы, выходы чтения, записи и выдачи группы выходов коммутатора сигналов обращения соединены с одноименными входами блока запуска, вход разрешения асинхронным обменом системы соединен с входом пуска блока запуска, выход ожидания группы управляющих выходов блока обработки и выход шинного формирователя адреса соединены соответственно с входом ожидания и группой адресных входов блока запуска, информационный вход-выход счетчика времени через магистраль соединен с шиной данных систем, выход шинного формирователя адресов соединен с адресным

1481774

19

20 входом счетчика времени, выходы приема и выдачи группы выходов коммутатора сигналов обращения соединены с одноименными входами счетчика времени, выход переполнения которого является выходом разреше- 5 ния системы.

2. Система по и. 1, отличающаяся тем, что блок задания перехода содержит первый и второй триггеры, счетчик, первый, второй, третий и четвертый элементы И, причем входы приема и записи блока соединены с первыми входами соответственно первого и второго элементов И, первый тактовых вход блока соединен с вторым входом первого элемента И, выход которого соединен с тактовым входом первого тригге- 15 ра, вход начальной установки блока соединен с входами установки нуля первого триггера и счетчика, выход переполнения и нулевого состояния которого соединены соответственно с .единичным и нулевым входами второго триггера, прямой и инверсный выходы которого являются прямым и инверсным выходами признака перехода блока, второй тактовый вход блока соединен с первыми входами второго и третьего элементов И, информационный и адресный входы блока соединены соответственно с информационным входом первого триггера и вторым входом второго элемента И, выход которого является адресным выходом блока, прямой и инверсный выходы первого триггера соединены с вторыми входами третьего и четвертого элементов и соответственно, выходы которых соединены соответственно с инкрементным и декрементным входами счетчика, прямой и инверсный выходы второго триггера соединены с инверсными входами третьего и четвертого элементов И соответственно.!

481774

1481774

1481774

148!774

) !

48!774

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

Редактор С. Патрушева Текред И. Верес Корректор 1 11атай

Заказ 2691,50 Тираж 669 Подписное

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

113035, Москва, Ж вЂ” 35, Раушская наб., д. 415

Производственно-издательский комбинат «Патент», г. Ужгород, ул. Гагарина, 1О1

Система для отладки программ Система для отладки программ Система для отладки программ Система для отладки программ Система для отладки программ Система для отладки программ Система для отладки программ Система для отладки программ Система для отладки программ Система для отладки программ Система для отладки программ Система для отладки программ Система для отладки программ Система для отладки программ Система для отладки программ 

 

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Изобретение относится к вычислительной технике и может быть использовано в управляющих вычислительных машинах (УВМ)

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