Научная статья на тему 'Отрицание мажоритарного мультиплексора'

Отрицание мажоритарного мультиплексора Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
153
27
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
СБОЕУСТОЙЧИВОСТЬ / МАЖОРИТАРНЫЙ МУЛЬТИПЛЕКСОР / ОТРИЦАНИЕ

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Тюрин С. Ф.

Создание отказоустойчивых, сбоеустойчивых бортовых цифровых вычислительных комплексов является одной их актуальных задач, особенно в свете последних тенденций импортозамещения в области электронной компонентной базы. Одним из основных путей повышения надёжности в этой области было и остаётся структурное резервирование. Используется троирование каналов аппаратуры с побитным выбором по большинству голосов (например, «два из трех», «три из пяти» и т.д.). Этот выбор выполняется мажоритарным устройством («мажоритаром») так, что если имеется сбой или даже отказ в одном из каналов, то на выходе «мажоритара» будет правильная информация. При этом используют мажоритарные мультиплексоры, позволяющие не только выполнять выбор по большинству голосов, но и проверять работу каждого отдельного канала. В статье строится КМОП-схема такого устройства путём анализа инверсии исходной таблицы истинности

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

INVERSION OF THE MAJORITY MULTIPLEXER

Creating a fault-tolerant onboard digital computer systems is one of the urgent tasks, particularly in the light of recent developments in the field of import of electronic components. One of the main ways to increase the reliability in this area was and still is the structural redundancy. Used triple redundancy with a choice of channels by a majority vote (for example, "two of three", "three out of five," etc.). Using the majority multiplexers allows not only to carry out the choice by a majority vote, but also to check the performance of each individual channel. In the paper, CMOS Majority Multiplexer circuit is constructed by analyzing the inversion of the truth table

Текст научной работы на тему «Отрицание мажоритарного мультиплексора»

УДК 681.32

ОТРИЦАНИЕ МАЖОРИТАРНОГО МУЛЬТИПЛЕКСОРА

С.Ф. Тюрин

Создание отказоустойчивых, сбоеустойчивых бортовых цифровых вычислительных комплексов является одной их актуальных задач, особенно в свете последних тенденций импортозамещения в области электронной компонентной базы. Одним из основных путей повышения надёжности в этой области было и остаётся структурное резервирование. Используется троирование каналов аппаратуры с побитным выбором по большинству голосов (например, «два из трех», «три из пяти» и т.д.). Этот выбор выполняется мажоритарным устройством («мажоритаром») так, что если имеется сбой или даже отказ в одном из каналов, то на выходе «мажоритара» будет правильная информация. При этом используют мажоритарные мультиплексоры, позволяющие не только выполнять выбор по большинству голосов, но и проверять работу каждого отдельного канала. В статье строится КМОП-схема такого устройства путём анализа инверсии исходной таблицы истинности

Ключевые слова: сбоеустойчивость, мажоритарный мультиплексор, отрицание

Сбоеустойчивые бортовые системы управления космических аппаратов с момента своего зарождения в 50-е годы ХХ века не теряют своей актуальности [1], скорее, наоборот, в связи с увеличением степени интеграции микросхем и уменьшением технологических норм, несмотря на повышение качества и «выхода годных», снижение интенсивности отказов,

интенсивность сбоев на несколько порядков может её превышать. Особенно возрастает вероятность сбоев в условиях воздействия тяжёлых заряженных частиц (ТЗЧ). Для создания отказоустойчивых (и

сбоеустойчивых) систем используют резервирование [1,2], например, троирование каналов бортового цифрового

вычислительного комплекса (БЦВК) с побитным устройством голосования по большинству голосов, называемым мажоритарным устройством («мажоритаром»), так, что если имеется сбой или даже отказ в одном из каналов, то на выходе «мажоритара» будет правильная информация.

Для парирования отказа в мажоритаре они также троируются. Кроме того, каждый канал запитывается от своего источника питания, что позволяет избежать неправильной работы при снятии питания с одного из каналов. Но тогда уже не гарантируется исправление ошибки в оставшихся каналах. С целью повышения вероятности безотказной (бессбойной) работы аппаратуры увеличивают глубину

мажоритирования, применяют так называемое «глубокое» мажоритирование. При этом используется так называемый мажоритарный мультиплексор, обеспечивающий «развал»

Тюрин Сергей Феофентович - ПНИПУ, д-р техн. наук, профессор, e-mail: [email protected], тел. 8 952-32-02-510

БЦВК на отдельные каналы а, Ь, с по сигналам управления х1, х2 в процессе проведения проверок технического состояния. Условное графическое обозначение мажоритарного мультиплексора изображено на рис.1.

