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

 
 
> Возведение в степень в FPGAе ?, Как кодируется и выполняется ?
Саша Z
сообщение Dec 8 2007, 21:30
Сообщение #1


Знающий
****

Группа: Свой
Сообщений: 921
Регистрация: 6-04-07
Из: Israel
Пользователь №: 26 822



На одном из этапов проэкта будет операции возведения в степень входных данных, степень дробная.
(Это гамма-коррекция 8 bit RGB потока).
Как такое реализуется в FPGA ? Можно предположить что FPGA дает несколько встроенных multipliers 18х18.
Как кодируется (VHDL) и как оно выполняется в железе ? Нужно понять насколько трудоемкая эта операция и сколько времени отнимает. Данные, входной поток идет со скоростью примерно 12 MHz т.е. примерно 12 MB/sec. Нужно понять какая должна быть скорость FPGA перемножения что-б попытаться уложиться в реальное время, т..е без согласующего буфера.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
alexf
сообщение Dec 9 2007, 08:44
Сообщение #2


Местный
***

Группа: Свой
Сообщений: 420
Регистрация: 22-12-04
Пользователь №: 1 608



Цитата(Саша Z @ Dec 8 2007, 13:30) *
На одном из этапов проэкта будет операции возведения в степень входных данных, степень дробная.
(Это гамма-коррекция 8 bit RGB потока).
Как такое реализуется в FPGA ? Можно предположить что FPGA дает несколько встроенных multipliers 18х18.
Как кодируется (VHDL) и как оно выполняется в железе ? Нужно понять насколько трудоемкая эта операция и сколько времени отнимает. Данные, входной поток идет со скоростью примерно 12 MHz т.е. примерно 12 MB/sec. Нужно понять какая должна быть скорость FPGA перемножения что-б попытаться уложиться в реальное время, т..е без согласующего буфера.


Умножитель тут не сильно помогает, но 8 бит это 256 значений в таблице. Считается заранее и пишется в BRAM.
Go to the top of the page
 
+Quote Post
Саша Z
сообщение Dec 9 2007, 08:55
Сообщение #3


Знающий
****

Группа: Свой
Сообщений: 921
Регистрация: 6-04-07
Из: Israel
Пользователь №: 26 822



Цитата(alexf @ Dec 9 2007, 12:44) *
Умножитель тут не сильно помогает, но 8 бит это 256 значений в таблице. Считается заранее и пишется в BRAM.


Аа, т.е. считаем заранее гамма-коррекцию на каждое возможное значение входа из 256 возможных и храним их в LUTе ? Затем, делаем что-то типа декодера который читает из таблицы LUTа согласно входному данному в качестве адреса в таблице ?
Хорошая идея, спасибо.

А что такое BRAM ?
Go to the top of the page
 
+Quote Post
Stas
сообщение Dec 9 2007, 09:09
Сообщение #4


Местный
***

Группа: Свой
Сообщений: 464
Регистрация: 1-10-04
Из: Челябинск
Пользователь №: 751



Цитата(Саша Z @ Dec 9 2007, 13:55) *
Аа, т.е. считаем заранее гамма-коррекцию на каждое возможное значение входа из 256 возможных и храним их в LUTе ? Затем, делаем что-то типа декодера который читает из таблицы LUTа согласно входному данному в качестве адреса в таблице ?
Хорошая идея, спасибо.

А что такое BRAM ?


Храним не в LUT, а в встроенных блоках памяти типа M4K, M512, MRAM (для Altera).
Go to the top of the page
 
+Quote Post



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

 


RSS Текстовая версия Сейчас: 23rd July 2025 - 03:26
Рейтинг@Mail.ru


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