реклама на сайте
подробности

 
 
> Цифровой фильтр на ПЛИС
Eduard_k
сообщение Apr 15 2006, 21:27
Сообщение #1


Частый гость
**

Группа: Свой
Сообщений: 196
Регистрация: 14-04-06
Пользователь №: 16 137



Уважаемые участники форума, помогите решить следующую техническую задачу.

Существует два источника сигнала, предварительно отфильтрованные ФНЧ с частотой среза 3 мГц и оцифрованные на скорости 40 мГц разрядностью 10 бит. Необходимо отфильтровать в каждом сигнале отдельно несколько полос по 100кГц, например 800-900 кГц, 1550-1650 кГц и т.д.

Для решения задачи думаю использовать ПЛИС Altera, необходимо разобраться и использовать ПЛИС без покупки Development Kit, опыта работы с ПЛИС на данных момент не имею но готов читать и разбираться. Если вы считаете целесообразным использование других ПЛИС, пожалуйста укажите каких именно.

Для реализации цифрового фильтра думаю использовать трансверсальную схему с КИХ Методы проектирования цифровых фильтров, М.В. Белодедов описанные на странице 26. Такие фильтры достаточно просты. Возможно стоит использовать фильтры другого типа, если так то какие.
Для трансверсального фильтра необходимо определить порядок (количество элементов задержки и сдвига) и определить импульсную характеристику (множители). Пожалуйста, помогите мне расчитать импульсную характеристику, я пробовал создать программу по формуле (1.4) на странице 30, но результат работы моей программы не сходится с примером на рисунке 8. Ниже привожу листинг своей программы:
Цитата
#include<iostream.h>
#include<math.h>

double H_of_F(double w);

