Измерения
Информация\Измерения\Цифровые осциллографы\Отладка низкоскоростных последовательных шин при проектировании встроенных систем
Отладка низкоскоростных последовательных шин при проектировании встроенных систем
Без преувеличения можно сказать, что встроенные системы в настоящее время используются везде. Простой пример встроенной системы — специальная компьютерная система, входящая в состав более крупной системы, предназначенная для мониторинга и контроля служб этой системы. Типовые встроенные системы после своего включения запускают специальные приложения, a после отключения — закрывают эти приложения. B сущности, все электронные устройства, которые проектируются и производятся в настоящее время, можно назвать встроенными системами. Краткий список примеров встроенных систем:
— Будильники
— Автоответчики
— Мобильные телефоны
— Принтеры
— Контроллеры противоблокировочных тормозных систем
— Печи СВЧ
— Системы инерциального наведения ракет
— Проигрыватели DVD
— Карманные компьютеры (PDA)
— Программируемые логические контроллеры (PLC) для автоматизации и контроля промышленного производства
— Портативные музыкальные проигрыватели
— Возможно, даже тостеры...
Встроенные системы могут содержать различные устройства, включая микропроцессоры, микроконтроллеры, ЦОС, ОЗУ, память EPROM, программируемые вентильные матрицы (FPGA), ЦАП, АЦП и схемы ввода/вывода. Эти различные устройства, как правило, обмениваются данными друг c другом и c внешними устройствами по параллельным шинам. Однако в настоящее время все больше стандартных блоков, используемых во встроенных системах, заменяются блоками c последовательными шинами. Это обусловлено следующими причинами:
— Для передачи меньшего количества сигналов требуется меньше пространства
— Низкие затраты
— Низкое энергопотребление
— Меньше контактов
— Встроенные тактовые генераторы
— Разностные сигналы обеспечивают большую помехозащищенность
— Доступность компонентов co стандартными последовательными интерфейсами
Хотя последовательные шины обладают рядом преимуществ, их использование создает определенные проблемы для разработчиков встроенных систем, связанных c тем, что информация передается последовательно, a не параллельно. B данном примечании по использованию описаны общие проблемы проектирования встроенных систем и показано, как их решить c помощью функциональных возможностей новых осциллографов серии DPO4000.
B параллельной архитектуре каждый компонент шины имеет собственный сигнальный тракт. Тракт может содержать 16 адресных линий, 16 линий данных, линию синхросигнала и линии передачи других сигналов управления. Значения адресов или данных по шине передаются одновременно по всем параллельным линиям. Это обеспечивает относительно простой запуск по событию c помощью запуска по состоянию или по комбинации. Такие функции имеются в большинстве осциллографов и логических анализаторах. Также имеется возможность сразу просмотреть зарегистрированные данные на экране осциллографа или логического анализатора. Например, на рисунке 1 для регистрации линий синхросигнала, адресных линий, линий данных и управления микроконтроллера используется логический анализатор. Используя запуск по состоянию, можно выделить требуемую передачу по шине. Для «декодирования» информации в шине необходимо просмотреть логическое состояние каждой адресной линии, линий данных и управления. B последовательных шинах вся эта информация передается последовательно по меньшему количеству проводников (иногда всего по одному). Это значит, что отдельный сигнал может включать информацию об адресе, управлении, данных и синхронизации. B качестве примера рассмотрим последовательный сигнал в шине CAN, представленный на рис. 2.
Рис. 1. Регистрация логическим анализатором линий синхросигнала, адресных линий, линий данных и управления микроконтроллера.
Это сообщение содержит начало кадра, идентификатор (адрес), код длины данных, данные, циклически избыточный код (CRC) и конец кадра, a также другие биты управления. Дополнительную сложность представляет собой то, что синхросигналы встроены в данные, для обеспечения соответствующего количества фронтов и синхронизации приемного устройства c тактовыми импульсами используется заполнение битами. Даже для тренированного специалиста крайне сложно быстро интерпретировать содержимое такого сообщения. A теперь представьте, что это сообщение c ошибкой, которое встречается всего раз в день и необходимо выполнить запуск по этому сообщению. Традиционные осциллографы и логические анализаторы просто не обладают достаточными функциями для анализа таких сигналов. Даже для самых простых стандартных последовательных интерфейсов, например, I2С, гораздо сложней следить за тем, что передается по шине, по сравнению c параллельными протоколами. B шинах I2С используются отдельные линии данных и синхросигнала. B этом случае хотя бы можно использовать синхросигнал в качестве опорного. Но попрежнему требуется найти начало сообщения (при передаче синхросигнала данные передаются медленно), вручную проверить и записать значения данных для всех нарастающих фронтов синхросигнала, a затем упорядочить биты в структуру сообщения. Можно потратить несколько минут только на декодирование отдельного сообщения в зарегистрированной осциллограмме, хотя нет никакой уверенности в том, что нужно именно это сообщение.
Рис. 2. Одно сообщение, зарегистрированное в шине CANbus.
Рис. 3. Одно сообщение, зарегистрированное в шине I2C.
Если это не нужное сообщение, то придется начинать сначала утомительный и подверженный ошибкам процесс. Было бы хорошо выполнить запуск по содержимому сообщения, которое требуется найти, но запуск по состоянию и по комбинации, который использовался много лет в осциллографах и логических анализаторах, в данном случае использовать нельзя. Они предназначены для поиска комбинации, встречающейся одновременно в нескольких каналах. Для последовательных шин обработчики запуска должны поддерживать десятки тысяч состояний (одно состояние на бит). Даже при наличии такой функции запуска, программирование состояний для каждого представляет довольно сложный процесс. Имеется лучший способ! Такой способ предоставляют осциллографы серии DPO4000. B следующих разделах описано, как можно использовать осциллографы серии DPO4000 c некоторыми наиболее распространенными низкоскоростными последовательными шинами, применяемыми в проектировании встроенных систем.
Продолжение статьи :
Комментарии