Введение
Методы проектирования ИС, включающие функции обеспечения тестируемости. Проектирование для тестируемости (DFT) состоит из методов проектирования ИС, добавляющих функции тестируемости к конструкции аппаратного продукта. Добавленные функции упрощают разработку и применение производственных тестов к разработанному аппаратному обеспечению. Цель производственных тестов – подтвердить отсутствие производственных дефектов в аппаратном обеспечении продукта, которые могут негативно повлиять на его корректную работу. Тесты применяются на нескольких этапах производственного процесса аппаратного обеспечения и, для определенных продуктов, могут также использоваться для обслуживания аппаратного обеспечения в среде заказчика. Тестами обычно управляют тестовые программы, выполняемые с использованием автоматического тестового оборудования (ATE) или, в случае обслуживания системы, непосредственно в собранной системе. Помимо обнаружения и индикации наличия дефектов (то есть, провала теста), тесты могут регистрировать диагностическую информацию о характере выявленных отказов. Эта диагностическая информация может быть использована для локализации источника отказа. Иными словами, реакция векторов (паттернов) от исправной схемы сравнивается с реакцией векторов (использующих те же паттерны) от тестируемого устройства (DUT). Если реакции совпадают, схема исправна. В противном случае схема изготовлена не по спецификации. DFT играет важную роль в разработке тестовых программ, а также служит интерфейсом для проведения тестов и диагностики. Автоматическое генерирование тестовых шаблонов (ATPG) значительно упрощается при реализации соответствующих правил и рекомендаций DFT.
Design for testing or design for testability (DFT) consists of IC design techniques that add testability features to a hardware product design. The added features make it easier to develop and apply manufacturing tests to the designed hardware. The purpose of manufacturing tests is to validate that the product hardware contains no manufacturing defects that could adversely affect the product's correct functioning. Tests are applied at several steps in the hardware manufacturing flow and, for certain products, may also be used for hardware maintenance in the customer's environment. The tests are generally driven by test programs that execute using automatic test equipment (ATE) or, in the case of system maintenance, inside the assembled system itself. In addition to finding and indicating the presence of defects (i. e., the test fails), tests may be able to log diagnostic information about the nature of the encountered test fails. The diagnostic information can be used to locate the source of the failure. In other words, the response of vectors (patterns) from a good circuit is compared with the response of vectors (using the same patterns) from a DUT (device under test). If the response is the same or matches, the circuit is good. Otherwise, the circuit is not manufactured as it was intended. DFT plays an important role in the development of test programs and as an interface for test application and diagnostics. Automatic test pattern generation, or ATPG, is much easier if appropriate DFT rules and suggestions have been implemented.
История
Методы DFT использовались как минимум с первых дней электрического/электронного оборудования для обработки данных. Ранние примеры 1940-50-х годов – это переключатели и приборы, позволявшие инженеру "сканировать" (то есть выборочно измерять) напряжение/ток в некоторых внутренних узлах аналогового компьютера [аналоговое сканирование]. DFT часто ассоциируется с изменениями в конструкции, которые обеспечивают улучшенный доступ к внутренним элементам схемы, облегчая контроль (управляемость) и/или наблюдение (наблюдаемость) локального внутреннего состояния. Эти изменения в конструкции могут быть чисто физическими (например, добавление физической точки подключения для измерения сигнала в сети) и/или включать добавление активных элементов схемы для повышения управляемости/наблюдаемости (например, вставка мультиплексора в сеть). Хотя повышение управляемости и наблюдаемости внутренних элементов схемы, безусловно, важно для тестирования, это не единственный аспект DFT. Другие рекомендации, например, касаются электромеханических характеристик интерфейса между тестируемым устройством и тестовым оборудованием. Примеры включают рекомендации по размеру, форме и расстоянию между точками подключения, или предложение добавить высокое выходное сопротивление драйверам, подключенным к измеряемым сетям, чтобы снизить риск повреждения из-за обратного тока. За прошедшие годы в отрасли было разработано и используется большое количество более или менее подробных и формализованных рекомендаций по желательным и/или обязательным модификациям схемы для целей DFT. Современное понимание DFT в контексте автоматизированного проектирования электроники (EDA) для современной микроэлектроники во многом определяется возможностями коммерческих программных инструментов DFT, а также знаниями и опытом профессионального сообщества инженеров DFT, занимающихся исследованиями, разработкой и использованием этих инструментов. Большая часть накопленных знаний в области DFT сосредоточена на цифровых схемах, в то время как DFT для аналоговых/смешанных сигналов отходит на второй план.
Цели ДФТ для микроэлектронных продуктов
DFT влияет и зависит от методов, используемых для разработки тестов, их применения и диагностики. Большинство промышленных инструментов, поддерживающих DFT, особенно для цифровых схем, основаны на структурной парадигме тестирования. Структурное тестирование не ставит своей прямой целью определение корректности общей функциональности схемы. Вместо этого оно стремится удостовериться, что схема правильно собрана из элементарных строительных блоков, как это определено в структурном списке соединений. Например, присутствуют ли все заданные логические элементы, функционируют ли они корректно и правильно ли соединены между собой? Предполагается, что если список соединений верен, а структурное тестирование подтвердило правильность сборки элементов схемы, то схема должна функционировать правильно. Важно отметить, что это существенно отличается от функционального тестирования, которое направлено на проверку соответствия функционирования тестируемой схемы её функциональным спецификациям. Это тесно связано с задачей функциональной верификации – определением соответствия схемы, заданной в списке соединений, функциональным требованиям, при условии её правильной реализации. Одним из преимуществ структурной парадигмы является то, что генерация тестов может быть сосредоточена на проверке ограниченного числа относительно простых элементов схемы, а не на работе с экспоненциально возрастающим множеством функциональных состояний и переходов между ними. Хотя задача тестирования отдельных логических элементов кажется простой, существует препятствие, которое необходимо преодолеть. В современных высокоинтегрированных схемах большинство элементов глубоко встроены, в то время как тестовое оборудование подключено только к основным входам/выходам (I/O) и/или некоторым физическим точкам тестирования. Следовательно, встроенными элементами необходимо управлять через промежуточные слои логики. Если промежуточная логика содержит элементы памяти, то проблема экспоненциально возрастающего пространства состояний и последовательностей переходов между ними создает неразрешимую задачу для генерации тестов. Для упрощения генерации тестов DFT решает проблему доступности, устраняя необходимость в сложных последовательностях переходов состояний при попытке управления и/или наблюдения за состоянием внутренних элементов схемы. В зависимости от выбора методов DFT, сделанного на этапах проектирования/реализации схемы, генерация структурных тестов для сложных логических схем может быть в большей или меньшей степени автоматизирована. Таким образом, одной из ключевых целей методологий DFT является предоставление разработчикам возможности находить компромиссы между объемом и типом используемого DFT и стоимостью/эффективностью (временем, усилиями, качеством) задачи генерации тестов. Дополнительным преимуществом является возможность диагностики схемы в случае возникновения проблем в будущем – это как добавление определенных функций или возможностей в конструкцию, позволяющих тестировать устройство при возникновении неисправностей в процессе эксплуатации.
Вперед
Одной из задач для отрасли является поддержание темпов стремительного развития чиповых технологий (количество выводов/размер/расположение/шаг, скорость передачи данных, количество/скорость/потребление внутренних схем, тепловой контроль и т.д.) без необходимости постоянной модернизации тестового оборудования. Современные методы DFT, таким образом, должны предоставлять возможности для тестирования чипов и сборок нового поколения на существующем тестовом оборудовании и/или снижать требования/стоимость нового оборудования. В связи с этим методы DFT постоянно совершенствуются, например, за счет внедрения сжатия данных, чтобы обеспечить соблюдение установленных временных ограничений для применения тестера, обусловленных целевой стоимостью тестируемой продукции.
Диагностика
Особенно для передовых полупроводниковых технологий, ожидается, что некоторые чипы на каждой изготовленной пластине будут содержать дефекты, делающие их неработоспособными. Основная цель тестирования – выявить и отделить эти неработоспособные чипы от полностью функциональных, то есть один или несколько результатов, полученных от тестируемого неработоспособного чипа, будут отличаться от ожидаемых. Таким образом, процент чипов, не прошедших тестирование, должен быть тесно связан с ожидаемым функциональным выходом для данного типа чипа. Однако на практике часто случается, что все чипы нового типа, впервые поступившие на тестовый стенд, оказываются неработоспособными (так называемая ситуация с нулевым выходом). В этом случае чипы необходимо подвергнуть процессу отладки для определения причины нулевого выхода. В других случаях процент брака (процент не прошедших тест) может быть выше ожидаемого/допустимого или резко колебаться. Опять же, чипы должны быть подвергнуты анализу для выявления причины чрезмерного брака. В обоих случаях важная информация о природе основной проблемы может быть скрыта в характере отказов чипов во время тестирования. Для облегчения анализа дополнительная информация об отказах, помимо простого результата "прошел/не прошел", собирается в журнал отказов. Журнал отказов обычно содержит информацию о времени (например, цикл тестирования), месте (например, канал тестирования) и способе (например, логическое значение) возникновения отказа. Диагностика пытается на основе журнала отказов определить наиболее вероятное логическое/физическое место возникновения проблемы внутри чипа. Прогоняя большое количество отказов через процесс диагностики, называемый объемной диагностикой, можно выявить систематические отказы. В некоторых случаях (например, печатные платы, многочиповые модули (МЧМ), встроенные или автономные памяти) может быть возможно восстановить неисправную схему во время тестирования. Для этого диагностика должна быстро определить неисправный элемент и создать заявку на его ремонт/замену. Методы DFT (проектирование для тестируемости) могут быть в большей или меньшей степени ориентированы на диагностику. Связанные цели DFT – облегчить/упростить сбор данных об отказах и диагностику до уровня, позволяющего проводить интеллектуальный отбор образцов для анализа отказов (FA), а также повысить стоимость, точность, скорость и пропускную способность диагностики и FA.
Конструкция сканирования
Наиболее распространенный метод подачи тестовых данных от входов чипа к внутренним схемам, находящимся под испытанием (сокращенно CUT), и наблюдения за их выходами называется сканированием. При сканировании регистры (триггеры или защелки) в схеме соединяются в одну или несколько сканирующих цепей, которые используются для доступа к внутренним узлам чипа. Тестовые шаблоны сдвигаются в сканирующую цепь (цепи), функциональные сигналы тактирования подаются для тестирования схемы в течение "цикла захвата (циклов захвата)", а затем результаты сдвигаются на выходные выводы чипа и сравниваются с ожидаемыми результатами "исправного образца". Прямое применение методов сканирования может привести к большим наборам тестовых векторов, что потребует длительного времени тестирования и больших объемов памяти. Методы сжатия тестов решают эту проблему, распаковывая входные данные сканирования на чипе и сжимая выходные данные тестирования. Возможен значительный выигрыш, поскольку для установки и/или проверки обычно требуется лишь небольшая часть битов сканирующей цепи для каждого конкретного тестового вектора. Результат сканирования может быть представлен в таких форматах, как последовательный векторный формат (SVF), для выполнения на испытательном оборудовании.
Ошибка с использованием функций DFT
Помимо полезности для выполнения "контрольных тестов" типа "годен/не годен", сканерные цепи также могут использоваться для "отладки" схем чипов. В этом случае чип функционирует в нормальном "рабочем режиме" (например, чип компьютера или мобильного телефона может выполнять инструкции на языке ассемблера). В любой момент тактирование чипа может быть остановлено, и чип переведен в "тестовый режим". В этот момент можно считать полное внутреннее состояние или установить любые желаемые значения с помощью сканерных цепей. Другая область применения сканирования для помощи в отладке заключается в загрузке начального состояния во все элементы памяти, а затем возврате в рабочий режим для системной отладки. Преимущество состоит в том, чтобы привести систему в известное состояние, не проходя через множество тактовых циклов. Данное использование сканерных цепей, вместе со схемами управления тактированием, является смежной поддисциплиной логического проектирования, называемой "Проектирование для отладки" или "Проектирование с учетом отладки".