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

 
 
> Возможности ПЛИС
NMacs
сообщение Dec 17 2007, 15:25
Сообщение #1





Группа: Новичок
Сообщений: 3
Регистрация: 17-12-07
Пользователь №: 33 366



Можно ли на ПЛИС реализовать модуль, работающий по алгоритму перемножения с накоплением?
S = A1 * B1 + A2 * B2 + ... + An * Bn
размер векторов порядка 50, вычисления производятся над числами с плавующей точкой
точность 8-10 знаков

И сколько таких вычислителей можно разместить в одной ПЛИС?

Сообщение отредактировал NMacs - Dec 17 2007, 15:27
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов (1 - 4)
syoma
сообщение Dec 17 2007, 16:47
Сообщение #2


Профессионал
*****

Группа: Свой
Сообщений: 1 817
Регистрация: 14-02-07
Из: наших, которые работают за бугром
Пользователь №: 25 368



Можно и без проблем.
Все зависит от того, насколько быстро эту сумму вычислять нужно. То есть , допустим, если максимальная частота плис будет 50Мгц, а частота вычисления вашей формулы 1Мгц, то все обойдется одним умножителем, который будет работать в 50 раз быстрее чем вам нужно и за это время будет производить все 50 умножений с накоплением. А если надо как можно быстрее это сделать, то надо распаралеливать и использовать большее число у множителей, вплоть до того, что использовать 50 умножителей - тогда скорость вычисления будет максимальна.
Количество доступных умножителей зависит от конкретной ПЛИС - например Спартан 3 от Ксайлинкс может иметь от 32 до 96 32х32 умножителй. Виртех больше.
Также умножители можно создавать самому из логики - но тут я не силен по ресурсам и не знаю точно сколько умножитель хавает.
Но если ваша задача связана с обработкой сигналов (так как операция очень похожа на МАС фильтры и тп), то это намного эффективнее реализуется с помощью специальных блоков фильтров, которые не используют умножение вообще. В итоге их можно немерянно поместить в ПЛИС.
Go to the top of the page
 
+Quote Post
NMacs
сообщение Dec 17 2007, 18:07
Сообщение #3





Группа: Новичок
Сообщений: 3
Регистрация: 17-12-07
Пользователь №: 33 366



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

Сообщение отредактировал NMacs - Dec 17 2007, 18:08
Go to the top of the page
 
+Quote Post
CodeWarrior1241
сообщение Dec 17 2007, 23:15
Сообщение #4


Местный
***

Группа: Свой
Сообщений: 496
Регистрация: 14-03-07
Из: In The District
Пользователь №: 26 165



Цитата(NMacs @ Dec 17 2007, 13:07) *
Простите, что не в тему.
А можно данную задачу реализовать при помощи аналоговой техники.
Например, используя операционные усилители.
Mожно (но не нужно) реализовать аналоговой multiplier-accumulator (MAC) используя умножитель из, например, AD532 совмещенный с усилителем.


--------------------
In Mozilla, you keep tabs on your browser. In the USSR, your browser keeps tabs on you.
Go to the top of the page
 
+Quote Post
AnubiX
сообщение Dec 19 2007, 16:11
Сообщение #5


Участник
*

Группа: Новичок
Сообщений: 29
Регистрация: 3-05-07
Из: Москва
Пользователь №: 27 487



Цитата(NMacs @ Dec 17 2007, 21:07) *
Простите, что не в тему.
А можно данную задачу реализовать при помощи аналоговой техники.
Например, используя операционные усилители.

Но лучше не надо. Вентилей на ПЛИС навалом

Цитата(NMacs @ Dec 17 2007, 18:25) *
Можно ли на ПЛИС реализовать модуль, работающий по алгоритму перемножения с накоплением?
S = A1 * B1 + A2 * B2 + ... + An * Bn
размер векторов порядка 50, вычисления производятся над числами с плавующей точкой
точность 8-10 знаков

И сколько таких вычислителей можно разместить в одной ПЛИС?


Можно разумеется - но чтобы оценить сколько таких вычислителей влезет в ПЛИС нужно услышать тип ПЛИС и формат представления числа. Может у вас мантисса на 1000 бит предусмотрена crying.gif
Go to the top of the page
 
+Quote Post

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

 


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


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