Подписка на новости

Опрос

Нужны ли комментарии к статьям? Комментировали бы вы?

Реклама

 

2000 №8

Code Composer Studio для разработки комплексных систем, содержащих множество DSP-плат

Чернов Владимир


Компания Texas Instruments (TI) продвигает на рынок новый алгоритмический стандарт eXpressDSPTM, который представляет собой универсальную технологию разработки приложений на ЦСП TI. Цель этого стандарта — уменьшить влияние факторов, препятствующих интегрированию существующих алгоритмов в новые системы.

Зачастую при интеграции алгоритмов в ЦОС-систему ошибки возникают вследствие неверных предположений об ее устройстве. Теоретически стандарт состоит из набора общих правил и принципов, которые могут быть применены ко всем алгоритмам обработки сигналов. Вдобавок, все алгоритмы должны быть совместимы со стандартным программным интерфейсом, называемый IALG. Данный стандарт разработан для всех семейств ЦСП TI.

В рамках eXpressDSP фирмой Texas Instruments была создана унифицированная среда проектирования Code Composer StudioTM, облегчающая разработку устройств DSP, отвечающих правилам стандарта (рис. 1).

Данная система обладает рядом свойств, наиболее важными из которых являются:

  • Интеграция всех средств разработки (редактор, отладчик, менеджер проектов и др.) в одно обладающее удобным интерфейсом приложение.
  • Мощный, промышленный C-компилятор, ассемблерный оптимизатор, линковщик.
  • Масштабируемое ядро (DSP/BIOS II) реального времени. Включает набор стандартных инструментов взаимодействия DSP-системы с периферией.
  • Программный симулятор, позволяющий вести отладку на программной модели выбранного семейства ЦСП.
  • Анализатор реального времени, предназначенный для мониторинга состояния системы без остановки процессора.
  • Компилятор, оптимизирующий код программы под определенную платформу (размер кода, оптимальность за счет использования конвейеризации и параллельных блоков).
  • Визуальный линковщик, позволяющий посредством графического интерфейса располагать код программы и данные в памяти.
  • Возможность просмотра вида сигналов в различных графических форматах.
  • Открытая встраиваемая архитектура, позволяющая интегрировать в систему средства третьих разработчиков.

Рассмотрим описанные выше свойства системы.

Открытая встраиваемая архитектура (Open Plug-In Architecture)

В настоящий момент при разработке сложных программных систем требуются средства, ранее недоступные разработчикам. Многие фирмы выпускают всевозможные отладочные средства, обладающие теми или иными преимуществами. Невозможно в одной САПР учесть требования и пожелания всех разработчиков, для которых она предназначена. Благодаря Plug-In Architecture существует возможность выбора средств разработки сторонних производителей и встраивания их в Code Composer Studio. Это позволяет избавиться от необходимости покупки новой системы, когда в используемой не хватает каких-либо свойств.

Для примера, в одной системе можно использовать средства блок-диаграмм системы генерации кода, конфигурирования и диагностики аппаратуры, библиотеку алгоритмов, пакет расчета фильтров и т. д. Принцип разделения данных повышает надежность и уменьшает время настройки различных подсистем.

Визуализация данных (Data Visualization)

Возможность визуализации данных в их естественном виде значительно упрощает процесс анализа и тестирования. Для достижения данной цели требуются различные дисплеи, обладающие способностями систем ЦОС, такие как индикаторная диаграмма, фурье-преобразователи, графопостроители и т. д. Разработчик должен иметь возможность изменять параметры разрабатываемой системы и тут же видеть отклонения в ее работе. Средства визуализации способны выдавать информацию о сигналах во время работы испытываемой системы.

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

Базовые программные средства

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

В состав Code Composer Studio входит DSP/BIOS, содержащий оптимизированные средства для реализации всех описанных служб. DSP/BIOS занимает около 2 К слов и потребляет менее 1 MIPS (млн инструкций в секунду) вычислительных возможностей процессора при реализации всех инструментальных возможностей. Ядро поставляется в виде библиотеки перемещаемых объектных модулей. В приложение включаются только используемые модули. Малые размеры DSP/ BIOS делают возможным встраивания его прямо в BOOT — ROM DSP.

Обмен данными в реальном времени (RTDX)

Средства визуализации, включенные в Code Composer Studio, хорошо подходят для проверки правильности функционирования алгоритмов. Алгоритмы, внедренные в систему, для большей достоверности должны быть исследованы в реальном режиме времени. Обмен в реальном времени (RTDX) представляет значительные выгоды по сравнению с альтернативными методами отладки. До недавнего времени разработчик должен был останавливать систему для получения данных из нее. Данный метод был не всегда удобен, а зачастую и вовсе неприемлем, так как во многих случаях дальнейшая работа приложения была невозможна.

