|
Согласованная фильтрация на плис |
|
|
|
Feb 9 2018, 08:39
|
Участник

Группа: Участник
Сообщений: 33
Регистрация: 24-03-17
Пользователь №: 96 039

|
Здравствуйте уважаемые форумчане. Недавно начал осваивать плис Xilinx. Появились некоторые вопросы, на которые не смог найти исчерпывающих ответов в сети, а самостоятельный анализ долгое время не даёт необходимой информации. 1) Как организовать согласованную фильтрацию с использованием ядра ких-фильтра? 2)Как организовать согласованную фильтрацию средствами vhdl? 3)Как организовать корреляционную обработку сигнала с использованием ядер? Особенности сигнала: длительность - 7 мкс, период - 14 мкс, частота дискретизации - равна максимальной частоте тактирования 125 МГц(8 нс). Использую ise design, isim, modelsim se
|
|
|
|
|
Feb 9 2018, 10:29
|
Участник

Группа: Участник
Сообщений: 33
Регистрация: 24-03-17
Пользователь №: 96 039

|
Цитата(Vascom @ Feb 9 2018, 11:06)  Изучаешь Verilog и/или VHDL и описываешь все необходимые фильтры и корреляторы. Ядра вряд ли получится использовать поскольку согласованная фильтрация - слишком специфичная вещь. Всё конечно хорошо, только есть одно достаточно большое НО - а именно это колличество ресурсов. И при этом отклик СФ должен происходить в реальном времени и время прихода сигнала неизвестно. Есть идейка конечно генерировать зеркальный сигнал и использовать его отчёты в качестве отчётов ИХ, но и тут та же проблема - неизвестно время прихода сигнала.
|
|
|
|
|
Feb 9 2018, 10:59
|
Профессионал
    
Группа: Свой
Сообщений: 1 214
Регистрация: 23-12-04
Пользователь №: 1 643

|
Приветствую! Вам для начала нужно разобраться с алгоритмом - что и как бы будете коррелировать и фильтровать. Какие требования по макс диапазона дальности и точности определения положения сигнала в нем. Входные и выходные объемы и потоки данных, требуемые дин диапазон, точности коэффициентов, ... Промоделировать все это. Потом оценив требуемые ресурсы  для реализации алгоритма и наличествующие в реальности Выбрать структуру реализации коррелятора (FIR, FFT-IFFT, ...) - Ну и напоследок начать ... написание модуля верификации ну и потом непосредственно дизайна модулей. Удачи! Rob.
|
|
|
|
|
Feb 9 2018, 12:22
|
Местный
  
Группа: Свой
Сообщений: 377
Регистрация: 23-12-06
Из: Зеленоград
Пользователь №: 23 811

|
Можно предположить, что у ТС с мат. аппаратом все в порядке и он понимает, что хочет фильтроват, а что коррелировать. Проблема именно в реализации, на новой для человека аппартной платформе - ПЛИС. Тогда можно посоветовать посмотреть в сторону simulink. Кубиками состряпать DSP тракт, промоделировать алгоритм, далее сгенерировать RTL код, который даже можно попробывать синтезнуть для прикидки утилизации ресурсов. Параллельно при этом читать книги по плисоводству.
А так конечно пичаль, если человек ни когда не работал с ПЛИС и тут бац боевая задача запилить DSP тракт, так еще и не понятно откуда берутся данные и куда деваются после обработки. В идеале мат моделированием занимается один человек, а реализацией другие, в идеале отдельно RTL проектировщики и отдельно RTL верификаторы.
|
|
|
|
|
Feb 9 2018, 12:34
|
Участник

Группа: Участник
Сообщений: 33
Регистрация: 24-03-17
Пользователь №: 96 039

|
Цитата(RobFPGA @ Feb 9 2018, 11:59)  Вам для начала нужно разобраться с алгоритмом - что и как бы будете коррелировать и фильтровать. Какие требования по макс диапазона дальности и точности определения положения сигнала в нем. Вот в этом то и прошу помощи, ну дальность определяется скважностью сигнала, а точность от выбранного алгоритма обработки. Вот и возникает вопрос. какие способы реализации есть? И их особенности. Допустим имея сигнал длительностью 7 мкс и периодом 14 мкс при дискретизации 125МГц получается 875 отчётов и соответственно кол-во перемножителей огромное - в итоге расход ресурсов. Это если подходить к делу во временной реализации. А если частота дискретизации будет выше тогда что?
|
|
|
|
|
Feb 9 2018, 12:49
|
Участник

