29. Интерфейс программирования и отладки PDI
29.1. Отличительные особенности
- Интерфейс программирования и отладки (PDI)
- 2-проводной интерфейс для внешнего программирования и доступа к встроенной отладочной системе
- Использует вывод сброса (Reset) и еще один специальный вывод Test
- В программировании и отладке не участвуют линии ввода-вывода
- Особенности программирования
- Гибкий протокол передачи данных
- 8 гибких инструкций
- Минимальные затраты ресурсов на реализацию протокола
- Малое время программирования
- Частота синхронизации программирования 10 МГц при напряжении питания 1.8В
- Надежность
- Встроенное обнаружение и обработка ошибок
- Возможности отладки
- Не нарушает работу МК
- Не использует программных или аппаратных ресурсов
- Полное управление потоком программы
- Поддержка символьной отладки на аппаратном уровне
- Команды управления исполнением программы GO(пуск), STOP (стоп), RESET (сброс), STEP INTO (шаг с входом в подпрограмму), STEP OVER (шаг с обходом подпрограммы), STEP OUT (шаг с выходом из подпрограммы), RUN-TO-CURSOR (исполнение до курсора)
- 1 специальная точка останова по адресу памяти программ или символьная точка останова для AVR STUDIO/эмулятора
- 4 аппаратных точек останова
- Неограниченное количество точек останова программы пользователя
- ЦПУ участвует в доступе к памяти ввода-вывода, памяти данных и памяти программ
- Высокоскоростная работа
- Не предъявляются ограничения к частоте системной синхронизации
- Интерфейс JTAG
- Совместим со стандартом IEEE 1149.1
- Возможности граничного сканирования в соответствии со стандартом IEEE 1149.1 (JTAG)
- Те же функции программирования, что и у PDI
- Те же функции отладки, что и у PDI
29.2. Обзор
Интерфейс программирования и отладки (PDI) - разработанный компанией Atmel интерфейс доступа к встроенным в микроконтроллер блокам программирования и отладки.
PDI поддерживает высокоскоростное программирование всех пространств энергонезависимой памяти, в т.ч. Flash-память, EEPOM, Fuse-биты, Lock-биты и сигнатурный код пользователя. Программирование осуществляется путем доступа к контроллеру энергонезависимой памяти (NVM-контроллер) и выполнения NVM-контроллером команд, описанных в разделе 30 "Программирование памяти".
Встроенная отладочная система (OCD-система) функционирует полностью автономно. В процессе работы отладочной системы, не задействуются какие-либо программные или аппаратные ресурсы, кроме четырех линий ввода-вывода, выступающих в роли интерфейса JTAG (если он используется). OCD-система оснащена всеми возможностями управления потоком программы, поддерживает неограниченное число точек останова по данным и адресам программы, и может выполнить чтение или запись любой области памяти.
Возможности программирования и отладки доступны через два физических интерфейса. Основной интерфейс - PDI. Он представляет собой 2-проводной интерфейс, в т.ч. вывод Reset, использующийся в качестве входа синхронизации (PDI_CLK), и отдельный вывод Test, использующийся для ввода и вывода данных (PDI_DATA). У большинства микроконтроллеров также имеется интерфейс JTAG. Этот интерфейс является 4-проводным и тоже может использоваться для программирования и отладки. Интерфейс JTAG совместим со стандартом IEEE 1149.1 и поддерживает возможности граничного сканирования. Если не указывается иное, при любом дальнейшем упоминании PDI полагается доступ к нему через его же трансивер. Любой внешний программатор или адаптер встроенной отладочной системы/эмулятор может быть напрямую подключен к этим интерфейсам, не требуя при этом установки внешних компонентов.
Рисунок 29.1. Контроллер PDI с трансиверами JTAG и PDI, а также другими ближайшими модулями (выделены серым цветом)
|