JTAG.ТЕСТ - технологии граничного сканирования, методики тестопригодного проектирования, JTAG, ICT, DFT
В JTAG мы знаем все!
«... Мы говорим JTAG, подразумеваем — ТЕСТ,
мы говорим ТЕСТ, подразумеваем — JTAG!»

Колонка Ами Городецкого
«JTAG-тестирование»
в журнале «Компоненты и технологии» № 1.2010 г.

Сайт журнала «Компоненты и технологии»

JTAG-тестирование кластеров

В течение года, прошедшего после публикации в [ПЭ.2008.7] статьи о построении кластерных JTAG-тестов, я получал просьбы от читателей дополнить эту важную тему некоторыми актуальными примерами. Как известно, задачи построения кластерных JTAG-тестов обычно распадаются на две: схемное обеспечение структуры тестируемого кластера и построение собственно теста. Первая задача решается на этапе проектирования схемы. Любая схемная не-JTAG структура, состояшая из одного или более элементов (не обязательно ИС), цифровых, аналоговых или пассивных, может рассматриваться как кластер, если обеспечены два непременных схемных условия: JTAG-управляемость входов этой структуры и JTAG-наблюдаемость ее выходов. Часто применяемые схемные не-JTAG элементы, пригодные для кластерного тестирования, обычно описываются моделями в той или иной форме в библиотеках кластеров и вызываются в программу построения теста кластера по имени или псевдониму. Следует отметить, что структура и принципы построения таких библиотек в разных системах автоматической генерации JTAG-тестов различны. Однако при отсутствии требуемой библиотечной модели разработка таких тестов требует использования функциональных описаний элементов, составляющих тестируемый схемный фрагмент. В настоящей колонке мы рассмотрим еще три примера построения кластерных тестов граничного сканирования.

Весьма популярными в современной схемотехнике являются карточки памяти типа DIMM/SODIMM с печатными контактами (ламелями), использующие своеобразный разъем с для подключения к основной ПП. Существует множество разнообразных типов таких карточек, вот лишь несколько имен их семейств для примера, безо всякой претензии на полноту списка: DIMM, microDIMM, miniDIMM, VLP DIMM, FBDIMM, SODIMM, SORDIMM, SOCDIMM, и т.д. Каждое из этих семейств содержит стандартизованные вариации по размерам и количеству печатных контактов — от 72 до 244 контактов на одной карточке.

Тестирование исправности монтажа на ПП разъемов для таких карточек является классической задачей построения кластерного JTAG-теста. Следует подчеркнуть, что тестирование таких разъемов посредством «диалога» в протоколе JTAG со вставленной в него карточкой памяти DIMM/SODIMM практически не используется, поскольку имеет целый ряд ограничений. Прежде всего, такой тест может охватывать только те функциональные цепи и контакты разъема, которые используются в схеме тестируемой ПП, при этом некоторые цепи и контакты разъема (конфигурирование памяти, цепи управления и т.д.) могут остаться за рамками теста. Что еще более важно — за рамками теста остаются многочисленные контакты питания и земли разъема DIMM/SODIMM. Более того, диагностические возможности JTAG-теста, опирающегося на взаимодействие с самой карточкой памяти, весьма ограничены, время выполнения такого теста может быть неоправданно велико, а неисправности основной ПП в цепях синхронизации и управления, а также возможные ошибки при тестопригодном проектировании таких цепей [ПЭ.2008.1] могут обусловить полную непригодность такого подхода. Следует также учитывать, что абсолютное большинство карточек DIMM/SODIMM — это SDRAM-память DDR2 и DDR3, рабочая частота которых весьма велика и почти несовместима с возможностями протокола JTAG.

Применение специализированных модулей для JTAG-тестирования разъемов DIMM/SODIMM

Рисунок 1. Модуль JEM_SORDIMM200.

Применение специализированных модулей для JTAG-тестирования разъемов DIMM/SODIMM (рис. 1), имеющих любое стандартное число контактов, совершенно свободно от приведенных выше ограничений. Для этого тестовый модуль (см., например, www.jtag-test.ru/SoftAndHard) на время тестирования вставляется в тестируемый разъем вместо карточки памяти DIMM/SODIMM и через находящийся на нем интерфейсный разъем подключается к одному из ТАР-портов того или иного контроллера, представляя собой отдельную JTAG-цепочку (рисунок 2). С помощью таких модулей быстро и однозначно обнаруживаются неисправности типа обрыва или короткого замыкания не только на всех функциональных контактах разъема, но и на многочисленных контактах питания и земли, проверяется целостность двунаправленных связей на всех функциональных контактах и управление ими со стороны тестируемой ПП, а время тестирования разъема становится пренебрежимо малым. В сущности, тест разъема становится составной частью обычного теста межэлементных связей [ПЭ.2007.8], и все существующие системы автоматической генерации JTAG-тестов поддерживают построение тестов с такими модулями, обеспечивая высокий уровень покрытия дефектов монтажа разъемов DIMM/SODIMM.

