
Кольцевое тестирование
.pdf
2.2 Кольцевое дублирование последовательностных схем.
Кольцевое дублирование (КД) является одной из разновидностей КТ,
использующая эталон ДУ , который включается параллельно ДУ. Данный метод лишён недостатков КТ [1].
Моделью синхронного дискретного объекта тестирования служит конечный автомат, заданный пятёркой:
(S, X n , X m , , )
(2.6)
где S – множество внутренних состояний; n,m – число входов и выходов; X n , X m – множества входных и выходных сигналов; - функция переходов, задающая отображения подмножества множества S X n на S; -
функция выходов, задающая отображения подмножества множества S X n на
X m . Принятая модель объекта является достаточно общей, поэтому предлагаемый способ построения ЛПОС ориентирован на достаточно широкий класс дискретных устройств.
В состав ЛПОС входят ДУ, КУ, Рг n, М2 (рис 2.2)
Рис.2.2. Линейная система дублирования.

Особенность КУ состоит в том, что в нём содержится ДУ - копия
исправного ДУ. Кроме того, КУ содержит регистр Рг с числом разрядов и необходимые соединения выходов регистров Рг n, Рг со входами М2.
Период системы характеризуется функцией:
(x1,..., xr ) a1x1 ... ar xr |
(q n ) , |
|
(2.7) |
|
|
где (x ,..., x ) X r - множество выходных сигналов регистра Рг r, и равен |
||
1 |
r |
|
показателю Т неприводимого многочлена (2.4) над GF(2). |
|
|
Построение ЛПОС КД сводится к построению |
односумматорного |
генератора, воспроизводящего строго периодические последовательности.
Действительно, пусть Ф и F – функции ДУ и ДУ со свёртками М2 на
выходах (рис. 2.2). Тогда для исправных ДУ и ДУ имеет место сравнение:
F( ) ( ) 0 |
( 0,1,...) |
(2.8)
по mod2, а функция обратной связи (2.7) системы реализуется соединениями выходов Рг r со входами М2. Выход i-го разряда Рг r
соединяется со входом М2, если ai 1. Установка ЛПОС в начальное состояние производится установкой ДУ и ДУ в одинаковые состояния
S(0) S и установкой Рг r в состояние X r (0) X r . Так как работа исправной ЛПОС описывается соотношением (2.5), то решение об исправности ДУ принимаются в случае выполнения равенства:
X r (T ) X r (0)
|
ДОСТОВЕРНОСТЬ ТЕСТИРОВАНИЯ |
|
2.1 Достоверность для максимального периода. |
Под |
линейной последовательной системой (ЛПОС) понимается |
конечный автомат, заданный уравнениями [5]: |
|
R( 1) AR( ) BX ( ), |
|
|
Z ( ) CR( ), |
|
|
где X есть входной, Z выходной векторы, R вектор состояния, A, B, C |
|
векторы над полем GF (2) . Матрица A называется матрицей внутренней сети |
|
ЛПОС, |
а многочлен det( A I ) называется характеристическим |
многочленом ЛПОС.
При кольцевом тестировании (КТ) результат проверки получается при
наблюдении поведения автономного генератора, в который преобразуется проверяемый элемент. В тестовом режиме генератор устанавливается в начальное состояние, затем подаются T тактовых сигналов, где T - период генератора. Если конечное состояние генератора совпадает с начальным, то проверяемое устройство считается исправным, в противном случае —
неисправным.
При проверке исправности в системе КТ из-за отсутствия потактного сравнения фактических ответов ДУ с эталонными ответами существует риск принять неисправное ДУ за исправное. Поскольку решение об исправности принимается в результате сравнения рекуррентной свертки этих ответов с эталоном, то возможно появление неправильных ответов, не изменяющих результата свертки. Подобный риск существует в большинстве диагностических систем, использующих сжатие ответов. Для оценки степени этого риска будем применять такой показатель, как достоверность тестирования.
Множество неисправных модификаций ЛПОС разбивается на классы эквивалентности 1,...,d , которые представляются многочленами g z
(deg g r) над |
GF (2) . Тем самым рассматриваются неисправности, |
преобразующие |
систему в линейные неисправные модификации. |
Предполагается, что исправная ЛПОС описывается неприводимым нормированным многочленом r той степени, а появление любого из 2r 1

