Смекни!
smekni.com

Проектирование сигнатурного анализатора (стр. 4 из 5)

Сигнатуры адреса в режиме Шина данных Шина адреса

свободного счета D0 X A0 UUUU A8 HC89

D1 X A1 5555 A9 2H70

Переключатели Подключе- D2 X A2 CCCC A10 HPP0

сигнатурногонияD3 X A3 7F7F A11 1293

анализатора D4 X A4 5H21 A12 HAP7

D5 X A5 0AFAA13 3C96

Пуск

A15 D6 X A6 UPFH A14 3827

Останов

A15D7 X A7 52F8A15 755P

Cинхро-

низация

READ

____________________________

Сигнатура Vcc равна 0001

Рис. 7. Документирование сигнатур

Для любой системы, рассчитанной на сигнатурный анализ, должен существовать документ, в котором приведены сигнатуры всех узлов. В режиме свободного счета, хотя он и сканирует все адресное пространство, будут разрешены не все микросхемы, так как микропроцессор выполняет только операции считывания из памяти. Например, входной порт не разрешается, и получить от него значимые сигнатуры невозможно. Шина данных отключена от процессора и также не дает значимых сигнатур (за исключением некоторых специальных условий). Набор сигнатур берется от заведомо исправной системы и документируется. В начале списка сигнатур показываются подключения входов пуска, останова и синхронизации, а также их активные фронты (нарастающий или спадающий). Кроме того, здесь же даются характеристические сигнатуры для указанных подключенных входов. Эта информация необходима для настройки анализатора и контроля подключений по сигнатурам, полученным от Vccи земли. После этого берутся сигнатуры от узлов, и результаты сравниваются с приведенными в документе сигнатурами. Пример таблицы сигнатур для режима свободного счета приведен на рис. 7.

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

В данном примере характеристическая сигнатура Vccравна 0001; ее необходимо проверить до взятия от системы остальных сигнатур. В режиме свободного счета сигналы на шине данных бессмысленны, что показано в таблице в виде набора состояний “безразлично” (X). Однако шина адреса проверяется, поэтому приведены сигнатуры для всех линий шины адреса.

Далее в документе находятся диаграммы разводки выводов всех микросхем, и у каждого вывода показана его сигнатура. Земля всегда имеет характеристическую сигнатуру 0000, которая приводится как GND. Чтобы показать, что сигнатура 0000 допустима для вывода и “отличается” от сигнатуры земли, после сигнатуры находится буква B. Она показывает, что светодиод, находящийся в зонде логического пробника, при взятии сигнатуры будет вспыхивать. Примером служит сигнатура у вывода 18 микросхемы IC2. В режиме свободного счета сигнатуры не многих вывода ИС не имеют смысла и показываются на диаграммах в виде X (см. пример у вывода 3 IC4). Еще одна часто встречающаяся ситуация отражена у вывода 1 IC2. Здесь сигнатура равна 0000, но светодиод в зонде пробника не вспыхивает. Вывод 1 в данном тесте всегда имеет уровень логического 0, который дает такую же сигнатуру, как и земля; указание 0000 на диаграмме подчеркивает, что вывод не закорочен на землю. Если вывод закорочен на землю, следует указывать GND.

Поиск неисправности с применением сигнатурного анализа заключается в определении возможной области с неисправностью и проверки сигнатур до обнаружения неправильной сигнатуры. Пользуясь принципиальной схемой и таблицами сигнатур, неисправность прослеживают “назад” до получения правильной сигнатуры. Неисправность существует в той части схемы, которая находится между последней неправильной и первой правильной сигнатурами.

Тестирование ПЗУ в режиме свободного счета.

Хотя главное назначение свободного счета заключается в проверке системного ядра, он применим и для контроля ПЗУ. В режиме свободного счета на шине адреса переодически формируется все двоичные наборы. Подаваемая в ЦП холостая команда заставляет его выполнять операции считывания по каждому адресу. ПЗУ содержит только фиксированные команды, которые в режиме свободного счета последовательно выдаются на шину данных. Используя линию разрешения кристалла ПЗУ для сигналов пуска и останова, а управляющую линию READ для сигнала синхронизации анализатора, можно проверить содержимое любого системного ПЗУ.

Рис. 8. Тестирование ПЗУ в режиме свободного счета

Анализатор регистрирует только данные, относящиеся к проверяемому ПЗУ, хотя процессор сканирует все адресное пространство. На рис. 8показано, каким образом в режиме свободного счета проверяется одна из системных ПЗУ с применением сигнатурного анализатора.

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

Тест–циклы сигнатурного анализа.

Для проверки тех частей системы, которые недоступны режиму свободного счета, необходимо написать и выполнить специальные программы. Каждая из них предназначена для проверки одной части системы, например входного порта, и обычно состоит всего из нескольких строк ассемблерного кода. Такие тест-программы сигнатурного анализа обычно помещаются в ПЗУ, которое находится в системе, но при нормальной работе не используется. Тест-ПЗУ приводится в действие либо переключением линии OE от первого системного ПЗУ с последующим сбросом системы, либо вводом в процессор команды RESTART и размещением тест-ПЗУ по адресу рестарта. Набор тест-программ обычно организован как цикл, который переодически выполняется при включении тест-ПЗУ в работу. В начале полного тест-цикла предусматривается формирование импульса на линии сигнала пуска сигнатурного анализатора, а в конце тест-цикла формируется импульс на линии сигнала останова анализатора. Часто для обоих сигналов пуска и останова используется одна и та же линия, что устраняет необходимость формирования отдельного сигнала останова. В микропроцессорах типа 8080/Z80 в качестве сигнала пуска-останова обычно применяется старшая линия А15 шины адреса, а само формирование сигнала осуществляется фиктивной командой ввода или вывода. В этих микропроцессорах адреса портов ВВ формируются только в младьшей половине шины адреса, но адрес дублируется и на старшей половине шины. Поэтому считывание или запись в порт ВВ с адресом 8016 вызовет появление импульса на линии А15.

TESTLOOP: DI ;Запретить прерывание
IN 80H ;Выдать импульс при считывании
OUT 80H ;Выдать импульс при записи

Приведенную простую последовательность команд (в мнемониках микропроцессора 8080) можно использовать для инициирования набора тест программ сигнатурного анализа.Команды IN и OUT вызывают появление импульса на линии A15 сначала в операции считывания, а затем в операции записи. В зависимости от выполняемого теста вход синхронизации в сигнатурный анализатор подается с линии READ или WRITE шины управления.

Простой тест входного порта реализуется следующим образом:

OUTTEST: XRA ;сбросить регистр A
STC A ;установить в 1 бит переноса
LOOP: RAL ;сдвинуть еденичный бит влево
OUT (04) ;выдать двоичный набор в выходной порт
JNC LOOP ;повторить если тест не закончен

Принцип теста заключается в сдвиге состояния логической “1” по всем восьми линиям ВВ выходного порта. Таким образом, до перехода к следующему тесту будет произведено 8 операций записи в выходной порт. При использовании линии A15для сигналов пуска и останова, а линии WRITE для входа синхронизации берутся сигнатуры с каждой выходной линии и сравниваются с задокументированными значениями. Аналогичный тест можно написать для проверки каждой входной линии входного порта, но вначале необходимо задать их известные состояния. Обычно для этого к входным линиям подключается тест-прибор, позволяющий устанавливать состояния входных линий.