Устройство для контроля микропроцессорной системы
Похожие патенты | МПК / Метки | Текст | Заявка | Код ссылки
Текст
(191 (11) 1)5 0 06 Р 11 0 ГОСУДАРСТВЕННЫЙ КОМИТЕТПО ИЗОБРЕТЕНИЯМ И ОТКРЫТИЯМПРИ ГКНТ СССР ОПИСАНИЕ ИЗОБРЕТЕНИК АВТОРСКОМУ СВИДЕТЕЛЬСТВУ 4) УСТРОЙС ОЦЕССОРНОЙ ДЛЯ КОНТРОЛЯ МИКРОСТЕ%1 к вычисли- второй мультиплексор 18, вход признабыть исполь- . ка обращения к стеку 19, вход 20 синхадежных микро- ронизации устройства,Устройство работает следующимяется упроще- образом,Устройство обеспечивает контрольтруктурная программ наиболее распространенной.шинами: шиной адреса, шиной данныхоля микропро- и шиной управления, Для обеспеченияжит (см.фиг.1) контроля микропроцессорной системарегистр 2 вход 16 предлагаемого устройства под 1ментов ин- ключается к управляющей шине контвый мульти- ролируемой система, вход 14 - к еепервый . адресной шине, вход сброса 15 - кки, второй цепи сброса микропроцессора, вход 19 -ндикации, к линии сигнала обращения к стеку,у 13 сравне" . вход 20 - к линии сигнала "Синхронистройства, зация" контролируемой система, а выационный вход ход сигнала ошибки 9 - к входу зап 7 сдвига, роса прерывания микропроцессора или(71) Андроповский авиационный технологический институт(56) Авторское свидетельство СССР У 1260960, кл. 0 06 Р 11/28, 1985.Авторское свидетельство СССР В 1417649, кл. 0 06 Р 11/00, 1986. Из обретение относится тельной технике и может зовано при построении н процессорных систем.Целью изобретения явл ние устройства,На фиг.1 изображена с схема устройства; на фиг ные диаграм ы его работыУстройство для контр цессорной система содер блок 1 постоянной памяти дешифратор 3, блок 4 эле дикации, шифратор 5, пер плексор 6, элемент ИЛИ 7 триггер 8, выход 9 ошиб триггер 10, элемент 1 1 и третий триггер 12, схем ния, адресный вход 14 у вход 15 сброса, информ 16 устройства, регистр 2(57) Изобретение относится к вычислительной технике и может быть использовано при построении надежных микропроцессорных систем. Целью изобретения является упрощение устройства. Поставленная цель достигается .тем, что устройство содержит блок постоянной памяти, регистр, дешифратор, блок элементов индикации, три триггера, схему сравнения, регистр сдвига и второй мультиплексор, Устройство обес печивает контроль микропроцессорных систем с тремя шинами. При этом обнаруживаются два типа некорректных ситуаций. 2 ил., 4 табл.50 Таким образом, при обращении мик-, ропроцессора к какому-либо конкретному устройству системы на выходах бло- ка 1 постоянной памяти формируется может быть использован другим образом.В общем случае контролируемая микропроцессорная система содержит постоянную память (ПЗУ), оперативную5память (ОЗУ), в которой организуется стек, и устройства ввода-вывода(УВВ). На стадии программированияпрограммист должен распределить зонуадресного пространства микропроцессора и закрепить за каждым из устройствсистемы определенную адресную зону.При этом, как правило, часть адресного пространства остается неиспользованной,Для обращения к конкретному устройству микропроцессор формирует на шине адреса соответствующий код, обеспечивающий активацию выбранного устройства, Для упрощения селекции выбираемого .устройства распределение адресов осуществляется таким образом,чтобы по старшим разрядам можно былобы определить устройство, к которому 25осуществляется обращение. Количествоиспользуемых для этого старших разрядов определяется минимальным объемомадресного пространства, закрепляемого за каким-либо устройством микропро цессорной системы.Например, для идентификации выбираемого устройства системы исполь",зовано 5 разрядов: А , ААА юА 1, адресной шины и зоны адресногопространства распределены в соответ 35ствии с табл.1,При таком составе контролируемоймикропроцессорной системы устройство, к которому осуществляется обращение, может быть указано трехразряд 40ным кодом. Перекодирование входногокода на старших разрядах нины,14 адреса в код, указывающий тип выбираемого устройства, осуществляется бло 45ком 1 постоянной памяти. Для этогов нем по соответствующим адресам хранятся коды устройств микропроцессорной системы. Пусть код ПЗУ - 001,код ОЗУ - 010, код стека - 011, кодУВВ - 100, а код неиспользованнойзоны - 000. Тогда в блоке 1 постоянной памяти должны храниться коды всоответствии с табл.2соответствующий код, и мультиплексор6 выбирает соответствующий информационный вход, подключенный к одному4 з выходов шифратора 5, вход которого через информационный вход 16 под-.ключен к управляющей шине контролиру.емой системы. В состав шины управления типовой микропроцессорной системывходят следующие сигналы: "Чтение памяти - ЧТ; "Запись в память - ЗП;Ввод" - ВВ; "Вывод" - ВЫВ; "Загрузка в стек 1 - ЗСТ; Извлечение из сте 11ка - ИСТ; "Чтение первого байта команды" - М 1; "Подтверждение прерывания" - ППР .При этом предполагается, что всесигналы стробированы соответствующимистроб-сигналами микропроцессора "Прием" .(ВВХИ) или "Запись" (УБ). Дляуказания обращений к стеку в микропроцессорных системах используетсядополнительный управляющий сигнал"Стек". При этом ЗСТ-Стек Запись,ИСТ-Стек Прием.Очевидно, что при нормальном функционировании системы микропроцессоргенерирует управляющие сигналы в строгом соответствии с устройством, к которому обращается. Нарушение этогосоответствия свидетельствует от отказе или сбое в системе и являетсясинтаксической некорректной ситуациейШифратор 5 обеспечивает кодированиеэтих ситуаций в соответствии с допустимыми комбинациями управляющих сигналов. Функционирование шифратора 5описывается табл.3.ьКаждый разряд выходного кода шифратора 5 соответствует устройствуконтролируемой микропроцессорнойсистеил (У- неиспользуемая зонааадресного пространства; У - ПЗУ;У - ОЗУ, Уз - стек, У - устройства ввода-вывода, Единицы в правойчасти табл.3 соответствуют некорректным, а нули - корректным синтаксическим ситуациям. Например, для ПЗУ некорректными входными сигналами являются ЗП, ВВ, ВЫВ, ЗСТ ИСТ. Для неиспользуемой зоны адресного пространства любой управляющий сигналбудет некорректным,Для обнаружения синтаксически некорректных ситуаций в контролируемойсистеме необходимо значения выходного кода шифратора 5 сопоставить сустройством, к которому осуществляется обращение по адресной шине 146384 6 20 25 30 35 40 5 153в текущий моментЭто осуществляется мультиплексором 6, При нормальной работе микропроцессорной системыисполняемые команды синтаксическикорректны, поэтому на соответствующем выходе шифратора 5 и на выходемультиплексора б будет постоянныйуровень логического нуля. Это связано с тем, что на управляющих входах мультиплексора 6 блок 1 постоянной памяти устанавливает код устройства, к которому идет обращение, ивыбирается соответствующий информационный вход мультиплексора б, Последний подключен к соответствующему выходу шифратора 5 (см. табл,2), гдеединицами закодированы только некорректные обращения (см.табл,3), Поскольку на выход мультиплексора 6 сигнал не поступает, регистр 2 остаетсяв обнуленном состоянии, которое былоустановлено при сбросе микропроцес- -сорной системы через вход 15 сброса устройства, Нулевой код с выхода регистра2 поступает на вход дешифратора 3, врезультат чего на его выходе 0 устанавливается активный потенциал. Этоприводит к засветке соответствующегоэлемента индикации блока 4 элементовиндикации, свидетельствующего о синтаксически правильной работе процессора (например, зеленого цвета),При исполнении процессором микро-процессорной системы программы в результате сбоя или отказа его элементов возможно возникновение некорректной синтаксической ситуации при обращении к какому в ли устройству системы, К таким ситуациям относятся попытка извлечения команды из зоны опе-,ративной памяти в результате сбояпрограммного счетчика процессора,попытка записи числа в зону ПЗУ врезультате сбоя косвенного адресаили отказа одной из линий адреснойшины и т,д, Некорректным являетсятакже любое обращение к неиспользованной зоне адресного пространства.При возникновении подобной некорректной синтаксической ситуации работаустройства описывается следующей последовательностью событий. Блок 1 постоянной памяти устанавливает на управляющих входах мультиплексора б кодустройства микропроцессорной системык которому должно производиться обращение. Благодаря этому среди информационных входов мультиплексора 6 выбирается тот, который связан с соответствующим выходом шифратора 5.При некорректной ситуации код адрес-5ной зоны выбираемого устройства несоответствует комбинации управляющихсигналов на шине 16 управления, Поэтому на выбранном информационном входемультиплексора б всегда будет присутствовать логическая единица (см.табл.3), и на его выходе появится сигналсвидетельствующий об ошибке, Этотсигнал через элемент ИЛИ 7 поступитна установочный вход триггера 8, переводи его в единичное состояние. Врезультате этого на выходе 9 ошибкиустройства появится активный уровень,свидетельствующий об ошибке, Одновременно импульс с выхода мультиплексора 6 поступит на вход синхронизациирегистра 2, Благодаря этому, в негобудет записан код устройства контролируемой микропроцессорной системы,к которому производится конкретноеобращение. Этот код будет декодирован дешифратором 3 и в блоке 4 элементов индикации будет высвечен,соответствующий элемент, свидетельсвующийо том, что произошла синтаксическая ошибка определенного типа (например,красного цвета). Например, при попытке извлечения команды из зоны ОЗУна выходе блока 1 постоянной памятибудет согласно табл,2 установлен код010, и соответственно, будет выбранвход мультиплексора б, связанный с вьгходом У шифратора 5 (2, -010)Согласно табл,3 сигнал М 1, поступивший на вход шифратора 5 при извлечении команды, пройдет на выход шифратора У и через мультиплексор 6 поступит на установочный вход триггера 8, что приведет к установке его в состоя - ние логической единицы и выдаче актив-45, ного сигнала на выход 9 ошибки устройства, Этот же сигнал с выхода мультиплексора 6 запишет в регистр 2 код 010 и дешифратор 3 выберет и засветит третий сверху элемент индикации блока.4 элементов индикации. Этот элемент можно назвать "Синтаксическая ошибка при обращещюи к ОЗУ". Эта информация может использоваться при ремонте контролируемой системы. В рассмотренном типе некорректных синтаксических ситуаций, комбинация управляющих сигналов на шине.16 управления является корректной, а некорректно ее сочетание с адресом на адресной шине 4 систе 153 б 384мы. Однако, кроме подобных некорректных ситуаций, часто в результате отказов или сбоев возникают некорректные синтаксические ситуации связанУ5 ные с нарушением временного распределения управляющих сигналов и адресов при обращении к стеку, что нарушает нормальное Функционирование микропроцессорной системы. При нормальном Функционировании в микропроцессорных системах (например, на базе микропроцессора КР 580 ИК 80 А) обращение к стекувсегда осуществляется в двух соседних машинных циклах работы процессора, в каждом из которых часть необходимой информации записывается (считывается) в (из) соседние ячейки стека, Следовательно, управляющий сигнал "Стек", указывающий на обращение к стеку в текущем цикле, должен следоватеь в двух соседних машинных циклах, а адрес на адресной шине в этих циклах не должен отличаться более чем на 1, т.е. быть четным в 25 ,одном .цикле и нечетным в другом или наоборот. Нарушение этого распределения (сигнала "Стек" или адресов) приведет к тому, что в стек будет записана (считана) лишь часть необходимой 30 информации либо записана (считана) вся информация, но по неправильным адресам. В результате нормальное функционирование микропроцессорной системы будет нарушено, Последствия этого нарушения могут быть очень значительны, так как в стеке чаще всего хранится управляющая информация (адреса возвратов) и неправильное обращение к стеку вызовет непредсказуемое исполнение программы.Для обнаружения подобных некорректных ситуаций текущее значение сигнала "Стек", поступающего на вход 19, в начале каждого машинного цикла работы процессора Фиксируется в регистре 17 сдвига. Запись этого сигнала в регистр 17 осуществляется сигналом "Синхронизация", поступающим на вход 20 устройства и обозначающим начало каждого машинного цикла, Например, в микропроцессорной системе на базе микропроцессора КР 580 ИК 80 А управляющий сигнал "Стек" в режиме временного мультиплексирования устанавливает55 ся на шине данных, а сигнал Синхронизация" Формируется генератором тактовых импульсов КР 580 ГФ 24, При следовании нулевых значений сигнала"Стек" регистр 17 сдвига находится в исхОдном нулевом состоянии, установленном при сбросе микропроцессорной системы через вход 15 сброса устройства, В результате этого среди инФормационных входов мультиплексора 18 выбирается нулевой вход и обеспечивается нулевой уровень сигнала на выходе мультиплексора 18, что свидетельствует об отсутствии ошибки при обращении к стеку.Б этом состоянии устройство находится до появления первого единичного значения сигнала Стек, т.е. до начала обращения к стеку. При появлении первого единичного значения сигнала "Стек" первый разряд регистра 17 сдвига переходит в единичное состояние и по Фронту его выходного сигнала в триггере 12 запоминается текущее значение младшей линии А адресной шины контролируемой системы. При этом в регистре 17 сдвига Фиксируется код 001 и выбирается первый информационный вход мультиплексора 18, что обеспечивает отсутствие сигнала ошибки на его выходе.При нормальном Функционировании контролируемой микропроцессорной системы в следующем машинном цикле вновь должен появиться- сигнал "Стек", а адрес должен измениться с четного на нечетный или наоборот. Поэтому при перЕходе к очередному циклу в момент смены адреса значение сигнала на линии А изменяется, и схема 13 сравнения Формирует на своем выходе, нулео все значение сигнала, свидетельствующее о несовпадении состояния триггера 12, т.е. адреса в предыдущем мау шинном цикле, с адресом в текущем цикле. При этом в регистре 17 сдвига Фиксируется код 011 и выбирается третий информационный вход мультиплексора 8. При нулевом значении сигнала на выходе схемы 13 сравнения сиг-я нал ошибки на выходе мультиплексора 18 не Формируется, Далее проверяется условие нормального Функционирования контролируемой системы в третьем от начала обращения к стеку машинном цикле, При корректном обращении к стеку значение сигнала Стек в этом цикле должно быть равно нулю, Если это условие выполняется, то в регистре 17 сдвига в третьем от начала обращения к стеку машинном цикле Фиксируется код 110. При этом выбирается1 О 9 153638шестой информационный вход мультиплексора 18, что .обеспечивает отсут-ствие сигнала ошибки на его выходе,При очередном обращении к стекуустройство контроля функционируетаналогично описанному, Однако, еслипри данном обращении будет нарушеновременное распределение адресов,т.е, сигнал на младшей линии адресаА в двух соседних машинных циклахобращения к стеку будет иметь одина-,ковое значение, то на выходе схемы13 сравнения в момент фиксации врегистре 17 сдвига кода 011 будет присутствовать.логическая единица, чтовызовет формирование сигнала ошибкина выходе мультиплексора 18.При нарушении временного распределения управляющего сигнала "Стек" 20,возможны два варианта. В первом изних количество обращений к стеку, т.е,количество непрерывно следующих в соседних машинных циклах сигналов"Стек", равно трем, а во втором - одному, вместо двух при корректном обращении, Прианализе этих ситуацийустройство работает аналогично изло-.женному. Однако, если количество управляющих сигналов Стек в соседних 30машинных циклах равно трем, что после кода 011 в регистре 17 сдвигазафиксируется код 111, При этом выберется седьмой информационный входмультиплексора 18 и логическая единица, присутствующая на нем, появитсяна выходе мультиплексора 18, свидетельствуя об ошибке. Если же количество сигналов "Стек" равно одному, топосле кода 001 в регистре 17 сдвига 40зафиксируется код 010. При этом выберется второй информационный входмультиплексора 18 и логическая едини"ца, присутствующая на нем, появитсяна выходе мультиплексора 18, свидетельсвуя об ошибке.Все возможные комбинации распределения управляющего сигнала пСтек"по трем соседним машинным циклам приведены в табл,4. В табл.4 дается и .характеристика соответствующих ситуаций в контролируемой мик 6 дпроцессорной системе,В любом случае оценка ситуациив контролируемой микропроцессорнойсистеме осуществляется после переключения регистра 17 в момент действиясигнала Синхронизация", поступающего на тактовый вход 20 устройства,4Это обеспечивается активированиеммультиплексора 18 по входу стробирования в эти моменты времени, обозначенные на временных диаграммах (см,фиг.2) штриховкой .Появление сигнала ошибки при обращении к стеку на выходе мультиплексо-.ра 18 вызовет переключение триггеров8 и 10 в единичное состояние. В результате этого на выходе 9 ошибкиустройства появится активныи уровень,свидетельствующий о возникновенииошибки в контролируемой системе, иначиет светиться элемент 11 индикации, который может быть назван "Ошибка временного распределения при обращении к стеку", Эта информация определяет тип возникшей некоррект-:.ной ситуации и может испОльзоватьсяпри ремонте контролируемой системы.Выход 9 ошибки устройства можетсоединяться с входом запроса прерывания микропроцессорной системы или использоваться какими-либо другим образом по усмотрению разработчика. Впервом случае при возникновении ошиб-:ки выполнение текущей программы прерывается и система переходит к выполнению программы обработки прерыванияпо ошибке. Программа обработки преры"вания по ошибке может предусматривать восстановление процесса, нарушенного сбоем, может иметь диагностический характер (выявление причиношибок)или в простейшем случае обеспечивать останов нарушенного процесса. В силу аппаратурных отказов илисбоя триггера разрешения прерываниямикропроцессорная система может ине среагировать на запрос прерывания.Однако и в этом случае может быть выполнен останов нарушенного процесса,а свечение элементов блока 4 индикации и элемента .11 индикации подскажет оператору причину возникшей ошибки.После устранения причин, вызвавшихошибку, оператор микропроцессорнойсистемы может, нажав кнопку сброса,вновь запустить программу сначала.При этом регистр 2, триггеры 8 и 10и регистр 17 сдвига будут установлены в нулевое состояние, что обеспечит исходное состояние устройстваконтроля,Формула из о бретейияУстройство для контроля микропроцессорной системы, содержащее блокТаблица Устройства микропроцессорной системы Адресный массив Ар АмАо Аяп0 0 0 О О ПЗУ 1 1 10 0 О 0 1 1 0 ОЗУ 1 0 1 0 1 О 1 0 Стек 1 01 0 Не использовано 11 1 УВВ 11 153638 Постоянной памяти, регистр, дешифра" тор, блок элементов индикации, шифратор, первый мультиплексор, элемент ИЛИ, элемент индикации, три триггера,5 схему сравнения, причем адресный вход блока постоянной памяти является адресным входом устройства для подключения к шине адреса контролируемой икропроцессорной системы, информационный вход шифратора является информационным входом устройства для подключения к шине управления контроируемой микропроцессорной системы,ходы сброса регистра, первого и второго триггеров объединены и подключе-, ны к входу сброса устройства, выход первого триггера является выходом Ьшибки устройства, группа выходов шифратора соединена с группой информа Ционных входов первого мультиплексоа, грулпа управляющих входов котороГо и группа информационных входовегистра соединены с группой выходов лока постоянной памяти, выход перво Го мультипяексора соединен с первым входом элемента ИЛИ и входом синхронизации регистра, группа информацион 1 ых выходов которого соединена с 1 руппой информационных входов дешифатора, выходы которого с первого пои-й соединены с первым по ш-м входами блоюа индикации, единичный 8 ход второго триггера объединен с вторым входом элемента ИЛИ, выход которого соединен с единичным входом35 первого триггера, первый вход схемы сравнения соединен с выходом третье 4 12го триггера, информационный вход которого объединен с вторым входом схемы сравнения и является младшим разрядом адресного входа устройства, о тл и ч а ю щ е е с я тем, что, сцелью упрощения, устройство содержитрегистр сдвига и второй мультиплексор, причем вход сброса регистрасдвига подключен к входу сброса устройства, информационный вход регистра сдвига является входом "Обращениек стеку устройства", вход стробирования второго мультиплексора и входсинхронизации регистра объединены иподключены к входу синхронизации устройства, группа управляющих входоввторого мультиплексора соединена сгруппой выходов регистра сдвига, первый выход группы выходов которого соединен с входом синхронизации третьего триггера, нулевой и первый информационные входы второго мультиплексора подключены к входу логическогонуля устройства, второй информационный вход второго мультиплексора подключен к входу логической единицыустройства, выход схемы сравнениясоединен с третьим входом второгомультиплексора, четвертый, пятый ишестой информационные входы которогоподключены к входу логического нуляустройства, седьмой информационныйвход второго мультиплексора подключенк входу логической единицы устройства, выход второго мультиплексора соединен с вторым входом элемента ИЛИ,14 13 1536384 Таблица 2 Выбираемый информационный вход мультиплексора 6 Код на выходе блока 1 Тип устройства системы Код на входах 14 адресапостоян ной памяти 0 0 1 0 000 О 1 0 ,0 10 0 0 0 0 0 0 0 1 1 1 1 0 0 0 1 О 1 0 1 О 1 О 1 О 1 1 .1 1, 1 1 11 1 0 1 0 00 0 ПЗУ ОЗУ Стек 1 0 0 У.ВВ Таблица 3 Таблица истинности шифратора 5 Выходные сигналы шифратора 5 Входные сигналы шифратора 5 ЗП ВВ ВЫВ ЗСТ ИСТ ЧТ М ППР Продолжение табл.4 Т аблица 4 Распределение управляющих сигналов "Стек"Состояние ре 40 гистра 17 ,сдвига Тип ситуации в контролируемой системе Состояние регистра 7,сдвига Зр 2 р 1 р 45 1 0 1 Исходное состояние - нет ошибкиНачало обращения к стеку - нет ошибки Некорректное обращение к стеку - ошибка условии равенстваА о+1Восстановление исходного состояния после 0 0 О 0 0 1 0 1 0 501 1 0 0 1 1 Продолжение обращения к стеку - ошибка при1 1 1 1 О О 1. 0 0 0 1 0 0 0 1 О 0 О 0 0 0 0 О О 0 0 0 0 0 0 О 0 0 0 0 0 1 0 0 О 0 0 О 0 О 0 О .0 0 0 1 0 0 1 0 0 О, О О 0 0 0 0 0 0 0 О 0 0 0 0 О 1, 0 0 1 0 0 0 1 1 1 О 0 0 О 1 1 О 1 1 1 1 0 1 1 О 1 0 1 1 0 1 1 1 1 1 1 1 0 0 0 Тип ситуации в контролируемой системе обращения к стеку - нет ошибкиВосстановление исходного состояния после предыдущего обращения к стеку и начало следующего обращения - нет ошибкиВосстановление исходного состояния после обращения к стекунет ошибкиНекорректное обращение к стеку - ошибка53638417 Вв8 ренвнае 8 енорреитмое иКрсяуе и РегиР Ююо нвюг Хк Ы ЬкгпР лаялСоставитель Н. Постовойедактор Е, Копча Техред М.Дидык Корректор Э. Лончаков Заказ 109 Тираж 557 Подписное ВНИИПИ Государственного комитета по изобретениям и открытиям при ГКНТ С113035, Москва, Ж, Раушская наб., д. 4/5 производственно-издательский комбинат "Патент", г. Ужгород, ул. Гагарина, 101
СмотретьЗаявка
4407325, 11.04.1988
АНДРОПОВСКИЙ АВИАЦИОННЫЙ ТЕХНОЛОГИЧЕСКИЙ ИНСТИТУТ
КОМАРОВ ВАЛЕРИЙ МИХАЙЛОВИЧ, ГЛАДШТЕЙН МИХАИЛ АРКАДЬЕВИЧ, ШУБИН НИКОЛАЙ АЛЕКСЕЕВИЧ, АЛЬТЕРМАН ИГОРЬ ЗЕЛИМОВИЧ
МПК / Метки
МПК: G06F 11/30
Метки: микропроцессорной, системы
Опубликовано: 15.01.1990
Код ссылки
<a href="https://patents.su/8-1536384-ustrojjstvo-dlya-kontrolya-mikroprocessornojj-sistemy.html" target="_blank" rel="follow" title="База патентов СССР">Устройство для контроля микропроцессорной системы</a>
Предыдущий патент: Устройство для обслуживания запросов
Следующий патент: Имитатор внешних устройств
Случайный патент: Подпорное сооружение