Первая в России конференция пользователей систем периферийного сканирования

№ 10’2015
PDF версия
2 июня 2015 года в Санкт-Петербурге прошла первая всероссийская конференция пользователей систем периферийного сканирования JTAG Technologies. Мероприятие собрало инженеров более чем 20 отечественных предприятий.

Уникальность данной встречи заключается в том, что основное внимание было уделено не продукции компании JTAG Technologies, а техническим докладам инженеров, которые используют ее программно-аппаратные средства в повседневной жизни. Докладчики поделились со своими коллегами различными методиками создания тестов периферийного сканирования, рассказали о путях решения нестандартных задач, показали высококлассные примеры проектов, созданных в программах JTAG ProVision и JTAG Live Studio. Встреча состоялась на комфортабельном теплоходе (рис. 1), который прошел от Дворцовой набережной до Кронштадта и обратно. Участники конференции представляли компании Санкт-Петербурга, Москвы, Красноярска, Тулы, Саратова, Самары, Ульяновска, Уфы. Коротко расскажем о содержании прозвучавших докладов.

Выступления участников

Рис. 1. Выступления участников

Виктор Ли, инженер НПП «Новые технологии телекоммуникаций» (Санкт-Петербург), сообщил о достоинствах применения в сложных цифровых изделиях коммутационных микросхем JTAG-интерфейса. При большом числе цепочек из компонентов, поддерживающих периферийное сканирование, на плате возникают неудобства при размещении множества отдельных JTAG-разъемов. К тому же количество TAP-портов контроллера может оказаться меньше, чем разъемов. А такие сложные платы все чаще изготавливаются российскими производителями. Все эти трудности можно решить, используя в схеме специальные микросхемы, мультиплексирующие JTAG-интерфейс (англ. — scan bridge). Данные микросхемы (вполне доступные на рынке) имеют, как правило, один первичный TAP-порт (который и выходит на единственный внешний JTAG-разъем платы) и несколько вторичных, предназначенных для коммутации внутренних JTAG-цепочек платы (рис. 2). Применение таких микросхем на платах позволяет тестировать их и в составе сборки, где они объединяются в систему с помощью той или иной кросс-платы. Часто мультиплексирующие JTAG-микросхемы имеют адресацию, что открывает путь к тестированию целых блоков с произвольным выбором плат, которые нужно проверять или программировать в рамках текущей задачи (рис. 3). В докладе было рассказано о критериях выбора микросхем, нюансах работы с ними, использовании в JTAG ProVision. Выпускаются JTAG-мультиплексоры различными компаниями, однако не все устройства удобны в применении, кроме того, не у каждого производителя открыта документация.

Использование микросхемы JTAG-мультиплексора в рамках одной платы

Рис. 2. Использование микросхемы JTAG-мультиплексора в рамках одной платы

Использование микросхем JTAG-мультиплексоров для тестирования плат в составе системы

Рис. 3. Использование микросхем JTAG-мультиплексоров для тестирования плат в составе системы

Второй доклад Виктора Ли был посвящен опыту использования при тестировании плат стандарта IEEE 1149.6. Это расширение стандарта IEEE 1149.1, позволяющее тестировать высокоскоростные соединения, представляющие собой дифференциальные пары и часто развязанные конденсаторами (рис. 4). Классический стандарт периферийного сканирования (1149.1) в таком случае не справится с тестированием, выдав ложные сообщения о дефектах (расценив емкость как обрыв) или не обнаружив дефект (если обрыв произошел на одной из двух линий дифпары). Стандарт IEEE 1149.6 добавляет микросхеме, его поддерживающей, дополнительные структуры к обычным ячейкам периферийного сканирования, позволяющие генерировать и детектировать импульсы, а также отдельно тестировать линии дифпар. До недавнего времени этот стандарт воспринимался как нечто экзотическое, поскольку лишь немногие микросхемы его поддерживали, даже имея высокоскоростные интерфейсы. Теперь количество таких микросхем растет, и, как показало данное выступление, они появляются и на отечественных изделиях. Было отмечено, что JTAG ProVision поддерживает выполнение тестов и диагностику дефектов на линиях с 1149.6. В процессе работы были обнаружены обрывы, короткие замыкания, замыкания на «землю» и питание.

Пример высокоскоростной дифференциальной линии: обычный тест периферийного сканирования расценит емкость как обрыв

Рис. 4. Пример высокоскоростной дифференциальной линии: обычный тест периферийного сканирования расценит емкость как обрыв

Существует и метод, альтернативный тестированию высокоскоростных линий с помощью IEEE 1149.6, — это технология BERT (Bit Error Rate Testing). Cуть ее заключается в том, что на рабочей скорости передается большое количество тестовых пакетов, затем анализируется количество корректно принятых данных. Подобная возможность должна поддерживаться процессором и не имеет отношения к периферийному сканированию, будучи реализованной в ядре. Недостаток заключается в том, что технология не стандартизирована, как IEEE 1149.6 или 1149.1, вот почему создание данных тестов — это долгий и кропотливый труд, требующий высокой квалификации разработчика цифровой электроники. Преимущество BERT состоит в более высокочастотной реализации тестирования, что позволяет диагностировать не только грубые дефекты монтажа, но и скрытые — например, холодную пайку, некачественное изготовление ПП и т. п.

