Интерфейс фонового режима отладки - Background debug mode interface
Фоновый режим отладки (БДМ) интерфейс - это электронный интерфейс, позволяющий отладка из встроенные системы. В частности, он обеспечивает внутрисхемная отладка функциональность в микроконтроллерах. Это требует одного провода и специализированной электроники в отлаживаемой системе. Он появляется во многих Freescale Semiconductor продукты.
Интерфейс позволяет Хост управлять и запрашивать цель. В целевом устройстве требуется специализированное оборудование. В хосте не требуется специального оборудования; простой двунаправленный Вывод ввода / вывода достаточно.
Сигналы ввода / вывода
Сигналы, используемые BDM для передачи данных к цели и от нее, инициируются хост-процессором. Хост отключает линию передачи, а затем либо
- Утверждает строку раньше, чтобы вывести 1,
- Утверждает строку позже, чтобы вывести 0,
- Три государства его выход, позволяющий цели вести линию. Хост может воспринимать 1 или 0 как входное значение.
В начале следующего бита хост отключает линию передачи, и процесс повторяется. Таким образом передается каждый бит.
Другими словами, возрастающая сложность современного программного и аппаратного обеспечения приводит к появлению некоторых новых подходов к отладке. Производители кремния предлагают все больше и больше встроенных функций отладки для эмуляции новых процессоров..
Эта возможность реализована в различных процессорах под такими именами, как режим фоновой отладки (BDM), JTAG и на чипе внутрисхемная эмуляция, помещает основные функции отладки на сам чип. С BDM (однопроводный интерфейс) или JTAG (стандартный JTAG) порт отладки, вы управляете и отслеживаете микроконтроллер исключительно через стабильные встроенные службы отладки.
Этот режим отладки работает даже в случае сбоя целевой системы и позволяет разработчикам продолжить исследование причины сбоя.
Разработка приложений для микроконтроллеров
Хорошая среда разработки инструментов важна для сокращения общего времени и затрат на разработку. Пользователи хотят отлаживать свою прикладную программу в условиях, имитирующих фактическую настройку их системы. По этой причине требуется возможность отладки пользовательской программы в реальной целевой системе. Это известно как внутрисхемная отладка. Кроме того, большинство новых микроконтроллеров имеют энергонезависимую память, например флэш-память поэтому также требуется программный код целевой системы. Это известно как внутрисхемное программирование.
Для поддержки внутрисхемной отладки и программирования в семействе HC08 предусмотрен режим монитора, а в HCS08 и RS08 используется режим фоновой отладки (BDM). Аппаратное обеспечение фоновой отладки на HCS08 состоит из контроллера фоновой отладки (BDC) и модуля отладки (DBG). Аппаратное обеспечение фоновой отладки на RS08 состоит только из контроллера фоновой отладки (BDC).
Команды BDM
Хост BDM может выдавать команды с параметрами для цели. Некоторые команды позволяют читать или записывать блоки целевой памяти, отдельные регистры в ЦП или регистры, недоступные для целевого объекта.
Примеры включают:
READ_BYTE | Прочитать байт из памяти |
WRITE_BYTE | Записать байт в память |
ИДТИ | Запуск / возобновление выполнения с текущего местоположения счетчика программ |
WRITE_PC | Записать значение в счетчик программы |
READ_PC | Считайте значение программного счетчика |
WRITE_X | Записать значение в индексный регистр |
READ_X | Прочтите значение индексного регистра |
READ_SP | Прочтите значение указателя стека |
Функции BDM
В зависимости от целевой части, контроллер BDM может иметь аппаратную точка останова регистр. Регистр содержит значение, указывающее адрес в памяти. Когда ЦП целевой части обращается к этому месту в памяти, оборудование BDM может взять на себя управление целевой частью, остановить выполнение программы и начать работу в фоновом режиме.
использованная литература
- Лист данных Freescale Semiconductor Inc. MC9RS08KA2 (MC9RS08KA2, Rev. 1.0).
- Freescale Semiconductor Inc. Справочное руководство CPU12
- Freescale Semiconductor Inc. Справочное руководство RS08 Core
- Freescale Semiconductor Inc. Справочное руководство по семейству HCS08