Дополнительные элементы, вносимые в схему, для увеличения ее входов и выходов позволяют улучшить указанные характеристики и упростить задачу контроля и диагностики. Было доказано, что введение дополнительной логики в цифровую схему в соответствующую модификации, позволяет строить тестовые наборы, состоящие из пяти последовательностей.
Синтез таких схем (схем минимальной глубины) состоит из следующих этапов:
- Заданная булевая функция задается в базисе 2И-НЕ, И-НЕ.
- Каждый инвертор заменяется на двухвходовой сумму по модулю 2. При этом второй его вход будет дополнительным входом схемы, при обычном функционировании котором, на этот вход подается 1.
- По всем оставшимся входом элементам 2И-НЕ также включаются двухвходовые элемента М2. На вторые входы которых подаются значения 0. И эти входы также являются входами в схему.
Пример:
Для построения тестовой последовательности рассмотрим стандартный блок:
Для обнаружения всех возможных неисправностей элемента М2, имеющего 2 входа, необходимо 4 входные комбинации. Выходные значения Р1 и Р2 будут входными тестовыми последовательностями элемента 2И-НЕ. Выходные реакции элемента 2И-НЕ будут поступать на вход элемента М2 следующего модуля. Поэтому необходимо, чтобы по выходу элемента 2И-НЕ. По выходу элемента 2И-НЕ ноль должен появиться 2 раза для чего комбинация Р1 = 1 и Р2 = 1 должна быть подана на его входы дважды.
X1 |
C1 |
X2 |
C2 |
P1 |
P2 |
f |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
0 |
1 |
1 |
1 |
1 |
0 |
1 |
1 |
0 |
0 |
1 |
1 |
1 |
0 |
1 |
1 |
1 |
0 |
0 |
1 |
1 |
1 |
0 |
1 |
0 |
1 |
1 |
0 |
Здесь обнаружена последовательность 3-х единиц и 2 нуля.
Этот метод не отвечает на вопрос: где неисправность. Он только обнаруживает неисправность.
Анализ тестовых наборов показывает, что для полной проверти функционирования модифицированной схемы, необходимо, чтобы 5-ти битовые последовательности формируемые на ее входах и входов каждого элемента 2И-НЕ принадлежали множеству {x0,x1, … x9}
X0 = 00111
x1 = 01011
x2 = 01101
x3 = 01110
x4 = 10011
x5 = 10101
x6 = 10110
x7 = 11001
x8 = 11010
x9 = 11100
При этом процедура построения тестовой последовательности будет состоять из заданий входных последовательностей, соответствующих приведенному множеству.
Далее определяются входные последовательности для дополнительных входов схемы таким образом, чтобы на входе соответствующего элемента 2И-НЕ формировались последовательности {х0 х1 … х9}. При этом результатом их действия на элемент 2И-НЕ должна быть последовательности принадлежащая этому множеству. Данная процедура повторяется до тех пор, пока не сформируется выходная последовательности схемы, которая может и не принадлежать заданному множеству. В результате нашей схемы мы будем иметь такую последовательность.
X1 |
X2 |
X3 |
C1 |
C2 |
C3 |
C4 |
C5 |
C6 |
0 |
1 |
1 |
1 |
0 |
0 |
1 |
1 |
0 |
1 |
1 |
0 |
0 |
1 |
1 |
0 |
0 |
0 |
1 |
0 |
1 |
1 |
1 |
1 |
0 |
0 |
1 |
1 |
1 |
0 |
0 |
0 |
0 |
1 |
0 |
0 |
0 |
0 |
1 |
0 |
0 |
0 |
0 |
1 |
1 |
Синтез самотестируемых цифровых схем
BILBO
Основные функции, которые может выполнять схема Билба.
- Установка в 0 всех элементов памяти ( обнуление ) осуществляется подачей сигналов С3 = 0 и С2 = 1. В этом случае на входах всех триггеров сформируется значение логического нуля, которое записывается путем подачи синхроимпульса по входу С1.
- При подаче управляющего С3=1 и С2 = 1, элементы памяти, приведенные в схеме, функционируют по значениям. При этом записывается входная последовательность и соответственно считывается по выходам Yi.
- Для значения управляющего сигнала С2 = 0, С3 = 0 и С4 = 1, приведенная структура в генератор псевдослучайных последовательностей.
- При изменении управляющего сигнала С3 на противоположный, данная схема будет функционировать как многоканальный сигнатурный анализатор.