Оригинал: Essentials of Electronic Testing for Digital, Memory, and Mixed-Signal VLSI Circuits

Авторы: Michael L. Bushnell, Vishvani D. Agraval

Описание: часть 11 главы книги "Essentials of Electronic Testing for Digital, Memory, and Mixed-Signal VLSI Circuits", посвященная методам автоматического генерирования аналоговых тестов.

Автор перевода: Масякин Е.А.

Автоматическое генерирование аналоговых тестов с использованием сигнального ориентированного графа

Рамадосс и Бушнелл предложили структурное тестирование аналоговых схем, суть которого состоит в генерировании тестов, которые проверяют какие значения компонентов или коэффициенты значений компонентов не соответствуют спецификации. Этот метод сокращает время тестирования схемы, путем сокращения количества измерений. Они делят аналоговые и аналогово-цифровые схемы по следующим характеристикам:

  • Линейный блок первого порядка. Проектируется с использованием сигнального ориентированного графа (СОГ). Такие блоки каскадируются для реализации передаточной функции второго порядка.
  • Аналоговая часть подключена ко входам микросхемы и подает сигналы на цифровой блок после АЦ-преобразования. Цифровая часть может иметь, а может и не иметь, независимые первичные входы. 
  • Аналоговая часть наблюдается только на цифровых или аналоговых выходах. Этот важный класс схем используется в фильтрации или усилении.
Этот важный класс схем используется в фильтрации или усилении. Блоки схемы могут быть каскадированы для получения необходимой передаточной функции, и их легко проектировать с использованием СОГ. К сожалению интеграция аналоговых и цифровых схем на одном чипе снижает управляемость и наблюдаемость. Это не может повысить чувствительность неисправности в цифровом смысле т.к. число неисправных значений бесконечно; однако диапазон хороших значений известен.

Рамадосс и Бушнелл предложили следующий способ генерации тестов:

  1. Пользователем определяются допуски измерений на выходах. Далее выполняется проход в обратном направлении от аналогового/цифрового интерфейса с этими значениями к генерации допусков аналоговых компонент (или допусков коэффициентов компонент), которые гарантируют удовлетворение спецификации. Этот процесс называется аналоговым обратным прослеживанием.
  2. Ключевым элементом в аналоговом обратном прослеживании является работа с аналоговой схемой в обратном направлении, т.е. реверсивное моделирование - вычисление входного теста по заданным выходам. Далее используется инверсия СОГ и обратное прослеживание для вычисления  соответствующих аналоговых входных последовательностей, которые стимулируют неисправности и распространяют неисправные аналоговые сигналы через аналоговые и цифровые части к цифровых выходам. Это выполняется для каждого пути от входов к выходам в СОГ схемы.

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

Реверсивное моделирование

СОГ графически представляет набор уравнений зависящих от переменных состояния схемы, входов и выходов активного контура. Узлы могут быть узлами источниками только с выходящими дугами; узлами стока только с входящими дугами; или одновременно обоих типов. Значение любого узла графа (переменная состояния) i это:

value(i) = SUM(parent_node_value) * (incoming_edge_weight)

Рассмотрим следующее уравнение с соответствующим ему СОГ на рисунке 11.9(а):

x2 = a*x1 + b*x3 + c*x4 (11.37)

x5 = -d * x2

Только входящие дуги оказывают влияние на узел: так х5 не оказывают влияние на узел х2. Рассмотрим преобразованную версию уравнения 11.37 и его
СОГ на рисунке 11.9(b):

х1 = 1/а * х2 - b/a * x3 - c/a * x4 (11.38)

Они расширили алгоритм обращения путей Балабаниана для инвертирования путей между входами и выходами СОГ.

Сигнальный ориентированный граф

Рисунок 11.9 Сигнальный ориентированный граф

  1. Выбрать путь в СОГ от первичного входа через промежуточные узлы x2 - xn-1 до первичного выхода xn.
  2. Начать на первичном входе x1, узле источнике только с выходящими дугами.
  3. Изменить направление выходящей дуги от х1 к х2 и новый вес 1/а, который является обратной величиной старого веса а х1, становится узлом стока (только с входными дугами).
  4. Перенаправить все дуги инцидентные х2 к х1, умножить исходный вес на новый вес 1/а на дугах повернутых от х2 к х1, и изменить знак.
  5. Повторить шаги 3 и 4 для всех узлов источников xi на пути от первичного входа x1 к xn, до тех пор пока xn не станет узлом источником. В этот момент, так как все дуги графа указывают по направлению ко входу, граф является инвертированным.

