Вычисление коэффициентов ADAU1701 в uP для длинных двойных и плавающих (64 бит против 32 бит) - PullRequest
0 голосов
/ 26 октября 2019

Первый вопрос:

Учитывая, что фактические коэффициенты в ADAU1701 действительно только 28 бит (первый полубайт первого байта всегда равен нулю), насколько важно, чтобы я вычислял коэффициенты с использованием 64 битматематика?

Я использую uP для вычисления коэффициентов, используя C (не C ++) для размещения в DSP ADAU1701.

Диапазон частот составляет от 18 до 100 Гц на каждой из 15 полос.

Я пытался выполнить 64-битные вычисления двойной точности (long double) в моей процедуре CalcCoeff, а затем преобразовать в 32-разрядное число с плавающей точкой только на последнем шаге.

Естьфункция «To523», которая дополнительно преобразует число с плавающей точкой в ​​28-битный целочисленный массив с нулевым заполнением для отправки в DSP.

Мне дали понять, что точность коэффициентов важнее на низких частотах, иЯ также понимаю, что промежуточные результаты предыдущих расчетов также важны.

Есть ли что-то, что можно получить (практическикороль) с использованием 64-битной математики.

Спасибо, Марк.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...