с XI х2

D 0

1

2

>2

Рис. 1. Мажоритарный мультиплексор

Таким образом, в процессе тестирования БЦВК на выход z всех мажоритаров обеспечивается подача всех каналов а при х1=0, х2=0; всех каналов Ь при х1=1, х2=0; всех каналов с при х1=0, х2=1; при х1=1, х2=1обеспечивается вычисление

мажоритарной функции, то есть реализуется выражение:

0 1 10

z(x2x1abc) = ax2 xi v bx2 xi v cx2 xi

(i)

V (аЬ V ас V Ьс)х2х1]. Таблица истинности мажоритарного мультиплексора имеет следующий вид (табл. 1).

Таблица 1 Функционирование мажоритарного мультиплексора

х2

0

х1

0

1

а

0

1

1

0

1

1

1

1

1

1

1

1

1

1

1

1

Реализация мажоритарной функции (функции переноса одноразрядного полного сумматора)

аЬ V ас V Ьс (2)

в виде КМОП элемента приведена в [3]. С целью реализации (1) в базисе отказо и сбоеустойчивых элементов [2,4-5] необходимы операции инверсии таблиц истинности, в том числе вида табл. 1. Кроме того, вызывает интерес реализация (1) в виде отдельного элемента, отсутствующего в библиотеке элементов [3], что тоже требует получения выражения, инверсного (1). Всё это требует анализа таблицы, инверсной табл. 1. Рассмотрим вначале таблицу с ортогональными строками, например, табл. 2.

Таблица 2 ДНФ с ортогональными строками

а Ь с d х2 х1

1 - - - 0 0

- 1 - - 0 1

- - 1 - 1 0

- - - 1 1 1

Известно [2], что отрицание такой таблицы с ортогональными строками выполняется путём отрицания диагонали и позволяет получить табл. 3.

Таблица 3

Инверсия табл. 2

а Ь с d х2 х1

0 - - - 0 0

- 0 - - 0 1

- - 0 - 1 0

- - - 0 1 1

Действительно, преобразуем ДНФ, записанную в табл.3:

z = х2(ах1 V Ьх1) V х2(сх1 V dx1). (3) Очевидно, что, отрицанием этой функции будет выражение, в котором отрицаются ДНФ в скобках по правилу, доказанному в [2], а они, соответственно, также отрицаются:

ъ = х2(ах1 V Ьхх) V х2(сх1 V ёхД (4) Легко видеть, что получаем выражение:

ъ = ах2х1 V Ьх2хх V сх2х1 V dx2x1. (5) Следовательно, «отрицание

мультиплексора» - это мультиплексор, у которого отрицаются входы данных а, Ь, с, d. Таким образом, отрицание табл. 2 приведёт к табл. 3. По аналогии можно предположить, что, поскольку функция (2) является

самодвойственной и отношение

ортогональности при отрицании сохраняется, то, отрицая табл. 1, получим табл. 4.

Таблица 4 Функционирование инверсного мажоритарного мультиплексора

х2 х1 а в с

0 0 0 - -

0 1 - 0 -

1 0 - - 0

1 1 0 0 -

1 1 0 - 0

1 1 - 0 0

Проверим наше предположение:

ъ(х2х:аЬс) = ах2х1 V Ьх2х1 V сх2х1 V (аЬ V ас V Ьс)х2х:] = (6) = ах2х1 ■ Ьх2х1 ■ сх2х1 ■ (аЬ V ас V Ьс)х2х1] = = ах2х1 ■ Ьх2х1 ■ сх2х1 ■[(аЬ Vас VЬс) Vх2 Vх1].

В силу самодвойственности

мажоритарной функции получим:

(7)

ах2 х1 ■ Ьх2х1 ■ сх2 х1 ■ [(аЬ V ас V Ьс) V х2 V х1] = = (а V х2 V х1)(Ь V х2 V х1)(с V х2 V х1) [(аЬ V ас V Ьс) V х2 V х1].

Применим закон дистрибутивности по х2 в первых двух скобках и по не х2 в третьей и четвёртой:

(а V х2 V х1)(Ь V х2 V х1)(с V х2 V х1) /0\

__ _ _ _ _ (8)

[(аЬ V ас V Ьс) V х2 V х1] = = [(а V хДЬ V х1) V х2]{(с V х^ [(аЬ V ас V Ьс) V х1)] V х2}.

Обозначим (аЬ V ас V Ьс) = d (9), тогда

[(а V х1)(Ь V х1) V х2]{(с V x1)[(d V х1)] (9) V х2}.

