реклама на сайте
подробности

 
 
> FFT на асм для ARM7TDMI (AT91SAM7xx)
hd44780
сообщение Nov 15 2012, 08:05
Сообщение #1


Профессионал
*****

Группа: Свой
Сообщений: 1 202
Регистрация: 26-08-05
Из: Донецк, ДНР
Пользователь №: 7 980



На Си нашёл, вставил в программу - тормозит оно. Конечно, гораздо лучше, чем на AVR, но всё равно не айс.
Надо сделать аудио-анализатор. Сделать-сделал, осциллограммы рисует великолепно, рендер быстрый для дисплея написал, а с FFT проблемы.
А если ещё и стерео запустить - вообще ступор почти будет...

Нет ли у кого реализации на асме, типа как Чен для AVR-ов?
Сам я ейный ассемблер практически не знаю sad.gif .
Спасибо.


--------------------
Чтобы возить такого пассажира, необходим лимузин другого класса.
(с) Мария Эдуарда
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
hd44780
сообщение Nov 30 2012, 17:07
Сообщение #2


Профессионал
*****

Группа: Свой
Сообщений: 1 202
Регистрация: 26-08-05
Из: Донецк, ДНР
Пользователь №: 7 980



Посмотрел на своё изделие под музыку. Реакция хорошая и очень адекватная sm.gif.
Осталось только с этими всплесками разобраться.
Кстати заметил, что они идут только начале каждом половинки спектра. Сейчас ещё оконную фунцию сделаю, гляну.
Сдаётся мне, что её надо раздельно накладывать на каждую половинку исходного спектра.


--------------------
Чтобы возить такого пассажира, необходим лимузин другого класса.
(с) Мария Эдуарда
Go to the top of the page
 
+Quote Post
DRUID3
сообщение Nov 30 2012, 21:07
Сообщение #3


山伏
*****

Группа: Свой
Сообщений: 1 827
Регистрация: 3-08-06
Из: Kyyiv
Пользователь №: 19 294



Цитата(hd44780 @ Nov 30 2012, 19:07) *
Посмотрел на своё изделие под музыку. Реакция хорошая и очень адекватная

Ну пока это "показометр"...

Цитата(hd44780 @ Nov 30 2012, 19:07) *
Осталось только с этими всплесками разобраться.

Это не всплески, это спектр такой. Если у Вас АЦП 10 бит то будут палки ~1000 + где-то неверное масштабирование. Что-бы не было длинных палок его нужно еще и логарифмировать.

Цитата(hd44780 @ Nov 30 2012, 19:07) *
Сдаётся мне, что её надо раздельно накладывать на каждую половинку исходного спектра.

Оконная функция "развязывает" частотные бины между собой. Вам она не нужна! При такой длине выборки и с int в качестве данных + логарифмирование - нет смысла.

P.S.: 18-19 мс на 512 выборке - пока это очень много что-то.


