Научная статья на тему 'JTAG на системном уровне и тестирование кросс-плат'

JTAG на системном уровне и тестирование кросс-плат Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
138
42
i Надоели баннеры? Вы всегда можете отключить рекламу.

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Городецкий Ами

Большую часть изделий электроники можно рассматривать как системы, содержащие кросс-платы или соединительные кабели. Даже если каждая из составляющих систему печатных плат проверена индивидуально, система в целом может оказаться неработоспособной, что часто бывает следствием дефектов сборки. Технология граничного сканирования (JTAG) представляет собой весьма эффективный инструмент для обнаружения и диагностики неисправностей такого рода. К ним, в частности, относятся обрывы и короткие замыкания в разъемах кросс-плат, отсутствие отдельных печатных плат или монтаж не тех плат, которые требуются. Разумеется, функциональный тест в состоянии обнаружить отклонения системы от исправного функционирования, однако диагностика места и характера неисправности может оказаться весьма емкой по времени и/или требующей высокой квалификации (и, соответственно, оплаты) тест-инженера.

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Текст научной работы на тему «JTAG на системном уровне и тестирование кросс-плат»

Ами ГОРОДЕЦКИЙ, к. т. н. (StarTest)

[email protected]

JTAG на системном уровне

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

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

Кроме широкой применимости системного ГС-тестирования для выяснения структурной целостности системы, эта технология используется также для выполнения на системном уровне, то есть после окончательной сборки узла, таких операций, как внутрисхемное конфигурирование ПЛМ и FPGA, прожиг элементов флэш-памяти, запись информации в ЭСППЗУ, а также функциональное тестирование процессоров через их порты эмуляции. Наряду с использованием системного ГС-тестирования на этапах отладки и в процессе производства, этот подход доказал свою эффективность при выполнении программируемых модификаций узлов и систем, находящихся на объекте эксплуатации, позволяя просто, быстро, а зачастую и дистанционно модифицировать содержимое флэш-памяти и переконфигурировать микросхемы ПЛМ и FPGA, находящиеся на отдельных платах узла, объединяемых кроссплатой.

Существуют четыре метода организации системного ГС-тестирования: три их них предусматривают применение внешних по отношению к тестируемой системе средств, а четвертый основан на использовании встроенных средств ГС-тестирования. Первый из методов внешнего тестирования предполагает подключение ГС-цепочки каждой из плат системы к независимым разъемам доступа ГС-тестера, находящимся, как правило, на самих этих платах. В результате такого подключения каждая из плат системы может быть тестирована независимо от других, хотя такую звездообразную структуру можно назвать системной весьма условно. Достоинством этого подхода является тестопригодность системы вне зависимости от ее структуры: извлечение из

кросс-платы любой из плат системы не приводит к прекращению тестового доступа к остальным. Попытки замены отдельных независимых разъемов плат одним универсальным, размещаемым на кросс-плате с последующим мультиплексированием ГС-цепей, приводят к необходимости проектирования активной кросс-платы вместо пассивной и значительному усложнению цепей TMS, так как каждая плата системы требует независимого управления этой цепью. Такой подход не предусматривает, разумеется, тестирования целостности цепей подключения отдельных плат к кроссплате и самой кросс-платы.

Во втором, кольцевом, методе внешнего тестирования все ГС-цепочки каждой из плат системы соединяются последовательно в том или ином порядке и подключаются к единственному внешнему разъему, связанному, как правило, с кросс-платой (рис. 1). ГС-цепочка остается при этом неизменной при любом варианте сборки узла, так что обрыв в любом месте цепочки приводит к прекращению тестового доступа ко всей системе. При отсутствии какой-нибудь из плат (ввиду той или иной комплектации системы) необходимо заменить ее соответствующими перемычками на кроссплате. Длинные ГС-цепочки, содержащие и медленные (в смысле ГС) компоненты, могут существенно замедлять выполнение определенных тестовых процедур [ПЭ. 2008. № 1].

Третий и наиболее популярный метод системного ГС-тестирования основан на идее управляемого внешнего доступа к ГС-цепоч-кам отдельных плат системы посредством одного внешнего разъема, находящегося на кросс-плате (рис. 2). Реализация этой идеи обычно связывается с применением специальных компонентов, работающих как мно-

гоканальные управляемые шлюзы и управляемых ГС-тестером. Существует целый ряд подобных компонентов, далее мы кратко рассмотрим некоторые из них. Такие компоненты устанавливаются на тестируемых платах системы или на ее кросс-плате.

Четвертый метод заключается во встраивании в систему средств самотестирования (Built-In Self-Test, BIST). Эффективность такого метода весьма высока, прежде всего, потому, что при правильном проектировании он обеспечивает высокую скорость тестирования наряду с высоким уровнем покрытия неисправностей. Такие средства следует предусматривать на ранних этапах проектирования системы, поскольку их обычно сложно или вовсе невозможно ввести в уже спроектированную систему. Встроенные средства самотестирования могут запускаться как по обычным функциональным каналам системы, так и посредством интерфейса ГС-тести-рования.

Хорошо спроектированные платы с высоким уровнем ГС-тестопригодности зачастую легко интегрируются в структуры системного ГС-тестирования, если принять во внимание следующие простые ограничения:

• Для генерации ГС-тестов межсоединений необходимо иметь полный список цепей, соединяющих отдельные платы через кроссплату.

