Ок, колесо так колесо)))
Ы, вылезла проблемка( т.к. мега-быстрые вычисления ФФТ я залепил в float-32, то оказалось что оно не совсем 32, а скорее 24+8, т.е. нумерическая точность 24 бита + плавающая точка 8. Т.е. ДД аналайзера для максимальных значений получается 150дБ вне зависимости от окна и длинны ФФТ. Конечно всякие RMS эту циферку сдвигают до -180 - -200дб но это не спортивно(
все остальные вычисления делаются в дабл-флоат 64б, поэтому на остальные моменты можно не обращать внимания - только сам ффт (и возможно, его оконная функция).
придется делать переключалку точности ффт? у меня оно абсолютно модулярно, ничего не стоит переключить)
вот с перформансом немного печальней - раз в 5-8 дороже.
Хотя... источник реального сигнала всеравно редко когда выдаст больше 24 - даже если в 32флоат режиме. Единственный случай - 32 цельночисленных, но это как-бы фантастика))
на картинке - флоат лупбек (32Ф 24б мантисса) против дабл флоат лупбек (64Д 53б мантисса)
Ы, вылезла проблемка( т.к. мега-быстрые вычисления ФФТ я залепил в float-32, то оказалось что оно не совсем 32, а скорее 24+8, т.е. нумерическая точность 24 бита + плавающая точка 8. Т.е. ДД аналайзера для максимальных значений получается 150дБ вне зависимости от окна и длинны ФФТ. Конечно всякие RMS эту циферку сдвигают до -180 - -200дб но это не спортивно(
все остальные вычисления делаются в дабл-флоат 64б, поэтому на остальные моменты можно не обращать внимания - только сам ффт (и возможно, его оконная функция).
придется делать переключалку точности ффт? у меня оно абсолютно модулярно, ничего не стоит переключить)
вот с перформансом немного печальней - раз в 5-8 дороже.
Хотя... источник реального сигнала всеравно редко когда выдаст больше 24 - даже если в 32флоат режиме. Единственный случай - 32 цельночисленных, но это как-бы фантастика))
на картинке - флоат лупбек (32Ф 24б мантисса) против дабл флоат лупбек (64Д 53б мантисса)
Аминь.