Микропрограммное устройство управления с контролем и восстановлением
Похожие патенты | МПК / Метки | Текст | Заявка | Код ссылки
Текст
(57) Изобретлительной тепользовано дп е относится кке и может бытпостроения ус ычис исойствГОСУДАРСТВЕННЫИ КОМИТЕТ СССРПО ДЕЛАМ ИЗОБРЕТЕНИЙ И ОТКРЫТИЙ 3834001/24-2430.12.8407,07.86. Бюл. У 25М.П. Ткачев, Г.Н. Тимонькин,Харченко, К.И. Семенов,Ткачев и С.Н. Ткаченко681.3088.8)Авторское свидетельство СССР0337, кл. С 06 Р 9/22, 1983.зЬ 1. ВецзсЬег, Ипд Б. Тоу.Бсйешез Еог 1 пгедгоес 1 Мсгоашше 1 Сопгго 1 апй Паша ТгапзгсМГгуЕЕЕ Тгопз. СошриГег,19, 1970, В 12, р. 1153-159. РОГРАММНОЕ УСТРОЙСТВО УПКОНТРОЛЕМ И ВОССТАНОВЛЕ. -управления .ЭВМ с повышенной устойчи-, востью к отказам и сбоям, Целью изобретения является повышение устойчивости устройства к отказам и сбоям. Устройство осуществляет восстановление работоспособности при искажениях разноименных сегментов в микрокоманде; записанной по прямому и обратному кодам адреса. Устройство содержит регистр адреса, блок памяти микрокоманд, блок контроля, регистр микрокоманд, мультиплексор адреса, блок элементов И, триггер режима, управляемый генератор импульсов, .триггер ошибки, триггер управления адресом, счетчик ошибок, два коммутатора, три элемента ИЛИ, три элемента И, о элементов ЗАПРЕТ, о триггеров состояния С". сегментов, где о, - количество сегментов в формате микрокоманды. 4 ил, 1242947Изобретение относится к вычислительной технике и может быть использовано для построения устройств управления ЭВМ с повышенной устойчивостью к отказам и сбоям.Целью изобретения является повышение устойчивости устройства к отказам и сбоям.На фиг. 1 приведена функциональная схема предлагаемого устройства; на фиг. 2 - пример функциональной схемы блока контроля; на фиг. 3 и 4 - временные диаграммы, поясняющие функционирования устройства в различных режимах работы,Устройство (фиг. 1) содержит первый коммутатор 1, регистр 2 адреса, второй коммутатор 3, блок 4 памяти микрокоманд, блок 5 контроля, регистр 6 микрокоманд, мультиплексор 7 адреса, блок 8 элементов И, груп-, пу 9 входов кода операции устройства, группу 10 информационных входов регистра 2 адреса, группу 11 инверсных и группу 12 прямых выходов регистра 2 адреса, группу 13 адресных входов блока 4 памяти микрокоманд, группы 14,1-14.о - соответственно первая - о-я группы выходов блока 4 памяти микрокоманд, выходы 15,1 - 15,с 1 ошибки соответственно первого о-го сегментов блока 5 контроля, вход 16 пуска устройства, шину 17 управления кодом адреса, входы 18,1 - 1,8.о синхронизации записи соответственно первого - о-го сегментов регистра 6 микрокоманд, шину 19 синхронизации, выход 20 сигнала отказа устройства, группу 21 адресных выходов регистра 6 микрокоманд, группу 22 входов логических условий устройствагруппу 23 выходов разряда кода проверяемого логического условия регистра 6 микрокоманд, выход 24 метки "Конец работы" и выход 25 метки "Конец микропрограммы разрядов регистра 6 микрокоманд, выход 26 мультиплексора 7, группу 27 операционных выходов разряда регистра 6 микрокоманд, группу 28 выходов микроопераций устройства, первый элемент ИЛИ 29, второй элемент И 30, триггер 31 режима, управляемый генератор 32 импульсов первый элемент И 33, второй элемент ИЛИ 34, триггер 35 ошибки, триггер 36 управления адресом, счетчик 37 ошибок, третий элемент И 38, соответственно первый -20.для управления передачей на информа 50 55 5О15 50 35 40 9-й элементы 39.1-39,о ЗАПРЕТ, третийэлемент ИЛИ 40, соответственно первый - о-й триггеры 41.1-41.с 1 состояния сегментов, единичный выход 42триггера 31 режима, выходы 43, 44 и45 соответственно первой, второй итретьей фазы генератора 32, инверсный:выход 46 триггера 35 ошибки микрокоманды и шину 47 сигнала сброса.Символома ) на фиг. 1 обозначена разрядность адреса микрокоманды,символом (9 ) - количество сегментовв ее формате, символом (ш ) - разрядность операционной части микрокомандыБлок 5 контроля (Фиг. 2 содержитсоответственно первый - о-й сумматоры 48.1-48.а по модулю два,Первый коммутатор 1 предназначен ционный вход 10 регистра 2 адреса кода операции и кода адреса очередной микрокоманды реализуемой микропрограммы.Регистр 2 адреса предназначен для хранения адреса микрокоманды, ачитываемой из блока 4 памяти. Запись информации в регистр производится через информационный вход 10. Прием информации по этому входу синхронизируется инверсным динамическим синхровхо - дом 19.Второй коммутатор 3 предназначен для управления передачей в блок 4 памяти прямого или обратного кода адреса считываемой микрокоманды.Блок 4 памяти представляет собой запоминающее устройство статического типа и предназначен для хранечия микрокоманд, каждая из которых записана в нем дважды: по прямому и обратному кодам адреса. Код считываемой микро- команды подается на группу 14 информационных выходов блока. Блок " контроля предназначендля оонаружения искажений в каждом иэ о сегментов считываемой микрокоманды. Это может быть достигнуто путем избыточного кодирования каждого сегмента. при записи его в блок 4 памяти, например кодом с проверкой на четность. Схема блока 5 контроля для случая, когда проверяется четность каждого сегмента, представлена на фиге 2 аРегистр 6 микрокоманд предназначен для формирования микрокоманд путем замены искаженных сегментов резерв1242947 5 20 25 30 35 40 45 50 55 ными и хранения сформированных микро- команд до выдачи их на выход устройства, Запись, каждого )-го сегмента микрокоманды в регистр осуществляется через вход 14.) и синхронизируется отдельным соответствующим синхровходов 18.1. Для общей.установки регистра в нулевое состояние имеется асинхронный вход РМультиплексор 7 адреса служит для формирования младшего разряда кода адреса очередной микрокоманды путем .передачи на выход 26 значения сигнала с одного из информационных входов 22, заданного кодом логических условий на входе 23.Блок 8 элементов И предназначен для управления выдачей сигналов микроопераций из регистра 6 микрокоманд на выход 28 устройства.Элемент ИЛИ 29 предназначен для формирования сигналов на прекращение работы устройства в случае появления метки "Конец работы" или сигнала "Отказ",Элемент И 30 предназначен для формирования сигнала сброса триггеров 35, 41.1-41.с 1 и счетчика 37 в нулевое состояние в том случае, когда на регистре 6 микрокоманд записаны все ц сегментов реализуемой микрокоманды в неискаженном виде.Триггер 31 режима предназначен для управления работой генератора 32 импульсов.Управляемый генератор 32 импульсов предназначен для формирования трехфазной системы сдвинутых во времени импульсов, с помощью которых синхронизируется работа всего устройства. При поступлении разрешающего сигнала на запускающий вход 42 сначала формируется импульс на выходе 43, затем на выходе 44, затем на выходе 45, после чего появляется импульс на выходе 43 и т.д. Элемент И 33 предназначен для формирования в шине 19 сигнала на выдачу микроопераций на выход устройства и на запись очередного адреса в регистр 2.Элемент ИЛИ 34 предназначен для формирования сигнала о наличии искажений хотя бы в одном иэ сегментов реализуемой микрокоманды.Триггер 35 ошибки предназначен для фиксации факта наличия искажений в реализуемой микрокоманде. Прием информации в триггер по Р-входу синхронизируется инверсным динамическим (-входом. Вход Й триггера является , асинхронным,Триггер 36 управления адресом пред предназначен для управления передачей адреса из регистра 2 адреса на вход блока 4 памяти в прямом или обратном коде. 10 Счетчик 37 ошибок предназначен для подсчета количества ошибочных считываний одной и той же микрокоманды. Счетчик в общем случае имеет и разрядов. Его 1 -вход является асинхронным, а счетный вход - синхронным.Элемент И 38 предназначен для формирования сигнала отказа устройства на выходе 20 в том случае, когда количествоошибочных считываний мик-.нрокоманды достигнет 2 -1, где п количество разрядов счетчика 37.Элементы И 39,1-39.о 3. ЛРЕТ предназначен для управления записью соответственно первого - с 1-го неискаженных сегментов микрокоманды в соответствующее поле регистра 6 микродкоманд.Элемент ИЛИ 40 предназначен для формирования сигнала сброса триггеров 35, 41.1-41.с 1 и счетчика 37 в нулевое состояние в случаях, когда на регистре 6 микрокоманд записаны в неискаженном виде все о сегментов микрокоманды или когда сформирован сигнал "Отказ".Триггеры 41,1-41.о состояния сегментов предназначены для запоминания 4факта отсутствия ошибки в соответствующем сегменте микрокоманды.Устройство может работать в следующих режимах: нормальный режим работы и конец работы (фиг, 3), режим наличия искаженных сегментов в случае не более (2 -2)-кратного считывания микрокоманды иэ блока 4 памяти (фиг. 3) и режим наличия одного и того же искаженного сегмента при (2" -1)-кратном считывании микрокоманды иэ блока 4 памяти. В исходном состоянии все элементы памяти в устройстве установлены в нулевое состояние (цепи их установки. в нуль на фиг. 1 не показаны).В первом нормальном режиме работы по сигналу "Пуск" на входе 16 с установкой триггера 31 в единичное состояние генератор 32 импульсов начинает генерировать прямоугольныеВ случае отсутствия искажений вовсех сегментах с приходом импульсавторой фазы с выхода 44 генератора32 триггер 35 и счетчик 37 остаютсяв нулевом состоянии, и с приходомимпульса третьей фазы с выхода 45генератора на все синхровходы 18.118.о регистра 6 микрокоманд подаютсяимпульсы, вследствие чего все сег 50 импульсы, поочередно подавая их на выходы 43-45, Импульспервой фазы с выхода 43 генератора, проходя через открытый элемент И 33, отпирает. блок 8 элементов И, подавая содержимое операционного поля регистра 6 микрокоманд на выход 28 устройства. В такте запуска устройства сигналы на этом выходе остаются нулевыми, 10 так как регистр 6 в этот момент еще находится в исходном нулевом состоянии.По спаду импульса первой фазы в регистр 2 через первый коммутатор 15заносится адрес реализуемой микро- команды. В случае, если в разряде 5 метки "Конец микропрограммы" записан "О" 1 что возможно либо в такте запуска устройства, когда регистр 6 20 предварительно обнулен, либо в начальном такте реализации любой мик- ропрограммы ), на регистр 2. с входа 9 устройства заносится код операции, задающей адрес начальной микрокоман ды в микропрограмме, В случае, когда разряд 25 метки "Конец микропрограммы" равен единице, что возможно лишь в процессе реализации любой микрокоманды в микропрограмме, кроме 30 конечной микрокоманды, адрес в регистр 2 заносится с входа 21Через второй коммутатор 3 этот адрес в прямом или обратном коде (в зависимости от состояния триггера 36) поступает на вход блока 4 памяти, в результате чего на выходе 14 блока 4 памяти появляется код считываемой микрокоманды, разбитой на 9 сегментов. 40Блок 5 контроля проверяет сегменты на отсутствие искажений. При отсутствии искажений в сегменте на соответствующем выходе блока 5 сигнал остается равным нулю, а при наличии 45 искажений этот сигнал принимает единичное значение. Дальнейший процесс функционирования устройства зависит от результаТов контроля микрокоманды. менты записываются в регистр 6 микро- команд.В соответствии с кодом проверяемого логического условия, поступающим на вход 23, а также значения этого логического условия на входе 22, мультиплексор 7 адреса на выходе 26 формирует младший разряд адреса слецующей микрокоманды. Если проверка условия в поле логических условий микрокоманды не задана, на вьгход 26 без изменений передается младший разряд кода, заданного в поле 21 адреса микрокомандыПо очередному импульсу первой фазы операционная часть микрокоманды подается на выход 28 через блок 8 элементов И, а адрес очередной микро- команды заносится в регистр 2 адреса.Если в считанной ранее микрокоманде нет меТки "Конец микропрограммы" то в регистр 2 адреса заносится адрес, сформированный на входе 21 первого коммутатора 1, Если эта метка есть, то на регистр заносится адрес с входа 9. Далее в нормальном режиме устройство функционирует согласно описанному до тех пор, пока не произойдет его остановки по метке "Конец рабо- ты. При этом единичный сигнал этой метки по шине 24 через элемент ИЛИ 29 устанавливает в нулевое состояние триггер 31, который запрещает работу генератора 32. Устройство прекращает работу до прихода следующего сигнала "Пуск".При выявлении искаженного сегмента в реализуемой микрокоманде, счи-, тываемой из блока 4 памяти, устройство переходит во второй режим работы. При этом на выходах 15.1-15,о блока 5 (тех, которые соответствуют искаженным сегментам , формируются единичные сигналы, вследствие чего сигнал на выходе элемента ИЛИ 34 также становится единичным. Поэтому с приходом импульса второй фазы с выхода 44 генератора 32 триггер 35 ошибки изменяет свое состояние с нулевого на единичное, а содержимое счетчика 37 ошибок увеличивается на единицу.,На выходе 46 триггера 35 ошибок появляется нуль, который, запирая элемент И 33, предотвращаетФвыдачу операционной части на выход5 10 5 20 25 40 45 50 55 7 1228 устройства и запись нового адреса в регистр 2. С приходом. импульсатретЬей фазы с выхода 45 генератора32 импульсов единичные сигналы формируются на выходах лишь тех элементов 39.1-39. ЗАПРЕТ, которые соответствуют сегментам, не имеющим искажений.По этим сигналам неискаженные сегменты записываются в регистр 6 мик рокоманд, а соответствующие триггеры41.1-41.с 1 устанавливаются в единичное состояние, зафиксировав отсутствие искажений в этих сегментах. Нотак как существуют и искаженные сегменты, то не все триггеры 41.1-41.с 1переходят в единичное состояние,а следовательно, сигнал на выходе47 элемента И 30 остается нулевым,что не приводит ни к каким изменениям в работе устройства. Далее сприходом импульса первой фазы с выхода 43 генератора 32 триггер 36 управления адресом изменяет свое состояние на противоположное, вследствие чего код адреса на входе блока4 памяти становится обратным поступавшему ранее. Поэтому после этого,импульса на выходе блока 4 памятипоявляется код этой же микрокоманды,но считанной уже по обратному адресу.Блок 5 контроля сегментов проверяет сегменты на отсутствие искажений, Если и при этом обнаружены искажения в тех же или других сегментах, то на соответствующих выходах15.1-15.о блока 5 контроля появляют-,ся единицы, а на выходе элементаИЛИ 34 снова сформирован единичныйсигнал. Тогда по импульсу второйфазы с выхода 44 генератора 32 триггер 35 ошибки остается в прежнемединичном состоянии, а содержимоесчетчика 37 ошибок увеличиваетсяна единицу, С приходом импульсатретьей фазы с выхода 45 генератора32 неискаженные сегменты записываются в регистр 6 микрокоманд аналогично описанному, а соответствующиетриггеры 41.1-41.о либо переходятв единичное состояние из нулевого(если этого не произошло при предыдущем считывании микрокоманды), либоподтверждают единичное состояние(если они уже перешли в него припредыдущем считывании),Если при этом все триггеры 41.141.о оказываются в единичном состоя 42947 8 нии, что свидетельствует о том,(что на регистре 6 уже записана полная неискаженная микрокоманда), то на выходе 47 элемента И 30 появляется единичный сигнал, которым триггер 35, счетчик 37 и все триггеры 41.1-41.ц устанавливаются в нулевое состояние, вследствие чегоустройство возвращается внормальньп первыйрежим работы.Если не все триггеры 4.1-4.о по импульсу третьей фазы установятся в единичное состояние, то по импульсу первой фазы триггер 36 вновь устанавливается в противоположное состояние, вследствие чего вновь происходит изменение адреса на обратный и считывание микрокоманды по нему. При этом считывания микрокоманды по прямому и инверсному адресам продолжаются до тех пор, пока либо устройство перейдет в нормальный режим, либо все разряды счетчикастанут равныединице, т,е.произойдет(2-1) -кратноесчитывание однойи тойже микрокоманды.В этом случае устройство переходит в третий режим работы (фиг, 4) . При этом на выходе 20 элемента И 38 появляется единичный сигнал Отказкоторый через элемент ИЛИ 40 посту.пает на В-входы триггера 35 ошибок,счетчика 37 ошибок, регистра 5 микрокоманд и триггеров 41.1-41.о, которые по этому сигналу обнуляются,тим же сигналом через элемент ИЛИ 29триггер 31 режима работы устанавливается в нулевое состояние, запрещаяработу генератора 32 импульсов до момента поступления сигнала "Пуск".Таким образом, в устройстве осуществляется восстановление работоспособности при искажениях разноименных сегментов в микрокоманде, записанной по прямому .и обратному кодам адреса,Формула изобретения Микропрограммное устройство управления с контролем и восстановлением, содержащее блок памяти мккрокоманд, регистр адреса, регистр мик" рокоманд, мультиплексор адреса, пер-. вый коммутатор, блок контроля, триггер режима и управляемый генератор импульсов, причем первая группа информационных входов первого коммутатора является группой входов кода операции устройства, выходы пер 2294710 15 20 25 40 45 50 55 ваго коммутатора соединены с группойинформационных входов регистра адреса, первая - с 1-я группы выходов блока памяти микрокоманд, где количество сегментов в формате микрокоманды, соединены с соответствующими группами информационных входов регистра микрокоманд выход разряда метки "Конец микрокоманды программы" регистра микрокоманд соединен с инверсным и прямым управляющими входами первого коммутатора, группа выходов разряда кода проверяемого логического условия регистра микрокоманд соединена с первой группой информационных входов муль; типлексора адреса, первый вход второй группы информационных входов которого соединен с младшим разрядом группы адресных выходов регистра микрокоманд, а остальные входы второй группы информационных входов мультиплексора адреса соединены с группой входов логических условий устройства, выход мультиплексора адреса соединен смладшим разрядом второй группы информационных входов первого коммутатора, старшие разряды второй группы информационных входов которого соединены со старшими разрядами группы адресных . выходов регистра микрокоманд, Я-вход триггера режима является входом пуска устройства, прямой и инверсный выходы триггера режима соединены соответственно с входами запуска и останова управляемого генератора импульсов, о т л и ч а ю щ е е с я тем, что, с целью повышения устойчивости устройства к отказам и сбоям, оно содержит второй коммутатор, блок элементов И, триггер ошибки, триггер управления адресом, о-триггеров состояния сегментов, счетчик ошибок, группу элементов ЗАПРЕТ, три элемента ИЛИ и три элемента И, причем группа выходов разряда операций регистра микрокоманд соединена с гэуппой информационных входов блока элементов И, группа выходов которого является группой выходов микро- операций устройства, выход разряда метки "Конец работы" регистра микро- команд соединен с первым входом первого элемента ИЛИ, выход которога соединен с В-входом триггера режима, выход первой фазы управляемого генератора импульсов соединен с инверсным. синхровходом триггера управления,адресом и первым входом перваго элемента И, выход которогосоединен с инверсным синхровходомрегистра адреса и с управляющим входом блока элементов И, выход триггера управления адресом соединен сГ инверсным и прямым управляющими входами второго коммутатора, первая ивторая группы информационных входоввторого коммутатора соединены соответственно с группой прямых и группойинверсных выходов регистра адреса,группа выходов.второго коммутаторасоединена с группой адресных входовблока памяти микрокаманд, выход второй фазы управляемого генератора импульсов соединен с инверснымисинхровходами триггера ошибкии счетчика ошибок, прямой выходтриггера ошибки соединен с Т-входом триггера управления адре ом, инверсный выход триггера ошибки соединен с вторым входом первого:элемента И, первая с 1-я группы выходав блока памяти микрокоманд сбединены с соответствующими группами входов блока контроля, с 1-выходовошибки блока контроля соединены свходами второго элемента ИЛИ и инверсными входами соответственнопервого с 1-.го элементов ЗАПРЕТ группы, прямые входы первого а-го элементов ЗАПРЕТ группы подключены квыходу третьей фазы управляемогогенератора импульсов, выходы первого с 1-го элементов ЗАПРЕТ группы соединены с Б-входами соответствующих триггеров состояния сегментов и инверсными входами синхронизации соответствующих разрядов регистра микрокоманд, выход второго элемента ИЛИ соединен со счетным входом счетчика ошибок и с Р-входом триггера ошибки, вьгходы триггеров состояния сегментов соединены с входами второго элемента И, выход которого соединен спервым входом третьего элемента ИЛИ,вьглод которого соединен с Б вхоцамитриггера ошибки, триггеров состояниясегментов и входом сброса счетчикаошибок, выходы разрядов счетчикаошибок соепинены с входами третьегоэлемента И, выход которого соединенс вторыми входами первого и третьегоэлементов ИЛИ, входом установки в1 вО регистра микрокоманд и с выходомотказа устройства.1242947 Х режим, кол.5 о лаппо ревом,Юнец У л 7 роФою" Составитель Д. ВанюхиНиколайчук Техред О.Гортвай орректор А. Тяск Редак Подписное ектная, 4 Производственно-полиграфическое предприятие, г. Ужгород, ул каз 3706/ВН Государственноделам изобрете Москва, Ж,). - Пр 671о комитета СССРий и открытийРаушская наб., д. 4/
СмотретьЗаявка
3834001, 30.12.1984
ХАРЬКОВСКОЕ ВЫСШЕЕ ВОЕННОЕ КОМАНДНО-ИНЖЕНЕРНОЕ УЧИЛИЩЕ РАКЕТНЫХ ВОЙСК ИМ. МАРШАЛА СОВЕТСКОГО СОЮЗА КРЫЛОВА Н. И
ТКАЧЕВ МИХАИЛ ПАВЛОВИЧ, ТИМОНЬКИН ГРИГОРИЙ НИКОЛАЕВИЧ, ХАРЧЕНКО ВЯЧЕСЛАВ СЕРГЕЕВИЧ, СЕМЕНОВ КОНСТАНТИН ИВАНОВИЧ, ТКАЧЕВ АЛЕКСАНДР ПАВЛОВИЧ, ТКАЧЕНКО СЕРГЕЙ НИКОЛАЕВИЧ
МПК / Метки
МПК: G06F 11/36
Метки: восстановлением, контролем, микропрограммное
Опубликовано: 07.07.1986
Код ссылки
<a href="https://patents.su/8-1242947-mikroprogrammnoe-ustrojjstvo-upravleniya-s-kontrolem-i-vosstanovleniem.html" target="_blank" rel="follow" title="База патентов СССР">Микропрограммное устройство управления с контролем и восстановлением</a>
Предыдущий патент: Микропрограммное устройство для тестового диагностирования и управления
Следующий патент: Устройство управления прерываниями
Случайный патент: Стабилизатор напряжения и тока