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

 
 
> Хранение и работа с большими матрицами в ПЛИС, Размера 1000х500
count_enable
сообщение Aug 6 2014, 18:04
Сообщение #1


Местный
***

Группа: Свой
Сообщений: 310
Регистрация: 28-01-13
Из: Лондон
Пользователь №: 75 384



Есть большая матрица, размера эдак 1000х500 8-битных целых. Требуемые операции (в порядке приоритета по скорости):
- Сумма выбранных элементов из столбца А, типа А1+А5+А100+А512.
- Сумма выбранных элементов из строки B, типа B1+B5+B100+B512.
- К выбранному элементу добавить или отнять 8-битное целое.
- Заполнение матрицы начальными значениями.

Операций умножения нет. Решение в лоб это декларация двумерного массива и работа как с однопортовой ОЗУ с чтением-записью поэлементно. Но так как по грубым прикидкам операция суммирования в столбце или в строке будет занимать около 3/4 всех вычислений, хочется чего-то более умного. Целевое железо это Virtex 5.

Думаю над тем чтобы разбить столбцы (число строк всегда больше числа столбцов) на отдельные BRAM, тогда можно будет выбрать все элементы строки в один цикл, но обратная задача - все элементы столбца тогда опять получается O(N). Есть ли решения получше? Можно использовать внешнюю DDR, но вряд ли она здесь поможет.
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- count_enable   Хранение и работа с большими матрицами в ПЛИС   Aug 6 2014, 18:04
- - Maverick   Цитата(count_enable @ Aug 6 2014, 21:04) ...   Aug 6 2014, 18:39
- - SFx   Начните с модели на языке С/С++   Aug 6 2014, 19:00
|- - Maverick   добавлю к словам Цитата(SFx @ Aug 6 2014, 22...   Aug 6 2014, 19:03
- - count_enable   В матлабе уже давно всё работает, матлаб вообще пр...   Aug 6 2014, 19:30
|- - Timmy   Если разместить элементы матрицы в памяти диагонал...   Aug 6 2014, 20:18
- - count_enable   А можно поподробнее, что значит диагонально? К том...   Aug 6 2014, 20:25
|- - Timmy   Цитата(count_enable @ Aug 7 2014, 00:25) ...   Aug 6 2014, 20:44
- - RobFPGA   Приветствую! Полет буйной фантазии - если у В...   Aug 6 2014, 20:49
- - count_enable   RobFPGA, у меня XC5VLX110T, 64 DSP, 296 BRAM18. На...   Aug 6 2014, 22:22
- - RobFPGA   Приветствую! Ну с таким маленьким (чипом коне...   Aug 6 2014, 23:05
|- - Timmy   При диагональном расположении матрицы в памяти мож...   Aug 7 2014, 02:17
- - ASN   count_enable Уважаемый RobFPGA Вам посоветовал хор...   Aug 7 2014, 04:55
- - count_enable   Нутром чую, что советуете дельные вещи, но полност...   Aug 7 2014, 07:49
- - iiv   Цитата(count_enable @ Aug 7 2014, 00:04) ...   Aug 7 2014, 08:55
- - count_enable   Цитата(iiv @ Aug 7 2014, 12:55) Во-первых...   Aug 7 2014, 09:37
|- - ASN   count_enable Всё верно. Идея в том, что если у Вас...   Aug 7 2014, 10:37
|- - iiv   count_enable теперь конечно проще советовать, но ...   Aug 7 2014, 12:17
- - count_enable   Спасибо, уже начал потихоньку строчить код. Практи...   Aug 7 2014, 10:42
- - RobFPGA   Приветствую! Теоретически TC мог бы впихнуть ...   Aug 7 2014, 13:18
- - count_enable   Лиха беда начало... Существующие реализации RBM им...   Aug 7 2014, 13:58
|- - iiv   Цитата(count_enable @ Aug 7 2014, 18:58) ...   Aug 7 2014, 16:51
- - count_enable   Сразу практический вопрос: необходим ли RAMB18 при...   Aug 7 2014, 15:21
|- - SFx   Цитата(count_enable @ Aug 7 2014, 19:21) ...   Aug 7 2014, 16:10
- - dvladim   Я бы ещё добавил: 1. Идея использования двух порто...   Aug 7 2014, 17:34
- - count_enable   Цитатаесли есть желание, можете подъехать, лично р...   Aug 7 2014, 19:55
|- - iiv   Цитата(count_enable @ Aug 8 2014, 01:55) ...   Aug 7 2014, 22:02
- - count_enable   Да, конечно, будет или Микроблейз или Паверписишка...   Aug 8 2014, 09:34


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

 


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


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