Микропрограммное устройство управления с контролем
Иллюстрации
Показать всеРеферат
Изобретение относится к области автоматики и вычислительной техники и может быть использовано в цифровых системах с повышенной надежностью. Цель изобретения - повышение надежности функционирования. Устройство содержит блоки памяти микрокоманд 1 и нанокоманд 2.1 - 2.п, регистры адреса 3, микроопераций 4, отказа 5, коммутаторы адреса 6,7,8.1 - 8.п, мультиплексор 9, элементы НЕ 10., 11.1 - 11.П, сумматоры по модулю два 12, 13. Г - 13.п, элементы ИЛИ 14-17, И 18-25, одновибратор 26, триггеры 27-29, генератор импульсов 30, элементы задержки 31. Новык И в устройстве являются сумматоры по модулю два 12, 13.1 - 13.П, коммутаторы адреса 7, 8.1 - 8.П, регистр 5, триггеры 28, 29, элементы НЕ 10, 11.1 - 11.п, пятый 22, восьмой 25 элементы И, третий 16 и четвертый 17 элементы ИЛИ. 6 ил, (Л го сд cpue.l
СОЮЗ СОВЕТСКИХ
СОЦИАЛИСТИЧЕСКИХ
РЕСПУБЛИК д1) 4 0 06 Г 9/22 11/00
ОПИСАНИЕ ИЗОБРЕТЕНИЯ
Н A BTOPCHOMY СВИДЕТЕЛЬСТВУ
ГОСУДАРСТВЕННЫЙ КОМИТЕТ СССР
ПО ДЕЛАМ ИЗОБРЕТЕНИЙ И ОТНРЫТИЙ (21) 3894887/24-24 (22) 07.05.85 (46) 15.12.86. Бюл. N 46 (72) Н.К.Байда, В.С.Харченко, Г.Н.Тимонькин, В.А.!!ельников, С.H.Òêà÷åíêî и В.H.Ñåðåäà (53) 681.3 (088.8) (56) Авторское свидетельство СССР
11 - 896622, кл. G 06 F 9/22, 1982.
Авторское свидетельство СССР
Ф 1103231. кл. G 06 F 9/22, 1983. (54) МИКРОПРОГРАММНОЕ УСТРОЙСТВО
УПРАВЛЕНИЯ С КОНТРОЛЕМ (57) Изобретение относится к области автоматики и вычислительной техники и может быть использовано в цифровых системах с повышенной надежностью.
Цель изобретения — повышение надеж„„SU„„1277105 А ности функционирования. Устройство содержит блоки памяти микрокоманд 1 и нанокоманд 2.1 — 2,п, регистры адреса 3, микроопераций 4, отказа 5, коммутаторы адреса 6,7,8.1 — О,п, мультиплексор 9, элементы HF. 10, 11.1 — !1.п, сумматоры по модулю два
12, 13. 1 — 13.п, элементы ИЛИ 14 — 17, И 18 — 25, одновибратор 26, триггеры
27-29, генератор импульсов 30, элементы задержки 31. Новыми в устройстве являются сумматоры по модулю два
12, 13.1 — 13.п, коммутаторы адреса
7, 8.1 — 8.п, регистр 5, триггеры 28, 29, элементы НГ 10, 11.1 — 11.п, пя- Я тый 22, восьмой 25 элементы И, третий 16 и четвертый 17 элементы ИЛИ.
6 ил, С:
1277105
Импульс считывания информации иэ блока 1 памяти микрокоманд поступает на Т-вход триггера 28 и перебрасывает его в единичное состояние. Если в первом считанном слове ошибки не обнаружено, то третий тактовый импульс с выхода генератора 30 через элемент И обнуляет триггер 28. Если в считанном слове при контроле на четность обнаружена ошибка, сигнал логической едиБлок 10 элементов HE предназначен для преобразования адреса из прямого кода в обратный.
Группа блоков элементов НЕ 11.1
11.п преобразует прямой код адреса нанокоманды в обратный.
Сумматор 12 по модулю два предназначен для осуществления контроля считываемой информации из блока 1 памяти микропрограмм на четность. Реализация контроля информации на четность определяется основной долей (70-807) одиночных ошибок.
Блок элементов 13.1 — 13.п суммы по модулю два предназначен для контроля считываемой информации на четность из соответствующих блоков 2.1—
2.п нанокоманд (определения отказа в соответствующем блоке памяти).
Первый элемент ИЛИ 14 совместно с одновибратором 26 инициализирует начало работы устройства.
Триггер 27 запуска предназначен для запуска генератора 30 тактовых импульсов.
Генератор 30 предназначен для синхронизации работы устройства совместно с первым 18, вторым 19, пятым
20 и третьим 23 элементами И.
Второй элемент ИЛИ 17 предназначен
30 для определения отказа в одном из слов формируемой нанокоманды.
Четвертый 22, шестой 21 элементы
И и первый триггер 28 фиксации отказов предназначены для формирования на вход третьего элемента ИЛИ 15 сигнала, характеризующего отказ блока 1 памяти микрокоманд (сигнал отказаформируется при отказе как по прямому, так и инверсному адресам).
Седьмой 24, восьмой 25 элементы И и второй триггер 29 формируют сигнал отказа одного (или нескольких) блоков памяти нанокоманд.
В предлагаемом микропрограммном устройстве управления реализовано ортогональное (двухуровневое) управление, что позволяет повысить гибкость, а следовательно, и эффективность микропрограммирования. 50
Микропрограммное устройство управления работает следующим образом.
В исходном состоянии элементы памяти устройства находятся в нулевом состоянии на исключением единичного сигнала с выхода 1.1 блока 1 памяти микропрограмм, характеризующего окончание работы устройства.
Работа устройства начинается путем поступления на вход 32 кода операции, определяющего начальный адрес микропрограммы. Этот код поступает на вход элемента ИЛИ 14 и через одновибратор
26 устанавливает триггер 27 в единичное состояние, Так как сигналы, характеризующие отказы ячеек памяти блока 1 памяти и группы блоков 2 ° 1
2.ппамяти, отсутствуют (сигналы логи» ческого нуля на выходе сумматора l2 (фиг.4) по модулюдва и на выходе элемен1 та ИЛИ 17), то первый тактовый импульс1 с выхода генератора 30 через элемент
И 18 поступает на синхронизирующий вход регистра 3 адреса и производит в него запись информации с входа 32 устройства.
Второй тактовый импульс с выхода генератора 30 через элемент И 19 поступает на синхронизирующий вход блока
1 памяти микропрограмм и тем самым . разрешает из него считывание информации по прямому коду адреса (коммутатор 7 адреса запрещает сигналом логического нуля с выхода сумматора 12 по модулю два обращения по обратному адресу). Если в считанной по прямому адресу микрокоманде будет ошибка (сумматор !2 по модулю два осуществI ляет контроль информации на четкость), то сигнал логической единицы на выходе сумматора 12 запретит обращение к блоку 1 памяти микрокоманд по прямому адресу (через коммутатор 7 адреса), запретит запись информации в регистр
3 адреса (через элемент И 18) и запретит обращение к группе блоков 2.1
2.п памяти нанопрограмм (через элемент
И 20). Тактовый импульс очередной импульсной последовательности с выхода генератора 30 через элемент И 19 поступает на синхронизирующий вход блока
1 памяти микропрограмм и тем самым разрешает считывание из него информации по адресу, обратному (инверсному) записанному в регистре 3 адреса.
1277
$ ницы с выхода сумматора 12 r!o модулю два запретит обнуление триггера 28 (фиг.4). При считывании слова иэ блока 1 памяти микрокоманд по обратному адресу (при наличии отказа ячейки па мяти по прямому адресу) сигнал считывания поступает на Т-вход триггера 28 и устанавливает его в нулевое состояние, Если в считанной информации также будет обнаружена ошибка, то такто- 1g вый импульс с третьего выхода генератора 30 тактовых импульсов «ерез элемент И 22„ элемент ИЛИ 1!5 поступает на синхронизирующий вход гегистра 5 и тем самым разрешает в н .го запись кода об отказавшем блоке памяти, Данная информация поступает на выход 35 устройства для локализации и устранения отказявв|вго модуля памяти., 1(роме того, этим же тактовым импульсом че- 2п рез элемент ИЛИ 16 происходит установка в "0" триггера 27 запуска, и микропрограммное устройство управления на этом заканчивает работу, При считывании информации с выхо-, 25 дов 1,2 — 1.п+5 блока 1 памяти микропрограмм будет сосчитано слово, определяющее адрес очередной микрокоманды (выходы 1.2 -- l.4) и адрес нанокоманцы (выходы 1.5 — 1.п+5), Так- ;О товый импульс с. третьего выхода генератора 30 через элемент И ?О поступает ня синхронизирующие входы группы блоков ?.1 — 2.п памяти нанокоманд и разрешает считывание из них инфор-мации по грямым адресам, поступающим через блок коммутаторов 8.1 — Я.п адреса. При отсут".ò âèè ошиб;к;и во всех частях нанокоманды (сигнал логическоH1JJrR HR Bb!xopP элемента ИЛИ 1 7) 10 тактовый импульс через элемент 3 1 задержки и элемент И 23 постугает на синхронизирлощий вход регистра. 4 нанокоманд„ Нянокоманда заносится в регистр 4 и с ег"., вьгхода поступает ц на выход 34 устрой".твя на упрагление операционным устройством, например арифметико-логическим блоком,.
При наличии ошибки (фиг.б) в однои или нескольких «астях нанокоман50 ды на соответствующем сумматсре 13. I.13.п по модулю два группы будет "иг-. нал логической единицы. Этот сигнал разрешит обращение к соответствующему блоку памяти группы блокob. ?.1
2,п по инверсному адресу и через эле менты И l8 19 и 23 запретит эа-ись информации в регис.тр 3 адреса, абра105
Ь щение к блоку I памяти микропрограмм и запись информации в регистр 4 на— нокоманд и выдачи ложной информации на выход 34 устройсгва. ,Тактовый импульс очередной импульсной последовательности через элемент
И 20 произведет повторное обращение к группе блоков 2.1 — 2.п памяти нанопрограмм. При этом в тех блоках памяти, при первом обращении к которым обнаружена ошибка, вторичное обращение будет по обратному адресу.
При формировании нгнокоманды без ошибки оня будет занесена в регистр
4 нанокоманд и с егo BblxopB поступит на выход 34 устройства.
При каждом обращении (считывании информации) - 2,; — 2.п памяти тактовый импульс с третьего выхода генератора 30 тактовых импульсов поступает на Т--вход триггера 29, При этом, если ошибка в выходном слове отсутствует, то тактовый импульс с первого вьгхода генератора
30 обнуляет тригге.р 29 через элемент
И 24. Если ошибка .трисутствует, то сигнал логического нуля с выхода элемента И 23 через элемент И 24 запретит обнуление триггера 29.
Если при обращении по инверсному адресу также будет обнаружена ошибка„то тактовый имп льс с генератора ЗО через элемент И 25 (триггер 29 будет в нул вом состоянии) и элемент ИЛИ 15 посгупает на синхронизирующий вход регистра 5 и заносит информацию об отказавшем (отказавших) блоке памяти группы блоков 2.1 — 2.п.
Этот же импульс через элемечт ИЛИ 16 поступает на вход установки в "О" триггера 27 запуска, Триггер 27 запуска перехогит в н;левое состояние и тем самым запрещает генератору ЗОформировать импульсную последовательность дпя работы.
Формирование адреса очередной MHKрокоманды происходит следующим образом.
Если о-.с.редная микрокоманда является микрокомандой линейной последовательности, то код адреса определяется кодом немодифицируемых разрядов адреса с выхода 1 .4 блока 1 памяти микро. программи модифицируемымразрядом адреса с выхода 1.3. Вэтом случае модифицируемый разряд адреса при нулевом коде логических ус.ловий с выхода 1.2 блока 1 памяти через мультиплексор
9 проходит без изменений.
1277105
Если микрокоманда является микрокомандой ветвления, то адрес очередной микрокоманды определяется Постоянной частью кода адреса (немадифируемой частью) и переменной частью (модифицируемым разрядом адреса). Если проверяемое логическое условие Выполнено, то модифицируемая часть када адреса имеет единичное значение и сформированный таким образом адрес 1б очередной микрокоманды через коммутатор 6 адреса поступает на регистр 3 адреса. по тактовому импульсу с вьгхода генератора 30, f5
При выдаче метки — признака окончания работы устройства с выхода 1.1 блока 1 памяти микропрограмм разрешается (запись очереднога кода операции (адреса микропрограммы) через коммутатор 6 адреса в регистр 3. Кроме того, с выдачей на управление последней нанокоманды на выход 34 выдается метка — признак окончания работы. Эта метка через элемент ИЛИ обнуляет триггер 27 запуска, устройство переходит в исходное состояние и готово к приему очередного кода операции.
Формула и з обретения
Микропрограммное устройство управления с контролем, содержащее блок памяти микропрограмм, группу блоков памяти нанокоманд, первый коммутатор адреса, регистр адреса, регистр нано35 команд, мультиплексор логических условий, первый и второй элементыИЛИ, одновибратор, триггер запуска, генератор тактовьгх импульсов, первый, 40 второй, третий и четвертый элементы
И и элемент задержки, причем вход кода операции устройства соединен с первым информационным входом первого коммутатора адреса и входом первого элемента ИЛИ, выход которого соединен с входом одновибратора, выход которого соединен с S âõîäîì триггера запуска, единичный выход которого соединен с входом запуска генератора тактовых импульсов, выход первого коммутатора адреса соединен с информационным входом регистра адреса, выход разряда признака конца работы блока памяти микропрограмм соединен с прямым и инверсным управляющими входами первого коммутатора адреса, выход разряда кода проверяемых логических условий блока памяти микропрограмл . соедине11 с уг!равняю!Ее!л1 входам мультиплексора логических усла11!С1, выход мадпфицируемага ряэр. дг1,":,раса блока памяти . !1!кропnаrpал! соел.*1;ен с перВым *!нфармяце :Он!!ым Бходал! м :"!ь
Т пчексора лаги:ескпх ус.!Опий, Выход немадифицнруемых разряг„аз Я,,реса блоK= памяти микропрограмм соединен с входами нел!ОдегфегцегруемьЕх разрядов адреса второго. информационного входа первого кол!мутатора адреса, выход муль". .иплексc = логических условий соединен с входом модифи!еегруемога разряда адреса второго и . рмацианного входа первого кол!мутатора адреса. вход логических условий устройства соединен с Вторым информационным вхо„îì му.льтиплексара логических условий, информационные выходы блаКРВ ПЯМЯ H НГ ЯОКОМЯНД ГP ÏIIbI СОЕДИЕЕСны с соответствующими информяцегане1ыми входалге! р е гис тря нанон оманд, Выход катарага соединен с выходам микраапераций устройства, а т л н ч а
ы щ е е с я тем, что, с целью повышения отказоустойчивости, усTpoIIcTBQ содержит сумматор па модулю два, второй коммутатор адреса, блок элеме:ToB
HE блок коммутаторов адреса, группу блоков элементов ИЕ, группу сумматоров по модулы два, регистр идентификации отказа, г!ервый и второй триггеры фиксации отказов, пятый, шеcòîé, седьмой и восьмой элементы И, третий и четвертый элементы ИЛИ, причсм Выходы сумматоров по модулю двя г,аунг!ы соединены с Входами второго "-лементя
ИЛИ и с группой информационных Входов регистра идентификации отказа, гыхад которого. является выходам идеятификации отказа устройства„ Вьгхад второго элемента ИЛИ соединен с перВым инверсным входом первого элемента И и инверсными входами второго и третьего элементов И, первый вы,.п;1 генерятаря тяктаВых импульсОВ саепе, нен с прямым входом первого элемента
И, Выход катараro соединен с входом синхронизации регистра адреса, вьгход которого соединен с первым информационным входом второго коммут""Tîðà адреса и входом блока элементов !1Е, выход которого соединен с вторым информационным входом второго коммутатора адреса, выход второго коммутатора адреса соединен с адресным входом блока памяти микропрограмм, второй выход генератора тактовых импульсов с.оединен с прямым входом второго элеме:Ta
12771
Й, выход которого соединен с входом синхронизации блока памяти микропрограмм и Т-входом первого триггера фиксации отказов, нулевой выход которого соединен с первым входом четвер5 того элемента И, выход которого соединен с первым входом третьего эле.мента ИЛИ, выход которого соединен с входом синхронизации регистра индификации отказа и с первым входом чет- 1б вертого элемента ИЛИ, второй вход которого соединен с выходом разрядаметки окончания работы регистра нанокоманд, выход четвертого элемента ИЛИ соединен с R-входом триггера запуска, 15 выходы разрядов адресов нанокоманды блока памяти микропрограмм соединены с первой группой информационных входов блока коммутаторов адресов и входами блоков элементов HE группы, вы- 2п ходы которых соединены с второй группой информационных входов блока коммутаторов адреса, выходы которого соединены с адресными входами соответствующих блоков памяти нанокоманд группы, информационные выходы которых соединены с информационными входами " соответствующих сумматоров по модулю два группы выходы которых соединены с прямыми и инверсными управляющими входами соответствующих коммутаторов блока коммутаторов адресов, выходы разрядов признака четности блоков памяти нанокоманд группы соединены с разрешающими входами соответствующих
35 сумматоров по модулю два группы, выходы разрядов кода проверяемых логических условий, модифицируемого разряда адреса, немодифицируемых разрядов адреса, адресов нанокоманды блока„ памяти микропрограмм соединены с информационными входами сумматора по модулю два, выход разряда признака
05 0 четности блока памяти микропрограмм соединен со стробирующим входом сумматора по модулю два, выход которого соединен с прямым и инверсным управляющими входами второго коммутатора адреса, вторым инверсным входом перзого элемента И, инверсным входом пятого элемента И, вторым входом четвертого элемента И, инверсным входом шестого элемента И и с разрядом информационного входа регистра идентификации отказа, выход шестого элемента И соединен с R-входом первого триггера фиксации отказов, третий выход генератора тактовых импульсов соединен с прямым входом пятого элемента И, третьим входом четвертого элемента И и прямым входом шестого элемента И, первый выход генератора тактовых импульсов соединен с первыми входами седьмого и восьмого элементов
И, выход восьмого элемента И соединен с вторым входом третьего элемента ИЛИ, выход пятого элемента И соединен с входами синхронизации блоков памяти нанокоманд группы, Т-входом второго триггера фиксации отказов и входом элемента задержки, выход которого соединен с прямым входом третьего элемента И, выход которого соединен с входом синхронизации регистра нанокоманд и вторым входом седьмого элемента И, выход которого соединен с R-входом второго триггера фиксации отказов, нулевой выход которого сое-. динен с вторым входом восьмого элемента И, третий вход которого соединен с выходом второго элемента ИЛИ, нулевой выход триггера запуска соединен с установочными входами блока памяти микропрограмм и блоков памяти нанокоманд группы.
1277105 и
Составитель Д.Ванюхин
Техред И.Попович Корректор А.Обручар
Редактор Е.Копча
Заказ 6667/42 Тираж 671
ВНИИПИ Государственного комитета СССР по делам изобретений и открытий
113035, Москва, Ж-35, Раушская наб., д. 4/5
Подписное
Производственно-полиграфическое предприятие, r. Ужгород, ул. Проектная 4