Сбоеустойчивое микропрограммное устройство управления Советский патент 1984 года по МПК G06F9/22 

Описание патента на изобретение SU1101823A1

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

2. Устройство по П.1, отличающееся тем, что блок обработки

прерываний содержит первый, второй регистры, шифратор и схему сравнения, первый и второй информационные входы которой соединены соответственно с выходами шифратора и первог регистра, управляющий вход схемы сравнения соединен с шестым входом блока, а выход - с вторым выходом блока, управляющие входы первого и второго регистров соединены с четвертым входом блока, информационный вход первого регистра соединен с первым входом блока, второй, трет и пятый входы блока объединены и пoдкJDOчeны к информационному входу второго регистра, выход которого соединен с взсодом шифратора, выход которого подключен к первому выходу блока..

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

название год авторы номер документа
Микропрограммный процессор 1982
  • Супрун Василий Петрович
  • Кривоносов Анатолий Иванович
  • Корниенко Иван Иосифович
  • Тимонькин Григорий Николаевич
  • Ткаченко Сергей Николаевич
  • Харченко Вячеслав Сергеевич
SU1070557A1
Микропрограммное устройство для управления и обмена данными 1983
  • Супрун Василий Петрович
  • Кривоносов Анатолий Иванович
  • Корниенко Иван Иосифович
  • Тимонькин Григорий Николаевич
  • Ткаченко Сергей Николаевич
  • Харченко Вячеслав Сергеевич
  • Никольский Сергей Борисович
SU1129601A1
Микропрограммное устройство управления 1984
  • Костинский Аркадий Яковлевич
  • Безруков Владимир Александрович
  • Рымарчук Александр Григорьевич
SU1264172A1
Микропрограммное устройство управления и отладки микропрограмм процессора 1984
  • Горбачев Сергей Владимирович
  • Диденко Владимир Дмитриевич
  • Сакун Людмила Ивановна
  • Торгашев Валерий Антонович
SU1168937A1
Микропрограммное устройство управления 1989
  • Харченко Вячеслав Сергеевич
  • Тимонькин Григорий Николаевич
  • Золотарев Андрей Георгиевич
  • Ткаченко Сергей Николаевич
  • Подзолов Герман Константинович
  • Хлебников Николай Иванович
  • Гнедовский Юрий Михайлович
SU1633402A1
Микропроцессор для управления памятью микрокоманд 1979
  • Кляшторный М.Ю.
  • Красницкий Б.М.
  • Хвощ С.Т.
  • Кузьменко Н.Г.
  • Горовой В.В.
  • Белоус А.И.
  • Шкроб В.С.
  • Болдырев В.П.
  • Смолов В.Б.
SU803700A1
Микропрограммный процессор со средствами быстрого прерывания 1982
  • Черевко Алексей Александрович
  • Иванов Владимир Андреевич
  • Сыров Виктор Валентинович
SU1116432A1
Микропрограммное устройство управления 1985
  • Самошин Владимир Николаевич
SU1354192A1
Микропрограммное устройство для сопряжения процессора с абонентами 1987
  • Гришин Владимир Алексеевич
  • Ярошевский Павел Юрьевич
SU1539787A1
Микропрограммный процессор 1987
  • Дрель Леонид Исаакович
  • Мугинштейн Израил Семенович
  • Шварц Эммануил Ехезкелевич
SU1553984A1

Иллюстрации к изобретению SU 1 101 823 A1

Реферат патента 1984 года Сбоеустойчивое микропрограммное устройство управления

