Исходные тексты на C полезные для DSP разработки

Интринсики для семейства TI 55XX

При разработке ПО для сигнальных процессоров очень полезно иметь возможность собирать и тестировать код на ПК. При этом возникает вопрос реализации intrinsics на ПК. TI предлагает реализацию интринсиков для семейств 62XX и 64XX (SPRA616 и SPRAA75). Для семейств 55XX и 54XX, ее найти не удалось, поэтому пришлось реализовывать их самим.

В файле intrinsic.h реализованы большинство интринсиков для 55XX. Код используется в нескольких проектах, хотя задачи абсолютно полной реализации всех функций не ставилось. Для включения инлайн функций, реализующих интринсики на ПК, должен быть определен дефайн COMPILER_MSVC, в противном случае функции не определяются.

Использование MATLAB для графического представления данных в процессе разработки ПО

При разработке и отладке DSP программного обеспечения возникает необходимость просмотра внутренних данных в графическом виде, упрощающем их восприятие и анализ. Специализированные среды разработки для DSP, такие как Code Composer Studio, имеют средства графического представления данных, но по многим причинам удобнее отлаживать код на ПК, например под MSVC, не имеющем таких средств. Для визуализации данных удобно воспользоваться средой MATLAB, имеющей разнообразные средства графического представления данных, ориентированные на задачи цифровой обработки сигналов. MATLAB широко применяется для моделирования DSP алгоритмов и предоставляет удобный интерфейс для обмена данными и выполнения команд из разрабатываемой программы.

В архиве matlab.zip содержаться файлы matlab.c/h реализующие интерфейс отлаживаемой программы c MATLAB и выполнение следующих функций: plotArr - построение графиков, eyeDiag4 - построение глазковой диаграммы (eye diagram), constDiag - построение сигнального созвездия (constellation). Исходные коды предназначены для использования с MATLAB 7.2.0.232 (R2006a), в архив включены заголовочные файлы и библиотеки входящие в состав MATLAB для сборки проекта под MSVC.

К достоинствам использования MATLAB можно отнести то, что это позволяет непосредственно сравнивать результаты работы модели алгоритма в MATLAB с результатами работы разрабатываемой программы. К недостаткам надо отнести значительное замедление работы разрабатываемого ПО и возникающие неудобства в использовании самого MSVC.