Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: АМ демодулятор
Форум разработчиков электроники ELECTRONIX.ru > Программируемая логика ПЛИС (FPGA,CPLD, PLD) > Работаем с ПЛИС, области применения, выбор
Zamir
Здравствуйте!
Имеется ПЛИС циклон3, АЦП, ЦАП. На АЦП подаем АМ сигнал. Оцифрованные данные поступают в ПЛИС. Внутри ПЛИС требуется демодулировать этот сигнал и передать на ЦАП.
Вопрос в том, как конкретно реализовать демодуляцию внутри плис? Какие элементы использовать для этого?
Methane
Цитата(Zamir @ Mar 20 2013, 14:21) *
Здравствуйте!
Имеется ПЛИС циклон3, АЦП, ЦАП. На АЦП подаем АМ сигнал. Оцифрованные данные поступают в ПЛИС. Внутри ПЛИС требуется демодулировать этот сигнал и передать на ЦАП.
Вопрос в том, как конкретно реализовать демодуляцию внутри плис? Какие элементы использовать для этого?

Взять по модулю и проинтегрировать.
polyakovav
если данные комплексные, то корень из суммы квадратов реальной и мнимой, если реальные - просто модуль.
потом фильтр (если нужен)
Zamir
Цитата(Methane @ Mar 20 2013, 15:34) *
Взять по модулю и проинтегрировать.


Да, но я бы хотел знать как конкретно это реализовать с помощью родных мегафункций квартуса. Какие мегафункции использовать?
_Anatoliy
Цитата(Zamir @ Mar 20 2013, 14:38) *
циклон3, АЦП, ЦАП

Однако.Раньше такую задачу решали с помощью диода и конденсатора...
Zamir
Цитата(_Anatoliy @ Mar 20 2013, 15:46) *
Однако.Раньше такую задачу решали с помощью диода и конденсатора...


Я же не спрашиваю как эта задача раньше решалась. По-моему вопрос вполне конкретный и понятный. Пишите пожалуйста по существу
vetal
1. При необходимости отфильтровать сигнал в нужной полосе (FIR Filter)
2. Сделать квадратурные стробы для несущей.(Т/4=2ПИ/4 - соответствует синусным и косинусным отсчетам сигнала)
3. Взять корень из суммы квадратов соседних квадратур.
4. При необходимости сделать дополнительную фильтрацию
5. Вывести полученный результат на цап

Аналогично можно сделать с помощью цифрового гетеродинирования(синус нужной частоты - перемножитель-фнч-цап).
Zamir
Цитата(vetal @ Mar 20 2013, 16:16) *
1. При необходимости отфильтровать сигнал в нужной полосе (FIR Filter)
2. Сделать квадратурные стробы для несущей.(Т/4=2ПИ/4 - соответствует синусным и косинусным отсчетам сигнала)
3. Взять корень из суммы квадратов соседних квадратур.
4. При необходимости сделать дополнительную фильтрацию
5. Вывести полученный результат на цап

Аналогично можно сделать с помощью цифрового гетеродинирования(синус нужной частоты - перемножитель-фнч-цап).


Спасибо vetal. Я не сильный специалист в использовании плис. Поэтому вопрос возникает. А как ФИР фильтр реализовать в квартусе? Если знаете, расскажите пожалуйста подробнее
Methane
Цитата(Zamir @ Mar 20 2013, 14:49) *
Я же не спрашиваю как эта задача раньше решалась. По-моему вопрос вполне конкретный и понятный. Пишите пожалуйста по существу

Как решалась, так и решается. Как в аналоге, так и в цифре. В аналоге оно называется диодный детектор АКА выпрямитель. В цифре - модуль. Если у вас IQ, то sqrt(I*I + Q*Q). Вместо конденсатора - интегратор. Интегратора это сложить сколько нужно результатов после выпрямителя и разделить на их кол-во.
Zamir
Цитата(Methane @ Mar 20 2013, 16:27) *
Как решалась, так и решается. Как в аналоге, так и в цифре. В аналоге оно называется диодный детектор АКА выпрямитель. В цифре - модуль. Если у вас IQ, то sqrt(I*I + Q*Q). Вместо конденсатора - интегратор. Интегратора это сложить сколько нужно результатов после выпрямителя и разделить на их кол-во.