Другая интересная задача построения кластерных JTAG-тестов связана с тестированием цифро-аналоговых (ЦАП) и аналого-цифровых (АЦП) преобразователей. Поскольку такие ИС обычно не снабжаются структурами граничного сканирования, кластерный JTAG-тест для ЦАП и АЦП будет также частично функциональным тестом. Для примера рассмотрим пару ЦАП DAC084S085 и АЦП ADC084S101фирмы National Semiconductor, подключенную как показано на рис. 3.

Множество кластерных JTAG-тестов предусматривают закорачивание выходных контактов схемного кластера на наружном разъёме ПП на его входные контакты для целей тестирования. В рассматриваемом случае обязательными условиями являются как JTAG-управляемость обеих ИС ЦАП и АЦП, так и подключение выходов ЦАП и входов АЦП к наружному разъему ПП. Следует также позаботиться о возможности закорачивания на наружном разъёме ПП соответствующих аналоговых каналов, например, А — на вход In3 АЦП, и т.д. Понятно, что такое закорачивание совершенно произвольно, однако тест строится под конкретную закорачивающую заглушку разъема ПП. Управляющая ИС JTAG также может быть любой, следует лишь обратить внимание на то, чтобы входы и выходы этой ИС, показанные на рисунке 3, были соответствующим образом объявлены в файле BSDL ИС [ПЭ.2007.7].

Тестирование разъемов памяти DIMM/SODIMM

Рисунок 2. Тестирование разъемов памяти DIMM/SODIMM.

Для начала, выполнив условия синхронизации ЦАП в соответствии с его временной диаграммой, через последовательный вход DAC_Din в ЦАП выполняется адресация к цифровому выходу А и вводится, к примеру, код 0xFF. Затем, в соответствии с временной диаграммой АЦП, через его вход ADC_Din выполняется адресация к аналоговому входу In3, и через выход ADC_Dout АЦП считывается дважды преобразованный код 0xFF, возможно, без младшего значащего бита. В следующем цикле через последовательный вход DAC_Din снова выполняется адресация к цифровому выходу А и в ЦАП вводится код 0x00, снова через вход ADC_Din АЦП выполняется адресация к аналоговому входу In3, и через выход Dout АЦП считывается код 0x00, также без младшего значащего бита. Эти действия последовательно повторяются как для цифровых выходов В и С ЦАП, так и для аналоговых входов In2 и In1 АЦП, будучи строго синхронизированы в соответствии с временными диаграммами этих ИС.

Легко заметить, что рассмотренный кластерный JTAG-тест ЦАП и АЦП покрывает как возможные структурные неисправности монтажа обеих ИС и управляющих ими ИС JTAG, так и все возможные неисправности монтажа наружного разъема ПП и, в некоторой степени, функциональность самих ИС ЦАП и АЦП. Для углубления функционального теста этих ИС к описанным циклам преобразования кодов 0xFF и 0x00 можно добавить также любые другие коды, это лишь в незначительной степени увеличит время выполнения теста.

JTAG-тест для ЦАП-АЦП

Рисунок 3. JTAG-тест для ЦАП-АЦП.

Еще один пример построения кластерных JTAG-тестов обусловлен тестированием исправности монтажа PHY-трансивера, работающего в протоколе Ethernet. Как и в предыдущем случае, нетрудно построить структурный JTAG-тест для PHY-трансивера, который, будучи частично функциональным, включит в себя тест трансформатора дифференциальной развязки. Для примера рассмотрим PHY-трансивер LXT971 фирмы Intel, подключенный как показано на рисунке 4. В отличие от предыдущего примера, эта ИС сама по себе снабжена структурой граничного сканирования, однако в соответствующем файле BSDL все четыре контакта, относящихся к дифференциальному протоколу Ethernet, помечены как linkage, т.е. не снабженные структурой JTAG [ПЭ.2007.7]. Более того, даже если бы они и имели JTAG-поддержку, ни передавать, ни принимать JTAG-сигналы через трансформатор дифференциальной развязки было бы невозможно в силу частотных ограничений.

JTAG-тест для PHY-трансивера

Рисунок 4. JTAG-тест для PHY-трансивера.

Подход к JTAG-тестированию в данном случае основан на том, что ИС JTAG, управляющая сигналами последовательного протокола MDC, MDIO и Reset (например, микропроцессор), и ИС PHY-трансивера находятся в различных, не связанных друг с другом JTAG-цепочках. На время выполнения теста межэлементных связей эти цепочки, разумеется, объединяются, однако во время выполнения кластерного JTAG-теста дифференциальных цепей Ethernet цепочка с PHY-трансивером не вводится в режим JTAG и сам трансивер остается в функциональном режиме, осуществляя передачу и прием Ethernet-сигналов в своем обычном протоколе. Вообще говоря, построение кластерных JTAG-тестов для ИС, содержащих управляемые внутренние регистры, требует углубленного изучения технической документации этих ИС и некоторой изобретательности и тщательности в написании тест-векторов вручную. Следует иметь в виду, что никакая из существующих систем поддержки граничного сканирования [ПЭ.2008.2, 3] не обеспечивает автоматизации процесса построения таких тестов.

