Перейти к содержанию
    

Согласованная фильтрация на плис

Здравствуйте уважаемые форумчане. Недавно начал осваивать плис Xilinx. Появились некоторые вопросы, на которые не смог найти исчерпывающих ответов в сети, а самостоятельный анализ долгое время не даёт необходимой информации.

1) Как организовать согласованную фильтрацию с использованием ядра ких-фильтра?

2)Как организовать согласованную фильтрацию средствами vhdl?

3)Как организовать корреляционную обработку сигнала с использованием ядер?

Особенности сигнала: длительность - 7 мкс, период - 14 мкс, частота дискретизации - равна максимальной частоте тактирования 125 МГц(8 нс).

Использую ise design, isim, modelsim se

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Изучаешь Verilog и/или VHDL и описываешь все необходимые фильтры и корреляторы.

Ядра вряд ли получится использовать поскольку согласованная фильтрация - слишком специфичная вещь.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Изучаешь Verilog и/или VHDL и описываешь все необходимые фильтры и корреляторы.

Ядра вряд ли получится использовать поскольку согласованная фильтрация - слишком специфичная вещь.

Всё конечно хорошо, только есть одно достаточно большое НО - а именно это колличество ресурсов. И при этом отклик СФ должен происходить в реальном времени и время прихода сигнала неизвестно. Есть идейка конечно генерировать зеркальный сигнал и использовать его отчёты в качестве отчётов ИХ, но и тут та же проблема - неизвестно время прихода сигнала.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Приветствую!

 

Вам для начала нужно разобраться с алгоритмом - что и как бы будете коррелировать и фильтровать.

Какие требования по макс диапазона дальности и точности определения положения сигнала в нем.

Входные и выходные объемы и потоки данных, требуемые дин диапазон, точности коэффициентов, ...

Промоделировать все это.

Потом оценив требуемые ресурсы :wacko: для реализации алгоритма и наличествующие в реальности :(

Выбрать структуру реализации коррелятора (FIR, FFT-IFFT, ...) -

Ну и напоследок начать ... написание модуля верификации ну и потом непосредственно дизайна модулей.

 

Удачи! Rob.

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Здравствуйте уважаемые форумчане. Недавно начал осваивать плис Xilinx.

Если хотите, могу с этим помочь... Напишите мне на почту...

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Можно предположить, что у ТС с мат. аппаратом все в порядке и он понимает, что хочет фильтроват, а что коррелировать.

Проблема именно в реализации, на новой для человека аппартной платформе - ПЛИС. Тогда можно посоветовать посмотреть

в сторону simulink. Кубиками состряпать DSP тракт, промоделировать алгоритм, далее сгенерировать RTL код, который даже можно попробывать

синтезнуть для прикидки утилизации ресурсов. Параллельно при этом читать книги по плисоводству.

 

А так конечно пичаль, если человек ни когда не работал с ПЛИС и тут бац боевая задача запилить DSP тракт, так еще и не понятно откуда берутся данные

и куда деваются после обработки. В идеале мат моделированием занимается один человек, а реализацией другие, в идеале отдельно RTL проектировщики

и отдельно RTL верификаторы.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Вам для начала нужно разобраться с алгоритмом - что и как бы будете коррелировать и фильтровать.

Какие требования по макс диапазона дальности и точности определения положения сигнала в нем.

Вот в этом то и прошу помощи, ну дальность определяется скважностью сигнала, а точность от выбранного алгоритма обработки.

Вот и возникает вопрос.

какие способы реализации есть? И их особенности.

Допустим имея сигнал длительностью 7 мкс и периодом 14 мкс при дискретизации 125МГц получается 875 отчётов и соответственно кол-во перемножителей огромное - в итоге расход ресурсов. Это если подходить к делу во временной реализации. А если частота дискретизации будет выше тогда что?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Приветствую!

 

...

Допустим имея сигнал длительностью 7 мкс и периодом 14 мкс при дискретизации 125МГц получается 875 отчётов и соответственно кол-во перемножителей огромное - в итоге расход ресурсов. Это если подходить к делу во временной реализации. А если частота дискретизации будет выше тогда что?

А зачем Вам во временной? Я же Вам намекнул FFT - IFFT свертка в частотной области. Размер FFT/IFTT на 1K что желудок у котенка :)

 