Это конечно хорошо, что задача решается так же... но к сожалению я не получил ответ на свой вопрос. Кто-нибудь может объяснить как реализовать ФИР фильтр в квартусе? Куда тыкать, что нажимать...? С помощью мегафункций или есть решения по легче?
Methane
Цитата(Zamir @ Mar 20 2013, 15:25) *
А как ФИР фильтр реализовать в квартусе? Если знаете, расскажите пожалуйста подробнее

Да элементарно
tools -> Мега-визард плагин манагер -> create a new custom megafunction variation -> DSP -> FIR Compiler

biggrin.gif
Zamir
Цитата(Methane @ Mar 20 2013, 16:40) *
Да элементарно
tools -> Мега-визард плагин манагер -> create a new custom megafunction variation -> DSP -> FIR Compiler

biggrin.gif

При таком методе проектирования фильтра квартус создает таймлимитед.sof. Это значит что через некоторое время прошивка откажется работать? В чем дело?
Bad0512
Цитата(Zamir @ Mar 21 2013, 15:10) *
При таком методе проектирования фильтра квартус создает таймлимитед.sof. Это значит что через некоторое время прошивка откажется работать? В чем дело?

Дело в том, что в мире всё устроено рационально : хочешь в чём-то разобраться и сделать что-то сам - потрать своё время, почитай умные книжки, не забивай на фундаментальные дисциплины типа ЦОС и т п.
Не хочешь напрягать свою голову - плати деньги, люди, которые потратили уже тучу своего времени на изучение и разработку каких-то нужных тебе вещей тоже хотят кушать.
В общем, как и везде бесплатный сыр - он только в мышеловках лежит.
Хотя видимо это уже злостный оффтопик...
Zamir
Цитата(Bad0512 @ Mar 21 2013, 11:15) *
Дело в том, что в мире всё устроено рационально : хочешь в чём-то разобраться и сделать что-то сам - потрать своё время, почитай умные книжки, не забивай на фундаментальные дисциплины типа ЦОС и т п.
Не хочешь напрягать свою голову - плати деньги, люди, которые потратили уже тучу своего времени на изучение и разработку каких-то нужных тебе вещей тоже хотят кушать.
В общем, как и везде бесплатный сыр - он только в мышеловках лежит.
Хотя видимо это уже злостный оффтопик...

Я не просил мне умные советы давать. Не знаешь ответа или не хочешь отвечать не пиши вообще. Если кто то захочет - поможет. Форумы для того и создаются. А в пустых словах я не нуждаюсь. И мне не интересно сколько ты там потратил времени на изучение чего то. Я и так трачу свое время на чтение умных книжек и параллельно с людьми общаюсь, которые уже что то почитали. И не хочу тратить время еще на то чтоб твои бесполезные советы читать. Зачем вообще писать если не можешь ответить конкретно по теме?
Methane
Цитата(Zamir @ Mar 21 2013, 10:28) *
Зачем вообще писать если не можешь ответить конкретно по теме?


Вас интересует правильная последовательность нажатя кнопок для получения необходимого результата?
XVR
Цитата(Zamir @ Mar 21 2013, 12:10) *
При таком методе проектирования фильтра квартус создает таймлимитед.sof. Это значит что через некоторое время прошивка откажется работать? В чем дело?
Дело в том, что квартус хочет лицензию на генератор FIR фильтров. Без лицензии он работает в демо режиме (пощупать и оценить). А лицензия стоит денег, о чем вам Bad0512 и сказал, а вы на него наехали не по делу rolleyes.gif

Ищите деньги или таблетку от жадности для квартуса biggrin.gif

Zamir
Цитата(Methane @ Mar 21 2013, 11:55) *
Вас интересует правильная последовательность нажатя кнопок для получения необходимого результата?

Нет. Просто хочу знать как сделать ам демодулятор используя мегафункции квартуса. Ну например использовать lpm_mult или что то в этом роде. И еще появился вопрос насчет таймлимитед прошивки. Этот файл создается когда я пытаюсь испоьзовать настраиваемый КИХ фильтр из квартуса. Это означает что прошивка только ограниченное время будет работать? Если да, то сколько времени?

