Описание IntegrIT NatureDSP Math

Широко известно, что большинство цифровых сигнальных процессоров (DSP), которые используются в мобильных телефонах, КПК, плеерах и т.д. являются целочисленными, посколько такие процессоры обеспечивают наивысшую производительность при наименьшем энергопотреблении и цене. Обычно, разработка DSP алгоритмов начинается с моделирования системы с использованием высокоуровневых средств проектирования таких как, например, MATLAB. Затем, разработанный алгоритм требуется переписать на язык С/С++. Для реализации математических операций на данном этапе используются типы с плавающей точкой. В принципе, DSP процессоры могут эмулировать  операции с плавающей точкой, но делать это они будут неэффективно. Поэтому, для получения максимальной производительности на целочисленном процессоре, требуется переписать код программы и исключить все операции с плавающей точкой. Такой процесс назвается "портирование". Все математические опреации - свертки, квадратные корни, экспоненты, логорифмы и прочее должны использовать только целочисленную арифметику. Процесс портирования довольно трудоемкий и требует определенной квалификации.

Библиотека NatureDSP Math содержит большое количество уже запортированных и оптимизированных типичных алгоритмов, для того чтобы сократить время разработки продукта и вывода его на рынок.


Поддерживаемые платформа:

  • Texas Instruments C54xx, C55xx, C64xx, DaVinci
  • Tensilica ConnX D2
  • Tensilica  HiFi2
  • Tensilica  Baseband Engine
  • ARM7, ARM9E, ARM11
  • x86 (Windows, Linux)


Библиотека NatureDSP Math работает битэкзэкно на РС и таргете, что позволяет вести разработку на РС в привычном для разработчика окружении (Microsoft Visual Studio, KDevelop etc.) и добиваться абсолютной идентичности результатов вычислений. После завершения разработки и портирования алгоритма на целочисленную арифметику достаточно просто перекомпилировать код под целевую платформу с библиотекой  NatureDSP Signal. Результат работы на целевой платформе разработанного алгоритма будет идентичным. Такой подход к разработке алгоритмов позволяет существенно сократить издержки на разработку и сократить время вывода продукта на рынок.