При исследовании процессов в цифровой технике, стандартной КИА часто оказывается недостаточно – слишком велика трудоемкость регистрации и сравнения столь длинных неповторяющихся последовательностей импульсов, которые характерны для работы процессора, контроллеров и других узлов схемы компьютера. Поэтому развитие микропроцессорных систем потребовало разработки широкого спектра специализированных приборов и сервисных средств регистрации цифровых логических сигналов, двоичных последовательностей и состояний узлов СВТ, начиная с простых логических пробников, фиксирующих наличие логических нуля или единицы в исследуемой точке, и кончая логическими анализаторами. Последние позволяют регистрировать входные и выходные двоичные последовательности для исследуемых узлов, автоматически сравнивать их с эталонными и сообщать оператору о месте и характере несовпадений логических состояний цифровой схемы с эталонными.
Этот класс приборов и аппаратов называют нестандартной, или специальной КИА.
Наиболее широко известны и применяются в практике диагностики СВТ следующие приборы и устройства нестандартной контрольно-измерительной аппаратуры:
- логический пробник,
- индикатор тока,
- пульсатор,
- тест клипсы,
- сигнатурный анализатор,
- логический анализатор.
Логический пробник – очень простое устройство, изготовить которое по силам даже начинающему радиолюбителю. Он содержит пороговые схемы, фиксирующие уровни логического нуля, логической единицы, уровень на неподключенном входе логической ИМС (для ИМС ТТЛ это: >+0,4 вольт и <+2,4 вольт, т .е. в районе 1 вольта), с индикацией этих уровней на светодиодах, лампочках накаливания, светодиодных или ЖКИ-индикаторах и т. п.
Очень полезно иметь в пробнике триггер-ловушку одиночных импульсов, т. к. однократно появляющийся сигнал невозможно зафиксировать ни одним из приборов стандартной КИА. Часто ловушку одиночных импульсов выполняют на двоичных счетчиках, что позволяет зафиксировать и пары импульсов и более, смотря по тому, сколько разрядов имеет установленный в пробнике счетчик.
Некоторые модели логических пробников имеют еще и встроенный генератор одиночных импульсов – пульсатор, срабатывающий по нажатию специальной кнопки на корпусе пробника. Это позволяет подавать стимулирующий импульс в заданную точку схемы, например на вход триггера, а значит, очень просто, всего одним логическим пробником, проверять, в первом приближении, работоспособность RS-, D-, или JK-триггера.
Электрическая схема пробника выполняется на биполярных или полевых транзисторах и стандартных ИМС. Питание пробник может получать прямо от исследуемого блока и, при хорошем исполнении, пробник имеет размеры с большую авторучку, что создает неоценимые удобства работы с ним. Так, при работе с логическим пробником, не требуется переводить взгляд с точки его подключения к схеме на измерительный прибор, как при работе с осциллографом или мультиметром, т. к. индикатор состояния измеряемой точки у логического пробника находится вблизи его щупа.
Недостатком логического пробника является то, что, каждая его модель рассчитана на регистрацию сигналов от ИМС только одного типа, скажем ТТЛ, или ЭСЛ; сделать его универсальным довольно сложно, но можно иметь для этой цели и два разных пробника.
Индикатор тока – это устройство, выполненное в размерах логического пробника, которое позволяет проверить как целостность монтажа, так и исправность входной цепи ТТЛ-микросхемы. Выполнить эту проверку с использованием стандартной КИА достаточно сложно, а индикатором тока – легко и просто. Идея его работы использует то обстоятельство, что вход ИМС ТТЛ-типа представляет собой ключевой генератор входного тока.
Индикаторы тока бывают нескольких типов. Наиболее простые из них определяют микроразность потенциалов (падение напряжения) на участке соединительного проводника. Такой датчик индикатора тока имеет серьезные недостатки:
1) он должен уметь надежно фиксировать единицы милливольт падения напряжения на измеряемом участке монтажного проводника, или печатного шлейфа, что реализовать технически непросто;
2) требует контактов с двумя точками исследуемой цепи (а точнее с четырьмя – по одному токовому и одному потенциальному в каждой точке) и, если печатный монтаж имеет селективную защиту (что обычно имеется), датчик эту защиту в точках контакта нарушает;
3) для надежного контакта с исследуемым проводником требуется заметное механическое усилие на остриях индикатора тока, что при современных плотностях монтажа (ширина линий шлейфа доходит до 0,1мм) может привести к обрыву проводника в этих точках.
Более совершенный логический пробник использует бесконтактный принцип детектирования тока в проводнике и выполняется с использованием магниторезисторов, или магнитоэлектрического эффекта Холла.
Стандартный индикатор тока показывает наличие тока в проводнике, начиная от 10 mkA. Его чувствительности достаточно для индикации рабочих токов ТТЛ-ИМС при поступлении на ее вход логического нуля, утечек тока при поступлении на вход ИМС логической единицы, обрывов проводников на входах и выходах ИМС, замыканий цепей и прочее.
Индикатор тока, выполненный на магниторезисторах или датчиках Холла, имеет один недостаток – он не работает с ИМС КМОП, так как полевые транзисторы по входам – не токовые элементы, а потенциальные, впрочем, здесь не поможет и контактный датчик.
В качестве дополнительных устройств диагностики неисправностей ИМС раньше использовались логические тест-клипсы, позволяющие, не нарушая монтажа, подключить эталонную микросхему параллельно исследуемой и индицировать несовпадения в их работе. Ограниченность их применения объясняется, с одной стороны, разнообразием используемых корпусов ИМС (8-, 14-, 16-, 24-выводные DIP, планарные и т. д.), требующим большой номенклатуры клипс, а с другой – недостаточной надежностью контакта клипсы с выводами ИМС. Вдобавок ко всему, к СБИС с многорядным расположением выводов, таким как СБИС микропроцессора или микроконтроллера, подключать клипсы вообще физически невозможно.
Развитием идеи многоканального осциллографа с запоминанием является логический анализатор.
Простая модель логического анализатора это – регистр сдвига, с индикаторами его состояния. На сдвигающий вход регистра, подается тактирующая (стробирующая) последовательность импульсов, а на последовательный вход – исследуемая последовательность сигналов (биты уровней логических 0 и 1). С приходом каждого следующего стробирующего импульса, уже имеющаяся в регистре информация сдвигается на один разряд вправо, а очередной бит на входе записывается в начало регистра. Выдвигающаяся при этом из регистра информация теряется. В момент регистрации (фиксации ошибки) сдвиг и запись прекращаются и сдвиговый регистр переходит в режим хранения. Теперь, пользуясь индикацией регистра сдвига, можно просмотреть предысторию возникновения ошибки в исследуемой точке, на глубину разрядности регистра. Каждый последующий разряд регистра показывает, был ли логический 0 или 1 за такт стробирования до текущего. Например, 32-разрадный регистр сдвига позволяет зафиксировать состояние исследуемой точки схемы от 1-го до 32-го тактов, предшествующих регистрации. Этого не умеет делать ни один другой измерительный прибор.
Современные логические анализаторы имеют до 32-х синхронно работающих входов (каналов) с глубиной запоминания до 4096 тактов. Это возможно, конечно, только с использованием быстродействующих ОЗУ, а не регистров сдвига. Разрешающая способность лучших моделей анализаторов достигает 2 нсек.
Запуск, стробирование и регистрация информации логическим анализатором производятся по кодовым словам запуска, синхронизации и регистрации. Эти кодовые слова представляют собой бинарные кодовые комбинации, снимающиеся с нужных точек схемы.
Такие многоканальные логические анализаторы могут иметь встроенную, либо работать под управлением внешней, инструментальной микро-ЭВМ, или ПЭВМ. Это, в свою очередь, позволяет модифицировать вывод информации на дисплей, принтер, плоттер в цифровой бинарной, шестнадцатеричной системах, или в аналоговой форме – в виде осциллограмм. Применение микро-ЭВМ позволяет хранить эталонную информацию, автоматически сравнивать ее с зарегистрированной, указывать место их несовпадения, просматривать интересующие фрагменты в более мелком временном масштабе (лупа времени) и т. д., включая регистрацию помех в паузах между стробированием.
Работать с прибором не просто, – требуется глубокое понимание логики работы исследуемых компонент схемы, но без такого понимания невозможен и любой другой анализ неисправностей СВТ. Тем более невозможно, без помощи логического анализатора, исследовать ситуацию с возникновением одиночной ошибки, появляющейся только после продолжительной работы программы, да еще с плавающим характером ошибки.
Логический анализатор часто входит в состав аппаратного тестирующего комплекса PC-tester.
Сигнатурный анализатор.
Сигнатура – это этикетка, сжатое представление бинарной последовательности, образованное методом деления исходного информационного полинома (бинарной последовательности) на образующий (порождающий) полином с потерей частного, но с фиксацией остатка от деления. Остаток от деления и есть искомая сигнатура.
Принцип сжатия входной информации и критерии достоверности фиксации ошибок во входной последовательности, подробно разработаны в теории помехоустойчивого кодирования для передачи информации.
Физическая реализация функции деления входного полинома на образующий схемотехнически проста: это регистр сдвига с обратными связями, складывающими по модулю-2 соответствующие разряды регистра сдвига с очередным битом входной последовательности. Разрядность регистра сдвига определяется степенью образующего полинома (чем выше степень, тем меньше вероятность получения одинаковых сигнатур при разных значениях входного полинома, а значит и выше способность обнаружения ошибок разного типа). Вид образующего полинома, т. е. коэффициенты =1 при его членах, определяют, какие именно разряды участвуют в сложении по модулю-2 с входной последовательностью.
Пример образующего полинома:
P(a) = x0 + x3 + x8 + x9
Приведенный полином имеет девятую степень, коэффициенты =1 имеют аргументы со степенями 0, 3, 8 и 9. Остальные члены полинома в регистре сдвига присутствуют, но не принимают участия в сложениях по модулю-2, с входным информационным полиномом. Физическая реализация схемы деления входной последовательности Р(х) на вышеприведенный образующий полином P(a), приведена на рисунке 2.2.
Рисунок 2.2. Схемотехническая реализация функции деления
двоичного информационного полинома на образующий полином типа
P(a) = x0 + x3 + x8 + x9
После прохождения заданного числа сдвигов, однозначно определяющегося степенью входного полинома, т. е. его разрядностью, остаток от деления находится в регистре сдвига и может быть использован как сигнатура. Его можно вывести на индикацию в двоичном, или шестнадцатеричном виде, или ввести в память инструментальной ПЭВМ для сравнения с эталонной сигнатурой для данной точки схемы.
В отличие от логического анализа, сигнатура не содержит симптома ошибки в явном виде, но позволяет быстро, не рассуждая, определить, есть ли ошибка во входной последовательности. Если заранее сняты эталонные сигнатуры в виде таблиц, или ими снабжена принципиальная схема исследуемого узла ВС, то, запуская ту же самую тестирующую (стимулирующую) программу или микропрограмму, легко определить, находится ли неисправный элемент до или после данной точки. Элемент, имеющий верные сигнатуры на входах и неверную на выходе – неисправен.
Правда, все это справедливо только для комбинационных схем без обратных связей, иначе, для последовательностных схем, разрешающая способность сигнатурного анализа ограничивается узлом, охваченным обратными связями, но эти связи могут быть, и разорваны, например, с помощью DIP-переключателей, для того, чтобы превратить последовательностный узел в простую комбинационную схему. Так иногда делается в зарубежных СВТ. При разрыве обратных связей, узел, конечно, не выполняет заданных ему функций в схеме, но это и не важно при поиске дефекта, так как проверяемый узел все равно неисправен и его штатная работа невозможна.
Методика диагностики настолько проста и легко автоматизируется применением инструментальной ПЭВМ, что доступна персоналу с ограниченной квалификацией и используется в организациях и фирмах, специализирующихся на ремонте и наладке микропроцессорных систем, но требует:
- большой работы по предварительной разработке специальных тестирующих программ или микропрограмм для каждого узла ВС;
- средств разрыва обратных связей (перемычек или переключателей);
- обеспечения абсолютной повторяемости микропрограмм с точностью до стартового и стопового битов.
Сигнатурный анализатор выполняется либо в виде самостоятельного устройства, либо в виде одноплатной конструкции, устанавливающейся в слот расширения системной шины компьютера, либо входит в состав тестирующего комплекса, типа PC-tester.
1. На каких принципах основана работа индикатора тока?
2. Как работает логический анализатор?
3. Какой принцип обработки входных двоичных последовательностей положен в основу работы сигнатурного анализатора?
4. В чем заключаются достоинства и недостатки логического анализа?
5. В чем состоят достоинства и недостатки работы с сигнатурным анализатором?