RTDX дает разработчику возможность непрерывного наблюдения за сигналами в реальном времени. Обмен данными между host-компьютером и DSP происходит без остановки отлаживаемого устройства на скоростях свыше 20 Мбит/с. Это в значительной степени сокращает время отладки системы.

Исследования в реальном времени

Для анализа выполнения событийных DSP приложений разработчик должен видеть зависимости между выходными данными, временем и процессами, выполняющимися в системе. RTDX обеспечивает передачу данных в целях организации визуализации данных реального времени. DSP/BIOS предоставляет биб- лиотеки стандартных программ, позволяющих осуществить обмен данными нужным образом с host-системой. В процессе отладки DSP системы необходимы накопление и анализ ряда статистических данных. Обработка накопленной информации может занимать сотни машинных циклов, что критично для устройств, работающих в реальном времени. Передача данных в host-систему может занимать несколько машинных циклов. Следовательно, статистические параметры необходимо обрабатывать в host-системе. Для этого служит специально разработанный статистический модуль. Он позволяет находить максимумы, минимумы, средние значения данных, переданных из DSP-системы.

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

Таким образом, DSP/BIOS, используя RTDX, позволяет отследить поведение системы в реальном времени. При этом все ядро DSP/BIOS, как уже упоминалось выше, потребляет менее 1 MIPS вычислительных ресурсов процессора. Пользователь сам может поместить его в памяти, отключить ненужные ему функции, исключив при этом часть модулей ядра и уменьшив тем самым затраты памяти и вычислительных мощностей процессора.

Интегрированные средства разработки

Code Composer Studio — полностью интегрированный пакет разработчика, обеспечивающий доступ ко всем средствам и инструментам, посредством единого, простого в использовании интерфейса (рис. 2).

Встроенный редактор кода

Редактор предназначен для написания и редактирования кода на языках C и DSP-ассемблера. Он обладает всеми возможностями, присущими редакторам сред программирования, как-то: выделение цветом языковых конструкций и отдельных операторов, поиск и замена строк, переходы на заданные строки и т.д. Предусмотрено выделение ошибок цветом, что способствует их быстрому поиску. По завершении процесса компиляции в отдельном окне выводится список ошибок, по двойному щелчку правой кнопки мыши происходит переход на строку, содержащую ошибку. Предусмотрены всевозможные меню, плавающие панели инструментов, что позволяет каждому разработчику создать удобную для себя среду программирования. Полностью интегрированный с другими средствами, редактор дает возможность, например, одновременно просматривать C-код и дизассемблированный код.

Визуальный Project Manager

Project Manager предназначен для упрощения действий с файлами проекта. Все манипуляции с файлами производятся посредством визуальных средств. Файлы проекта разбиты по функциональным категориям, таким как источники кода, включаемые файлы, библиотечные файлы, конфигурационные файлы, скрипт-файлы. Файлы могут быть добавлены в DSP-проект с помощью «drag-and-drop» технологии. Все средства Project Manager предназначены для уменьшения времени, затрачиваемого на организацию проекта.

Встроенный отладчик

Встроенный отладчик обладает специализированными для DSP средствами и улучшенными возможностями выполнения прерывания программ в заданных точках. Условные и аппаратные точки прерывания могут базироваться на C-выражениях, значениях локальных переменных и регистрах процессора. Для многопроцессорных систем доступны также глобальные точки останова. Через специальное диалоговое окно точки останова могут быть сконфигурированы особым образом (разбиты на группы и т. д.).

Отладчик обладает интерфейсом, схожим с MS Visual C++, что способствует легкому переходу квалифицированных программистов из одной среды программирования в другую.

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

Существует возможность присоединения файлов, содержащих тестовые данные. При необходимости изменить эти данные DSP-систему останавливать не требуется.

Code Composer Studio поддерживает разработку комплексных систем, содержащих множество DSP-плат. CCS синхронно поддерживает работу всех плат, часть из них может быть виртуальными (выполняется эмуляция в host-системе). Для каждой платы может быть запущено отдельное окно, посредством которого контролируется ее состояние.

Пользовательские тесты

Скрипт-язык позволяет разработчику строить программы, синтезирующие тестовые данные. При этом существует возможность создания пользовательского графического интерфейса (GUI), с помощью которого возможно производить контроль над синтезом данных. Например, посредством «регулятора» можно задавать уровень шума, кнопками на панели инструментов включать какие-либо функции и т. д. Скрипт-язык является достаточно мощным средством отладки. С его помощью можно получить доступ как к DSP-системе (памяти и т. д.), так и к host-системе.

По мере развития DSP-систем будут развиваться и средства их разработки. Code Composer Studio, представленный фирмой Texas Instruments, на сегодняшний день является одним из наиболее мощных средств проектирования и отладки. В одной статье невозможно описать все его свойства и преимущества. Более полную информацию можно найти на сайте фирмы www.ti.com.

Скачать статью в формате PDF  Скачать статью Компоненты и технологии PDF

 


Сообщить об ошибке