Схема интегратора

Рисунок 11.10 Схема интегратора

Пример 11.2: Рассмотрим интегратор на рисунке 11.10, его СОГ на рисунке 11.11, и эквивалентное уравнение 11.39:

Эквивалентное уравнение интегратора (11.39)

Узлы 1 и 3 на СОГ относятся к напряжениям на входе и выходе схемы, соответственно. На рисунке 2.6(а) изображен исходный СОГ интегратора с петлей на выходе. Узел 2 на рисунке 2.6(б) - это фиктивный узел вставленный, чтобы избежать петли на выходном узле, он имеет вес 1/s, который является общим для обоих ребер в исходном графе. Дифференцирование (представленное s оператором) это линейная операция. Отсюда, кратные дуги с ненулевым весом s в СОГ единственного блока первого порядка могут быть объединены для получения кратных дуг с обычными числовыми весами и одной дуги с ненулевым s весом. Это помогает при обратном моделировании, так как числовое дифференцирование дорогая операция, которая выполняется только один раз.

После шагов 3 и 4 алгоритма мы имеем промежуточный СОГ изображенный на рисунке 11.11(с). Ребро с весом -1/R1C было обращено и его новый вес сейчас равен -R1C. Дуга выхода с весом -1/RfC была перенаправлена на входной узел и сейчас ее новый вес -(-R1C * -1/RfC) = -R1/Rf. Необходимо инвертировать только еще одну дугу, промежуточную дугу выхода с весом 1/s. После инвертирования ее новый вес становиться равным s; на этой стадии мы останавливаемся, выход становится узлом-источником, а вход узлом-стоком. На рисунке 11.11(d) изображен конечный инвертированный граф, а соответствующее ему уравнение выглядит следующим образом:

Vin(s) = -R1C * s(Vout(s)) - R1/Rf*Vout(s) (11.40)

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

Исходные и пробразованный СОГ интегратора

Рисунок 11.11 Исходный и преобразованный СОГ интегратора

Можно моделировать инвертированный СОГ с выбранным выходом для нахождения входа. Оператор s в области Лапласа соответствует дифференцированию во временной области. Процесс начинается с набора выходных выборок. Все веса инвертированного графа относятся к числовым скалярам или s, дифференциальному оператору, который может быть численно аппроксимирован. Можно найти значения всех узлов инвертированного графа, используя уравнение 11.36. Данный процесс находит вход соответствующий заданному выходу, но нелинейная цепь должна иметь нелинейный входной блок установленный в константу, перед тем как СОГ сможет быть построен для обратного моделирования. Возможно, придется искать среди многих возможных константный входов, прежде чем найдется подходящий тест. Это представляет новую возможность проходить по аналоговой схеме в обратном направлении в течение генерации тестов. Метод берет набор реальных выходных выборок PSPICE и использует их для обратного моделирования исходной схемы во временной области. Многие выборки были равномерно распределенными точками во времени.

Аналоговое обратное прослеживание

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

Алгоритм генерации тестов:

1. Пользователь устанавливает величину допуска выходного напряжения.

2. Анализируется список соединений (в SPICE формате), строится СОГ, сохраняются веса дуг в символическом и числовом видах.

3. Инвертирование СОГ по алгоритму 11.1 и сохранение весов дуг в символическом и цифровом видах.

4. Получение набора хороших выборок.

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


(а) Подать хорошие выборки сигнала на первичный выход.

(б) Пройти по СОГ в обратном порядке первичных выходов, устанавливая значения всех промежуточных узлов используя уравнение 11.36 и аппроксимацию второго порядка к дифференциальному оператору s. Если инвертированный СОГ имеет циклы, выполнять итерации пока сигналы не сойдутся.

(с) Первичный вход теперь имеет правильное тестовое воздействие.


6. Выполнить обратное моделирования плохого выхода как в шаге 5 и найти все узлы с плохими значениями.

7. Вычислить допуски всех внутренних структурных компонентов, и для единичных компонентов и для коэффициентов нескольких компонентов, используя нижеприведенный метод.

Исходный и альтернативный СОГ интегратора

Рисунок 11.13 Исходный и альтернативный СОГ интегратора

Выводы

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