Микропрограммное устройство управления
Иллюстрации
Показать всеРеферат
ОП ИСАНИЕ
ИЗОВРЕТЕН ИЯ
К АВТОРСКОМУ СВИДЕТЕЛЬСТВУ (938283
Союз Советск ик
Социапистичесиик
Респубпии (6! ) Дополнительное к авт. свнд-ву(22)Заявлено 21,11.80 (21) 3007074/18-24 с присоединением заявки М (23) Приоритет(51)M. Кл.
6 06 F 9/22
3Ъоударстввввыв коиктвт
СССР ао авави квоврвтвккк в открытки
Опубликовано 23.06,82.Бюллетень № 23
Дата опубликования описания 23.06.82 (53).УДK 681. 325 (088.8) H. К. Байда, Г. Н. Тимонькин, И. П. Барабаш, Б..И. Белов, И. И.. Корниенко, В. И. Сидоренко, М. П. Ткачев, С. Н. Ткаченко и В. С. Харченко (72) Авторы изобретения (7l) Заявитель (54) МИКРОПРОГг4ММНОЕ УСТРОЙСТВО
УПРАВЛЕНИЯ
Изобретение относится к цифровой вычислительной технике,в частности к устройствам управления ЦВМ.
Известно микропрограммное устройство управления, содержащее два бло1 5 ка памяти, три регистра, коммута-. тор 13 .
Недостатком этого устройства является низкая надежность, обусловленная отсутствием возможности перестройки структуры при отказе блоков памяти.
Из известных перестраиваемых микропрограммных устройств управления
- наиболее близким к изобретению по технической сущности является перестраиваемое микропрограммное устройство управления, содержащее два запоминающих блока, два регистра адреса, два элемента И, элемент ИЛИ, 20 два коммутатора и два триггера управления 121. .Недостатком устройства является низкая экономичность, обусловлен2 ная большим объемом не используемых массивов блоков памяти.
Цель изобретения - сокращение оборудования.
Поставленная цель достигается тем, что в устройство, содержащее два коммутатора, два регистра.адреса, два триггера, два элемента И, элемент ИЛИ и два блока памяти, первые выходы которых соединены с счетными входами соответственно первого и второго триггеров, единичные выходы которых соединены с первыми входами соответственно первого и второго элементов И, выходы которых соединены с первыми входами соответственно первого и второго блоков памяти, нулевые выходы первого и второго триггеров соединены с первыми входами соответственно первого и второго коммутаторов, выходы которых соединены с первыми входами соответственно первого и второго регистров адреса, первые выходы которых соеди938283
55 мены с вторым входом соответственно, первого и второго коммутаторов, третьи входы которых соединены соответственно с первым и вторым входами устройства, выход первого элемента ИЛИ соединен с первым выходом устройства, дополнительно содержит два регистра, пять элементов
ИЛИ, четырнадцатЬ элементов И, два элемента 2И-ИЛИ-, три элемента задержки и третий триггер р единичный выход которого соединен с первыми входами с третьего по девятый элемент И, нулевой выход. третьего триггера соединен с первыми входами. с десятого по шестнадцатый элемент
И, выходы пятнадцатого и девятого элементов И соединены соответственно с первыми входами второго и третьего элементов ИЛИ, выходы которых соединены соответственно с .вторыми входами второго и nepeoro регистров адреса, вторые выходы .которых соединены соответственно с первыми входа. ми первого и второго элементов 2И.ИЛИ, вторые входы которых соединены соответственно с первым и вторым входами устройства, третьи входы первого и второго элементов 2И-ИЛИ соединены соответственно с первыми выходами второго и первого регистров адреса, четвертые входы первого и второго элементов 2И"ИЛИ соединены соответственно с вторым и первым входами устройства, а выходы этих элементов соединены соответственно с вторыми входами nepaoro и второго блоков йамяти, второй выход первого блока памяти соединен с вторыми входами четвертого и одиннадцатого элементов И, второй выход второго блока памяти соединен с вторыми входами шестого и тринадцатого элементов И, третий выход первого блока памяти соединен с вторыми входами третьего и десятого элементов И, третий выход второго блока памяти соединен с вторыми входами седьмого и четырнадцатого элементов И, выходы четвертого и тринадцатого элементо И со единены соответственно с входами первого и второго дополнительных регистров, выходы которых соединены соответственно с вторыми входами двенадцатого и пятого элементов И, выходы которых соединены с соответствующими входами четвертого элемента ИЛИ, выход которого является . вторым выходом устройства, первый выход первого блока памяти соединен с вторыми входами девятого и шестнадцатого элементов И, первый выход второго блока памяти соединен с вторыми входами восьмого и пятнадцатого элементов И, выход восьмого элемента И через первый элемент задержки соединен с вторым входом второго элемента ИЛИ, выход шестнадцатого щ элемента И через второй элемент за-. держки соединен с вторым входом третьего элемента ИЛИ, первый вход пятого элемента ИЛИ соединен с четвертым входом первого элемента 2И-ИЛИ . и является вторым входом устройства, второй вход пятого элемента ИЛИ соединен с четвертым входом второго элемента 2И-ИЛИ и является первым входом устройства, выход пятого элемента ИЛИ соединен с вторыми входами первого и второго элементов И и через третий элемент задержки соединен со
l счетным входом третьего триггера,,выходы третьего и четырнадцатого элементов И соединены соответственно с третьими входами первого и второго регистров адреса, выходы седьмого и десятого элементов И соединены с со.ответствующими входами первого элемен. та ИЛИ, выходы шестого и одиннадцатого элементов И соединены с соответствующими входами шестого элемента ИЛИ, выход которого является третьим выходом устройства.
Сущность изобретения состоит в
М сокращении объема блока памяти за счет разбиения микрокоманд на два сегмента, каждый из которых записывается в отдельной ячейке блока па40 мяти, и осуществления считывания микрокоманды по частям за два такта.
Первый сегмент каждой микрокоманды содержит поле адреса и операционное поле, в котором записана часть ее поля микроопераций. Остальная
45 часть поля микроопераций микрокоманды содержится в адресном и операционном полях второго ее сегмента.
Адрес А первого сегмента i-й
1 микрокоманды задается в поле адреса первого сегмента предыдущей (i+I)-й микрокоманды, записанной в противоположном блоке памяти. Адрес А,. х второго сегмента i-й иикрокомайды задается путем инвертирования адреса А . первого сегмента
1 г
М.=A
5 9382
8 каждом такте считывание информации производится из обоих . блоков памяти: в одном блоке производится .считывание первого сегмента очередной 1-й микрокоманды, а в противопо ложном блоке - считывание второго сегмента предыдущей (1-1)-й микрокоманды .
В следующем такте из первого блока считывается второй сегмент i-й 1р микрокоманды, а из противоположного блока - первый сегмент следующей за ней (1+1)-й микрокоманды и т.д, Та часть поля микроопераций, кото. рая содержится в операционном поле первого сегмента микрокоманды, запоминается и подается на выход устройства одновременно с считыванием остальной части поля микроопераций, т.е. второго сегмента микрокоманды.
Благодаря этому быстродействие устройства сохраняется таким же, как и у известного устройства.
При отказе одного из блоков памяти устройство переходит в режим рабо- > ты с одним блоком памяти, начиная с той микрокоманды, адрес которой устанавливается в регистре адреса исправного блока по сигналу отказа другого блока памяти.
36
На чертеже представлена функциональная схема устройства.
Устройство содержит два элемента
И 1 и 2, четырнадцать дополнительных элементов И 3-16, два триггера 17 и
18, третий дополнительный триггер 19, 3S три элемента 20-22 задержки,.постро" енных, например, на О-триггерах, элемент ИЛИ 23,пять дополнительных элементов ИЛИ 24-28, два элемента
2 И-ИЛИ 29 и 30, два регистра 31 и
32 адреса, два дополнительных регистра 33 и 34, первый 35 и второй 36 коммутаторы, первый 37 и второй 38 блоки памяти.
Кроме того, на чертеже обозначены нулевые выходы 39 и 40 соответственно первого 17 и второго 18 триггеров, первый 41 и второй 42 входы устройства, выходы 43 и 44 соответственно пря. мого и инверсного адреса второго реги.
56 стра 31 адреса, второй выход 45 (выход поля адреса) первого блока
37 памяти, первый выход 46 (выход неисправности) первого блока 37 памяти, третий выход 47 (выход поля микроопераций) первого блока 37 памяти, единичный 48 и нулевой 49 выходы третьего триггера 19, третий выход
83 6
50 (выход поля микроопераций) второго блока 38 памяти, первый выход 51 (выход неисправности) второго блока 38 памяти, второй выход 52 (выход поля адреса) второго блока 38 памяти, выходы 53 и 54 соответственно инверсного и прямого адреса первого регистра
32 адреса, выходы 55 и 56 адреса микрокоманд, записанных соответственно в первом 37 и в втором 38 блоках памя» ти, соответственно первого 57, второго 58 и третьего 59 выходов устройства.
Устройство работает следующим образом.
В исходном состоянии при отсутствии неисправностей в блоках памяти триггеры 17 и 18 установлены в единицу, триггер 19 — e нуль, в регистре
31 адреса записан адрес первой микрокоманды, в регистре 32 адреса и дополнительных регистрах 33 и 34 - нулевой код. При поступлении первого тактового импульса на вход 41 устройства с выхода 43 регистра 31 через элемент 2 И-ИЛИ 29 на блок 37 памяти подается прямое значение адреса первой михрокоманды,а с выхода 53 регистра 32 на блок 38 памяти подается инверсное значение нулевого кода, т.е. единичный код, которому в этом блоке соответствует пустая ячейка.
Кроме того, импульс с входа 41 через элемент ИЛИ 26 поступает на элемент задержки . 22, а также через открытые триггерами 17 и 18 элементы И 1 и 2 поступает на считывающие входы блоков
37 и 38 памяти. К моменту выдачи информации из блоков памяти триггер
19 сигналом с элемента 22 задержки
1устанавливается в единичное состояниеи от пираетэлементы И8, 6и 7,а также элементы И 3 и 4. Так как в регистре 34 установлен нулевой код, а в блоке 38 памяти будет опрошена пустая ячейка, через элементы И 8, 6 и 7 на выходы 58, 59 и 57 поступает нулевой код. Из блока 37 памяти будет считан первый сегмент первой микрокоманды. При этом адрес следующей, т.е. второй микрокоманды, с выхода 45 блока 37 памяти через открытый элемент И 3 поступает на регистр
32 адреса, а операционная часть первого сегмента первой микрокоманды через открытый элемент И 4 поступает на дополнительный регистр 33.
938283
В следующем такте на вход 42 уст- ройства поступает тактовый импульс, по которому на блок 37 памяти с выхода 44 регистра 31 подается инверсный адрес первого сегмента первой микрокоманды, т.е. адрес ее второго сегмента,а на блок 38 памяти с выхода 54 регистра 32 подается прямой адрес первого сегмента второй микрокоманды. Далее аналогично первому 10 такту происходит считывание информации из блоков памяти. К моменту ее выдачи из блоков триггер 19 устанавливается в нуль, запирая элементы
И 3, 4, 8, 6 и 7 и отпирая элементы 15
И 14, 15, 13, 10 и
Благодаря этому содержимое адресного поля второго сегмента первой микрокоманды с выхода 45 блока 37 памяти подается через элементы И 14 и ИЛИ 27 на выход 57 устройства, содержимое операционного поля этого сегмента подается через элементы
И 15 и ИЛИ 28 на выход 59 устройства, а содержимое дополнительного регистра 33 через элементы И 13 и ИЛИ 23на выход 58 устройства, т.е. на выходы устройства подаются полностью микрооперации первой микрокоманды.
Одновременно из блока 38 памяти будет 3 считан первый сегмент второй микрокоманды. При этом адрес следующей за ней, т.е. третьей, микрокоманды с выхода 52 блока 38 памяти через открытый элемент И 11 поступит на регистр 31, а операционная часть пер35 вого сегмента второй микрокоманды через элемент И 10 поступит в дополнительный регистр 34.
Далее устройство функционирует аналогично описанному, осуществляя одновременно с считыванием nepaot-o сегмента очередной микрокоманды из одного блока памяти считывание из второго сегмента предыдущей микрокоманды другого блока памяти и подавая
45 микрооперации этой предыдущей микрокоманды на выходы устройства и т.д.
При обнаружении искажений в считанном из блока 37 (38) памяти сегменте микрокоманды происходит перестройка на работу одним исправным блоком 38 (37) памяти.При этом на выходе 46 (51) блока 37 (38) памяти формируется сигнал неисправности, который устанавливает в нуль триггеры 17 (18),S запирая тем самым элемент И 1 (2), и разблокируя коммутатор 35 (36).
Кроме того, этот сигнал поступает на элементы И 12 и 9 (16 и 5). Если искажение обранужено при считывании первого сегмента микрокоманды, сигналом с вдиничного (нулевого) выхода
48 (49) триггера 19 будет открыт элемент И 9 (16), через который сигнал неисправности поступит на элемент
ИЛИ 25 (24), а с него - на регистр
32 (31), в котором по этому сигналу установится фиксированный адрес, с которого начинается микропрогмамма функционирования устройства с одним неисправным блоком памяти. 8 следующем такте, согласно описанному, подается импульс на вход 42 (41) устройства, и из блока 38 (37) памяти происходит считывание первого сегмента микрокоманды, адрес которого был установлен в регистре 32 (31).
Адрес следующей микрокоманды, содержащийся в считанном первом сегменте, через элемент И 11 (3) поступит на регистр 31 (32). В следующем такте подается импульс на вход 41 (42) устройства. При этом согласно описанному из памяти 38 (37) считывается второй сегмент микрокоманды по инверсному значению адреса, установленного на регистре 32 (31), а также происходит выдача микроопераций на выходы устройства. Одновременно адрес записанный в регистре 31 (32) через разблокированный коммутатор 36 .(35) записывается в регистре 32 (» ).
Далее из блока 38 (37) памяти происходит считывание первого сегмента очередной микрокоманды и содержимое его адресного поля устанавливается на регистре 31 (32) и т.д.
При этом считывание информации из блока 37 (38) памяти не происходит, так как элемент И 1 (2) заперт нулевым сигналом с единичного выхода триггера 17 (18).
Если искажение обнаружено при считывании второго сегмента микрокоманды из блока 37 (38) памяти; сигнал неисправности с выхода 46 (51) блока 37 (38) памяти поступит на регистр 32 (31) через элемент И 12 (5), элемент 21 (20) задержки и элемент
ИЛИ 25 (24) с задержкой на один такт.
Задержка введена потому, что в следующем такте на блок 38 (37) памяти будет подаваться инверсное значение адреса, установленного в регистре 32 (31), и если перед этим в регистре установить фиксированный адрес, микроI, команда по этому адресу будет считана
9 93828 в обратном порядке : сначала будет считан ее второй сегмент, а потом первый, что приведет к нарушению работы устройства.
Данное устройство по сравнению с известным, сохраняя способность к пе. рестройке структуры, обеспечивает считывание микрокоманд из блоков памяти в виде двух сегментов, длина которых в два раза меньше длины мик- 10 рокоманды. Это позволяет при построении блоков памяти устройства на
БИС, количество ячеек в которых в два или более раз больше, чем количество микрокоманд, сократить в два И раза количество БИС для блоков памяти устройства °
Формула изобретения
Микропрограммное устройство управления содержащее два коммутатора, два регистра адреса, два триггера, два элемента И, элемент ИЛИ и два блока памяти, первые выходы, которых 25 соединены с счетными входами соответственно nepsoro и второго триггеров, единичные выходи которых соединены с первыми входами соответственно первого и второго элементов И, выходы з0 которых соединены с первыми входами соответственно первого и второго блоков памяти, нулевые выходы первого и второго триггеров соединены с первыми входами соответственно первого и второго коммутаторов, выходы которых соединены с первыми входами соответственно первого и второго регистров адреса, первые выходы которых соединены с вторым входом соответственно первого и второго коммутаторов, третьи входы которых соединены соответственно с первым и вторым входами устройства, выход первого элемента ИЛИ соединен с первым выходом устройства, о т л и ч а ющ е е с я тем, что, с целью сокращения оборудования, оно содержит два регистра, пять элементов ИЛИ, четырнадцать элементов И, два элемента
2И-ИЛИ, три элемента задержки и третий триггер, единичный выход которого соединен с первыми входами с третьего по девятый элемент И, нулевой выход третьего триггера соединен с первыми входами с десятого по шестнадцатый элемент И, выходы пятнадцатого и девятого элементов И сое .динены соответственно с первыми вхоI
3 10 дами второго и третьего элементов
ИЛИ, выходы которых соединены соответственно с вторыми входами второго и первого регистров адреса, вторые выходы которых соединены соответственно с первыми входами первого и второго элементов 2И-ИЛИ, вторые. входы которых соединены соответствен. но с первым и вторым входами устройства, третьи входы первого и второго элементов 2И-ИЛИ соединены соответственно с первыми выходами второго и первого регистров адреса, четвертые входы первого и второго элементов 2И-ИЛИ соединены соответственно с вторым и первым входами устройства, а выходы этих элементов — соответственно с вторым и первым входа" ми устройства, а выходы этих we" ментов соединены соответственно с вторыми входами первого и второго блоков памяти, второй выход первого блока памяти соединен с вторыми входами четвертого и одиннадцатого элементов И, второй выход второго. блока памяти соединен с вторыми входами шестого и тринадцатого эле" ментов И, третий выход первого блока памяти соединен с вторыми входами третьего и десятого элементов И, третий выход второго блока памяти соединен с вторыми входами седьмого и четырнадцатого элементов И, выходы четвертого и тринадцатого элементов
И соединены соответственно с входами первого и второго дополнительных регистров, выходы которых соединены соответственно с вторыми входами двенадцатого и пятого элементов И, выходы которых соединены с соответствующими входами четвертого элемента ИЛИ, выход которого является вторым выходом устройства, первый выход. первого блока памяти соединен с вторыми входами девятого и шестнадцатого элементов И, первый выход второго блока памяти соединен с вторыми входами восьмого и пятнадцатого элементов И, выход восьмого элемента И через первый элемент задержки соединен с вторым входом второго элемента ИЛИ, выход шестнадцатого элемента И через второй weмент задержки - с вторым входом третьего элемента ИЛИ, первый вход. пятого элемента ИЛИ соединен с четвертым входом первого элемента 2ИИЛИ и является вторым входом устройства, второй вход пятого элемента
11 9382
ИЛИ соединен с четвертым входом вто" рого элемента 2И-ИЛИ и является первым входом устройства, выход пятого
Элемента ИЛИ соединен с вторыми входами первого и второго элементов
И и через третий элемент задержкис счетным входом третьего триггера, выходы третьего и четырнадцатого
Элементов И соединены соответст» венно с третьими входами первого щ и второго регистров адреса, выходы седьмого и десятого элементов И соединены с соответствующими входами е.
83 12 первого элемента ИЛИ, выходы шес того и одиннадцатого элементов И соединены с соответствующими входами шестого элемента ИЛИ, выход которого является третьим выхо -дом устройства.
Источники информации, принятые во внимание при экспертизе
1. Авторское свидетельство СССР
И 437а72, кл. а 06 Р 9/22, 1975.
2. Авторское свидетельство СССР
i8 646333, кл. Q 06 F 9/22, 1976 (прототип), ВНИИПИ Заказ 4466/73 Тираж 731 Подписное . Ф4@A&%&%%WWWWAWW&&& а « » @»
Филиал ППП "Патент", г. Ужгород, ул. Проектная, 4