устройство для контроля и реконфигурации дублированной вычислительной системы
Классы МПК: | G06F11/18 с использованием пассивного маскирования сбоев, например с помощью расчетверения или мажоритарных решающих схем |
Автор(ы): | Мамедли Э.М., Самедов Р.Я., Соболев Н.А. |
Патентообладатель(и): | Институт проблем управления РАН |
Приоритеты: |
подача заявки:
1991-06-24 публикация патента:
30.06.1994 |
Сущность изобретения: устройство содержит регистры 1 и 2 текущего результата, информационные входы 3, 4 устройства, блоки 5, 6, 7, 16 элементов И, регистр 8 промежуточного результата, элементы 9, 26, 17 ИЛИ, вход 10 сброса устройства, элементы И 12, 22, 23, 25, элементы 11, 13 задержки, синхровход 14 устройства, блоки 15, 20 элементов ИЛИ, схему 21 сравнения, счетчик 24 неисправностей, 18 формирователь импульса, вход 19 "Пуск" устройства, выходы 27, 28, 29, 30 устройства. 1 ил.
Рисунок 1
Формула изобретения
УСТРОЙСТВО ДЛЯ КОНТРОЛЯ И РЕКОНФИГУРАЦИИ ДУБЛИРОВАННОЙ ВЫЧИСЛИТЕЛЬНОЙ СИСТЕМЫ, содержащее первый и второй регистры текущего результата, регистр промежуточного результата, первый - четвертый блоки элементов И, первый и второй блоки элементов ИЛИ, первый - четвертый элементы И, первый - третий элементы ИЛИ, блок счета неисправностей, схему сравнения и первый элемент задержки, вход которого соединен с синхровходом устройства и с синхровходом второго регистра текущего результата, группа входов данных которого и группа входов данных первого регистра текущего результата являются информационными входами устройства, служащими для подключения к выходам данных соответствующих дублированных вычислительных машин, группы выходов первого и второго регистров текущего результата соединены с группами входов одноименных блоков элементов И, подключенных входами к выходу первого элемента задержки, а группами выходов - к первым группам входов одноименных блоков элементов ИЛИ, группы выходов которых соединены с одноименными группами информационных входов схемы сравнения, выход "Равно" которой подключен к первым входам первого элемента ИЛИ и первого и второго элементов И, а выход "Не равно" - к первому входу третьего элемента И, к счетному входу блока счета неисправностей, вход сброса которого соединен с выходом первого элемента ИЛИ, первый выход - с первым входом второго элемента ИЛИ, с первым входом четвертого и с вторым входом третьего элементов И, второй выход - с вторым входом второго элемента ИЛИ, третий выход - с входами третьего и четвертого блоков элементов И и с вторым входом второго элемента И, а четвертый выход является первым выходом устройства, группа выходов первого регистра текущего результата подключена к группе входов третьего блока элементов И и к группе входов данных регистра промежуточного результата, группа выходов которого соединена с группой входов четвертого блока элементов И, вход сброса устройства подключен к входам сброса первого и второго регистров текущего результата и регистра промежуточного результата и к второму входу первого элемента ИЛИ, группы выходов третьего и четвертого блоков элементов И соединены с вторыми группами входов соответственно второго и первого блоков элементов ИЛИ, выход второго элемента ИЛИ подключен к второму входу первого элемента И, а выходы первого - третьего элементов И являются соответственно вторым - четвертым выходам устройства, отличающееся тем, что, с целью повышения достоверности результатов функционирования, в устройство введены формирователь импульса и второй элемент задержки, выход которого соединен с синхровходом первого регистра текущего результата, а вход - с синхровходом устройства и с вторым входом четвертого элемента И, подключенного выходом к первому входу третьего элемента ИЛИ, выход которого соединен с синхровходом регистра промежуточного результата, а второй вход - с выходом формирователя импульса, связанного входом с входом "Пуск" устройства.Описание изобретения к патенту
Изобретение относится к автоматике и вычислительной технике и может быть использовано при проектировании отказоустойчивых вычислительных систем реального времени. Известен контроллер дублированной системы, содержащий первый и второй регистры, информационные входы которых соединены с соответствующими информационными входами контроллера, компаратор. Этот контроллер осуществляет сравнение результатов вычислений в дублированной системе, при обнаружении рассогласования результатов вычислений формирует сигнал, который инициирует в обоих машинах диагностические программы, хранимые в них, затем на основании результатов диагностирования определяет и блокирует неисправную машину. Недостатком известного устройства являются ограниченные функциональные возможности, обусловленные тем, что в нем не определяется характер неисправности: сбой или отказ. Кроме того, в дублированных системах, использующих известное устройство, для устранения последствий неисправностей используется временная избыточность - диагностические программы, которые в отказоустойчивых управляющих вычислительных системах жесткого реального времени могут быть недопустимыми или неэффективными. Наиболее близким по технической сущности к изобретению является устройство для контроля и реконфигурации дублированной системы, содержащее первый и второй регистры текущего результата, регистр промежуточного результата, первый-четвертый блоки элементов И, первый и второй блоки элементов ИЛИ, счетчик неисправностей, схему сравнения и первый элемент задержки, вход которого соединен с синхровходом устройства и с синхровходом второго регистра текущего результата, группа входов данных которого и группа входов данных первого регистра текущего результата являются информационными входами устройства, служащими для подключения к выходам данных соответствующих дублированных вычислительных машин, причем группы выходов первого и второго регистров текущего результата соединены с группами входов одноименных блоков элементов И, подключенных входами к выходу первого элемента задержки, а группами выходов к первым группам входов одноименных блоков элементов ИЛИ, группы выходов которых соединены с одноименными группами информационных входов схемы сравнения, выход "равно" которой подключен к первым входам первого элемента ИЛИ и первого и второго элементов И, а выход "не равно" - к первому входу третьего элемента И, к счетному входу счетчика неисправностей, вход сброса которого соединен с выходом первого элемента ИЛИ, первый выход - с первым входом второго элемента ИЛИ, с первым входом четвертого и с вторым входом третьего элементов И, второй выход - с вторым входом второго элемента ИЛИ, третий выход - с входами третьего и четвертого блоков элементов И и с вторым входом второго элемента И, а четвертый выход является первым выходом устройства, группа выходов первого регистра текущего результата подключена к группе входов третьего блока элементов И и к группе входов данных регистра промежуточного результата, группа выходов которого соединена с группой входов четвертого блока элементов И, вход сброса устройства подключен к входам сброса первого и второго регистров текущего результата и регистра промежуточного результата и к второму входу первого элемента ИЛИ, группа выходов третьего и четвертого блоков элементов И соединены с вторыми группами входов соответственно второго и первого блоков элементов ИЛИ, выход второго элемента ИЛИ подключен к второму входу первого элемента И, а выходы первого-третьего элементов И являются соответственно вторым-четвертым выходами устройства. Недостатком известного устройства является низкая достоверность результатов функционирования. В прототипе после обнаружения неисправности для определения ее характера (сбой или отказ) и локализации неисправного устройства приходится повторно выполнять до N-1 логических сегментов, что приводит к понижению достоверности результатов функционирования. Целью изобретения является повышение достоверности результатов функционирования. Цель достигается тем, что в устройство для контроля и реконфигурации дублированной системы, содержащее первый и второй регистры текущего результата, регистр промежуточного результата, первый-четвертый блоки элементов И, первый и второй блоки элементов ИЛИ, счетчик неисправностей, схему сравнения и первый элемент задержки, вход которого соединен с синхровходом устройства и с синхровходом второго регистра текущего результата, группа входов данных которого и группа входов данных первого регистра текущего результата являются информационными входами устройства, служащими для подключения к выходам данных соответствующих дублированных вычислительных машин, причем группы выходов первого и второго регистров текущего результата соединены с группами входов одноименных блоков элементов И, подключенных входами к выходу первого элемента задержки, а группами выходов к первым группам входов одноименных блоков элементов ИЛИ, группы выходов которых соединены с одноименными группами информационных входов схемы сравнения, выход "равно" которой подключен к первым входам первого элемента ИЛИ и первого и второго элементов И, а выход "не равно" - к первому входу третьего элемента И, к счетному входу счетчика неисправностей, вход сброса которого соединен с выходом первого элемента ИЛИ, первый выход - с первым входом второго элемента ИЛИ, с первым входом четвертого и с вторым входом третьего элементов И, второй выход - с вторым входом второго элемента ИЛИ, третий выход - с входами третьего и четвертого блоков элементов И и с вторым входом второго элемента И, а четвертый выход является первым выходом устройства, группа выходов первого регистра текущего результата подключена к группе входов третьего блока элементов И и к группе входов данных регистра промежуточного результата, группа выходов которого соединена с группой входов четвертого блока элементов И, вход сброса устройства подключен к входам сброса первого и второго регистров текущего результата и регистра промежуточного результата и к второму входу первого элемента ИЛИ, группа выходов третьего и четвертого блоков элементов И соединены с вторыми группами входов соответственно второго и первого блоков элементов ИЛИ, выход второго элемента ИЛИ подключен к второму входу первого элемента И, а выходы первого - третьего элементов И являются соответственно вторым-четвертым выходами устройства, введены формирователь импульса и второй элемент задержки, выход которого соединен с синхровходом первого регистра текущего результата, а вход - с синхровходом устройства и с вторым входом четвертого элемента И, подключенного выходом к первому входу третьего элемента ИЛИ, выход которого соединен с синхровходом регистра промежуточного результата, а второй вход - с выходом формирователя импульса, связанного входом с входом "пуск" устройства. На чертеже приведена функциональная схема устройства для контроля и реконфигурации дублированной вычислительной системы. Устройство содержит регистр 1 текущего результата первой машины (РТРПМ) и регистр 2 текущего результата второй машины (РТРВМ), в которые соответственно записываются результаты вычислений в первой и второй машинах, поступающие соответственно по информационным шинам 3 и 4, первый 5 и второй 6 блоки элементов И, причем группа входов первого блока 5 элементов И соединена с группой выходов РТРПМ1, с группой входов третьего блока 7 элементов И и с группой информационных входов D регистра 8 промежуточного результата первой машины (РПРП8), вход R сброса которого соединен с входами R сброса РТРПМ1 и РТРВМ2, с первым входом первого элемента ИЛИ 9 и с входом 10 "сброс" устройства. Вход первого блока 5 элементов И соединен с входом второго блока 6 элементов И, через первый элемент 11 задержки (ЭЗ) с входом С синхронизации РТРВМ2, с первым входом элемента И 12, с входом ЭЗ13, выход которого соединен с входом С РТРПМ1 и с входом 14 синхронизации устройства, а группа выходов блока 5 элементов И соединена с первой группой входов первого блока 15 элементов ИЛИ, вторая группа входов которого соединена с группой выходов четвертого блока 16 элементов И, группа входов которого соединена с группой выходов РПРПМ8. Вход С последнего соединен с выходом элемента ИЛИ 17, первый вход которого через формирователь 18 импульса (ФИ) соединен с входом 19 "пуск" устройства. Группа входов блока 6 элементов И соединена с группой выходов РТРВМ2, а группа выходов - с первой группой входов второго блока 20 элементов ИЛИ, вторая группа входов которого соединена с группой выходов третьего блока 7 элементов И. Группы выходов первого 15 и второго 20 блоков элементов ИЛИ соответственно соединены с первой и второй группами входов схемы 21 сравнения (СС), первый выход Y1 которой соединен с первыми входами первого 22 и второго 23 элементов И и с вторым входом первого элемента ИЛИ 9, выход которого соединен с входом R сброса счетчика 24 неисправности (СН), второй выход Y2 СС21 соединен с входом С СН24 и с первым входом элемента И 25. Первый выход Z1 СН24 соединен с вторым входом элемента И 12, выход которого соединен с вторым входом элемента ИЛИ 17, с первым входом элемента ИЛИ 26 и с вторым входом элемента И 25, выход которого соединен с первым управляющим выходом 27 устройства. Второй выход Z2 СН24 соединен с вторым входом элемента ИЛИ 26, выход которого соединен с вторым входом элемента И 22, выход которого соединен с вторым управляющим выходом 28 устройства. Третий выход Z3 СН24 соединен с входами третьего 7, четвертого 16 блоков элементов И и второго 23 элемента И, выход которого соединен с третьим управляющим выходом 29 устройства, а четвертый выход Z4 СН24 соединен с четвертым управляющим выходом 30 устройства. Предполагается, что нулевому состоянию СН24 соответствует высокий уровень потенциала на первом выходе Z1. При поступлении на вход C СН24 первого, второго и третьего импульсов соответственно на втором Z2, на третьем Z3 и на четвертом Z4 выходах поочередно устанавливаются высокие уровни потенциалов. Предполагается, что вычислительный процесс (ВП) в дублированной вычислительной системе организован в виде N логических сегментов (ЛС), после выполнения каждого из которых с целью контроля состояния исправности машин выполняется контрольная точка (КТ). Результаты выполнения каждого ЛС с обоих машин поступают в устройство контроля и реконфигурации. Устройство работает следующим образом. В начале работы с помощью импульса на входе 10 "сброс" устройства регистры 1, 2, 8 и СН 24 устанавливаются в нулевое состояние. При этом элементы И 12, 22 и 25 открываются. Устройство готово к работе. Устройство начинает работать с поступлением синхронизирующих импульсов и импульса пуска. Синхронизирующий импульс поступает на вход 14 устройства и сопровождает информацию, поступающую по шинам 3 и 4 устройства. Импульс пуска поступает на вход 19 устройства только в начале работы, в первой КТ. Синхроимпульс поступает через открытый элемент И 12 и элемент ИЛИ 17 на вход С РПРПМ8, через ЭЗ11 на соответствующие входы блоков И 5 и 6 элементов, через ЭЗ13 на вход С РТРПМ1 и на вход С РТРВМ2. При этом время задержки ЭЗ13 выбирается таким образом, что до появления текущей информации на выходе РТРПМ1 старая переписывается в РПРПМ8. Для надежности записи в РПРПМ8 необходимой информации и для устранения влияния переходных процессов в РТРПМ1 при записи нужно время задержки ЭЗ13 взять равным суммарному времени задержки элементов И 12, ИЛИ 17 и записи РПРПМ8. ЭЗ11 предназначен для разрешения прохождения информации с выходов РТРПМ1 и РТРВМ2 через соответствующие блоки элементов И 5 и 6 и ИЛИ 15 и 20 на входы СС21. Время задержки ЭЗ11 определяется суммарным временем ЭЗ13 и записи информации в РТРПМ1. Таким образом, через блоки 5 и 6 элементов И на входы СС21 проходит только текущая информация от соответствующих машин. Кроме того, в первой КТ с приходом импульса пуска на вход ФИ18 он формирует сигнал, который через элемент ИЛИ 17 проходит на вход С РПРПМ8 и записывает текущую информацию с выхода РТРПМ1. Предполагается, что первый синхроимпульс и импульс пуска в первой КТ поступают одновременно и имеют примерно одинаковую длительность. ФИ18 с приходом импульса пуска формирует сигнал длительностью, равный суммарному времени ЭЗ13 и записи РТРПМ1. Таким образом, в первой КТ в РТРПМ1 и РПРПМ8 записывается текущая информация от первой машины, а в РТРВМ2 - от второй машины. В последующих КТ в РТРПМ1 и РТРВМ2 записывается текущая информация от соответствующих машин, а в РПРПМ8 в зависимости от сигнала на втором входе элемента И 12 либо записывается предыдущая информация от первой машины, либо хранится та информация, которая была записана в него в предыдущей КТ. В i-й (i=) КТ на информационные входы 3 и 4 устройства поступают результаты вычислений i-го ЛС в первой и второй машинах соответственно. С приходом синхронизирующего импульса по шине 14 устройства происходит следующее. В РТРПМ1 и РТРВМ2 записываются результаты вычислений i-го ЛС соответствующих машин. В РПРПМ8 записывается результат вычисления (i-1)-го ЛС в первой машине, который был установлен на выходе РТРПМ1 до прихода синхроимпульса. Кроме того, синхроимпульс через ЭЗ11 поступает на входы первого 5 и второго 6 блоков элементов И и открывает их. В связи с тем, что третий 7 и четвертый 16 блоки элементов И блокированы, результаты вычислений, установленные на выходах РПРПМ8 и РТРПМ1 дальше не проходят. Результаты, установленные на выходах РТРПМ1 и РТРВМ2, через соответствующие первый 5 и второй 6 блоки элементов И и через соответствующие первый 15 и второй 20 блоки элементов ИЛИ поступают соответственно на первый и второй входы СС21, в которой происходит сравнение результатов вычислений i-го ЛС в первой и второй машинах. Если результаты вычислений i-го ЛС в первой и второй машинах совпадают, то на первом выходе Y1 СС21 устанавливается высокий уровень потенциала, который означает, что обе машины исправны. В связи с этим высокий уровень потенциала с первого выхода Y1 СС21 через элемент ИЛИ 9 устанавливает СН24 в нулевое состояние и через открытый элемент И 22 проходит на управляющий выход 28 устройства. Этот сигнал, поступая к обоим машинам, подтверждает их состояние исправности, и они по этому сигналу продолжают ВП, начиная с (i+1)-го ЛС. Если результаты вычислений i-го ЛС в первой и второй машинах не совпадают, то на втором выходе Y2 СС21 устанавливается высокий уровень потенциала, который означает, что в i-м ЛС произошла неисправность и, следовательно, необходимо определить ее характер. Для этого высокий уровень потенциала с выхода Y2 СС21 одновременно поступает на вход C СН24 и на первый вход элемента И 25. Пока СН24 переключается из одного состояния в другое, на выходе элемента И 25 формируется управляющий сигнал длительностью, равной времени переключения СН24. После переключения СН24 на его втором выходе Z2 устанавливается высокий уровень потенциала, который через элемент ИЛИ 26 открывает элемент И 22. Управляющий сигнал с выхода элемента И 25 проходит на управляющий выход 27 устройства. Поступая в обе машины, этот сигнал возвращает их к (i-2)-й КТ и они повторно выполняют (i-1)-й ЛС. После повторного выполнения результаты вычислений от первой и второй машин по соответствующим информационным шинам 3 и 4 снова записываются в РТРПМ1 и РТРВМ2. При этом содержание РПРПМ8 не изменяется, так как элемент И 12 блокирован с низким уровнем потенциала на выходе Z1 СН24, т.е. в нем хранится результат первого вычисления (i-1)-го ЛС в первой машине. Синхроимпульс через ЭЗ11 открывает первый 5 и второй 6 блоки элементов И. В связи с тем, что третий 7 и четвертый 16 блоки элементов И блокированы, результаты, установленные на выходах РТРПМ1 и РПРПМ8, дальше не проходят. Результаты повторных вычислений (i-1)-го ЛС в первой и второй машинах с выходов РТРПМ1 и РТРВМ2 через соответствующие открытые первый 5 и второй 6 блоки элементов И и через первый 15 и второй 20 блоки элементов ИЛИ поступают соответственно на первый и второй входы СС21, в котором происходит сравнение результатов повторных вычислений (i-1)-го ЛС в обоих машинах. Если результаты повторных вычислений (i-1)-го ЛС в обоих машинах совпадают, то на первом выходе Y1 СС21 устанавливается высокий уровень потенциала, который означает, что причиной неисправности в i-м ЛС был сбой одной из двух машин. Поэтому обе машины считаются исправными. В связи с этим высокий уровень потенциала с выхода Y1 СС21 через элемент ИЛИ 9 устанавливает СН24 в нулевое состояние и через открытый элемент И 22 проходит на управляющий выход 28 устройства и, следовательно, к обоим машинам. Обе машины по этому сигналу подтверждают свои состояния исправности и продолжают ВП, начиная с i-го ЛС. Если результаты повторных вычислений (i-1)-го ЛС в обоих машинах не совпадают, то на втором выходе Y2 СС21 устанавливается высокий уровень потенциала, который означает, что причиной неисправности в i-м ЛС был отказ одной из двух машин и, следовательно, необходимо локализовать отказавшую машину. Это осуществляется следующим образом. Высокий уровень потенциала с второго выхода Y2 СС21 поступает на вход С СН24 и переключает его в другое состояние. При этом на его третьем выходе Z3 устанавливается высокий уровень потенциала, который открывает третий 7, четвертый 16 блоки элементов И и элемент И 23. В таком случае результат первого вычисления (i-1)-го ЛС в первой машине с выхода РПРПМ8 и результат повторного вычисления (i-1)-го ЛС в первой машине с выхода РТРПМ1 соответственно через открытые четвертый 16 и третий 7 блоки элементов И и через блоки 15 и 20 элементов ИЛИ поступают соответственно на первый и второй группы входов СС21, в которой и происходит их сравнение. Если результаты первого и повторного вычислений (i-1)-го ЛС в первой машине совпадают, то на первом выходе Y1 СС21 устанавливается высокий уровень потенциала, который означает, что первая машина исправна, а вторая отказала. В связи с этим высокий уровень потенциала с первого выхода Y1 СС21 через открытый элемент И 23 проходит на управляющий выход 29 устройства и, следовательно, к обоим машинам. Первая машина по этому сигналу подтверждает свое состояние исправности и продолжает ВП, начиная с (i+1)-го ЛС, так как i-й ЛС в ней уже правильно выполнен и результат этого вычисления в ней хранится, а вторая машина отключается. Таким образом, ВП продолжает выполняться с помощью первой машины. Если результаты первого и повторного вычислений (i-1)-го ЛС в первой машине не совпадают, то на втором выходе Y2 СС21 устанавливается высокий уровень потенциала, который означает, что первая машина отказала, а вторая машина исправна. В связи с этим высокий уровень потенциала с выхода Y2 СС21 поступает на вход С СН24 и переключает его в другое состояние. При этом на его четвертом выходе Z4 устанавливается высокий уровень потенциала, который проходит на управляющий выход 30 устройства и, следовательно, поступает к обоим машинам. Первая машина по этому сигналу отключается, а вторая подтверждает свое состояние исправности и продолжает ВП, начиная с (i+1)-го ЛС, так как i-й ЛС в ней уже правильно выполнен и результат этого вычисления с ней хранится. Таким образом, ВП продолжает выполняться с помощью второй машины. Таким образом, устройство для контроля и реконфигурации дублированной вычислительной системы позволяет повысить достоверность результатов функционирования за счет повторного выполнения двух последних ЛС.Класс G06F11/18 с использованием пассивного маскирования сбоев, например с помощью расчетверения или мажоритарных решающих схем