Майк Тули - Справочное пособие по цифровой электронике
Даже самый совершенный микропроцессор практически бесполезен без «поддержки» других устройств, которые подразделяются на три группы.
Запоминающее устройство с произвольной выборкой. Выше мы говорили о том, что всем микропроцессорам требуется доступ к памяти со считыванием и записью, и хотя однокристальные микропроцессоры обладают такой небольшой внутренней памятью, обычно для организации памяти требуются соответствующие микросхемы (подробнее см. в гл.6).
Постоянное запоминающее устройство. Микропроцессорам необходима некоторая фиксированная память для управляющих программ и, возможно, операционных систем и интерпретаторов языков программирования высокого уровня. Такая память обеспечивается микросхемами постоянных запоминающих устройств (см. гл. 6).
Микросхемы для ввода-вывода. Чтобы выполнить любую полезную функцию, микропроцессор должен как-то взаимодействовать с внешним миром. Такие связи реализуются с помощью БИС, конфигурация которых определяется программно и которые называются программируемыми.
Микросхемы для ввода-вывода подразделяются на параллельные (одновременно передается байт) и последовательные (по единственной линии передается один бит за другим).
На рис. 5.3 показана базовая конфигурация микропроцессорной системы, содержащая центральный микропроцессор (ЦП), постоянное запоминающее устройство (ПЗУ), запоминающее устройство с произвольной выборкой (ЗУПВ) и микросхемы для ввода-вывода.
Рис. 5.3. Основные компоненты микропроцессорной системы.
Отметим наличие в системе трех шин; компоненты объединяются шинами адреса, данных и управления, поэтому одним из требований к вспомогательным микросхемам оказывается наличие у них тристабильных выходов. С их помощью обеспечивается отключение микросхемы от шины, когда последняя не требуется.
Вспомогательные микросхемы, например ПЗУ или ЗУПВ, почти всегда выбираются или разрешаются низким уровнем сигнала разрешения кристалла EN или выбора (выборки) кристалла CS.
Обычно эти сигналы формируют дешифраторы адреса, на входы которых подаются сигналы с шины адреса. Дешифратор адреса как бы разделяет имеющуюся память на блоки, каждый из которых соответствует конкретной вспомогательной микросхеме. Следовательно, когда микропроцессор считывает или записывает информацию, например в ЗУПВ, дешифратор адреса обеспечивает выбор только ЗУПВ, а внутренние буферы микросхем ПЗУ и ввода-вывода удерживают их выходы в высокоимпедансном состоянии.
Распределение пространства памяти в микропроцессорной системе удобно показывать с помощью так называемой карты памяти. 8-битный микропроцессор с 16-линиями адреса может адресовать любую из 65536 (216) ячеек памяти, поэтому диапазон адресов памяти составляет от 0 до 65535 (максимальный адрес). На рис. 5.4 показана типичная карта памяти с адресами.
Рис. 5.4. Типичная карта памяти системы управления с 8-битным микропроцессором.
5.4. Поиск неисправностей в микропроцессорах
Поиск неисправностей в микропроцессорных системах, особенно для новичков, может оказаться сложной задачей. Однако расстраиваться не нужно, потому что большинство неисправностей довольно просты и их можно обнаружить несложным прибором. До начала работы следует по возможности получить принципиальную схему и документацию по эксплуатации системы; в ней приводятся наиболее часто встречающиеся неисправности.
Отправной точкой при работе со схемной платой служит идентификация основных элементов, включая микропроцессор и вспомогательные микросхемы. Микросхемы полупроводниковой памяти обычно размещаются компактно, и их легко найти (подробнее см. в гл. 6), а микросхемы для ввода-вывода располагаются вблизи соответствующих разъемов. Генератор синхронизации легко найти по кварцу, а дешифраторы адреса выполняются на TTЛ-схемах либо на заказных логических матрицах (программируемые логические матрицы ПЛМ или нескоммутироваиные логические матрицы НЛМ).
Разобравшись в схемной плате и найдя основные микросхемы, нужно попытаться найти ответы на следующие вопросы.
1. В каком состоянии находится система — имеется ли какая-либо индикация или система выглядит полностью неработающей? В последнем случае прежде всего необходимо проверить напряжение питания +5 В. Если оно мало или отсутствует, следует отключить питание от печатной платы и установить, «виноват» блок питания или чрезмерная нагрузка из-за короткого замыкания в самой системе.
2. Нажмите кнопку сброса и посмотрите, возникают ли в системе какие-либо изменения. Если происходит частичный сброс (например, индицируется сообщение об авторском праве или появляется какой-то начальный стимул), неисправность микропроцессора маловероятна, а более правдоподобен отказ в какой-либо вспомогательной микросхеме, например в ЗУПВ.
3. Если наблюдается перемежающаяся неисправность (система какое-то время работает, а затем останавливается в непредсказуемой точке), проверьте все разъемы. Соединения в краевых разъемах довольно ненадежны, и их контакты следует периодически чистить. Аналогичная проблема возникает, если основные микросхемы вставлены в гнезда. Осторожно нажмите на каждую из «больших» микросхем и посмотрите, не возобновляется ли правильная работа. Иногда до замены микросхемы достаточно просто аккуратно вынуть ее и снова вставить, так как эта операция может прочистить контакты.
4. Если микропроцессор вроде бы работает и неисправность не перемежающаяся, целесообразно проверить сигналы управления в самом микропроцессоре. На рис. 5.6–5.8 показана разводка контактов четырех наиболее популярных 8-битных микропроцессоров.
Рис. 5.5. Разводка контактов микропроцессора 6502.
Рис. 5.6. Разводка контактов микропроцессора 6800.
Рис. 5.7. Разводка контактов микропроцессора 6809.
Рис. 5.8. Разводка контактов микропроцессора Z80.
С помощью логического пробника (см. приложение 2) убедитесь, что:
а) имеются сигналы на входе синхронизации (пробник показывает наличие импульсов). Если их нет, проверьте схему генератора синхронизации;
б) на входе сброса отсутствует сигнал низкого уровня (проверьте также действие короткого импульса при нажатии кнопки сброса). При «зависшем» входе сброса проверьте соответствующую схему формирования сигнала сброса;
в) отсутствует постоянный сигнал низкого уровня на входе немаскируемого прерывания. Если такой сигнал все же имеет место, попробуйте поочередно отключать внешние устройства до тех пор, пока сигнал немаскируемого прерывания не станет пассивным. Проверьте также микросхему ввода-вывода (можно временно вынуть ее из гнезда, не забыв, конечно, предварительно выключить питание);
г) линии считывания и записи (или одна линия считывания/записи) активны. Если микропроцессор выбирает команды и выполняет их, на этих линиях действует непрерывный поток импульсов. Если их нет, нажмите кнопку сброса и проверьте наличие кратковременной активности на линии считывания. В случае отсутствия импульсов и при срабатывании сигнала сброса, по всей вероятности, неисправен сам микропроцессор.
5. Если на предыдущих этапах проблема не выяснена, поочередно коснитесь логическим пробником каждой линии адреса и данных (при наличии осциллографа удобно использовать и его). Наблюдайте сигнал на каждой линии.
Если на какой-то линии постоянно действует сигнал низкого или высокого уровня (т. е. она «зависла») или постоянно находится в высокоимпедансном состоянии, выключите питание и попробуйте поочередно отсоединять вспомогательные микросхемы. В случае сохранения неисправности ее причиной может быть отказ в одном из внутренних буферов микропроцессора, что требует его замены.
6. Если все ваши попытки оказались тщетными, воспользуйтесь следующими «менее научными», но тем не менее эффективными приемами:
а) пусть система поработает некоторое время, затем поочередно коснитесь пальцем каждой микросхемы. Если какая-то микросхема слишком горячая, то вполне возможно, что неисправность произошла именно в ней (температуру можно сравнить, касаясь аналогичной микросхемы на этой же или другой печатной плате);
б) когда микросхемы вставлены в гнезда, поочередно вынимайте и заменяйте каждую из них (не забывая, конечно, выключать питание). Замену следует производить на заведомо работоспособную микросхему.