Загрузка [MathJax]/extensions/AssistiveMML.js

МЕТОД ДИАГНОСТИКИ ЦИФРОВЫХ СХЕМ С ПРОГРАММИРУЕМЫМИ ПЛИС НА ЭТАПЕ ИЗГОТОВЛЕНИЯ

Аннотация


Рассматривается метод самотестирования цифровых схем, реализуемый существующей в устройстве ПЛИС, в которую на время производственного контроля занесено необходимое диагностическое обеспечение. Синтез диагностического обеспечения состоит из этапов определения элементов схемы, проверяемых ПЛИС, определения множества обнаруживаемых физических дефектов, составления алгоритма подачи тестовых наборов. Анализ результатов диагностики производится как с помощью таблиц с кодами ошибок, так и с помощью различных средств индикации. Приводится пример синтеза встроенного теста для интерфейсной платы, содержащей четыре порта передачи данных. Реализация алгоритма выполнена в системе разработки программного обеспечения Quartus II для ПЛИС производства компании Altera на языке описания аппаратуры AHDL. Предложенный метод не требует дополнительных аппаратурных затрат, характеризуется простотой синтеза встроенного теста и позволяет проверить большинство элементов, к которым имеет доступ ПЛИС, и установить место неисправности.

Полный текст

Производство бездефектной радиоэлектронной аппаратуры требует проведения эффективных процедур технического диагностирования при её изготовлении. При этом сложность процедур диагностирования растёт одновременно с ростом сложности аппаратуры [1]. Так, внедрение сверхбольших интегральных схем (СБИС) значительно расширило функциональные возможности оборудования, что существенно усложнило решение задач диагностирования таких устройств на этапе изготовления. Усложнение диагностики цифровых устройств, реализованных в аппаратно-программном базисе БИС, обусловлено как сложностью самой аппаратуры, так и возникновением широкого класса возможных дефектов, включающего наряду с традиционными константными неисправностями большое количество дефектов других классов [2]. Использование методов тестового диагностирования [3] в большинстве случаев невозможно вследствие чрезвычайной громоздкости тестов и больших трудностей в их разработке [4]. Методы аппаратного контроля [5] требуют введения избыточной (контрольной) аппаратуры, что существенно усложняет и удорожает оборудование, объем которого резко увеличивается с расширением класса дефектов, подлежащих контролю [6]. Вследствие изложенного использование данного подхода для этапа производственного контроля является неоправданным. Предлагаемый в данной статье метод синтеза встроенного теста для диагностики цифровых схем, созданной на базе перепрограммируемых СБИС, основан на проведении процедуры самопроверки изготовленного устройства. Добавление такой функции является общей тенденцией в построении электронных систем наряду с самовосстановлением и самоадаптацией [7]. Процедура самопроверки реализуется существующей ПЛИС, в которую на этапе контроля заносится тестовое обеспечение, называемое в дальнейшем встроенным тестом. После отладки устройства ПЛИС программируется в соответствии с рабочим алгоритмом. Предложенный метод выгодно отличается от метода диагностирования с помощью схем аппаратного встроенного контроля [8] тем, что нет необходимости внедрять дополнительные аппаратные средства для осуществления диагностики. Еще одним отличительным плюсом является то, что рассматриваемый метод позволяет локализовать место неисправности, в то время как вышеприведенные методы в большинстве позволяют лишь выявить наличие неисправности в устройстве. Рассмотрим последовательность синтеза встроенного теста на базе ПЛИС, которую условно можно разделить на 4 этапа: 1. Определение блоков и линий проверки. Для того чтобы диагностировать необходимое радиоэлектронное устройство, нужно вычленить из всех его элементов те блоки и линии, которые возможны для проверки с помощью ПЛИС. Такими блоками могут быть передающие порты, устройства индикации и управления, выводы ПЛИС и т.п. В свою очередь, эти блоки могут быть разбиты еще на подблоки и межблочные соединения. Делается это для детализации и максимального уточнения места неисправности. 2. Определение множества дефектов. Далее необходимо определить, какие есть физические дефекты [9], соответствующие неисправностям в блоках, и которые были выявлены на предыдущем шаге. Это могут быть различные одиночные константные неисправности, кратные константные неисправности, неустойчивые неисправности, а также дефекты компонентов [6] в виде нерабочих микросхем на проверяемой линии. 3. Составление общего алгоритма. На этапе составления общего алгоритма тестирования необходимо определиться с последовательностью диагностирования блоков. Также необходимо выбрать средства для разработки программного обеспечения для ПЛИС (обычно предоставляется производителем ПЛИС). 4. Анализ результатов диагностирования или подачи тестов. На заключительном этапе идет интерпретация и проводится анализ результатов диагностики. Интерпретация необходима в том случае, если нет возможности подключения к компьютеру и собственные средства индикации весьма ограничены. В этом случае создаются специальные таблицы с кодами ошибок, которые позволяют дешифрировать полученные результаты. Для очень сложных устройств такие таблицы могут достигать большого размера, что ведет к замедлению и усложнению процесса диагностики. При достаточном количестве средств индикаций для пользователя, как правило, выводятся либо регистры состояния, либо различные флаги или уже расшифрованная статистика. После интерпретации необходимо произвести анализ полученных данных, который заключается в том, что анализируются тип неисправности, причина неисправности, возможности устранения или внесения корректировок в технологический процесс. Примерный общий алгоритм показан на блок-схеме (рис. 1). Рис. 1. Общий алгоритм тестирования Изначально необходимо проверить всевозможные выводы ПЛИС на замыкание, чтобы обеспечить подачу последующих тестов и возможность локализации места неисправности. В противном случае другие тесты тоже покажут неисправности, но конкретное место дефекта не будет установлено. Последующие тесты указаны приблизительно, и их очередность зависит от схемотехнической реализации самого устройства. Так, например, если планируется выводить тестовую информацию на устройства индикации, имеющиеся на плате, то вполне логично продиагностировать сначала их. Эти тесты представляют собой, как правило, визуальную проверку, например, зажигание всех пикселей жидкокристаллической матрицы и попеременная смена цветовой палитры. Если планируется подключать устройство для визуализации результатов тестирования к компьютеру, то нужно сначала проверить тот порт, через который будет производиться подключение. При разработке общего алгоритма тестирования необходимо выбрать способ переключения между тестами. Возможно переключение автоматически, т.е. заданием конечного управляющего автомата, который по приходу определенных сигналов, например сигнала готовности блока, осуществляет переход из одного состояния в другое. Другая возможность состоит в том, чтобы переключаться между тестами с помощью устройств управления, имеющихся на плате. Это могут быть джойстики, кнопки, тачпады и т.д. Соответственно, устройства управления должны быть проверены одними из первых. Далее проверяются все устройства, к которым имеет доступ ПЛИС. Последним этапом производится анализ полученных данных. Здесь необходимо выяснить возможность устранения выявленных неисправностей. Например, если в партии изделий в одном и том же месте получаем определенных дефект, то это означает, что технологический процесс требует доработки. Неисправность может нести случайный характер, например, флуктуация параметров технологического режима. Рассмотрим общий алгоритм синтеза встроенного теста на примере платы, которая организует каналы связи по интерфейсам RS-232 и/или RS-485. Функциональная схема приведена на рис. 2. Рис. 2. Функциональная схема Данная плата содержит 4 порта передачи данных. Порты номер 1 и 2 имеют переключаемый тип интерфейса: либо RS-232, либо RS-485. Для портов 3 и 4 тип интерфейса - только RS-232. Все порты имеют гальваническую изоляцию друг от друга и от остальных узлов платы, но в пределах одного порта интерфейсы RS-232 не имеют изоляции от RS-485. На лицевой панели расположены разъемы интерфейсов RS-232 и индикаторы состояния портов. На задней части платы размещены разъемы интерфейсов RS-485 и разъемы их сигнальных земель. Из установленных на плате электрорадиоэлементов и функциональных блоков необходимо проверить: - передающею линию RXD-TXD четырех портов RS232; - линию квитирования RTS-CTS четырех портов RS232; - восемь пар светодиодов; - линию, ведущую к внутренней шине блока; - линию, содержащую триггеры Шмидта или, по-другому, линию кроссового разъема. Также необходимо проверить время прихода и спада фронта сигнала на портах RS232. Это необходимо сделать для согласования со стандартами на последовательный порт RS232. Реализация данного алгоритма была выполнена в системе разработки программного обеспечения Quartus II для ПЛИС производства компании Altera на языке описания аппаратуры AHDL [10]. Блок-схема алгоритма показана на рис. 3. Для проведения тестирования необходимо замкнуть передатчик на приемник. Выполняется это для функциональной диагностики, т.е., если выдать на вывод RXD сообщение, то идентичное сообщение должно быть принято на выводе TXD. Точно такая же схема тестирования применяется для линии квитирования RTS-CTS. Сама плата устанавливается в кассету через выноску, так как для проведения тестирования необходима подача питания через кроссовый разъем. Все другие выводы должны быть замкнуты друг на друга для последующего тестирования. Изготовление выноски, которая представляет удлинитель с кроссовым разъемом под проверяемую плату и с разъемом под саму кросс-плату, существенно выгоднее, чем применение другого источника питания. Рассмотрим каждый блок в отдельности. Начальное ожидание необходимо для установления всех переходных процессов в ПЛИС и проверяемой плате. Далее идет проверка замыканий на выводах ПЛИС. Этот тест позволяет определить, произошло замыкание на землю или на питание. Выдача результата этого теста происходит позже, так как изначально в плату установлены перемычки для последующего теста последовательного порта. Реализуется этот тест путем назначения в ПЛИС каждого вывода двунаправленным, т.е. можно как выдать, так и прочитать данные на нем. Рис. 3. Алгоритм тестирования платы Регистр состояния каждого вывода показан на рис. 4. Б 1 Б 0 0 - нет замыкания 1 - есть замыкание 0 - замыкание на землю 1 - замыкание на питание Рис. 4. Регистр состояния каждого вывода Тестирование последовательных портов проводится, как отмечалось выше, через перемычку, но не одиночным импульсом, а последовательностью. Эта последовательность называется тестовым сообщением и имеет шестнадцатеричный формат. Тестовое сообщение может быть сформировано произвольно и не нести смысловой нагрузки, но необходимо соблюсти достаточное количество переходов между логической единицей и нулем. Например, для данного проекта использовалось сообщение «testing DS-03». Результат данного теста выводится пользователю посредством светодиодов. Если тест прошел удачно, то «загорается» зеленый светодиод, если неудачно, то ничего не выдается, и светодиод остается в «погашенном» состоянии. Блок «Бегущий огонек» позволяет визуально проверить работоспособность светодиодов, т.е. все 8 пар светодиодов последовательно зажигаются и гаснут. Блок «Проверка кроссового разъема» позволяет проверить замыкания на линиях, имеющих выход на кросс-плату. Выполняется этот тест также путем заворота сигнала через перемычки. Последний блок позволяет выдать информацию о результате проверки замыканий на выводах ПЛИС. Далее идут анализ полученных данных и их интерпретация, т.е., к примеру, если получаем в регистре состояния число 0×3 (шестнадцатеричный формат), то это означает наличие замыкания на питание (см. рис. 4). В случае измерения фронта сигнала полученное значение надо умножать на период тактовой частоты, так как выдается количество тактов, подсчитанное счетчиком, и потом сравнить с технологическими условиями. Таким образом, с помощью этого встроенного теста проверяются практически все элементы, к которым имеет доступ ПЛИС приведенной платы. В данной статье была предложена методика синтеза диагностических тестов для цифровых схем с программируемыми СБИС. Этот метод позволяет выявить недостатки производства еще на этапе изготовления и не требует дополнительных аппаратурных затрат, характеризуется простотой синтеза встроенного теста по сравнению с алгоритмическими методами и позволяет проверить большинство функциональных блоков к которым имеет доступ программируемая СБИС.