Преобразуем выражения внутри квадратных и фигурных скобок:

[аЬ V ах1 V х1Ь V х1х1 V х2]

{cd V сх1 V x1d V х1х1 V х2}. Используя закон противоречия и обобщённого склеивания, упростим выражения в скобках:

[ах1 V х1Ь V х2]{сх1 V x1d V х2}. (11) Раскрываем скобки:

(асх1 V ах1х^ V ах1х2) V V (х^сх1 V x1Ьx1d V Ьх2х^) V V сх2х1 V dx2x1 V х2х2. Легко видеть, что, применяя противоречия, получим:

(12)

закон

асх1 V ах1х2 VЬdx1 VЬх2х1 Vсх2х1 Vdx2x1. (13) Заметим, что

асх1 = (ах1)(сх1), Ьdx1 = (Ьx1)(dx1),(14) то есть налицо опять закон обобщённого склеивания по х2:

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

асх1 V (ах1)х2 V Ьdx1 V

V (Ьх1)х2 V (сх1)х2 V ^х^х.

(15)

Окончательно получаем:

ах1х2 V Ьх2х1 V сх2х1 V dx2x1. (16) Возвращаясь к (9), получим итог:

ах1х2 V Ьх2хх Vсх2х1 V(аЬ Vас VЬс)х2хх. (17) Это и требовалось доказать. Предложим векторное доказательство. Рассмотрим множество взаимно ортогональных векторов переменных х:

Х= {Х0,Х1,,Х2,Х3}. (18)

Представим функцию (1) таким образом:

с с с с

аХ0V ^ сХ2V dXз,где (19)

d = аЬ V ас V Ьс. Выполним отрицание:

с с с с

аХ0VЬХ, VсХ2VёХ3 =

1_ 2 _ 3 _ (20)

= (а V Х0)(Ь V ХС1)(с V Х2)(ё V Х3).

с

Но что такое, например, Х0 ?

Х0 = х2х1 = х2 Vх1 = = х2(х1 V х1) V х1(х2 V х2) = (21)

____с с с

= х2х1 V х2х1 V х2х1 = Х1V Х2 V Х3.

Таким образом, отрицание одного вектора -это дизъюнкция остальных (и это пример операции многозначной логики, одно из отрицаний Поста):

(а V Хх V Х2 V Х3)(Ь V Х0 V Х2 V Х3)

(с V Х0 V Х1V ХС3)(ё V Х0 V ХхV Х2). Применим закон дистрибутивности:

[(а V Х?1)(Ь V Х,) V (Х2 V Х3)]

(22)

(23)

[(с V Х3)^ V Х2) V (Х0 V Х;)].

Далее:

[(аЬ V аХ0VЬX1vХ0Х1) V (X2vХ3)] (24)

