Метод синтеза неизбыточных схем в стандартном базисе, допускающих единичные диагностические тесты длины два

УДК 519.718

DOI 10.21685/2072-3040-2016-3-4

Д. С. Романов

МЕТОД СИНТЕЗА НЕИЗБЫТОЧНЫХ СХЕМ В СТАНДАРТНОМ БАЗИСЕ, ДОПУСКАЮЩИХ ЕДИНИЧНЫЕ ДИАГНОСТИЧЕСКИЕ ТЕСТЫ ДЛИНЫ ДВА1

Аннотация.

Актуальность и цели. Цель данной работы состоит в демонстрации возможности синтеза (для произвольной функции алгебры логики) схемы из функциональных элементов в стандартном базисе, реализующей эту функцию и допускающей единичный диагностический тест длины не более двух при инверсных неисправностях на выходах элементов, что может быть полезно при проектировании легкотестируемых СБИС.

Материалы и методы. При получении основных результатов использовались методы алгебры логики и теории синтеза схем из функциональных элементов.

Результаты. Доказывается, что для произвольной функции алгебры логики f, зависящей от n переменных, существует неизбыточная реализующая функцию f схема из функциональных элементов в базисе {x&y, xvy, —x}, допускающая единичный диагностический тест длины не более двух при инверсных неисправностях на выходах элементов, при этом для каждой булевой функции установлена длина минимального единичного диагностического теста.

Ключевые слова: схема из функциональных элементов, диагностический тест, инверсная неисправность на выходе элемента, функция Шеннона, легко-тестируемая схема.

D. S. Romanov

A METHOD OF SYNTHESIS OF IRREDUNDANT CIRCUITS (IN A STANDARD BASIS) ADMITTING SINGLE FAULT DIAGNOSTIC TEST SETS WITH CARDINALITY 2

Abstract.

Background. The aim of this work is to demonstrate that for an arbitrary Boolean function it is possible to construct a circuit (in the basis {x&y, xvy, — x}) realizing this function and allowing a small single fault diagnosing test set (under inverse faults on outputs of gates). It can be useful for the design of easily testable VLSI.

Materials and methods. The theory of Boolean functions and combinational circuits design methods were used.

Results. It has been established that for arbitrary Boolean function f depending on n variables there exists an irredundant combinational circuit (in the basis {x&y, xvy, — x}) realizing f and admitting a single fault diagnosing test set (under inverse faults on outputs of gates) with cardinality 2 or less. For every Boolean function the minimal cardinality of a single diagnostic test set has been established.

Key words: combinational circuit, fault diagnostic test set, inverse fault on output of gate, Shannon function, easily testable circuit.

1 Статья написана при финансовой поддержке проектов РФФИ № 15-01-07474-а и № 16-01-00593-а.

Задача построения близких к минимальным тестов [1-3] для схем из функциональных элементов (СФЭ) [3], и, более точно, задача построения таких схем, которые допускают достаточно короткие тесты, является актуальной в теории контроля управляющих систем. Все несформулированные в статье определения (СФЭ, источник неисправностей, константная неисправность, инверсная неисправность, проверяющий тест, диагностический тест, единичный тест, полный тест, длина теста, минимальный тест) могут быть найдены в книгах [3, 4]. Введем обозначения для базисов: Во = {х& у,ху ух} - стандартный базис, В1 = {х& у,х у, 1} - базис Же-галкина,

В" = {х} и ^ {х1 & — & х{, х1 V... V х{}, I >2

В!" = {х © у, 1} и ^ {х1 &... &х{, х1 V... V х{} .

I >2

Неисправность в схеме назовем нетривиальной, если хотя бы на одном входном наборе на выходе хотя бы одного элемента схемы оказалось неверное значение. Тестопригодной (относительно источника неисправностей и) назовем схему, функционирование которой при любой нетривиальной неисправности (вызванной источником неисправностей и) отличается от функционирования исправной схемы. Схему, тестопригодную относительно источника одиночных неисправностей, назовем неизбыточной. Под длиной минимального проверяющего (соответственно диагностического) теста относительно источника неисправностей и для булевой функции /, реализованной с помощью СФЭ в базисе В, будем понимать минимум по всем реализующим / тестопригодным схемам длины минимального проверяющего (соответственно диагностического) теста для схемы, а обозначать эту длину будем через

£Месг(и,у) (¡ап(и,у)). Через р2(п) обозначим множество всех булевых функций, существенно зависящих от всех своих п переменных х1 , х2,... , хп . Функцию Шеннона длины проверяющего (соответственно диагностического) теста относительно источника неисправностей и для реализованной с помощью СФЭ в базисе В булевой функции / определим так:

