Самотестирование цифровых измерительных приборов и систем — характерная особенность современных приборов со встроенными микропроцессорами. Дополнительные аппаратные затраты на тестирование составляют небольшую часть общей стоимости прибора и сводятся в основном к стоимости дополнительного ПЗУ для хранения тестовой программы.
На стадии промышленного выпуска прибора аппаратная отладка не обеспечивает достаточной проверки работоспособности в сложных режимах; поэтому тестирование на этой стадии является необходимым этапом производства приборов. То же относится и к стадии ремонта. Локализация неисправности по некоторым даннымзанимает 90% времени восстановления работоспособности прибора, поэтому наиболее эффективны те виды тестового контроля, которые обеспечивают помодульную диагностику неисправности.
В еще большей степени это относится к стадии эксплуатации прибора. Микропроцессоры дают возможность так организовать общение прибора и оператора, что даже при низкой квалификации последнего в области вычислительной техники возможно локализовать неисправность с точностью до типового элемента замены (ТЭЗ). После этого можно оперативно восстановить работоспособность прибора путем замены отказавшего ТЭЗ.
Для возможности помодульного тестирования необходимо при проектировании системы обеспечить взаимное соответствие ТЭЗ и функциональных модулей — это связано с функциональным принципом построения системы тестов. Последовательность процедур тестирования должна быть построена так, чтобы каждый модуль при проверке получал контрольные сигналы только от модулей, уже прошедших проверку. На практике это не всегда выполнимо, так как минимальное работоспособное в режиме тестирования ядро микропроцессорной системы включает в себя центральный процессор, ПЗУ и индикатор, т. е. несколько функциональных модулей. Требования полноты теста, глубины диагностики, средней наработки на отказ и стоимости прибора должны рассматриваться при проектировании в комплексе, и компромисс между ними достигается на основе системных соображений.
Можно разделить все типы тестирования приборов со встроенными микропроцессорами на два основных класса:
тестирование с применением внешних микропроцессорных средств и полностью автономное тестирование. Возможно также использование комбинированных методов.
Для первого типа тестирования применяются специализированные тестеры или системы типа универсальной микроЭВМ. Программы тестирования стандартных блоков обычно входят в программное обеспечение тестера; в некоторых системах программы тестирования могут составляться пользователем на языке высокого уровня, и, таким образом, пользователь имеет возможность создания тестовых систем для произвольных блоков и приборов. Общение с оператором, проводящим тестирование, идет через принтер. По инструкциям на принтере оператор касается зондом точек тестируемой печатной платы; процессор анализирует результат и выдает следующую инструкцию. В приборе имеется встроенный цифровой мультиметр; пользователь имеет возможность программировать тесты на языке.
Тестирование модулей может производиться так же путем подачи на входы цифровых и аналоговых тестерных сигналов и исследования реакции модулей.
Другой тип тестирования — полностью автономное тестирование—рассчитан на проверку прибора в условиях эксплуатации без каких-либо дополнительных средств. При этом функции тестирования чаще всего выполняет основной процессор прибора, однако возможно и встраивание в прибор специального микропроцессорного узла, предназначенного только для автодиагностики.
В зависимости от требований пользователя тестирование может проводиться в двух основных режимах:
определение работоспособности — для этого режима достаточно двух точечных индикаторов, показывающих положительный или отрицательный результат проверки модуля или системы в целом; локализация неисправности может при этом быть произведена раздельным запуском тестов отдельных модулей. Возможен также вариант с цифровой индикацией номера отказавшего модуля;
диагностика неисправности—для этого режима нужно устройство вывода сообщений (дисплей или принтер); локализация неисправности при этом проводится по отдельным элементам тестируемого модуля, например по разрядам шин данных, адресов и управления.
При автономном тестировании для хранения программы тестирования используется либо внешнее устройство памяти (накопитель на диске или магнитной ленте), если оно имеется в системе для основного режима, либо, чаще, тестовое ПЗУ. В последнем случае часто тестовое ПЗУ размещается в том же адресном пространстве, что и основное , ПЗУ. Это позволяет экономить адресное пространство; учитывается то, что во время основной работы тестовое ПЗУ не нужно и доступ к нему можно запретить специальным сигналом. При тестировании запрещается доступ к основному ПЗУ и открывается доступ к тестовому ПЗУ. Иногда ПЗУ для тестирования модуля размещают конструктивно в самом этом модуле. Это дает ряд преимуществ: большую автономность теста, экономию адресного пространства при использовании ряда сменных модулей и др. То же ПЗУ часто используется для идентификации модуля. В сложных системах с большим числом сменных модулей этот прием позволяет избавиться от ввода оператором дополнительной информации при смене модулей. В ПЗУ модуля записываются для ввода в процесссор основные технические характеристики и структурные особенности модуля; в том же ПЗУ находится протокол связи модуля с центральным процессором.
Общая примерная последовательность помодульного тестирования измерительного прибора со встроенным микропроцессором следующая:
тест ПЗУ, тест ЦП, тест дисплея, тест ОЗУ, тест устройств внешней ''памяти, тест устройств дискретного ввода-вывода, тест устройств аналогового ввода-вывода, тест измерительной схемы.
В целях минимизации объема дополнительного оборудования здесь не в полной мере выдерживается принцип независимости результатов каждого теста от узлов, тестируемых позднее. Так, для теста ПЗУ используется центральный процессор; для тестов ПЗУ и центрального процессора используется дисплей.
Проведение полного тестирования модулей (т. е. во всех возможных режимах при всех комбинациях входных сигналов) невозможно по условиям быстродействия, поэтому в перечисленной серии тестов обычно используется ограниченное число комбинаций входных величин, соответствующее наиболее тяжелым условиям эксплуатации. Ряд функциональных устройств приходится тестировать совместно, для того чтобы можно было замкнуть тестовую цепочку микроЭВМ — задание тестового сигнала — тестируемый модуль — выходной сигнал — микроЭВМ — анализ выходного сигнала. Так, устройства дискретного вывода объединяются с устройствами дискретного ввода; устройства цифро-аналогового преобразования объединяются с устройствами аналого-цифрового преобразования. Например в алгоритме диагностики счетчиков-частотомеров; для создания тестируемой цепи кроме счетчика и микропроцессорного модуля используются цифро-аналоговый преобразователь и преобразователь напряжения в частоту импульсов. Тестирование индикационных модулей, служащих для выдачи информации оператору, проводится в полуавтоматическом режиме, т. е. результаты индикации визуально проверяются оператором. Таким способом тестируются точечные и цифровые индикаторы, дисплей, принтер, графопостроитель.