"неисправных" многочленов происходит с вероятностью 2 r . Здесь r n для комбинационного ДУ, r для не зависящего от входа ДУ, r n для не зависящего от выхода ДУ, r или n для зависящего
от входа и выхода ДУ, q r для произвольного ДУ в системе КД.
Определим достоверность тестирования в множестве представителей классов1 ,..., d . Для этого достоверность будем находить по формуле [6]:
Q r 1 P r , |
(2.1) |
где P r вероятность не обнаружения неисправностей, вычисляемая при предположении о равновероятностном появлении дефектов.
Имеется несколько методов определения достоверности, но все они сводятся к определению достоверности по формуле 2.1. Таким образом, разница в определении достоверности различными способами заключается в разнице определения вероятности не обнаружения неисправностей P(r) .
Рассмотрим эти методы.
1. Произведём подсчёт Q(r) для случая примитивного g z , для которого формула 2.1 допускает нижнюю оценку. В этом случае система
тестирования |
|
имеет максимальный период |
T 2r 1. Поскольку |
||
исправность ДУ устанавливается по факту выполнения равенства: |
|||||
X |
r |
( ) X |
r |
(0) ( T 2r 1) , |
(2.2) |
|
|
|
|
то с учётом неисправностей ДУ это равенство будет выполняться для всех |
||||
неприводимых |
нормированных |
многочленов |
g z |
(deg g r) , |
принадлежащих |
показателю T и |
показателям, являющимся |
делителями |
числа T . Число таких многочленов равно [6]:
(r) 1 (k)2r / k ,
r k \r
где суммирование проводится по всем делителям k числа r ; Мёбиуса:
(k) 1, если k 1;
(k) 0, если k делится на квадрат простого числа;
(k) ( 1)l , если k p1 p2 ...pl .
Формула (2.2) может быть переписана в виде [6]:
|
1 |
|
|
|
r /( p p |
) |
|
|
(r) |
|
2r 2r / pi 2 |
i j |
|
... ( 1)l 2r /( p1 p2 ...pl ) |
, |
||
r |
|
|
||||||
|
|
i |
ij |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
(2.3)
(k) функция
(2.4)

где r p1r1 p2r2 ...plrl ; p1, p2 ,...,pl различные простые делители числа r ; r1, r2 ,...,rl кратность делителей. Учитывая, что появления исправной и
неисправной модификаций системы представляют собой равновероятные и взаимоисключающиие исходы, для системы максимального периода имеем:
P(r) 2 r (r) 1 .
2. Второй способ отличается от первого иным определением (r) . А сама достоверность рассчитывается по формуле:
Q(r) 1 2 r (r) 1 . |
|
(2.5) |
|||
Если решение об исправности ДУ принимается по результату |
|||||
выполнения равенства 2.2 в |
такте T и невыполнения |
2.2 в тактах |
|||
1,2,…,T 1, то |
неисправные модификации системы с |
примитивным |
|||
многочленом g z |
(deg g r) |
не будут обнаружены. Число примитивных |
|||
многочленов равно: |
|
|
|
||
(r) |
1 |
(T ) , |
|
|
(2.6) |
|
|
|
|||
|
r |
|
|
|
где T 2r 1; (T ) функция Эйлера, которая может быть выражена через функцию Мёбиуса следующим образом:
(T ) (T / k)k .
k\T
Вэтом случае для выражения 2.6 имеет вид [6]:
(r) |
1 |
T |
T |
|
T |
... |
T |
...( 1)l |
T |
|
, |
(2.7) |
|
|
|
|
|
|
|||||||
|
|
|
p1 |
|
p2 |
p1 p2 |
|
|
|
|
||
T |
|
|
|
p1 p2 ...pl |
|
|
||||||
где p1, p2 ,..., pl простые делители числа T . Оценка |
2.5 обычно для |
|||||||||||
выражения 2.7 оказывается выше, чем для выражения 2.4. |
|
Оба способа определения достоверности кольцевого тестирования дают примерно одинаковые результаты.
Пример. Определить достоверность тестирования ЛПОС, характери-
зующуюся многочленом g(z) z10 |
z3 1; T 1023; r 10. |
Найдем оценку достоверности для двух способов анализа результатов |
|
тестирования. Разложив T и |
r на простые сомножители: r 2 5 ; |
T3 11 31, по 2.4, 2.7 получим:
(10) 101 210 (210 / 2 210 / 5 ) 210 /10 99;

