Микропрограммное устройство управления
Иллюстрации
Показать всеРеферат
МИКРОПРОГРАММНОЕ УСТРОЙСТВО УПРАВЛЕНИЯ, содержащее блок памяти .адресов микрокоманд, первый блок памяти зон микрокоманд, регистр адреса , регистр микрокоманд, первый регистр выбора страницы, мультиплексор логических условий, первый и второй блоки элементов И, блок элементов ИЛИ, элемент И, элемент ИЛИ и генератор тактовых импульсов, причем ВЫХОДЫ регистра адреса и первого регистра выбора страницы соединены соответственно с первыми и вторыми адресными входами блока памяти адреСОВ микрокоманд, выход немодифицированных разрядов которого соединен с первыми входами первого блока элементов И, ВЫХОДЫ первого блока элементов И и элемента И соединены с первой группой входов блока элементов ИЛИ, ВЫХОД которого соединен с информационным входом регистра адреса , ВХОД начального адреса устройqTBa соединен с первыми входами второго блока элементов И, выход которого соединен с второй группой входов блока элементов ИЛИ, вход пуска ; устройства соединен с управляющим ВХОДОМ генератора тактовых импульсов , ВЫХОД первого блока памяти зон микрокоманд соединен с первым инфор , мационным ВХОДОМ регистра микрокоманд , ВЫХОД микроопераций которого ЯВЛЯЕТСЯ ВЫХОДОМ микроопераций устройства , ВЫХОД кода логических условий регистра микрокоманд соединен с управлвтеидам входом мультиплексора логических условий, вход логических УСЛОВИЙ устройства соединен с информационным ВХОДОМ мультиплексора логических УСЛОВИЙ, отличающееся тем, что, с целью снижения аппаратных затрат, в устройство введены (N-1) блоков памяти зон микрокоманд, где N - количество зон, образующих операционную часть микрокоманды , N регистров выбора стра (Л ницы, блок контроля по мо)дулю два, блок памяти КОДОВ настройки, причем с -ВЫХОД регистра адреса соединен .с первыми адресными входами всех блоков памяти зон микрокоманд, выход каждого 4 vo блока памяти зон микрокоманд (где i от 2 до N ) ссо единен с i -м информационным входом регистра микрокоманд, внходы микро05 :операций, конца команды и логичес:л ких условий регистра микрокоманд соединены соответственно с первг-м, 30 СП ел вторым и третьим информационными входами блока контроля по модулю два ВЫХОД конца команды регистра микрокоманд соединен с вторыми входами второго блока элементов И, вторыми входами первого блока элементов И и первым ВХОДОМ элемента И, выход муль типлексора. логических условий и вы ход модифицируемых разрядов блока памяти а,цресов микрокоманд соединены соответственно с первыми вторым входами элемента ИЛИ, выход которого соединен с вторым входом элемента И, первый и второй выходы блока контроля по модулю два соединены соответственно с ВЫХОДОМ прерывания устройства и с управляющим входом блока па
СОЮЗ СОВЕТСНИХ
СОЦИАЛИСТИЧЕСНИХ
РЕСПУБЛИН (19) (11) А
g(5O 0 0 б F 9/22, и 06 F 11/00
ОПИСАНИЕ ИЗОБРЕТЕНИЯ ."
H АВТОРСКОМУ СВИДЕТЕЛЬСТВ
ГОСУДАРСТВЕННЫЙ НОМИТЕТ СССР
ПО ДЕЛАМ ИЗОБРЕТЕНИЙ И ОТНРЫТИЙ (21) 3484670/18-24 (22 ) 12. 08 ° 82 (46) 07.01.84. Бюл. 9 1 (72) В.П. Супрун, А.И. Кривоносов, Г.Н. Тимонькин, В.С. Харченко, Н.П. Благодарный и М.П. Ткачев (53) 681.3(088.8) (56) 1. Авторское свидетельство СССР
Р 419893, кл. G 06 F 9/22, 1972.
2. Авторское свидетельство СССР
P 830386, .кл. G 06 F 9/22, 1979.
3. Авторское свидетельство СССР по заявке Р 3211181/18-24, кл. G 06 F 9/22, 1980.
4. Авторское свидетельство СССР
9 913378, кл. G 06 F 9/22, 1980 (прототип). (54)(57) МИКРОПРОГРАММНОЕ УСТРОЙСТВО
УПРАВЛЕНИЯ, содержащее блок памяти ,адресов микрокоманд, первый блок памяти зон микрокоманд, регистр адреса, регистр микрокоманд, первый регистр выбора страницы, мультиплексор логических условий, первый и второй блоки элементов И, блок элементов ИЛИ, элемент И, элемент ИЛИ и генератор тактовых импульсов, при- . чем выходы регистра адреса и первого регистра выбора страницы соединены соответственно с первыми и вторыми адресными входами блока памяти адресов микрокоманд, выход немодифицированных разрядов которого соединен с первыми входами первого блока эле-. ментов И, выходы первого блока элементов И и элемента И соединены с первой группой входов блока элементов ИЛИ, выход которого соединен с информационным входом регистра адреса, вход начального адреса устройства соединен с первыми входами второго блока элементов И, выход которого соединен с второй группой входов блока элементов ИЛИ, вход пуска, устройства соединен с управляющим входом генератора тактовых импульсов, выход первого блока памяти зон микрокоманд соединен с первым информационным входом регистра микрокоманд, выход микроопераций которого являе-.ся выходом микроопераций устройства, выход кода логических условий регистра микрокоманд соединен с управляющим входом мультиплексора логических условий, вход логических условий устройства соединен с информационным входом мультиплексора логических условий, о т л и ч а ю щ ее с я тем, что, с целью снижения аппаратных затрат, в устройство введены (М-1) блоков памяти зон микрокоманд, где N — количество зон, образующих операционную часть микрокоманды, N регистров выбора страницы, блок контроля по мо)(улю два, блок памяти кодов настройки, причем .-выход регистра адреса соединен С. первыми адресными входами всех блоков памяти зон микрокоманд, выход
\ каждого 1 †.го блока памяти зон микрокоманд (где — от 2 до К ) сс :единен с q -м информационным входом регистра микрокоманд, выходы микроопераций, конца команды и логических условий регистра микрокоманд соединены соответственно с перв .м, вторым и третьим информационными входами блока контроля по модулю два
У выход конца команды регистра микрокоманд соединен с вторыми входами второго блока элементов И, вторыми входами первого блока элементов И и первым входом элемента И, выход мультиплексора.логических условий и выход модифицируемых разрядов блока памяти ацресов микрокоманд соединены соответственно с первым и вторым вхоцами элемента ИЛИ, выход которого соединен с вторым входом элемента И, первый и второй выходы блока контро.ля по модулю два соединены соответственно с выходом прерывания устройства и с управляющим входом блока па1065855 мяти кодов настройки, первый выход которого является выходом общего отказа устройства, вход начального адреса устройства соединен с информационным входом блока памяти кодов настройки, второй выход которого соединен с информационными входами всех регистров выбора страницы, выход s -го регистра выбора страницы соединен с вторым адресным входом
Изобретение относится к цифровой вычислительной технике и может быть использовано при проектировании микропрограммных устройств управления
3BN и вычислительных систем, устойчивых к отказам.
Известно микропрограммное устройство, содержащее блок памяти адресных микрокоманд, блок памяти операционных микрокоманд, регистры. адреса и микрокоманд, элементы И и
ИЛИ„ генератор тактовых импульсов f1).
Недостаток указанного устройства — низкая достоверность функционирования, обусловленная отсутствием средств контроля выполнения микропрограмм.
Известно также микропрограммное устройство управления с контролем функционирования, содержащее блок памяти микрокоманд, регистр адреса, регистр микрокоманд, блок проверки
I логических условий, узел контроля на четность, генератор тактовых импульсов, элементы И и ИЛИ f2) .
Недостаток указанного устройства— низкая отказоустойчивость, которая обусловлена отсутствием средств коррекции микропрограмм при обнаружении сбоев или устойчивых отказов в устройстве. 30
Известны микропрограммные устройства управления, имеющие средства контроля и защиты от сбоев. Кроме того, известно устройство, содержащее блок памяти микрокоманд, регист- 35 ры адреса и микрокоманд, буферный регистр, блок контроля, элементы И и ИЛИ, генератор тактовых импульсов (3) .
Недостаток укаэанных устройств — 40 их низкая устойчивость к постоянным отказам элементов. структуры устройств, что ограничивает область их применения.
Кроме того, общим недостатком 45 рассмотренных устройств является низкая гибкость компоновки микропрограмм, связанная с невозможностью (j -1)-го блока памяти зон микрокоманд, первый выход генератора тактовых импульсов соединен с входами синхронизации регистра адреса, всех регистров выбора страницы и входом синхронизации блока контроля по модулю два, второй выход генератора тактовых импульсов соединен с входом синхронизации регистра мик. рокоманд. формирования расширенного множества микрокоманд из ограниченного набора операционных кодов, что приводит к большому объему аппаратуры.
Наиболее близким к предлагаемому является микропрограммное устройство управления, содержащее блок памяти адресов микрокоманд, первый блок памяти зон микрокоманд, регистр адреса, регистр микрокоманд, первый регистр выбора страницы, мультиплексор логических условий, первый и второй блоки элементов И, блок элементов ИЛИ, элемент И, элемент ИЛИ и генератор тактовых импульсов, причем выходы регистра адреса и первого регистра выбора страницы соединены соответственно с первыми и вторыми адресными входами блока памяти адресов микрокоманд, выход немодифицированных разрядов которого соединен с информационными. входами первого блока элементов И, выходы первого блока элементов И и элемента И соединены с первым входом блока элементов ИЛИ, выход которого соединен с информационным входом регистра адреса, вход кода операции устройства соединен с информационным входом второго блока элементов И, выход которого соединен с вторым входом блока элементов ИЛИ, вход пуска устройства соединен с управляющим входом генератора тактовых импульсов, выход первого блока памяти .зон микрокоманд соединен с первым информационным входом регистра микрокоманд, выход микроопераций которого является выходом микроопераций устройства, а выход кода логических условий соединен с управляющим входом мультиплексора логических условий, вход логических условий устройства соединен с информационным входом мультиплексора логических условий (4) .
Недостатками известного устройства являются большой объем аппара1065855 турных затрат и низкая надежность, которые вызваны низкой гибкостью устройства, обусловленной тем, что структура устройства. не обеспечивает многократной интерпретации множества хранимых микрокоманд (микрокомандного базиса).
Цель изобретения - снижение аппаратурных затрат устройства.
Указанная цель достигается тем, что микропрограммное устройство управления, содержащее блок памяти адресов микрокоманд, первый блок памяти зон микрокоманд, регистр адреса, регистр микрокоманд, первый регистр выбора страницы, мультиплексор логических условий, первый и второй блоки элементов Й, блок .элементов
ИЛИ, элемент И, элемент ИЛИ и генератор тактовых импульсов, причем выходы регистра адреса и первого регистра выбора страницы соединены соответственно с первыми и вторыми адресными входами блока памяти адресов микрокоманд, выход немодифицированных разрядов которого соединен с первыми входами первого блока элементов И, выходы первого блока элементов И и элемента И соединены с первой группой входов блока элементов ИЛИ, выход которого соединен ЗО с информационным входом регистра адреса,.вход начального адреса устройства соединен с первыми входами второго блока элементов И, выход которого соединен с второй группой 35 входов блока элементов ИЛИ, вход пуска устройства соединен с управляющим входом генератора тактовых импульсов, выход первого блока памяти зон микрокоманд соединен с первым 4О информационным входом регистра микрокоманд, .выход микроопераций которого является выходом микроопераций устройства, выход кода логических условий регистра микрокоманд соединен с управляющим входом мультиплексора логических условий, вход логических условий устройства соединен с информационным входом мультиплексора логических условий, дополнительно содержит (N -1) блоков памяти зон микрокоманд, где N — количество зон, образующих операционную часть микрокоманды, М регистров выбора страницы, блок контроля по модулю два, блок памяти кодов настройки, причем выход регистра адреса соединен с первыми адресными входами всех блоков памяти зон микрокоманд, выход каждого -го блока памяти зон микрокоманд (где л - от 2 до К ) соединен 60 с и -м информационным входом регистра микрокоманд, выходы микроопераций, конца команды и логических условий регистра микрокоманд соединены соответственно с первым, вторым
) и третьим информационными входами блока контроля по модулю два, выход
-конца команды регистра микрокоманд соединен с вторыми входами второго блока элементов И, вторыми входами первого блока элементов И и первым входом элемента И, выход мультиплексора логических условий и выход модифицируемых разрядов блока памяти адресов микрокоманд соединены соответственно с первым и вторым входами элемента ИЛИ, выход которого соединен с вторым входом элемента И, первый и второй выходы блока контроля по модулю два соединены соответственно с выходом прерывания устройства и с управляющим входом блока памяти кодов настройки, первый выход которого является выходом общего отказа устройства, вход начального адреса устройства соединен с информационным входом блока памяти кодов настройки, второй выход которого соединей с информационными входами всех регистров в 1бора страницы, выход i --го регистра выбора страницы соединен с вторым алресным входом (a -1)-го блока памяти зон микрокоманд, первый выход генератора тактовых импульсов соединен с входами синхронизации регистра адреса, всех регистров выбора страницы и входом синхронизации блока контроля по модулю два, второй выход генератора тактовых импульсов соединен с входом синхронизации регистра микрокоманд.
Сущность изобретения состоит в снижении аппаратурных затрат и повышении надежности путем декомпозиции операционных частей микрокоманд и их хранения в специальных БИС памяти, при этом микрокомандный базис формируется на уровне зон операционных частей микрокоманд, композиции операционных микрокоманд из их частей, хранимых дифференцированно, резервирования наиболее важных (ба.зовых) операционных частей микрокоманд и соответствующих им систе:..ных настроечных функций, реконфигурации микрокомандного базиса при физических отказах элементов структуры, соответствующих операционным частям микрокоманд.
В устройстве каждый код микрокомандного базиса Y представляется в виде композиции э 7э э где ".,, j g g,g — части кодов операционнйх микрокоманд, которые хранятся в отдельных БИС памяти.
Это позволяет при расширении набора макрофункций не увеличивать объем хранимых кодов операционных микрокоманд, а хранить лишь специальные настроечные колы, которые
1065855
65 указывают номера страниц соответствующих БИС памяти. Тогда требуемаЯ .микрокоманда формируется из отдельных частей кодов у, хранимых в различных блоках памятй. Поскольку различные микрокоманды, как первоначально сформированные, так и Формируемые при расширении набора макрофункций, состоят из повторяющихся кодов У„, то это дает возможность. уменьшить ребуемый объем блоков памяти, а также испольэовать высвободившиеся ячейки для резервирования базовых частей операционных микрокоманд. Тогда при отказе ячеек блоков памяти изменяется настро ечный код, который позволяет обойти этот отказ путем перехода к работе с другими страницами БИС памят.и .
На фиг. 1 приведена функциональная схема микропрограммного устройства управления; на фиг. 2 функциональная схема блока памяти кодов настройки; на фиг. 3 †-то же, блока контроля по модулю два.
Микропрограммное устройство управления (фиг. 1) содержит блок 1 памяти адресов микрокоманд, Б блоков 2 памяти зон микрокоманд, (М + 1) регистров 3 выбора страницы, регистр 4 адреса, регистр 5 микрокоманд с зонами: 5.1 — зона сигнала "Конец команды", 5.2 — зона микроопераций и 5.3 — зона кода логических условий; мультиплексор 6 логических условий, генератор 7 тактовых импульсов, блок 8 памяти кодов настройки, блок 9 контроля по модулю два, второй и первый блоки 10 и 11 элементов И соответственно, элемент И 12, блок
13 элементов ИЛИ, элемент ИЛИ 14.
Вход 15 начального адреса соединен с информационным входом блока 8 .памяти кодов настройки и первыми входами. второго блока 10 элементов И. Выход зоны 5.2 регистра 5 микрокоманд подключен к первому информационному входу блока 9 контроля по модулю два и к выходу 16 микроопераций устройства. Вход 17 логических условий устройства подключен к информационному входу мультиплексора б логических условий, управляющий вход которого соединен с выходом зоны 5.3 регистра 5 микрокоманд и с третьим входом блока
9 контроля по модулю два, первый выход которого образует выход 18 прерывания устройства. Вход 19 пуска устройства подключен к управляющему входу генератора 7 тактовых импульсов. Первый выход блока 8 памяти кодов настройки подключен к вы)соду 20 общего отказа устройства, 5
Второй выход 21 блока 9 контроля по модулю два соединен с управляющим входом блока 8 памяти кодов настройки, второй выход которого соединен с информационными входами первого — (Ц +1)-го регистров 3 выбора страницы, входы синхронизациц которых соединены с входом синхро« низации регистра 4 адреса, входом синхронизации блока 9 контроля по модулю два и с первым выходом генератора 7 тактовых импульсов, второй выход которого соединен с входом синхронизации регистра S микрокоманд. Выход регистра 4 адреса соединен с первыми адресными входами блока 1 памяти адресов микрокоманд и В блоков 2 памяти зон микрокоманд, вторые адресные входы которых соединены с выходами (1+1)-го регистров 3 выбора страницы. Выходы
Ц блоков 2 памяти зон микрокоманд соединены с информационными входами регистра 5 микрокоманд, выход зоны
5.1 которого соединен с вторым информационным входом блока 9 контроля по модулю два, с вторыми входами второго блока 10 элементов И и с вторыми входами первого блока 11 элементов И и.элемента И 12, первый вход которого соединен с выходом элемента ИЛИ 14, первый вход которого соединен с выходом мультиплексора б логических условий.
Немодифицируемый выход блока 1 памяти адресов микрокоманд соединен с первыми входами первого блока 11 элементов И, выход которого и выход элемента И 12 соединены с первым входом блока 13 элементов ИЛИ, второй вход которого соединен с выходом второго блока 10 элементов И, модифицируемый выход блока 1 памяти адресов микрокоманд соединен с вторым входом элемента ИЛИ 14, а выход блока 13 элементов ИЛИ - с информационным входом регистра 4 адресов.
Блок 8 памяти кодов настройки (фиг. 2) содержит накопитель 22 кодов настройки, мультиплексор 23 модифицирующего разряда, регистр
24 отказов, дешифратор 25, триг
rep 26, элементы И 27 и 28, элемент
ИЛИ 29, элемент 30 задержки, вход
31 немодифицированных разрядов.
Блок 9 контроля по модулю два (фиг. 3) содержит сумматор 32 по модулю два, триггер 33, элементы И
34-37 и элементы 38 и 39 задержки.
Назначение основных функциональных элементов микропрограммного устройства управления состоит в следующем.
Регистр 4 адреса предназначен для хранения относительного адреса частей микрокоманд внутри стра1065853 ниц, содержащихся в блоке 1 памяти адресов микрокоманд и,B первомЦ -м блоках 2 памяти зон микрокоманд, записываемых в. соответствующие поля регистра 5 при формировании микрокоманд..
Первый регистр 3 выбора страницы служит для хранения базового адреса страницы адресов микрокоманд и выдачи его на вторые адрес.ные входы блока 1 памяти адресов микрокоманд. Блок 1 памяти адресов микрокоманд предназначен для хранения относительных адресов частей микрокоманд, хранимых в первом » я -м блоках 2 памяти зон микрокоманд.
При этом информация об относительном адресе каждой части микрокоманд в блоке 1 записана дважды. Блоки 1 и 2 являются запоминающими устройствами статического типа и могут быть построены на ьыкросхемах
К541РТ1.
Блок 10 элементов И служит для управления передачей начального адреса (кода операции) с входа 15 .устройства через блок 13 элементов
ИЛИ на информационные входы регистра 4 адреса.
Блок 11 элементов И предназначен для уаравления передачей кода относительного адреса участков микрокоманд с выхода блока 1 через блок 13 элементов ИЛИ на регистр 4 адреса в процессе выполнения.микропрограммые
Элемент ИЛИ 14 служит для модификации младшего разряда относительно адреса сигналом с выхода мультиплексора б логических условий.
Элемент И 12 служит для передачи младшего разряда относительного адреса с выхода элемента ИЛИ 14 через соответствующий элемент ИЛИ блока
13 элементов ИЛИ на младший разряд регистра 4 адреса.
Первый - М -й блоки 2 памяти зон .микрокоманд предназначены для хранения частей микрокомаид. Весь объем памяти каждого блока 2 разбит на страницы.
Выходы каждого из блоков 2 соединены с информационными входами соответствующих им полей регистра 5 микрокоманд. Например, выходы первого блока 2 соединены с первым информационным входом регистра 5 микрокоманд»
Регистр 5 служит для формирования микрокоманды из частей микрокоманд, считываемых из блоков 2, и выдачи сигналов микроопераций с по,ля 5.2 на выход 16 микроопераций устройства, с полей 5 ° 1 и 5.2 - .на блок 9 контроля по модулю два и кода логических условий, с поля 5.3на блок 9 и на управляющие входы
10 мультиплексора 6 логических условий. Генератор 7 тактовых имп„льсов служит для формирования импульсов, синхронизирующих процесс функционирования устройства.
Блок 9 контроля по модулю два служит для контроля правильности формирования очередной микрокоманды. В .случае сбоя- или отказа при формировании микрокоманды блок 9 выдает сигнал на выхбд 18 прерывания устройства и сигнал ошибки на управляющий вход блока 8.памяти кодов настройки.
Блок 9 контроля по модули два функционирует следующим образом.
В исходном состоянии триггер 33 находится в нулевом состоянии (цепи начальной установки триггера 33 на схеме условно не показаны). Сумматор
32 по модулю два проверяет на нечетность сформированную в регистре 5 микрокоманду путем суммирования всех ее разрядов по модулю два. При правильно сформированной микрокоманде сигнал на выкоде сумматора 32 отсутствует, и наоборот. Очередной тактовый импульс поступает на управляющий вход. блока 9 контроля по модулю два и опрашивает содержимое сумматора 32.
Если микрокомаида сформирована-правильно, то сигнал на выходе сумматора 32, а следовательно, и элемента И
34 отсутствует. При формировании последней микрокоманды микропрограммы
35 на входе блока 9 контроля по модулю два появляется сигнал микрооперации
"Конец команды" . При наличии сигнала на управляющем входе блока 9 контроля по модулю два на выходе элемен40 та И 35 появляется сигнал, который поступает на элемент 38 задержки.
Его время задержки ь З8 равно сумме времени проверки сутжатором 32 микрокоманды на нечетность, времени
4 срабатывания элемента И 34 и времени переключения триггера 33.
Если все микрокоманды микропрограммы сформированы правильно, то на выходе элемента И 36 появляется Сигнал нормы. Если хотя бы одна из микрокоманд сформирована неправильно, то сигналом с выхода элемента И 34 триггер 33 переводится в единичное состояние. На выходе 18 прерывания устройство при этом появляется сигнал прерывания и устройство переводится в режим повторного выполнения микропрограммы. При этом текущая микропрограмма выполняется до конца, а затем по адресу на входе 15 уст60 ройство запускается для повторного выполнения данной микропрограммы.
Если при первом повторном выполнении микропрограммы ее микрокоманды формируются без искажений, то сигнал на выходе элемента И 34 не
1065855
10 появляется. Триггер 33 остается в нулевом состоянии и с поступлением тактового импульса на управляющий вход и сигнала "Конец команды" на вход блока 9 контроля по модулю два на выходе элемента И 36 появляется 5 сигнал, подтверждающий правильность формирования микропрограммы. Он поступает через выход 21 на управляющий вход блока Я памяти кодов настройки в качестве сигнала "Норма". )Q
Если при первом повторном выполнении микропрограммы хотя бы одна из микрокоманд сформирована неправильно, то на выходе сумматора 32 появляется единичный сигнал. Г!ри этом по описанному выше алгоритму на выходе элемента И 37 появляется сигнал ошибки.
Элемент 32 задержки служит для формирования сигнала установки триггера 33 в нулевое состояние с задерж. кой на время, необходимое для передачи сигнала о наличии ошибки в IvIHK ропрограмме ч рез элемент И 37 в блок 8 памяти кодов настройки.
Мультиплексор 6 логических условий служит для формирования по ко-дам поступающим HR управ.пяющие Вхо ды„ значений проверяемых логических. условий, поступающих на информационный вход мультиплексора. зо
Блок Я памяти кодов настройки (фиг. 2) предназна -.ен для адаптивной замены основных страниц блоков 2 резервными страницами при возникновении отказов частей микрокоманды, хранимых на основны>: страницах.
Назначение основных функциональных элементов блока 8 памяти кодов настройки состоит в следующем.
Е!акопитель 22 памяти кодов наст- 4О ройки служит для хранения кодов адресов основных и резервных страниц частей микрокоманд. Элемент ИЛИ 29 служит для модификации младшего разряда с целью получения адреса, по которому в накопителе 22 записан код адреса резервных страниц блоков 2.
Мультиплексор 23 модифицирующего разряда служит для формирования сигнала, модифицирующего младший 50 разряд адреса, поступающего на накопитель 22. Элемент И 28 позволяет формировать сигнал общего отказа устройства при отказе как основной, так и резервной страниц, соответствующих одной и той же микропрограмме.
Дешифратор 25 предназначен для формирования двоичного унитарного кода, соответствующего номеру основной страницы, в которой имеется >О отказ. Регистр 24 отказов служит для хранения номеров основных страниц, в которых в процессе функционирования устройства появились отказы.
Триггер 26 служит для фиксации фак- 65 та неправильного формирования хотя бы одной микрокоманды в процессе выполнениь микропрограммы. Элемент
27 служит для формирования сигнала отказа страницы, соответствующего факту неправильного формирования микрокоманды при повторном выполнении микропрограммы. Элемент 30 задержки позволяет формировать сигнал на управляющий вход дешифратора 25 при исчезновении импульса на выходе элемента И 27, что исключает прохождение сигнала на выход 20 блока 8 при обнаружении отказа основной страницы. Время задер>кки элемента 30 задер>кки при этом выбирается более или равным длительности тактовых импульсов на первом выходе генератора 7 тактовых импульсов. Такой
-выбор величины задержки включает возможность формирования на выходе
20 устройства ложного сигнала общего отказа устройства.
Микропрограммное устройство управления (фиг. 1) функционирует следующим образом.
В исходном состоянии регистры 3 и 4 обнулены, на выходах 5.2 и 5 ° 3 регистра 5 установлены нули, а на выходе 5.1 регистра 5 — единичный сигнал. На вход 15 устройства поступают параллельно код операции и адрес кода настройки.
Код операции поступает на инфор мационный вход регистра 4 через второй блок 10 элементов И и блок 13 элементов ИЛИ, а адрес кода настройки — на информационный вход блока 8 памяти кодов настройки. При этом из накопителя 22 в соответствии с поступившим адресом выбирается код настройки устройства на выполнение заданной микропрограммы для записи в регистры 3 выбора страницы, в каждом из блоков 1 и 2 выбирается страница, части микрокоманд который будут использоваться при формировании микрокоманд микропрограммы. При поступлении сигнала пуска на вход 19 устройства генератор 7 начинает формнровать на первом и второ>! выходах импульсы, сдвинутые друг относительно друга. После окончания действия импульса на первом выходе генератора 7 в регистр 4 запишется код операции, а в регистры 3 — коды страниц. Эти коды с регистров 3 поступают на вторые адресные входы блоков
1 и 2, выбирая при этом номера используемых страниц. На первые адресные входы блоков 1 и 2 при этом поступает код с регистра 4 адреса.
Этот код и задает номе ячейки памяти внутри страницы, определяемой кодом, записанным в регистрах 3.
Выбранные адреса последующих микрокоманд микропрограммы из блока 1 поступают на первый блок 11 э.лемен106585 л тов И и на элемент И 12 через элемент ИЛИ 14. Выбранные части микрокоманды из М страниц блоков 2 после действия импульса с второго выхода генератора 7 записываются в соответствующие зоны регистра 5 микрокоманд, формируя таким образом целую микрокоманду. Сигналы микроопераций с поля 5.2 регистра 5 поступают на выходы 16 микроопераций устройства, код проверяемого логического условия с поля 5.3 подается на мультиплексор 6 и проверяет значение од-. ного из логических условий, поступающих на входы 17 логических условий устройства. Сигнал с выхода мульти- 35 плексора 6 модифицирует на элементе ИЛИ 14 значение младшего разряда адреса очередной микрокоманды. Так как в поле 5.1 регистра 5 присутствует единичный сигнал только в yg последней микрокоманде микропрограммы, а в остальных он равен нули, то модифицированный адрес очередной микрокоманды с выхода первого блока 11 элементов И и элемента И 12 поступает через блок 13 элементов ИЛИ на информационные входы регистра 4 адреса. Кроме того, код, сФормированный на регистре 5 микрокоманд (поля
5.1, 5.2 и 5.3), поступает на блок 9 3g контроля по модулю два. Если микрокоманда выдана правильно, то в схемеблока 9 контроля по модуло два никаких сигналов не формируется и устройство переходит к выборке очередной микрокоманды. При формировании последней микрокоманды микропрограммы в поле 5.1 регистра 5 появляется единичный сигнал. При этом открываются элементы И 10 и код операции с входа 15 устройства поступает на информационные входы регистра 4.
Далее устройство функционирует.аналогично описанному выше алгоритму.
Если при Формировании микрокоман- 45 ды произошел сбой или отказ, то блок
9 контроля по модулю два выдает на выход 18 сигнал прерывания.
После появления сигнала "Конец команды" блок 9 контроля по модулю два выдает сигнал ошибки, который с выхода элемента И 37 через выход
21 поступает на Т-вход триггера 26 блока 8 памяти кодов настройки. По заднему фронту этого импульса триггер 26 установится в единичное состояние, фиксируя факт неправильного выполнения микропрограммы. Одновременно устройство переходит в режим повторного формирования микропрограммы, .т.е..на входе 15 появляется 60 предыдущий код операции. Если при повторном прогоне микропрограммы искажения формируемых на регистре 5 микрокоманд блок 9 контроля по модулю два не обнаруживает, то устройч 65 ство далее Функционирует аналгтл tно описанному выше алгоритму, а триггер 26 устанавливается в нуль сигналом на егo P.-âõîäe, Kol Aphlli формируется на выходе элемента l| 36 блока 9 и через выход 21 поступает в блок 8 памяти кодов настройки.
Если >ке при повторном прогоне микропрограммы снова обнаруживается ее искажение, то на выходе 21 блока 9 контроля по модулю два вновь поянляется сигнал ошибки. По этому сигналу на выходе элемента И 27 блока
8 памяти кодов настройки появляется сигнал, идентифицирующий отказ ос" новных страниц зон микрокоманд гекущей настройки, а триггер 26 перебросится в нулевое состояние в конце действия сигнала на его T-входе.
Через время запускается децифратор 25 и записывает в регистр 24 единицу в тот его разряд, который соответствует номеру отказавшей
l страницы <ее код присутствует на информационном входе дешифратора 25).
Ло адресу кода настройки, задаваемому извне через вход 15, и по коду номера отказавшей страницы муль типлексор 23 формирует сигнал модификации младшего разряда адреса кода настройки. При этом из накопителя 22 выбирается код настройки, соответствующий резервным страницам в блоках
2 памяти 3QH микрокоманд.
Если в процессе функционирования происходит неправильное Формирование микрокоманд с использованием резервных страниц частей микрокоманд, то устройство работает следующим образом.
В первый раз неверное формирование микрокоманды в регистре 5 воспринимается как сбой и приводит к повтору исполнения микропрограммы, а ее повторное неверное значение обуславливает, как и в предыдущем случае, выработку сигнала на выходе элемента И 27 блока 8 памяти кодов настройки, который поступает на первый вход элемента И 28. Так как основная страница для данной микропрограммы имеет отказ, зафиксированный в регистре 24 отказов, и на выходе мультиплексора 23 при этом выработан сигнал, разрешающий срабатывание элемента И 28, то на первом выходе блока 8 формируется сигнал, поступающий на выход 20 общего отказа устройства.
Предлагаемое устройство существенно превосходит прототип (базовый объект) в гибкости формируемого микрокомандного базиса, что обуславливает его высокую экономичность и надежность, которые позволяют использовать изобретение в системах с повышенной отказоустойчивостью и изменяемым набором макрофункций.
1065855
1065855
Фиг.
ВНИИПИ 3 акаэ ЦО46/49 Тираж 70Е Подписное
Филиал ППП "Патент", r. Ужгород, ул. Проектная, 4