У меня есть вопрос о кодировании алгоритма для DSP Texas Instruments TMS320C64xx в MATLAB:
У меня есть работающая корявая реализация моего фильтра в MATLAB. Моя цель — использовать MATLAB Embedded Coder для преобразования этого алгоритма в C, который затем я могу импортировать в Code Composer Studio и загрузить в DSP.
Чтобы сделать это, я знаю, что мне нужно сделать определенные вещи с моим кодом MATLAB. Например, мне нужно заранее выделить место для матриц, чтобы он знал, какого размера их делать (если только я не хочу возиться с данными переменного размера). Все это преобразование кода MATLAB в код C'ish, чтобы кодер MATLAB мог его преобразовать, я более или менее понимаю. Однако я понятия не имею, как убедиться, что мои типы данных (например, коэффициенты моего фильтра) имеют фиксированную точку, а не с плавающей запятой, чтобы MATLAB Embedded Coder преобразовывал мой код в C, который включает только типы данных с фиксированной точкой.
Итак, я думаю, что мои общие вопросы таковы:
1) Если C64xx указан как 32-битный DSP с фиксированной точкой, это означает, что компилятор для него выдаст ошибку, если я попытаюсь использовать тип данных с плавающей запятой?
2) Есть ли способ гарантировать, что MATLAB Embedded Coder не создаст типы данных с плавающей запятой?
3) Нужно ли мне использовать MATLAB Fixed Point Toolbox?
Спасибо всем, дайте мне знать, если есть дополнительная информация, необходимая для ответа на мой вопрос.