Группа: Участник
Сообщений: 33
Регистрация: 24-03-17
Пользователь №: 96 039

|
Цитата(Mad_max @ Feb 9 2018, 13:22)  Можно предположить, что у ТС с мат. аппаратом все в порядке и он понимает, что хочет фильтроват, а что коррелировать. Проблема именно в реализации, на новой для человека аппартной платформе - ПЛИС. Тогда можно посоветовать посмотреть в сторону Осваивать начал с vhdl, мат аппарат нормальный, в матлабе навыки есть, но вот simulink сложновато. Задача стоит не в создании системы обработки, а научиться делать согласованную фильтрацию на плис. Обычные фильтры например делал на fir compiler, с помощью coe файлов, которые предварительно создавал в матлабе. Но вот с СФ возникают проблемы, связанные с кол-вом коэффициентов.
|
|
|
|
|
Feb 9 2018, 13:12
|
Участник

Группа: Участник
Сообщений: 33
Регистрация: 24-03-17
Пользователь №: 96 039

|
Цитата(RobFPGA @ Feb 9 2018, 13:43)  Приветствую! А зачем Вам во временной? Я же Вам намекнул FFT - IFFT свертка в частотной области. Размер FFT/IFTT на 1K что желудок у котенка  Удачи! Rob. А временная задержка при обработке на низкой частоте тактирования(в моем случае 125 МГц) единицы микросекунд и это я ресурсы ещё не смотрел. Хотя сегодня-завтра попробую что нибудь на fft ради интереса сделать. Цитата(Vascom @ Feb 9 2018, 13:53)  Начинать с verilog проще. А обязательно нужны FIR-фильтры? Ведь согласованный фильтр это может быть и коррелятор. Нет необязательно. Можете предложить что-нибудь?
|
|
|
|
|
Feb 9 2018, 13:21
|
Местный
  
Группа: Свой
Сообщений: 377
Регистрация: 23-12-06
Из: Зеленоград
Пользователь №: 23 811

|
Цитата(fertna18 @ Feb 9 2018, 15:49)  мат аппарат нормальный. Но вот с СФ возникают проблемы, связанные с кол-вом коэффициентов. Уж простите, но не вяжется. Тем не менее, если с мат аппаратом все ок, то понятие операции свертки вам должно быть знакомо. КИХ фильтр, собственнно, делает ни что иное как сворачивает (во временной области) обрабатываемый цифровой сигнал со своей импульсной характеристикой. И вам теперь надо "всего лишь" разобратсья как реализовать операцию свертки на FPGA. Можно подойти и с другого боку, путем перемножения спектров, тогда вместо свертки простое по коэффициентное перемножение, если конечно опустить кучу нюансов связанных с переходом от представления сигнала во времени к частотному отображению и обратно. В итоге, вот вам две книги ученых мужей. 1. [Meyer_Baese_U.]_Digital_Signal_Processing_with_FPGA 2. Лайонс Р., Цифровая обработка сигналов. Там популярно и про сверку и про спектры и про реализацию на FPGA. Удачи! P.S. Verilog
|
|
|
|
|
Feb 9 2018, 14:22
|
Участник

Группа: Участник
Сообщений: 33
Регистрация: 24-03-17
Пользователь №: 96 039

|
Цитата(blackfin @ Feb 9 2018, 14:56)  А что за сигнал такой, злобный? Обычно же согласованный фильтр для таких длинных отсчетов делают для М-последовательностей или кодов Голда, а там все коэффициенты +1 и -1.. Для каналов связи, ЕМНИП, согласованные фильтры на порядок короче и имеют, к тому же, симметричную КИХ.. Почему сразу злобный. Будь это пачка ри или пачка лчм или фкм 7. Смысл не меняется - везде гармоническое заполнение, отсюда и такое колличество отчётов.
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|