(10) |
1 |
1023 |
1023 |
|
1023 |
|
1023 |
|
1023 |
|
|
1023 |
|
1023 |
|
1023 |
|
||
|
|
|
|
|
|
|
|
|
|
||||||||||
10 |
|
3 |
11 |
|
31 3 11 |
|
3 31 |
11 31 |
3 11 |
|
|
||||||||
|
|
|
31 . |
||||||||||||||||
60. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
По формуле 2.5 находим Q(r) 0,904 ; Q(10) 0,942 соответственно.
Если T 2r 1- простое число, то неравенство 2.5 для обоих случаев анализа результатов превращается в равенство:
Q(r) 1 r 1 2 r (2r 1 1) 1 r 1.
Это выражение является нижней границей определения достоверности кольцевого тестирования.
Верхней границей определения достоверности КТ является выражение:
Q(r) 1 1 . 2r
Таким образом, достоверность КТ лежит в пределах:
1 |
1 |
Q(r) 1 |
|
1 |
. |
(2.8) |
|
|
|
||||
|
r |
|
2r |
|
||
3. |
Определим |
|
далее |
достоверность тестирования во множестве |
неисправных модификаций ЛПОС. Пусть проверяемая ЛПОС преобразована
в автономную ЛПОС (АЛПОС) введением обратной связи, так что уравнение
переходов состояний АЛПОС имеет вид:
S( 1) US( ) , |
|
|
|
|
где S( ) (s1( ),...,sr ( )) |
вектор-столбец |
состояний |
АЛПОС; |
U |
характеристическая матрица |
над GF (2) , |
имеющая |
размер |
r r . |
Дополнительное оборудование, необходимое в тестовом режиме, состоит из дополнительных входов и выходов ЛПОС, используемых только в тестовом режиме, а также дополнительной ЛПОС, включаемой в контур обратной связи проверяемой ЛПОС. Под неисправностью проверяемой ЛПОС будем понимать физический дефект, приводящий к искажению матрицы U АЛПОС. Зададим неисправности в виде множества искажённых матриц
U :U U U , |
где U матрица размера |
r r . Так как |
достоверность |
|
определяется по |
формуле 2.1, |
где P(r) |
вероятность |
необнаружения |
искажения U U U матрицы |
U при условии равновероятности всех |
искажений.
Таким образом, мощность множества оказывается равной числу 2r2 различных матриц U . Рассмотрим систему простого максимального периода
T 2r 1. В этом |
случае каждый |
примитивный |
многочлен |
det(U U zE) g(z) |
представляет один из |
классов 1 ,...,d , |
имеющих |
одинаковые мощности: |
|
|
|
r 1 |
|
|
|
2 r (2r 2i ) . |
|
(2.9) |
i 0
Имеет место теорема [5].
Теорема. Пусть характеристический многочлен АЛПОС является неприводимым многочленом степени r простого периода T . Тогда достоверность кольцевого тестирования:
|
|
|
|
|
|
|
r 1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2r2 r |
|
(T 1) (2r 2i ) |
|
|
|
|
|
|
|
||||||
|
|
|
|
|
|
i 0 |
|
|
|
|
|
|
|
|
|
|
|
|
Q(r) 1 |
|
|
|
r 2r |
|
|
|
. |
|
|
|
|
|
(2.10) |
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||
|
|
|
|
2r2 |
|
|
|
|
|
|
|
|||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
Доказательство |
|
Вероятность |
необнаружения |
неисправности |
||||||||||||||
АЛПОС P(r) M / 2r2 , где M число матриц U U таких, |
что конечное |
|||||||||||||||||
состояние |
неисправной |
|
АЛПОС |
совпадает |
с |
конечным |
|
состоянием |
||||||||||
исправной АЛПОС, 2r2 - число различных |
r r |
матриц над |
GF (2) . Так как |
|||||||||||||||
T простое |
|
число, |
|
то |
|
M M1 M 2 , где M1 количество |
неисправных |
|||||||||||
АЛПОС периода единица, а M 2 количество неисправных АЛПОС периода |
||||||||||||||||||
T при заданном начальном состоянии S(0) 0. |
|
|
|
|
|
|
||||||||||||
Число |
M1 определяется |
количеством решений |
системы |
уравнений |
||||||||||||||
(U U )S(0) S(0) или |
|
(U U I )S(0) 0 . |
Эта система из r |
уравнений |
||||||||||||||
относительно |
|
r 2 неизвестных имеет ранг, равный |
r , |
поэтому существует |
||||||||||||||
2r2 r решений этой системы. |
|
|
|
|
|
|
|
|
|
|
|
|||||||
Вычислим число M 2 неисправных АЛПОС периода |
T |
с начальным |
||||||||||||||||
состоянием |
|
S(0) . |
Заметим, |
что |
так |
как |
T |
простое |
число, а |
характеристический многочлен исправной АЛПОС является неприводимым многочленом степени r периода T , то круговой многочлен fT () ,
являющийся произведением неприводимых многочленов периода T , имеет
степень, равную T 1, |
то есть |
fT ( ) ( T 1) /( 1) . |
Так |
как все |
неприводимые делители |
fT ( ) |
имеет одинаковые степени, |
то fT ( ) |
является произведением (T 1) / r различных неприводимых сомножителей.
|
Если период неисправной АЛПОС при начальном состоянии S(0) равен |
||||||
T , |
T >1, то (U U )T S(0) S(0) или (U U )T I S(0) 0 . Это означает, |
||||||
что |
минимальный многочлен вектора |
S(0) |
делит T 1, |
причём этот |
|||
многочлен |
не |
равен 1, |
поэтому |
степень |
минимального |
многочлена |
|
вектора |
S(0) |
не меньше |
r . С другой стороны, характеристический |
многочлен неисправной АЛПОС имеет степень r и делится на минимальный
многочлен вектора S(0) . Отсюда следует, что характеристический
многочлен неисправной АЛПОС является неприводимым многочленом
степени |
r периода T . |
|
|
|
|
|
|
|
|
|
|
Обозначим через |
M 21 |
число матриц |
U U , имеющих одинаковые |
||||||||
характеристические |
многочлены, тогда |
M 2 M 21 (T 1) / r , |
так |
как |
|||||||
существует (T 1) / r |
различных неприводимых многочленов степени |
r |
|||||||||
периода T . |
|
|
|
|
|
|
|
|
|
|
|
Для |
подсчёта числа |
M 21 |
воспользуемся |
тем, |
что |
преобразование |
|||||
подобия P(U U )P 1 матрицы |
U U , где P невырожденная матрица, |
||||||||||
не меняет характеристического многочлена. Число M 21 |
получается делением |
||||||||||
r 1 |
|
|
|
|
|
|
|
|
|
|
|
числа (2r |
2i ) всех невырожденных |
r r |
матриц |
над |
GF (2) |
на |
|||||
i 0 |
|
|
|
|
|
|
|
|
|
|
|
количество всех невырожденных матриц P , преобразующих U U в одну |
|||||||||||
и ту же матрицу, например матрицу U U , так что P(U U )P 1 =U U |
|||||||||||
или P(U U ) (U U )P . |
|
|
|
|
|
|
|
||||
Так |
как |
рассматриваются |
матрицы |
U U |
с |
неприводимыми |
|||||
характеристическими многочленами, то число невырожденных матриц |
P , |
||||||||||
перестановочных с U U над GF (2) , равно 2r . Таким образом, |
|
|

