Поиск неисправностей в шинных системах

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

Если какой-либо процессор не в состоянии получить доступ к шине, он может «зависнуть», так как другой ведущий уже управляет шиной и не освобождает ее. В этом случае необходимо проверить линии и с помощью логического пробника или осциллографа. Если они разрешены, проверяют линии модификаторов и убеждаются, что цикл шины не является циклом подтверждения, а «обиженный» процессор выдает строб данных. Если сигнал выдается, от ведомой платы должен поступать сигнал или . В противном случае следует убедиться, что ведомая плата реагирует на адрес, выдаваемый процессором. Отметим, что для многих ведомых плат необходимо наличие на шине сигнала STSCLK и поэтому возникают дополнительные сложности, связанные с тем, что несколько процессоров одновременно генерируют эти сигналы.
Важно также отметить, что платы ввода-вывода обычно имеют перемычки для выбора адресов и линий внимания запроса. Перемычки следует устанавливать таким образом, чтобы между платами не возникало «конфликтов». Перед заменой в системе вышедших из строя плат следует убедиться в правильной установке перемычек. Несоблюдение этого простого правила может стоить многочасовых усилий при выявлении неисправности.
Наконец, при диагностике неисправностей в сложных системах не забывайте об очевидных вещах. В любом случае прежде всего необходимо оценить состояние системы, руководствуясь нижеприведенными тестами.
1. Правильно ли работала система до возникновения неисправности или неисправность проявилась сразу же после включения системы?
2. Имеется ли журнал регистрации функционирования системы, не могут ли привести к неисправности плохое проектирование или дефектный элемент при изготовлении платы?
3. Если неисправность появилась недавно, в каком режиме работала система до ее возникновения?
4. Является ли неисправность постоянной или перемежающейся?
5. При каких обстоятельствах возникает перемежающаяся неисправность? Зависит ли она от температуры?
6. Можно ли предсказать, когда возникнет неисправность?
7. Если это так, можно ли воспроизвести такие условия, что неисправность будет постоянной?
8. Какие платы в системе работают правильно?
9. Можно ли локализовать неисправность до конкретной платы?
10. Задокументирована ли где-нибудь возникшая неисправность?
На все эти вопросы необходимо ответить прежде, чем приступать к измерениям и удалению подозрительных плат. Опытный исследователь осуществляет подобную оценку почти автоматически, а новичку мы советуем как можно скорее усвоить предложенный алгоритм.