^ (и п) = __„ ¡¿е** (и у) (¡Вф (и,п) = тах 4а8п (и, /)^

В М(п) В

l

f^

Обозначение для источника неисправностей будет иметь вид XZy , где X - это последовательность букв (или буква), характеризующая место возможной неисправности (P - на входах схем, I - на входах элементов, O -на выходах элементов), y указывает на вид неисправности (const, 0, 1 -константные, типа 0, типа 1 соответственно, inv - инверсные неисправности), z указывает на максимально возможное число поломок (k, если число поломок не превосходит k ; нижний индекс опускается при отсутствии ограничений на число поломок).

Дадим обзор результатов о поведении функций Шеннона длин тестов для СФЭ (все оценки справедливы при произвольном натуральном n).

^есг (Юеоп*', п) < п + 4 [3, с. 113-116; 5]; Ь^' {РЮ{ош',п) < 3п + 4 (при добавлении еще двух выходов оценку можно понизить до п + 4 [5]),

11оё2 п N

ЬсЦ1ес'(Юскот',п) < 4 + 2 I  (см. [6] с применением техники из [3, 1 ]=1 ^ !) с. 113-116]). В произвольном полном базисе В [7, 8]:

L

detect /r^const \ , ^/^Ги/21 и/2 I ч D

B (О , и) < 2(2 ' + 2L J + и); в B0:

lB:tect(10,и) = Ldletect(I\и) < О(2и/2) [9],

B0 B0

ьВе'ес'(О0,п) = ьВе'ес'(в1,п) < п [10],

В0 В0

(О0, п) = (О1, п) < 2п + 1 [11].

Далее:

Ца^(в-0,п) = Ь^(О1,п) < 2 Г1ов2(п + 1)1 + 1, ьВа^поп,п) < п + 1 [12, 13],

В0 В0 В1

(ввп,п) < 2п"2 [13].

В произвольном полном базисе имеет место оценка

Ь^е^а (вест*,< п + 3 [14-16]. В работе [17] дан метод построения для каждой булевой функции /(Хп) схемы с тремя добавочными входами и одним добавочным выходом, допускающей проверяющий не более чем к произвольных неисправностей элементов или блоков схемы тест длины О(п + 2к). В базисе В™ = {х © у, 1} и ^ {х1 & ...&х{, Х1 V... V х{} существует метод син-

I >2

теза неизбыточных схем с ^л/п 1 добавочными входами (и несколькими добавочными выходами), допускающих проверяющий тест относительно /ОсоП81

длины не более 2л/п • (1 + о(1)) [18]. В работах [19, 20] для отдельных базисов предложены методы синтеза схем, допускающих проверяющие тесты константной длины при наличии большого числа добавочных входов и/или выходов. В работах [21, 22] предложены неполные базисы, в которых любую булеву функцию можно промоделировать схемой с константным числом добавочных входов, допускающей полный проверяющий тест длины два при константных неисправностях на выходах элементов (возможны и некоторые константные неисправности на входах схемы и входах элементов схемы). В работе [23] дан способ построения допускающих полный проверяющий тест длины три схем с одним добавочным входом и четырьмя добавочными выходами в базисе из специальных двух- и трехвыходных функциональных блоков (рассматриваются константные неисправности на входах и выходах блоков). Особенно интересны константные верхние оценки функций Шеннона длины

¡В ес (О1™,п) = 1 [13], в произвольном полном базисе В имеет место оценка

теста, полученные без введения добавочных входов и выходов. Приведем их:

Тс1е1ес1,

В1

¡Сеге«(01^,п) < 3 [24]. Далее: Ь^1 (О0,п) = I^(О*™1,п) = 2 при п > 1

[25], (О1,п) = 1 [26], ¡В^1 (О0,п) = 1 [27]. Но ¡Сф?(О1,п) > п + 1 [28]. Имеются [29, 30] примеры полных конечных базисов В', В" таких, что 2 < ¡В^(0соШ,п) < 4 , 2 < ¡ресг(01п\п) < 4 , а также доказано [31], что в любом полном базисе В : 2 < (0{оШ ,п) < 4.

Далее: 1С Ва8п О0, п) = 1С Ва8п О1, п) = 2 [32], ¡Ва8п (01п\п) = 1 [33]. От-

Во Во В1

метим, что инверсные неисправности на выходах элементов, рассматриваемые в настоящей работе, были впервые введены Дж. фон Нейманом [34] при доказательстве возможности сколь угодно надежной реализации произвольной булевой функции схемами из ненадежных элементов. Как было показано в дальнейшем, в ряде базисов для всех булевых функций при инверсных неисправностях удается достигать асимптотической минимальности схем по ненадежности [35-41], в ряде случаев сочетая ее для почти всех булевых функций с порядковой минимальностью схем по сложности [35, 37, 40]. Основной результат статьи содержится в следующем утверждении. Теорема 1. При любом целом неотрицательном п справедливо равен-

ство L

B0

¡Ва8

длина ее минимального единичного диагностического теста находится следующим образом:

Tdiagn sninv r\

LB0 (O1 'f) = 1

0, если / - селекторная функция,

1, если / конгруэнтна одной из функций 0, 1, х^,

х1 V х2, х1 & х2, х1 X х2, х1 | х2,

2, иначе.

Доказательство. Пусть булева функция /(хп) зависит (существенно или фиктивно) от переменных х1,х2,... ,хп . Если эта функция может быть реализована схемой, состоящей из одного функционального элемента (или двух, последний из которых - инвертор), и не является селекторной функцией, то ¡В"81 (О1, /) = 1 (для функции / = х1 справедливо равенство

¡В"81 (0п,/) = 0). Будем теперь считать, что функция / не реализуется схемами указанного вида, т.е. / неконгруэнтна функциям х1, х^, х1 V х2,

х1 &х2, х1 X х2 , х1 | х2 .

Выпишем полином Жегалкина функции / в виде Ру = К1 © К2 ©... © К © "0 , где К - монотонные конъюнкции различных

переменных или переменные (1 = 1, г), а0 £ {0,1} .

Случай 1. Пусть функция / есть тождественная константа (^ = 0). Пусть / = а, ае {0, 1}. Из принципа двойственности следует, что 1*а8" (О", у) = Ь^ (О" ,у). Легко заметить, что схема на рис. 1, реализующая константу 0, имеет минимальный единичный диагностический тест длины 1, значит, о" , у) = ьЦ"8" (о" , у) < 1. Поскольку константы -

неселекторные функции, имеем Ь%а%" (О", у) = Ь%а%" (О", у) = 1.

Случай 2. Пусть функция / отлична от константы (^ > 0 ), а значит, /неконгруэнтна функциям 0, 1, Х1, Х[, Х1 V , Х1 , Х1 X х2 , Х1 | х2 .

Построим неизбыточную схему £, реализующую / и допускающую единичный диагностический тест длины 2. Сначала построим (рис. 2) схему с двумя входами л л и двумя выходами а, Ь . При отсутствии неисправностей на левом выходе а реализуется функция у © л, а на правом выходе Ь реализуется константа ноль. В табл. 1 продемонстрированы значения, возникающие на выходах (а, Ь) в зависимости от значений л у2 при отсутствии неисправностей (столбец 0) и при одиночной инверсной неисправности одного из элементов (столбцы, содержащие в заголовке название элемента в соответствии с рис. 2).

о

Рис. 1. Схема S=q

У1У2

eWE3W

e2 у/ E^E™

Ее а Ь'

Рис. 2. Схема S©

Таблица 1

>"1 >"2 0 £1, E2 £3 £4 £5, £б

0 0 00 01 10 10 01

0 1 10 00 00 00 11

1 0 10 00 00 00 11

1 1 00 10 01 10 01

Как видно из табл. 1, схема $0 обладает одним важным свойством А: при любой неисправности элемента схемы $0 эта неисправность обнаруживается на любом входном наборе и при этом ровно на одном из двух выходов этой схемы.

Пусть монотонная конъюнкция К имеет вид xv xv &...&ху

12 г

(I е {1,..., ¿}, 2 < г < п , 1 <У1 <У2 <... <Уг <п). Для реализации К построим схему с входами xv ,ху ,...,ху и с двумя выходами су, йу (рис. 3). При

12 г

этом в отсутствие неисправностей в этой схеме на выходе су будет реализо-вываться К , а на выходе йу будет реализовываться константа ноль.

Рис. 3. Схема 8}

Построение 5у начнем с цепочки конъюнкторов Х1 . Входы схемы хУ1 ,

хУ2 соединяются с входами первого элемента Еу 1 цепочки , выход конъ-

11 юнктора Еу у_1 соединяется с левым входом у -го конъюнктора Еу у

(] е {2 , ...,г _ 1} ) цепочки; вход схемы xv соединяется с правым входом конъюнктора Е1 у цепочки. Для каждой цепочки Х1 построим две ее копии