Алексей Бутько, инженер Самарского государственного аэрокосмического университета им. академика С. П. Королева (СГАУ), рассказал о первой в России образовательной программе дополнительного профессионального образования (повышения квалификации) по JTAG- технологиям. Несмотря на значительную потребность предприятий в специалистах, владеющих методами тестопригодного проектирования и производственной диагностики, подготовку или переподготовку специалистов в указанной области практически не производит ни один отечественный вуз. СГАУ давно сотрудничает с российским представительством JTAG Technologies и имеет лабораторию, оснащенную учебными платами, контроллерами периферийного сканирования и ПО JTAG ProVision.

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

Тест кластеров (те есть компонентов без поддержки периферийного сканирования) в большинстве случаев обеспечивает самую весомую часть тестового покрытия цифрового изделия. Ведь на плате может быть, скажем, всего один компонент, поддерживающий стандарт IEEE 1149.1, а все остальное — окружающая периферия, тестируемая за счет JTAG-логики основного компонента. Довольно часто тесты кластеров создаются с помощью автоматической генерации на основе моделей, уже присутствующих в ПО для разработки приложений периферийного сканирования. Но порой приходится создавать тесты с помощью сред программирования (когда, например, требуется более расширенное тестирование). Доклад инженера технической поддержки JTAG Technologies Гиви Чхутиашвили представлял собой разработку и запуск скрипта в среде JFT (JTAG Functional Test) в режиме реального времени. Полученный тест был тут же запущен на тренировочной плате JT2156. Основное внимание было уделено тонкостям разработки скриптов многоразового применения (модулей Python). Единожды написанный тестовый скрипт можно не только многократно использовать в одном и том же или разных проектах, но и привязывать его к нетлисту автоматически. Как это сделать — было рассказано и продемонстрировано в докладе.

Очень интересным и полезным с прикладной точки зрения стал доклад Владислава Щербины из ВНИИА им. Н. Л. Духова. Выступление было посвящено различным трудностям, с которыми столкнулись сотрудники предприятия в процессе программирования ПЗУ, микроконтроллеров и ПЛИС с использованием технологии периферийного сканирования.

Доклад состоял из нескольких частей. Первая часть посвящалась решению проблемы тестирования связей ПЗУ, установленных на плате. На участок тестирования поступали платы с уже запрограммированными микросхемами флэш, поэтому стандартное тестирование шин адреса и данных, реализованное на основе готовой модели флэш-памяти в JTAG ProVision, не подошло, поскольку такой метод мог нарушить записанные данные. Но существует и другой метод создания тестов кластеров, менее автоматизированный, позволяющий рассматривать электронный компонент как «черный ящик», подавая воздействия и считывая отклик. В случае с флэш-памятью метод сводится к установке определенных адресов и считыванию из них данных, которые заранее известны. Естественно, общая универсальная модель не может учитывать такие частные случаи с уже запрограммированными данными. Реализованный специалистами ВНИИА тест в JTAG ProVision требует входных файлов с описанием воздействий и откликов. Для простой логики такие файлы нетрудно создать вручную, а вот для микросхем флэш легче написать программу, конструирующую их на основе файлов данных ПЗУ, что и было реализовано. Такой подход, как оказалось, можно использовать и при программировании ПЗУ небольшого объема на платах в отсутствие опции автоматического создания приложений для прошивки флэш в JTAG ProVision. Данный метод может быть полезен и как инструментарий визуализации и быстрой локализации неисправности после неудачной прошивки ИМС.

Вторая часть доклада была посвящена программированию микроконтроллеров Microchip PIC32 через JTAG-интерфейс и нюансам, связанным с этим процессом. В третьей части было рассказано о достоинствах применения стандарта IEEE 1532 при программировании ПЛИС с помощью JTAG. Данный стандарт (который появился в 2000 году) является дополнением к IEEE 1149.1 и унифицирует программирование ПЛИС. Устройства, соответствующие указанному стандарту (независимо от производителя), могут конфигурироваться, стираться, считываться и верифицироваться как в одиночку, так и одновременно (если они объединены в цепочку). Алгоритм программирования должен быть описан отдельным разделом в BSDL-файле, содержащем информацию о 1532. Стандарт поддерживается в JTAG ProVision. Специалисты из ВНИИА столкнулись с тем, что в наличии имелся только файл проекта формата POF (используется программатором ByteBlaster), который не может применяться автоматическим ПО, чтобы создать приложения для программирования. JTAG ProVision поддерживает только генерацию приложений на основе файлов SVF, JEDEC, STAPL и IEEE 1532. Тем не менее именно стандарт IEEE 1532 позволяет решить проблему, клонировав конфигурацию из запрограммированной ПЛИС. Не обошлось и без трудностей по вине производителей ПЛИС, некорректно описывающих логику 1532 в своих моделях, решение которых также было представлено в докладе. Отметим, что для применения операций стандарта IEEE 1532 его должна поддерживать соответствующая микросхема.