Об авторах

В. В Киселев

Пермский национальный исследовательский политехнический университет

Email: ktei@pstu.ru

Н. А Суворов

Пермский национальный исследовательский политехнический университет

Email: bnight@mail.ru

Список литературы

  1. Кон Е.Л., Фрейман В.И. Подходы к тестовому диагностированию цифровых устройств // Вестник Пермского национального исследовательского политехнического университета. - 2012. - № 6. - С. 231-241.
  2. Киселев В.В., Кон Е.Л., Шеховцев О.И. Автоматизация поиска дефектов цифровых устройств. - Л.: Энергоатомиздат, Ленингр. отделение, 1986. - 96 с.
  3. Киселев В.В. Диагностика кратных дефектов в автоматах // Вестник Пермского национального исследовательского политехнического университета. - 2012. - № 6. - С. 267-270.
  4. Журавлев Ю.П., Котелюк Л.А., Циклинский Н.И. Надежность и контроль ЭВМ. - М.: Советское радио, 1978. - 416 с.
  5. Каган Б.М., Мкртумян И.Б. Основы эксплуатации ЭВМ. - М.: Энергноатомиздат, 1983. - 376 с.
  6. Сапожников В.В., Сапожников Вл.В. Основы технической диагностики. - М.:Маршрут, 2004. - 318 с.
  7. Kening Zhang, Jaafar Alghazo, Ronald F. DeMara. FPGA Self-Repair using an Organic Embedded System Architecture // Computer Architecture Laboratory. - URL: http://cal.ucf.edu/conf/c_zhang_demara_alghazo_ decide_07.pdf (дата обращения: 23.06.2014).
  8. Орлов И.А., Корнюшко В.Ф. Эксплуатация и ремонт ЭВМ, организация работы вычислительного центра. - М.: Энергноатомиздат, 1989. - 400 с.
  9. Уилкинсон Б. Основы проектирования цифровых схем. - М.: Вильямс, 2004. - 320 с.
  10. Стешенко В.Б., Самохин А.В. Школа разработки аппаратуры цифровой обработки сигналов на ПЛИС / МГТУ им. Н.Э. Баумана. - URL: www.sm.bmstu.ru/sm5/n4/oba.html (дата обращения: 23.06.2014).

Статистика

Просмотры

Аннотация - 43

PDF (Russian) - 64

Ссылки

  • Ссылки не определены.

© Киселев В.В., Суворов Н.А., 2015

Creative Commons License
Эта статья доступна по лицензии Creative Commons Attribution-NonCommercial 4.0 International License.