/J
САЗ 05 01
О
оо
Oi
Изобретение относится к вычислительной технике и предназначено для использования в системах контроля правильности функционирования блоков управления параллел1,ных ЭВМ.
Целью изобретения является расширение области применения за счет обеспечения возможности контроля блоков управления, реализующих алгоритмы с различной степенью параллелизма, и расширение класса обнаруживаемых дефектов.
На фиг. 1 представлена схема устройства; на фиг. 2 - микропрограмма работы ячейки; на фиг. 3 - пример контроля параллельного алгоритма управления по заданной операторной схеме; на фиг. 4 - вариант выполнения блока коммутации; на фиг, 5 - пример 20 контроля блока управления по заданной информационно-логической схеме алгоритма; на фиг. 6 - пример контроля конвейерного управления; на фиг. 7 - схемы управляемых коммутаторов; на фиг. 8 - пример настройки управляемых коммутаторов.
Предлагаемое устройство содержит первый регистр 1, второй регистр 2, группу триггеров 3.1-3.k, первую группу элементов И 4.1-4.k, первый элемент ИЛИ 5, первый триггер результата контроля 6, группу элементов ИЛИ 7.1-7.k, вторую группу элементов И 8.1-8.k, группу элементов НЕ 9.1- 9.k, третью группу элементов И 10.1- 10.k, второй триггер результата контроля 11, второй элемент ИЛИ 12, элемент ИСКЛЮЧАЮЩЕЕ ИЛИ 13, блок 14 комгруппу элементов ИЛИ 56.1-56.1, вторую группу элементов ИЛИ 57.1-57.п, последнюю группу элементов ИЛИ 58.1- с 58.п, группу элементов И-НЕ 59.1-59.1 входную информационную шину 60, выходную шину 61 и входные шины управления 62 и настройки 63.
Управляемый коммутатор второй 10 группы 16.1 (фиг. 76) содержит вторую группу элементов И 64.1-64.т, первую группу элементов ИЛИ 65.1-65.п, последнюю группу элементов ИЛИ 66.1- 66.п, первую группу элементов И 67.1- 15 67.т, входную информационную шину 68, выходную шину 69 и входные шины управления 70 и настройки 71.
Назначение основных узлов устройства следующееi
Регистр 1 служит для приема и хранения поступающих от контролируемого блока управления значений признаков
инициации команд - контролируемых сигналов - вектора а а... a1...a
V
25 где 1 (i-я команда инициирована) или О, причем выход i-ro разряда регистра 1 подключен к первому входу элемента И 4.1./Регистр 2 предназначен для приема и хранения поступаю30 Щих от объекта управления (например, процессоров ЭВМ) значений условий протекания процесса вычисления - вектора Р PI . . .Р . . .Р,, где Р 1 или 0. а также для управления блоком коммутации 14 и элементом ИСКЛЮЧАЮЩЕЕ ИЛИ 13.
Триггеры 3.1-3.k служат для отображения процесса поступления контролируемых сигналов от блока управле35
мутации, содержащий первую группу уп- 40 (хранения истории управления),
равляемых коммутаторов 15.1-15.k, вто- вторую группу управляемых коммутаторов 16.1-16.k и регистр 17 настройки, вход 18 контролируемых сигналов, вход 19 логических условий, первый вход 2045 синхронизации, второй вход 21 синхронизации, вход 22 сброса устройства, выходы информации о результате контроля, ошибки и подтверждения соответственно 23, 24 и 25 устройства. gg
Схема варианта выполнения блока коммутации (фиг. 4) содержит шину 26 единичного потенциала, шину 27 управления, первую и вторую информационные входные шины 28 и 29, выходные gg информационные шины 30-51, элементы И 52-55.
Управляемый коммутатор первой группы 15.1 (фиг. 7а) содержит первую
группу элементов ИЛИ 56.1-56.1, вторую группу элементов ИЛИ 57.1-57.п, последнюю группу элементов ИЛИ 58.1- 58.п, группу элементов И-НЕ 59.1-59.1 входную информационную шину 60, выходную шину 61 и входные шины управления 62 и настройки 63.
Управляемый коммутатор второй группы 16.1 (фиг. 76) содержит вторую группу элементов И 64.1-64.т, первую группу элементов ИЛИ 65.1-65.п, последнюю группу элементов ИЛИ 66.1- 66.п, первую группу элементов И 67.1- 67.т, входную информационную шину 68, выходную шину 69 и входные шины управления 70 и настройки 71.
Назначение основных узлов устройства следующееi
Регистр 1 служит для приема и хранения поступающих от контролируемого блока управления значений признаков
инициации команд - контролируемых сигналов - вектора а а... a1...a
V
где 1 (i-я команда инициирована) или О, причем выход i-ro разряда регистра 1 подключен к первому входу элемента И 4.1./Регистр 2 предназначен для приема и хранения поступаюЩих от объекта управления (например, процессоров ЭВМ) значений условий протекания процесса вычисления - вектора Р PI . . .Р . . .Р,, где Р 1 или 0. а также для управления блоком коммутации 14 и элементом ИСКЛЮЧАЮЩЕЕ ИЛИ 13.
Триггеры 3.1-3.k служат для отображения процесса поступления контролируемых сигналов от блока управле
являясь внутренней памятью устройства с вектором состояния С С... С....С где С - состояние триггера 3.1.
Элементы И 4.1-4.k предназначенные для проверки условия возможности инициирования команд: формирования сигналов подтверждения правильности инициирования команд - вектора 3 а.. ...а ...a jHa выходе 23, где а 1 или О соответственно при подтверждении и неподтверждении, и перевода при этом триггеров 3.1-3.k в новые состояния.
Элемент ИЛИ 5, триггер 6, элементы ИЛИ 12 и ИСКЛЮЧАЮЩЕЕ ИЛИ 13 служат для формирования на выходе 24 сигнала ошибки при наличии дефекта в у правле- процессом вычисления.
Триггер 11 служит д.пя формирования на выходе 25 сигнала наличия хотя бы одной подтвержденной команды.
Элементы ИЛИ 7.1-7.k и элементы И 8.1-8.k предназначены для перевода триггеров 3.1-3.k из состояния О в состояние 1 в процессе работы устройства.
Элементы НЕ 9,1-9.k и элементы И 10.1-lO.k служат для формирования вектора сигналов ошибки а d, ...dj. ...d при инициации соответствующих команд и невыполнении условий возможности инициации, т.е. при дефекте в потоке управления,
Блок 1А коммутации предназначен для условно зависимой (от вектора Р) коммутации инверсных выходов триггеров 3.1-3.k (элементов множества fCip и выходов элементов И 4.1-4.k (элементов множества a j p соответственно на входы элементов И 4.l-4.k и элементов ИЛИ 7.1-7.k, обеспечивая взаимодействие ячеек устройства,
Устройство функционирует следующим образом.
Блоки 3.1, 4.1, 7.1, B.i, 9.1 и 10.1 образуют 1-ю ячейку устройства, функционирующую согласно фиг. 2, где Cj - состояние триггера 3.1; состояние 1-го разряда регистра 1; а , - состояние выхода элемента И 4.1; d j - состояние выхода элемента И 10.1; f ; - конъюнкция сигналов на группе входов элемента И 4.1, подключенных к блоку 14, называемая функцией возможности; f . - дизъюнкция сигналов на входах элемента ИЛИ 7.1, называемая функцией готовности, при- чем fl fi (iC;,P,i и f. f ;.(U,b P;|), ЧТО задается реализацией и или настройкой блока 14 коммутации.
Таким образом, условие возможности инициации и подтверждения правильное- ти для 1-й команды имеет вид:
al C.f , 1 7 а-. 1, С, О, (1) условие формирования сигнала ошибки:
a :(C;V f.)a ;(C.f .) 1 , d,. 1,(2)
условие перевода в состояние 1 ячейки:
С i f 1 С; 1 (3) причем анализируемое значение С- сформировано в предыдущем такте.
После включения устройства в работу на вход 22 подается сигнал сброса в исходное, переводящий триггеры 3.1- 3.k-l, триггеры 6 и 11 и регистры 1 и 2 в нулевое, а триггер 3.k, соответствующий команде Начало - в единичное состояние.
Очередной запуск устройства осуществляется при выработке блоком управления очередной группы команд и поступлении на вход 18 устройства их признаков, при этом в регистры 1 и 2 по импульсу на входе 20 (т.е. в первом микротакте) записываются текущие векторы а и Р.
Те ячейки, для которых выполняются условия (1) или (2), формируют сигналы подтверждения или ошибки. Затем на входе 21 формируется импульс синхронизации (второй микротакт), при этом те ячейки, для которых выполняются условия (1) или (3), переходят в новые состояния, а триггеры 6 и 11 формируют соответственно на выходах 24 и 25 сигнал ошибки:
D
(V d) V ((V a;)0Pj
(4)
и сигнал подтверждения: П
I V
(5)
единичные значения которых говорят соответственно о наличии дефекта в блоке управления и наличии хотя бы одной подтвержденной команды, причем Р - условие нахождения блока управления в состоянии прерывания/останова (РО 0) или работы (PC 1), значение которого поступает на второй вход элемента ИСКЛЮЧАЮЩЕЕ ИЛИ 13.
В основе функционирования устройства лежит принцип алгоритмического контроля - отслеживания соответствия потока команд на выходе контролируемого блока управления заданной структуре алгоритма вычислений. Алгоритм характеризуется множеством участвующих команд и отношениями порядка между ними и описывается схемой, определенной на множестве операторов а; (преобразователей, т.е. команд обработки данных, и распознавателей,т.е, команд передачи управления), среди которых выделен начальный и конечный операторы. В операторных схемах алгоритмов (схемах с заданным управлением, например, изображенных на
фиг. За) оператору а предписывается выполнение после выполнения некоторого множества предшественников и при соответствующем значении логических услсгвий. В информационно-логических схемах алгоритмов (схемах вычислений или схемах без заданного управления, например, изображенных на фиг. 56) указывается, что а- может потенциально выполняться после выполнения соответствующих предшественников (информационных и логических) и условий. В общем случае команда с меткой.а (оператор а ;) может быть инициирована, если выполнены все команды, являющиеся ее предшественниками в информационном, логическом и конкуренционном смысле, и имеют сооткоманд. При этом для кратного выполнения команд осуществляют присвоение им отличающихся меток в соответствии со схемой алгоритма либо, по возможности, организуют цикл со счетом повторений.
Для выявления дефектов типа 2 по заданной схеме алгоритма для каждого
оператора схемы определяют функции fj и f;, указывающие, при каких условиях i-я ячейка устанавливается в 1 и после каких условий она может подтвердить правильность инициации команды и перейти в О.
Устройство реализует проверку спусковых функций для каждой команды,причем в отличие от известного применения спусковых функций и асин ронных
название | год | авторы | номер документа |
---|---|---|---|
Коммутационное устройство | 1984 |
|
SU1246109A1 |
Устройство для автоматического контроля больших интегральных схем | 1986 |
|
SU1529220A1 |
Устройство для контроля и диагностики блоков микроЭВМ | 1985 |
|
SU1374230A1 |
Устройство для контроля микропроцессорных блоков | 1988 |
|
SU1531099A1 |
Ассоциативный параллельный процессор | 1981 |
|
SU1166128A1 |
Микропроцессорное устройство для моделирования систем массового обслуживания | 1984 |
|
SU1196886A1 |
Дуплексная вычислительная система с контролем | 1987 |
|
SU1564625A1 |
Устройство для решения систем алгебраических уравнений | 1984 |
|
SU1325507A1 |
Устройство для контроля цифровых блоков | 1985 |
|
SU1288700A1 |
Устройство для контроля цифровых блоков | 1984 |
|
SU1238082A1 |
Изобретение относится к автоматике и вычислительной технике и позволяет расширить область применения устройств для контроля блоков управления (БУ) за счет обеспечения возможности контроля параллельных БУ и увеличения контролирующей способности. Устройство для контроля БУ содержит регистры 1 и 2, группы элементов И 4,8 и 10, ИЛИ 7 и НЕ 9, элемент ИСКЛЮ- ЧАКМЦЕЕ ИЛИ 13, блок коммутации 14, триггеры результата контроля 6 и 11, группу триггеров 3, элементы ИЛИ 5 и 12. Устройство осуществляет контроль соответствия сигналов, параллельно поступающих от БУ, допустимому множеству сигналов, набору логических условий и требуемому порядку следования. Каждая ячейка устройства,включающая триггер группы триггеров, элементы И, ИЛИ, НЕ, при поступлении соответствующего контролируемого сигнала вырабатывает в зависимости от состояния подмножества триггеров и текущих значений логических условий сигнал подтверждения либо сигнал ошибки. Наличие таких сигналов в ячейках устройства фиксируется триггерами рес сл зультата контроля. 1 з.п. ф-лы, 8 ил. 5
ветствующие значения условия протека- 2о схем программ, осуществляется их исния процесса вычислений.
При выработке блоком управления потока команд возможны следующие тип дефектов:
1)инициированная команда не входит в множество команд, использующихся в данном алгоритме вычислений;
2)инициированная команда нарушает требуемый порядок следования команд при данном вычислении;
3)в отсутствие прерывания/останова не вырабатывается ни одна команда (зависание управления);
4)при прерывании/останове продолжается инициация команд;
5)многократное ложное инициирование команды (залипание).
Устройство обладает возможностью выявления дефектов всех перечисленных типов.
Дефекты типа 1 выявляются путем задания f О (реализацией или настройкой блока 14 коммутации для ячеек соответствующих командам, не участвующим в данном алгоритме. Тем самым обеспечивается невозможность их перевода в состояние готовности при контроле алгоритма.
Дефекты типа 3 и 4 выявляются в соответствии с выражениями (4) и (5) блоками 5, 12 и 13.
Дефекты типа 5 обнаруживаются вследствие такой организации функционирования ячеек, что после подтверждения команды она обязательно перехо- gc ственно контролируемая схема алгорит- дит из состояния Г в состояние О ма (а, - метки команд), таблица и может перейти в состояние 1 только во втором микротакте следующего такта от сигналов подтверждения других
настройки (функций блока 14 коммутации) : иллюстрация настройки (номера вершин графа соответствуют меткам.
5
пользование в целях контроля. В устройстве проверка спусковых функций реализуется (интерпретируется) элементами 4.1-4.k, состояние управляю5 щих переменных - триггерами 3.1-3.k, установка управляющих переменных в соответствующие состояния - сигналами а в зависимости от предыдущих состояний триггеров, сигналов а и
0 заданных коммутатором связей между ячейками.
Длительность первого микротакта выбирается из условия окончания переходных процессов в логических схемах устройства и составляет величину, соизмеримую с задержкой в регистре памяти. Следующий запуск устройства импульсом на входе 20 может осуществиться практически сразу после подачи импульса на входе 21, т.е. перекрывать второй микротакт. При использовании устройства для контроля про- .-. граммных блоков управления, выполнение команд которых в процессорах ЭВМ
g требует времени, значительно превышающего задержку в элементах памяти, можно считать, что проверка правильности управления осуществляется прак- , тически мгновенно, а команды могут быть инициированы в произвольный момент времени, т.е. асинхронно, но с интервалом, не меньшим времени такта устройства.
На фиг. За,б,в,г показаны соответ0
0
ственно контролируемая схема алгорит- ма (а, - метки команд), таблица
настройки (функций блока 14 коммутации) : иллюстрация настройки (номера вершин графа соответствуют меткам.
толстые сплошные линии показывают, что для подтверждения команды,соответствующей ячейке, в которую входит дуга, необходимо, чтобы С j 1 для L-й ячейки, откуда дуга исходит,тонкие сплошные (штриховые) линии от вершины i J, вершине j показывают, что j-я ячейка устанавливается безусловно (условно) от сигнала а ), и таблица функционирования (t - номер такта; X - произвольное значение логического условия; t 4, 5, б - другое продолжение процесса после такта 3). Последняя иллюстрирует работу устрой- ства при контроле блока управления, реализующего данный алгоритм и форми -п
рующего поток а , сопровождаемый сбоями, причем злементы векторов получаются в соответствии с микропро- граммой на фиг. 2. Например, оператор аJ может выполниться после а и после а (при Р, 1), оператор aj - после а (при Pj 1), и т.п. оператор а может выполниться, если 8 переведена в 1 сигналом а (при Р 0), переведены в О ячейки 5 и 10, установленные в 1 сигналом а J , переведена в О та из ячеек 6 и 7, которая была уста-
новлена в 1 сигналом а при соотю
ветствующем Р 2.
При настройке по параллельной схеме алгоритма (а также по информационно-логической) в некоторый момент времени условие (1) может быть выполнено не для всех команд, у которых единичны функции возможности и единичны состояния ячеек. Иначе говоря, управление будет бездефектным (в смыс ле дефектов типа 2), если из множества команд, которые могут быть инициированы (выполнены все соответствующие условия), блоком управления вырабатываются лишь некоторые, например после подтверждения команды а (фиг.З) Сказанное справедливо для любого момента времени, причем порядок инициации команд из указанного множества может быть произвольным. Отсюда еле- дует, что для заданной настройки существует множество функционально-эквивалентных (дающих одинаковый результат для одинаковых данных) алгоритмов управления, различающихся (в соответ- ствующих пределах) степенью параллелизма и порядком следования операторов, но контролируемых предлагаемым устройством с той же эффективностью
(охватом типов дефектов) без перенастройки его. Например, для фиг. 3 это следующие (по номерам команд, в скобках - параллельно выполняемые): k, 1 (2,3,4), (9,5,10), (2,6), 9,8.. k, 1,2,3,4,5,10,8,6,8 и др. Для каждого из алгоритмов данного множества инициация ложной команды по условию (2) приведет к сигналу ошибки на выходе 24. Настроенное на контроль параллельной схемы алгоритма предлагаемое устройство обладает расширенными функциональными возможностями.
Вариант выполнения блока 14 коммутации для контроля согласно фиг. 3 представлен на фиг. 4.
Наибольший эффект от использования устройства достигается при настройке по информационно-логической схеме алгоритма (ИЛСА), отличающейся от операторных схем тем, что в ней указываются только отношения информационного и логического следования между операторами. В этом случае настройка коммутатора, т.е. получение функций возможности и готовности, осуществляется по ИЛСА.
Стандартной схеме программы на фиг.За соответствует ИЛСА на фиг,56, где тонкие сплошные дуги означают отношения безусловного информационног следования, штриховые - условного информационного следования, толстые - отношения логического следования.По ИЛСА оператор а может выполниться после а (вход в цикл) и после выполнения а и а в цикле, и т.п. Иллюстрация настройки (аналогично фиг.Зв) и таблица настройки показаны на фиг.5в,г, таблица функционирования - на фиг. 5е,, причем из ИЛСА исключены избыточные связи (например, так как а следует за аэ, а а - за а, то связь а -. а не учитывается). Устройство контролирует множество эквивалентных алгоритмов, имеющих данную ИЛСА (вычисляющих ИЛСА): k, 1,2,3,
(4,5)6; k, (1,2) ,3,4,5,3, (4,5),..
.., 6; k, 2,1,3,5, 4,3 (4,5), 3,6 и т.д.
Поскольку ИЛСА служит основой для распараллеливания алгоритмов и позволяет получить максимально распараллеленные алгоритмы, то устройство обладает способностью контролирования класса эквивалентных алгоритмов - от последовательных до максимально параллельных, что существенно расширяет область применения.
Устройство обладает расширенными функциональными возможностями при такой же эффективности и может быть использовано для контроля алгоритмов управления с произвольной степенью параллелизма, в том числе с динамическим распараллеливанием, когда one- ю Ц выполняется по объединенной схераторы назначаются на исполнение асинхронно в произвольном порядке.
При контроле конвейерного управления (например, по схеме программы на фиг. 6а) устройство может иметь два варианта настройки в зависимости от того, контролируется асинхронный конвейер с переменным конвейеризмом (перекрытием следующих выполнений алгоритма), как показано на фиг. 66,. в,г, или синхронный конвейер с постоянным конвейеризмом, фиг. 6в,е,ж. При контроле синхронного конвейера устройство прекращает подтверждение
правильности инициации команд незави- 25 равляемого коммутатора.
симо от контролируемого потока управления (останавливает конвейер),если в потоке команд возник дефект типа пропадание - инициированы не все команды в группе синхронных команд (такты 5,6 и 6,7) т.е. обладает повышенной контролирующей способностью.
При настройке по ИЛСА (параллельной схеме алгоритма) устройство хранит информационно-логическую структуру вычисления, а не структуру ал- ;Горитма управления, но вместе с тем выявляет дефекты типов 1-5 для целого класса алгоритмов управления с разной степенью параллелизма, а при дублировании для каждого из указанных алгоритмов следует задавать соответствующий дублирующий автомат.
Устройство позволяет контролироват блоки, управляющие вычислениями с ап- риори неизвестным (динамическим) распараллеливанием программ и алгоритмов при этом самопроверяемое дублирование не применимо.
Устройство позволяет контролироват практически любой параллельный блок управления при едином способе настройки.
Если устройство осуществляет контроль многопрограммных блоков управления с фиксированным набором программ, то аналогично методике объединения операторных схем алгоритмов осуществляется объединение схем алгоритмов
508610
(параллельных, ИЛСА) с помощью введения в множество дополнительных логических условий выполнения того или иного алгоритма, составления матричных схем и исключения избыточных членов, при этом может учитываться синтаксическое, и семантическое совпадение операторов. Блок 1А коммутаме, В частности, при объединении двух ИЛСА с непересекающимися множествами операторов все связи между ячейками будут зависеть от значения дополнительного условия.
При контроле многопрограммных блоков управления устройство выявляет дефекты системного уровня - ошибочные переходы к вьшолнению другого
алгоритма, поскольку такие дефекты адекватны дефектам типа 1 и 2.
Для контроля блоков управления с изменяемым набором алгоритмов блок 14 коммутации выполняется в виде упКоммутатор 15.1 формирует на -м выходе шины 61 ( ц 1,2,...,1,1 ik) функцию
;,a
c,v
( л ((р
,vr,,;,,)MP,vry)),
5
0
g
состояние ч -го входа данных q - число условий (разрядов
где С - щины 60;
регистра 2); г .г,о(И г - элементы вектора настройки R. , задающего код на вторьк входах элементов ИЛИ группы элементов ИЛИ коммутатора 15.1,выходы которых подключены ко входам элемента И-НЕ 59. ц, причем для разряда регистра 2 определена одна и только одна пара элементов в указанной группе элементов ИЛИ, такая, что первые входы элементов пары соединены соответственно с прямым и инверсным выходом oi-го разряда регистра 2, а на вторые входы поступают соответственмаски
г,-л,,, и f. Л f
1М
,1,
1
Для 1-й ячейки
в зависимости от настройки R ,
,,
г :
R.
,2
R
;,. ..,R; ,, где R,.
О
Ч,
,1,0
;,,( ,функция f
,П
г;, 1,0(1 ,ч,в1 f может не зависеть.
5
зависеть безусловно или условно (от набора условий) от значений выбранного множества С ,j Если С. входит в f - безусловно, то R j содержит все 1. Если С„ не входит в f , то достаточно
для любой пары масок задать Г; . О (считается, что P-i,4°° 0). Если С входит в f, при заданном значении условий из 1 Pj( , то в векторе R. задаются нулевыми маски, соответст иующие заданным значениям условий. На фиг. 8 дан пример настройки коммутаторов для контроля заданного алгоритма по таблице настройки на фиг. 5д) при выполнении коммутаторов 15.1 и 16.1 полными, т.е. , и п 2q. В таблице векторов настройки для каждого вектора R,. указываются составляющие его вектора R;., не рав- ные О, а в скобках - составляющие элементы вектора R;, равные О.ЗагГись R Rj(r2) означает, что для обеспечения в шестой ячейке f С (С Р ) необходимо задать равным 1 вектор R , маскирующий группу элементов ИЛИ, подключенных выходами к элементу И-НЕ, коммутирующему С , в векторе R задать все единицы, кроме маски г (индексы i, опущены), пос- тупающей на второй вход элемента ИЛИ, первый вход которого соединен с прямы выходом разряда регистра 2, соответствующего (хранящего) значению Р , остальные векторы нулевые.
Коммутатор 16.1 формирует на сУ-м выходе шины 69 ( f 1,2,...,m; m i k) функцию
(v((p,vu;,,,)A(,))), «-
где a - состояние f-ro входа шины 68; U;y,e( элементы вектора настройки Ц.1, задающего код на вторых входах элементов ИЛИ группы элементов ИЛИ коммутатора 16.1, выходы которых подключены ко входам элемента И 67. « Настройка коммутатора 16.1 осуществляется аналогично настройке коммута- тора 15.1 (фиг. 8), при этом
f:
W „
При выполнении блока 14 коммутации в виде управляемого коммутатора во время функционирования устройства векторы R и и хранятся в регистре 17. При смене набора программ, выполняемых блоком управления, в регистр 17 заносятся новые значения векторов настройки, настраивая блок 14 коммутации и устройство на контроль нового набора программ.
5 5 п
о g
5
0
Использование полного коммутатора (1 m k, п 2q) целесообразно при контроле набора сильносвязанных алгоритмов, когда выполнение каждого оператора может зависеть от множества предшественников и условий, которые на практике задаются, как правило, управлением неполной коммутацией (например, 1 ), что существенно снижает избыточность.
Следует отметить, что переход от схемной коммутации в устройстве к настройке от регистра 17 аналогичен переходу от схем с жесткой логикой к микропрограммному управлению.Предлагаемое уст1 ойство выгодно отличается технологичностью выполнения, так как оно обладает регулярностью структуры (отнотипные ячейки и коммутаторы), что позволяет его реализовать в виде БИС однородного специализированного процессора. Управляемые коммутаторы могут быть выполнены на Ш1М, а устрой- в целом - на основе базовых кристаллов. Другим вариантом является выполнение на матрицах нескомму- тируемых элементов, при этом реализация блока 14 коммутации осуществляется по заданному набору контролируемых алгоритмов.
Наиболее оптимальным применением и. реализацией предлагаемого изобретения является использование устройства для контроля.параллельных блоков управления специализированных ЭВМ с фиксированным набором алгоритмов вычислений и переменной (динамической) степенью распараллеливания программ, причем устройство выполняется в виде БИС, программируемой (настраиваемой в условия производства по заказу.
Устройство обладает повышенной контролирующей способностью, так как позволяет контролировать поток выходных сигналов блока управления по условию его соответствия свободным ресурсам объекта управления. Для этого в множество {Р условий протекания процесса вычислений вводятся условия свободности (занятости) ресурсов, например, процессоров, которые входят в функции возможности соответствующих ячеек устройства.
Пусть для ИЛСА на фиг. 55 задано следующее распределение ресурсов по операторам: операторы а, и а , - ресурс 1 (например, устройство ввода- вывода), а; и а ресурс 2, а и а,ресурс 3. Состоянию свободности (занятости) ресурсов 1, 2 и 3 соответствуют единичные значения (нулевые) условий PJ , Pj и Р , Таблицы настройки коммутатора, функционирования устройства и векторов настройки комму- Tatopa даны соответственно на фиг.Зд и фиг. 8, причем .ячейка 7 используется в качестве служебной (при функцио- нировании С , 1) для получения конъюнкции, не реализуемой непосредственно коммутаторами 15.1-15.1, Например, в такте 2, фиг.5ж инициация а признается
РГ 0.
« неправильной, поскольку
и т.п.
При контролировании блоков управления и обнаружении дефектов в потоке команд устройство формирует сигнал ошибки на выходе 24, что может использоваться системой для рестарта программы (например, с контрольной точки, соответствующей команде Начало в контролируемом алгоритме, составляющем часть всей программы). При этом устройство сбрасывается в . исходное, а в регистр 17 записываются вектора настройки, соответствующие следующему контролируемому алгоритму управления. Правильное окончание алгоритма управления может определяться по сигналу подтверждения, вырабаПри функционировании в составе системы, включающей блок управления, объект управления и предлагаемое уст- 20 тываемому ячейкой, соответствующей ройство, оно подключается входом 18 к выходу признаков инициации команд блока управления, входом 19 - к выходу логических условий объекта управпоследнему оператору алгоритма (в частности для всего набора контролируемых алгоритмов может быть выделена в устройстве специальная ячейка,соотления (т.е. соединяется со входом ло- 25 ветствующая команде Конец), причем
гических условий блока управления), входами 10, 21 и 22 - соответственно к выходам узла синхронизации и сброса системы, выходами 24 и 25 - соответственно к входу устройства прерывания системы и входу устройства индикации режима работы системы, а выход 23 может использоваться либо для фиксации правильных команд в потоке управле
ния, либо (при полном контроле по схеме алгоритма) непосредственно для управления объектом управления, который при этом должен включать регистр для приема вектора а, синхронизируемый импульсами на входе 21. Поток векторов а на выходе 23 устройства (фиг. 3,5-7 - таблицы функционирования) получается в результате декомпозиции потока контролируемых сигналов на правильные (подтвержденные) и ошибочные. Иначе говоря, предлагаемое устройство корректирует входной поток сигналов, сопровождаемый обоями. При этом вероятность выдачи ложных сигналов на выходе 23 мала, поскольку надежность функционирования устройства при выполнении в виде БИС существенно выше надежности программных блоков управления, включающих ОЗУ, дешифраторы, регистры и т.п; кроме того, для выдачи ложных сигналов на выходе 23 необходимо, чтобы сбой (отказ) произошел и в блоке управления, и в предлагаемом устройст
5
ве, иначе не выполняется предыдущее условие.
При контролировании блоков управления и обнаружении дефектов в потоке команд устройство формирует сигнал ошибки на выходе 24, что может использоваться системой для рестарта программы (например, с контрольной точки, соответствующей команде Начало в контролируемом алгоритме, составляющем часть всей программы). При этом устройство сбрасывается в . исходное, а в регистр 17 записываются вектора настройки, соответствующие следующему контролируемому алгоритму управления. Правильное окончание алгоритма управления может определяться по сигналу подтверждения, выраба0 тываемому ячейкой, соответствующей
тываемому ячейкой, соответствующей
последнему оператору алгоритма (в частности для всего набора контролируемых алгоритмов может быть выделена в устройстве специальная ячейка,соотэтим сигналом устанавливается в 1 ячейка, соответствующая команде Начало .
Формула изобретения
первого и второго регистров , выход
i-ro разряда первого регистра (,k) соединен с первым входом i-ro элемен
та И первой группы, второй вход i-ro элемента И первой группы соединен с единичным выходом 1-го триггера группы, выход i-ro элемента И первой группы соединен с R-входом i-ro триггера группы, второй вход синхронизации устройства подключен к I, входам синхронизации первого триггера
результата контроля и с первого по k-й триггеров группы, отличающееся тем, что, с целью расширения области применения за счет обеспечения возможности контроля блоков управления, реализующих алгоритмы с различной степенью параллелизма и расширения класса обнаруживаемых дефектов, устройство содержит группу элементов ИЛИ, третью группу элементов И,элемент ИСКЛЮЧАЮЩЕЕ ИЛИ и блок ком- коммутации, причем выход второго триггера результата контроля является выходом подтверждения устройства,R-вход и вход синхронизации второго триггера результата Контроля подключены соответственно к входу сброса и второму I
входу синхронизации устройства, выход второго элемента ИЛИ соединен с D-входом второго триггера результата контроля.и с первым входом элемента ИСКЛЮЧАЮЩЕЕ ИЛИ, выход которого соединен с первым входом первого элемента ИЛИ, второй вход элемента ИСКЛЮЧАЮЩЕЕ ИЛИ соединен с выходом первого разряда второго регистра, прямые и инверсные выходы разрядов второго регистра соединены с группой управляющих входов блока коммутации, группа входов i-ro элемента И первой группы соединена с i-й выходной шиной первой группы информационных выходных шин блока коммутации, входы i-ro элемента ИЛИ группы соединены с i-й выходной шиной второй группы информационных выходных шин блока коммутации-, выход i-ro элемента ИЛИ группы соединен с первым входом i-ro элемента И второй группы, выход i-ro элемента И второй группы соединен с S-входом i-ro триггера группы, второй вход i-ro элемента И второй группы соединен с нулевым выходом i-ro триггера группы, выход i-ro элемента И первой группы через i-й элемент НЕ группы соединен с первым входом i-ro элемента И третье группы, выход 1-го разряда первого регистра соединен с вторым входом 1 i-ro элемента И третьей группы, выход i-ro элемента И третьей группы сое
5
0
5
0
5
0
5
0
5
динен с ()-м входом первого элемента ИЛИ, инверсные выходы с первого по k-й триггеров группы соединены с первой группой информационных входов блока коммутации, выходы с первого по k-й элементов И первой группы соединены с второй группой информационных входов блока коммутации, с группой входов второго элемента ИЛИ и образуют выход информации о результате контроля устройства.
2, Устройство по П.1, отличающееся тем, что блок коммутации содержит регистр настройки, первую и вторую группы управляемых коммутаторов, причем группа управляющих входов блока коммутации подключена к входным шинам управления управляемых коммутаторов первой и второй групп, выходы разрядов регистра настройки соединены с входными шинами настройки управляемых коммутаторов первой и второй групп, входные информационные шины управляемых коммутаторов первой и второй групп подключены соответственно к первой и второй .группам информационных входов блока коммутации, выходная шина i-ro управляемого коммутатора первой группы подключена к i-й выходной шине первой группы информационных выходных шин блока коммутации, выходная шина i-ro управляемого коммутатора второй группы подключена к i-й выходной шине второй группы информационных выходных шин блока коммутаций, причем i-й управляемый коммутатор первой группы содержит первую группу из 1 элементов ИЛИ (1 k), с второй по ()-ю группы из п элементов ИЛИ (п i2q, где q - число разрядов входа логических условий устройства) и группу из 1 элементов И-НЕ, выходы которых соединены с первыми входами соответствующих элементов ИЛИ первой группы, вторые входы которых образуют входную информационную шину i-ro управляемого коммутатора первой группы, выходы элементов ИЛИ первой группы образуют выходную шину i-ro управляемого коммутатора первой группы, входы элемента И-НЕ группы ( 1 1,1) соединены с выходами элементов ИЛИ ()-й группы, первые входы элементов ИЛИ с второй по (1-ь1)-ю групп образуют входную шину управления i-ro управляемого коммутатора первой группы, вторые входы элементов ИЛИ с второй по (1 + 1) -ю групп образуют входную шину настройки i-ro управляемого коммутатора первой группы, причем i-й управляемый коммутатор второй группы содержит первую и вторую группы из m эле ментов И (ш k), группу из п элементов ИЛИ, выходы элементов И первой группы соединены с первьми входами соответствующих элементов И второй группы, вторые входы которых образуют входную информационную шину i-ro управляемого коммутатора второй группы.
di- l Ci- Q
in
выходы элементов И второй группы образуют выходную шину i-ro управляемого коммутатора второй группы,входы
элемента И первой группы ((,га) соединены с выходами элементов ИЛИ ( группы, первые входы элементов ШШ с первой по га-ю групп образуют входную шину управления i-ro управляемого коммутатора второй группы, вторые входы элементов ИЛИ с первой по т-ю групп образуют входную шину настройки i-ro управляемого коммутатора второй группы.
di.
Ci- 0
in
г (Pu2.3
2В гз
а.
di
ж Фиг. 5
а, &6odiy) I
fli|Z:-y/y/i
зЕЕЁШ
J
аЛ8ы&од(1
a
н ц
w
ж г
Я
ХЯ:
7Г
№i
3rl
fr
а
Фиг. В
Устройство для контроля управляющего автомата | 1983 |
|
SU1187167A1 |
Приспособление для точного наложения листов бумаги при снятии оттисков | 1922 |
|
SU6A1 |
Устройство для контроля выполнения последовательности действий оператора | 1983 |
|
SU1128258A1 |
Приспособление для точного наложения листов бумаги при снятии оттисков | 1922 |
|
SU6A1 |
Авторы
Даты
1988-01-07—Публикация
1986-07-09—Подача