• Система генерации ГС-тестов [ПЭ. 2008. № 2; ПЭ. 2008. № 3] должна поддерживать одновременное управление несколькими ГС-цепочками.

• Разъемы для подключения ГС-тестера к каждой плате системы должны быть доступны при монтаже отдельных плат на кросс-плате.

КОМПОНЕНТЫ И ТЕХНОЛОГИИ • № 6 '2009

На рынке много лет существуют и весьма востребованы несколько семейств микросхем многоканальных управляемых шлюзов, специально предназначенных для коммутации ГС-цепочек и управления ими. Каждая из таких микросхем имеет первичный ГС-порт, и, в зависимости от типа микросхемы, есть возможность управляемого расщепления этого порта на то или иное число вторичных ГС-портов в задаваемой конфигурации. Стандартный протокол ГС [ПЭ. 2007. № 6] используется для адресации вторичных ГС-портов посредством внутренних регистров шлюза. Содержимое этих регистров определяет, какие из вторичных ГС-портов будут активны и подключены к ГС-цепочке первичного порта. Если к первичному ГС-порту подключены несколько шлюзов, ГС-тестер должен быть в состоянии адресоваться к каждому их них. Несмотря на то, что размещение подобных микросхем на плате неизбежно увеличивает ее стоимость (хотя и ненамного), их использование заметно повышает тестопригодность плат и систем.

К наиболее известным микросхемам, применяемым для системного ГС-тестирования, относятся следующие:

• Серия фирмы Texas Instruments (www-s.ti.com/cgi-bin/sc/family3.cgi? family=BOUNDARY+SCAN+(JTAG)+ SUPPORT+DEVICES):

- Addressable Scan Port (ASP) — SN54/74ABT8996;

- Scan Path Linker (SPL) — SN54/74ACT8997;

- Linking Addressable Scan Port (LASP) — SN54LVT8986.

• Серия фирмы National Semiconductor (www.national.com/appinfo/scan/):

- Scan Bridge (SCANPSC110, SCANSTA111, SCANSTA112).

• Серия фирмы Firecron (www.firecron.com/index.php/pages/2):

- Scan Controller (JTS01);

- Gateway (JTS03, JTS06);

- BIST Sequencer (JTS04).

• Серия фирмы Lattice Semiconductor

(www.latticesemi.com/lit/docs/refdesigns/

rd1002.pdf):

- Multiple Scan Port Linker (BSCAN1/2). Практически все ГС-тестеры позволяют

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

Гибкое и легко адаптируемое к разнообразным схемам системного ГС-тестирования решение предлагает фирма JTAG.TECT (www. start-test.com). Здесь в качестве многоканального управляемого шлюза используется специальным образом программируемая, простая и недорогая ПЛМ, позволяющая адресовать порознь и связывать в одну длинную ГС-цепочку практически любое количество вторичных ГС-портов. Наряду с возможностью произвольной коммутации портов, это решение позволяет автоматически распознавать, какие платы тестируемой системы подключены к кросс-плате, и в соответствии с текущей конфигурацией системы задавать разнообразные режимы тестирования. Это может быть, к примеру, выполнение теста каждой платы в отдельности, тестирование любых сочетаний плат и связей между ними через кросс-плату или же одновременное (для повышения производительности процесса) тестирование целого ряда одинаковых плат, подключенных к кросс-плате. Применение такого решения избавляет разработчиков системы как от необходимости буферизации ГС-портов на отдельных платах системы, так

и от использования преобразователей уровней сигналов для разноуровневых ГС-портов разных плат. Вдобавок устраняется необходимость приобретения многопортовых систем прогона ГС-тестов [ПЭ. 2009. № 2], поскольку их однопортовые конфигурации также вполне достаточны.

Системное ГС-тестирование предполагает, разумеется, специальное проектирование кросс-плат, на которых следует, как минимум, разместить четыре (или пять) ГС-цепей ^1, TDO, TMS, ТСК и, возможно, TRST), а также резисторную адресацию каждого из разъемов отдельных плат системы. ГС-тести-рование под управлением любого внешнего ГС-тестера является, конечно, структурным, задача которого — как обнаружение неисправностей сборки отдельных плат, так и неисправностей их монтажа на кросс-плату. Наряду с этим широко применяется встроенное системное тестирование на рабочих частотах системы (а^рееф, его назначение — определение всевозможных параметрических неисправностей, которые не обнаруживаются при обычном ГС-тестировании. В сущности, это не что иное, как функциональное самотестирование. При этом одна из плат системы проектируется как ведущая и содержит секвенсер встроенного тестирования и флэш-память, заполняемую тестовой программой. Запуск секвенсера происходит по обычным ГС-каналам, тестирование выполняется на рабочих частотах системы, а результаты прогона теста собираются в предназначенных для этого регистрах, сворачиваются в 16- или 32-разрядные сигнатуры, выдаваемые наружу по ГС-цепям для получения результата типа «Прошел — не прошел». Отсутствие подробной диагностики при таком подходе компенсируется значительным расширением спектра покрываемых неисправностей, а также скоростью выполнения теста и простотой управления, включающей и дистанционные возможности. ■

КОМПОНЕНТЫ И ТЕХНОЛОГИИ • № 6 '2009

www.kit-e.ru

i Надоели баннеры? Вы всегда можете отключить рекламу.