[an error occurred while processing this directive]
Ответ:
(«Телесистемы»: Конференция «Цифровые сигнальные процессоры (DSP) и их применение»)

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

Отправлено ВН 29 октября 2002 г. 11:39
В ответ на: To all. Присоветуйте пожалуйста, по сжатию ЛЧМ импульса отправлено vash 29 октября 2002 г. 08:12

Не смотрел бенчмарки ни на 21160, ни на Blackfin,
но, мне кажется, Вы поторопились, отвергая БПФ.
Даже для 218x 256 т. БПФ за ~200 мкс.
Не думаю, что для 21160 или Blackfin хуже. Видимо намного лучше.
У меня в голове откуда-то есть число: ~100 мкс на 1024 т. БПФ для 21160.
Ниже один из методов вычисления свертки-корреляции через БПФ. На Ваших цифрах, в предположении, что 1 мкс - период дискретизации.
Т.е. длительность опоры =150 точек. Дополняете ее 0 до, например, 256.
Берете Фурье, сохраняете.
Организуете циклический буфер для сигнала. Его длина не меньше 256, но лучше кратна величине 256-150=106. И видимо будет нужен некий рабочий, нециклический, буфер длиной 256.
Далее. Собираете 256 точек сигнала в буфер.
Переписываете их в рабочий буфер. Берете Фурье длиной 256.
Умножаете спектр сигнала на комплексно-сопряженный спектр опоры. Над результатом обратное Фурье, длиной 256. Получаете 256 точек корреляции. Из них истинны первые 256-150 точек. Точнее 256-149, но черт с ней, с одной точкой, возьмем 256-150=106 точек. Сохраняете/анализируете эти 106 точек. Запись сигнала в цикл. буфер при всех этих операциях должна продолжаться, например по прерываниям. Далее. Берете из цикл. буфера еще 256 отсчетов сигнала, начиная со 106, дождавшись, конечно, когда они там все появятся.
Делаете вышеописанное. Получаете следующие 106 точек корреляции. Затем сдвигаетесь по цикл. буферу еще на 106 точек и т.д.
Таким образом время, затрачиваемое на 2 256 т. БПФ + время умножения спектров должно быть меньше времени сбора 106 точек сигнала. Т.е. меньше 106 мкс. Мне кажется это вполне достижимое время и для 21160 и для Blackfin. К тому же совершенно не обязательно ограничиваться размером 256. Можно взять 512, например. Тогда будет 2 512 т. БПФ +все остальное за 362 мкс. И 362 точки корреляции за каждый цикл. Или размер 1024. Соответсвенно 874 точки корреляции, а время на Фурье и т.д. меньше 874 мкс. В последнем случае и если цифра 100 мкс на 1024 т. БПФ для 21160 верна, время затрачиваемое 21160 на вычисление 874 точек корреляции будет немного больше 200 мкс. Пусть 300. Все равно намного меньше 874 мкс. Примерно 0.3 мкс на точку.

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

Ответы


Отправка ответа

Имя (обязательно): 
Пароль: 
E-mail: 

Тема (обязательно):
Сообщение:

Ссылка на URL: 
Название ссылки: 

URL изображения: 


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

E-mail: info@telesys.ru