|
|
r1 |
|
|
|
|
(2r |
2i ) |
|
M 21 |
= |
i0 |
|
. |
2r |
|
|||
|
|
|
|
Отсюда следует утверждение теоремы. Теорема доказана.
Формула 2.10 для достоверности Q(r) допускает нижнюю и верхнюю
|
|
|
|
|
|
|
1 |
r1 |
|
оценки. Так как r T 1 2r , а |
(2r 2i ) 1, тогда получаем: |
||||||||
4 |
|||||||||
|
|
|
|
|
|
|
i0 |
||
1 |
1 |
|
1 |
Q(r) 1 |
5 |
. |
|
(2.10а) |
|
2r |
r |
4 2r |
|
||||||
|
|
|
|
|
|
Причём это выполняется даже если максимальный период не является простым числом.
Ниже приведены значения нижней и верхней границ для некоторых значений r :
r |
7 |
8 |
9 |
10 |
11 |
|
|
|
|
|
|
Нижняя граница |
0,8493 |
0,8711 |
0,8869 |
0,8990 |
0,9086 |
|
|
|
|
|
|
Верхняя граница |
0,9902 |
0.9951 |
0,9976 |
0,9988 |
0,9994 |
|
|
|
|
|
|
Если в качестве T выбирать наименьший простой делитель числа 2r 1,
T r , |
то при r 7, 8, 9, 10, 11 достоверность равна соответственно 0,95; |
0,994; |
0,993; 0,9986; 0,999. |
Недостатком данного способа определения достоверности КТ по формуле 2.10 является то, что он даёт точное значение достоверности лишь для простого максимального периода, хотя формула 2.10а верна для произвольного максимального для данного r периода T . Этого недостатка лишён следующий способ определения достоверности для максимального периода.
4. Повторяя аналогичные третьему способу рассуждения до получения формулы 2.9, определим число "неисправных" многочленов, приводящих к
выполнению 2.2, |
равно |
1 |
(2r 2) , |
следовательно, |
для достоверности в |
|||||
r |
||||||||||
|
|
|
|
|
|
|
|
|
||
полном множестве неисправностей получаем [5]: |
|
|||||||||
|
2r |
2 |
r1 |
|
|
1 |
|
|
||
Q(r) 1 |
|
|
(2r |
2i ) 1 |
|
|
. |
(2.11) |
||
r 2r r2 |
|
r |
||||||||
|
i0 |
|
|
|
|
|