Если позаботиться о закорачивании на наружном разъеме Ethernet тестируемой ПП соответствующих каналов (Tx_p на Rx_p и Tx_n на Rx_n), как показано на рисунке 4, то, после JTAG-сброса ИС PHY-трансивера по цепи Reset, алгоритм JTAG-теста должен повторить последовательный протокол доступа к этой ИС. Для Intel LXT971 этот протокол заключается в удержании в цепи MDIO «лог. 1» в течении 36 синхроимпульсов в цепи MDC (преамбула) и синхронной передаче 0110 как кода операции MDIO. Затем последовательно выполняется 5-битная адресация к ИС PHY-трансивера, определяемая ее схемным включением, и 5-битная адресация к регистру состояния PHY-трансивера, после чего в последовательном протоколе выполняется чтение содержимого этого 16-разрядного регистра.

Идея выполнения кластерного JTAG-теста в данном случае заключается в том, что если ИС PHY-трансивера и трансформатор дифференциальной развязки смонтированы на ПП без ошибок и исправны, то в 10-м разряде регистра состояния Status Register 2 (флажок Link) PHY-трансивера установится значение «лог. 1», которое и будет считано JTAG-тестером. Любая неисправность фрагмента схемы, показанного на рисунке 4, приведет к считыванию «лог. 0» в указанном 10-м разряде регистра состояния PHY-трансивера, что и будет признаком падения теста.


Авторизоваться:

Логин (e-mail):
Пароль:
Регистрация / Забыли пароль?

КОЛОНКИ в ЖУРНАЛАХ
    · Тестирование и тестопригодное проектирование («КиТ» № 2, 2009)
    · Встроенные инструменты тестирования («КиТ» № 3, 2009)
    · Неисправность монтажа BGA — что делать? (Апрельские тезисы) («КиТ» № 4, 2009)
    · Стратегия тестирования: нужен ли нам JTAG? (Как убедить начальника) («КиТ» № 5, 2009)
    · JTAG на системном уровне и тестирование кросс-плат («КиТ» № 6, 2009)
    · Функциональное тестирование и эмуляция средствами граничного сканирования (JTAG) («КиТ» № 7, 2009)
    · Аспекты тестопригодности в файлах BSDL («КиТ» № 9, 2009)
    · Покрытие неисправностей и полнота JTAG-тестирования («КиТ» № 9, 2009)
    · JTAG-тестирование кластеров («КиТ» № 1, 2010)
    · Тестирование компонент памяти в технологии JTAG (1) («КиТ» № 2, 2010)
    · Тестирование компонент памяти в технологии JTAG (2) («КиТ» № 3, 2010)
    · Новый JTAG-стандарт IEEE 1149.7 («КиТ» № 4, 2010)
    · Прожиг флэш-памяти в протоколе JTAG («КиТ» № 5, 2010)
    · Новейший стандарт JTAG-тестирования: IEEE P1149.8.1 («КиТ» № 6, 2010)
    · Стандарт тестопригодного проектирования IEEE P1687 («КиТ» № 7, 2010)
    · Материалы международной конференции по тестированию электроники ITC-2009 (1) («КиТ» № 8, 2010)
    · Материалы международной конференции по тестированию электроники ITC-2009 (2) («КиТ» № 9, 2010)
    · Материалы международной конференции по тестированию электроники ITC-2009 (3) («КиТ» № 10, 2010)
    · Применение осциллографов для визуализации протокола JTAG («КиТ» № 11, 2010)
    · Дистанционное JTAG-тестирование («КиТ» № 12, 2010)
    · Кому понадобится новый стандарт IEEE 1687? («КиТ» № 01, 2011)
    · Взаимосвязь стандартов тестирования IEEE P1687 и IEEE 1149.7 («КиТ» № 02, 2011)
    · Техническая диагностика цифровых устройств («КиТ» № 03, 2011)
    · FPGA и ПЛИС в JTAG-тестировании («КиТ» № 04, 2011)
    · Система JTAG-тестирования onTAP («КиТ» № 05, 2011)
    · Внутрисхемное программирование и JTAG-цепочки («КиТ» № 06, 2011)
    · Снова о внутрисхемном тестировании ICT («КиТ» № 07, 2011)
    · Снова о внутрисхемном тестировании (продолжение) («КиТ» № 08, 2011)
    · Еще раз о внутрисхемном тестировании (окончание) («КиТ» № 09, 2011)
    · Тестирование ICT: векторное или безвекторное? («КиТ» № 11, 2011)
    · Введение в технологию IEEE Std. 1581 тестирования ЗУ (1) («КиТ» № 07, 2012)
    · Введение в технологию IEEE Std. 1581 тестирования ЗУ (2) («КиТ» № 08, 2012)




 

Карта сайта | О нас | Услуги | Софт & хард | JTAG-Библиотека | Партнеры и заказчики | Поддержка | onTAP | Контакты | Монография
Написать вебмастеру
© JTAG.ТЕСТ, 2009.
Все права защищены.