void main()
{
double delta;
cout<<"\n Delta >> ";
cin>>delta;
int n;
cout<<"\n N >> ";
cin>>n;

//integration
double sum = 0.0;
double h = 0.01,p1 = 0.0, p2 = 0.0, pos = 0.0;
for(pos=0;pos<(3.14/delta)wink.gif
{
p1 = H_of_F(pos)*cos(pos*n*delta);
p2 = H_of_F(pos+h)*cos((pos+h)*n*delta);
sum = sum + (delta/3.14)*(h*(p1+p2)/2);

pos = pos+h;
}


cout<<"Out >> "<<sum;
}

double H_of_F(double w)
{
double F = w/2*3.14;
//Description of frequency characteristic
if(fabs(F)<=1){return 0.5+F/2;}else{return 0;}
}

... возможно где-то я допустил ошибку. Существуют ли готовые проги для расчета множителей, может быть для других фильтров (если они лучше) ? Только желательно именно проги, а не MatCAD. Как мне определить порядок фильтра? Сколько элементов в ПЛИС займет такой фильтр при n=80, например?
В плане ПЛИС думаю использовать семейство MAXII, а если не будут влазить все фильтры то CyClone.
Go to the top of the page
 
+Quote Post
3 страниц V   1 2 3 >  
Start new topic
Ответов (1 - 44)
Bar
сообщение Apr 15 2006, 21:52
Сообщение #2


Участник
*

Группа: Свой
Сообщений: 58
Регистрация: 13-03-05
Пользователь №: 3 314



А что значит тогда проги? Mathcad это разве не программа? Или нужны исходники?
А так вообще еще matlab умеет коефициенты для фильтров считать.
Go to the top of the page
 
+Quote Post
Stanislav
сообщение Apr 15 2006, 22:15
Сообщение #3


Гуру
******

Группа: Свой
Сообщений: 4 363
Регистрация: 13-05-05
Из: Москва
Пользователь №: 4 987



Есть одно практическое соображение. Перед собственно выделением полос для уменьшения последующего объёма вычислений необходимо произвести уменьшение частоты выборки (decimation). Минимальная теоретически допустимая частота выходной выборки составляет 6 МГц. На практике же лучше выбрать частоту повыше, и произвести децимацию в 4-5 раз, благо синтез и реализация фильтров для такой задачи не составит труда. Только после этого можно приступить к "нарезанию" сигнала на полосы. В противном случае, трансверсальные фильтры с нужными Вам характеристиками будут иметь порядок просто-таки героический, и вряд ли реализуемы на практике.
ЗЫ. В матлабе есть GUI, посвящённый расчёту фильтров, осваивается в течение часа.


--------------------
Самонадеянность слепа. Сомнения - спутник разума. (с)
Go to the top of the page
 
+Quote Post
Eduard_k
сообщение Apr 15 2006, 22:22
Сообщение #4


Частый гость
**

Группа: Свой
Сообщений: 196
Регистрация: 14-04-06
Пользователь №: 16 137



Я не очень владею маткадом, но если ничего другого нет то могу и сним разобраться.

Допустимая частота 6 мГц, а реальная, как я уже писал, 40 мГц. Этого достаточно? Что такое декимация?
Go to the top of the page
 
+Quote Post
Stanislav
сообщение Apr 15 2006, 22:37
Сообщение #5


Гуру
******

Группа: Свой
Сообщений: 4 363
Регистрация: 13-05-05
Из: Москва
Пользователь №: 4 987



Цитата(Eduard_k @ Apr 16 2006, 02:22) *
Я не очень владею маткадом, но если ничего другого нет то могу и сним разобраться.
Допустимая частота 6 мГц, а реальная, как я уже писал, 40 мГц. Этого достаточно? Что такое декимация?
Простите, но боюсь, что Вы пытаетесь поставить телегу впереди паровоза... Браться за практическую реализацию подобной системы можно только хотя бы имея представление о цифровых фильтрах как таковых, иначе попытка заведомо обречена на неудачу. Доступной литературы по данной тематике много - могу порекомендовать Гольденберга "Цифровая обработка сигналов", а также Рабинера и Голда. В местных закромах имеется...


--------------------
Самонадеянность слепа. Сомнения - спутник разума. (с)
Go to the top of the page
 
+Quote Post
Eduard_k
сообщение Apr 15 2006, 22:55
Сообщение #6


Частый гость
**

Группа: Свой
Сообщений: 196
Регистрация: 14-04-06
Пользователь №: 16 137



Возможно вы правы, но для меня сейчас было бы очень актуально перейти непосредственно к решению проблемы, мне нужно расчитать множители трансверсального фильтра и определить порядок. Вы наверное человек знающий и могли бы посмотреть мою программу или предложить другую, еще лучше написать свою, как freeware. Я конечно не спец. в ЦОС но с вашей помощью думаю мог бы воплотить в жизнь свой проект. За книгу заранеее спасибо, давайте ссылочку, очень понадобится.
Go to the top of the page
 
+Quote Post
jorikdima
сообщение Apr 16 2006, 06:14
Сообщение #7


тут может быть ваша реклама
*****

Группа: Свой
Сообщений: 1 164
Регистрация: 15-03-06
Из: Санкт-Петербург/CA
Пользователь №: 15 280



Во-первых вам предлагают использовать не маткад а матлаб (MATLAB). Это разные пакеты. Первый для школьниковв, второй для инженеров (ИМХО). В матлабе есть пакет fdatool. Самая лучшая рекомендация для вас это посмотреть этот пакет, там есть все что вам нужно.
Нарезать такие узкие полосы при такой частоте дискретизации очень не оптимально, так как порядки будут огромными и вы ни в одну ПЛИС не влезете. Посмотрите алгоритм Герцеля в литературе.
Go to the top of the page
 
+Quote Post
Evgeny_CD
сообщение Apr 16 2006, 07:19
Сообщение #8


Гуру
******

Группа: СуперМодераторы
Сообщений: 2 065
Регистрация: 11-01-05
Из: Москва
Пользователь №: 1 892



Цитата(Eduard_k @ Apr 16 2006, 02:55) *
Возможно вы правы, но для меня сейчас было бы очень актуально перейти непосредственно к решению проблемы, мне нужно расчитать множители трансверсального фильтра и определить порядок. Вы наверное человек знающий и могли бы посмотреть мою программу или предложить другую, еще лучше написать свою, как freeware. Я конечно не спец. в ЦОС но с вашей помощью думаю мог бы воплотить в жизнь свой проект. За книгу заранеее спасибо, давайте ссылочку, очень понадобится.
http://lord-n.narod.ru/walla.html

Л.Рабинер, Б.Гоулд.
Теория и применение цифровой обработки сигналов.

Сергиенко А.Б.
Цифровая обработка сигналов. - собственно, это не учебник по цифровой обработке, а учебник по использованию matlab в данной области. За это данную книжку часто ругают, но Вам, возможно, она сильно поможет.

И напоследок - поборите свой страх! Нет ничего страшного во всех этих matlab. Поймите, они сделаны не для того, чтобы вызывавать священный ужас, а для того, чтобы как можно больше людей использовали данный продукт (ну и как следствие - покупали его biggrin.gif )
Go to the top of the page
 
+Quote Post
Vitёk
сообщение Apr 16 2006, 09:32
Сообщение #9


Местный
***

Группа: Свой
Сообщений: 272
Регистрация: 17-01-05
Из: Ростов-на-Дону
Пользователь №: 2 018



Цитата
Необходимо отфильтровать в каждом сигнале отдельно несколько полос по 100кГц, например 800-900 кГц, 1550-1650 кГц и т.д.
В зависимости от того, что Вы собираетесь делать с этими полосами дальше, могут быть разные варианты решений. Возможно имеет смысл подумать о сносе их вниз и децимации, а при относитеьлно низкой частоте семплирования затраты на мат. обработку будут значительно ниже.


--------------------
/* Всё хорошо в меру. */
Go to the top of the page
 
+Quote Post
Eduard_k
сообщение Apr 17 2006, 20:34
Сообщение #10


Частый гость
**

Группа: Свой
Сообщений: 196
Регистрация: 14-04-06
Пользователь №: 16 137



Цитата
Нарезать такие узкие полосы при такой частоте дискретизации очень не оптимально, так как порядки будут огромными и вы ни в одну ПЛИС не влезете. Посмотрите алгоритм Герцеля в литературе.

Хорошо, какая нужна частота дискретизации для сигнала полосой 0-3 мГц? Минимальная 6 мГц, я предлагаю использовать 40 мГц, что почти в 7 раз больше, можно выжать из АЦП до 45 мГц, куда ж еще больше. Какую частоту дискретизации выбрали бы вы? Может после АЦП поставить модуль интерполяции, перед фильтром? Линейная интерполяция пойдет? Во сколько раз увеличить поток на фильтр (при какой частоте АЦП) ?
Цитата
И напоследок - поборите свой страх! Нет ничего страшного во всех этих matlab. Поймите, они сделаны не для того, чтобы вызывавать священный ужас, а для того, чтобы как можно больше людей использовали данный продукт (ну и как следствие - покупали его )

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

Оценка уровня путем интегрирования или суммы с накоплением.
Go to the top of the page
 
+Quote Post
Chudik
сообщение Apr 17 2006, 22:11
Сообщение #11


Частый гость
**

Группа: Свой
Сообщений: 197
Регистрация: 31-03-06
Пользователь №: 15 676



Цитата
Хорошо, какая нужна частота дискретизации для сигнала полосой 0-3 мГц? Минимальная 6 мГц, я предлагаю использовать 40 мГц, что почти в 7 раз больше, можно выжать из АЦП до 45 мГц, куда ж еще больше.

Ой, только не надо приносить в нормальную цифровую обработку аудиофильские замашки biggrin.gif Тебе тут вообще рекомендуют уменьшить/децимировать частоту, чтобы только-только покрывала необходимость в работе с сигналом в твоей полосе.

Цитата
Какую частоту дискретизации выбрали бы вы?

6.66 МГц biggrin.gif Что-нибудь около 7-8 МГц. В общем, какую поудобнее.

Цитата
дело не в страхе, а во времени, нужно поднять проект как можно быстрее.

Ну вот и потрать немного времени для того, чтобы понять, как в матлабе рассчитать коэффициенты фильтра. Это будет очень полезный задел на будущее и вообще профессиональный подход.

Цитата
Оценка уровня путем интегрирования или суммы с накоплением.

В-общем, расчёт энергии сигнала в полосе, насколько я понимаю smile.gif

ALL
Извините, а трансверсальный фильтр - это FIR? Если так, то децимацию, имхо, применять бесмысленно. Это же не IIR, у которого из-за этого полюса чуть ли не наложатся друг на друга. Тем более, что для нормальной децимации всё равно надо ФНЧ поставить. Даже если и IIR, то частота дискретизации, имхо не так уж и велика.
Go to the top of the page
 
+Quote Post
Eduard_k
сообщение Apr 17 2006, 23:44
Сообщение #12


Частый гость
**

Группа: Свой
Сообщений: 196
Регистрация: 14-04-06
Пользователь №: 16 137



Цитата
Ой, только не надо приносить в нормальную цифровую обработку аудиофильские замашки Тебе тут вообще рекомендуют уменьшить/децимировать частоту, чтобы только-только покрывала необходимость в работе с сигналом в твоей полосе.

Зачем уменьшать, я могу сразу оцифровать в 6 мГц.
Цитата
В-общем, расчёт энергии сигнала в полосе, насколько я понимаю

Совершенно верно.
Цитата
Извините, а трансверсальный фильтр - это FIR?

FIR (КИХ)

Цитата
Ой, только не надо приносить в нормальную цифровую обработку аудиофильские замашки Тебе тут вообще рекомендуют уменьшить/децимировать частоту, чтобы только-только покрывала необходимость в работе с сигналом в твоей полосе.

Зачем уменьшать, я могу сразу оцифровать в 6 мГц.
Цитата
В-общем, расчёт энергии сигнала в полосе, насколько я понимаю

Совершенно верно.
Цитата
Извините, а трансверсальный фильтр - это FIR?

FIR (КИХ)
Go to the top of the page
 
+Quote Post
Chudik
сообщение Apr 18 2006, 17:11
Сообщение #13


Частый гость
**

Группа: Свой
Сообщений: 197
Регистрация: 31-03-06
Пользователь №: 15 676



Цитата(Eduard_k @ Apr 17 2006, 16:44) *
Зачем уменьшать, я могу сразу оцифровать в 6 мГц.

Ну, 6 МГц это критическая частота для полосы в 3 МГц. Я бы взял процентов на 20 выше. Просто чтобы случайно не попасть на "постоянку" для максимальной частоты. Скажем, 8 МГц - вполне красивая себе цифирька smile.gif.
Go to the top of the page
 
+Quote Post
jorikdima
сообщение Apr 18 2006, 18:47
Сообщение #14


тут может быть ваша реклама
*****

Группа: Свой
Сообщений: 1 164
Регистрация: 15-03-06
Из: Санкт-Петербург/CA
Пользователь №: 15 280



Цитата(Chudik @ Apr 18 2006, 02:11) *
Ой, только не надо приносить в нормальную цифровую обработку аудиофильские замашки biggrin.gif Тебе тут вообще рекомендуют уменьшить/децимировать частоту, чтобы только-только покрывала необходимость в работе с сигналом в твоей полосе.


Конечно, я имел ввиду, что 40 МГц - слишком высокая частоота дискретизации. Правильно тебе все советуют: где нибудь 8 МГц бери. И Матлаб с его fdatool может тебе только помочь и ускорить работу.
Go to the top of the page
 
+Quote Post
Eduard_k
сообщение Apr 18 2006, 19:18
Сообщение #15


Частый гость
**

Группа: Свой
Сообщений: 196
Регистрация: 14-04-06
Пользователь №: 16 137



Нет проблем, берем 8 мГц.

Где взять fdatool? Существует ли некая книга по ПЛИС Altera в электронном виде, я видел её ранее в магазине, теперь хочу купить, а нету. Вообще, какие ПЛИС посоветуете? И литературу к ним.
Go to the top of the page
 
+Quote Post
Chudik
сообщение Apr 19 2006, 01:12
Сообщение #16


Частый гость
**

Группа: Свой
Сообщений: 197
Регистрация: 31-03-06
Пользователь №: 15 676



Цитата(Eduard_k @ Apr 18 2006, 12:18) *
Где взять fdatool?

Насколько я понимаю, это один из пакетов Матлаба.
Цитата
Существует ли некая книга по ПЛИС Altera в электронном виде, я видел её ранее в магазине, теперь хочу купить, а нету.

А зачем? Учить наизусть какие кнопочки есть в софте? wink.gif Или как рисовать схему или использовать AHDL?
Тебе скорее надо найти как рассчитать фильтры коэффициентов в матлабе и книжку во Verilog/VHDL. Там же в Матлабе можно оценить влияние ограничения разрядности коэффициентов и отсчётов.
Из языков я бы рекомендовал Verilog (он проще и понятнее), но в Европе и в России больше используют VHDL. Затем определяешь, сколько тебе умножителей надо и выбираешь на инете либо Altera, либо Xilinx.
Go to the top of the page
 
+Quote Post
Vitёk
сообщение Apr 19 2006, 06:50
Сообщение #17


Местный
***

Группа: Свой
Сообщений: 272
Регистрация: 17-01-05
Из: Ростов-на-Дону
Пользователь №: 2 018



Цитата(Eduard_k @ Apr 18 2006, 03:44) *
Цитата
В-общем, расчёт энергии сигнала в полосе, насколько я понимаю

Совершенно верно.

Типа селективный вольтметр (многоканальный). Всё, что Вам нужно для этого (для каждой полосы):
1. перемножить входной сигнал на два синусоидальных сигнала, сдвинутых на 90 градусов (sin и cos), частотой, соотв. середине анализируемой полосы - таким образом снесёте его вниз;
2. два полученных сигнала пропустить через одинаковые ФНЧ с заданой полососой и крутизной. Для этой цели хорошо подойдут IIR (БИХ) фильтры - обьём вычислений получится примерно на порядок меньше.
3. полученные сигналы несут всю информацию об энергии в заданной полосе. Последняя находится как сумма квадратов этих сигналов. Дальше можно брать квадратный короень, фильтровать, и много ещё чего... smile.gif

Например: нужно узнать, что творится в полосе 700-800 кГц. Сигнал с генератора - 750 кГц, полоса ФНЧ - 50 кГц, его крутизна - какая устроит.
Будут вопросы по генератору синуса - спрашивайте.
Успехов!


--------------------
/* Всё хорошо в меру. */
Go to the top of the page
 
+Quote Post
jorikdima
сообщение Apr 19 2006, 13:48
Сообщение #18


тут может быть ваша реклама
*****

Группа: Свой
Сообщений: 1 164
Регистрация: 15-03-06
Из: Санкт-Петербург/CA
Пользователь №: 15 280



Цитата(Vitёk @ Apr 19 2006, 10:50) *
Цитата(Eduard_k @ Apr 18 2006, 03:44) *
Цитата
В-общем, расчёт энергии сигнала в полосе, насколько я понимаю

Совершенно верно.

Типа селективный вольтметр (многоканальный). Всё, что Вам нужно для этого (для каждой полосы):
1. перемножить входной сигнал на два синусоидальных сигнала, сдвинутых на 90 градусов (sin и cos), частотой, соотв. середине анализируемой полосы - таким образом снесёте его вниз;
2. два полученных сигнала пропустить через одинаковые ФНЧ с заданой полососой и крутизной. Для этой цели хорошо подойдут IIR (БИХ) фильтры - обьём вычислений получится примерно на порядок меньше.
3. полученные сигналы несут всю информацию об энергии в заданной полосе. Последняя находится как сумма квадратов этих сигналов. Дальше можно брать квадратный короень, фильтровать, и много ещё чего... smile.gif

Например: нужно узнать, что творится в полосе 700-800 кГц. Сигнал с генератора - 750 кГц, полоса ФНЧ - 50 кГц, его крутизна - какая устроит.
Будут вопросы по генератору синуса - спрашивайте.
Успехов!


Низкочастотные квадратурные составляющие типа? Да стоило бы посмотреть. В литературе есть.


fdatool это пакет в матлабе. Для того чтоб он был надо при установке матлаба выбратть опцию установки SignalProcessing Toolbox и FilterDesign Toolbox.

По поводу ПЛИС, думаю тебе все равно на какой ПЛИСине делать. Одинаково подойдут и XILINX и ALTERA. В альтере по крайней мере, то есть в Quartus, уже есть мегафункция на КИХ фильтр. Вот только если ты будешь делать фильтр как несколько умножителей, то есть параллельную схему, при больших порядках фильтра это будет занимать много ресурсов. Можно в таком случае рассмотреть последовательную или гибридную схему.
Книга по построению устройств на Xilinx у меня есть. Хотя я думаю она и на фтп тут тоже есть.
Учить Verilog VHDA и тп я бы не стал, лучше воспользуйся схематичным вводом.
Go to the top of the page
 
+Quote Post
Eduard_k
сообщение Apr 19 2006, 16:48
Сообщение #19


Частый гость
**

Группа: Свой
Сообщений: 196
Регистрация: 14-04-06
Пользователь №: 16 137



Цитата
Типа селективный вольтметр (многоканальный). Всё, что Вам нужно для этого (для каждой полосы):
1. перемножить входной сигнал на два синусоидальных сигнала, сдвинутых на 90 градусов (sin и cos), частотой, соотв. середине анализируемой полосы - таким образом снесёте его вниз;
2. два полученных сигнала пропустить через одинаковые ФНЧ с заданой полососой и крутизной. Для этой цели хорошо подойдут IIR (БИХ) фильтры - обьём вычислений получится примерно на порядок меньше.
3. полученные сигналы несут всю информацию об энергии в заданной полосе. Последняя находится как сумма квадратов этих сигналов. Дальше можно брать квадратный короень, фильтровать, и много ещё чего...

Например: нужно узнать, что творится в полосе 700-800 кГц. Сигнал с генератора - 750 кГц, полоса ФНЧ - 50 кГц, его крутизна - какая устроит.
Будут вопросы по генератору синуса - спрашивайте.
Успехов!

Спасибо, очень интересный и конструктивный совет.
Цитата
По поводу ПЛИС, думаю тебе все равно на какой ПЛИСине делать

Я поставлю вопрос несколько иначе. Я хочу вплотную и надолго изучить какие-нибудь ПЛИС т.е. познеее мне придется работать над более сложными пректами поэтому чтобы знания и труд не пропали только ради одного проекта, учитывая самые разнообразные моменты (цена, сложность, доступность, программирование) я хочу чтоб меня одназначно убедили, что наиболее актуально работать с такими-то ПЛИС, если можно аргументировать свою позицию. Я сам на данный момент склоняюсь к Altera но я ведь еще не работал с ПЛИС, возможно в целом лучше Xilinx или вообще Atmel.

Та книга о которой я говорил "Язык описания цифровых устройств AlteraHDL (+CD)" и еще меня интересует "ПЛИС фирмы Altera: элементная база, система проектирования и языки описания аппаратуры" если кто-ибудь знает где достать, пожалуйста подскажите, мне очень понадобятся эти книги если решусь работать с Altera.
Go to the top of the page
 
+Quote Post
DSIoffe
сообщение Apr 20 2006, 06:53
Сообщение #20


Дима
*****

Группа: Свой
Сообщений: 1 683
Регистрация: 15-12-04
Из: Санкт-Петербург
Пользователь №: 1 486



Вот только что купил книгу: Грушвицкий, Мурсаев, Угрюмов, "Проектирование систем на микросхемах с программируемой структурой". Это второе издание. Подробный обзор ПЛИС разных фирм и их компонентов (PLL и прочее), языки описания аппаратуры и прочее. Может помочь сделать выбор. Купил в Питере на Измайловском, 29, там дешевле - 330 рублей.
ИМХО, если нет специальных требований, выбирать следует между Altera и Xilinx, по двум критериям: доступность микросхем и софта и доступность гуру, который сможет лично подсказывать на этапе освоения.


--------------------
© CОПЫРИГХТ: Дмитрий Иоффе, Советский Союз.
Приглашаю посмотреть: http://muradowa.spb.ru/ и http://www.drtata.narod.ru/index.html
Go to the top of the page
 
+Quote Post
jorikdima
сообщение Apr 20 2006, 13:56
Сообщение #21


тут может быть ваша реклама
*****

Группа: Свой
Сообщений: 1 164
Регистрация: 15-03-06
Из: Санкт-Петербург/CA
Пользователь №: 15 280



Xilinx vs Altera - это извечный вопрос. Если ктото тебе скажет что какаято из этих фирм лучше - не верь! Они одинаковы. Возможно чтото и лучше другого, но в весьма узких требованиях.
Есть мнение, что из этих двух фирм надо выбирать ту у которой САПР лучше, но ИМХО для меня и Quartus и ISE одинаково хорошо.
Даже не знаю что тебе сказать, выбирай что душе ближе, так как задача у тебя весьма не сложная. А из языков думаю лучше в твоем случае будет Verilog. Сам то язык простой, но к нему весьма не просто перейти после традиционных языков программирования.
Go to the top of the page
 
+Quote Post
Alex_xxx
сообщение Apr 20 2006, 15:03
Сообщение #22





Группа: Новичок
Сообщений: 10
Регистрация: 24-11-05
Пользователь №: 11 333



Альтера на своем сайте предлагает МегаЯдро для построения фильтров. Расспространяется безплатно, но для конечной реализации в железо требует лицинзию. Очень полезно будет тебе посмотреть.... Поставь проверь... w00t.gif

http://www.altera.com/products/ip/dsp/filt...r-compiler.html

и на счет реализации под ихнюю продукцию неплохо все прописано!

Сообщение отредактировал Alex_xxx - Apr 20 2006, 15:08
Go to the top of the page
 
+Quote Post
Eduard_k
сообщение Apr 20 2006, 22:52
Сообщение #23


Частый гость
**

Группа: Свой
Сообщений: 196
Регистрация: 14-04-06
Пользователь №: 16 137



Как я понимаю FIR Compiler платный и работать будет ограниченное время? Но ведь программа подчитывает коэфициенты, я фильтр там именно трансверсальный, могу ли я использовать посчитаные програмой коэфициенты для постройки своего фильтра, правильные ли они?

Существуют ли для ПЛИС Altera CyClone и CyClone II какие-нибудь простые программаторы, чтоб можно было быстро собрать из подручных материалов, типа PonyProg для контроллеров?
Go to the top of the page
 
+Quote Post
DSIoffe
сообщение Apr 21 2006, 06:28
Сообщение #24


Дима
*****

Группа: Свой
Сообщений: 1 683
Регистрация: 15-12-04
Из: Санкт-Петербург
Пользователь №: 1 486



Цитата
Существуют ли для ПЛИС Altera CyClone и CyClone II какие-нибудь простые программаторы, чтоб можно было быстро собрать из подручных материалов, типа PonyProg для контроллеров?

Сами ПЛИС не содержат ПЗУ, оно внешнее, EPCS с какой-нибудь цифрой, указывающей на объём. Заменяются на дешёвые полные аналоги от STM. Программируются совсем простым устройством под названием ByteBlaster, здесь про это уже много писали.


--------------------
© CОПЫРИГХТ: Дмитрий Иоффе, Советский Союз.
Приглашаю посмотреть: http://muradowa.spb.ru/ и http://www.drtata.narod.ru/index.html
Go to the top of the page
 
+Quote Post
Eduard_k
сообщение Apr 21 2006, 16:35
Сообщение #25


Частый гость
**

Группа: Свой
Сообщений: 196
Регистрация: 14-04-06
Пользователь №: 16 137



Програмируются внутрисистемно или нужно каждый раз доставать микросхему памяти?
Go to the top of the page
 
+Quote Post
jorikdima
сообщение Apr 22 2006, 12:40
Сообщение #26


тут может быть ваша реклама
*****

Группа: Свой
Сообщений: 1 164
Регистрация: 15-03-06
Из: Санкт-Петербург/CA
Пользователь №: 15 280



Цитата(Eduard_k @ Apr 21 2006, 20:35) *
Програмируются внутрисистемно или нужно каждый раз доставать микросхему памяти?

Через JTAG программируются
Go to the top of the page
 
+Quote Post
Krys
сообщение Apr 24 2006, 02:53
Сообщение #27


Гуру
******

Группа: Свой
Сообщений: 2 002
Регистрация: 17-01-06
Из: Томск, Россия
Пользователь №: 13 271



Если юзать память от STM, то в Квартусе будет проблемка: ID у кристалла Альтеры отличается от ID у STM, поэтому Квартус ругнётся. Так что шить придётся чем-то другим. Или как эту проблему обходят?
Go to the top of the page
 
+Quote Post
Black Pahan
сообщение Apr 24 2006, 07:01
Сообщение #28


Частый гость
**

Группа: Свой
Сообщений: 117
Регистрация: 21-07-05
Из: Новосибирск
Пользователь №: 6 978



Цитата(Krys @ Apr 24 2006, 09:53) *
Если юзать память от STM, то в Квартусе будет проблемка: ID у кристалла Альтеры отличается от ID у STM, поэтому Квартус ругнётся. Так что шить придётся чем-то другим. Или как эту проблему обходят?

Ни как не обходят. юзаю M25P40 и в ус не дую. Квартус молчит как рыба об лёд.
Откуда такая дезинформация?


--------------------
Из того, что дуракам закон не писан, вовсе не следует, что они не принимают участия в их написании.
Go to the top of the page
 
+Quote Post
Eduard_k
сообщение Apr 24 2006, 22:38
Сообщение #29


Частый гость
**

Группа: Свой
Сообщений: 196
Регистрация: 14-04-06
Пользователь №: 16 137



Проблема еще вот какая, у узнал сколько стоят CyClone, так вот EP1C12Q240C8N - 40$, EP1C6Q240C6 - 30$. У меня цены завышены или это действительно так? Проблема в том, что такая цена не вписывается в экономическую сторону проекта. Соответствующие ПЛИС Xilinx дешевле?

Я нашел в прайсе EP1K10QC208-3 (ACEX 1K) при 10000 вентелей они стоят по 13$, стоит ли применять их? Чем они хуже CyClone и почему дешевле?

Целесообразно ли использовать CLDP MAXII и MAX3000A? Вообще какие приемущества использования CLDP? Какие недостатки? Какие сферы применения CLDP/FPGA?
Go to the top of the page
 
+Quote Post
DSIoffe
сообщение Apr 25 2006, 09:32
Сообщение #30


Дима
*****

Группа: Свой
Сообщений: 1 683
Регистрация: 15-12-04
Из: Санкт-Петербург
Пользователь №: 1 486



Так EP1K10 - это самый маленький ACEX1K, а EP1C12 - здоровенная вещь. Для сравнения надо брать тогда уж EP1C3T100C8, например, а он стоит 12,54 уе (прайс ЭФО, http://www.altera.ru/cgi-bin/price/price).
ACEX старше Cyclone, что-то в нём устарело, потребляет, наверное, побольше. Cyclone эффективнее. Зато на ядро ACEX можно ненадолго по ошибке подать 4 В вместо положенных 2,5, и он не обидится и даже будет работать smile.gif


--------------------
© CОПЫРИГХТ: Дмитрий Иоффе, Советский Союз.
Приглашаю посмотреть: http://muradowa.spb.ru/ и http://www.drtata.narod.ru/index.html
Go to the top of the page
 
+Quote Post
jorikdima
сообщение Apr 25 2006, 17:47
Сообщение #31


тут может быть ваша реклама
*****

Группа: Свой
Сообщений: 1 164
Регистрация: 15-03-06
Из: Санкт-Петербург/CA
Пользователь №: 15 280



Я б на вашем месте сначала расчеты провел, чтоб определиться с требуемыми ресурсами, а потом уже плисину подбирал бы.
Go to the top of the page
 
+Quote Post
Eduard_k
сообщение Apr 25 2006, 19:57
Сообщение #32


Частый гость
**

Группа: Свой
Сообщений: 196
Регистрация: 14-04-06
Пользователь №: 16 137



Цитата
Так EP1K10 - это самый маленький ACEX1K

Но у него на самом деле 10000 элементов?

Про комментируйте пожалуйста вопрос CLDP т.к. в случае применения маленьких FPGA, можно подобрать альтернативу из разряда CLDP, это очень важно. В CLDP есть функции защиты от не санкционированного чтения памяти, она ведь там внутри.
Go to the top of the page
 
+Quote Post
vetal
сообщение Apr 25 2006, 20:20
Сообщение #33


Гуру
******

Группа: Модераторы
Сообщений: 2 095
Регистрация: 27-08-04
Из: Россия, СПб
Пользователь №: 553



В CPLD нет памяти, только на триггерах.
MAXII- FPGA с интегрированным загрузочным ПЗУ. Из-за отсутствия памяти на кристалле - наихудший выбор для указанного вами применения.

Цитата
Про комментируйте пожалуйста вопрос CLDP т.к. в случае применения маленьких FPGA,


FPGA выйдет на порядок дешевле и функциональнее.

Цитата
Но у него на самом деле 10000 элементов?

Нет. Там всего 576LE.
10'000 вентилей - это общий критерий, приветенное количество nand2 вентилей(посчитанное по неизвестным алгоритмам).

Закладывать в разработку новую желательно только новые ИС, это обеспечит минимальную стоимость.

Вам в первую очередь необходимо сделать пробный проект и провести оценку необходимых ресурсов. Скачайте с сайта www.altera.ru необходимый софт и экспериментируйте.

Я рекомендую остановиться на cyclone или cyclone2.

Цитата
ACEX можно ненадолго по ошибке подать 4 В вместо положенных 2,5,

Это не критерий выбора семейства ПЛИС, а результат неграмотной разработки аппаратной части.smile.gif

Цитата
функции защиты от не санкционированного чтения

Это пункт ТЗ???
Если да, то смотрите на Actel ProASIC PLUS или ProASIC3 или Axcelerator.
Если нет, то не замарачивайте себе голову.
Go to the top of the page
 
+Quote Post
Eduard_k
сообщение Apr 25 2006, 21:20
Сообщение #34


Частый гость
**

Группа: Свой
Сообщений: 196
Регистрация: 14-04-06
Пользователь №: 16 137



Цитата
Это пункт ТЗ???
Если да, то смотрите на Actel ProASIC PLUS или ProASIC3 или Axcelerator.
Если нет, то не замарачивайте себе голову.

Защита от копирования проекта занимает для меня не последнее место, как сейчас так и в будущем. Что такое Actel ProASIC PLUS или ProASIC3 или Axcelerator? Это ASIC как я понимаю? Их нужно изготавливать на заказ большую партию?
Go to the top of the page
 
+Quote Post
vetal
сообщение Apr 26 2006, 06:24
Сообщение #35


Гуру
******

Группа: Модераторы
Сообщений: 2 095
Регистрация: 27-08-04
Из: Россия, СПб
Пользователь №: 553



Цитата
Что такое Actel ProASIC PLUS или ProASIC3 или Axcelerator?


Нет. Это FPGA. смотрите на www.actel.com и www.actel.ru.
Go to the top of the page
 
+Quote Post
DSIoffe
сообщение Apr 26 2006, 07:22
Сообщение #36


Дима
*****

Группа: Свой
Сообщений: 1 683
Регистрация: 15-12-04
Из: Санкт-Петербург
Пользователь №: 1 486



Цитата
Но у него на самом деле 10000 элементов?

Эта цифра вряд ли о чём говорит. Правильнее смотреть, как и говорилось, на количество логических элементов. Для самого маленького ACEX их 576, а для самого маленького Cyclone - 2910! Почувствуйте разницу. А цена практически одинаковая. То есть за ту же цену Вы получите намного больше. И встроенной памяти 12288 бит против 59904.
На самом деле я горячо присоединяюсь к совету начать с пробного проекта. Напишите хоть что-нибудь похожее на правду и возьмите такую ПЛИС, чтобы это заняло около 50% ресурсов. Или хотя бы заложите корпус, в котором помещаются как очень большие, так и не очень большие ПЛИС одного семейства - совместимость там есть. А оценить пригодность ПЛИС по каким-то цифровым параметрам всё равно не получится, если не было пробного проекта, так как влияют и подробности устройства конкретного семейства, и ещё куча мелочей. Прдётся на это потратить несколько дней, никуда не деться.
Цитата
Это не критерий выбора семейства ПЛИС, а результат неграмотной разработки аппаратной части.

Ну ведь не знаете, зачем говорите? Это не критерий, а лирика, и результат совершенно замечательной сопли на монтаже. smile.gif


--------------------
© CОПЫРИГХТ: Дмитрий Иоффе, Советский Союз.
Приглашаю посмотреть: http://muradowa.spb.ru/ и http://www.drtata.narod.ru/index.html
Go to the top of the page
 
+Quote Post
vetal
сообщение Apr 26 2006, 07:42
Сообщение #37


Гуру
******

Группа: Модераторы
Сообщений: 2 095
Регистрация: 27-08-04
Из: Россия, СПб
Пользователь №: 553



Цитата
Ну ведь не знаете, зачем говорите?

Я, вроде, смайлик поставил. Прошу не обижаться.
Go to the top of the page
 
+Quote Post
Alex_xxx
сообщение Apr 26 2006, 13:14
Сообщение #38





Группа: Новичок
Сообщений: 10
Регистрация: 24-11-05
Пользователь №: 11 333



Еще раз могу порекомендовать посмотреть FIR Compiller....
У него можно при синтезе фильтра посмотреть сколько приблизительно фильтру потрубуется логических елементов и обьем памяти если коэффициенты будут хранится в ОЗУ.

На счет того правильно ли он прощитывает коэффициенты мне сомневатся не приходилось. Но при необходимости можно сравнить с Матлабом, или прощитать вручную. Еще одно достоинсво на счет прощета коэффициентов фильтра то что их можно сразу просмотреть как в виде целых так и дробных чисел.

А то что он платный это не резон чтобы сразу отказыватся и не посмотреть. Главное идеЯ. А наш мир не без добрых людей santa2.gif
Go to the top of the page
 
+Quote Post
Eduard_k
сообщение Apr 26 2006, 16:43
Сообщение #39


Частый гость
**

Группа: Свой
Сообщений: 196
Регистрация: 14-04-06
Пользователь №: 16 137



Спасибо за совет, я уже давно скачал FIR Compiler, вещь замечательная но платная sad.gif Без лицензий можно только довольствоваться посчитанными коэфициентами.

Где б найти добрых людей sad.gif
Go to the top of the page
 
+Quote Post
Koluntaev
сообщение Apr 27 2006, 04:22
Сообщение #40


Участник
*

Группа: Новичок
Сообщений: 25
Регистрация: 27-04-06
Пользователь №: 16 537



А может Вам все таки присмотреться к Xilinx? XC3S200 в Cкане стоит 11 баксов, так там 1920 слайсов и 216 килобит памяти. И ядро FIR фильтра в ISE бесплатное.
Go to the top of the page
 
+Quote Post
Eduard_k
сообщение Apr 27 2006, 16:26
Сообщение #41


Частый гость
**

Группа: Свой
Сообщений: 196
Регистрация: 14-04-06
Пользователь №: 16 137



А ISE - это типа Quartus? Он распространяется бесплатно?
Go to the top of the page
 
+Quote Post
Koluntaev
сообщение Apr 27 2006, 17:42
Сообщение #42


Участник
*

Группа: Новичок
Сообщений: 25
Регистрация: 27-04-06
Пользователь №: 16 537



Да, ISE - это САПР для Xilinx. Полная версия стоит денег, однако Xilinx выкладывает на сайте бесплатную версию ISE WebPack. Отличается от платной отсутствием поддержки больших кристаллов, но я думаю под вашу задачу должно хватить ее возможностей.
Go to the top of the page
 
+Quote Post
Eduard_k
сообщение May 4 2006, 19:44
Сообщение #43


Частый гость
**

Группа: Свой
Сообщений: 196
Регистрация: 14-04-06
Пользователь №: 16 137



FIR Compiler - очень хорошая штука. Как можно заставить его сгенерировать файл, так чтобы не покупать лицензии т.к. для 1-2 устройств это крайне дорого. Может кто-нибудь сделает милость и поделится лицензиями, Alex_xxx говорил что мир не без добрых людей. Может есть какой-нибудь кряк? Очень нужен этот FIR Compiler.
Go to the top of the page
 
+Quote Post
DmitryMS
сообщение May 5 2006, 18:36
Сообщение #44


Участник
*

Группа: Свой
Сообщений: 29
Регистрация: 30-05-05
Из: UA, Dnepropetrovsk
Пользователь №: 5 556



Под XILINX очень поможет System Generator. Это набор Blockset-ов для Matlab от XILINX. При помощи его вы сможете все сделать - посчитать коэффициенты, отладить, от симулировать, сгенерить bitstrim. Вам потребуется MATLAB 7.0 SP2, ISE (WEbPack), SysGen. Сам на праздниках занимался самообразованием. Так что если нужны mbl файлы, могу кинуть. Правда без программных пакетов ни чего не получится.

Сообщение отредактировал DmitryMS - May 5 2006, 18:52
Go to the top of the page
 
+Quote Post
Alex_xxx
сообщение May 6 2006, 11:36
Сообщение #45





Группа: Новичок
Сообщений: 10
Регистрация: 24-11-05
Пользователь №: 11 333



Цитата(Eduard_k @ May 4 2006, 23:44) *
FIR Compiler - очень хорошая штука. Как можно заставить его сгенерировать файл, так чтобы не покупать лицензии т.к. для 1-2 устройств это крайне дорого. Может кто-нибудь сделает милость и поделится лицензиями, Alex_xxx говорил что мир не без добрых людей. Может есть какой-нибудь кряк? Очень нужен этот FIR Compiler.


Могу посоветовать посмотреть обсуждение этого форума на счет FIR Compiler.

http://electronix.ru/forum/index.php?showtopic=14195&hl=fir
Go to the top of the page
 
+Quote Post

3 страниц V   1 2 3 >
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 20th July 2025 - 16:59
Рейтинг@Mail.ru


Страница сгенерированна за 0.01837 секунд с 7
ELECTRONIX ©2004-2016