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

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

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

Гармоническое заполнение "ри" или "фкм" обычно обнуляют с помощью DDC. :biggrin:

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


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

Я делал СФ по схеме FIR-фильтра, тупо оцифровал распознаваемый сигнал и запихнул его в качестве коэффициентов фильтра, предварительно переставив местами. И все дела. Работало на отлично. На частоте в 213 МГц

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


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

Гармоническое заполнение "ри" или "фкм" обычно обнуляют с помощью DDC. :biggrin:

Не всегда можно это использовать. Ну... Например при локации будет появляться доплеровская добавка, удобно ли будет использовать подобное обнуление

 

 

Я делал СФ по схеме FIR-фильтра, тупо оцифровал распознаваемый сигнал и запихнул его в качестве коэффициентов фильтра, предварительно переставив местами. И все дела. Работало на отлично. На частоте в 213 МГц

На основе чего делал? Ip ядра или руками писал?

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


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

На основе чего делал? Ip ядра или руками писал?

Руками писал. Можно было использовать и готовые ядра, но мне это было не столь интересно

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


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

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

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

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

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

Тогда децимацию (процедура понижения частоты дискретизации) вам в руки...

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


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

Тогда децимацию (процедура понижения частоты дискретизации) вам в руки...

Спасибо за совет, так и сделал. Выбирал каждый 10 -ый отчёт и всё. Ну конечно пока с ядром ковыряться замучился - даташит на fir compiler через одно место написан.

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


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

Выбирал каждый 10 -ый отчёт и всё.

 

ФНЧ не забудьте поставить, а то спектральные копии они такие.

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


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

ФНЧ не забудьте поставить, а то спектральные копии они такие.

Так ТС же написал, что ядро КИХ фильтра хилых использовал для этого дела

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


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

Так ТС же написал, что ядро КИХ фильтра хилых использовал для этого дела

Судя по тому что ТС понравилась вот эта фраза

Я делал СФ по схеме FIR-фильтра, тупо оцифровал распознаваемый сигнал и запихнул его в качестве коэффициентов фильтра, предварительно переставив местами. И все дела. Работало на отлично. На частоте в 213 МГц

Ковыряния с КИХ филтром как раз связанны с потроением самого коррелятора.

 

А децемация проведена по схеме

Выбирал каждый 10 -ый отчёт и всё.

Возможно принято решение, что спектральное размножение действовать не будет, ТС тут виднее.

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


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

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

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

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

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

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

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

 

Если речь идет о первичной обработке радиолокационного сигнала например, то можно делать примерно так:

1. Понижаете по частоте и децимируете входной сигнал. Например, несущая частота входного сигнала 30 МГц (для вашей частоты тактирования - 125 МГц). Опорный сигнал для понижающего преобразования выбираете исходя из ширины спектра входного сигнала. Например, у вас ЛЧМ с девиацией 10 МГц. В этом случае понижаете входной сигнал на 30 МГц. Получается ЛЧМ с переходом через 0 от - 5 до +5 Мгц. Децимируете в 10 раз (т.е. новая частота дискретизации 12.5 МГц).

2. Собираете КИХ фильтр с ИХ зеркальной ЛЧМ на видеочастоте. Собрать можно самому, но без навыков будет сложновато, проще использовать ядра.

3. Наблюдаете отклик на выходе КИХ фильтра, при этом необходима синхронизация по фронту зондирующего сигнала. Относительно него отсчитываете время, когда сигнал на выходе КИХ максимален и пересчитываете в дальность/время.

 

Для верификации используйте modelsim se: в нем есть возможность посмотреть форму сигналов.

По организации проекта: моделируете весь тракт в matlab или python. записываете входной сигнал в отдельный файл, который потом будете вычитывать в тестбенче при верификации своего проекта.

 

А децемация проведена по схеме

Возможно принято решение, что спектральное размножение действовать не будет, ТС тут виднее.

 

Как вариант, чтобы весь мусор убрать при децимации, можно CIC фильтром децимировать. Его опять же можно на ядрах собрать.

 

 

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


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

Судя по тому что ТС понравилась вот эта фраза

 

Ковыряния с КИХ филтром как раз связанны с потроением самого коррелятора.

 

А децемация проведена по схеме

 

Возможно принято решение, что спектральное размножение действовать не будет, ТС тут виднее.

Корка хилых позволяет сделать КИХ фильтр сразу же дециматором/интерполятором...

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


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

Корка хилых позволяет сделать КИХ фильтр сразу же дециматором/интерполятором...

При согласованной фильтрации в принципе бессмысленно интерполяцией пользоваться

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


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

Руками писал. Можно было использовать и готовые ядра, но мне это было не столь интересно

Что значит "не столь интересно"? КИХ-фильтр, например, пишется за 10 мин. Но, типичный проигрыш по быстродействию рукописного, например, КИХ-фильтра его же IP'шному аналогу типично составляет в районе 1,5 раз, как вы не играйтесь с локерами и таймквестами. Даже если разложить фильтр руками по DSP-блокам, т.е., по-сути, сделать за компилёр 80% его работы, и то, разница всё равно будет процентов 15-20. Проверяли сотни раз. Но раз это вас устроило, значит у вас камень был выбран с чрезмерным запасом. Ну можно конечно для перевозки тумбочки вызывать трейлер, но наш опыт показал, что, когда нужно из камня выжать всё, никакие рукописные аналоги кор не прокатывают.

 

Позволю себе чутка откомментировать сообщение коллеги:

Если речь идет о первичной обработке радиолокационного сигнала например, то можно делать примерно так:

1. ... Например, у вас ЛЧМ.

Ну, наверное, НЧМ всё-таки, использование ЛЧМ'а с его невменяемым уровнем боковиков, как-то уже не модно. Даже в кач-ве "например" :)

Для верификации используйте modelsim se: в нем есть возможность посмотреть форму сигналов.

По организации проекта: моделируете весь тракт в matlab или python. записываете входной сигнал в отдельный файл, который потом будете вычитывать в тестбенче при верификации своего проекта.

Modelsim в принципе и не нужен. Коры генерят вполне адекватные матлаб-модели, с помощью которых всё отлично моделируется прямо в Матлабе. Да и если уж про то пошло, тогда уже самое правильное - использовать DSPbuilder. Что называется, не отходя от кассы :)

Как вариант, чтобы весь мусор убрать при децимации, можно CIC фильтром децимировать. Его опять же можно на ядрах собрать.

Э-э, тут не всё так просто, как я уже в другой ветке писал. Тут начнутся проблемы с диким ростом выходной разрядности и последующим выравнивающим (компенсирующим) фильтром, порядок которого может оказаться совсем не детским. Причём, этот же фильтр собственно и должен будет осуществлять сжатие квадратур и тут вообще может начаться дикий замес из разрядностей, АЧХ цика и требуемой АЧХ. Кроме того, лицензия на кору цика очень дорогая, ну а при использовании "русских лицензий" (как острят мои иностранные коллеги :)), можно легко нарваться на "сюрпризы".

 

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


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

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

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

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

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

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

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

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

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

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