Хг2, Хг3 (названия элементов в этих цепочках отличаются от названий соот-

1

ветствующих элементов цепочки только верхним индексом, повторяющим верхний индекс в названии той цепочки, которой принадлежит элемент; названия цепочек и их элементов на рис. 3 не даны; порядок цепочек - слева

направо, порядок элементов - сверху вниз). Отметим, что цепочки Х1, Х2,

3

строятся лишь при г > 1, при г = 1 роль каждой из цепочек выполняет вход схемы х^ . Для цепочек Х1, Х2, Хг3 сконструируем подсхему Q^. От

выходов каждой пары элементов Е1 у, Е2у проводятся дуги к входам подсхемы 50 (у = 1 г _ 1) в подсхеме Q^ . От выходов каждой пары элементов

1 3 -

Еу у, ЕIу проводятся дуги к входам еще одной подсхемы 50

в подсхеме Q^ . Затем в подсхеме следующим образом строится цепочка

, состоящая из дизъюнкторов. Выход каждого дизъюнктора цепочки, кроме последнего, соединяется с левым входом следующего дизъюнктора; все выходы подсхем 50 подсхемы Qj соединяются с остальными входами

дизъюнкторов цепочки Х4. Построение подсхемы Q^ завершено. От левых выходов тех двух подсхем 50 подсхемы Qj, входы которых соединены

с выходами последних элементов цепочек Х\ , Х2, Х3 , проводятся дуги к

входам конъюнктора Е5 (по одной дуге от каждого выхода). От выхода этого

1

конъюнктора и выхода цепочки Ху проводятся дуги ко входам еще одной (предпоследней в 5у) подсхемы 50 . От левого выхода этой подсхемы 50 проводится дуга к левому входу еще одной (последней в 5у) подсхемы 50 . От выхода цепочки Х4 проводится дуга к правому входу последней подсхемы 50 . Левый выход последней подсхемы 50 считается левым выходом су схемы 5у. Правые выходы последней и предпоследней подсхем 50 соединяются с входами дизъюнктора, выход которого считается правым выходом йу схемы 5у. Построение схемы 5у завершено.

Заметим, что схема 5у обладает важным свойством В: при отсутствии неисправностей в 5у на выходах всех подсхем 50 из Q^, на выходах всех дизъюнкторов вне подсхем 50 , на выходе конъюнктора Е5 , а также на пра-

