Рассмотрен пакет Design/CPN, один из самых мощных программных инструментов моделирования с помощью сетей Петри. Он даёт возможность как для моделирования, в том числе динамического, параллельных управляющих устройств, так и для их анализа. Хотя в этой системе реализовано множество сложных алгоритмов анализа, она не работает с интерпретированными сетями Петри. В связи с этим в статье предлагается подход, позволяющий представлять в Design/CPN логические условия срабатывания переходов.
Литература: 1. WegrzynM., WolanskiP., AdamskiM., MonteiroJ. Field Programmable Device as a Logic Controller // Proceedings of the 2nd Conference on Automatic Control CONTROL’96, Oporto, Portugal. Р.715-720. 2. Wegrzyn M, Adamski M, Monteiro J. Reconfigurable Logic Controller with FPGA // 4th IFAC Workshop on Algorithms and Architectures for Real-Time Control - AARTC’97, Vilamoura, Algarve, Portugal, 9-11.04.1997. Р.247-252. 3. WegrzynM., WolanskiP., AdamskiM., MonteiroJ.L. Coloured Petri Net Model of Application Specific Logic Controller Programs // IEEE International Symposium on Industrial Electronics ISIE’97, Guimaraes, Portugal, 7-11.07.1997. Vol.I. Р. 158-163. 4. WegrzynM. Hierarchiczna synteza kontroleryw cyfrowych z wykorzystaniem FPGA // IKrajowa konferencja naukowa “Reprogramowalne Ukiady Cyfrowe”, RUC’98, Szczecin: Politechnika Szczeckska, 12-13.03.1998, S. 33-40. 5. AdamskiM., WegrzynM. Hierarchically Structured Coloured Petri Net Specification and Validation of Concurrent Controllers // 39th International Scientific Colloquium IWK’94, 1994, Ilmenau, Germany, Band 1. Р.517-522. 6. DavidR, AllaH. Petri Nets & Grafcet. Tools for modelling discrete event systems. New York: Prentice Hall, 1992. 339 p. 7.JensenK Coloured Petri Nets. Basic Concept,
УДК 681.326.35.74 “
ОЦЕНКА ВРЕМЕНИ ТЕСТИРОВАНИЯ ПРИ ОБЕСПЕЧЕНИИ ТЕСТОПРИГОДНОСТИ МАТРИЧНЫХ СТРУКТУР СИСТОЛИЧЕСКОГО ТИПА
КУЛАКЭ.Н, ПЕРЕСЕКИН А.В, ЛЕРЕСЕКИНА ЕВ.
Предлагается новый способ оценки времени тестирования при тестопригодном проектировании ортогонально связанных однонаправленных систолических комбинационных элементов. Он даёт возможность получить величину времени тестирования, наиболее близкую к реальной по сравнению с ранее используемыми оценками.
Введение
Удешевление и совершенствование технологии изготовления СБИС привели к тому, что они стали основой создания специализированных вычислительных систем, которые целесообразно использовать в тех случаях, когда решение задачи требует больших вычислительных ресурсов и применение этих устройств эффективнее, чем решение традиционными способами. Практически все специализированные СБИС используют преимущества кон-
Analysis Methods and Practical Use / Vol.1. Berlin: Springer-Verlag, 1992. 234 p. 8. MurataT. Petri Nets: Properties, Analysis and Applications // Proceedings of the IEEE, Vol.77, No.4, April 1989. Р.541-580. 9. ВенгжинМ, Корот-кевичА.Г. Иерархический подход к синтезу параллельных логических контроллеров с использованием FPGA // Сборник “Логическое проектирование”. Вып. 5. Минск: Ин-т техн. кибернетики НАН Беларуси. 10. LewisR.W. Programming industrial control systems using IEC 1131-3. London: IEE, 1995. 11. Закревский АД. Параллельные алгоритмы логического управления. Минск: Институт технической кибернетики НАН Беларуси, 1999. 202 с. 12.Koziowski T. Petri Net Specification Format (PNSF). Bristol: University of Bristol, 1994. 6 p.
Поступила в редколлегию11.07.2000
Рецензент: д-р техн. наук, проф. Кривуля Е.Ф.
Венгжин Агнешка, M.Sc., ассистент Технического Университета г. Зелёна-Еура, Польша. Научные интересы: СУБД, интернет-приложения, символьный анализ сетей Петри. Адрес: Dept. of Computer Eng. and Electronics, Technical University of Zielona Gora ul. Podgorna 50, 65-246 Zielona Gora, Poland. E-mail: [email protected]. Тел.: (+48 68) 3282 484.
Короткевич Андрей Геннадьевич, канд. техн. наук, адъюнкт Технического Университета г. Зелёна-Еура, Польша. Научные интересы: приложения сетей Петри в логическом управлении, анализ сетей Петри, комбинаторные задачи в логическом проектировании. Адрес: Dept. of Computer Eng. and Electronics, Technical University of Zielona Gora ul. Podgorna 50, 65-246 Zielona Gora, Poland.
E-mail: [email protected]. Тел.: (+48 68) 3282 484.
вейерной и параллельной обработки. Большое влияние на архитектуру СБИС оказала концепция систолического массива (матрицы) [1,2]. Систолические матрицы имеют простые регулярные межсоединения, что удешевляет их изготовление и повышает плотность упаковки элементов. Высокая плотность размещения элементов обеспечивает высокое быстродействие и малые затраты на дополнительные компоненты.
Традиционные методы тестирования вследствие конструктивных особенностей систолических структур являются крайне неадекватными по ряду причин: управляемость и наблюдаемость ячеек весьма ограничена; последовательное тестирование может привести к высоким временным затратам из-за большого числа ячеек; модели неисправности низкого уровня неприемлемы из-за их технологической неадекватности и комбинаторной сложности [3].
Это послужило толчком к развитию собственных методов тестирования. История развития берет начало с проблемы тестирования итеративных логических матриц, известных ещё с 50-х годов. Внимание на число тестов как функцию числа ячеек матрицы было обращено в конце 60-х годов [3]. А в 1973 году были разработаны достаточные условия для тестирования линейных итеративных логических матриц числом тестовых векторов, которое не зависит от количества ячеек матрицы. Матрицу, удовлетворяющую этим условиям, наРИ, 2000, № 4
74
звали константно (С-) тестируемой [4]. Далее методы, предложенные в [4,5], были проработаны и дополнены достаточными условиями С-тестиру-емости для двумерных ортогональных матриц [6]. Был предложен метод обеспечения С-тестируемо-сти таких матриц. Он заключался в добавлении дополнительных состояний к таблице переходов ячейки. Доказано, что минимальное число таких дополнительных состояний—четыре (для каждого из направлений — горизонтального и вертикального) . Предполагалось, что только одна ячейка может быть неисправна. Свойства, которыми обладает функция дополнительных состояний, и способ тестирования обеспечивают число тестовых векторов, равное (m+4)(n+4)(3m+1)(3n+1), где m и n — число х- и у- состояний таблицы переходов ячейки соответственно. Затем удалось уменьшить число тестовых векторов без увеличения числа дополнительных состояний до
(m+4)(n+4)(2m+1)(2n+1),
где dx — длина тестовой последовательности, определяемая выражением (6) в [10].
2. Оценка времени тестирования при обеспечении тестопригодности матричных структур систолического типа
В оценке времени тестирования, предлагаемой в [10], не учитываются остальные переходы (x 1, y) ^ x 1, для которых регенерация не требуется, и длина тестовой последовательности равна единице. Рассмотрим правила построения модифицированной таблицы переходов Sm и определим количество дополнительных переходов, для которых регенерация не требуется.
Определим обозначения: m — количество строк таблицы переходов Sb ; n — количество столбцов таблицы переходов Sb ; p — число дополнительных состояний Yj1; q — число дополнительных состояний Y2J; g—число дополнительных состояний Y3k .
при этом использовался новый механизм регенерации тестового входа при той же модели неисправности [7]. Далее был представлен метод обеспечения С-тестируемости двумерной матрицы, основанный на [6,7], с новым механизмом регенерации и способом модификации ячейки, уменьшающий время тестирования до (m+5)(n+5)(m+3)(n+3) при той же модели неисправности [8]. В регенерации тестового входа применяются пять дополнительных состояний.
Учитывая, что в методах [6,7] использовался пример матрицы межсоединений, базовая ячейка которой содержит только четыре возможных состояния, оценочные формулы времени тестирования совершенно корректны. Однако при распространении метода на матрицы с большим числом состояний базовой ячейки они перестают быть таковыми, поскольку остальные (2m-4) и (2n-4) состояний в х- и у-направлениях соответственно для двумерной матрицы, а также (2m-3) и (2n-3) — для одномерной остаются неопределенными. Такой подход не может обеспечивать 100% покрытия неисправностей, поскольку для этого необходима проверка всех возможных переходов. Аналогичная ситуация с методом [8], с тем отличием, что он некорректен даже для рассматриваемого случая. Недостаток, свойственный указанным методам, был устранен в [9], при этом время тестирования оценивалось как 4mn(2m+1)(2n+1). Однако в данном случае оставалась еще одна проблема, состоящая в тенденции, характерной для развития рассматриваемой методологии: каждый раз для уменьшения числа тестовых векторов путем увеличения числа дополнительных состояний в регенерирующей последовательности разрабатывался новый механизм регенерации и способ модификации ячейки. Решение этой проблемы было предложено в работе [ 10], там же была выведена более точная оценочная формула для времени тестирования, к примеру, для одномерной матрицы:
Т* = 2n((m + 1)dx + m -1),
Разобьем условно таблицу Sm на следующие группы: для одномерной матрицы — табл. 1, для двумерной — табл. 2.
Замечание: в одномерной матрице пятой группы может не быть, если p+q+g=n.
Будем рассматривать только х-на-правление, так как для у-на-правления рассуждения аналогичны.
Таблица 1
Y11 YJ 1 2 Yk L3
Sb 1 2 3 4 5
6
Таблица 2
Y1 yj 2 Yk L3
■ Sb 1 5 2 3 4 5
6
Первая группа — таблица переходов Sb . Время тестирования этой таблицы не превосходит mndx , где dx — максимальная длина тестовой последовательности.
Вторая группа.
Пусть p - число дополнительных Y11 состояний, 1 < 1 < p . Множество X = {xu |l < u < m} разбивается на p не пересекающихся друг с другом подмножеств Х1 таким образом, чтобы их мощности были равны между собой либо отличались на единицу. Для обеспечения С-тестируемости матрицы функция каждого Y11 состояния должна удовлетворять условию [10]
f*(x,Y1) = x', x, x'є{Х1 U{xm+1}}.
Определим количество переходов, для которых регенерация не требуется. Заметим, что в каждом столбце Y11 модифицированной таблицы количество переходов, для которых нужна регенерирующая тестовая последовательность, равно мощности множества {Xi U {xm+j}.
РИ, 2000, № 4
75
p
Используя тот факт, что X = ^Х: , получаем:
i=i
21 (Xi U {xm+ilj = m + p .
1=1
Таким образом, во второй группе количество переходов, для которых требуется регенерация, равно m+p, остается 2mp-(m+p) переходов, для которых регенерация не нужна.
Следовательно, время тестирования второй группы не превосходит TYi = (m + p)dx + (2mp- (m + p)).
Примеры: Табёица З
а) n=8, p=2, фрагмент таблицы переходов Sm приведен в табл. 3;
б) n=4, p=4, фрагмент таблицы переходов Sm приведен в табл. 4.
Третья группа.
Рассмотрим состояние Y2. Пусть q -число дополнительных Y2 состояний, 1 < j < q. Для обеспечения С-тестируемости матрицы необходимо, чтобы функция каждого состояния Y2 удовлетворяла условиям, следующим из теоремы 1 (формулы (3),(4))
[9], и при этом значения xj не должны быть равными между собой.
Из формул (3),(4) [9] следует, что количество переходов, для которых регенерация не нужна, равно (m- 1)q.
Из формулы (3) [9] вытекает, что время тестирования переходов
\Xm +1 , У n+ p+1
}l<i<q
не превосходит qdx . Из формулы (4) [9] вцдно, что (xs,yn+p+1) ^ xm+1 ,
1 < s < m, 1 < 1 < q и, следовательно, для этих переходов часть Р1 тестовой последовательности не требуется, т.е. длина тестовой последовательности для каждого из этих
d m - 1
переходов не превосходит d _ 1
Y1
4
1
2
3
0
4
2
3
5
6 7
5
6 7
Y11 Y12
1 0
3 1
2 5
4 3
8 4
5 6
6 7
7 8
0 2
9 9
10 10
11 11
12 12
13 13
14 14
15 15
Таблица 4
Yf Y14
0 0
1 1
4 2
3 4
2 3
5 5
6 6
7 7
dx -
1
p
где
квадратные скобки означают операцию выделения целой части числа. Из сказанного выше следует, что время тестирования переходов третьей группы не превосходит
" m -1
ty2 = mq(dx -
1
p
) + qdx + (m - 1)q.
Пример:
n=4, q=2, фрагмент таблицы переходов Sm приведен в табл. 5.
Четвертая группа.
Рассмотрим теперь состояние Y3. Пусть g — число дополнительных состояний Y3k ,1 < k < g . Если Xt
76
Таблица 5
y2 y2
4
4
4
4
4
4
4
4
- множество значений x^, которые должны быть регенерированы вообще, то X' = Xt \Xr будет подмножеством состояний, которые должны быть регенерированы собственно с использованием Y3k .
Множество X’ разбивается на qg непересекающихся друг с другом подмножеств Xf, 1 < f < qg таким образом, чтобы их мощности были либо равными, либо отличались на единицу. Каждой паре Y2J и Y3k будет соответствовать свое подмножество Xf, что определяет использование конкретных Y2J и Y3k в регенерирующей последовательности. Для обеспечения С-тестируемости матрицы функция каждого состояния Y3k должна удовлетворять условию [10]
5
6 7
5
6 7
f (x,Ynk+3) = x',x,x'є {Xf и {xr>> .
Пример:
n=8, q=2, фрагмент таблицы переходов Sm приведен в табл. 6.
Подсчитаем количество переходов, для которых требуется регенерация.
Заметим, что
|Xr| = q,
тогда
|X'| = m - q.
Следовательно, используя формулу (4), получаем, что регенерация нужна только для m-q+gq переходов. Тогда время тестирования четвертой группы не превосходит величины
Таблица 6
(q=1) Y1 3 (q=2) Y1 Y2 33 Y1 L3 (q=3) Y2 Y3 33
2 2 5 2 4 6
5 3 6 3 5 7
3 0 2 0 2 2
4 4 3 1 3 3
0 1 4 4 0 4
6 5 0 5 1 5
7 6 7 6 6 0
1 7 4 7 7 1
8 8 8 8 8 8
9 9 9 9 9 9
10 10 10 10 10 10
11 11 11 11 11 11
12 12 12 12 12 12
13 13 13 13 13 13
14 14 14 14 14 14
15 15 15 15 15 15
TY3 = (m + qg - + 2mg - (m + q(g - 0)=
=(m+q(g - OK + (m - qXg - 0+mg-
Пятая и шестая группы.
Все оставшиеся неопределенными значения функций дополнительных состояний необходимо доопределить по правилу, следующему из теоремы 1 [9] f (x,y) = x .
В пятой группе n-(p+q+g) столбцов. Тогда время тестирования пятой группы равно величине T5 = 2m(n - (p + q+g)).
Время тестирования шестой группы равно величине T6 = mn.
Таким образом, получена следующая оценка времени тестирования модифицированной таблицы переходов (для одномерной матрицы):
РИ, 2000, № 4
T(m, n,dx) = mndx + TYi + TY,
= mndx + (m + p)dx + 2mp - (m + p)
2 TY3 + T5 + T6
f
mq
dx -
m -1 P
1
\
qdx + (m - 1)q
jj
+ (m + - OK + (m - ^(g - 1 + mg
+ 2m(n - (p + q + g)) + mn =
= (m(n + q + 2 + gq + p)dx + 3mn -
- mq m—1 +1 - (m(q + 2) + gq + p). p
(1)
Так как
dx (m, n, p, q, g)
m -1 ,
+1 +
Р \
m - q -1 (h + g )q
+1
+ 2,
(cm. (6) в [10]), a T(m,n,dx(p,q,g),p,q,g) является функцией не только от dx, но и от p, q, g, следовательно, зависимость T от dx не является линейной, поэтому минимальное значение dx не всегда обеспечивает минимальное значение T.
В работе [10] предполагалось, что задача поиска минимального значения TjX сводилась к поиску минимального dx , так как в более грубой оценке имеет место линейная зависимость ТX(dx). В результате этого в некоторых случаях в действительности будут найдены p, q, g, которые будут обеспечивать не минимальное значение TXX, а близкое к нему, что не желательно:
T = min(T(m,n,dx) • dy,T(m,n,dy) dx). (2)
ционных элементов, изложенного в работе [10]. Она показала, что зависимость T(dx) не является линейной, что не позволяет сводить поиск минимального значения T к поиску минимального значения d . Получаемое по этой формуле значение T наиболее близкое к реальному значению времени тестирования. Этот факт и факт нелинейности зависимости T(dx) в конечном счете обеспечивают более точный выбор значений p, q, g для выполнения ограничения требований, предъявляемых к проектируемым матрицам.
Литература. 1. СБИС для распознавания образов и обработки изображений: Пер. с англ./ Под ред. К. Фу. М.: Мир, 1988. 248 с. 2. Fuchs W.-K., EarlE, Swarizlander I. Wafer-Scale Integrations Architectures and Algorithms// IEEE Computer. 1992. P. 6-8. 3. Wu C.-W, Capello PR Easily Testable Iterative Logic Arrays// IEEE Transactions on Computers. Vol. 39, № 5, may 1990. P. 640-651. 4 Huang W.-K., Lombardi F, Sciuto D. Design and Analysis of C-Testable Arrays// Wafer Scale Intergration II: Proc.2nd IFIP W6 10.5 Workshop, Engham, 23-25 Sept., 1988. P.115123. 5. Friedman A.D. Easily Testable Iterative Systems// IEEE Trans.on Comput. Vol.C22. N12, 1973. P.1061-1064. 6. Vergis A., Steiglitz K. Testability conditions for bilateral arrays of combinational cells //IEEE Trans. Comput., vol.C-35, N1, Jan.1986. P.13-22. 7. Elhuni H, Vergis A, Kinney L. C-testability of two-dimensional iterative arrays/ / IEEE Trans. Comput.-Aided Design, vol.CAD-5, N4, 1986. P.573-581. 8. LombardiF., Huang W.-K. Fault Detection and Design Complexity in C-Testable VLSI Arrays// IEEE Trans. Comput., vol.39, N12, December 1990. -p.14771481. 9. Таранов В.Б., Кулак Э.Н., Ковалев Е.В. Обеспечение тестопригодности ортогонально связанных матричных структур.// Радиоэлектроника и информатика. 1998. №1. С. 91-94. 10. Кулак Э.Н., Пересекина Е.В. Тестопригодное проектирование ортогонально связанных матричных структур систолического типа // Радиоэлектроника и информатика. 2000. №1. С. 67-72.
Поступила в редколлегию 07.07.2000
Формула (2) — для двумерной матрицы.
Рецензент: д-р техн. наук, проф.Кривуля Е.Ф.
В табл. 7 представлены результаты экспериментальных исследований, которые показали, что при использовании T(m,n,dx) погрешность оценки, определяемая как процент лишних, учитываемых в подсчёте тестовых векторов, уменьшается приблизительно в 2,5-3 раза по сравнению с ранее используемыми оценками T = 4mndx (для одномерной матрицы) и T = 4mndxdy (для двумерной матрицы). Tf — фактическое число тестовых векторов.
Заключение
Выведена новая формула более точной оценки времени тестирования для метода обеспечения тестопригодности систолических матриц комбина-
Кулак Эльвира Николаевна, канд. техн. наук, доц. кафедры АПВТ ХТУРЭ. Научные интересы: тестопригодное проектирование цифровых устройств. Хобби: фортепиано, настольный теннис, аквариум. Адрес: Украи-на,61166, Харьков, пр. Ленина, 14, тел. (0572) 40-93-26.
Пересекин Алексей Вячеславович, студент группы МП-41, ХНУ имени Каразина. Научные интересы: тестопригодное проектирование цифровых устройств. Хобби: рыбалка, настольный теннис. Адрес: Украина, 61166, Харьков, пр. Ленина, 14, тел. (0572) 40-93-26.
Пересекина Екатерина Вячеславовна, студентка группы КСД 95-1, ХТУРЭ. Научные интересы: тестопригодное проектирование цифровых устройств. Хобби: музыка, гимнастика, плавание. Адрес: Украина, 61166, Харьков, пр. Ленина, 14, тел. (0572) 40-93-26.
Таблица 7
max min
n p q g Tf Tx * T* x T(m,n,dx) p q g Tf Tx * T* x T(m,n,dx)
4 1 1 1 203 576 384 300 1 2 1 184 448 304 270
8 1 1 1 340 1152 768 492 4 4 0 220 384 288 247
6 1 1 1 626 2304 1536 876 4 4 0 412 768 576 439
4 1 1 1 612 2176 1280 1048 1 2 1 527 1664 992 924
8 1 1 1 1020 4352 2560 1688 3 2 3 590 1536 976 778
6 1 1 1 1837 8704 5120 2968 8 8 0 856 1536 1088 943
4 1 1 1 2066 8448 4608 3888 1 2 1 1705 6400 3520 3384
8 1 1 1 3469 16896 9216 6192 4 2 2 1513 5120 2960 2308
6 1 1 1 6131 33792 18432 10800 8 4 3 2095 5120 3200 2510
РИ, 2000, № 4
77