1. СБОЕУСТОЙЧИВОЕ МИКРОПРОГРАММНОЕ УСТРОЙСТВО УПРАВЛЕНИЯ, содержащее блок адресации, коммутатор, блок памяти микрокоманд, блок синхронизации, первый триггер, блок обработки прерьгеаний, блок адресации в режиме прерывания, выход которого объединен с выходом блока адресации и соединен с адресным входом блока памяти микрокоманд, первый, второй и третий управляющие выходы которого соединены соответственно с первым входом блока синхронизации, выходом управления устройства и с первым управляющим входом коммутатора,второй управляющий вход которого соединен с управляющим входом устройства, первьй, второй и третий информационные входы коммутатора соединены соответственно с первым, вторь м адресными выходами блока памяти микрокоманд и первым выходом.блока обработки прерываний, второй выход которого соединен с единичным входом первого триггера, нулевой вход которого соединен с первым выходом блока синхронизации, второй и третий выходы которого соединены соответственно с первыми управляющими входами блоков адресации в режиме прерывания, первые информационные входы которых , соединены с выходом коммутатора, четвертый информационный вход которого соединен с входом адреса устройства, с вторым информационным входом блока адресации в режиме прерывания и с первым входом блока обработки прерываний, второй вход которого соединен с входом запроса на прерыван 1е устройства, выход второго триггера соединен с третьим входом блока обработки прерываний, четвер(Л тый вход которого соединен с вторым входом блока синхронизации, с единичным выходом первого триггера и с вторыми управляющими входами блоков адресации в режиме прерьшания, третьи управляющие входы которых соединены с нулевьм вьпходом первого триггера, выход генератора импульсов максимальной длительности соединен с единичным входом второго триггера, нулевой вход которого соединен с четвертым выходом блока синхронизации, отличающее ся тем, что, с целью повышения коэффициента использования оборудования путем автоматического перезапуска процесса при однократных сбоях и зацикливания программ, .устройство дополнительно, содержит регистр адреса перезапуска, элемент И, элемент ШШ, третий триггер, причем информационный вход регистра адреса перезапуска соединен с входом адреса устройства, а управляющий вход - с пятым выходом блока син

Формула изобретения SU 1 101 823 A1

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

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

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

г

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

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

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

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

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

вход которого соединен с шиной начальной установки, с третьим входом коммутатора и пятым входом блока адресаци в режиме обработки прерываний, первы входкоторого соединен с выходом коммутатора и первым входом блока адресации, четвертый вkoд которого подключен к -второму вьгходу первого триггера и к третьему входу блока адресации в режиме прерьшания, второ вход которого соединен с четвертым выходом блока управления и синхрониз ции, второй и первый выходы которого подключены соответственно к выходу генератора импульсов максимальной дл тельности и к второму входу блока обработки прерываний, первьй вход которого соединен с шиной внешних прерываний zj . В известном микропрограммном устройстве наибольшие трудности появляются при определении состояния зави сания программы. Если состояние зависания определяется оператором,врем решения задачи увеличивается, так как среднее время реакции оператора при определении зависания и повторный запуск с начала, составляет несколько десятков секунд (30 с). Использование генератора сигналов максимальной длительности (он формирует сигнал запроса прерывания по таймеру) усложняет обработку прерывания программными способами. Кроме того, прерывание процесса вычисления по таймеру не связано с состоянием процесса - находится ли он в состоя нии зависания или в состоянии пра вильного выполнения (поэтому в изоб ретении предлагается автоматическое определение состояния зависания без участия оператора и возможносности формирования прерывания работ устройства только в случае зависания) . Целью изобретения является повышение коэффициента использования об рудования путем автоматического перезапуска процесса при однократных сбоях и зацикливании программ. Поставленная цель достигается тем, что в сбоеустойчивое микропрограммное устройство управления, содержа1цее блок адресации, коммутатор, блок памяти микрокоманд, блок синхронизации, первый триггер, гене тор импульсов максимальной длительности, второй триггер, блок обработ ки прерывания, блок адресации в режиме прерывания, выход которого объединен с выходом блока адресации и соединен с адресным входом блока памяти микрокоманд, первый, второй и третий управляющие выходы которого соединены соответственно с первым входом блока синхронизации, выходом управления устройства и с первым управляющим входом коммутатора, второй управляющий вход которого соединен с управляющим входом устройства, первый, второй и третий информационные входы коммутатора соединены соответственно с первым, вторым адресными выходами блока памяти микрокоманд и первым выходом блока обработки прерываний, второй выход которого соединен с единичньм входом первого триггера, нулевой вход которого соединен с первым выходом блока синхронизации, второй и третий выходы которого соединены соответственно с первыми управляющими входами блока адресации и адресации в режиме прерывания, первые информационные входы которых соединены с выходом коммутатора, четвертый информационный вход которого соединен с входом адреса устройства, с вторым информационным входом блока адресации в режиме прервтания и с первым входом блока обработки прерываний, второй вход которого соединен с входом запроса на прерывание устройства, выход второго триггера соединен с третьим входом блока обработки прерываний, четвертый вход которого соединен с вторым входом блока синхрониза1ши, единичным выходом первого триггера и с вторыми управляющими входами блоков адресации в режиме прерывания, третьи управляющие входы которых соединены с нулевым выходом первого триггера, выход генератора импульсов максимальной длительности соединен с единичным входом второго триггера, нулевой вход которого соединен с четвертым выходом блока синхронизации, введе- , ны регистр адреса перезапуска, элемент И,, элемент ИЛИ, третий триггер, причем информационный вход регистра адреса перезапуска соединен с входом адреса устройства, а управляющий вход - с пятым выходом блока синхронизации, выход регистра адреса перезапуска - с вторым информационным входом блока адресации, шестой выход блока синхронизации - с входом третьего триггера, единичный вьиод которого соединен с первым входом элемента ИЛИ, второй вход которого соединен с вых;одом элемента И и с пятым входом блока обработки прерываний, шестой вход которого соедине с выходом элемента ИЛИ, выход генер тора импульсов максимальной длитель ности соединен с первым входом элемента И, второй вход которого соединен с выходом второго триггера. При этом блок обработки прерываний содержит первой, второй регистры, шифратор и схему сравнения, пер вьй и второй информационные входы которой соединены соответственно с выходами шифратора и первого регист ра, управляющий вход схемы сравнения соединен с шестым входом блока, а выход - с вторым выходом блока, управляющие входы первого и второго регистров - с четвертым входом блок информационный вход первого регистра - с первым входом блока, второй, третий и пятый входы блока объедине ны и подключены к информационному входу второго регистра, выход которого соединен с входом шифратора, выход которого подключен к первому входу блока. Таким образом, введение регистра адреса перезапуска, схемы И, схемы ИЛИ, триггера обеспечивает выявление зависания программы, автомати ческий ее перезапуск и формирование сигнала прерывания только при зави.сании программы. На фиг. 1 изображена блок-схема предлагаемого устройства} на фиг.2. блок-схема коммутатора; на фиг.З блок-схема обработки прерываний; на фиг. 4 - блок-схема блока синхрониз ции; на фиг. 5 - блок-схема блока адресации; на фиг. 6 - временные диаграммы основного цикла работы устройства; на фиг. 7 - временные диаграммы работы устройства в режиме обработки прерывания; на фиг. 8 временные диаграммы работы устройств при зависании программы. Предлагаемое микропрограммное устройство содержит (фиг. 1) блок 1 адресации, коммутатор 2, блок 3 памяти микрокоманд, блок 4 синхронизации, триггер 5, генератор 6 импульсов максимальной длительности, триггер 7, блок 8 обработки пре4)ываний, блок 9 адресации в режиме прерывания, управляющий вход 10 устройства вход 11 адреса устройства, вход 12 запроса на прерывание устройства, выход 13 управления устройства, регистр 14 адреса перезапуска, элемент И 15,элемент ИЛИ 16, триггер 17. Входящий в микропграммное устройство управления коммутатор (фиг.2) содержит коммутатор 18, группу 19 элементов И, группу 20 элементов ИЛИ, группу 21 элементов И, элемент НЕ 22. Входящий в микрограммное устройство управления блок обработки прерываний (фиг. 3) содержит регистр 23, шифратор 24, регистр 25, схему 26 сравнения. Входящий в микропрограммное устройство управления блок синхронизации содержит генератор 27, формирователь 28, элемент НЕ 29, дешифратор 30, элементы 2И 31-34, элементы ЗИ 35 и 36, элементы 2РШИ 37 и 38. Входящий в микропрограммное устройство управлений блок 1 адресации (фиг. 5) содержит группу 39 элементов И, регистр 40, группу 41 элементов HJM, группу 42 элементов И, группу 43 элементов И. Регистр 14 адреса перезапуска предназначен для хранения начального адреса микропрограммы и может быть реализован на регистровых схемах К589ИР12. Элемент И 15 предназначен для формирования запроса на прерывание в случае однократного сбоя и зацикливания и может быть реализован на схеме К155ЛИ1. Элемент ИЛИ 16 предназначен для формирования сигнала разрешения обработки прерывания и может быть реализован на схеме К155ЛЛ1. Третий триггер 17 предназначен для обеспечения запрещения обработки прерываний и может быть реализован на схеме К155ТМ2. Микропрограммное устройство работает следующим образом. При включении устройства на вход блока 3 памяти микрокоманд поступает определенный адрес (обычно нулевой), с которого начинается микропрограмма, назначение которой - загрузка началього адреса с внешней шины в качетве начального адреса микропрограмы. Адрес с выхода блока 1 адресаии поступает на адресный вход блока , с которого считывается первая икрокоманда. Один из возможных форматов микрокоманды для реализации предлагаемого технического решения может выглядеть так: -поле адреса следующей микрокоман,ды(может включить прямой и альтерративный адрес); поле управления выбором подключения входа коммутатора 2;. поле управления дешифратора; поле для управления отдельными элементами процессора. Коммутатор 2 осуществляет выбор адреса следующей микрокоманды. В обычном режиме работы (не в режиме прерьшания) к выходу коммутатора под ключен блок 1 адресации, а выход этого блока подключен к входу блока памяти микрокоманд, вход блока 9 в этом режиме - К входу начальной установки (по ней в этот блок загружается начальный адрес микропрограммы обработки прерываний). Задающая последовательность синхр сигналов (диагр.а , фиг. 6) с выхода генератора 27 (фиг. 4) поступает на вход формирователя 28 (фиг. 4). Тактовые импульсы с выхода формирователя участвуют в формировании упра ляюца1х сигналов для блоков 1 и 9 адресации, с выхода блока 1 первый адрес (диагр. 6, фиг. 6) поступает на блок 3 хранения микрокоманд, с выхода которого новая микрокоманда (диагр. 2 , фиг. 6) поступает на вход блока 4 синхронизации, обеспечивая управление устройством в новом такте Во время выполнения любой микропрограммы генератор 6 сигналов максимальной длительности формирует на своем выходе периодическую последовательность импульсов прямоугольной формы (диагр.а , фиг. 7). По спадающему фронту этого импуль са второй триггер переводится в единичное состояние (диагр.S , фиг. 7) что соответствует поступлению запроса на прерывание от таймера на вход блока 8 обработки прерьшаний. Для пояснения алгоритма функционирования устройства в режиме прерывания приве дены диаграммы на фиг. 7. Обработка прерываний разрешается, когда на выходе третьего триггера 17 имеется ед ничный разрешающий сигнал, который через элемент ИЛИ 16 подается на вход блока 8. Если выполняемая микро программа разрешает обработку прерываний, то при поступлении, например 238 запроса на обработку прерьшания от таймера происходит перевод устройства в режим прерывания, так как на выходе блока 8 вырабатывается управляющий сигнал, переводящий первый триггер 5 в единичное состояние,что соответствует режиму прерывания (диагр. 1 , фиг. 7). Формируемый при этом на первом выходе первого триггера единичный сигнал отключает выход блока 1 адресации и подключает выход блока 9 адресации к адресному входу блока хранения микрокоманд, к первому входу 1 блока 9 подключается выход коммутатора, а в блоке 1 адресации остается адрес, с которого нужно будет возобновить прерванную программу. Этот же сигнал с первого выхода первого триггера подается на вход блока 8 обработки прэрьшаний, запрещает изменение статуса в регистре 25 и запрещает изменение в регистре 23, что обеспечивает выдачу на первом выходе 1 двоичного кода прерывания. В регистр 40 блока 9 перед началом выполнения программы был загружен адрес начала программы обработки прерываний, который подается на адресный вход блока 3. В результате выполнения считанной по этому адресу микрокоманды к выходу коммутатора 2 Подключается второй вход, т.е. двоичный код прерывания, выработанньй блоком обработки прерываний, через коммутатор поступает в блок 9 адресации обработки прерываний, и начинает выполняться программа обработки конкретного прерывания (в рассматриваемом примере программа обработки прерывания по таймеру). В конце каждой программы обработки прерываний в регистр блока адресации загружается адрес начала обработки рерываний для обеспечения вьтолнения последующих программ обработки прерьгааний. После окончания обработки очередного прерывания первый триггер 5 по управляющему сигналу с выхода блока 4 сбрасьшается в ноль. На фиг. 7 приведены диаграммы, поясняющие работу устройства в режие обработки прерывания (диаграмма а - выход генератора импульсов максимальной длительности, 5 - выход второго триггера-, Ь - выход схемы 26, 2 - выход первого триггера 5, ij. - первый выход блока 4, в - третий выход блока 4, « - выход третьего триггера 17, выход элемента ИЛИ 16, U - выход 6 блока 4). В начале каждой микропрограммы, требующей запрещения обработки прер ваний, третий триггер 17 управляющи сигналом переводится в и.левое состояние, вследствие чего, запрещаетс срабатывание блока 8, и при правиль ной работе устройства прерывание возникнуть не может. Если есть запрос на обработку прерывания по таймер.у, то в конце его обработки с первого выхода блока 4 на вход втор го триггера подается сигнал сброса триггера 7 в нулевое состояние, при этом сбрасывается сигнал запроса на прерывание по таймеру. В случае зависания микропрограммы из-з однократньк сбоев третий триггер 17 не переводится в единичное состояни в течение длительного промежутка вр мени, большего, чем период сигналов максимальной длительности, вырабаты ваемых генератором 6. Запрос на пре рывание по таймеру не обрабатьшаетс когда на выходе второго триггера 7 имеется единичньй сигнал, так как через элемент ИЛИ 16 на вход 6 блока 8 не подается разрешающий В этом случае при совпадении единич ного полупериода сигнала (импульс кончился, фронт возрастающий) с выхода генератора 6 и единичного сигнала с выхода второго триггера 7 на выходе элемента И 15 формирует ся единичный сигнал, являющийся запросом на прерывание по зависанию, который подается на вход блока 8. Диаграммы на фиг. 8 поясняют работу устройства в случае зависания программы из-за однократных сбоев (диаграмма а - выход генератора импульсов максимальной длительности, 5 - выход второго триггера 7,1)- в ход схемы 26 сравнения, Z - выход триггера 5, - выход третьего триг гера 17, е - выход элемента И 15, 5k- выход элемента ИЛИ 16, J - первый выход блока 4, и - выход блока 4, Единичный сигнал с выхода элемен та И 1 5 через элемент ИЛИ 16 поступ ет в качестве разрешающего сигнала на вход блока 8, благодаря чему об работка прерывания по зависанию 2310 становится возможной. При обработке прерьшания по зависанию выход регистра адреса перезапуска подключается к входу блока 1 адресации, и адрес перезапуска записывается в регистр 40 блока 1, после окончания выполнения программы обработки прерывания по зависанию программа начинает выполняться с адреса, которьй был записан в регистр адреса перезапуска-«тем самым обеспечивается полное повторное выполнение очередного участка программы, что позволит обеспечить Правильное решение задачи в целом. Предлагаемое техническое решение можно использовать при создании надежных и высокопроизводительных процессоров с микропрограммным управлением. Оно позволяет автоматически определить сбой процессора при зависании программы и автоматически перезапускать процесс, ч:ем устраняется простой устройства, обусловленный либо временем определения состояния решения задачи оператором, либо увеличением времени использования аппаратуры устройства на обработку прерывания по таймеру, что обеспечивает повьш1ение коэффициента использования процессора, в котором,используется предлагаемое устройство. Так, среднее время реакции оператора при определении зависания системы и повторньй запуск задачи с начала для микропроцессорной системы Intellec фирмы ИНТЕЛ составляет несколько десятковсекунд.Если принять период сигналов максимальной длительности, равный 10 мс, то очевидно, что временные потери изза однократных сбоев при использовании предлагаемого технического решения уменьшаются на три порядка. За это время простоя устройство может выполнить большой объем вычислений (при быстродействии процессора в 5 МИЛ.ПИОНОВ операций в секунду за это время может быть выполнена программа, требующая 150 млн. элементарных действий. Предлагаемое техническое решение было использовано при построении на микропроцессорном наборе БИС серии К 589 экспериментальных операционных процессоров рекурсивной вычислительной машины.

-

19

-

Г

23

П

1.

J

Фиг. 2

8

У424

26

25

I

Т

..

г

п

Y

г

п

у t

4

п

л

Адрес 1

1 HUKftBHOHo ffa2 пи грокопан а3пинрокопа а

л

х

Адрес 2

Адрес 3

Фиг.В

J J

И

ib if

.

.Hf 4f

f /

iF

ФпЛ

Документы, цитированные в отчете о поиске Патент 1984 года SU1101823A1

Печь для непрерывного получения сернистого натрия 1921
  • Настюков А.М.
  • Настюков К.И.
SU1A1
Процессор с микропрограммным управлением 1975
  • Ростовцев Игорь Кириллович
  • Кондратьев Анатолий Павлович
  • Ленкова Валентина Мироновна
  • Ковалев Олег Семенович
  • Переверзева Бэлла Шепселевна
  • Елисеев Александр Александрович
  • Беляева Марина Александровна
  • Шандлер Инесса Григорьевна
  • Лиокумович Ирина Исааковна
  • Раецкий Александр Мустафович
  • Ковшик Тамара Ивановна
  • Гриневская Лариса Михайловна
SU525956A1
Приспособление для точного наложения листов бумаги при снятии оттисков 1922
  • Асафов Н.И.
SU6A1
Авторское свидетельство СССР № 551648, кл
Приспособление для точного наложения листов бумаги при снятии оттисков 1922
  • Асафов Н.И.
SU6A1

SU 1 101 823 A1

Авторы

Горбачев Сергей Владимирович

Диденко Владимир Дмитриевич

Бурова Елена Алексеевна

Торгашев Валерий Антонович

Даты

1984-07-07Публикация

1982-10-01Подача