Часто на практике не требуется высокой точности вычислений. Поэтому, исходя из выражения 2.8, достоверность может быть грубо определена по формуле:
Q(r) 1 1r .
Но при этом необходимо учесть, что реальная достоверность не может
превышать значения 1 1 . 2r
Формулы 2.10 и 2.11 дают примерно одинаковые результаты.
Для простоты оценки различных способов определения достоверности КТ и для определения самой достоверности, в зависимости от максимальной степени порождающего полинома r (то есть от числа входов диагностируемой схемы) можно воспользоваться ниже приведённой таблицей 2.1.
Табл. 2.1. Достоверность КТ для различных формул.
r |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
|
|
|
|
|
|
|
|
|
|
|
|
Q(r) по |
0,667 |
0,750 |
0,800 |
0,833 |
0,857 |
0,875 |
0,889 |
0,900 |
0,909 |
|
формуле |
||||||||||
|
|
|
|
|
|
|
|
|
||
2.8 |
0,875 |
0,938 |
0,969 |
0,984 |
0,992 |
0,996 |
0,998 |
0,999 |
0,999 |
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
Q(r) по |
0,540 |
0,688 |
0,769 |
0,818 |
0,849 |
0,871 |
0,887 |
0,899 |
0,909 |
|
формуле |
||||||||||
0,844 |
0,922 |
0,961 |
0,981 |
0,990 |
0,995 |
0,998 |
0,999 |
0,999 |
||
2.10а |
||||||||||
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
Q(r) по |
|
|
|
|
|
|
|
|
|
|
формулам |
0,833 |
0,859 |
0,838 |
0,875 |
0,867 |
0,897 |
0,894 |
0,904 |
0,910 |
|
2.1 и 2.4 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Q(r) по |
|
|
|
|
|
|
|
|
|
|
формуле |
0,793 |
— |
0,913 |
— |
0,951 |
— |
— |
0,970 |
0,973 |
|
2.10 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Q(r) по |
|
|
|
|
|
|
|
|
|
|
формуле |
0,918 |
0,923 |
0,944 |
0,953 |
0,959 |
0,964 |
0,968 |
0,971 |
0,974 |
|
2.11 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Таким образом, метод КТ является эффективным способом проверки логической сети из ЛПОС, так как достоверность проверки высока и большинстве случаев требуется небольшое количество дополнительного оборудования. Значения достоверности, определяемые в полном множестве неисправностей и в множестве представителей классов эквивалентностей,