УДК 681.32
Ю.А. СКОБЦОВ, д-р техн. наук, проф., зав. каф. АСУ ДонНТУ
(г. Донецк),
В.Ю. СКОБЦОВ, канд. техн. наук, доц. каф. АСУ ДонНТУ (г. Донецк),
НАССЕР 1ЯД К.М., аспирант каф. АСУ ДонНТУ (г. Донецк)
ПРОВЕРЯЮЩИЕ ТЕСТЫ CROSSTALK НЕИСПРАВНОСТЕЙ НА
ОСНОВЕ ЭВОЛЮЦИОННЫХ МЕТОДОВ
Рассматривается проблема построения проверяющих тестов для "перекрестных неисправностей" типа Crosstalk, характерных для глубокого субмикронного проектирования элементной базы современных компьютерных систем. При решении поставленной задачи используется многозначное логическое моделирование и генетический алгоритм генерации проверяющих тестов для этих неисправностей. Ил.:1. Библиогр.: 15 назв.
Ключевые слова: crosstalk неисправности, проверяющие тесты, генетический алгоритм, многозначное логическое моделирование.
Актуальность. Современные технологии производства цифровых систем и их элементной базы требуют анализа не только константных, но и более адекватных неисправностей. В настоящее время используются более сложные модели неисправностей, таких как замыкания, "транзистор постоянно открыт", "транзистор постоянно закрыт", задержки распространения сигналов, наводки и т.п. [1].
Вследствие технологического прогресса, который ведет к увеличению плотности элементов на кристалле, росту числа пересечений проводящих слоев и повышению рабочей частоты, тестирования классических константных неисправностей в настоящее время явно недостаточно, поскольку необходимо анализировать физические дефекты, которые влияют на временные характеристики схемы. Особенно это характерно для глубокого субмикронного (deep submicron - DSM) проектирования. Увеличение числа транзисторов на кристалле ведет к тому, что большее количество элементов переключаются одновременно, что может уменьшить для них уровень напряжения и увеличить задержки распространения сигналов. При этом некоторые пересекающиеся линии, которые предполагались электрически изолированными, могут взаимодействовать друг с другом. Одно из подобных взаимодействий, вызванное паразитической емкостной связью между проводниками, называется "crosstalk" (перекрестная помеха), может привести к функциональным проблемам и ухудшить временные характеристики.
Обычно рассматриваются два основных типа перекрестных помех: 1) "crosstalk" индуцированные импульсы; 2) "crosstalk" индуцированные задержки. В первом случае быстро переключающаяся линия - "агрессор" (aggressor) может индуцировать короткий импульс на статической линии -"жертве" (victim). В зависимости от амплитуды и ширины эти импульсы могут оказывать существенное влияние на характеристики схемы.
Второй случай (индуцированные задержки) имеет место тогда, когда на линиях "агрессоре" и "жертве" происходят (почти) одновременные переходы сигналов. Если на обеих линиях переходы в одном направлении, то время перехода сокращается и, следовательно, уменьшается время задержки распространения сигналов. Этот эффект называется "перекрестным ускорением" ("crosstalk speedup"). Сильный "агрессор" может вызвать задержку распространения сигнала на линии-"жертве", которая имеет противоположное значение сигнала. Если на линиях "агрессоре" и "жертве" происходят переходы сигналов в противоположных направлениях, то время перехода увеличивается и имеет место эффект "перекрестного замедления" ("crosstalk slowdown"). Если вызванный шум на линии-"жертве" больше порогового напряжения или индуцированная задержка больше допустимой, то это может привести к логическим отказам или функциональным проблемам на соседних триггерах или выходах.
Перекрестные неисправности вызываются паразитическими наводками между соседними проводящими линиями, которые в общем случае имеют индуктивные и емкостные составляющие. Как правило, такие связи имеют малые значения индуктивности. Но в отдельных случаях, например, на высоких частотах для линий, непосредственно связанных с питанием или землей, которые имеют достаточно большую длину и ширину (сопротивление R соизмеримо с raL), влияние индуктивной святи значительно и может порождать существенные токи. Но для информационных линий в схемах доминируют емкостные святи.
Анализ литературы. Работы по моделированию и тестированию неисправностей типа "crosstalk" ведутся с середины 90-х годов. Так в [2] предложен метод, который основан на поиске пары входных наборов, которые устанавливают определенное значение сигнала на линии-"жертве" и вызывают переход на линии-"агрессоре", который обеспечивает распространение влияния неисправности до одного из внешних выходов. В этой работе рассматриваются "crosstalk" индуцированные импульсы.
Авторы [3 - 5] разработали смешанный генератор тестовых сигналов XGEN для "crosstalk" индуцированных задержек. Они предложили смешанный метод генерации тестов, где при поиске двоичных наборов используется аналоговое моделирование, которое позволяет оценить задержки распространения сигналов. Используя преобразование Лапласа они получили выражения для неисправностей "crosstalk" в 5-области, которые используются для анализа зависимости атрибутов импульса в схеме с сосредоточенными параметрами и временных характеристик фронтов. Статический временной анализ позволяет определить временные окна для входов и выходов элементов. Искомое временное окно находится в результате пересечения временных окон "агрессора" и "жертвы". Для заданной неисправности -определенной пары "агрессор-жертва" метод позволяет установить необходимые значения на взаимодействующих линиях и распространить
влияние неисправности до внешнего выхода. При генерации тестов используется 11-значный алфавит и модификация метода PODEM на этапе доопределения (justification). Разработанный алгоритм не гарантирует построение тестов вследствие ограничений для условий распространения эффектов неисправностей и используемой (11-значной) логической системы.
В [6] авторы развили модель задержки пути в комбинации с критическим путем и множеством источников взаимодействующих с этим путем. Здесь в качестве основы используется метод генерации тестов для неисправностей типа "задержка распространения сигнала" без фазы доопределения (justification). А на этапе доопределения (justification) применяется генетический алгоритм, который в процессе построения теста использует временные характеристики. Далее это направление получило развитие в [7], где предложено решение задачи построения тестов в случае многих "агрессоров", воздействующих да определенный путь. Здесь строится граф импликации, который учитывает логическую и структурную информацию схемы для проверки конфликтных ситуаций в процессе генерации тестов. При поиске тестовых наборов используется модификация метода PODEM.
Работа [8] посвящена тестированию неисправностей "crosstalk" -индуцированных задержек. Алгоритм построения тестов основан на генерации критических путей на основе статического временного анализа схемы. Критерий устойчивой тестируемости используется при проверке чувствительности путей. Для чувствительного пути активируются пары "агрессор-жертва" таким образом, чтобы максимизировать воздействие агрессора на путь и вызвать задержку распространения сигнала по этому пути.
В [9] предложен генератор тестов на основе единичной точной модели задержки. Здесь активизируется подпуть для выполнения условий переходов сигналов. Известная модель неисправности типа "задержка" модифицируется для тестирования индуцированных задержек. Для сокращения множества анализируемых неисправностей выполняется препроцессорная обработка для критических путей.
Авторы [10] разработали метод генерации тестов на основе PODEM. Для тестирования "crosstalk" необходимо подать на внешние входы необходимые переходы и обеспечить распространение влияния неисправности на внешний выход. Каждая из этих задач формулируется отдельно, а конечное решение получается в результате пересечения решений указанных подзадач.
В [11] при генерации тестов для "crosstalk" - индуцированных задержек используется алгоритм построения тестов для неисправностей типа "задержка", основанный на троичном алфавите, где неопределенное значение применяется для моделирования переходов сигналов, которые вызываются перекрестными неисправностями.
В работе [12] при решении задачи построения тестов для "crosstalk" применяется 0-1 целочисленное программирование на основе традиционных методов генерации тестов для константных неисправностей. Максимальная
активация агрессора формулируется в терминах линейного программирования, а распространение влияния неисправности решается традиционными средствами.
Следует отметить, что все вышеперечисленные работы при генерации тестов используют механизмы "возврата назад" по схеме, которые требуют значительных вычислительных ресурсов.
С другой стороны, существует группа методов, которые основаны на моделировании и не требуют "возврата назад". К ним относится, например, работа [13], где моделирование применяется для тестирования перекрестных неисправностей. Здесь используется алгоритм редакции для неисправностей-кандидатов, что позволяет получать компактное множество целевых неисправностей за счет исключения тех неисправностей, которые никогда не могут быть активированы и обнаружены. При этом используется последовательный симулятор для моделирования задержек путей. Кроме этого, используется аналоговая макромодель для вычисления задержек сигналов вследствие перекрестного взаимодействия. Здесь с каждой неисправностью ассоциируется одна пара агрессор-жертва. Входные наборы в процессе поиска генерируются случайным образом.
Авторы [14] предложили симулятор неисправностей, который включает одну линию-жертву и множество линий-агрессоров. При генерации тестов используется двоичное логическое моделирование и в качестве основы используются тесты для константных неисправностей. Следует отметить, что методы, основанные на моделировании, требуют хороших эвристик для генерации входных наборов и получаемые тестовые последовательности, как правило, имеют большую длину.
Постановка проблемы. При построении проверяющего теста для такой неисправности необходимо: 1) найти входные наборы, которые вызывают необходимый переход сигналов на линии-агрессоре: 2) найти входные наборы, обеспечивающие необходимый статический сигнал и линии-"жертве" и распространение возникшего импульса от жертвы до одного из внешних выходов. Пусть состояния линии-жертвы g и линии-агрессора к описываются двумя булевыми функциями от переменных, связанных с внешними входами, g(x1, х2,... , хп) и к(х1, х2,... , хп). Аналогично на каждом внешнем выходе реализуется булева функция /](х1, х2,... ,хп, g, к), которая зависит как от внешних переменных (х1, х2,... , хп), так и от внутренних переменных g, к. Отметим, что переменные внешних входов при тестировании рассматриваемой неисправности могут принимать только четыре значения "статический 0" (0 ^ 0), "статическая 1" (1 ^ 1), передний фронт Б’ (0 ^ 1) и задний
фронт Б (1 ^ 0).
Для проверки перекрестной неисправности с положительным импульсом необходимы такие значения внешних входов, которые обеспечивают на линии-агрессоре передний фронт Б’ (0 ^ 1), а на линии-жертве "статический
0" (0 ^ 0). Тогда проблема построения теста для данной перекрестной неисправности сводится к поиску таких пар входных наборов, которые обеспечивают: (1) значение 0 на линии-жертве, (2) - значение Б’ на линии-агрессоре и (3) обеспечивает распространение влияния неисправности от линии-жертвы до одного из внешних входов.
Аналогично для проверки перекрестной неисправности положительным импульсом необходимы такие значения внешних входов, которые обеспечивают на линии-агрессоре задний фронт Б (1 ^ 0), а на линии-жертве
"статическая 1" (1 ^ 1). Рассмотрим комбинационную схему рис., где g и к -внутренние линии, из которых к является "агрессором" (воздействующей линией) и g - "жертвой". При построении проверяющего теста для такой неисправности необходимо: 1) найти входные наборы, которые вызывают необходимый переход сигналов на линии-агрессоре: 2) найти входные наборы, обеспечивающие необходимый статический сигнал на линии-"жертве" и распространение возникшего импульса от жертвы до одного из внешних входов, как показано на рис.
Рис. Неисправность "crosstalk" - перекрестная помеха.
Генетический алгоритм. Очевидно, что проверяющий тест для перекрестных неисправностей должен состоять из пар наборов, обеспечивающих приведенные выше условия. При поиске пар тестовых наборов можно использовать генетический алгоритм и многозначный алфавит [1]. При этом генетический алгоритм обеспечивает механизм направленного случайного поиска пар тестовых наборов, удовлетворяющих указанным условиям. На наш взгляд применение эволюционных методов при построении проверяющих тестов для таких неисправностей еще более оправдано, чем для классических константных неисправностей. Можно провести аналогию с решением задач численной оптимизации, где ГА целесообразно использовать,
прежде всего, там, где не работают классические градиентные методы. Следует отметить, что ГА часто позволяют задачу синтеза, в каком то смысле, свести к задаче анализа. Если есть средства анализа (моделирования поведения исправной или неисправной цифровой системы), то ГА обеспечивают целенаправленный случайный поиск решения задачи синтеза. При этом задачи синтеза и анализа могут выполняться на различных уровнях. Например, задача синтеза тестов может решаться на логическом уровне с использованием логической модели схемы, а задача анализа - на переключательном уровне (или с использованием модели электрических схем). Это позволяет строить тесты для новых типов неисправностей (практически для произвольных неисправностей, для которых есть соответствующая модель).
Для того, что использовать ГА при решении кокретной задачи прежде всего необходимо определить понятие особи, популяции, генетических операторов кроссинговера и мутации, фитнесс-функцию, которая позволяет оценивать качество потенциального решения. Очевидно, что в качестве особи здесь целесообразно использовать пару входных наборов, множество которых составляет популяцию. Поскольку пара наборов представляется двоичной строкой, то можно использовать стандартные операторы кроссинговера и мутации [2], среди которых мы отдаем предпочтение однородному кроссинговеру. Для оценки значения фитнесс-функции мы используем данные логического моделирования в многозначном алфавите [1], с помощью которого определяются новые неисправности, которые проверяются исследуемой парой входных наборов (потенциальным решением).
Выводы. Эксперименты для комбинационных цифровых схем показали, что применение ГА позволяет эффективно решать задачу построения тестов для "crosstalk" неисправаностей и дают высокую полноту обнаружения. На следующем этапе будет решаться задача построения тестов для этих неисправностей для схем с памятью.
Список литературы: 1. Скобцов Ю.А. Логическое моделирование и тестирование цифровых устройств / Ю.А. Скобцов, В.Ю. Скобцов. - Донецк: ИПММ НАНУ, ДонНТУ, 2005. - 436 с. 2. Rubio. An approach to the analysis and detection of crosstalk faults in digital VLSI circuits / Rubio, N. Itazaki, X. Xu, K. Kinoshita // IEEE Trans. on Computer-Aided Design of Integrated Circuits and Systems. - 1994. - Vol. 13. - №. 3. - Р. 387-394. 3. Chen W.Y. Analytic Models for Crosstalk Delay and Pulse Analysis under Non-Ideal Inputs / W.Y. Chen, S.K. Gupta, M.A. Breuer // Proc.of the Int’l.Test Conf. - 1997. - Р. 809-818. 4. Chen W.Y. Test generation for Cross-Induced Delay in Integrated Citcuits / W.Y. Chen, S.K. Gupta, M.A. Breuer // Proceedings of IEEE International Test Conference. - 1999. -Р. 191-200. 5. Chen W.Y. Test generation for Cross-Induced Faults: Framework and computational results / W.Y. Chen, S.K. Gupta, M.A. Breuer // Journal of Electronic Testing: Theory and Applications. -2002. - Vol. 16. - P. 17-28. 6. Krstic A. Delay Testing Considering Cross-Induced Effects / J. Krstic, J. Liou, Y.-M. Jiang, K.-T. Cheng // Proceedings of International Conference. - 2001. 7. Bai X. A Hybrid Structural SAT Based ATPG for Crosstalk / X. Bai, S. Dey, A. Krstic // Proceedings of International Conference. - 2003. - P. 112-121. 8. Arunachalam A. A Novel Algorithm for Testing Crosstalk Induced Delay Faults in VLSI Cicuits / Aniket and R. Arunachalam // Proceedings of International Conference on VLSI Design. - 2005. - P. 479-484. 9. Li H. Selection of Crosstalk-induced Faults in Enhanced Delay test / H. Li, X. Li // Journal of Electronic Testing: Theory and Applications. - 2005. - Vol. 21. - № 2. -
Р. 181-195. 10. Palit A.K. Test Pattern Generation for Crosstalk Faults in DSM chips using Mofified PODEM / A.K. Palit, K.K. Duganapali, W.-TuZ Anheier. - Р. 41^45. 11. Sunghoon Chun. XPDF-ATPG: An Efficient Test Pattern Generation for Crosstalk-Induced Faults / Chun Sunghoon, Kim Yongjoon, Yang Myuang-Hoon, Kang Sungho // 17th Asian Test Symposium. - 2008. - Р. 83-88. 12. Kunal P. Ganeshpure. On ATPG for Multiple Aggressor Crosstalk Faults in Presence of Gate Delays / P. Ganeshpure Kunal, Kundu Sandir // Proceedings of IEEE International Test Conference. - 2007. -Р. 1-7. 13. Chary Shweta. Automatic path delay test generation for combined Resistive Vias Resistive bridges and Capacitive Crosstalk delay faults / Shweta Chary, L. Bushnell Michael // Proceedings of the 19th International conference on VLSI Design. - 2006. - Р. 413—418. 14. Phadoongsidhi Marong. SCINDY: Logic Crosstalk Delay Fault Simulation in Sequential Circuits / Marong Phadoongsidhi, K. Saluja Kewal // 18th Internartional Conference on VLSI Design held jointly with 4th International Conference on Embedded Systems Design (VLSID,05). - 2005. - Р. 820-823. 15. Скобцов Ю.А. Основы эволюционных вычислений / Ю.А. Скобцов. — Донецк: ДонНТУ, 2008. - 326 с.
УДК 681.32
Перевіряльні тести crosstalk несправностей на основі еволюційних методів / Скобцов Ю.О., Скобцов В.Ю., Нассер Іяд К.М. // Вісник НТУ "ХПІ". Тематичний випуск: Інформатика і моделювання. - Харків: НТУ "ХПІ". - 2010. - № 31. - С. 170 - 176.
Розглядається проблема побудови перевіряльник тестів для "перехресних несправностей" типу crosstalk, характерних для глибокого субмікронного проектування елементної бази сучасних комп'ютерних систем. При розв'язку поставленого завдання використовується багатозначне логічне моделювання й генетичний алгоритм генерації тестів, що перевіряють, для цих несправностей. Іл.: 1. Бібліогр.: 15 назв.
Ключові слова: crosstalk несправності, перевіряльні тести, генетичний алгоритм,
багатозначне логічне моделювання.
UDC 681.32
Checking tests for crosstalk faults on the basis evolutionary methods/ Skobtsov Y.A., Skobtsov V.Y., Nasser Iyad K.M. // Herald of the National Technical University "KhPI". Subject issue: Information Science and Modelling. - Kharkov: NTU "KhPI". - 2010. - №. 31. - P. 170 - 176.
The problem of construction of checking tests is examined for the crosstalk faults, which are characteristic for the deep submicrometer design of element base for the modern computer systems. For a decision the set problem the multiple-valued logical simulation and genetic algorithm of generation of checking tests are used for these faults. Figs: 1. Refs: 15 titles.
Key words: crosstalk faults, checking tests, genetic algorithm, multivalued logic simulation.
Поступила в редакцию 29.05.2010