Доклад Натальи Ивченко из ЗАО «СБТ» (Зеленоград) был посвящен использованию среды JFT и языка Python для создания полноценных функциональных тестов законченных изделий. Интересен тот факт, что тестируемое изделие (пульт управления) не имеет в своем составе JTAG-компонентов, поэтому для его тестирования использовался доступ DIOS-модуля (цифрового модуля ввода/вывода, подключенного к контроллеру периферийного сканирования) к внешним разъемам. Тестируемый пульт управления (рис. 5) содержит двухстрочный знакосинтезирующий индикатор и тактовые кнопки (8 штук). Тестирование проводится в два этапа: проверка индикатора и проверка кнопок. Весь тест полностью написан на языке Python. Для удобства пользователя сделан графический интерфейс с помощью подключенной внешней библиотеки Tkinter (находится в свободном доступе) (рис. 6). На первом этапе на индикаторе формируется бегущая строка, в результате чего осуществляется проверка всех знакомест. На втором этапе происходит проверка на залипание кнопок и анализ реакции на нажатие кнопок. При завершении тестирования кнопок в нижней строке высвечивается результат тестирования ПУ.

Подключение тестируемого изделия к контроллеру периферийного сканирования (используются только каналы DIOS)

Рис. 5. Подключение тестируемого изделия к контроллеру периферийного сканирования (используются только каналы DIOS)

Созданная пользователем в JTAG ProVision графическая оболочка для функционального тестирования модема

Рис. 6. Созданная пользователем в JTAG ProVision графическая оболочка для функционального тестирования модема

Доклад Натальи Ивченко показывает, что системы периферийного сканирования можно применять не только для проверки плат на наличие дефектов монтажа (структурное тестирование), но и для функциональной проверки блоков, даже без микросхем, поддерживающих периферийное сканирование. При этом JTAG ProVision позволяет объединить тесты, использующие периферийное сканирование по прямому назначению, и функциональные тесты в одну последовательность. От себя добавим, что подобные функциональные тесты, разработанные с помощью среды программирования JFT и языка Python, можно создать не только в JTAG ProVision, но и в программном пакете JTAG Live Studio. Последний также имеет в своем составе среду программирования (Script), базирующуюся на Python.

Особый интерес представляет доклад Ивана Дергунова из АО «НИИ ТП», посвященный интеграции приложений, разработанных в JTAG ProVision, в среду LabVIEW. Данный вопрос волнует многих инженеров, занятых тестированием, так как на предприятиях радиоэлектронной промышленности широко используется оборудование и ПО National Instruments. Естественно возникает вопрос: можно ли тестовые приложения формата ProVision запускать с помощью данных средств, на базе которых часто построены универсальные стенды контроля на отечественных предприятиях JTAG Technologies предлагает так называемые пакеты интеграции, позволяющие осуществить такую задачу, но без реальных примеров инженерам довольно трудно понять, насколько просто или сложно их использовать. Доклад показал, что процесс создания тестовых алгоритмов в LabVIEW с помощью JTAG-тестов — вполне простой и технически несложный процесс. Можно не только запускать приложения, но и выводить результаты тестирования и диагностики. Был показан весь процесс интеграции по шагам. Также был представлен пример тестовой программы в LabVIEW. Специалисты НИИ ТП организовали рабочее место не только с программной, но и аппаратной интеграцией периферийного сканирования в функциональные тестеры на базе шасси PXI (рис. 7). Контроллер периферийного сканирования имеет не привычный всем пользователям настольный вид, а выполнен в виде карты PXIe. Внешним является только разветвитель QuadPOD на четыре JTAG-порта.

Интегрированное решение, объединяющее функциональный тестер с контроллером периферийного сканирования

Рис. 7. Интегрированное решение, объединяющее функциональный тестер с контроллером периферийного сканирования

Следующим было выступление Констан-тина Храмцова из компании «МСД-Холдинг» (Санкт-Петербург), использующей для тестирования изделий ПО JTAG Live Script. Изделие представляет собой лазерную быстродействующую систему диагностики контактного провода «Износ». В отсутствие автоматических средств проектирования тестов, таких как ProVision или AutoBuzz, инженерам пришлось создать скрипт на языке Python, изучающий соединения «золотой платы», BSDL-модели JTAG-компонентов и создающий файлы с полученными связями. Эти файлы затем используются для тестирования других, потенциально неисправных плат и сравнения их межсоединений с эталонной. Проделанная работа показывает, что при грамотном и творческом подходе можно реализовать автоматический тест и диагностику плат даже с минимальным набором программных средств.

В заключение отметим, что конференция прошла под девизом: «Нет ничего невозможного!». Хорошие средства проектирования тестов, помноженные на творческий потенциал и квалификацию инженеров, позволяют решить любые задачи, связанные с тестированием цифровой электроники.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *