Перейти к содержанию
    

что такое прослеживание (Trace features)

Доброго времени суток!

 

Занялся освоением контроллера 1986ВЕ91Т (аналог STM32F103x). В настоящий момент подбираю отладочные средства, ориентируюсь на продукцию фирмы IAR. Среди предлогаемого IAR-J-Trace, JLINK-ARM (JLINK-ULTRA-ARM). Первый отличается возможностью прослеживания (Trace features). Вопрос: что такое прослеживание и для чего оно необходимо.

 

Заранее спасибо всем ответившим!

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

В принципе через Trace Port процессор может выдавать информацию о том, какие инструкции выполняются в реальном времени. Теоретически эта информация может записываться в компьютере, чтобы при возникновении сбоя отмотать историю назад и посмотреть, как программа зашла туда, куде не надо.

Вот тут перечислены эти фичи:

Cortex-M3 Debug and Trace

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Тоесть эта возможность должна также поддерживаться микроконтроллером?

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Тоесть эта возможность должна также поддерживаться микроконтроллером?

Именно так. Должно присутствовать ETM (Embedded Trace Macrocell). Судя по информации на сайте Миландра, 1986ВЕ91Т не содержит ETM.

Это если я ничего не путаю.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Причём не только процессор поддерживать "в теории "(STM32 поддерживают, например), но у него должны быть необходимые ноги (у STM32 -- только в больших корпусах, у мелких их нет физически, хотя процессорное ядро включает ETM и всё прочее), причём эти ноги должны использоваться для соответствующего разъёма, а не чего-то другого.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Мне казалось SWD как раз это позволял сделать

 

Через SWD только асинхронная трассировка, позволяющая собирать кой-какую статистику, но не способная писать трассу выполнения программы и прочие действительно полезные вещи.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Итак попытаюсь подвести итоги...

Имееются следующие возможности:

- SWV обеспечивает PC-Sampling, трассировку данных, событий, контрольно-измерительную трассировку (прошу прощения за мой французский);

- ETM трассировка (реализована не во всех контроллерах) позволяет отлаживать историю команд, профилировать софт, и анализировать код вцелом.

 

Имеется два способа подключения контроллера для отладки:

-JTAG-интерфейс;

-SWD-интерфейс (SWV доступна только в этом режиме).

Вывода этих интерфейосв перекрываются и выходят в один разъем, таким образом имеется возможность переключать режим отладки...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Подключений -- смотря с какой стороны считать. Если по разъёмам -- то три способа. Полноценная трассировка выполняется через специальный разъём. На процессорах с ядрами Cortex-M он имеет 20 ног, но совершенно другое их расположение, не совпадающее с традиционным JTAG. На процессорах с другими ядрами используется, если память не изменяет, 38-контактный разъём. Ну а если по собственно интерфейсам -- то вроде действительно два.

Изменено пользователем SII

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...