Устройство для контроля хода программы управляющей вычислительной машины
Похожие патенты | МПК / Метки | Текст | Заявка | Код ссылки
Номер патента: 1815644
Авторы: Забродский, Иванов, Кладов
Текст
(5 ПИСАНИЕ ИЗОБРЕТЕ СВИДЕТЕЛ ЬСТ ВТОРСКО институт.Б,ЗабродСР СР 85.ОЛЯ ХОДАЙ ВЫЧИС слител зованоИВЭИ ГОСУДАРСТВЕННОЕ ПАТЕНТНОЕВЕДОМСТВО СССР(56) Авторское свидетельство ССМ 894713, кл. О 06 Р 11/28, 1983Авторское свидетельство ССч.191912, кл, 6 06 Р 11/28, 19154) УСТРОИСТВО ДЛЯ КОНТРПРОГРАММЪ УПРАВЛЯЮЩЕЛИТЕЛЬНОЙ МАШИНЫ(57) Изобретение относится к выной технике и может. быть испо вычислительных управляющих устройствах.Цель изобретения - уменьшение времени выполнения программы и расширение обла- . сти применения эа счет возможности работы с процессорами, с конвейером команд и опережающей выборкой команд. Поставленная цель достигается тем, что в устройство введены одновибратор 10, регистры 1 и 4, триггеры 6, 8, 21, элементы И 11 и ИЛИ 9, дополнительный связи. Контроль осуществляется путем суммирования кодов команд на линейном участке программы и сравнения при переходе на новый линейный участок реального и прогнозируемого адреса перехода. 2 ил.ЖИзобретение относится к вычислительной технике и может быть использовано при построении надежных управляющих вычислительных машин (УВМ), нечувствительных к сбоям программы.Целью изобретения является уменьшение времени выполнения программы и расширение области применения за счет возможности работы с процессорами с конвейером команд и опережающей выборкой команд.На фиг. 1 изображена структурная схема устройства; на фиг. 2 - пример программы.Устройство (см.фиг,1) содержит первый регистр адреса 1, первый блок памяти 2, второй блок памяти 3, второй регистр адреса 4, схему сравнения 5, триггер ошибок 6, накапливающий сумматор 7, триггер очистки 8. элемент ИЛИ 9, одновибратор 10, элемент И 11, входы: "подтверждение данных 12, чтение данных 13, запрос ПЗУ 14. чтение очистка 15, разрешение прерывания 16, выходы запроса прерывания 17, вход началь-. ной установки 18, информационный вход 19, адресный вход 20, триггер задержки 21,На фиг.2 представлен пример части программы, В программе можно выделить несколько линейных участков, Начинаются они с начальной точки (команды) программы и с точек программы, на которые происходит переход, в результате выполнения команд, связанных с изменением счетчика команды и нарушения последовательного выполнения команд. На фиг.2 показаны и пронумерованы данные точки - начало линейных участков программы. В скобках указаны их адреса. В общем случае во всей программе существует Й таких точек (команд), хранящихся в ячейках с адресами А 1 Ай.На фиг. 2 показаны также точки (обведены) е + 1 М, в которых возможно появление активного (н 1 н) сигнала очистки на линии 15 и переход на другой линейный участок программы. Необходимо отметить, что сигнал очистки появляется не при считывании команды ветвления, в результате выполнения которой происходит переход на начало новоголинейного участка программы 1(п), а из-за опережающей выборки команд после считывания еще нескольких команд, следующих за данной командой по выполняемому линейному участку программы.Устройство предназначено для контроля хода программы УВМ, построенных на базе современных процессоров, имеющих51015 конвейер команд (например,микропроцессоры 1810 ВМ 86, ЮТЕ 1 18086).В данных процессорах используется опережающая выборка команд и формируется очередь команд. При передаче управления в другое место программы (на начало нового линейного участка программы) конвейер команд очищается, и после чего начинает заполняться командами нового линейного участка программы. Сигнал очистки конвейера (для микропроцессора 1810 ВМйо например, ато сигнал у = мо 1 г 150- 051 + (БО, акти вний уровень которого Г 1") появляется при 031 = О, 030 - 1) идентифицирует переход к началу нового линейного участка программы и подается на соответствующий вход устройства.Сигналы на линиях 12, 13, 15, 17, 18, 19,20"20 соответствуют стандартному интерфейсуМцЫЬоз и его советскому аналогу 0 41. Сигнал запроса ПЗУ на линии 14 вырабатывается вычислительной машиной (например, спомощью входящего в его состав селектора25 адреса при ее обращении к зоне адресов еепрограммы).Контроль работы УВМ осуществляетсяпутем суммирования кодов команд на линейном участке и сравнении при переходе30 на новый линейный участок программы реального и прогнозируемого значения адреса перехода. Прогноз осуществляется наоснове начальной точки исполняемого линейного участка и суммы кодов команд, счи 35 танных процессом УВМ к моментупоявления сигнала "Очистка", свидетельствующего о переходе на новый линейный участок программы. Таким образом,обеспечивается как контроль правильностисчитывания команд при выполнении линейного участка программы, так и правильностьперехода на новый линейный участбк.программы.Запись информации в регистры 1, 4,триггер 6 происходит по фронту О/1 на ихсинхровходах, суммирование кодов в сумматоре 7 - по фронту 1/О на его синхровходе.50 При равенстве кодов на входах схемысравнения 5 на ее выходе сигнал логическойн 1", при неравенстве - нО".Одновибратор 10 формирует короткийположительныйимпульс по фронту О/1 на55 своем входе. Длительность импульса должна быть достаточной для сброса триггераочистки 8 и сумматора 7,Первый блок памяти 2 прошит следующим образом. По адресам А 1 Аи, соответствующим началам линейных участковпрограммы записаны их порядковые номера 1 М, В ячейках с другими аж адресамизаписан один и тот же код равный И+1.Второй блок памяти разделен на 1 И+1зоны. Обьем каждой эоны равен 2 Р, где; р - 5разрядность сумматора. 1 Й зоны соответствуют линейным участкам программы, начинающимся соответственно с 1 Й точки.И+1 зона соответствует случаю сбоя. В ячейках %п, где- номер эоны, а10Зьп, =К - сумма (или Р младших разрядов суммы) кодов команд(К). считанных отточкиначала линейного участка программы до точки в данного линейного участкапрограммы, когда возможно появление сигнала очистки на линии 15, свидетельствую-щем о переходе на новый линейный участокпрограммы; записан адрес А( начала нового линейного участка программы, на которой возможен переход в данной точке М. Востальных ячейках 1.;.ч зон, во всех ячейках8+1 зоны записан код, равный адресу, входящему в неиспользованную область адресов вычислительной машины.Триггер задержки. 21 предотвращаетложное срабатывание триггера ошибки 6при считывании первой команды программи обработки прерывания по сбою,Устройство работает следующим образом.При включении питания по активномууровню ("0") сигнала начальной установкина линии 18 происходит установка триггераошибки 6. При включении питания и припереходе на новый линейный участок программы в процессе с конвейером командпроисходит его очистка, сопровождающаяся появлением активного уровня ("1") сигнала на линии очистки 5, Это приводит ксбросу триггера очистки 8, обнулению сумматора 7 и записи адреса в регистр 4.Процессор УВМ обращается к ПЗУ программы за первой командой линейного участка программы, выдавая ее адрес,Обращение сопровождается появлениемактивного("0") уровня сигнала на линии "Запрос ПЗУ" 14, по которому происходит установка триггера очистки.8, По фронту О/1 навыходе триггера очистки 8 происходит запись адреса начала нового линейного участка программы в регистр адреса 1, На выходепервого блока памяти 2 формируется номерначала линейного участка программы. Онпоступает на первую группу входов (старшие разряды) второго блока памяти 3. Наего вторую группу входов (младшие разряды) подается информация с сумматора 7, который в начале линейного участка обнулен,При считывании команд линейного участка программы (процесс считывания идентифицируется появлением активного ("О") уровня сигналов на линиях 12, 13, 14) фронту 1/О на синхровходе сумматора 7 происходит суммирование старого содержания сумматора 7 с кодом считанной команды, в результате чего в сумматоре 7 образуется сумма (или Р младших разрядов суммы) считанных к этому моменту кодов команд выполняемого линейного участка программы. Второй блок памяти формирует адрес начала другого линейного участка, на который может перейти процессор УВМ в текущий момент времени,Контроль осуществляется в моменты перехода на новый линейный участок программы. При этом по активному ("0") сигналу на линии "Очистка" 15, сформйровавшему фронт О/1 на синхровходе регистра 4 происходит запись ожидаемого адреса перехода с второго блока памяти 3 в регистр 4, В схеме сравнения 5 осуществляется сравнение реального адреса перехода, установленного в этот момент на шине адреса 11 и ожидаемого, записанного в регистр 4,В случае несовпадения по фронту О/1 с выхода триггера очистки 8, появляющемуся при считывании первой команды нового линейного участка программы, происходит сброс триггера 6, формируется активный ("0") уровень сигнала на линии "Запрос прерывания" 17, Процессор УВМ формируетактивный ("0") уровень сигнала на линии разрешения прерывания 16, который устанавливает триггер 6 и снимает активный уровень сигнала на линии 17, и переходит к программе обработки прерывания. При отсутствии сбоев при выполнении линейного участка программы в момент появления фронта О/1 на синхровходе триггера 6 значения сигналов на входах схемы сравнения совпадают, а на ее выходе сигнал логической "1", сброс триггера 6 не происходит.Формула изобретенияУстройство для контроля хода программы управляющей вычислительной машины, содержащее первый блок памяти, второй блок памяти, накапливающий сумматор, схему сравнения, причем информационный вход накапливающего сумматора является информационным входом устройства, о тл ич а ю щ ее с я тем, что, с цельюумень1815644 орректор О.Кравцова Составитель Д.ВанюхинТехред М.Моргентал акто Заказ 1636 ТиражПодписное 8 НИИПИ Государственного комитета по изобретениям и открытиям при ГКНТ ССС 113035, Москва, Ж, Раушская наб., 4/5 оизводственна-издательский комбинат "Патен Ужгород, ул,Гагарина, 101г/ щения времени выполнения программы и расширения области применения устройства за счет возможности работы с процессорами с конвейером команд и опережающей выборкой команд, в него введены одновиЬратор, триггер очистки, триггер ошибки, триггер задержки, первый и второй регистры адреса, элемент И, элемент ИЛИ, причем первый вход схемы сравнения является адресным входом устройства и соединен с информационным входом первого регистра адреса, группа выходов которого соединена с группой адресных входов первого блока памяти, группа информационных выходов которого соединена со старшими разрядами адресного входа второго блока памяти, младшие разряды адресного входа которого соединены с группой выходов накапливающего сумматора, группа информационных выходов второго блока памяти соединена с группой информационных входов второго регистра адреса, информационный выход которого соединен с вторым входом схемы сравнения, выход которой соединен с информационным входом триггера ошибки. выход которого является выходом запроса прерывания устрОйства, вход установки триггера ошибки соединен с выходом триггера задержки, информационный вход которого соединен с шиной потенциала логической 5 единицы устройства, вход сброса триггеразадержки соединен с выходом элемента И., входы которого являются входами начальной установки и подтверждения прерывания устройства, синхровходы триггера "0 ошибки, триггера задержки и первого регистра адреса соединены с выходом триггера очистки, информационный вход которого соединен с шиной потенциала логической единицы устройства, синхровход триггера очистки, первый вход элемента ИЛИ соединен с входом запроса ПЗУ устройства, вход сброса триггера очистки соединен с выходом одновибратора, синхровходом вто рого регистра адреса, входом сброса накапливающего сумматора, синхровход которого соединен с выходом элемента ИЛИ, второй и третий входы которого являются соответственно входами чтения и под тверждения данных устройства, входодновибратора является входом очистки устройства.
СмотретьЗаявка
4860587, 20.08.1990
УФИМСКИЙ АВИАЦИОННЫЙ ИНСТИТУТ ИМ. СЕРГО ОРДЖОНИКИДЗЕ
ИВАНОВ АНАТОЛИЙ ИВАНОВИЧ, КЛАДОВ ВИТАЛИЙ ЕВГЕНЬЕВИЧ, ЗАБРОДСКИЙ ВАЛЕРИЙ БОРИСОВИЧ
МПК / Метки
МПК: G06F 11/28
Метки: вычислительной, программы, управляющей, хода
Опубликовано: 15.05.1993
Код ссылки
<a href="https://patents.su/4-1815644-ustrojjstvo-dlya-kontrolya-khoda-programmy-upravlyayushhejj-vychislitelnojj-mashiny.html" target="_blank" rel="follow" title="База патентов СССР">Устройство для контроля хода программы управляющей вычислительной машины</a>
Предыдущий патент: Устройство для отладки программ микроэвм
Следующий патент: Устройство для контроля управляющей вычислительной машины
Случайный патент: Электрод-инструмент