--------------------
Нас помнят пока мы мешаем другим...
//--------------------------------------------------------
Хороший блатной - мертвый...
//--------------------------------------------------------
Нет старик, это те дроиды которых я ищу...
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- hd44780   FFT на асм для ARM7TDMI (AT91SAM7xx)   Nov 15 2012, 08:05
- - _Pasha   Цитата(hd44780 @ Nov 15 2012, 11:05) На С...   Nov 15 2012, 08:20
- - hd44780   Нет, не на плавучке Выдрал у Геннадия - http://...   Nov 15 2012, 10:52
|- - Xenia   Цитата(hd44780 @ Nov 15 2012, 14:52) Выдр...   Nov 15 2012, 10:59
|- - _Pasha   Цитата(hd44780 @ Nov 15 2012, 13:52) Нет,...   Nov 15 2012, 12:07
- - hd44780   В конце есть архив исходниками разными - TC1-Oct-3...   Nov 15 2012, 11:12
- - hd44780   Спасибо, почитаю. Размер окна сейчас - 256 байт. Х...   Nov 15 2012, 12:13
- - Genadi Zawidowski   Я затащил к себе в проект (на будущее использовани...   Nov 15 2012, 12:26
- - _Pasha   А заинлайнить BitShift() и Butterfly() слабо?   Nov 15 2012, 12:28
|- - ReAl   Цитата(_Pasha @ Nov 15 2012, 14:28) А заи...   Nov 15 2012, 19:55
- - hd44780   Genadi Zawidowski, я так и подумал, т.к. оно у Вас...   Nov 15 2012, 12:39
- - hd44780   Разъём припаял, inline вставил. Закрутился чуть бы...   Nov 15 2012, 18:11
|- - _Pasha   Цитата(hd44780 @ Nov 15 2012, 21:11) Наве...   Nov 15 2012, 18:41
- - ViKo   A. N. Sloss ... ARM System Developer's Guide -...   Nov 15 2012, 18:23
- - hd44780   Viko, нашёл, скачал... _Pasha, видимо придётся......   Nov 15 2012, 19:13
|- - Genadi Zawidowski   Цитата(hd44780 @ Nov 15 2012, 23:13) прог...   Nov 15 2012, 19:44
- - _Pasha   Вроде ж давно есть fixed... Да, пока не забыл - б...   Nov 15 2012, 20:41
- - hd44780   По-моему, BitShift это мелочи , я сейчас пытаюсь ...   Nov 16 2012, 16:56
|- - _Pasha   Цитата(hd44780 @ Nov 16 2012, 20:56) Butt...   Nov 16 2012, 17:30
- - hd44780   inline сделал, слегка видоизменил структуру вызово...   Nov 18 2012, 09:09
|- - _Pasha   Цитата(hd44780 @ Nov 18 2012, 12:09) _Pas...   Nov 18 2012, 10:57
|- - hd44780   Цитата(_Pasha @ Nov 18 2012, 12:57) Вы пр...   Nov 18 2012, 11:26
|- - DRUID3   Цитата(hd44780 @ Nov 21 2012, 13:41) Поня...   Nov 21 2012, 12:23
|- - hd44780   Цитата(DRUID3 @ Nov 21 2012, 14:23) А как...   Nov 21 2012, 12:48
- - hd44780   _Pasha, спасибо. Со скоростью вроде управился, ра...   Nov 18 2012, 16:14
- - Genadi Zawidowski   Там очень проблемно с переполнением - я у себя пер...   Nov 18 2012, 20:23
- - hd44780   Спасибо. Вечерком проверю вариант с заменой int на...   Nov 19 2012, 08:03
- - hd44780   Проверил. Особых тормозов от long int не заметил. ...   Nov 19 2012, 17:18
|- - adnega   Цитата(hd44780 @ Nov 19 2012, 20:18) Поло...   Nov 19 2012, 17:43
|- - hd44780   Цитата(adnega @ Nov 19 2012, 19:43) Может...   Nov 20 2012, 07:49
|- - DRUID3   Цитата(hd44780 @ Nov 20 2012, 09:49) DRUI...   Nov 21 2012, 04:56
- - esaulenka   А какой должна быть разница от замены int на long ...   Nov 19 2012, 17:25
- - hd44780   Медленнее. То же самое как на 8-битном проце склад...   Nov 19 2012, 17:39
|- - esaulenka   Цитата(hd44780 @ Nov 19 2012, 21:39) Медл...   Nov 20 2012, 09:19
- - DRUID3   Цитата(hd44780 @ Nov 15 2012, 10:05) На С...   Nov 19 2012, 18:15
- - hd44780   Компилятор - IAR int - 32 (вроде бы). Для 64 напис...   Nov 20 2012, 11:16
|- - _Артём_   Цитата(hd44780 @ Nov 20 2012, 13:16) Вооб...   Nov 20 2012, 11:48
|- - hd44780   Цитата(_Артём_ @ Nov 20 2012, 13:48) Смот...   Nov 20 2012, 11:54
|- - esaulenka   Цитата(hd44780 @ Nov 20 2012, 15:54) Расс...   Nov 20 2012, 14:30
- - hd44780   long long поставил. Объём кода подскочил где-то с ...   Nov 20 2012, 16:50
- - hd44780   DRUID3, спасибо, буду смотреть. Попытаюсь к иару п...   Nov 21 2012, 07:26
|- - DRUID3   Цитата(hd44780 @ Nov 21 2012, 09:26) DRUI...   Nov 21 2012, 08:54
- - hd44780   Точек сейчас - 512. Про логарифм магнетуды, извини...   Nov 21 2012, 10:21
|- - DRUID3   Цитата(hd44780 @ Nov 21 2012, 12:21) Про ...   Nov 21 2012, 11:07
|- - hd44780   Цитата(DRUID3 @ Nov 21 2012, 13:07) такой...   Nov 21 2012, 11:41
- - hd44780   DRUID3, а чем отличаются fn_aT_ditNbrRadix2FFT_int...   Nov 21 2012, 15:01
|- - DRUID3   Цитата(hd44780 @ Nov 21 2012, 17:01) DRUI...   Nov 21 2012, 15:52
|- - hd44780   Цитата(DRUID3 @ Nov 21 2012, 17:52) ну у ...   Nov 21 2012, 17:59
- - hd44780   Вот сейчас посмотрел Чана - http://elm-chan.org/wo...   Nov 21 2012, 19:13
- - DRUID3   У Чана логарифмов нету. У него чистое FFT. Корень ...   Nov 22 2012, 03:32
- - hd44780   DRUID3 Я взял пока функцию, работающую с плавающе...   Nov 22 2012, 09:52
|- - DRUID3   Цитата(hd44780 @ Nov 22 2012, 11:52) DRUI...   Nov 22 2012, 10:39
|- - hd44780   Цитата(DRUID3 @ Nov 22 2012, 12:39) Невер...   Nov 22 2012, 11:39
|- - DRUID3   Цитата(hd44780 @ Nov 22 2012, 13:39) Т.е....   Nov 22 2012, 11:53
- - hd44780   Понял. Тут ещё один вопрос.... Для входного окна ...   Nov 22 2012, 12:35
- - DRUID3   Кодui_N = cuic_RN>>1; ...пусть cuic_RN = ...   Nov 22 2012, 13:29
- - hd44780   Вроде понятно. В итоге получил такое: Код float ...   Nov 22 2012, 14:45
- - hd44780   Исправил косяк Код // 3. Расчёт спектра for ...   Nov 22 2012, 19:29
- - DRUID3   Цитата(hd44780 @ Nov 22 2012, 21:29) ...Р...   Nov 23 2012, 05:19
|- - hd44780   Цитата(DRUID3 @ Nov 23 2012, 07:19) лучше...   Nov 23 2012, 06:58
|- - DRUID3   Цитата(hd44780 @ Nov 23 2012, 08:58) Я не...   Nov 23 2012, 08:27
- - hd44780   Отписаться вечером не смог .. Вчера проверил - на...   Nov 24 2012, 07:58
- - DRUID3   ...забейте... посмотрите как в том примере с int с...   Nov 24 2012, 14:22
- - hd44780   DRUID3, чёт я не понял . Написал так: Кодint iDa...   Nov 24 2012, 16:24
- - DRUID3   Цитата(hd44780 @ Nov 24 2012, 18:24) Хотя...   Nov 24 2012, 17:24
|- - hd44780   Цитата(DRUID3 @ Nov 24 2012, 19:24) У Вас...   Nov 25 2012, 11:35
|- - DRUID3   Цитата(hd44780 @ Nov 25 2012, 13:35) Заму...   Nov 25 2012, 11:59
- - hd44780   Да рано мне до дельты ... Нашёл в интернете алгори...   Nov 25 2012, 17:12
- - hd44780   Да рано мне до дельты ... Нашёл в интернете алгори...   Nov 25 2012, 17:12
- - hd44780   Дубль поста получился ..   Nov 25 2012, 17:12
- - hd44780   Это снова я . Окончательно переехал на целочисле...   Nov 30 2012, 10:56
|- - hd44780   Цитата(DRUID3 @ Nov 30 2012, 23:07) Ну по...   Dec 2 2012, 18:42
- - hd44780   Почистил мусор всякий - расчёт FFT вместе со спект...   Dec 6 2012, 07:11
- - blackfin   Цитата(hd44780 @ Dec 6 2012, 11:11) Почис...   Dec 6 2012, 07:26
|- - hd44780   Цитата(blackfin @ Dec 6 2012, 09:26) Всё ...   Dec 6 2012, 08:32
- - DRUID3   Цитата(hd44780 @ Dec 6 2012, 09:11) Почис...   Dec 10 2012, 11:19


Reply to this topicStart new topic
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 21st July 2025 - 08:04
Рейтинг@Mail.ru


Страница сгенерированна за 0.01447 секунд с 7
ELECTRONIX ©2004-2016