Для ДСП-задач (+)
(«Телесистемы»: Конференция «Микроконтроллеры и их применение»)

миниатюрный аудио-видеорекордер mAVR

Отправлено 22 января 2004 г. 19:17
В ответ на: Лично у меня уже лет 15 в памяти пример использования плюсплюснутого Си. отправлено Bill 22 января 2004 г. 19:05

С компилеры, что от AD, что от TI не умеют юзать специализированные инструкции, как то сдвоенная арифметика (когда одно 32-битное число рассматривается как два 16-битных, и например старшая половина вычитается, а младшая складывается, и рвется цепочка переноса между 16-м и 17-м разрядом) - это как раз для БПФ. Еще кучу полезных инструкций он не знает, которые для FIR, LMS - фильтров и алгоритмов Витерби. Не юзает инструкции dual-MAC, dual-multiply. И много-много еще полезных дел. Потом С не умеет использовать битреверсную адресацию. Конечно можно понатыкать intrinsinc-функций, но это IMHO извращение, и превращает С в процессорно-зависимую писанину...

А вот для C6xxx - ситуация наоборот - там RISC, и С оптимизирует циклы так, что сам даже с ящиком пива не придумаешь :) Однако опять-же не юзает спец-инструкции (их хоть мало, но пользу приносят). И почти не оптимизирует линейный код.

А для ADSP-2185 С-писание вообще полностью отравляет результат, архитектура у него совершенно не предназначена для С.

Составить ответ  |||  Конференция  |||  Архив

Ответы



Перейти к списку ответов  |||  Конференция  |||  Архив  |||  Главная страница  |||  Содержание  |||  Без кадра

E-mail: info@telesys.ru