УДК 621.38 + 004
МОДЕЛИ И МЕТОДЫ ДИАГНОСТИРОВАНИЯ ЦИФРОВЫХ КОМБИНАТОРНЫХ СХЕМ
А.В. Матвеев, Г.А. Пюкке
Камчатский Государственный Технический университет, e-mail: [email protected]
Аннотация. Рассмотрены некоторые модели и методы диагностирования цифровых устройств на основе применения диакоптического подхода к логическим цепям с применением метода матричных преобразований. Введено понятие объемного покрытия матрицанта идентификации, на основе которого рассмотрен метод минимизации количества полюсов съема диагностической информации и двоичных наборов в тесте диагностирования, необходимых для реализации алгоритма поиска множественных дефектов и определения степени работоспособности цифровых устройств.
Ключевые слова: диагностика схем, матричные преобразования, минимизация, полюса, алгоритм поиска дефектов.
1. Введение. Математические модели, методы и алгоритмы диагностирования устройств и систем с дискретным изменением выходного сигнала исследованы наиболее полно. Однако по отношению к вопросу, рассматриваемому в настоящей работе, нет универсальных решений и проблема требует дальнейшего изучения. Один из наиболее перспективных в этой области является подход, основанный на взаимосвязи функций элементов устройства при образовании функции всего устройства в целом (диакоптический подход).
При возникновении дефектов в такой системе происходит изменение функций отдельных элементов и связи между элементами. Это приводит к изменению функции всей системы. При определенных условиях постановки диагностических экспериментов и построении соответствующих диагностических моделей приведенный подход может быть принят за основу для построения новых методик диагностирования.
Для двух основных задач диагностирования (поиск дефектов и определение степени работоспособности объекта диагностирования (ОД)) исследование состоит в нахождении достаточных условий, при которых такие закономерности обнаруживаются. Речь идет о логическом проявлении дефекта и его локализации, которое связано с изменением вида диагностической модели (ДМ) логической цепи (ЛЦ).
2. Модель логической цепи. Для характеристики состояния ЛЦ в целом можно ввести вектор, элементами которого являются функции:
L = (Fi,F2,...,Fm) , (3)
где: m - число элементов ЛЦ. Каждому i-ому элементу этого вектора, в соответствии с выполняемой им операцией, присваивается булева функция:
Fi (Uj) (4)
г = 1, пг - номер функции; ] = 1 ,п - номера входов логического элемента (ЛЭ). При таком представлении, вся логическая структура характеризуется функцией ЛЦ Р, которая выражается на основе принципа суперпозиции через элементарные функции составляющих этот компонент. Возникает следующий вопрос: «При каких наборах переменных на входе ЛЦ можно распознать дефекты любой компоненты ЛЦ».
Поставим в соответствие исследуемому ОД конечное множество возможных функций дискретного аргумента:
{Ро,Р1,..., Рк} (5)
где ^о - функция ОД при нормальной работе, ^ - функция ОД при наличии дефектов в г-м элементе, г = 1 ,к.
Если в качестве ОД рассматривать комбинационную схему (без памяти и обратных связей) имеющую п входов и один выход, то каждому из к + 1 состояний ОД будет соответствовать к + 1 векторов функций, координатами которых являются функции элементов ЛЦ.
Будем, далее, считать за одну неисправность одну интерпретацию схемы, вне зависимости от количества дефектов (количества элементов с измененными функциями), которому она соответствует. Тогда ОД характеризуется расширенной матрицей функций возможных компонентов ЛЦ. Каждый столбец матрицы £ определяет одно из возможных состояний объекта. Под состоянием принимаем интерпретацию схемы (неисправность) соответствующую одному или нескольким дефектам или отсутствию дефектов в ЛЦ описаную матрицей
£ =
■ /и /21 /31
/(к-1)1 / к1
/11/12 .../1к /21/22 ■■■ /2 к /31/32/33 ■■■ /3 к
/(к-1)1 ■ ■ ■ /*к-1)(к-1)/(к-1)к
Л Г* Г*
1 ■ ■ ■ !к(к-1) ■ ■■ !кк у ✓
С\
£
JllJl2 ■ ■ ■ Лк /21/22 ■ ■ ■ /2к
/31/32 /33 ■ ■ ■ /3к / *
■ ■ ■ /(к-1)к ■ ■ ■ ; • • 1кк ■ ■ \
-р *
/\к
/2к /3к
/
/ (к-1)1 Ск .
(6)
Элементы матрицы £ являются результатами выполнения логической функции определенной компонентой в определенном состоянии при номинальных значения сигнала на входе данного компонента, не зависимо от состояния работоспособности других компонент. Маркировка матрицы производится так: первый индекс - номер компонента, второй индекс - номер состояния, знак (*) соответствует дефекту (измененной функции компоненты).
Комбинаторно определяемое число столбцов матрицы £ соответствует возможному количеству состояний ОД, включающих: С0 работоспособных состояний; С^ состояний одиночных дефектов; С\ состояний двойных дефектов и т. д.; состояний к-кратных дефектов. Тогда
это число элементов в множестве Ь состояний определяется суммой биномиальных коэффициентов:
С0 + С1 + ■ ■ ■ + Ск = 2к. (7)
Значение сигнала на выходе ОД, или на выходе рассматриваемой подсхемы определяется совокупностью рассматриваемых компонент и взаимосвязью между ними. Это достигается «связыванием» функций компонент в диагностическую модель ОД.
Использование диакоптического подхода для построения аналитической модели диагностирования связано с большим объёмом вычислений, однако для электрических цепей невысокой размерности это вполне оправдано. Выражая функцию ЛЦ через функции составляющих компонент, можно установить взаимно-однозначное оответствие между множеством состояний ОД Ь и множеством к-кратных дефектов при различных наборах переменной на входе ЛЦ.
Рассмотрим, например, представленную на рис. 1 ЛЦ, реализующую переключательную функцию
^ = жТ А Х2 А Хз А Ж4 А ж5 А хе . (8)
X X, X. X* X X.
Рис. 1. Базовая схема.
Следуя выбранному диакоптическому принципу, представим ЛЦ в виде совокупности подсхем, согласно исполняемых ими функций (рис. 2)
Рис. 2. Совокупность вложенных подсхем.
= Х\ Л Ж2 Л Жз Л Х4 Л Ж 5 Л Жб => (9)
= ж! Л ж2 Л Ж3 => (10)
Рз = Ж4 Л Ж5 Л Жб => (11)
= (12)
= Ж2 Л Жз . (13)
Выход каждой подсхемы нумеруется начиная с выхода всей ЛЦ. Построение подсхем осуществляется из расчета наличия сквозной связи между входом ЛЦ и выходом исследуемой подсхемы. При таком делении выход каждой к-й подсхемы будет реагировать на изменения параметров всех компонент, входящих в данную подсхему. Тогда первая подматрица одиночных дефектов £1 матрицы £ будет иметь вид, показанный на Рис. 3.
6 ^
*
• *
• *
• • *
• • *
£2 ^
* * * *
* • • • * * *
• * • • * * *
• • * • • * • * *
• • • * • • * * *
Рис. 3. Матрица реакций схемы.
В матрице £1 столбцы соответствуют выходам подсхем. Это позволяет отразить в поле матрицы информацию о номере компоненты (строки), попадающей в зону контроля при идентификации данного состояния (точки в матрице £1). Значок * соответствует дефекту.
Для регистрации двойных дефектов составляется показанная на Рис. 3 подматрица £2. Регистрировать множественные дефекты, ограничиваясь контролем только на выходе ЛЦ, невозможно, так как при этом решение задачи становится неоднозначным. По этой причине матрица £2 включает все возможные сочетания двойных дефектов.
Введем в матрице £2 подсостояния (подматрицы) состояний (£2; £2 ; £2 ; £2 ). Тогда состояния будут соответствовать выходам подсхем, а подсостояния сочетаниям дефектов. Первая подматрица второго уровня деления £2 регистрирует первое состояние двойных дефектов. Состояние регистрируется на выходе ЛЦ и относится к различным сочетаниям измененной функции первой компоненты с измененными функциями остальных (к — 1) компонент.
В матрице £2 первые четыре колонки представляют подматрицу £2, три последующие представляют £2 , две последующие представляют £2 , и последняя колонка представляет £2 . Вторая подматрица £2 второго уровня деления относится к второму состоянию двойных дефектов. Это состояние регистрируется по выходу первой подсхемы и соответствует различным сочетаниям измененной функции второй компоненты с измененными функциями (к — 2) компонент ЛЦ. Таким же образом строятся подматрицы £2 и £2 .
Для регистрации тройных дефектов строится подматрица £з (Рис. 4), которая будет включать все возможные сочетания тройных дефектов, а также состояния £3; £3 ; £3 и их подсосто-
яния. Для регистрации четырехкратных дефектов строится подматрица £4 (Рис. 4) по такому же принципу.
£3 ^
* * * * * *
* * * • • •
* • • * * •
• * • * • *
• • * * * •
£3 ^
* * *
* *
* • *
• * *
/// £3 ^
£4 ^
* * * *
* * * • *
* * • * *
* • * * *
• * * * *
Рис. 4. Совокупность вложенных подматриц.
Для формализации процесса диагностирования вводится многоуровневый матрицант 2 идентификации (Рис. 5), представляющий собой объемную матрицу, каждый уровень которой определяет двумерную матрицу £ состояний всех элементов при текущем наборе двоичного кода на входе ЛЦ. Каждый последующий уровень в матрицанте идентификации будет отличаться от предыдущего новым набором переменных на входе ЛЦ. Каждая ячейка получившегося трехмерного пространства диагностирования будет определять данное состояние данного элемента при данном наборе переменных на входе ЛЦ. При реализации такого подхода становится возможным ввести двумерную минимизацию процесса диагностирования как по количеству двоичных наборов в тесте поиска дефектов так и по количеству точек съема диагностической информации.
При минимизации количества точек съема диагностической информации выполняется анализ матрицы £ с целью определения минимально возможного количества проверок для выполнения контроля всех компонент ЛЦ, что соответствует первому уровню матрицанта идентификации. Для решения такой задачи составляется матрица £, столбцы которой соответствуют состояниям одиночных и множественных дефектов, а строки элементам, на выходах которых производится проверка сигнала. Например, для ЛЦ на Рис. 1 имеем следующую матрицу:
£ =
1 00000 0000000000 0000000000 00000 0
1 10100 0100000000 0000000000 00000 0
1 11011 1011011001 0110010010 00100 0
1 11101 1101101010 1010100100 01000 0
1 11110 1110110100 1101001000 10000 0
Рис. 6. Матрица состояний при наличии дефектов.
На этой матрице единице соответствует состояние работоспособности компонента, нулю - дефект элемента. Заметим, что первый столбец соответствует состоянию полной работоспособности всех компонент, и поэтому он состоит из одних единиц. Последний столбец соответствует состоянию полной потери работоспособности компонентами, и поэтому он состоит из нулей.
Матрицу £ можно упростить, исключив одинаковые столбцы, так как они не несут новой информации о состоянии ОД, а также строки с нулевыми элементами, как не отражающие различимости состояний. В результате, образуется укороченная матрица состояний компонент £* (Рис. 7)
Г =
10100 0000 0
11011 0001 0
11101 1010 0
11110 1100 0
Рис. 7. Упрощенная матрица дефектов.
В этой матрице каждый столбец отражает новое состояние, включающее совокупность под-состояний одиночных, двойных, тройных и четырехкратных дефектов. Например, четвертый столбец [0110]т соответствует как одиночному дефекту пятой компоненты, так и двойному дефекту пятой и первой компонент, двойному дефекту пятой и второй компонент, а также тройному дефекту первой второй и пятой компонент. Таким образом, в матрице £* каждый столбец объединяет группу логически неразличимых подсостояний. Однако, все столбцы матрицы £* отражают логически различимые состояния.
СТРУКТУРНЫЕ ЕДИНИЦЫ
1 2 3 4 5 в 7 8 9 10 11 12 13 14 15
1 1 1 1 1 1 1 1 1
2 2 2 2 2 2 2 2 2
3 3 3 3 3
4 4 4 4 4
5 ь ь ь ь
сосл ['ОЯНИЯ
1 || 2 II 3 II 4 II 5 II 6
СТРУКТУРНЫЕ ЕДИНИЦЫ
16 17 18 18 20 21 22 23 24 25 26 27 28 29 30
1 1 1 1 1 1 1
2 2 2 2 2 2 2
3 3 3 3 3 3 3 3 3 3 3
4 4 4 4 4 4 4 4 4 4 4
ь ь Ь ь Ь Ь Ь Ь Ь Ь ь
( юстом ния
У II 8 || 9 || 10
Рис. 8. Матрица структурных единиц.
В связи с этим, логически неразличимые подсостояния целесообразно объединить в группы состояний и диагностирование производить с точностью до состояния. Например, десяти состояниям матрицы £* соответствует тридцать СЕ различимых по сочетаниям компонент с дефектами в каждой из них (Рис. 8).
Заметим, что при необходимости поиска только одиночных дефектов, все дефекты будут логически различимы и каждый из них будет соответствовать определенному состоянию ОД.
Для выполнения условия различимости состояний и нахождения минимальной совокупности полюсов съема диагностической информации над элементами матрицы £* выполняется операция суммы по модулю два (/ ф /2) и формируется новая матрица Ф (матрица дефектов)
(Рис. 9). Строки матрицы Ф соответствуют всем потенциально возможным точкам съема диагностической информации, а столбцы соответствуют попарным сочетаниям всех возможных состояний. Число таких сочетаний составляет М = С2, где г - число столбцов (состояний)
в матрице £* (для рассмотренного примера М = С2о = 45). Анализ матрицы Ф позволяет минимизировать число точек. 1о
Ф
101111111100000001111111000000000000000000000' 010011101100111011100010011101111010010010101 001001011010010111001011110100010111011100110 000100111001001110100111100111110000111111000
Рис. 9. Обобщенная матрица дефектов.
Минимальное количество точек съема информации определяется покрытием матрицы Ф, т.е. таким множеством ее строк, что для каждой части столбца ] найдется строка с единицей в позиции Иными словами, для определения минимального количества точек съема информации, необходимых для однозначной идентификации одного из возможных состояний, необходимо выбрать такое количество строк в матрице Ф,чтобы в каждой строке была минимум одна единица. Например, для матрицы Ф,построенной на основе ЛЦ (Рис. 1), покрытие объединяет вторую, третью, четвертую и пятую строки (Д2, Д3, Д4, Дб). Следует отметить, что указанное покрытие будет достаточным, но не оптимальным, т.е. полученное число точек достаточно при определении любого сочетания дефектов, но это не значит, что среди всевозможных сочетаний дефектов не найдется такое, что будет обнаружено при использовании меньшего количества точек съема информации.
Таким образом, в результате решения первой составляющей двумерной минимизации процесса диагностирования становится известной минимально возможная совокупность точек съема информации, чувствительная к изменениям функций всех компонент, которые входят в логическую цепь. Для решения второй задачи минимизации по количеству двоичных наборов в тесте поиска дефектов необходимо построить многоуровневый матрицант 2, на основе которого определяется объемное покрытие матрицанта 2, что позволяет реализовать глубину поиска множественных дефектов до компонента ЛЦ. Объемное покрытие определяет минимально возможное количество двоичных кодов на входе ЛЦ и минимальное количество точек съема диагностической информации необходимых для реализации алгоритма поиска множественных дефектов с глубиной до компонента ЛЦ.
Построение матрицанта 2 начинается с формирования первого уровня значений выходов всех подсхем, соответствующих различным комбинациям дефектов в ЛЦ при воздействии на вход ЛЦ первой двоичной комбинации переменных. По аналогии строится второй, третий и т. д. уровни, вплоть до 2т - го , где т - разрядность кода.
Сечение матрицанта 2 вертикальной плоскостью, параллельной оси состояний через точки Дг, где г - количество точек съема информации, раскрывает совокупность матриц ©¿, строки которых определяют различные двоичные наборы на входе ЛЦ, а столбцы соответствуют различным состояниям ЛЦ.
Формирование уровней матрицанта выполняется в соответствии с полученной совокупностью подсхем (Рис. 2) при перечислении всех возможных сочетаний дефектов. Для упрощения
рассуждений ограничимся рассмотрением дефектов типа «инверсия» или замены функций элемента на константу ноль.
Как уже говорилось, неопределенность на выходе какой-либо подсхемы регистрируется не на всех наборах переменной на входе ЛЦ. Поэтому для более детального изучения совокупности всех возможных типов дефектов и результатов, регистрируемых в ЛЦ вследствие их возникновения, необходимо использовать понятие полного расширения функции ЛЦ. С точки зрения диагностики это предполагает синтез всей совокупности логических цепей, полученных в результате всевозможных полных доопределений функций элементов ЛЦ, каждая из которых реализует переключательную функцию, соответствующую определенной неисправности в ЛЦ.
Объемное покрытие матрицанта 2 используется для разрешения неразличимых состояний при переходе от одной плоскости матрицанта в другую (состояния неразличимые в одной плоскости становятся различимыми в другой) (Рис. 10). Это в большинстве случаев позволяет снизить количество обращений к объекту диагностирования и сократить количество двоичных кодов в тесте диагностирования.
Рис. 10. Различимость состояний в матрицанте.
Доказывать общность этих утверждений нет необходимости: достаточно выработать совокупность критериев, подтверждающих возможность применения метода для диагностирования данного объекта. Такими критериями являются чувствительность выходов каждой подсхемы (Рис. 2) к изменениям параметров всех компонент в нее входящих, возможность представления диагностической модели в виде матрицанта и ограничения, накладываемые на тип логической цепи и характер возникающих в ней дефектов.
При нахождении объемного покрытия используется анализ диагностической модели в плоскостях (Д2, Дэ, Д4, Д5) (выход компоненты - состояние) на основе геометрии логической цепи. Здесь г - количество полюсов съема диагностической информации, ] - количество состояний ОД. В плоскостях (Ык; Бj) (код - состояние) анализ различимости состояний базируется на совокупности двоичных кодов в тесте идентификации, где к - количество двоичных кодов (Рис. 10 ) . В плоскости (Ык, Д^ отображается результат минимизации.
При формировании уровней матрицанта необходимо произвести логический анализ всех матриц в плоскостях (Д^, Бj) на чувствительность выходов подсхем (Рис. 2) к дефектам в них, т.е. сформировать множество матриц £к, определяющих логически различимые состояния на основе топологии цепи. Рассмотрим логическую цепь на Рис. 11:
Рис. 11. Контрольная схема.
Формируется набор матриц £к. Для различных уровней матрицанта, соответствующим различным кодам на входе ЛЦ. Например код 000 примет вид, указанный на Рис. 12.
<Ь'о 1 2 3 4 1 2 1 3 1 4 2 3 2 4 3 4 1 2 3 1 2 4 1 3 4 2 3 4
Ат 1 0* 0* 0* 0* 1* 1* 1* 0* 0* 0* 1* 1* 1* 1*
д2 0 0 1* 0 1* 1* 0 1* 1* 0* 1* 1* 0* 1* 0*
Аз 0 0 0 1* 1* 0* 1* 1* 1* 1* 0* 1* 1* 0* 0*
д4 1 1 1 1 0* 1 1 0* 1 0* 0* 1 0* 0* 0*
Рис. 12. Подматрица идентификации для контрольной схемы.
Столбцы полученных матриц соответствуют различным состояниям ОД (£о - состояние отсутствия дефектов всех компонент, остальные столбцы соответствуют состояниям наличия одиночных, двойных и тройных дефектов). Строки соответствуют различным точкам съема диагностической информации. В каждую ячейку выставляется 0 или 1, в зависимости от кода на входе ЛЦ, точки съема информации и наличия одного или нескольких дефектов типа «инверсия». Далее, выполняется логический анализ диагностируемой схемы, который заключается в определении зоны регистрации дефектов. Результаты анализа отражаются в геометрии построенных матриц: в ячейку матрицы выставляется знак (*), если данный полюс Д^ регистрирует дефект или набор дефектов Si. Результаты анализа не зависят от кода на входе ЛЦ. Поэтому распределение звездочек в поле всех матриц будет одно и тоже.
Выпишем отдельно матрицу дефектов (Рис. 13) и выполним идентификацию неразличимых подсостояний. Неразличимыми будут состояния 2 и 12; 3 и 13; 23 и 123, а также состояния 4, 14, 24, 34, 124, 134, 234 и 1234 (не отраженное в матрице).
£ б'о 1 2 3 4 1 1 1 2 2 3 1 1 1 2
2 3 4 3 4 4 2 2 3 3
3 4 4 4
Ат * * * * * * * * * * * * * *
д2 * * * * * * * * * * *
Дз * * * * * * * * * * * *
д4 * * * * * * *
Рис. 13. Первое преобразование подматрицы идентификации.
На основе анализа матрицы £ строим матрицу £* (Рис. 14) и, далее, для определения минимальной совокупности полюсов съема диагностической информации, строим матрицу Ф (Рис. 15). В каждую клетку матрицы Ф выставляется 1 или 0 в зависимости от того сравниваются различимые или неразличимые состояния по данному выходу Дi в матрице £* . Первые пять столбцов матрицы Ф используются для определения минимального количества полюсов съема диагностической информации при определении работоспособности ОД. Так как все неработоспособные состояния различимы с эталонным состоянием Sо по выходу Д1, то полюс Д1 достаточен для определения наличия дефектов вообще. Последующие десять столбцов используются для построения алгоритма поиска неработоспособных состояний. Первую строку матрицы Ф можно вычеркнуть т.к. все сочетания состояний по выходу Д1 будут неразличимы. Следовательно, для однозначной идентификации состояний достаточно контролировать полюсы Д2, Д3, Д4.
Г <Ь'о 1 2 3 23 4
12 13 123 14
24
24
124
134
234
1234
Ат * * * * *
д2 * # * *
Дз # * * *
д4 # * * * * *
Рис. 14. Второе преобразование подматрицы идентификации.
Для построения алгоритма идентификации состояний формируем матрицу £** посредством вычеркивания первой строки в матрице £* (Рис. 14), отмеченной идентификатором Д1. Анализ этой матрицы показывает что все состояния различимы.
AT 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0
Д2 1 0 1 1 1 1 0 1 1 1 0 0 1 1 0
Аз 0 0 1 1 1 0 1 1 1 1 1 1 0 0 0
Д4 0 0 0 0 1 0 0 0 1 0 0 1 0 1 1
Ф
Рис. 15. Матрица минимизации полюсов съёма информации.
Алгоритм идентификации будет включать три проверки на полюсах Д2, Дэ, Д4 на наличие (#) или отсутствие (*) рабочего сигнала. Результаты этих проверок позволяют определить
Г *"
какое из состояний имеет место (например, при регистрации набора
ние
1
*
L#J
имеет место состоя-
3 . Других наборов, не входящих в матрицу £** быть не может, в силу специфики
схемы ОД и особенностей методики диагностирования. Полученный результат представляется частью объема матрицанта идентификации (Рис. 16), где плоскости (Дi,Sj) (выход компоненты - состояние) имеют одинаковое распределение звездочек (*) для различных наборов двоичного кода на входе ЛЦ.
ООО OOl OIO oil LOO lot 110 111
Рис. 16. Расшифровка результата.
Информация, получаемая в результате применения алгоритма к построенной модели, дает представление о месте расположения дефектов и позволяет идентифицировать группы подсо-стояний на основе наличия или отсутствия сигнала в канале прохождения тестового сигнала. Так как на вход логической цепи подаются только двоичные наборы, то для расшифровки результатов диагностирования необходимо построение матрицы расшифровки, позволяющей представить результаты логического анализа цепи на языке нулей и единиц. Регистрация под-состояний осуществляется в плоскости «состояние - код» в результате которой из оставшегося объема матрицанта выделяется область диагностирования, включающая необходимые полюсы и наборы двоичного кода идентификации.
Введение объемного покрытия матрицанта идентификации позволяет увеличить глубину минимизации объема диагностической информации. Это дает возможность производить поиск дефектов произвольной кратности при совмещении в единой диагностической модели логического и тестового подходов.
MODELS AND METHODS FOR DIAGNOSING DIGITAL COMBINATORIAL CIRCUITS
A.V. Matveev, G.A. P^kk^
Камчатский Государственный Технический университет, e-mail: [email protected]
Abstract. Some models and methods for diagnosing digital devices through the use of diakoptick approach to logical circuits on the basis of the method of matrix transformations are under consideration. Is is introduced the concept of volume coverage matrix identification. On its basis the
method of minimizing the number of poles and removal of diagnostic information binary vectors in the test diagnosis is proposed. This information is necessary to implement the search algorithm of multiple defects and determine the degree of efficiency of digital devices.
Key words: diagnosis schemes, matrix transformations, minimizing of poles number, search of algorithm defects.