Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Адаптивная фильтрация на FPGA
Форум разработчиков электроники ELECTRONIX.ru > Программируемая логика ПЛИС (FPGA,CPLD, PLD) > Работаем с ПЛИС, области применения, выбор
Unomano
День добрый,

Есть необходимость сделать адаптивный фильтр (30 звеньев, NLMS) при частоте выборок 1 МГц разрядностью 12 бит. Тактировать ПЛИС думаю от 100-150 МГц.

Вопрос заключается в том, хватит ли ресурса у Spartan-II для реализации данной задачи (возможно часть вычислений перенести на TMS320F2812).
Doka
тут все зависит от того на какой частоте запустится
умножитель: 12 х РазрКоэф
если не менее 32 мегагерц - то уже можно работать =)
(наверное стоит для этого дела заоптимизированный умножитель визардом делать)

по поводу использования сопроцессора:
встречал как-то в сети дипломную работу (как раз по адаптивным фильтрам): там как раз блок расчета новых коэффициентов был вынесен в процессор (микроблейз/ПоверРС) - можно сделать аналогично - а в ПЛИС тогда просто КИХ-фильтр с подгружаемыми коэффициентами (хотя тут наверное еще зависит от того как часто требуется обновлять коэффициенты)
Unomano
Что значит "12 х РазрКоэф"?
Насколько я понимаю, чем реже обновлять коэфициенты, тем больше время схождения. Мне нужно чтобы время схождения было около 1-2 мс.
Doka
имелась в виду разрядность умножителя: уж очень сильно его производительность (и занимаемая площадь) зависят от разрядности операндов. а сколько у вас бит на коэффициенты -мне неведомо.
Unomano
я думаю тоже 12 бит как и данные
EvgenyNik
Очень сильно зависит от реализации конкретного фильтра. Делал КИХ фильтр 20-го порядка для 10-битного сигнала с частотой выборки 13МГц на ACEX, Cyclone - работало. Оговорюсь, было реализовано с задержкой на несколько тактов - конвеер.
Главное - грамотно распределить задержки и определённым образом сгруппировать время-ёмкие операции.
Unomano
А сколько CLB у вас уходило на организацию одного звена КИХ фильтра?
EvgenyNik
Про отдельное звено не скажу - не анализировал, а вся прошивка на 20 звеньев заняла 1498 LCS в EP1K100QC208-3 (ACEX), что составляет 30% и укладывается во временные требования для дизайна - 14МГц. Для Cyclone данные не сохранились, т.к. это была просто проба в этом же проекте.
В каждом звене приходилось делать умножение на коэффициент. Напрямую через lpm_mult это сделать не удавалось, т.к. нехватало быстродействия. Пришлось реализовывать умножение в виде сумм смещений исходного множимого.
Koluntaev
Посмотрите на http://www.chip-news.ru/archive/chipnews/200104/1.html Дельная статейка по адаптивной фильтрации, может поможет.
Unomano
ИМС GC2011 конечно хорошая но цена-а-а... ($150)
Doka
Цитата(Unomano @ Apr 4 2007, 12:57) *
ИМС GC2011 конечно хорошая но цена-а-а... ($150)

грейчипы в плис перекладывали еще во времена VirtexE
а уж сейчас-то.. в наш век Virtex5-SXT & Spartan3A-DSP можно и DDC, и адаптивную фильтрацию и еще кучу всего в один кристалл утоптать
Unomano
Spartan3A-DSP еще появиться в продаже должныsmile.gif
Virtex-E... Хотелось бы уложиться в $100
Doka
Цитата(Unomano @ Apr 4 2007, 17:50) *
Spartan3A-DSP еще появиться в продаже должныsmile.gif
если должны, то появятся)
и судя по количеству представителей семейства и корпусировке - оптимизация по конечной цене там довольно жестко была проведена

Цитата
Virtex-E... Хотелось бы уложиться в $100
ну вам проще - у вас данные на 1МГц поступают (так что уложитесь)
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.