Удачи! Rob.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Можно предположить, что у ТС с мат. аппаратом все в порядке и он понимает, что хочет фильтроват, а что коррелировать.

Проблема именно в реализации, на новой для человека аппартной платформе - ПЛИС. Тогда можно посоветовать посмотреть

в сторону

Осваивать начал с vhdl, мат аппарат нормальный, в матлабе навыки есть, но вот simulink сложновато.

Задача стоит не в создании системы обработки, а научиться делать согласованную фильтрацию на плис.

Обычные фильтры например делал на fir compiler, с помощью coe файлов, которые предварительно создавал в матлабе.

Но вот с СФ возникают проблемы, связанные с кол-вом коэффициентов.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Начинать с verilog проще.

А обязательно нужны FIR-фильтры? Ведь согласованный фильтр это может быть и коррелятор.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Приветствую!

 

 

А зачем Вам во временной? Я же Вам намекнул FFT - IFFT свертка в частотной области. Размер FFT/IFTT на 1K что желудок у котенка :)

 

Удачи! Rob.

А временная задержка при обработке на низкой частоте тактирования(в моем случае 125 МГц) единицы микросекунд и это я ресурсы ещё не смотрел.

Хотя сегодня-завтра попробую что нибудь на fft ради интереса сделать.

 

Начинать с verilog проще.

А обязательно нужны FIR-фильтры? Ведь согласованный фильтр это может быть и коррелятор.

Нет необязательно. Можете предложить что-нибудь?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

мат аппарат нормальный.

Но вот с СФ возникают проблемы, связанные с кол-вом коэффициентов.

Уж простите, но не вяжется.

 

Тем не менее, если с мат аппаратом все ок, то понятие операции свертки вам должно быть знакомо.

КИХ фильтр, собственнно, делает ни что иное как сворачивает (во временной области) обрабатываемый цифровой сигнал со своей

импульсной характеристикой. И вам теперь надо "всего лишь" разобратсья как реализовать операцию свертки на FPGA.

Можно подойти и с другого боку, путем перемножения спектров, тогда вместо свертки простое по коэффициентное перемножение,

если конечно опустить кучу нюансов связанных с переходом от представления сигнала во времени к частотному отображению и обратно.

 

В итоге, вот вам две книги ученых мужей.

1. [Meyer_Baese_U.]_Digital_Signal_Processing_with_FPGA

2. Лайонс Р., Цифровая обработка сигналов.

 

Там популярно и про сверку и про спектры и про реализацию на FPGA.

 

Удачи!

 

P.S. Verilog

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Допустим имея сигнал длительностью 7 мкс и периодом 14 мкс при дискретизации 125МГц получается 875 отчётов и соответственно кол-во перемножителей огромное - в итоге расход ресурсов.

А что за сигнал такой, злобный? Обычно же согласованный фильтр для таких длинных отсчетов делают для М-последовательностей или кодов Голда, а там все коэффициенты +1 и -1.. Для каналов связи, ЕМНИП, согласованные фильтры на порядок короче и имеют, к тому же, симметричную КИХ..

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

А что за сигнал такой, злобный? Обычно же согласованный фильтр для таких длинных отсчетов делают для М-последовательностей или кодов Голда, а там все коэффициенты +1 и -1.. Для каналов связи, ЕМНИП, согласованные фильтры на порядок короче и имеют, к тому же, симметричную КИХ..

Почему сразу злобный. Будь это пачка ри или пачка лчм или фкм 7. Смысл не меняется - везде гармоническое заполнение, отсюда и такое колличество отчётов.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...