Московский государственный университет путей сообщения
Опубликован: 06.09.2012 | Доступ: свободный | Студентов: 1232 / 168 | Оценка: 5.00 / 5.00 | Длительность: 35:22:00
Специальности: Разработчик аппаратуры
Лекция 24:

Влияние стратегий наблюдения выходных сигналов на построение тестов для схем с памятью

< Лекция 23 || Лекция 24: 123 || Лекция 25 >
Аннотация: В лекции рассматривается задача построения проверяющих тестов для цифровых устройств с памятью с использованием различных стратегий наблюдений выходных сигналов. Используется модель итеративной комбинационной схемы. Метод различающей функции распространяется на схемы с памятью. Рассматривается дизъюнктивная и конъюнктивная форма различающей функции и устанавливается соответствие с обратным различающим днрнвом.

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

Одной из основных причин проигрыша по показателю полноты теста структурных методов генерации тестов, в том числе и использующих алфавиты большой значности, для цифровых устройств с памятью по сравнению с автоматными является стратегия наблюдения выходных реакций ЦУ. Как правило, в существующих структурных методах используется стратегия одиночного наблюдения, как базовая стратегия наблюдения выходных реакций [24.1-24.3]. В этом случае необходим другой подход, объединяющий в себе преимущества автоматного и структурного подходов (комбинированный), и основанный на другой стратегии наблюдения выходных сигналов.

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

24.1 Стратегии наблюдения выходных сигналов и обнаруживаемость неисправностей в схемах с памятью

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

D(X)=f(X)\oplus  \varphi (X), ( 24.1)

где f(X) - булева функция, реализуемая исправной комбинационной схемой, а \varphi (X) - булева функция, реализуемая неисправной схемой.

В случае m выходов различающая функция может быть обобщена следующим образом:

D(X)=(f_1(X)\oplus \varphi_1(X))\vee(f_2(X)\oplus \varphi_2(X))\vee\ldots\vee(f_m(X)\oplus \varphi_m(X)) ( 24.2)

Наборы значений входных переменных X, на которых D(X)=1, являются проверяющими тестами для данной неисправности \varphi , поскольку на этих наборах функции, реализуемые исправной f(X) и неисправной \varphi (X) схемами, принимают различные значения. Таким образом, решение задачи построения теста для заданной неисправности комбинационной схемы в аналитическом виде сводится к решению булевого уравнения D(X)=1.

Для последовательностных схем постановка задачи не так тривиальна в связи с проблемой учета неопределенности начальных состояний исправной и неисправной схем и существенно зависит от используемой стратегии наблюдения выходных сигналов [24.1-24.3]. На сегодняшний день можно выделить две группы стратегий: одиночная стратегия наблюдения выходных сигналов [24.1] и кратная стратегия наблюдения и некоторые ее модификации [24.2-24.4]. Аналитические методы построения тестов для ЦУ с памятью, основанные на кратной стратегии наблюдения выходных сигналов были впервые предложены и широко применялись Ю.А.Скобцовым и Д.В.Сперанским в 1979, 1980 гг. работах [24.2,24.3], но возможности вычислительной техники того времени не позволяла использовать его для больших схем. Однако, сам термин кратной стратегии наблюдения (multiple observation time strategy) был введен американскими исследователями I.Pomeranz и S.M.Reddy в 1992 г. в работе [24.4].

Пусть исправная последовательностная схема реализует конечный автомат A=(X,Y,Z,\delta ,\lambda ), где X, Y, Z - конечные множества состояний, входных и выходных сигналов соответственно; \delta :Y\times X \to Y - функция переходов, определяющая следующее состояние автомата; \lambda :Y\times X\to Z - функция выхода, определяющая выходной сигнал. Функции \delta и \lambda реализуются комбинационными схемами, где:


Y=(y_{1},..., y_{k})  \text{ где } y_{i }\in  \{0,1\}  \text{ для } i=\overline{1,k};\\
X=(x_{1},…, x_{n})  \text{ где } x_{l }\in  \{0,1\}  \text{ для } l=\overline{1,n};\\
Z=(z_{1},…, z_{m})  \text{ где  } z_{j }\in  \{0,1\} \text{ для } j=\overline{1,m}.

Пусть X(1), X(2),…, X(p) - обозначает входную последовательность длины p. Тогда Y(y_{0},0), Y(y_{0},1),…, Y(y_{0},p) - означает последовательность состояний автомата, которую он проходит из начального состояния y_0\in Y под воздействием входной последовательности X(1), X(2),…, X(p). Пусть Z(y_{0},0), Z(y_{0},1),…, Z(y_{0},p) - обозначает выходную последовательность, производимую автоматом из начального состояния y_{0} при подаче входной последовательности X(1), X(2),…, X(p). Обозначим через z_{j}(y_{0},t) для j=\overline{1,m} значение j-го выхода на t-м шаге моделирования. Используя эти обозначения, следующее состояние определяется следующим образом:


Y(y_0,t)=\left \{
\begin{array}{ll}
y_0 & \text{для } t =0\\
\delta(X(t),Y(y_0,t-1)) & \text{ для } t\ne 0
\end{array} ( 24.3)

Аналогично выход Z(y_{0},t) определяется функцией \lambda:


Z(y_0,t)=\left \{
\begin{array}{ll}
Z(y_0,t) & \text{для } t =0\\
\lambda(X(t),Y(y_0,t-1)) & \text{ для } t\ne 0
\end{array} ( 24.4)

Неисправность f преобразует автомат A в A^{f} = (Y,X,Z,\delta^{f},\lambda^{f }), где функции \delta^{f}, \lambda^{f} состояния Y ^{f}и выхода Z^{f} определяются таким же образом.

Отметим, что постановка и, соответственно, решение задачи построения проверяющих тестов последовательностных схем существенно зависит от определения обнаруживаемости неисправности, которое в свою очередь определяется используемой стратегией наблюдения.

Определение 24.1 Неисправность f называется обнаружимой в последовательностной схеме входной последовательностью X(1), X(2),…, X(p) в соответствии со стратегией одиночного наблюдения выходов (SOT - single observation time strategy), если

\exists{t}\le p,\exists{j}\le m,\exists{b}\in\{0,1\},\text{ так что }, \forall{(r,q)}: (z_j(r,t)=b\wedge z^f_j(q,t)=\overline{b}).
 , ( 24.5)

где r - начальное состояние исправной схемы и q - начальное состояние неисправной схемы.

Это определение говорит, что при данной стратеги неисправность считается обнаружимой, если найдется (по крайней мере один) момент времени (такт) t такой, что для любой пары состояний (r,q) исправной и неисправной схем некоторый jвыход z_{j} имеет различные значения в исправной и неисправной схеме. Ключевым моментом является то, что любая пара состояний исправной и неисправной схемы должна выдать различные выходные реакции в один и тот же такт времени.

Рассмотрим выше сказанное на примере схемы, представленной на рис. 22.1 с одиночной константной неисправностью , в табл. 22.1, табл. 22.2 представлены таблицы переходов и выходов, автоматов, которые реализуются исправной и неисправной схемами соответственно. А в табл. 24.1 и табл. 24.2 выходные реакции исправного и неисправного устройств на входную последовательность X=(1,1,1,1).

Таблица 24.1. Реакции исправной схемы
S(y1y2) x_{1}=1 x_{2}=1 x_{3}=1 x_{4}=1
A(00) 0 0 1 1
B(01) 0 1 1 0
C(10) 1 0 0 1
D(11) 1 1 0 0
Таблица 24.2. Реакции неисправной схемы
S(y1y2) x_{1}=1 x_{2}=1 x_{3}=1 x_{4}=1
a(00) 0 0 0 0
b(01) 0 0 0 0
c(10) 1 0 0 0
d(11) 1 0 0 0

Из табл. 24.1 и табл. 24.2 видно, что не существует одного момента времени, для которого бы выходные реакции исправного и неисправного устройств различались бы для любой пары начальных состояний. Поэтому если мы при поиске теста будем использовать традиционную для структурных методов построения тестов одиночную стратегию наблюдения выходных реакций и опираться на определение 24.1 обнаруживаемости неисправности, то в соответствии с последним входная последовательность  X=(1,1,1,1) не является тестом данной неисправности f_2\equiv 0. Фактически, изложенный метод построения тестов в предыдущей "Структурное построение тестов для устройств с памятью" (по умолчанию) использует стратегию одиночного наблюдения сигналов и поэтому дает полноту меньше, чем автоматные методы построения тестов.

Однако, на автоматном уровне ( "Построение тестов для устройств с памятью на основе экспериментов с автоматами" ), используя таблицы переходов/выходов автоматов A и A_{f} и алгоритмы построения прямых или обратных различающих деревьев, можно утверждать обратное. Для проведения аналогий нам удобнее использовать обратное различающее дерево, которое представлено на рис. 22.3. В нашем примере путь между вершиной ОРД, связанной с гомогенной A-группой \{A\}\{C\}\{B\}\{D\}\{cd\}\{ab\}, и вершиной нулевого уровня (на рис. 22.3 выделен жирной линией), позволяет определить, что тестом минимальной длины данной неисправности f_2\equiv 0 (рис. 22.1) является входная последовательность X=(1,1,1,1).

Проанализировав путь, соответствующий последовательности T=(1,1,1,1) в ОРД (рис. 22.3), и таблицы выходных реакций табл. 24.1 и табл. 24.2, можно сделать вывод, что все пары начальных состояний различаются, но в различные такты времени:

  • t=1 - (A,c), (A,d), (B,c), (B,d), (C,a), (A,b), (D,a), (D,b);
  • t=2 - (B,a), (B,b), (D,c), (D,d)
  • t=3 - (A,a), (A,b);
  • t=4 - (C,c), (C,d).

Все это говорит о неэффективности применения одиночной SOT-стратегии наблюдения в данном случае. Следовательно, необходима другая стратегия наблюдения - стратегия кратного наблюдения выходных реакций.

Определение 24.2 Неисправность f называется проверяемой в последовательностной схеме входной последовательностью X(1), X(2),…, X(p) в соответствии со стратегией кратного наблюдения выходов (MOT) [24.2], если:

\forall(r,q)\exists{t}\le p,\exists{j}\le m,\exists{b}\in \{0,1\} \text{ такое, что: }
(z_j(r,t)=b\wedge z_j^f(q,r)=\overline{b})
( 24.6)

Отметим, что принципиальное отличие между SOT и MOT стратегиями состоит в том, что во второй стратегии для каждой пары состояний исправной и неисправной схемы существует свой момент времени, в котором они дают различные выходные сигналы. В то время, как согласно первой стратегии, неисправность обнаружима если все пары начальных состояний исправной и неисправной схемы выдают различные выходные сигналы в один и тот же момент времени.

Для приведенного выше примера схемы рис. 22.1 неисправность является обнаружимой входной последовательностью X=(1,1,1,1) относительно кратной стратегии наблюдения, что показывают данные табл. 24.1 и табл. 24.2.

Здесь каждая пара состояний исправной и неисправной схем (A,a), (A,b), (A,c), (A,d), (B,a), (B,b), (B,c), (B,d), (C,a), (C,b), (C,c), (C,d), (D,a),(D,b),(D,c),(D,d) отличается в некоторый момент времени.

< Лекция 23 || Лекция 24: 123 || Лекция 25 >
Дмитрий Медведевских
Дмитрий Медведевских

Добрый день  можно поинтересоваться где брать литературу предложенную в курсе ?Большинство книг я не могу найти  в известных источниках