[(сё V сХ2V аХ3V Х2 Х3) V (Х0V Х^]. Поскольку все вектора ортогональны, то конъюнкция разных векторов равна нулю, а

также применяя закон обобщённого склеивания, который и здесь выполняется, получим:

[(аХ0 V ЪХ?1) V (Х2V Х3)] (25)

[№ V ^ V (Х 0 V ад Каждый член первой квадратной скобки при умножении на вторую будет отличен от нуля тогда и только тогда, когда номера векторов совпадут (ибо тогда они не ортогональны):

аХ0 V ЬХ1Х1V сХ2Х2 V dX3X3. (26) Таким образом, окончательно получим:

(27)

аХ0 V ЬХ1V сХ2 V dX3. То есть

ъ(х2х1аЬс) = ах2х1 V Ьх2х1 V сх2х1 V (28)

V (аЬ V ас V Ьс)х2х1 ]. Выражение (28) эквивалентно выражению

(17). Преобразуя (28) в скобочную форму, получим:

ъ(х2х1аЬс) = (ах1 V Ьх1)х2 V {сх1 V (29)

V [(аЬ V ас V Ьс)х1]х2}. Аналогично преобразуя (1), получим:

ъ(х2х1аЬс) = (ах1 V Ьх1)х2 V {сх1 V (30)

V [(аЬ V ас V Ьс)х1 ]х2}. Отрицание функции мажоритарного

мультиплексора (28) и выражения (29), (30) по существу представляют бинарные деревья решений и позволяют получить соответствующую реализацию схемы в виде КМОП схемы. На рис. 2 показана упрощённая схема, где транзисторы обозначены соответствующими переменными.

N0 ГЧЬ N0 I I

мь I

х 1

МЬ 7 I

I—1—1 Ис мь мс МЬ ГЧс I I

1,1 I _1_

Рис. 2. Схема упрощённая КМОП реализации мажоритарного мультиплексора

Символом N на рис. 2 обозначено отрицание соответствующей переменной выражения (1), предполагается, что имеются парафазные переменные, то есть и сами переменные, и их отрицания. Верхняя часть схемы рис. 1 описывает условия равенства (30)

единице, поскольку транзисторы р-проводимости открываются нулями. Нижняя часть описывает условия равенства (29) единице, поскольку нижние транзисторы п-проводимости открываются единицами. Проверим формирование логической единицы на наборе 00 по рис. 3.

-г- Усс

Nc Nb Nc

Nb

Nc Nb Na О

Nxl

xl Nxl xl О

1 Nx2

x2 О

О xT

1

N x2 1

i i i i xl Nxl xl Nxl 1

Nb Г I I I

г-Nc Nb Na О

Nc Nb Nc I I I

Рис. 3. Проверка функционирования мажоритарного мультиплексора на наборе 00

Видим, что при а=1, то есть при №=0 на выходе будет 1. В случае, если а=0, то есть при №=1, на выход будет выдан 0. На наборе 01 будет активирована вторая ветвь схемы рис. 2. В случае, если Ь=1, то есть при №Ь=0, на выход будет выдана 1. В случае, если Ь=0, то есть при №Ь=1, на выход будет выдан 0. Аналогично можно убедиться в работоспособности остальных ветвей схемы.

При реализации самосинхронной схемы [3], имеющей основной и двойственный каналы, получим схему рис. 4.

Nc Nb Nc

I i—^ Nc Nb Na

Nb 'II 1

Nxl xl Nxl xl

xl N xl xl Nxl

Nc Nb Na

Рис. 4. Схема упрощённая КМОП реализации мажоритарного мультиплексора для самосинхронных схем

Проверим формирование логической единицы по выходу N2 на наборе 00 по рис.4. Видим, что при, а=0, то есть при №а=1 на выходе N2 будет 1, а на выходе ъ будет 0 - рис. 5. Аналогично можно убедиться в функционировании предлагаемого

мажоритарного мультиплексора для самосинхронных схем, изображённого на рис. 5 на остальных наборах.

Рис. 5. Проверка функционирования мажоритарного мультиплексора для самосинхронных схем на наборе 00

Выполним проверку функционирования схемы в системе схемотехнического моделирования NI Multisim 10 фирмы National Instruments Electronics Workbench Group в два этапа в связи с ограничением модели на количество транзисторов. Вначале проверим мультиплексирование переменных a, b, c, d. Моделирование передачи переменной d на наборе 11 представлено на рис. 6,7:

Рис. 6. Проверка функционирования мультиплексора для на наборе 11, d=1

Рис. 7. Проверка функционирования мультиплексора для схем на наборе 11, ё=0

Аналогично вышеописанному проверяется мультиплексирование остальных данных и для подсхемы На втором этапе выполним моделирование подсхемы мажоритарного элемента, который на первом этапе моделировался переменной ё. Результаты

моделирования на наборе 001 изображены на рис.8.

Рис. 8. Проверка функционирования мажоритарного элемента на наборе 001

Аналогично проверяется

функционирование мажоритарного элемента на остальных наборах.

ВЫВОДЫ

Таким образом, отрицание таблицы истинности логической функции

мажоритарного мультиплексора представляет собой локальные (построчные) отрицания исходной таблицы, причём, поскольку мажоритарная функция является

самодвойственной, то в исходной таблице необходимо проинверсировать все значащие разряды, кроме кодов строк. Отрицание ортогональных таблиц целесообразно выполнять в предложенной векторной форме. Полученное после отрицания выражение описывает структуру подсхемы подключения шины «Ноль вольт» КМОП реализации мажоритарного мультиплексора. Причём, смена подсхем (инверсия, «переворот» КМОП

схемы) позволяет получить двойственную реализацию, необходимую в самосинхронной схемотехнике. Результаты моделирования схемы системе схемотехнического

моделирования NI Multisim 10 фирмы National Instruments Electronics Workbench Group подтверждают правильность теоретических предположений на основе применения законов алгебры логики Буля.

Литература

1. Чекмарёв, С.А. Способ и система инъекции ошибок для тестирования сбоеустойчивых процессоров бортовых систем космических аппаратов [Текст] / С.А. Чекмарёв // Вестник Сибирского государственного аэрокосмического университета им. академика М.Ф. Решетнева. [Электронный ресурс] Выпуск № 4 (56) /

2014. - Режим доступа URL: http://cyberleninka.ru/article/n/ sposob-i-sistema-inektsii-oshibok-dlya-testirovaniya-sboeustoychevyh-protsessorov-bortovyh-sistem-kosmicheskih-apparatov (дата обращения: 16.12.2015).

2. Tyurin S.F. Retention of functional completeness of Boolean functions under "failures" of the arguments [Text] / S.F. Tyurin // Automation and Remote Control. - 1999. -Vol. 60. - № 9. Part 2. -P. 1360-1366.

3. Библиотека элементов для проектирования самосинхронных полузказных микросхем серий 5503/5507 и 5508/5509 [Текст] / Ю.А. Степченков, А.Н. Денисов, Ю.Г. Дьяченко, Ф.И. Гринфельд, О.П. Филимоненко, Н.В. Морозов, Д.Ю. Степченков. - М.: ИПИ РАН, 2008. - 296 с.

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

4. Kamenskikh, A.N. Advanced Approach to Development of Energy-Aware and Naturally Reliable Computing Systems [Text] / A.N. Kamenskikh, S.F. Tyurin // Proceeding of the 2015 IEEE North West Russia Section Young researches in electrical and electronic engineering conference (2015 ElConRusNW). pp67-69.

5. Kamenskih, A.N. Features that provide fault tolerance of self-synchronizing circuits [Text] / A.N. Kamenskikh, S.F. Tyurin // Russian Electrical Engineering. -

2015. pp.672-682.

6. Ульман, Дж. Д. Вычислительные аспекты СБИС [Текст] / Дж.Д. Ульман; пер. с англ. А.В. Неймана; под ред. П.П. Пархоменко. - М.: Радио и связь, 1990. - 480 с.

Пермский национальный исследовательский политехнический университет

INVERSION OF THE MAJORITY MULTIPLEXER

S.F. Tyurin, Honored Inventor of the Russian Federation, Doctor of Technical Sciences, Professor at the Department of Automation and Telemechanics Perm National Research Polytechnic University, Russia, 614990, Perm, Komsomolsky Av., 29, e-mail: [email protected]

Creating a fault-tolerant onboard digital computer systems is one of the urgent tasks, particularly in the light of recent developments in the field of import of electronic components. One of the main ways to increase the reliability in this area was and still is the structural redundancy. Used triple redundancy with a choice of channels by a majority vote (for example, "two of three", "three out of five," etc.). Using the majority multiplexers allows not only to carry out the choice by a majority vote, but also to check the performance of each individual channel. In the paper, CMOS Majority Multiplexer circuit is constructed by analyzing the inversion of the truth table

Key words: Fault-Tolerant Digital Computer, Majority Multiplexer, Inversion

References

1.Chekmarev S.A. Sposob i sistema in"ekcii oshibok dlya te-stirovaniya sboeustojchivyh processorov bortovyh sistem kosmicheskih apparatov (Method and system for testing the error injection failures resistant processor board system of spacecrafts). Vestnik SibGAU. 2014, Vol. 56, No. 4 (in Russian). Available at: http://cyberleninka.ru/article/n/sposob-i-sistema-inektsii-oshibok-dlya-testirovaniya-sboeustoychevyh-protsessorov-bortovyh-sistem-kosmicheskih-apparatov (accessed 16.12.2015).

2.Tyurin S.F. Retention of functional completeness of Boolean functions under "failures" of the arguments. Automation and Remote Control. - 1999. Vol.60. No 9 part 2. pp. 1360-1366.

3. Stepchenkov Yu.A., Denisov A.N., Diachenko Yu.G., Grinfeld F.I., Filimonenko O.P., Morozov N.V., Stepchenkov D.Yu. Biblioteka elementov dlya proyektirovaniya samosinkhronnykh poluzkaznykh mikroskhem seriy 5503/5507 i 5508/5509 [Library elements for designing self-timed chip semi-custom series 5503/5507 and 5508/5509] — M.: IPI RAN. 2008. — p. 296.

4. Kamenskikh A.N., Tyurin S.F. Advanced Approach to Development of Energy-Aware and Naturally Reliable Computing Systems. Proceeding of the 2015 IEEE North West Russia Section Young researches in electrical and electronic engineering conference (2015 ElConRusNW). pp67-69.

5. Kamenskih, A.N., Tyurin, S.F. Features that provide fault tolerance of self-synchronizing circuits // Russian Electrical Engineering. - 2015. pp.672-682.

6. Ul'man Dzh. D. Vychislitel'nye aspekty SBIS [Computational Aspects of VLSI] Per. s angl.: A.V. Nejmana: pod red. P.P. Parhomenko. - M.: Radio i svyaz', 1990. - p.480.

i Надоели баннеры? Вы всегда можете отключить рекламу.