вых выходах последней и предпоследней подсхем 5© реализуются тождественные нули, а на выходах цепочек Zг1, Zг2, Zг3 и на левых выходах последней и предпоследней подсхем реализуются К{ .

Построив подсхему 5^ для каждой конъюнкции К (7е{1,...,:}), завершим синтез схемы 5 (рис. 4), добавив еще подсхему Я. В состав этой подсхемы Я входит цепочка Zl подсхем 5©, цепочка Z2 дизъюнкторов, еще один выходной дизъюнктор Е и, быть может, еще один инвертор Е'.

Количество подсхем 5© в цепочке Zl равно 1. К левому входу каждой подсхемы 5© в цепочке Zl, начиная со второй, проводится дуга от левого выхода предыдущей подсхемы 5© цепочки Zl. К оставшимся входам первых (: -1) подсхем 5© цепочки Zl проводятся дуги от всех левых выходов подсхем 51, 52,..., 5: (по одной дуге от каждого выхода).

Рис. 4. Блочное устройство схемы 5 для не сохраняющей ноль функции

Количество дизъюнкторов в цепочке Z2 равно (2: — 2). К левому входу каждого дизъюнктора в цепочке Z2, начиная со второго, проводится дуга от выхода предыдущего дизъюнктора цепочки Zl. К оставшимся входам дизъюнкторов цепочки Z2 проводятся дуги от всех правых выходов подсхем 51, 52,..., 5{ и от всех правых выходов первых (: — 1) подсхем 5© цепочки Zl (по одной дуге от каждого выхода). От выхода последнего дизъюнктора цепочки Z2 проводится дуга к правому входу 1 -й подсхемы 5© цепочки Zl.

От обоих выходов t -й подсхемы S© цепочки Zj проводятся дуги ко входам дизъюнктора E , выход которого является выходом схемы S при üq = 0 . При üq = 1 от выхода E проводится дуга ко входу инвертора E', выход которого является выходом схемы S в этом случае. Схема S построена полностью.

В силу свойства B несложно понять, что в отсутствие неисправностей схемой S реализуется функция f , ибо в схеме S суммируются по mod 2 отличные от констант слагаемые полинома Жегалкина функции f (по разу каждое), нуль, являющийся дизъюнкцией нулей, возникших на правых выходах подсхем Sj и S@ , а затем полученное дизъюнктируется с нулем и, если нужно, инвертируется.

Допустим теперь, что в схеме S случилась одиночная инверсная неисправность на выходе некоторого элемента. Докажем, что реализуемая при этом функция равна или f , или константе üq , так что двух наборов достаточно для единичного диагностического теста.

Если неисправным оказался один из элементов E , E', то реализуемая на выходе S функция равна f .

Если неисправность произошла в t -й подсхеме S© цепочки Zj, то на левый вход этой подсхемы подается значение f © üq , а на правый - 0, так что на основании данных табл. 1 на выходе схемы возникнет или f , или константа üq .

Пусть неисправность произошла в одной из (t -1) первых подсхем S© цепочки Zj или в цепочке Z2 . Тогда в силу свойства А и того, что на выходах дизъюнкторов из Z2 и на правых выходах подсхем S© из Zj при отсутствии неисправностей оказываются тождественные нули, получаем: на произвольном входном наборе à при указанной неисправности либо вдоль цепочки Zj далее (после места неисправности) будут передаваться правильные значения, но вдоль цепочки Z2 будут передаваться единицы, а не нули, так что на левом выходе t -й подсхемы S© цепочки Zj появится значение f (à) © üq © ! и на правом - 0, и на выходе схемы S окажется значение f (à ), либо вдоль цепочки Zj далее (после места неисправности) будут передаваться неправильные значения, но вдоль цепочки Z2 будут передаваться нули, так что на левом выходе t -й подсхемы S© цепочки Zj появится значение f (à ) © üq © j и на правом - 0, и на выходе схемы S опять же окажется значение f ( à).

Осталось рассмотреть случай, когда неисправность произошла в подсхеме Sj (ie {j...,t}).

Пусть неисправность произошла в последней или предпоследней подсхеме S© подсхемы Si или в выходном дизъюнкторе подсхемы Si . Тогда в силу свойства А и того, что на правых выходах S© при отсутствии неисправностей оказываются тождественные нули, получаем: на произвольном

входном наборе (х при указанной неисправности либо вдоль цепочки Zj далее (после места неисправности) будут передаваться правильные значения, но вдоль цепочки Z2 будут передаваться единицы, а не нули, так что на левом выходе t -й подсхемы S© цепочки Zj появится значение f (ос) © ûq © 1 и на правом - 0, и на выходе схемы S окажется значение f (ос), либо вдоль цепочки Zj далее (после места неисправности) будут передаваться неправильные значения, но вдоль цепочки Z2 будут передаваться нули, так что на левом выходе t -й подсхемы S© цепочки Zj появится значение f (ос) © ûq © 1 и на правом - 0, и на выходе схемы S опять же окажется значение f (ос) .

Неисправность конъюнктора E5, очевидно, приведет к тому, что на выходе Cj подсхемы Sj всегда будет возникать неправильное значение, а на выходе dj - нуль, так что на выходе схемы S окажется реализованной f .

В силу того, что при отсутствии неисправностей в S на выходах подсхем S© из Qj и на выходах дизъюнкторов из Qj реализуются тождественные нули, а также в силу свойства А получаем: при неисправности любого одного из элементов подсхемы Qj на выходе цепочки Zj возникает тождественная единица (а на выходе конъюнктора E5 - тождественный нуль), что приводит к реализации f на выходе схемы S .

Пусть поломка случилась с каким-то конъюнктором Edj ( d £ {1,2 ,3} ).

12 3

В отсутствие неисправностей в схеме на выходах элементов Ej j, Ej j, Ej j

(при подаче набора (( на входы схемы) значения были одинаковыми, а на выходах всех подсхем S© из Qj и на выходах всех дизъюнкторов из Qj возникали нули, сейчас, однако, ситуация становится иной. На выходах E1 j,

23

Ej j, Ej j появляются оба значения (0 и 1), на левом выходе хотя бы одной

из подсхем S© из Qj появляется единица и в итоге на выходе цепочки Z4 появляется единица. Изучим значения bj , ¿2, ¿3 на выходах последних элементов Ej r_1, E2r_1, E3r_1 цепочек Z1, Z;2, Z3 соответственно. Ясно, что

два из этих трех значений вычислены в отсутствие неисправностей в цепях и совпадают с правильными значениями. Третье значение либо равно двум другим либо не равно им. Если все три эти значения равны, то на всех выходах тех подсхем S© из Qj , на входы которых подаются выходы Zj1 , Zj2 , Zj3 , -

нули, на выходе конъюнктора Ej - нуль, поэтому с учетом правильности

1

значения на выходе элемента Ej r_j на выходе схемы появляется неверное значение f ((о). Если значение bj отличается и от ¿2, и от ¿3, то на выходе Ej1 r _j вычислено неверное значение. Но при этом на левых выходах тех подсхем S© из Qj , на входы которых подаются выходы Zj1 , Zj2 , Zj3 , возникают

единицы (а не нули), на выходе конъюнктора Е5 - тоже единица (а не нуль), поэтому с учетом неправильности значения на выходе £1 г _1 и с учетом единицы на выходе цепочки 7^ на выходе схемы появляется неверное значение /(б). Если же, наконец, значение ¿1 совпадает с одним из значений ¿2, ¿3 и не совпадает с другим, то на левом выходе ровно одной из тех подсхем из

Qi, на входы которых подаются выходы 71, 7г2 , 73, появляется нуль, на выходе конъюнктора Е^ - тоже нуль, так что с учетом правильности значения на выходе £1 г_1 и с учетом единицы на выходе цепочки 7^ на выходе

схемы 5 появляется неверное значение /(бб) .

Значит, при всякой инверсной неисправности на выходе элемента функция, реализуемая неисправной схемой, равна / или константе Од, и, следовательно, хватает двух наборов для единичного диагностического теста.

Итак, в случае 2 для каждой булевой функции / имеет место неравенство ЕВа8"(О) < 2. Поскольку присоединение инвертора к выходу выходного элемента схемы не меняет длины минимального единичного диагностического теста, верно равенство ЕВ08" (О1™, /) = ЕВ08" (О1™, /) (здесь существенно, что/и / - не селекторные). Докажем, что

Е^81 (ОГ,/) = (ОГ

, /) = 2 . Обоснуем нижнюю

оценку. Рассмотрим произвольную неизбыточную схему в базисе Вд, реализующую одну из двух функций / , / . Выход этой схемы может быть выходом инвертора, тогда при отбрасывании этого инвертора получится реализующая другую из этих функций неизбыточная схема с тем же (что и исходная схема) единичным диагностическим тестом. Поэтому можно считать, что выходным элементом схемы является не инвертор, а, не ограничивая общности,

дизъюнктор ЕУ, и схема реализует / . Рассмотрим два подслучая.

1. Хотя бы на одном из входов выходного дизъюнктора ЕУ реализуется

константа (и к этому входу ведет дуга от выхода какого-то элемента Е * схемы). Ясно, что это - не константа 1, так как / # 1. Значит, на одном из входов выходного дизъюнктора реализуется константа 0. Но тогда при отсутствии неисправностей, при неисправности Е и при неисправности выходного дизъюнктора ЕУ схемой реализуются функции / , 1 и / соответственно, так что длина диагностического теста не меньше 2.

2. Ни на одном из входов выходного дизъюнктора ЕУ не реализуется константа. Пусть отличные от констант функции, реализуемые на входах выходного дизъюнктора, суть £ и Н . Обе эти функции не могут быть селекторными, так что будем считать, что £ реализуется на выходе некоторого

элемента Е* схемы. Если к обоим входам элемента ЕУ проведены дуги от

выхода элемента Е*, то можно выходом схемы считать выход элемента Е*,

а затем дизъюнктор Еу удалить, в результате чего получится реализующая / схема, длина диагностического теста которой такая же, как у исходной схемы. Поэтому можно считать, что выход элемента Е * соединен лишь с одним входом дизъюнктора Еу. Рассмотрим значения, которые могут возникать на выходе схемы при отсутствии неисправностей, при неисправности Е и при неисправности Е* в зависимости от значений ^ и И (табл. 2).

Таблица 2

g h g v h = f g v h = f g v h

0 0 0 1 1

0 1 1 0 1

1 0 1 0 0

1 1 1 0 1

Так как каждая из функций g , И отлична от константы, то среди входных наборов схемы обязаны найтись такие два, что либо будут иметь место ситуации, описываемые в первой и четвертой строках табл. 2, либо будут иметь место ситуации, описываемые во второй и третьей строках табл. 2. А значит, длина диагностического теста не меньше двух. Теорема доказана.

Замечание. Следует заметить: сложность схем, которые строятся в теореме 1, есть 0(п2п), а глубина этих схем сокращается до О(п) при замене цепочек элементов (подсхем) на бинарные деревья минимально возможной глубины, составленные из тех же элементов (подсхем).

Поскольку Е11^ (Р{пу ,п) = п (верхняя оценка при п > 1 элементарна, нижняя получается при рассмотрении монотонной конъюнкции ранга п ), из теоремы 1 следует теорема 2.

Теорема 2. При всяком целом неотрицательном п справедливы неравенства: п < (Р0Г,п) < п + 1.

Автор выражает искреннюю признательность профессору С. А. Ложкину, К. А. Попкову, а также Д. А. Неяглову за обсуждение доказательств и результатов и за замечания по существу работы.

Список литературы

1. Яблонский, С. В. О тестах для электрических схем /С. В. Яблонский, И. А. Чегис // Успехи математических наук. - 1955. - Т. 10, вып. 4 (66). -С. 182-184.

2. Чегис, И. А. Логические способы контроля электрических схем / И. А. Чегис, С. В. Яблонский // Труды математического института имени В. А. Стеклова. -1958. - Т. 51. - С. 270-360.

3. Редькин, Н. П. Надежность и диагностика схем / Н. П. Редькин. - М. : Изд-во МГУ, 1992. - 192 с.

4. Fujiwara, H. Logic testing and design for testability / H. Fujiwara. - Cambridge ; Massachusetts ; London : MIT Press, 1990. - 284 p.

5. Reddy, S. M. Easily testable realization for logic functions / S. M. Reddy // IEEE Trans. Comput. - 1972. - Vol. 21, Iss. 1. - P. 124-141.

6. Saluja, K. K. Fault detecting test sets for Reed-Muller canonic networks / K. K. Saluja, S. M. Reddy // IEEE Trans. Comput. - 1975. - Vol. 24, № 1. -P. 995-998.

7. Редькин, Н. П. О полных проверяющих тестах для схем из функциональных элементов / Н. П. Редькин // Вестник Московского университета. Сер. 1. Математика. Механика. - 1986. - № 1. - С. 72-74.

8. Редькин, Н. П. О полных проверяющих тестах для схем из функциональных элементов / Н. П. Редькин // Математические вопросы кибернетики. - 1989. -Вып. 2. - С. 198-222.

9. Редькин, Н. П. О проверяющих тестах для схем при однотипных константных неисправностях на входах элементов / Н. П. Редькин // Известия вузов. Математика. - 1988. - № 7. - С. 57-64.

10. Редькин, Н. П. О схемах, допускающих короткие тесты / Н. П. Редькин // Вестник Московского университета. Сер. 1. Математика. Механика. - 1988. -№ 2. - С. 17-21.

11. Редькин, Н . П . О единичных диагностических тестах для однотипных константных неисправностей на выходах функциональных элементов / Н. П. Редькин // Вестник Московского университета. Сер. 1. Математика. Механика. - 1992. -№ 5. - С. 43-46.

12. Редькин, Н. П. О синтезе легкотестируемых схем в одном бесконечном базисе / Н. П. Редькин // Вестник Московского университета. Сер. 1. Математика. Механика. - 2007. - № 3. - С. 29-33.

13. Коваценко, С. В. Синтез легкотестируемых схем в базисе Жегалкина для инверсных неисправностей / С. В. Коваценко // Вестник Московского университета. Сер. 15. Вычислительная математика и кибернетика. - 2000. - № 2. - С. 45-47.

14. Коляда, С. С. О единичных проверяющих тестах для константных неисправностей на выходах функциональных элементов / С. С. Коляда // Вестник Московского университета. Сер. 1. Математика. Механика. - 2011. - № 6. - С. 47-49.

15. Коляда, С. С. Единичные проверяющие тесты для схем из функциональных элементов в базисах из элементов, имеющих не более двух входов / С. С. Коляда // Дискретный анализ и исследование операций. - 2013. - Т. 20, № 2. - C. 58-74.

16. Коляда, С. С. Единичные проверяющие тесты для схем из функциональных элементов / С. С. Коляда // Вестник Московского университета. Сер. 1. Математика. Механика. - 2013. - № 4. - С. 32-34.

17. Носков, В. Н. Метод синтеза удобных для контроля комбинационных схем /

B. Н. Носков // Дискретная математика. - 1993. - Т. 5, вып. 4. - С. 3-23.

18. Hirayama, T. Easily testable realization based on OR-AND-EXOR expansion with single-rail inputs / T. Hirayama, G. Koda, Y. Nishitani, K. Shimizu // IEICE Trans. Inf. & Syst. - 1999. - Vol. E-82D, № 9. - P. 1278-1286.

19. Hayes, J. P. On modifying logic networks to improve their diagnoaability / J. P. Hayes // IEEE Trans. Comput. - 1974. - Vol. C-23, № 1. - P. 56-62.

20. Saluja, K. K. On minimally testable logic networks / K. K. Saluja, S. M. Reddy // IEEE Trans. Comput. - 1974. - Vol. C-23, № 1. - P. 552-554.

21. Inose, H. Synthesis of automatic fault diagnosable logical circuits by function conversion method / H. Inose, M. Sakauchi // Proc. First USA-Japan Computer Conf. -1972. - P. 426-430.

22. DasGupta, S. Dual-mode logic for function-independent fault testing / S. DasGupta,

C. R. P. Hartmann, L. D. Rudolph. // IEEE Trans. Comput. - 1980. - Vol. C-29, № 11. -P. 1025-1029.

23. Горяшко, А. П. О синтезе схем с минимальной трудоемкостью тестирования /

A. П. Горяшко // Автоматика и телемеханика. - 1981. - № 1. - С. 145-153.

24. Редькин, Н. П. Единичные проверяющие тесты для схем при инверсных неисправностях элементов / Н. П. Редькин // Математические вопросы кибернетики. -2003. - Вып. 12. - С. 217-230.

25. Бородина, Ю. В. О синтезе легкотестируемых схем в случае однотипных константных неисправностей на выходах элементов / Ю. В. Бородина // Вестник Московского университета. Сер. 15. Вычислительная математика и кибернетика. -2008. - № 1. - С. 40-44.

26. Бородина, Ю. В. О схемах, допускающих единичные тесты длины 1 при константных неисправностях на выходах элементов / Ю. В. Бородина // Вестник Московского университета. Сер. 1. Математика. Механика. - 2008. - № 5. -С. 49-52.

27. Бородина, Ю. В. Синтез легкотестируемых схем в базисе Жегалкина при константных неисправностях типа "0" на выходах элементов / Ю. В. Бородина, П. А. Бородин // Дискретная математика. - 2010. - Т. 22, вып. 3. - С. 127-133.

28. Бородина, Ю. В. Нижняя оценка длины полного проверяющего теста в базисе {x | y} / Ю. В. Бородина // Проблемы теоретической кибернетики : материалы XVII Междунар. конф. (Казань, 16-20 июня 2014 г.). - Казань : Отечество, 2014. -С. 38-39.

29. Романов, Д. С. О синтезе схем, допускающих полные проверяющие тесты константной длины относительно произвольных константных неисправностей на выходах элементов / Д. С. Романов // Дискретная математика. - 2013. - Т. 25, вып. 2. - С. 104-120.

30. Романов, Д. С. О синтезе схем, допускающих полные проверяющие тесты константной длины относительно инверсных неисправностей на выходах элементов / Д. С. Романов // Вестник Московского университета. Сер. 15. Вычислительная математика и кибернетика. - 2015. - № 1. - С. 30-37.

31. Романов, Д. С. Метод синтеза легкотестируемых схем, допускающих единичные проверяющие тесты константной длины / Д. С. Романов // Дискретная математика. - 2014. - Т. 26, вып. 2. - С. 100-130.

32. Попков, К. А. О точном значении длины минимального единичного диагностического теста для одного класса схем / К. А. Попков. - М. : Изд-во ИПМ им. М. В. Келдыша РАН, 2015. - 20 с.

33. Романов, Д. С. Метод синтеза неизбыточных схем в базисе Жегалкина, допускающих единичные диагностические тесты длины один / Д. С. Романов // Известия высших учебных заведений. Поволжский регион. Физико-математические науки. - 2015. - № 4 (36). - С. 38-54.

34. Von Neumann, J. Probabilistic logics and the synthesis of reliable organisms from unreliable components / J. Von Neumann // Automata Studies / eds. C. Shannon and J. McCarthy. - Princeton, NJ : Princeton University Press, 1956. - P. 329-378.

35. Алехина, М. А. О надежности и сложности схем в базисе {x | y} при инверсных неисправностях элементов / М. А. Алехина // Дискретный анализ и исследование операций. Сер. 1. - 2005. - Т. 12, № 2. - С. 3-11.

36. Алехина, М. А. Об асимптотически наилучших по надежности схемах в базисе {&, v, —} при инверсных неисправностях на входах элементов / М. А. Алехина,

B. В. Чугунова // Дискретный анализ и исследование операций. Сер. 1. - 2006. -Т. 13, № 4. - С. 3-17.

37. Васин, А. В. Об асимптотически оптимальных схемах в базисе {x&y,xv y,x} при инверсных неисправностях на выходах элементов / А. В. Васин // Известия высших учебных заведений. Поволжский регион. Физико-математические науки. -2008. - № 4. - С. 2-16.

38. Алехина, М. А. О надежности схем в базисах, содержащих функции не более чем трех переменных / М. А. Алехина, А. В. Васин // Ученые записки Казанского государственного университета. Сер. Физ.-матем. науки. - 2009. - Т. 151, кн. 2. -С. 25-35.

39. Алехина, М. А. Достаточные условия реализации булевых функций асимптотически оптимальными схемами с ненадежностью 2е / М. А. Алехина, А. В. Васин // Известия вузов. Математика. - 2010. - № 5. - С. 79-82.

40. Alekhina, M. A. Synthesis and complexity of asymptotically optimal circuits with unreliable gates / M. A. Alekhina // Fundamenta Informaticae. - 2010. - Vol. 104, № 3, P. 219-225.

41. Алехина, М. А. О базисах с коэффициентом ненадежности 2 / М. А. Алехина, А. В. Васин // Математические заметки. - 2014. - Т. 95, № 2. - С. 170-201.

References

1. Yablonskiy S. V., Chegis I. A. Uspekhi matematicheskikh nauk [Advances of mathematical sciences]. 1955, vol. 10, iss. 4 (66), pp. 182-184.

2. Chegis I. A., Yablonskiy S. V. Trudy matematicheskogo instituta imeni V. A. Steklova [Proceedings of the Mathematical Institute named after V.A. Steklov]. 1958, vol. 51, pp. 270-360.

3. Red'kin N. P. Nadezhnost' i diagnostika skhem [Reliability and diagnostics of circuits]. Moscow: Izd-vo MGU, 1992, 192 p.

4. Fujiwara H. Logic testing and design for testability. Cambridge; Massachusetts; London: MIT Press, 1990, 284 p.

5. Reddy S. M. IEEE Trans. Comput. 1972, vol. 21, iss. 1, pp. 124-141.

6. Saluja K. K., Reddy S. M. IEEE Trans. Comput. 1975, vol. 24, no. 1, pp. 995-998.

7. Red'kin N. P. Vestnik Moskovskogo universiteta. Ser. 1. Matematika. Mekhanika [Bulletin of Moscow University. Series 1. Mathematics. Mechanics]. 1986, no. 1, pp. 72-74.

8. Red'kin N. P. Matematicheskie voprosy kibernetiki [Mathematical problems of cybernetics]. 1989, iss. 2, pp. 198-222.

9. Red'kin N. P. Izvestiya vuzov. Matematika [University proceedings. Mathematics]. 1988, no. 7, pp. 57-64.

10. Red'kin N. P. Vestnik Moskovskogo universiteta. Ser. 1. Matematika. Mekhanika [Bulletin of Moscow University. Series 1. Mathematics. Mechanics]. 1988, no. 2, pp. 17-21.

11. Red'kin N. P. Vestnik Moskovskogo universiteta. Ser. 1. Matematika. Mekhanika [Bulletin of Moscow University. Series 1. Mathematics. Mechanics]. 1992, no. 5, pp. 43-46.

12. Red'kin N. P. Vestnik Moskovskogo universiteta. Ser. 1. Matematika. Mekhanika [Bulletin of Moscow University. Series 1. Mathematics. Mechanics]. 2007, no. 3, pp. 29-33.

13. Kovatsenko S. V. Vestnik Moskovskogo universiteta. Ser. 15. Vychislitel'naya matematika i kibernetika [Bulletin of Moscow University. Series 1. Mathematics. Mechanics]. 2000, no. 2, pp. 45-47.

14. Kolyada S. S. Vestnik Moskovskogo universiteta. Ser. 1. Matematika. Mekhanika [Bulletin of Moscow University. Series 1. Mathematics. Mechanics]. 2011, no. 6, pp. 47-49.

15. Kolyada S. S. Diskretnyy analiz i issledovanie operatsiy [Discrete analysis and research of operations]. 2013, vol. 20, no. 2, pp. 58-74.

16. Kolyada S. S. Vestnik Moskovskogo universiteta. Ser. 1. Matematika. Mekhanika [Bulletin of Moscow University. Series 1. Mathematics. Mechanics]. 2013, no. 4, pp. 32-34.

17. Noskov V. N. Diskretnaya matematika [Discrete mathematics]. 1993, vol. 5, iss. 4, pp. 3-23.

18. Hirayama T., Koda G., Nishitani Y., Shimizu K. IEICE Trans. Inf. & Syst. 1999, vol. E-82D, no. 9, pp. 1278-1286.

19. Hayes J. P. IEEE Trans. Comput. 1974, vol. C-23, no. 1, pp. 56-62.

20. Saluja K. K., Reddy S. M. IEEE Trans. Comput. 1974, vol. C-23, no. 1, pp. 552-554.

21. Inose H., Sakauchi M. Proc. First USA-Japan Computer Conf. 1972, pp. 426-430.

22. DasGupta S., Hartmann C. R. P., Rudolph L. D. IEEE Trans. Comput. 1980, vol. C-29, no. 11, pp. 1025-1029.

23. Goryashko A. P. Avtomatika i telemekhanika [Automation and remote control]. 1981, no. 1, pp. 145-153.

24. Red'kin N. P. Matematicheskie voprosy kibernetiki [Mathematical problems of cybernetics]. 2003, iss. 12, pp. 217-230.

25. Borodina Yu. V. Vestnik Moskovskogo universiteta. Ser. 15. Vychislitel'naya matemat-ika i kibernetika [Bulletin of Moscow University. Series 15. Calculus mathematics and cybernetics]. 2008, no. 1, pp. 40-44.

26. Borodina Yu. V. Vestnik Moskovskogo universiteta. Ser. 1. Matematika. Mekhanika [Bulletin of Moscow University. Series 1. Mathematics. Mechanics]. 2008, no. 5, pp. 49-52.

27. Borodina Yu. V., Borodin P. A. Diskretnaya matematika [Discrete mathematics]. 2010, vol. 22, iss. 3, pp. 127-133.

28. Borodina Yu. V. Problemy teoreticheskoy kibernetiki: materialy XVIIMezhdunar. konf. (Kazan', 16-20 iyunya 2014 g.) [Problems of theoretical cybernetics: proceedings of XVII International conference (Kazan, 16th-20th June 2014)]. Kazan: Otechestvo, 2014, pp. 38-39.

29. Romanov D. S. Diskretnaya matematika [Discrete mathematics]. 2013, vol. 25, iss. 2, pp. 104-120.

30. Romanov D. S. Vestnik Moskovskogo universiteta. Ser. 15. Vychislitel'naya matematika i kibernetika [Bulletin of Moscow University. Series 15. Calculus mathematics and cybernetics]. 2015, no. 1, pp. 30-37.

31. Romanov D. S. Diskretnaya matematika [Discrete mathematics]. 2014, vol. 26, iss. 2, pp. 100-130.

32. Popkov K. A. O tochnom znachenii dliny minimal'nogo edinichnogo diagnosticheskogo testa dlya odnogo klassa skhem [On the exact value of the minimal single diagnostic test set for circuits of a single class]. Moscow: Izd-vo IPM im. M. V. Keldysha RAN, 2015, 20 p.

33. Romanov D. S. Izvestiya vysshikh uchebnykh zavedeniy. Povolzhskiy region. Fiziko-matematicheskie nauki [University proceedings. Volga region. Physical and mathematical sciences]. 2015, no. 4 (36), pp. 38-54.

34. Von Neumann J. Automata Studies. Eds. C. Shannon and J. McCarthy. Princeton, NJ: Princeton University Press, 1956, pp. 329-378.

35. Alekhina M. A. Diskretnyy analiz i issledovanie operatsiy. Ser. 1 [Discrete analysis and research of operations. Sereis 1]. 2005, vol. 12, no. 2, pp. 3-11.

36. Alekhina M. A., Chugunova V. V. Diskretnyy analiz i issledovanie operatsiy. Ser. 1 [Discrete analysis and research of operations. Sereis 1]. 2006, vol. 13, no. 4, pp. 3-17.

37. Vasin A. V. Izvestiya vysshikh uchebnykh zavedeniy. Povolzhskiy region. Fiziko-matematicheskie nauki [University proceedings. Volga region. Physical and mathematical sciences]. 2008, no. 4, pp. 2-16.

38. Alekhina M. A., Vasin A. V. Uchenye zapiski Kazanskogo gosudarstvennogo universiteta. Ser. Fiz.-matem. nauki [Proceedings of Kazan State University. Sereis: physical and mathematical science]. 2009, vol. 151, bk. 2, pp. 25-35.

39. Alekhina M. A., Vasin A. V. Izvestiya vuzov. Matematika [University proceedings. Mathematics]. 2010, no. 5, pp. 79-82.

40. Alekhina M. A. Fundamenta Informaticae. 2010, vol. 104, no. 3, pp. 219-225.

41. Alekhina M. A., Vasin A. V. Matematicheskie zametki [Notes on mathematics]. 2014, vol. 95, no. 2, pp. 170-201.

Романов Дмитрий Сергеевич кандидат физико-математических наук, доцент, кафедра математической кибернетики, Московский государственный университет имени М. В. Ломоносова

E-mail: romanov@cs.msu.ru

Romanov Dmitriy Sergeevich Candidate of physical and mathematical sciences, associate professor, sub-department of mathematical cybernetics, Lomonosov Moscow State University

УДК 519.718 Романов, Д. С.

Метод синтеза неизбыточных схем в стандартном базисе, допускающих единичные диагностические тесты длины два / Д. С. Романов // Известия высших учебных заведений. Поволжский регион. Физико-математические науки. - 2016. - № 3 (39). - С. 56-72. Б01 10.21685/20723040-2016-3-4