соединены с вторыми информационными входами второго коммутатора, вторая группа входов формирователя микрокоманд подмены соединена с группой входов логических условий устройства, второй выход формирователя микрокоманд подмены является выходом отказа устройства, входы кода операции соединены с вторыми информационными входами первого коммутатора.
2. Устройство по п. 1, от л и мающееся тем, что формирователь микрокоманд подмены содержит.
регистр, де1чифратор, первый и второй элементы ИЛИ, причем первая группа входов формирователи соединена с первой группой входов дешифратора и через регистр - с второй группой входов дешифратора, первая и вторая группа выходов которого соединены соответстэено с входами первого и второго элементов ИЛИ, выходы которых являптся соответственно первой и второй группой выходов формирователя, вторая группа входов формирователя соединеla с третьей группой входов дешифратора .
название | год | авторы | номер документа |
---|---|---|---|
Перестраиваемый микропрограммный процессор | 1981 |
|
SU983713A1 |
Микропрограммный процессор | 1981 |
|
SU980095A1 |
Микропрограммный процессор | 1982 |
|
SU1070557A1 |
Микропрограммный процессор | 1986 |
|
SU1365091A1 |
Параллельное микропрограммное устройство управления | 1983 |
|
SU1109750A1 |
Процессор с микропрограммным управлением | 1982 |
|
SU1124298A1 |
Микропрограммное устройство управления модуля вычислительной системы | 1982 |
|
SU1034037A1 |
Микропрограммное устройство управления | 1983 |
|
SU1133595A1 |
Многотактное микропрограммное устройство управления | 1982 |
|
SU1094033A1 |
Микропрограммное устройство управления | 1983 |
|
SU1100625A1 |
1. МИКРОПРОГРАММНОЕ УСТРОЙСТВО УПРАВЛЕНИЯ, содержа1- ее блок памяти микрокоманд, блок формирования адреса, регистр микрокоманд, регистр адреса, буферный регистр, триггер, блок элементов И, примем выходы блока памяти микрокоманд соединены с входами регистра микрокоманд, первая группа выходов которого соединена с первой группой входов блока формировани я адреса, входы сигналов логических условий устройства соединены с второй группой входов блока формирования адреса, отличающееся тем, что, с Целью повышения достоверности, в него введены первый и второй элементы И, первый и второй, элемейты задержки, однрвибратор, первый, второй и третий коммутаторы, блок ассоциативной памяти и формирователь микрокоманд подмены, причем первый выхо4 формирователя микрокоманд подмены соединен с первым входом первого элемента И и инверсным входом второго элемента И, выход которого срединен с управляющим входом блока элементов И, выходы которого являются выходами микроопераций устройства, . вход тактовых импульсов устройства соединен с управляющим входом первого коммутатора, с первым управляюи им входом второго коммутатора.через первый элемент задержки с тактовым входом блока памяти микрокоманд и через второй элемент задержки - с вторым входом первого и входом второго элементов И, выход первого элемента И соединен с управляюв1им входом блока ассоциативной памяти, с единичным входом триггера и через одновибратср с вторым управляющим входом второго коммутатора, выходы которого соединены с входами буферного регистра, выходы буферного регистра соединены с первыми ик« юрмационными входами третьего коммутатора, выходы которого соединены с адресными входами блока памяти микрокоманд, выход триггера соединен с управляющим входом О третьего коммутатора, выходы блока со о формирования адреса - с первыми информационными входами второго коммуЭО татора, выходы первого коммутатора О с входами регистра адреса, выходы которого сЬединены с вторыми информационными входами третьего коммутатора, первый выход регистра микрокоманд соединен с нулевым входом триггера, вторая группа выходов регистра микрокоманд соединена с первой группой входов формирователя микрокоманд подмены, с входами элементов И блока и с входами признаков блока ассоциативной памяти, выходы которого
Изобретение относится к цифровой вычислительной технике и может быть использовано при построении управляющих и вычислительных систем с микро программным -управлением и повышенной отказоустойчивостью. Известен микропрограммный процес-сор, содержа1чий блок памяти микрокоманд, регистры адреса микрокоманд и логических условий, триггер, элементы И и ИЛИ 11 3Недостатком этого процессора явля ется низкая надежность, вызванная от сутствием средств -восстановления и реконфигура1(ии структуры при возникновении отказов. Известен также микропрограммный п|Х)цессор с восстановлением при сбоях, содержащий регистр адреса, , регистр микрокоманд, буферные регистры, элементы И, ИЛИ и блок памяти микрокоманд С 3 Недостатком указанного устройства является большая сложность при эксплуатации, которая обусловлена отсут ствием аппаратных средств реконфигурации структуры процессора после локализации отказов. Известно микропрограммное устройство с исправлением ошибок, содержащее регистр адреса, блок памяти мик рокоманд, регистр микрокоманд, блок ассоциативной памяти и логические эл менты И и ИЛИ 31. Недостатком этого устройства является низкая надежность, вызванная тем, что восстановление работы обеспечивается лишь при возникновении с;боев (кратковременных отказов). При этом восстановление осуществляется путем повтора участка микропрограммы до устранения сбоя. Наиболее близким по технической сущности и достигаемому положительному эффекту к изобретению является микропрограммное устройство управления содержащее блок памяти микрокоманд, блок формирования адреса, регистр микрокоманд, регистр адреса, буферный регистр, триггер, блок элементов И, причем выходы блока памяти микрокоманд соединены с входами регистра микрокоманд, первая группа выходов которого соединена с первой группой входов блока формирования адреса, входы логических условий устройства соединены с второй группой входов блока формирования адреса «3 Недостатком известного устройства является низкая надежность, так как при возникновении в процессоре отказа его работа наруцгается и после выполнения диагностических микропрограмм и определения отказавшего субблока процессора требуется останов процессора для его замены. Осуществление указанной процедуры требует дополнительных временных затрат и снижает коэффициент техниеской готовности системы в целом. Если же по условиям эксплуатации замена отказавшего субблока невозможа, то это приводит к потере работо310способности процессора. Если процессор является частью резервированной системы, указанная ситуация возникает после отказа нескольких процессоров, несмотря на то, что набор микро программ и регулярное построение опе рационного блока npotteccopa позволяю функционировать а условиях физических отказов. Однака эта возможность не реализуется вследствие отсутствия средств ПОЗВОПЯЮ1ЦИХ гибко изменять конфигурацию процессора в зависимости от характера отказов. 1,|еяь изо|бретения - повышение надежности функционирования микропрограммного устройства управления. Поставленная цель достигается тем что в микропрограммное устройство управления, содержавшее блок памяти микрокоманд, блок формирования адреса, регистр микрокоманд, регистр адреса, буферный регистр, триггер, бло элементов И, причем выходы блока памяти микрокоманд соединены с входами регистра микрокоманд, первая группа выходов которого соединена с первой группой входов блока формирования ад реса, входы сигналов логических условий устройства соединены с второй группой входов блока формирования ад реса , введены первый и в торой элементы И, первый и второй элементы за держки, одновйбратор, первый, второй и третий коммутаторы, блок ассоциативной г амяти и формирователь микрокоманд подмены. Причем первый выход формирователя микрокоманд подмены со единен с первым входом первого элемента И и инверсным входой второго элемента И, выход которого соединен с управляю11(им входом блока элементов выходы которого являются выходами .микроопераций устройства, вход тактовых импульсов устройства соединен с управляЮ1цим входом первого коммута тора« с первым управляющим входом второго коммутатора, через первый элемент задержки с тактовым входом блока памяти микрокоманд и через вто рой элемент задержки с вторым входом первого и входом второго элементов И выход первого элемента И соединен с управляющим входом блока ассоциативной памяти, с единичным входом триггера и через одновйбратор с вторым управлякх1)им входом второго коммутатора, выходы которого соединены с входами буферного регистра, выходы буферного регистра соединены с пер-. 1 выми информационными входами третьего коммутатораt выходы которого соединены с адресными входами блока памяти микрокоманд, выход триггера соединен с управляюсцим входом т ре тьего коммутатора, цыходы блока формирования адреса соединены с первыми информационными входами второго коммутатора, выходы первого коммутатора соединены с входами регистра адреса, выходы которого соединены со вторыми информационными входами третьего коммутатора, первый выход регистра микрокоманд соединен с нулевым входом . триггера, вторая группа выходов регистра микрокоманд соединена с первой группой входов формирователя микрокоманд подмены, с вторыми входами элементов И блока и с входами призна кое блока ассоциативной памяти, выходы которого соединены с вторыми информационными входами второго коммутатора, вторая группа входов формирователя микрокоманд подмень( соединена с группой входов логических условий устройства, второй выход формирователя микрокоманд подмены является выходом отказа устройства, вхо- . ды кода операции соединены с вторыми информационными входами первого коммутатора. Кроме того, формирователь микрокоманд подмены содержит регистр, дешифратор, первый и второй элементы ИЛИ, причем первая группа входов формирователя соединена с первой груп пой входов дешифратора и через регистр с второй группой входов дешифратора, первая и вторая группы выходов которого соединены соответственно с входами первого и второго элементов ИЛИ выходы которых являются соответственно первой и второй группой выходов формирователя, вторая группа входов формирователя соединена с третьей группой входов дешифратора. Изобретение повышает надежность микропрограммного устройства управления процессора и системы на его основе путем организации гибкого восстановления функционирования процессов в условиях наличия отказавших элементов в операционном блоке. Дисциплина восстановления состоит в введении для каждой микрокоманды {или части микрокоманд) и соответствушчих субблоков операционной части процессора эквивалентных последова$10тельностей микро(«)манд, которые позво ляют выполнить отказавшую микрокоманду (.обойти - отказавший субблок, в хранении в блоке ассоциативной памяти начальных адресов эквивалентных последовательностей микрокоманд что позволяет уменьшить объем средств восстановления и гибко его иницииро вать, а также в инициировании процедуры восстановления в зависимости от исходных данных, поступакмцих в операционный блок процессора, дает возможность продолжать работу в .условиях наличия отказавших субблоков, не производя реконфигурации структуры процессора и не снижая его производительности. Введение блока ассоциативной памяти и обусловленных ими связей позволя ет хранить информацш) о начальных адресах эквивалентных заменяющих последовательностей и считывать их при поступлении соответствующих ассоциативных признаков - кодов микрокоманд и управляющего сигнала. Введение формирователя микрокоманд подмены и о0условленных им связей позволяет осуществлять выработку управляю1це,го сигнала, инициирующего в зависимости от кода отказавойго субблои значений логических условий. в том числе и логических условий, учи тывающих характер-Входных данных, выполнение вместо теку«1ей микрокоманды эквивалентной последовательности микрокоманд, а также не вырабатывать управляющий сигнал, если входные дан ные не критичны к отказавшему субблоку, и вырабатывать сигнал отказа процессора при невозможности маскирования отказавшего субблока. Введение второго элемента И и обусловленных им связей позволяет фор мировать управляющий сигнал для выдачи сигналов микроопераций с второй группы выходов регистра микрокоманд через первый блок элементов И на выходы микроопераций устройства. Введение первого элемента И и обусловленных.ИМ связей позволяет формировать управлящий сигнал для блока ассоциативной памяти, единичного входа триггера и одновибратора, Введение первого элемента задержки и обусловленных им связей позволяет задерживать тактовый импульс на управ ляющем входе блока памяти микрокоманд на время записи адреса очередной 1 микpo oмaиды в регистр адреса либо в буферный регистр. Введение первого коммутатора и обусловленных им связей позволяет передавать в регистр адреса адрес очередной микрокоманды .либо с входом кода операции устройства, либо с вы ходом блока формирования адреса. Введение второго коммутатора и обусяовленных им связей позволяет передавать в буферный регистр код адреса либо с блока формирования адреcas либо с блока ассоциативной памяти. Введение третьего коммутатора и обусловленных им связей позволяет передавать адрес очередной микрокоманды на вход блока памяти адресных микрокоманд либо с регистра адреса, либо с буферного регистра. Введение второго элемента задержки и обусловленных им связей позволяет задерживать тактовый импульс на время считывания микрокоманды из блока памяти микрокоманд и проверки Сигналов микроопераций в формирователе микрокоманд подмены. Введение одновибратора и обуслов енных им связей позволяет формировать сигнал запрета на управляющие ходы второго коммутатора на время выполнения первой микрокоманды из экв 1валентной заменяЮ1чей последовательности микрокоманд. На фиг. 1 представлена функциональная схема устройства} на фиг. 2 функциональная схема формирователя микрокоманд подмены; на фиг, 3 функциональная схема блока формирования адреса. Микропрограммное устройство управления содержит (фиг, 1) вторую груп- . пу входов формирователя 1, формирователь 2, выход сигнала отказа устройства 3, второй и первый 5 элементы И, выход тактовых импульсов 6, первый 7 и второй 8 элементы задержки, блок элементов И 9 выходы микроопераций 10, группу входов кода операции t1, первый коммутатор 12, регистр адреса 13 третий коммутатор Н, блок памяти микрокоманд 15 регистр 16 микрокоманд, блок 17 ассоциативной памяти, группу входов 18 сигналов логических условий, блок 19 формирования адреса 19, второй коммутатор 20, буферный регистр 21, триггер 22 и одновибратор 23. Формирователь микрокоманд подмены 2 (фиг. .) содержит группу информационных входов .k регистра, регистр 25, дешифратор 26, первый элемент ИЛИ 27, первый выход 28, первую 29 и вторую 30 группы входов, второй элемент ИЖ 31 и второй выход 32,Влок формироваж я адреса 19 (Фиг. содержит первую группу входов 33, группу выходов З, блок элементов И 35, блок сумматоров по модулю два 36, вторую группу входов 37. Назначение основных функциональных элементов устройства. Элемент задержки 8 предназначен для задержки тактовых импульсов на время считывания и проверки микрокоманд и выдачи их на управлякнцие входы элементов И Ч и 5. Вход 6 пред назначен для подачи на устройство та товых импульсов от внешнего генератора тактовых импульсов. Блок элементов И 9 служит для выдачи на выходы 10 сигналов микроопераций с регистра 16 при наличии сигнала на управляющем входе. Элемент задержки 7 ТВ л яет задержку тактовых импульсов с входа 6 устройства на вр мя прохождения информации через коммутаторы 1А, 12 ( 20) и регистр 13 (21 Входы 11 передают код операции (начальный адрес микропрограммы операции) на регистр адреса 13 через коммутатор 112.регистрТз адрёса слу жит для хранения очередной микрокоманды. Коммутатор }Ц - для выдачи на адресные входы блока 12 памяти адреса либо с регистра 13, либо с регист ра 21 в зависимости от триггера 22. Блок 15 памяти микрокоманд предназна чен для хранения микрокоманд. Формат микрокоманд, хранящихся в блоке 15, состоит из трех полей: пер вое - поле кода микроопераций; второе - поле метки окончания выполнени эквивалентной последовательности мик рокоманд (метка имеет единичное значение только в пос/юдних микрокомандах эквивалентных последовательностей) ; третье - поле кода базового ад реса очередной микрокоманды и кода проверяемого логического условия пос ле считывания из блока памяти 15 микрокоманда записывается в регистр 1 При этом в первом поле регистра 16 записывается код микроопераций во втором поле метки. 18 Входы предназначены для подачи на стройство сигналов логических услоий операционного блока процессора. БлЬк формирования адреса 19 слу- ит для формирования адреса очередой микрокоманды. При выполнении линейной последовательности код логических условий равен нулю. При этом сигналы на выхо-е блока элементов И 35 отсутствуют. Адрес немодифицируемой части адреса группы входов 37 непосредственно поступает на выходы немодифицированной части адреса группы выходон З, а код модифицируемой части адреса с группы входов 37 поступает через блок сумматоров по модулю два Зб на выходы модифицированной части адреса группы выходов 3. При ветвлении код логических условий не равен нулю и поэтому на выходе блока элементов 35 И существуют сигналы, которые модифицируют адресные разряды, поступаюи(ие на вхоД сумматоров по модулю два 32. Назначения элементов формирователя микрокоманд подмены 2 следующие. Регистр 25 предназначен для хранения кодов номеров отказавших субблоков операционного блока процессора и, в соответствии с этими кодами, для настройки дешифратора 20. На группу входов 30 блока 2 поступают коды логических условий с группы входов 18 устройства. Коды логических условий, поступающие на груп пу входов 18 устройства, разбиты на две части: первая определяет порядок ветвления в микропрограмме и осу «ествляет в зависимости от кода проверяемых логических условии, поступающих на вход блока 19, модификацию адреса очередной микрокоманды, вторая часть сигналов логических условий позволяет определить необходимость выполнения вместо теку1цей микрокоман- ды эквивалентной последовательности в зависимости от входных данных операционного блока процессора. По сигналам с регистра 25 и групп входов 29 и 30 дешифратор 26 формирует три множества сигналов Q соответственно. Если выходной сигнал дешифратора 26 попадает во множества Qi, то на выходе элемента ИЛИ 27 появляется сигнал, который поступает на выход 28 формирователя 2. При этом возможна достоверная обработка данных операционным блоком процессора путем маскирования его неисправных суббло ков, что осуи(ествляется путем формир вания вместо текущей микрокоманды эк вивалентной заменяющей последователь ности микрокоманд. Ксли выходной сигнал дешифратора 26 попадает во множество то на выходе элемента ИЛИ 31 и появляется- сигнал, соответствующий отказу процессора, т.е. при данных значения операндов (вход 30 формирователя 2) и существующей неисправности операционного блока процессора (содержимо регистра 25) маскирование последней путем выполнения эквивалентной после вательиоЬти микрокоманд вместо текущей микрокоманды невозможно. Нсяи выходной сигнал дешифратора 26 попадает во множество Qi (суб блоки операционного блока процессора исправны либо входные некритичны к отказам субблоков), на выходах формирования 2 сигналы отсутствуют и процессор продолжает достоверную обработку аходных данных. f) р и м е р. Необходимо построить дешифратор 2 при следующих исходных данных,: мисло субблоков операционного блока процессора - 3J число микро команд - 16 разрядность сигналов логических условий, соответствующих эбрабатыааемым данным - 2; результа fbi моделирования неисправностей процессора заданы таблицей, на пересечении строк и столбцов записаны номера мно ества, в которые должны попадать выходные сигналы дешифратора 7.6 с :сли для -текущих кодов отказавшего субблока, микроопераций и операндов на пересечении строк и столбцов стоит цифра 1, то выходной сигнал де шифратора .6 попадает во множестeoQ;j . При этом на выходе 28 формиро вателя 2 появляется сигнал. Ксли на пересечении строк и столб цов стоит цифра 2 выходной сигнал д шифратора 26 попадает во множество Q, При этом сигнал появляется на выходе 32 формирователя 2. Если все субблоки операционного блока процессора исправны, выходные сигналы дешифратора 26 попадают во множество Qj (не показано и на выходах 28 и 32 формирователя 2 сигналы отсутствуют. в коде номера отказавшего субблока первые (старшие) три разряда указывайт номер отказавшего субблока в позииионном коде, последний разряд тип неиспранности ( константа О или константа О, Такой дешифратор может быть построен по следуинчей методике Например если неисправен первый субблок и тип неисправности - константа О, то этой неисправности соответствует код 0010. Зтот код поступает в регистр 25«Ксли на группу входов 2S формирователя 2 поступает код микроопераций 0001, а на группу входов 30 -код операндов 01, выходной сигнал дешифратора 7.6 попадает so множествоQ . ПриЭТОМ на выходе 28 формирозателя 2 формируется сигнал, отказ процессора не наступает и микрокоманда 0001 ре-ализуется путем выполнения вместо нее эквивалентной занимающей последовательности микрокоманд. Нсли на группу входов 30 поступает код 01, сигнал на еыходе дешифратора .6 попадает во множество ф..Лри этом на выходе 3. формирователя поязпнется сигнал отказа. Микропрограммное устройство управления (фиг. 1) функционирует в двух режимах: при исправном операционном блоке процессора и при неисправных субблоках операционного блока процессора. , Работа устройства в первом режиме Триггер 22 находится в нулевом состоянии. При поступлении на вход 6 устройства тактового импульса код входом 1I устройства через операции с 12 записывается в рекоммутаторгистр 13. Код с выходом регистра 13 через коммутатор 1Ц поступает на адресные входы (5лока памяти 15. С приходом )1мпульс.а с выхода элемента задержки 7 с блока памяти 15 считывается первая микрокоманда и записывается в регистр 16. При этом информация из регистра 16 поступает в формирователь 2 и блок 19. Сигнал с выхода элемента задет жки 8 проходит через элемент И j ( в этом режиме функционирования сигнал на первом выходе формирователя 2 отсутствует) и разрешает выдачу сигналов микроопераций с регистра 16 через блок элементов И 9 на выходы устройства 10„ С приходом очередного тактового импульса на вход 6 устройства адрес очередной иикрокоманды с блока 13 формировани адреса через коммутатор 12 записыва ется в регистр 13. Далее устройство управления функционирует по описанному алгоритму. Р.сли происходит отказ одного из субблоков операционного блока проце сора, он идентифицируется средствами контроля процессора и на входы И поступает код адреса первой микрокоманды микропрограммы диагностики процессора. В режиме диагностики устройство функционирует аналогично функционированию в первом режиме. В процессе выполнения микропрограммы диагностики определяется номер отказавшего субблока операционного блока про цессора и тип неисправности. При считывании микрокоманды Конец микропрограммы диагностики из блока 15 памяти регистр 25 формирователя . 2) открывается по входу синхронизации. При этом код номера отказавшего субблока и типа HeHcnpaBHoctH записывается в регистр 25 о Далее устройство продолжает выполнять рабочую программу по описан ному алгоритму. По сигналам, посту|паюи)им на первую 29 и вторую 30 группы входов формирователя 2, и по содержимому регистра 25 дешифратор формирует соответствующие выходные сигналы. Если выходные сигналы дешифратора 26 принадлежат к множеству О , то устройство функционирует в первом режиме работы. Нсли при.надлежит к множеству Чт-г выход 3 устройства из формирователя 2 выдается сигнал отказа npoi eccopa. Если сигнал принадлежит к мно-жеству 0, то через первый элемент ИЛИ 27 он поступает на первый вмход 28 формирователя 2 и переводит устройство во второй режим функ ционирования. Работа устройства управления во втором режиме.
00 01
0001 0001
1 2 1 2
2 1 2221 Сигнал -с выхода элемента задержки 8 проходит через элемент И 5 на одновибратор 23, вход триггера 22 и управляю ций вход блока ассоциативной памяти 17. При этом по содержимому операционной части микрокоманды, считанной из блока памяти 15, из блока 17 памяти считывается адрес первой микрокоманды эквивалентной заменяющей последовательности микрокоманд и записывается через коммутатор 20 в регистр 21 а Триггер 20 устанавливается в единичное состояние, а одновибратор 23 формирует импульс. Так как сигнал на управляющем входе блока элементов И 9 отсутствует, то код микроопераций считанной микро команды на выходы 10 устройства не поступает..,, С приходом очередного тактового импульса на вход 6 устройства из блока 12 памяти по адресу, хранящемуся в регистре 21,считывается первая микрокоманда эквивалентной заменяющей последовательности микрокоманд. Далее устройство функционирует аналогично функционированию в первом режиме. При считывании последней микрокоманды эквивалентной заменяющей последовательности микрокоманд текущей микрокоманды на выходе поля метки регистра 16 появляется единичный сигнал. Триггер 22 переходит в нулевое состояние, а устройство в целом - в первый режим работы. I По адресу, записанному в регистре 13, из блока 15 памяти по описанному алгоритму считывается очередная микрокоманда. Далее устройство функционирует аналогично описанному алгоритму. Изобретение позволяет повысить надежность и расширить области применения микропрограммных процессоров.
Примечание. Знак означает некритицность субблоков операционного блока процессора к значениям этих разрядов при выполн нии микрокоманд, заданных в кодах микроопераций ,
Продолжение таблицы
Фиъ2
Печь для непрерывного получения сернистого натрия | 1921 |
|
SU1A1 |
Авторское свидегепьство СССР W , кл.С 06 F 15/00, 1978 | |||
Аппарат для очищения воды при помощи химических реактивов | 1917 |
|
SU2A1 |
Г, 06 F, 1978 | |||
Переносная печь для варки пищи и отопления в окопах, походных помещениях и т.п. | 1921 |
|
SU3A1 |
G Об F tl/OO, 1978 | |||
Прибор для получения стереоскопических впечатлений от двух изображений различного масштаба | 1917 |
|
SU26A1 |
Чугунный экономайзер с вертикально-расположенными трубами с поперечными ребрами | 1911 |
|
SU1978A1 |
Авторы
Даты
1983-07-23—Публикация
1982-04-27—Подача