Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Прикладное программирование 2014 / Прикладное программирование -Конспект лекций - заготовка для издания.doc
Скачиваний:
161
Добавлен:
21.03.2016
Размер:
3.24 Mб
Скачать

8.3 Отладка в реальном времени

СCSвключает несколько опций для режима отладки в реальном времени.

Real-Time Mode(режим реального времени) позволяет выполнение критичных по времени прерываний в приоритетном коде в то время, когда процессор остановлен в фоновом коде, можно также прерывать выполнение одного прерывания, продолжая обслуживать остальные.

Чтобы включить режим отладки в реальном времени:

  1. выбрать Debug→Real-timeMode, в нижней части окна должна появиться надпись “POLITE”;

  2. выбрать View→Real-TimeRefreshOptions, установить интервал обновления информации в окне наблюдения. Галочка в окошкеGlobalContinuousRefreshраспространит этот интервал на все окна, где отображаются данные, в том числе память, графики и наблюдательные окна;

  3. нажать OK;

  4. выбрать View→Registers→CPURegisters, откроется окно, отображающее состояние регистровCPU;

  5. дважды щелкнуть по окошку величины и откорректировать величину регистра прерываний(..IER), чтобы обозначить прерывание какReal-Time;

  6. щелкнуть на свободном месте окна, введенные изменения должны проявиться в красном свете.

Rude Real-Time Mode(жесткий режим реального времени) – для отладки высокоприоритетных прерываний или других частей кода, которые особо критичны ко времени и должны исполняться за минимальное или точно заданное число тактов.

Для включения режима выбрать Debug→RudeReal-timeMode, в нижней части окна должна появиться надпись “RUDE”.

8.4 Опции Reset

В процессе отладки может возникнуть необходимость произвести перезапуск целевой платы или эмулятора средствами CCS. Доступность таких команд зависит от подключения к целевой плате.

8.4.1 Resetцелевой платы останавливает исполнение программы и переводит все регистры в состояние, характерное для включения питания. Для перезапуска целевой платы выбратьDebug→ResetCPU(если целевая плата подключена).

8.4.2 Resetэмулятора возможен только в отключенном от целевой платы состоянии (Disconnected). Для перезапуска эмулятора выбратьDebug→ResetEmulator(если целевая плата подключена). При перезапуске эмулятора целевая плата не затрагивается, ее перезапуск должен производиться самостоятельно нажатием кнопки или выборомDebug→ResetCPU.

Лекция №9 «Интегрированная среда программирования Code Composer Studio. Средства анализа и оптимизации, вспомогательные инструменты»

9.1 Анализ и оптимизация программы

Эффективность программы может оцениваться по соотношению различных факторов, критерии оценки диктуются конкретным применением. Средства анализа обеспечивают сбор и интерпретацию данных о факторах, влияющих на эффективность. Средства оптимизации предназначены для модификации кода программы для повышения ее эффективности.

9.1.1 Анализ эффективности программы

Визуализация данных может осуществляться в CCSв виде графиков, диаграмм и изображений. Выбор вида представления данных производится через менюView→Graph. В открывшемся диалоговом окне задаются свойства выбранного представления. Дополнительные сведения по возможным настройкам средств представления информации можно получить из выпадающих меню.

После установки свойств щелкните по кнопке ОК для открытия графического окна. Изображение в окне будет обновляться при достижении каждой точки останова, либо по каждой остановке программы (Halt), если к изображению не подключены точки останова.

9.1.2 Средства анализа симулятора позволяют отслеживать события, происходящие при исполнении программы, и оценивать ее качество.

Опции пользователя, предназначенные для настройки симулятора:

- включение/выключение анализа;

- подсчет появления выбранных событий;

- остановка исполнения программы при появлении выбранного события;

- удаление событий, которые подсчитываются при исполнении программы или вызывают ее остановку;

- создание log файла;

- сброс счетчика событий.

Для использования средств анализа симулятора:

- загрузить программу;

- запустить средства анализа

9.1.3 Средства анализа в реальном времени

Обеспечивают возможность зондировать, рассматривать и отслеживать состояние целевой платы во время исполнения программы. Утилиты используют физически тот же канал JTAG-интерфейса для связи между целевой платой и компьютером программиста.

Для использования этих средств целевая плата должна использовать ядро DSP/BIOS, которое также обеспечивает связь по физическому каналу в реальном времени, поставляя информацию для визуализации в окнахCCS. Доступ к инструментам анализа в реальном времени через кнопки на панели инструментов или менюDSP/BIOS:

  • MessageLog– отображает последовательности событий во времени, полезны для прослеживания управления в программе. Запись последовательности событий можно вывести в файл, щелкнув правой кнопкой по окнуMessageLogи выбравPropertyPage;

  • StatisticsView– отображает суммарную статистику, накопленную в ядре. Можно изменить настройки отображения, щелкнув правой кнопкой по окнуStatisticsViewи выбравPropertyPage;

  • HostChannelControl– отображает каналы связи с компьютером программиста, задействованные программой. Через это окно можно прикрепить файлы к каналам, начать передачу данных через канал и отследить количество переданных данных.

  • RTAControlPanel– управляет слежением за целевой программой и сбором статистики.

  • ExecutionGraph– отображает исполнениепотоковв реальном времени. Через этот график можно проследить время и порядок исполнения потоков(отображается толстой синей линией). Информацию о линиях графика можно получить, щелкнув правой кнопкой по окнуExecutionGraphи выбравLegend.

  • CPULoadGraph– отображает загрузку целевогоCPU, усредненную за выбранный период для устранения кратковременных выбросов.

  • Kernel/ObjectView– отображает конфигурацию, состояние и статус объектовDSP/BIOS(как динамических так и статических), запущенных на целевой плате. Для сохранения текущих данных щелкнуть правой кнопкой по окнуKernel/ObjectViewи выбратьSaveServerData.