са и входом блокировки блока синхронизации, вход запуска блока синхронизации является входом запуска устройства, а вход останова соединен с выходом триггера ошибки, информационный вход триггера ошибки соединен ,с выходом элемента ИШ, пер вый вход которого соединен с выходом ошибки блока свертки по модулю два, отличающееся тем, что, с целью повышения достоверности контроля, в него введены счетчик зон памяти микрокоманд и мультиплексор контроля, информационные входы которого соединены с выходами соответствующих зон блока памяти микро- оманд, управляющие входы мульти- .
Изобретение относится к вычислительной технике и может быть использовано для повьш1ения надежности вычислительных систем с микропрограммным управлением.
Целью изобретения является повышение достоверности контроля.
На фиг.i представлена функциональная схема г-шкропрограммного устройства управления с контролем; на фиг.2 - то же, блока коммутации адреса; на фиг.3 - то же, блока декодирования; на фиг. 4 - то же 5. блока синхронизации; на фиг.5 - то же, блока свертки по модулю два;, на фиг,6 - то же,блока формирования контрольной суммы: на фиг,7 - временные диаграммы работы устройства в режиме контроля.
Микропрограммное устройство управления с контролем содержит (фиг. блок 1 памяти микрокоманд, первый 2 и второй 3 счетчики команл, блок 4 коммутации адреса, элемент ИЗ, элемент ИЛИ 6, триггер 7 признака контроля, триггер 8 ошибки, регистр 9 адреса, регистр 10 микрокоманд, блок ,1 декодирования, блок 12 синхронизации, блок 13 свертки по модулю два, блок 14 формирования контрольной суммы, счетчик 15 зон памяти микрокоманд, мультиплексор 16 контроля, первый вход 17 блока 13 вьпсод 18 адреса микрокоманд устройплексора контроля соединены с соответствующими выходами разрядов счетчика зон памяти микрокоманд, а выход подключен к информационному входу блока формирования контрольной суммы, разрешающий вход которого соединен с выходом триггера признака контроля, а выход ошибки блока формирования контрольной суммы соединен с вторым входом элемента ИЛИ, выход переполнения счетчика зон памяти микрокоманд соединен с вторым входом элемента И, а входы сброса и синхронизации соединены соответственно с третьим вькодо м блока коммутации адреса и выходом переполнения первого счетчика команд.
стоа, второй вход 19 блока 13, выход 20 микрокоманд устройства, вход 21 записи переноса блока 14, информационный вход 22 блока 11, первый
23 и )зторой 24 выходы блока 1 1 ,
третий выход 25 блока i, выходы 26- 3 блока 123 первый 32, второй 33 и гретий 34 выходы блока 4, четвертый выход 35 блока 4, первый информационный вход 36 блока 4, вход 37 записи ошибки блока 14;. второй информационный вход 38 блока 4, второй управляющий вход 39 блока 4, разрешаюш 1Й вход 40 блока 14, вход
41 блокировки блока 12, вход 42 запуска блока 12, вход 43 останова блока 12, выход 44 ошибки блока 13, информационный вход 45 блока 4, вы- код 46 ошибки блока 14,
Блок 4 коммутации адреса (фиг.2) содержит мультиплексор 47 адреса и элементы ИЛИ 48, 49,50.
Блок 11 декодирования (фиг.З) содержит трн дешифратора 51, 52, 53
кода микроопераций.
Блок 12 синхронизации (фиг.4) содержит синхронизатор 54 и элемент ИШ. 55.
Блок 13 свертки пр модулю два
(фиг,5)содержит сумматор 56 по модулю два и схему 57 сравнения.
Блок 4 формирования контрольной cji MMH (фиг. 6) содержит унив ер- сальн1.1й сумматор 58, мультиплексоры
59, 60, мультиплексор 61 признаков, регистры 62, 63, накапливающий регистр 64 результата, триггер 65 нуля результата, триггер 66 переноса.
Блок памяти хранит микрокоманды и по адресу с регистра 9 адреса микрокоманд и синхросигналу на тактовом, входе выдает их в регистр Ю микрокоманд.
Первый счетчик 2 команд предназначен для адресации блока 1 в режиме контроля и перехода на микроподпрограмму контроля по адресу перехода, приходящего на информационный вход. Второй счетчик 3 команд осуществляет адресацию блока 1 памяти при работе по основной микропрограмме.
Блок 4 коммутации адреса производит выдачу адреса микрокоманд в регистр 9 адреса либо с первого 2 либо с второго 3 счетчиков команд в зависимости от состояния триггера 7 признака контроля, а также управляет режимами работы счетчиков 2 и 3; при нулевом состоянии триггера 7 признака контроля счетчик 2 находится в режиме хранения, а счетчик 3 - в режиме счета, при единичном состоянии триггера 7 наоборот.
Триггер 7 признака контроля осуществляет управление работой всех блоков в режиме контроля.
Триггер 8 ошибки предназначен для индикации четной или нечетной ошибки блока 1 в режиме контроля и выработки строба останова синхронизатора при наличии этих ошибок.
Регистр 10 микрокоманд предназначен для записи микрокоманд по синхро импульсу на тактовом входе и их хранению.
Блок 11 декодирования осуществляет дешифрацию кода микроопераций и выработку трех управляющих стробов: настройки блока 14, загрузки счетчика 2 адресом перехода и установки триггера 7 признака контроля в состояние высокого уровня.
Блок 12 синхронизации по сигналу запу ска на входе 42 осуществляет управление работой всех блоков устройства путем выработки серий синхро импульсов.
Блок 14 формирования контрольной суммы предназначен для выполнения операции контрольного суммирования с циклическим переносом в режиме контроля.
117254
Блок 13 свертки осущестЕзляет кон- троль по модулю два адреса и микрокоманды и выработку сигнала нечетной ошибки при обнаружении ошибки. 5 Счетчик 15 зон памяти микрокоманд осуществляет управление мультиплексором 16 контроля и адресацию зон памяти.
Мультиплексор 16 контроля пред- 10 назначен для согласован 1я разрядности блока 14 и блока 1 и ввода контролируемых микрокоманд в блок 14 по зонам: сначала суммируются все микрокоманды первой зоны памя- 15 ти, потом второй и т.д.
Устройство работает образом.
В исходном состоянии триггер 7 признака контроля памяти микроко- 20 манд обнулен, а устройство работает по основной микропрограмме,
В этом режиме работы устройства адресация блока I памяти микрокоманд идет по первому синхроимпуль- 25 су с второго 3 счетчика команд, первый 2 счетчик команд находится в режиме хранения.
г
Режим контроля блока 1 памяти микрокоманд начинается после записи
в регистр 10 микрокоманд (фиг.) микрокоманды условного перехода с возвратом на микроподпрограмму контроля (фиг.7, диаграммы 1 и 2). Эта микрокоманда имеет в своем фор35 мате два поля: первое поле адреса, содержащее 12-разрядный адрес перехода, равный 000(5 который с первого выхода регистра 10 поступает на информационный вход первого счет40 чика 2 (фиг.7, диаграмма З); и второе поле кода микроопераций, после декодирования которого на выходах 23, 24 и 25 блока 11 декодирования появляются три управляющих строба.
45 Пока триггер 7 признака контроля обнулен (фиг.7, диаграмма 5), по стробу загрузки и сброса происходит загрузка первого счетчика 2 адресом перехода и обнуление тригге50 ра 8 ошибки, триггеров 65,66 и регистров 62, 63, 64 блока 14.
Одновременно с этим по первому синхроимпульсу происходит модификация второго счетчика 3 на +1 с
55 запоминанием на нем адреса возвра- та в основную микропрограмму (фиг.7, диаграмма 4). После этого по второму синхроимпульсу и стробу установки на выходе 23 блока 1 осуществляется установка триггера 7 признака контроля в состояние высокого уровня, что означает переход первого счетчика 2 в режим счета по первому синхроимпульсу, переход второго счетчика 3 в режим хранения адреса возврата и блокировку записи контролируемых микрокоманд в регистр 10 микрокоманд с помовдью элемента ИЛИ 55 блока 12 синхронизации. Адрес контролируемой микрокоманды поступает с информационного выхода пе вого счетчика 2 через блок 4 коммутации адреса на информационньш вход регистра 9 адреса микрокоманд и по третьему синхроимпульсу (фиг . 7 ,, диаграмма 6) записьшается в него, С в хода регистра 9 этот адрес поступает для контроля его корректности.на первый вход 17 блока 13 свертки по модулю два.
По четвертоьгу синхроимпульсу происходят обращение к блоку памяти микрокоманд и выборка контролируемой микрокоманды по данному адресу.
Микрокоманда с выхода блока 1 пр ходит на второй вход 19 блока 13 и через мультиплексор 16 контроля на информационный вход 45 контролируемых микрокоманд блока 14.
При обнаружении нечетной ошибки в слове микрокоманды с выхода 44 блока 13 на первый вход элемента ИЛИ 6 приходит строб нечетной ошибки , а при несравнении контрольной и эталонной сумм с выхода 46 блока 14 на второй вход элемента ИЛИ 6 поступает строб многократной опл1бки. Эти стробы устанавливают триггер 8 ошибки в состояние высокого уровня, что приводит к появлению на выходе триггера 8 строба останова синхронизатора в блоке 12 синхронизации.
Контроль блока 1 памяти микрокоманд при этом прекращается, а содержимое регистра 9 адреса микрокоманд и регистра 10 микрокоманд выдается соответственно на выходы iS и 20 устройства и высвечивается на экране дисплея с целью определеник адреса ошибки.
При отсутствии ошибок в блоке 1 процесс контроля продолжается автоматически до переполнения счетчика 5 зон памяти микрокоманд
О
5
5
О
Сигнал переполнения с выхода переполнения счетчика 15 приходит на второй вход элемента И 5 и устанаЬ- ливаат в состояние низкого уровня триггер 7 признака контроля, что означает возвращение в основную мик- ропрограмт у по адресу возврата на втором счетчике 3, переход первого счетчика 2 в режим хранения, а второго счетчика 3 в режим счета по .
Блок 4 коммутации адреса микрокоманд (фиг,2) осуществляет через мультиплексор 47 адреса Быд,ачу адреса микрокоманды с второго счетчика
3либо с первого счетчика 2 в зависимости от состояния триггера 7 приз нака контроля. Когда триггер 7 обнулен, к выходу мультиплексора 47 подключается вход 36, в противном случае - вход 38.
На первый управляющий вход блока
4с выхода 24 блока 11 декодирования приходит строб загрузки первого счетчика 2 адресом перехода. На выходах 33 и 34 блока 4 появляются сигналы счета по 1 второго 3 и первого 2 счетчиков, В блоке 11 (фиг.З) происходит декодирование на дешифратора: ,53 кода микроопераций, приходящего на вход 22 блока I1.
На выходе 23 блока 11 появляется отрицательный строб установки триггера 7 в состояние высокого уровня на выходе 24 - отрицательный строб настройки универсального сумматора 58 блока 14 на режим вьшолнекия операции арифметического суммирования С циклическим переносом. Блок 12 синхронизации (фиг.4} осуществляет согласование работы всех блоков устройства после прихода на вход 42 запуска внешнего сигнала запуска.
Синхронизатор 54 вырабатывает десять синхроимпульсов отрицательной полярности, сдвинутых один относительно другого. На выходах 26- 31 блока 12 появляются соответственно первый, второй, третий, четвертый, девятый и десятый синхроим- nyjrbCb. Ь а вход останова 43 блока 2 приходит строб останова синхро- низа гора с выхода триггера 8 ошибки.
Элемент ИЛИ 55 необходим для блокировки записи контролируемых микрокоманд в регистр 10 микрокоманд, Пока триггер 7 признака контроля находится в состоянии высокого уровня, на входе 41 блокировки и на выходе 30 блока I2 высокий уровень напряжения и запись микрокоман в регистр 10 непроизводится. В блоке 14 формирования контрольной суммы (фиг.6j происходит контрольное суммирование ячеек памяти 1. Так как разрядность блока 14 меньше разрядности памяти микрокоманд, необходимо разбить блок 1 памяти микрокоманд на зоны. Разрядность ячейки каждой зоны равна разрядности блока 14. Вследствие такого разбиения на зоны можно использовать для контрольного суммирования АЛУ, уже имеющееся в составе ЭВМ, и вводить минимальный объем контрольного оборудования . . Число таких зон блока 1 равно
,
где m - разрядность слова микрокоманды в блоке i; п - разрядность универсального
сумматора 58 в блоке 14, тогда, например, при и N 4.
Контрольное суммирование микрокоманд блока 1 проводят по зонам: сначала суммируется содержимое первой зоны, потом - второй зрны и т.д. В первой зоне находится часть слова микрокоманды с 1-го по 16-й разряды, во второй зоне - с 17-го по 32-й разряды и т.д.
В последней ячейке каждой зоны памяти записана в дополнительном коде эталонная сумма всех предыдущих ячеек зоны. Поэтому при отсут- ствии ошибок в зоне памяти накапливающий регистр 64 результата и триггер 65 нуля результата после суммирования в универсальном сумматоре 58 содержимого ячеек одной зоны памяти обнуляются.
Процесс суммирования происходит следующим образом.
В исходном состоянии регистры 62 63, 64 и триггеры 65 и 66 обнулены стробом, приходящим на вход сброса блока 14. Потом на информационный вход 45 приходит контролируемая микрокоманда, которая через мультиплексор 60 поступает на регистр 63 операнда, на вход регистра 62 операнда поступает через мультиплексор 59 содержимое регистра 64 результата. В универсальном сумматоре 58
0
5
0
5
0
5
0
5
происходит суммирование содержимого регистров 62 и 63 по переднему фронту десятого синхроимпульса, приходящего на вход синхронизации блока 14. Настройку сумматора 58 на режим выполнения операции арифметического суммирования с циклическим переносом осуществляет строб, приходящий на вход режима. После суммирования результат записывается по заднему фронту десятого синхроимпульса в регистр 64 результата, а перенос - в триггер 66 переноса. Перенос через мультиплексор 61 признаков приходит на вход переноса сумматора 58 для участия в последующих операциях суммирования.
После окончания суммирования всех ячеек одной зоны памяти первый счетчик 2 переполняется и на вход 37 записи блока 14 приходит сигнал переполнения, разрешающий запись в триггер 65.
Если в зоне памяти были обнаружены ошибки, то триггер 65 нуля результата находится в состоянии высокого уровня и на выходе 46 ошибки блока 14 появляется строб ошибки. Этот строб устанавливает триггер 8 ошибки в состояние высокого уровня что приводит к останову синхронизатора 54 в блоке 12 синхронизации. При этом содержимое регистра 9 адреса микрокоманд высвечивается на экране дисплея для определения адреса зоны памяти микрокоманд с четной ошибкой.
Блок 13 свертки по модулю два (фиг.5 осуществлягет контроль адреса и слова микрокоманды путем их сум мирования по модулю два в многовхо- довом сумматоре 56 по модулю два и сравнения в схеме 57 полученной суммы с контрольным разрядом, дополняющим полученную сумму до нечетности.
При обнаружении нечетной ошибки с выхода ошибки блока 13 на первый вход элемента ИЛИ 6 приходит строб нечетной ошибки, устанавливающий триггер 8 ошибки в состояние высокого уровня, что приводит к появлению на входе 43 останова синхронизатора 54 строба останова.
Мультиплексор 16 контроля (фиг.1 предназначен для ввода контролируемых микрокоманд в блок 14 по зонам памяти. Число зон памяти равно числу информационных входов мультиплек
9
сора 16 кор троля, тогда разряг;ность счетчика 15 зон памяти микрокоманд составляет ,
где М - -П-1СЛО разрядов счетчика 15;
N - число зон памяти, и«например, при .
В первоначальньдЧ момент времени счетчик- 15 обнулен и к выходу нуль- тиг Лсксора 6 контроля подключается Ci O перцы й информа:. чИонный нход, т.е. в блок 14 поступают ячейки первой зоны Ямятк, Тактовый вход счетчика 15 соединен с вьссодом перепопне- Hi-irj первого счетчика 2 команд. Поэтому после окончания суммироЕ:ания ячеек первой зоны памяти первый счет чик 2 переполняется и сбрасывается в нуль, а содержимое сметчика 15 увеличивается на +1 и к выходу мультиплексора 16 контроля подключас:тся его нторой информационный вход т.е. в блок 14 приходит содержимое, ячеек второй зоны памяти и т.д.
Одновременно с у зеличением содержимого счетчика 15 на +1 разрешается запись пуля результата в триггер 65 блока 14. После контрольного суммирования ячеек всех зон блока 1 памяти микрокоманд с -гетчик 15 зон памяти микрокоманд переполняется и сбрасывается; в куль.
Сигнал переполнения е выхода счет- ч ика 15 поступает на второй вход элемента И 5 и сбрасьюает- в nyjjb триггер 7 признака контроля (фиг.7, ди- аграмм:а 5/ , что означает конец ре-- 7Аима контроля и возвращение в основ- iryir: микропрограмму по адресу воз- :г;рата ка втором счетчике 3 комак.-з, фиг.7, диаграмма 4).
название | год | авторы | номер документа |
---|---|---|---|
Микропрограммное устройство управления с самоконтролем | 1985 |
|
SU1247871A1 |
Микропрограммное устройство управления | 1983 |
|
SU1130865A1 |
Устройство для обнаружения и исправления ошибок | 1990 |
|
SU1751762A1 |
Устройство для сопряжения ЭВМ с накопителем на магнитной ленте | 1988 |
|
SU1667085A1 |
Микропрограммное устройство управления с контролем | 1989 |
|
SU1702370A1 |
Микропрограммное устройство управления | 1983 |
|
SU1100625A1 |
Микропрограммное устройство управления | 1983 |
|
SU1164706A1 |
Микропрограммное устройство управления | 1983 |
|
SU1100624A1 |
Мультимикропрограммная управляющая система с контролем и восстановлением | 1988 |
|
SU1704147A1 |
Микропрограммное устройство управления | 1984 |
|
SU1180888A1 |
t:::t::.,r : .i:
ОЛ.1,.1 ЖБРГ | ::эЁ:$г1
Ч.(::
.,-„
V™
i:
J
W i 1.
) J/ff
35 36 ЗЭ От Ьлока синхро- 000о низоции
(N t
7 X
Zl
/ J2
922
f уФ Ф ф ф ф ф
От 6ло/(а деко- 0 dt poduHuR
1
f
jf у , W
Arg I I jy I
VV
t/г. 2
J4
J О
/ о
51
53
23
f
2 }Н25Ж
Фиг. 3
f
5Ж
55
f f
/
26Ж 29Ж ОЖ Фиг. tf
фиг, 5
Ф
w
Микропрограммное устройство управления | 1982 |
|
SU1065855A1 |
Приспособление для точного наложения листов бумаги при снятии оттисков | 1922 |
|
SU6A1 |
СПОСОБ ГОРЯЧЕЙ ВУЛКАНИЗАЦИИ КАУЧУКА | 1925 |
|
SU3831A1 |
Приспособление для точного наложения листов бумаги при снятии оттисков | 1922 |
|
SU6A1 |
Авторы
Даты
1986-02-15—Публикация
1984-10-19—Подача