Цитата(XVR @ Mar 21 2013, 12:01) *
Дело в том, что квартус хочет лицензию на генератор FIR фильтров. Без лицензии он работает в демо режиме (пощупать и оценить). А лицензия стоит денег, о чем вам Bad0512 и сказал, а вы на него наехали не по делу rolleyes.gif

Ищите деньги или таблетку от жадности для квартуса biggrin.gif

Если Bad0512 действительно это имел в виду, то я наехал не по делу, согласен. Извиняюсь. А таблетка от жадности для генератора фильтров отдельная бывает? Не достаточно таблетки для квартуса???
XVR
Цитата(Zamir @ Mar 21 2013, 13:05) *
И еще появился вопрос насчет таймлимитед прошивки. Этот файл создается когда я пытаюсь испоьзовать настраиваемый КИХ фильтр из квартуса. Это означает что прошивка только ограниченное время будет работать? Если да, то сколько времени?
Это надо смотреть в документации. Обычно несколько часов.
Цитата
А таблетка от жадности для генератора фильтров отдельная бывает? Не достаточно таблетки для квартуса???
Скорее всего недостаточно. С квартусом дела не имел (работаю с Xilinx), в их аналоге мегавизарда (CoreGen) на каждый платный IP нужна своя лицензия. Еще вроде есть лицензии на несколько IP сразу, но в любом случае лицензии на сам ISE на IP коры не распространяются

Хотя некоторые IP вполне могут попасть и под полную лицензию для ISE/квартуса, но явно не все sm.gif
Bad0512
Цитата(Zamir @ Mar 21 2013, 15:28) *
Я не просил мне умные советы давать. Не знаешь ответа или не хочешь отвечать не пиши вообще. Если кто то захочет - поможет. Форумы для того и создаются. А в пустых словах я не нуждаюсь. И мне не интересно сколько ты там потратил времени на изучение чего то. Я и так трачу свое время на чтение умных книжек и параллельно с людьми общаюсь, которые уже что то почитали. И не хочу тратить время еще на то чтоб твои бесполезные советы читать. Зачем вообще писать если не можешь ответить конкретно по теме?

Конкретно по теме : кора платная, альтерра хочет за неё денег. Либо платите, либо ищите таблетку от жадности (лекарство). Можно ещё и самому написать всё, но это опять же потребует времени.
Где-то на этом форуме des00 выкладывал исходники простенького FIRа - для старта вполне подойдёт. Да, и ещё забыл сказать - не все проблемы можно решить с помощью мегавизарда, иначе
наша профессия давно бы уже исчезла.

З Ы И постарайтесь пожалуйста использовать поменьше экспрессии в ваших постах, а то всякое желание помогать отбиваете напрочь.
Lmx2315
QUOTE (Bad0512 @ Mar 21 2013, 15:05) *
З Ы И постарайтесь пожалуйста использовать поменьше экспрессии в ваших постах, а то всякое желание помогать отбиваете напрочь.

..так никто и не помог! .. просили же - выложить последовательность действий, как собрать АМ демодулятор на ПЛИС в квартусе.
Все отделались бесполезными советами про то что надо думать или платить.

з.ы.
не знаю как там - в квартусе, не бывал . Но в ISE-се пока я не открыл для себя волшебный мир Active-HDl я тратил своё время в пустую.
В матлабе есть визард который генерит фильтры на Verilog или VHDL, может быть КПД их так себе - зато работают.
Конечно, инструкцию по пользованию придётся поискать на форуме.
Bad0512
Цитата(Lmx2315 @ Mar 21 2013, 19:26) *
..так никто и не помог! .. просили же - выложить последовательность действий, как собрать АМ демодулятор на ПЛИС в квартусе.
Все отделались бесполезными советами про то что надо думать или платить.

з.ы.
не знаю как там - в квартусе, не бывал . Но в ISE-се пока я не открыл для себя волшебный мир Active-HDl я тратил своё время в пустую.
В матлабе есть визард который генерит фильтры на Verilog или VHDL, может быть КПД их так себе - зато работают.
Конечно, инструкцию по пользованию придётся поискать на форуме.

Перечитайте два первых ответа на оригинальный пост.Там описан весь алгоритм. Просто не всем это очевидно. Автор видимо желает узнать последовательность нажатия кнопок для получения АМ демодулятора, но для этой цели на форуме совсем другая ветка есть. Называется "предлагаю работу".
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.